位置: 编程技术 - 正文

仿《文明》游戏制作日志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安卓游戏开发)

  • 入账价值 入账成本 入账金额
  • 人工费用的核算例题
  • 小规模季报利润表本月金额和本年累计金额
  • 外来审计人员交通费
  • 个体户开票超30次后如何开票
  • 其他综合收益为什么要结转
  • 资产折旧纳税
  • 个人去税务局开居间费发票
  • 营改增之前有增值税吗
  • 劳务费增值税专用发票虚开一万元怎么补救
  • 应税劳务、服务清单
  • 背书转让后的电子承兑怎么打印
  • 计提坏账为什么无法收回呢
  • 商标设计人享有著作吗
  • 注销未分配利润怎么处理账务
  • 支付拆迁补偿款做账
  • 内存频率调整教程图解
  • 买手机5000预算
  • win7系统如何设置热点
  • 企业废业怎样做会计分录
  • 电脑装系统分区出现错误
  • 单位撤销现金余额的规定
  • 金融机构与小微企业借款合同印花税
  • 直接转销法账务处理
  • 导航栏不变,切换怎么办
  • 为什么法律不允许安乐死
  • 如何确定合伙企业的利润
  • 总分机构 分总机构
  • redis如何实现分布式事务
  • php关键字描红
  • ctf web题型
  • 用友财务软件使用视频教程
  • php ip地址
  • yolov5目标检测流程图
  • 微信小程序游戏手游排行榜
  • php中cookie的使用
  • 报销人和收款人不一致
  • 同事写了一个责任链模式,bug 无数...
  • 个税多计提了账务处理
  • 如何正确的开具增值税专用发票
  • mongodb基础
  • 企业所得税汇算清缴会计分录
  • 个体户3万免税规定2019
  • 企业借入长期借款的用途主要有
  • 公司裁员怎么补偿
  • 销售旧货和销售使用过的固定资产区别
  • 外购商品发放给员工 进项税额能不能抵扣
  • 资产减值准备的举例
  • 企业法人股权转让要交什么税
  • 期末账项调整的内容包括
  • 分公司注销库存车怎么办
  • 固定资产报废需要进项税额转出吗
  • 买断式回购交易情况
  • 管理费用是负数影响利润表吗
  • 记账凭证模板
  • 会计利润是利润加暂时性差异吗为什么
  • 怎么样建账做账
  • sqlite迁移到mysql脚本的方法
  • ecap.exe是什么
  • wibdows任务管理器
  • win7系统文件夹怎么加密码
  • ubuntu 18.04网络连接
  • mac电脑文件夹怎么重命名
  • linux rsyslogd
  • win7开机黑屏怎么
  • 不经过回收站直接删除文件的操作是
  • js判断浏览器是否为ie
  • cocos2d schedule
  • 在vs中搭建opengl环境
  • 简单谈谈你的入党动机
  • android项目打包成jar包
  • ide通道怎么打开
  • python数据可视化课后题答案
  • jquery mouse
  • js 时间轴
  • python 备份文件夹
  • 怎么查询开票信息呢
  • 保险发票属于什么类型发票
  • 免税企业可以收增值税专票吗
  • 9月份公积金什么时候扣
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设