c# - unity 3d ondular 地形生成
问题描述
我正在制作一个 3d 游戏,我必须在其中生成一些地形才能获得无限且随机的关卡。地形必须起伏不定,像这样:
我使用 perlin 噪声来生成地形,队列中有多个平面,随着玩家前进而更新它们(我有最后一个平面的 Z 位置,所以当我从队列中窥视时更新时,队列中的第一个,出队它并通过 mathf.PerlinNoise(0, zPosition)) 用新的顶点再次将其排入队列,我在第一个参数中有一个 0 的原因是,这些平面在 x 轴上是均匀的
我希望有一个类似于沙丘的游戏玩法,但在 3d 中,玩家控制一个球,在接地时点击可以给它速度,在空中点击可以让它下降,他可以通过顺利通过下坡或获得得分和条纹如果他撞到上坡路就会死
问题:
柏林噪音并不总是像我需要的那样上下波动,有时它在中间有那些曲线,使球跳跃并且有奇怪的不想要的运动......感谢关于这个主题的任何帮助。
解决方案
我通过使用正态分布函数生成波浪来解决这个问题,通过弄乱参数,我可以为我的波浪添加宽度或高度每个“波浪”使用 5 个平面(每个波浪是 5 个平面的游戏对象数组),并且只需通过 x 轴上的顶点,将它们的所有高度更改为在函数中计算的相同值,递增 x 并再次执行
推荐阅读
- javascript - 如何使可拖动元素跟随鼠标指针
- xml - 使用 tensorflow 对象检测 API 创建数据集的 xml 到 csv 转换
- jquery - SlideToggle 不是 ul 菜单上的功能
- python - 如何使用 Python 在 Docker 容器中访问 ScyllaDB?
- charts - 如何在 python-pptx 中取消对具有时间相关值的图表数据进行分组
- java - 将 org.springframework.amqp.support.converter.MessageConverter 转换为 org.springframework.messaging.converter.MessageConverter
- r - R颜色顶点igraph
- spring-mvc - Spring 错误响应从 JSON 自动转换为 Html
- android - 将 Visual Studio 更新到 15.7.2 会破坏我的 Xamarin Forms Android 项目,但不会破坏 iOS
- python - Tkinter 对齐多个帧