我们在开发游戏的时候经常会有一些特殊的游戏玩法等,需要涉及Mesh切割。比如3D切水果, 在地图的城墙上挖一个洞,今天给大家来分享一个Mesh切割的算法,帮助大家解决项目中需要用到的Mesh切割的问题。本文主要从一下几个方面来讲解Mesh切割。
(1) 如何接受玩家的触摸操作,生成切割面;
(2) 3D模型Mesh对象中的主要数据组成;
(3) 模型Mesh切割算法步骤详解;
对啦!这里有个游戏开发交流小组里面聚集了一帮热爱学习游戏的零基础小白,也有一些正在从事游戏开发的技术大佬,欢迎你来交流学习。
(图1)
如何接受玩家的触摸操作,生成切割面
(1) 获取起点的屏幕坐标,并结合3D摄像机,把起点的屏幕坐标转到摄像机的视口坐标系下。
if (!dragging && Input.GetMouseButtonDown(0)) {
start = cam.ScreenToViewportPoint(Input.mousePosition);
dragging = true;
}
(2) 获取终点的屏幕坐标,并结合3D摄像机,把重点的屏幕坐标赚到摄像机的视口坐标系下。
if (dragging && Input.GetMouseButtonUp(0)) {
// Finished dragging. We draw the line segment
end =