初学U3D,贵在坚持和总结,一来对平时的知识巩固,二来可以让自己思路更清晰! 希望与更多的U3D爱好者交流学习。
一、动态为对象添加渲染贴图:
using UnityEngine; using System.Collections; public class NewBehaviourScript : MonoBehaviour { GameObject obj; void OnGUI() { if(GUILayout.Button("Add",GUILayout.Height(60),GUILayout.Width(110))) { //创建Cube对象 obj = GameObject.CreatePrimitive(PrimitiveType.Cube); //移动至指定坐标 obj.transform.position = new Vector3(100,100,100); //对象名称 obj.name = "Andy"; //材质渲染,(Texture)强制转换 obj.renderer.material.mainTexture = (Texture)Resources.Load("0"); } if(GUILayout.Button("Del",GUILayout.Height(60),GUILayout.Width(110))) { //销毁对象 Destroy(obj); } } }
二、添加和删除脚本:
1、首先创建两个脚本,命名为:“Main.cs”和"CubeScript";
2、然后新建一个Cube ;
3、打开CubeScript.cs脚本,添加代码,使Cube执行旋转操作;
using UnityEngine; using System.Collections; public class CubeScript : MonoBehaviour { void Start () { } void Update () { //定义对象 y轴旋转 gameObject.transform.Rotate(new Vector3(0,6,0)); } }
4、打开Main.cs脚本,写入代码如下:
using UnityEngine; using System.Collections; public class Main : MonoBehaviour { //定义全局游戏对象 GameObject obj; void Start () { //获取Cube组件 obj = GameObject.Find("Cube"); } void OnGUI() { if(GUILayout.Button("Move")) { //为Cube对象添加CubeScript脚本 obj.AddComponent("CubeScript"); } if(GUILayout.Button("ReMove")) { //必须先定义一个Object对象,获取Cube组件的对应脚本 Object Script = obj.GetComponent("CubeScript"); //销毁该脚本 Destroy(Script); } } void Update () { } }
5、将Main.cs脚本,拖拽至摄像机;
效果可见: