序
大概就是根据一个灰度图,生成一个地形。
分两步来实现吧;首先,用随机数生成地形;然后,根据灰度图生成地形。
小白,没啥基础,所以只能慢慢来。
参考:
【萌新图形学】地形网格生成入门 含动画说明哦_哔哩哔哩_bilibili
【萌新图形学】地形生成下篇——随机大地形与真实地形_哔哩哔哩_bilibili
首先,得有一些基本概念的:
00.一些基本概念
演示
我是个小白,所以,刚开始,来点直观的吧
新建了一个空物体gameobject,手动添加了3样东西给它:
-
MeshFilter组件
-
MeshRender组件
-
考虑到没有材质球会成粉色,所以新建了个默认的材质球给它。
前两个组件是主要的,下面的动图就简单的演示了这两个组件的作用。
顺便提一下,这里有个线框模式显示的开关。
大概有了个朦胧的认识:
-
MeshFilter里的Mesh可以控制物体的形状
-
MeshRender负责物体的显示
现在,开始文档里的正式介绍。
Mesh
Unity - Scripting API: Mesh (unity3d.com)
《inherits from Object》
里面按一定规则存着模型的数据,比如顶点什么的。【就是顶点着色器里的那个顶点】
看定义可能比较朦胧,看这个示例代码,就很清楚它是什么了:
MeshFilter
Unity - Manual: Mesh Filter component (unity3d.com)
这个组件,也很简单呐;里面就一个Mesh。。
具体可以这么用:
Unity - Scripting API: MeshFilter.mesh (unity3d.com)
从代码里可以看到,这个组件里的Mesh,就是上面的那个Mesh类
MeshRender
Unity - Manual: Mesh Renderer component (unity3d.com)
材

该文介绍了如何在Unity3D中使用MeshFilter和MeshRenderer组件,结合随机数和灰度图生成地形。作者从创建基本的平面开始,逐步扩展到根据灰度值调整顶点高度,形成具有高度变化的地形。最后,通过读取灰度图像素值来实现更真实的地形效果,同时注意到了内存泄漏问题并给出了解决方案。
最低0.47元/天 解锁文章
9503





