位置: 编程技术 - 正文

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

  • 应交消费税的税目
  • 合同金额含税不含税
  • 以前年度计提的工资没发放怎么处理
  • 个体注销了名下的车辆
  • 投资收益可以计入营业收入吗
  • 未支付商标使用费怎么办
  • 年金的几种类型
  • 清算备付金的会计科目
  • 法院判罚利息怎么算
  • 收到展会补贴账务处理
  • 公司固定资产丢失谁负责
  • 车辆保险可以开票吗
  • 利息收入增值税计税依据
  • 购买股权支付的相关税费怎么处理
  • 发票跨月还能重开吗
  • 股权转让能否低于股价
  • 跨年度的费用发票怎么做账
  • 一般人企业所得税怎么算
  • 代开发票预缴的增值税能否申请退税
  • 私营独资企业是小微企业吗
  • 诉讼费做账科目
  • 前期认证相符且不符合
  • 企业抵押贷款手续办理流程
  • 遗属补助是死亡当月发放还是次月发放
  • win11最低硬件要求几代
  • 增值税发票认证操作流程
  • 搜索特定
  • 把桌面文件放到虚拟机
  • php中如何使用session
  • 鸿蒙系统如何隐藏文件
  • 销售固定资产税目
  • 收到进项税发票如何入账
  • 一般纳税人简易征收3%可以开专票吗
  • php获取字符串中的指定字符
  • php抽象类可以多继承吗
  • vue项目启动过程
  • 申请税控盘流程需要几个工作日
  • 怎么防止?
  • 投资性房地产递延所得税负债为什么计入其他综合收益
  • sql纵表转横表
  • 在正确使用和正常维护的条件下
  • 劳务报酬收入是否含税
  • mysql查询重复的全部删除
  • 租赁物品损坏赔偿金额标准
  • 什么叫总分类账簿
  • 应收账款计提的坏账准备可以转回
  • 计入资本公积的固定资产处置
  • 增值税当月缴纳还是次月缴纳
  • 实收资本未实缴是否罚款
  • 应收账款占比高受哪些因素影响
  • 银行的手续费开票怎么开
  • 招标代理服务费应该由谁支付
  • 小规模纳税人可以转为一般纳税人吗?
  • 企业营业外支出是什么意思
  • 建筑企业开具增值税发票
  • sql server的相关技术知识
  • sqlserver2000企业管理器自动关闭
  • win8系统故障了怎么办
  • win10系统如何禁用触摸板
  • centos7怎么配置
  • win10 开始
  • linux服务器日志文件在哪里
  • win8应用商店无法使用
  • win8新建用户
  • linux怎样过滤一个关键字
  • shell脚本字符串换行
  • 创建一个css文件
  • cocos2dx小游戏
  • Unity3D脚本对预制件无效
  • 背包设备
  • opengl示例
  • shell脚本的fi
  • unity屏幕坐标 ui坐标
  • javascript运用
  • javascript gui
  • jquery foreach循环
  • 增值税发票综合服务平台升级
  • 中国税务精神内容英文
  • 商铺缴纳契税需要复印件吗
  • 税务异常处理
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设