位置: 编程技术 - 正文

仿《文明》游戏制作日志3(模仿文明)

编辑:rootadmin

推荐整理分享仿《文明》游戏制作日志3(模仿文明),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:我想看文明游戏,模仿文明的手游,文明仿写,模仿文明,模拟文明游戏,模仿文明的手游,像文明的游戏,模仿文明的手游,内容如对您有帮助,希望把文章链接给更多的朋友!

一、关于正方形转化为六边形问题。

延伸上次日志的方法,先生成一个矩形,然后通过简单地取中点和取四分点,构筑正六边形。然而遇到的问题是,高度数组是一个由离散的点组成,这些点组成的矩形肯定无法构筑一个正六边形。所以,直接生成矩形是无法做到的,只能还是回到将高度数组分成若干个小的正方形。

搜索一下“正方形内作正六边形”的问题,大概能给的答案是如下:

然而这并不是正六边形。想象一下,如果把左右两条边拉长适当的距离,内部的六边形肯定可以变成正的,实际上拉长至原来 2/√3 倍即可。令人兴奋的是,Unity的地形中,虽然高度图分辨率已经是固定的2^n&#;1,但地形的长和宽是任意设置的,所以生成高度图的时候完全用正方形来构筑六边形,后期将地形长宽比例设置成2:√3即可得到正六边形。

二、构成地图

按照刚才的方法所生成的地图应该是这样的:

仿《文明》游戏制作日志3(模仿文明)

蓝色的正方形是一个 * 的小型高度图,它们相互嵌套,使得根据其生成的六边形组成整个地形。由于嵌套,每个小型高度图占总体高度图的长和宽是不一样的,由图可知,长占满&#;,宽占&#;。就是说,如果一个高度图分辨率为的地形,共有 / * / * 4/3 = 。这个&#;对于一个中等的地图是偏小了。再延伸开去,由于分辨率只能是2的幂,所以更小一级地图&#;子数目只能是,更大一级地图&#;子数目,它们是一个比例为4的等比数列,这些都不是合适的&#;。

有没有更好的构成方法?观察一下《文明》的地图,它是呈矩形的,是否可以将两张的地形合起来,*2 = 已经接近左右这个合适的&#;了。合起来后的矩形长宽比例为4:2,这个“2”将来要拉长以形成正六边形,那么用这样方式形成的地形总体比例是√3:1= 1.。我们知道黄金比例2 / (√5-1) = 1.,1.已经是一个比较舒适的比例了。玩过《文明》的都知道,它里面的地形主要分两种:由一个大陆组成整张地图 和 两个大的州组成整张地图。对应这里的,不是就是两个地形各自生成自己的大陆,如果是前面的一种方式,就把两个的路连接起来,否则直接合并。想到这里,我更加肯定这个构成方法的正确性。

用刚才讨论的方法构成地图,分别用、、的地形构成小、中、大地图,&#;子数目分别为、、还是没有摆脱比例为4的命运。一个解决方法是用更大一级的地形(小用,中用,大用),但用一部分。结果是小地图的&#;子数目可以再~浮动,地图的尺寸更加灵活,也会有更多分级而不限于小、中、大。参考《文明》,中等地图大概有个&#;子,对应的分辨率大概是*,它的更大一级可能是*2 = &#;子,对应分辨率为*。实际上,如果所有地图尺寸中的&#;子数不超过,都可以用两个分辨率的地形表示。但是我找遍unity关于地形的接口,找不到一种方法用来“忽略”用不到高度图。

到目前为止生成地图的整体框架已经出来了。后面就是实现了。

unity5.0安卓开发环境配置 之前弄过这破玩意,后来从装了个系统,一切还原,自然辛苦配置的安卓环境也没有了。我这人还有点强迫症,喜欢式化硬盘,后果你懂的,所以就只

Unity项目中UI同学需知的程序相关要点 原文地址:

【VR】Leap Motion 官网文档 HandController(手部控制器) 前言:本系列译文是为迎合UnityVR的热潮与大家的学习需要,推出的针对Unity方向的LeapMotion官方文档中英对照翻译。本篇第五篇《HandController(手部控制

标签: 模仿文明

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

上一篇:Unity3d中EventTrigger的封装

下一篇:unity5.0安卓开发环境配置(unity安卓游戏开发)

  • 进出口公司怎么做
  • 小规模升级为一般人后之前取得的增值税专用发票抵扣
  • 固定资产进项税的账务处理
  • 交增值税及附加税怎么做账
  • 员工垫付的费用报销会计分录
  • 停车场自助缴费系统
  • 会计记账凭证如何填制
  • 微信支付过路费怎么开电子发票
  • 生产车间的修理计入什么科目
  • 营改增举例说明
  • 厂房鉴定公司
  • 人力资源外包服务规范
  • 个人投资借款长期不还要缴纳个人所得税吗?
  • 物业费纳税
  • 小型微利企业所得税优惠政策
  • 公司帮个人代缴社保会计分录
  • 员工把发票丢了怎么处理
  • 往来款借方
  • 清理费用影响当期损益吗
  • 收到转账支票怎么填写凭证
  • 投资性房地产企业有哪些
  • 在Linux系统中安装了一块虚拟磁盘大小的2G
  • 为什么我的windows10
  • 公司筹建期间发生的业务招待费,如何税前扣除
  • 购买加油卡怎么充值
  • 教你如何正确选择轮胎
  • 若依框架是谁写的
  • 为什么篮牙耳机卡
  • 固定资产付款流程
  • 最奢华的女士腕表
  • 购进的货物
  • 进项税额转出余额在贷方怎么处理
  • 会计科目备抵科目都有哪些
  • php执行linux脚本
  • 代订机票发票可以入账吗
  • 小规模纳税人缴税的分录
  • 会计记账凭证摘要如何编写
  • 退回社保怎么做分录
  • 现代服务业主要功能
  • 供货单位与开票单位不一致
  • 项目资金支付
  • 本月进项税额可以下月抵扣吗
  • 生产车间发生的费用计入什么科目
  • 总公司和分公司按什么分类
  • 租赁合同的印花税怎么交
  • access 替换
  • mysql常见报错
  • 固定资产处置时发生的清理费用
  • 信用证保证金有利息吗
  • 个人独资公司对外如何承担责任
  • 企业所得税是哪种
  • 自然人扣缴客户端恢复数据
  • 递延所得税资产和负债账务处理
  • 未确认收入的会计分录
  • 印花税需要计提吗2023
  • 汇算清缴晚了几天
  • 下列项目的进项税额可以从销项税额中抵扣的是()
  • 企业入库申报什么意思
  • 有会计从业资格证还有用吗
  • 企业应按照有关规定结合本企业
  • 公司增资怎么办理手续
  • 房地产企业会计科目
  • phpstorm配置php环境 mac os
  • windows server vista
  • windows XP+Fedora 8+solaris 11三系统安装攻略
  • 通过注册表删除脱机打印机
  • win8系统出现自动修复
  • win10联想笔记本还原系统
  • directx?
  • win7自动升级失败后的处理
  • Win10系统安装步骤
  • 在linux系统中拥有
  • python批量更改文件名称
  • jquery 设置和返回元素属性
  • ubuntu搭建ftp服务器的步骤
  • opengl使用教程
  • python3网络爬虫
  • vue如何用
  • android 改变view位置
  • 预缴纳税申报个税怎么算
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设