C/C++编程笔记:游戏开发中的噪声算法详解,游戏编程常用技术(14)
在二维空间下 , 取n为2即可 。 这样变换之后 , 我们就可以按照之前方法判断该点所在的超立方体 , 在二维下即为正方形 。
原理
1.坐标偏斜:把输入点坐标进行坐标偏斜 。
x'=x+(x+y+...)?K1
y'=y+(x+y+...)?K1
其中 , K1=n+1√?1n
2.找到顶点:对偏斜后坐标下取整得到输入点所在的超立方体xi=floor(x')
yi=floor(y')...我们还可以得到小数部分xf=x'?xiyf=y'?yi...
我们把之前得到的(xfyf...)中的数值按降序排序 , 来决定输入点位于变形后的哪个单形内 。 这个单形的顶点是由按序排列的(0 0 … 0)到(1 1 … 1)中的n+1个顶点组成 , 共有n!种可能性 。
我们可以按下面的过程来得到这n+1个顶点:从零坐标(0 0 … 0)开始 , 找到当前最大的分量 , 在该分量位置加1 , 直至添加了所有分量 。 这一步的算法复杂度即为排序复杂度O(n2) 。
推荐阅读
- 游戏笔记本|Dota2-今天又是玛西被削的一天?水友:强度太高,还得接着削!
- 森林之子|双十一性价比风暴来袭,这些性能强劲的笔记本不容错过
- 黑神话|解析《黑神话:悟空》技术看点,RTX 30系笔记本带来极致体验
- 笔记本|红米G笔记本香爆?5000元大作全安排!玩家:这就整超激斗梦境
- 梦幻西游|梦幻西游:找到了当年记录账号的笔记,因为它还被父母混合双打过
- 单机|老旧笔记本轻松畅玩,10款超低配置的经典单机
- 元气骑士|经费炸裂!《元气骑士》新角色比死亡笔记更强,比司铎团更加惊艳
- 地下城与勇士|DNF:韩服6.21开发者笔记,刃影太刀物理固伤,神话合成系统出现
- 国服|第五人格:联动“死亡笔记”?一颗红苹果的期待却与国服彻底绝缘
- Java|Java 地位不保,落后已成定局 ?| 10月编程语言排行