位置: 编程技术 - 正文

Unity引擎制作仿《文明》游戏(unity引擎用什么模拟器)

编辑:rootadmin

推荐整理分享Unity引擎制作仿《文明》游戏(unity引擎用什么模拟器),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:unity引擎用什么模拟器,unity引擎能做什么,unity 3d引擎,unity引擎开发软件,unity引擎动画教程,unity引擎动画教程,unity引擎能做什么,unity 3d引擎,内容如对您有帮助,希望把文章链接给更多的朋友!

首先要说的是为什么要仿《文明》而不是其他什么么的仿雷电、RPG此类。

第一点,游戏制作室自发性质,所以要选热爱的游戏类型,这样才有动力做下去。我所热爱的游戏,而且不能这么宏伟,可以想到的是小时候FC上玩的热血篮球,初高中玩的CS、大富翁、富甲天下,近期玩的一下卡牌类游戏,还有就是战略游戏:文明5,纪元系列;第二点,选《文明》是因为相比其他游戏而言,它占用的美术资源少,大多是算法的实现。

当然我也没什么游戏制作经验,猜想了一下《文明5》的内部需要实现的关键技术,最先想到的是生成一个随机地形。这篇文章就是关于生成一个初步的地形地图。

查资料。

网上查了一下资料,下面两篇文章对我帮助甚大,对原作者表示感谢:随机分形地形算法, 地形算法小结,两篇文章是同一个作者,一篇是翻译一篇是原创。这两重要资料让我了解到地形可以用高度图表示,如何确定地形纹理。

Unity接口。Unity提供了用高度图设置地形以及设置地形纹理的接口,这些接口在TerrainData这个类里面。

实现。

资料所提供的算法生成的地形非常随机,而游戏要求的地形却是大部分是平原,小部分是高地,偶尔有几座山,显然算法不适合我们。考虑到文明系列的地图实际上是多边形组合而成(正方形、正六边形)的,我也可以将地图分成N块,每块应用地形算法,调整算法的系数,生成指定地形还是可以做到的。

问题。

用这种方法实现的话,也有不少问题。如果日后能成游戏的话,整个地图就行一个棋盘,有正方形组合而成,非常不美观,不如《文明5》的六边形组合美观,这点看以后能不能改进吧。

另一个较为严重问题是块与块之间的边界不好处理,边界感觉很分明:

Unity引擎制作仿《文明》游戏(unity引擎用什么模拟器)

