首页 > 代码库 > Unity3D-代码实现GameObject创建
Unity3D-代码实现GameObject创建
OK,上面已经创建了一个Mesh,我们就用Main.cs来代码创建GameObject。
一般是shader附着在Material Material附着在Mesh上。
但是Mesh我们已经生成了,很难用代码得到生成的结果,只好拖入面板中,再将拖入面板的GameObject托给Main.cs
OK,看Main.cs的主代码
using UnityEngine; using System.Collections; using UnityEditor; public class Main : MonoBehaviour { // 创建SimpleMesh之后实例化的值 拖入 public GameObject meshObject; // Use this for initialization void Awake () { createMesh(); } // 创建MeshObject void createMesh() { GameObject simpleMesh = new GameObject(); // 定义对象名为 Water simpleMesh.name = "Water"; // 添加MeshFilter simpleMesh.AddComponent<MeshFilter>(); // 添加MeshRenderer simpleMesh.AddComponent<MeshRenderer>(); // 将新建的SimpleMesh赋值给新GameObject simpleMesh.GetComponent<MeshFilter>().mesh = meshObject.GetComponent<MeshFilter>().mesh; // 创建shader为VertexColor的Material Material simpleMaterial = new Material(Shader.Find("Custom/VertexColor")); // 加入SimpleMaterial simpleMesh.GetComponent<MeshRenderer>().material = simpleMaterial; // 加入脚本 simpleMesh.AddComponent<WaterScript>(); } }
得到的结果为
此图仅说明此GameObject材质、脚本都全了~~
Unity3D-代码实现GameObject创建
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。