Unity3D 笔记二 3D模型基础

时间:2023-03-08 22:05:32

一、3D模型基础

1、Hierarchy 显示的是界面上的游戏对象(GameObject),每个游戏对象都有。至少要有一个Camera,点击Camera就可以在Preview中看到摄像机的视角画面。每个对象有Position(位置)、Rotation(旋转、角度)、Scale(缩放大小)三组属性。

2、Unity3D采用的是:沿屏幕横向为X轴、沿屏幕纵向为Y轴、垂直屏幕方向为Z轴。右、上、背向观众三个方向为正方向。左手坐标系。
3、Vector3是Unity中定义的一个含有x、y、z单个字段的类,可以表示位置点,也可以表示一个向量。Vector3乘以数值表示对向量的三个值乘以相应的值,v1-v2表示从v2向v1的向量。
4、如果Unity的Scene视图显示不正常,就主菜单-Window->Layouts->RevertFactorySetting,恢复出厂设置即可。
5、常用:Cube立方体、Sphere球体、Capsule胶囊

ps:Hierarchy  ['haɪərɑːkɪ]层级;等级制度;Preview n. 预览;试映;事先查看;Rotation [rə(ʊ)'teɪʃ(ə)n] n. 旋转;循环,轮流; Scale [skeɪl] n. 规模;比例;鳞;刻度;天平;数值范围;Vector  ['vektə]n. 矢量;带菌者;航线  ; Cube [kjuːb]n. 立方;立方体;骰子;Sphere[sfɪə]n. 范围;球体;Capsule['kæpsjuːl; -sjʊl]n. 胶囊;[植] 蒴果;太空舱;小容器

二、案例一 

using UnityEngine;
using System.Collections; public class Add : MonoBehaviour { // Use this for initialization
void Start () { } // Update is called once per frame
void Update () {
if (Input.GetKey(KeyCode.UpArrow))
{
//transform.Translate(Vector3.forward*0.3f);//向前移动
transform.Rotate(Vector3.left);//左旋转
}
if (Input.GetKey(KeyCode.DownArrow))
{
//transform.Translate(Vector3.back*0.2f);//向后移动
transform.Rotate(Vector3.right);//右旋转
}
}
}

  Unity3D 笔记二 3D模型基础

三、地球绕太阳转案例

using UnityEngine;
using System.Collections; public class EarthSun : MonoBehaviour
{ #region 声明私有变量
/// <summary>
/// 地球
/// </summary>
private GameObject earth; /// <summary>
/// 太阳
/// </summary>
private GameObject sun; #endregion
//脚本不能写到构造函数中,写到Start中
// Use this for initialization
void Start () {
this.earth = GameObject.Find("Earth");
this.sun = GameObject.Find("Sun");
} // Update is called once per frame
void Update () {
earth.transform.RotateAround(sun.transform.position,Vector3.up, 0.3f);
}
}

Unity3D 笔记二 3D模型基础

发布flash

Unity3D 笔记二 3D模型基础

使用了方案:我是win7 64位、安装了Program Files 和Program Files (x86) 还有安装了D盘 也按网上说的配置Java环境,仍然是上面情况!

四、添加地形

主菜单Terrain->CreateTerrain 创建地形,Terrain->Set Resolution设定尺寸、分辨率等;