这段时间都在处理这个问题,想了很多复杂的办法。实在没办法了,采用平均的办法。我目前采用的办法:对于高度图每一点heightMap[i,j] = sum([i-range,j], [i-range&#;1,j], ..., [i&#;range-1,j],[io&#;range,j]) / range / 2。就是取x轴周围range范围内的点的高度的平均&#;,Y轴也做同样的工作。

令我意外的是,如果反复进行设置地形步骤和平滑地形步骤,得到的效果还不错。

当然这效果我还不太满意,以后会在这个方向多努力。

这就是我目前的工作了,先把代码贴上吧。关于代码,有很多可以讲的细节,实在无力在此说明,有兴趣的朋友可以发我的常用邮箱共同探讨:clevenmfang@qq.com

用法:新建地形,HeightMapCreater脚本附于其上,设置一下参数:

参数填4,反复按"Set"和“Smooth”按钮,大概循环四五次,把参数填小一点,2、1各Set、Smooth一次。

//HeightMapSection.cs 负责生产每块的地形

//HeightMapCreater.cs 设置整个地图地形,生产地图

暂时做到的工作就这么多了,想完成仿《文明》还有很多工作要做的。

unity进度条,物品随机掉落 进度条进度条用到的是GUI的内容,首先在类外面创建一个空的文本纹理,由两个空的文本纹理,然后定义一个当前的进度,再接着定义一个GUI的方法,

unity之数组 Array类(数组)数组允许你将多个对象存储在一个变量中。Array类只能用于JavaScript.更多关于C#或JavaScript中ArrayLists,字典或哈希表的信息参考MSDN。这是一

unity之血瓶金币的生成 unity学习,希望我的博客能给喜欢unity的朋友带来帮助血瓶创建一个血药的脚本。当主角触碰血药是出发事件生命加.voidOnTriggerEnter(Collidercol){//获取标签

标签: unity引擎用什么模拟器

本文链接地址:https://www.jiuchutong.com/biancheng/375759.html 转载请保留说明!

上一篇:全年计划(2024年全年计划)

下一篇:unity进度条,物品随机掉落(unity进度条控制动画进度)

  • 印花税的账目处理
  • 自来水厂会污染水源吗
  • 消费税的会计处理分录
  • 补贴收入是否交个税
  • 其他应收款属于应收账款吗
  • 一季度季初从业人数
  • 固定资产一次性扣除政策文件
  • 销项发票导出格式不对怎么办
  • 一般纳税人所得税优惠政策最新2022
  • 企业建设项目审批流程
  • 销售自己使用过的固定资产如何开票
  • 单位出租厂房如何开票
  • 手撕票验旧是什么意思
  • 财会【2016】22号文
  • 关于城建税教育费附加地方教育附加的计算
  • 公司不动产管理办法
  • 建筑公司收取的劳务费和挂靠管理费有区别吗?
  • 收到未到期的银行承兑汇票会计分录
  • 个人证券交易结算资金
  • 怎样用增值税专票抵扣
  • 车辆购置税完税证明电子版二维码怎么扫
  • 培训学校的收入
  • 期末增值税如何结转
  • 利润分配属于什么科目
  • 系统搜索力
  • 按揭贷款到账时间
  • 坏账准备的方法
  • 公司转让自建厂房怎么办
  • 无损数据分区
  • 外贸出口退税进项发票勾选
  • 增值税发票超额后税率
  • 专业初审
  • Sa-Token v.1.31.0 新增拦截器 SaInterceptor 功能说明,以及旧代码迁移示例
  • 弥补以前年度亏损金额从哪里来的
  • 购买税控盘后要交税吗
  • vue动态组件component原理
  • 盘亏结转
  • ICLR2023《Crossformer: Transformer Utilizing Cross-Dimension Dependency for Multivariate Time Series》
  • ai绘画图片
  • 增值税进项发票不够抵扣怎么办
  • 新建会计帐套怎么建
  • 什么是完税证明?完税证明丢了怎么办公司
  • 什么是社会团体组织
  • 土地作为无形资产入账依据
  • 个人所得税既有工资薪金又有劳务报酬房屋租金
  • php判断https
  • 企业所得税预缴可以不交吗
  • 社保费用如何入现金流量表
  • 承兑汇票可以当现金借给别人用吗
  • 股本金如何归还股东
  • 内账会计成本是什么意思
  • 会计报表编制基本要求
  • 出口货物用途
  • 补缴税款计入什么科目
  • 发票与销售小票有什么区别?
  • 销售商品开票税目
  • 其他应付款如何清零
  • 多计提的税费怎么处理
  • 筹建期的财务费怎么算
  • 工程发票可以作废吗
  • 管理费用的明细科目如何设置
  • 互联网代记账业务
  • mysql开源社区
  • sqlserver中delete、update中使用表别名和oracle的区别
  • centos7阿里云yum源
  • vista改win7
  • LINUX操作系统的主要组成部分有
  • java调用so库文件
  • windowsxp
  • centos7 tcp6
  • winxp系统界面图片
  • linux中的查找命令
  • 加载的读音
  • 学习软件
  • unity协程的工作原理
  • HttpURLConnection的流式输出的缺陷和解决方法
  • jquery插件怎么写
  • 换发票需要交钱吗
  • 国税局官网查询平台
  • 审计现金盘点表怎么填
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设