Unity 3D 第三更
2015-09-08 14:20
615 查看
Unity 围绕某点进行旋转
Unity 3D文本框
Unity 3D 物体移动选装
Unity 3D线性布局
Unity 3D音量调节
Unity 3D小地图的制作
Unity 游戏运行时间和消耗时间
float value_x=0; float value_y=0; float value_z=0; GameObject cube ; GameObject cylinder; // Use this for initialization void Start () { cube = GameObject.Find ("Cube"); cylinder = GameObject.Find ("Cylinder"); } void OnGUI() { if(GUILayout.RepeatButton ("立方体绕着圆柱体旋转")) { cube.transform.RotateAround (cylinder.transform.position,cylinder.transform.up,Time.time*0.5f); } } // Update is called once per frame void Update () { }
Unity 3D文本框
string name=""; string pass=""; string mes; void OnGUI() { GUI.Label(new Rect(10,10,Screen.width,Screen.height),mes); GUI.Label(new Rect(10,30,50,30),"账号:"); GUI.Label(new Rect(10,60,50,30), "密码:"); name= GUI.TextField(new Rect(60,30,150,30),name,15); pass = GUI.PasswordField(new Rect(60,60,150, 30), pass,"*"[0]); if(GUI.Button(new Rect(10,90,50,30),"提交")) { mes = string.Format("注册的名称为:{0},密码为:{1}",name,pass); } } // Use this for initialization void Start () { mes = "请您输入用户名和密码"; } // Update is called once per frame void Update () { }
Unity 3D 物体移动选装
void Awake() { } // Use this for initialization void Start () { } // Update is called once per frame void Update () { } int translateSpeed = 20; int rotateSpeed = 100; void OnGUI() { if (GUI.Button(new Rect(10, 10, 150, 30), "逆时针旋转")) { transform.Rotate(Vector3.up * Time.deltaTime * -rotateSpeed); } if (GUI.Button(new Rect(10, 40, 150, 30), "顺时针旋转")) { transform.Rotate(Vector3.up * Time.deltaTime * rotateSpeed); } if (GUI.Button(new Rect(10, 70, 150, 30), "向左移动")) { transform.Translate(Vector3.left * Time.deltaTime * translateSpeed); } if (GUI.Button(new Rect(10, 100, 150, 30), "向前移动")) { transform.Translate(Vector3.forward * Time.deltaTime * translateSpeed); } if (GUI.RepeatButton(new Rect(10, 130, 150, 30), "不停地逆时针旋转")) { transform.Rotate(Vector3.up * Time.deltaTime * -rotateSpeed); } if (GUI.RepeatButton(new Rect(10, 160, 150, 30), "不停地顺时针旋转")) { transform.Rotate(Vector3.up * Time.deltaTime * rotateSpeed); } }
Unity 3D线性布局
void OnGUI() { GUILayout.BeginHorizontal(); GUILayout.Label("asdasdsa"); GUILayout.Button("asd"); GUILayout.BeginVertical(); GUILayout.Label("123123123"); GUILayout.Box("实打实大萨达的萨达"); GUILayout.EndVertical(); GUILayout.EndHorizontal(); } // Use this for initialization void Start () { } // Update is called once per frame void Update () { }
Unity 3D音量调节
int volumnValue; float percentValue; // Use this for initialization void Start () { volumnValue = 100; percentValue = 0.0f; } void OnGUI() { volumnValue = (int)GUI.HorizontalSlider(new Rect(10, 10, 150, 30),volumnValue,0,100); percentValue = (int)GUI.VerticalSlider(new Rect(10, 50, 30, 150),percentValue,0, 100); GUI.Label(new Rect(165,10,100,30),"声音:"+volumnValue+"%"); GUI.Label(new Rect(10, 205, 100, 30), "百分比:" + percentValue + "%"); } // Update is called once per frame void Update () { }
Unity 3D小地图的制作
using UnityEngine; using System.Collections; public class Script09 : MonoBehaviour { GameObject plane; GameObject cube; //大地图的宽度 float mapWidth; //大地图的高度 float mapHeight; float widthCheck; float heightCheck; float map_Cube_x = 0; float map_Cube_y=0; bool Keyup; bool KeyDown; bool KeyLeft; bool KeyRight; //小地图的背景贴图 public Texture map; //小地图的主角贴图 public Texture map_Cube; // Use this for initialization void Start () { plane = GameObject.Find ("Plane"); cube = GameObject.Find ("Cube"); float size_x = plane.GetComponent<MeshFilter> ().mesh.bounds.size.x; float size_z = plane.GetComponent<MeshFilter> ().mesh.bounds.size.z; float scale_x = plane.transform.localScale.x; float scale_z = plane.transform.localScale.z; mapWidth = size_x * scale_x; mapHeight = size_z * scale_z; widthCheck = mapWidth / 2; heightCheck = mapHeight / 2; Check (); } void Check() { float x = cube.transform.position.x; float z = cube.transform.position.z; if(x>=widthCheck) { x=widthCheck; } if(x<=-widthCheck) { x=-widthCheck; } if(z>=heightCheck) { z=heightCheck; } if(z<=-heightCheck) { z=-heightCheck; } cube.transform.position = new Vector3 (x,cube.transform.position.y,z); map_Cube_x=(map.width/mapWidth*x)+((map.width/2)-(map_Cube.width/2))+(Screen.width-map.width); map_Cube_y=map.height-((map.height/mapHeight*z)+(map.height/2)); } // Update is called once per frame void Update () { } void FixedUpdate() { if(Keyup) { cube.transform.Translate (-Vector3.forward*Time.deltaTime*5); Check (); } if(KeyDown) { cube.transform.Translate (Vector3.forward*Time.deltaTime*5); Check (); } if(KeyLeft) { cube.transform.Translate (Vector3.right*Time.deltaTime*5); Check (); } if(KeyRight) { cube.transform.Translate (-Vector3.right*Time.deltaTime*5); Check (); } } void OnGUI() { Keyup = GUILayout.RepeatButton ("向前移动"); KeyDown = GUILayout.RepeatButton ("向后移动"); KeyLeft = GUILayout.RepeatButton ("向左移动"); KeyRight = GUILayout.RepeatButton ("向右移动"); GUI.DrawTexture (new Rect(Screen.width-map.width,0,map.width,map.height),map); cube = GameObject.Find ("Cube"); float size_z = cube.GetComponent<MeshFilter> ().mesh.bounds.size.z; float scale_z = cube.transform.localScale.z; GUI.DrawTexture (new Rect(map_Cube_x,map_Cube_y-map_Cube.height/2,map_Cube.width,map_Cube.height),map_Cube); print ("map_Cube_x"+map_Cube_x+" "+"map_Cube_y"+map_Cube_y); } }
Unity 游戏运行时间和消耗时间
// Use this for initialization void Start () { } void OnGUI() { GUILayout.Box ("游戏运行的时间:"+Time.time,GUILayout.Width (300)); GUILayout.Box ("执行上一帧消耗的时间:"+Time.deltaTime,GUILayout.Width (300)); GUILayout.Box ("固定时间:"+Time.fixedTime,GUILayout.Width (300)); GUILayout.Box ("上一帧消耗的固定时间:"+Time.fixedDeltaTime,GUILayout.Width (300)); } // Update is called once per frame void Update () { }
相关文章推荐
- Unity 3D第二更
- Unity 3D 第一更
- unity警告“Tiled GPU perf. warning: RenderTexture color surface (0x0) was not cleared/discarded, doin”
- Unity Application
- unity5 动画系统Mecanim事件快速入门 区分animation和animator不再混淆
- Unity3D学习之设置背景图片脚本解析
- Unity 内存管理
- Unity学习疑问记录之 动作动画忽略timeScale
- unity3d与android 交互问题
- [2015/09/08] Unity3D飞机大战(简陋版) Practice
- Unity使用AnimatorOverrudeController动态替换AnimationClip
- Unity3D教程:手游开发常用排序算法
- Unity中把字符串保存成文件的2种方式
- Unity 2D游戏开发教程之游戏中精灵的跳跃状态
- Unity 3D更新公告
- Unity 2D游戏开发教程之游戏中精灵的跳跃状态
- Unity笔记,onUnitCircle
- Unity3D 向量运算
- 记录 Spine骨骼动画导入unity 步骤[unity3d 4.6.6版本 2d动画]
- 【Unity3D】 EventManager事件管理器