-
。。。。。。
查看全部 -
游戲要素:1,邏輯;游戲的玩法,控制
? ?2,顯示;展示游戲內容,過程,邏輯的結果
查看全部 -
子節點和父節點查看全部
-
walkSpeed 一秒能前進多少的單位
transform.forward 面朝方向
Time.deltaTime 上一幀到這一幀經歷的時間
查看全部 -
“Llddldlddfdess查看全部
-
有點深奧,標簽一個
查看全部 -
// 要移動的物體
public GameObject center;
// 新的位置
Vector3 newPoint;
// 用來看看這次運動是否結束
private bool isOver = true;
void Update ()?
{
? if (Input.GetMouseButtonUp(0))?
? {
? ? ClickOn(Input.mousePosition);
? }
? MoveTo(newPoint);
}
void ClickOn(Vector2 pos)?
{
? // 從攝像機生成一條射線
? Ray ray = Camera.main.ScreenPointToRay(pos);
? // 獲取射線穿過的所有游戲對象
? RaycastHit[] hits = Physics.RaycastAll(ray);
? // 遍歷射線穿過的所有對象
? foreach (RaycastHit hit in hits)?
? {
? ? // 如果當前穿過的對象的名字叫做Plane(名字根據自己設置)
? ? if (hit.collider.name == "Plane")?
? ? {
? ? ? newPoint = hit.point;
? ? ? // 是因為我的球大小是1然后對應的y會比點擊到的y要大0.5
? ? ? newPoint.y = 0.5f;
? ? ? isOver = false;
? ? ? break;
? ? }
? }
}
// 這個是往指定方向移動的方法
private void MoveTo(Vector3 tar)?
{
? if(!isOver)?
? {
? ? Vector3 offSet = tar - center.transform.position;
? ? // 進行移動
? ? center.transform.position += offSet.normalized * 5 * Time.deltaTime;
? ? // 如果位置小于0.5就不動了
? ? if(Vector3.Distance(tar, center.transform.position)<0.5f)?
? ? {
? ? ? isOver = true;
? ? ? center.transform.position = tar;
? ? }
? }
}
查看全部 -
本節課程總結
查看全部 -
游戲的要素
查看全部 -
這個場景在《課堂演示案例》——Assets——Objects——Environment——StructuralElements里,拖到新建工程就好了。
查看全部 -
Input.GetAxis()返回的值時-1到1之間,確定當前輸入的是哪個方向,0表示沒有輸入
查看全部 -
腳本間調用
通過GetComponment()找到同一個物體的其他腳本;
通過GameObject.Find()找到其他物體;
查看全部 -
執行邏輯的順序
場景啟動時調用所有腳本的Awake();
調用所有腳本的Start();
每一幀調用Update();
調用完所有腳本的Update()后調用LateUpdate()(每一幀調一次);
調用FixUpdate()(與時間相關);
查看全部 -
邏輯,顯示查看全部
-
游戲輸入的步驟
查看全部
舉報