成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Unity3D 游戲引擎之控制模型移動旋轉與碰撞

移動開發 iOS 游戲開發
上一章介紹了模型的旋轉與平移,本章介紹一些好玩的,通過按鈕來控制模型的移動與鏡頭的跟隨,腳本參數的傳遞。個人覺得Unity3D 這套游戲引擎真的很棒,它可以為開發者節省時間。
上一章介紹了模型的旋轉與平移,本章介紹一些好玩的,通過按鈕來控制模型的移動與鏡頭的跟隨,腳本參數的傳遞。個人覺得Unity3D 這套游戲引擎真的很棒,它可以為開發者節省時間。用更多少的腳本,可以實現更多的功能。先贊一下,哇咔咔~廢話不多說了,入正題!
首先在3D世界中創建一個箱子模型,然后添加一個腳本,命名為  js0綁定到這個箱子中。在添加一個腳本,命名為js1 ,同樣綁定到這個箱子上,用來實現對象的創建與調用方法參數的傳遞 ~
var Control;   這里聲明一個控制類的對象,用來進行參數的傳遞,調用方法。
Getomponent(js1): 得到腳本名稱為js1的對象,這里把值賦給Control,就可以使用js1腳本中的方法了,下面的代碼中通過這個對象調用模型的移動方法。
Input.GetKey(KeyCode): 這個方法返回一個Bool 判斷當前按鍵是否被按下,當然這里只能運行在PC上才可以感應按鈕,因為IOS的設備上沒有按鍵,以后我會介紹在IOS上添加游戲搖桿的功能,本章我們先學習一下PC上的基本按鈕響應。
下面代碼
實現按下“W”控制物體向前
實現按下“S”控制物體向后
實現按下“A”控制物體向左平移
實現按下“D”控制物體向右平移
實現按下“Q”控制物體向左旋轉
實現按下“E”控制物體向右旋轉
js0.js 代碼

[代碼]js代碼:

01 //旋轉移動速度 
02 var Speed = 50; 
03    
04 //控制對象 
05 var Control; 
06    
07 function Update() 
08
09   //得到控制對象 
10   Control = GetComponent(js1);  
11      
12   //判斷按鍵  
13        
14   if(Input.GetKey(KeyCode.W)) 
15   { 
16         //前進 
17         Control.ForWard(); 
18            
19   }else if(Input.GetKey(KeyCode.S))  
20   { 
21         //后退 
22         Control.Back(); 
23   } 
24      
25     if(Input.GetKey(KeyCode.A)) 
26   { 
27         //前左 
28         Control.GLeft(); 
29            
30   }else if(Input.GetKey(KeyCode.D))  
31   { 
32         //后右 
33         Control.GRight(); 
34   } 
35      
36      
37      
38   if(Input.GetKey(KeyCode.Q)) 
39   { 
40     //左旋轉 
41        
42     Control.leftRotate(Vector3.up *Time.deltaTime * -Speed); 
43    
44   }else if(Input.GetKey(KeyCode.E)) 
45   { 
46     //右旋轉 
47     Control.RightRotate(Vector3.up *Time.deltaTime * Speed); 
48    
49   } 
50       
51 }
js1.js 代碼
 
參數的傳遞可以使用obj進行傳遞,代碼中我將旋轉的角度做為參數傳遞到了js1.js中控制模型旋轉。
Vector3 標示一個3D的向量單位,它可以標示模型的三個方向,這里根據旋轉的角度與移動的向量設置它。

[代碼]js代碼:

01 //前進速度 
02 var Speed = 50; 
03    
04 //前進 
05 function ForWard()  
06
07     transform.Translate(Vector3.forward * Time.deltaTime *Speed); 
08
09    
10 //后退 
11 function Back()  
12
13     transform.Translate(Vector3.forward * Time.deltaTime * -Speed);      
14
15    
16    
17 //向左 
18 function GLeft()  
19
20     transform.Translate(Vector3.right * Time.deltaTime *-Speed); 
21
22    
23 //向右 
24 function GRight()  
25
26     transform.Translate(Vector3.right * Time.deltaTime * Speed);         
27
28    
29    
30    
31    
32 //傳遞參數 
33    
34 //左旋轉 
35 function leftRotate(obj) 
36
37     transform.Rotate(obj);   
38
39    
40 //右旋轉 
41 function RightRotate(obj) 
42
43     transform.Rotate(obj);   
44 }
OK點擊運行,通過按鍵我們可以正常的控制模型平移與旋轉,但是現在有兩個問題 1, 主攝像機不能跟隨控制模型, 2  、模型可以橫穿過山丘,感覺很假。下面我們解決這兩個問題。
 
 
在Unity3D標準資源的腳本中系統幫我們寫好了跟隨腳本.如下圖所示,點擊Import Package - > Scripts 將系統腳本導入。
 
 
 
選中攝像機 點擊Component - > Camera-Control - > Smoot Follow ,給主攝像機添加一個跟隨腳本。
 
 
跟隨腳本添加完以后,須要指定一個跟隨的物體,下面紅框內將跟隨的物體Cube拖動進來,這里Cube就是我們上面控制的模型,那么這樣,攝像機將會一直在身后跟隨我們控制的模型。下面是一些跟隨的參數,設置 跟隨的距離 高度等等,盆友們手動的修改一下運行游戲就可以看出來變化,。
 
 
控制物體的碰撞可以使用 選中模型, Component - > Physics - > Rigidbody 設置這個模型的重力碰撞。那么這樣你控制的模型就不會穿過山丘,而是感應重力碰撞。
 
 
點擊運行游戲,看看效果,控制箱子行走的同時,我們可以清晰的看出旁邊的樹木被物理碰撞所干擾,前后,左右,旋轉 完全OK .大家快試試吧。哇咔咔~~
 
 
責任編輯:冰凝兒
相關推薦

2012-12-24 08:51:23

iOSUnity3D

2012-12-24 08:54:47

iOSUnity3D

2012-12-24 08:40:12

2012-12-24 08:46:50

iOSUnity3D

2012-12-24 08:59:13

iOSUnity3D

2012-12-24 09:06:14

iOSUnity3D

2012-12-24 09:15:57

iOSUnity3D

2012-12-24 08:57:35

iOSUnity3D

2012-12-24 09:01:41

iOSUnity3D

2012-12-24 08:48:25

iOSUnity3D

2012-12-24 08:50:21

iOSUnity3D

2012-12-24 09:04:04

iOSUnity3D

2012-12-24 09:07:09

iOSUnity3D

2012-12-24 09:00:31

iOSUnity3D

2012-12-24 08:45:19

iOSUnity3D

2012-12-24 08:56:15

iOSUnity3D

2013-04-25 10:03:07

unity3D手機游戲引擎

2013-06-17 09:12:31

Unity3D

2012-12-24 09:02:48

iOSUnity3D

2012-12-24 09:11:58

iOSUnity3D
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 一区二区精品在线 | 综合久久av| 成人高清在线 | 日韩精品一区二区三区中文字幕 | 国产一区二区 | 亚洲第一成年免费网站 | 精品乱码一区二区三四区 | 在线观看免费av网 | 欧美理论片在线观看 | 欧美在线a | 婷婷激情综合 | 一区二区三区回区在观看免费视频 | 亚洲精品国产成人 | 日韩综合一区 | 久久久久成人精品免费播放动漫 | 91精品国产综合久久福利软件 | 99精品一区二区 | 国产精品久久久久无码av | 一区二区电影网 | 亚洲午夜av久久乱码 | 成人高清视频在线观看 | 日韩不卡一二区 | 伊人99 | 欧美亚洲高清 | 国产精品成人国产乱 | 99精品久久久国产一区二区三 | www.日本三级 | 黄a在线观看 | 一道本不卡视频 | 高清视频一区二区三区 | 女生羞羞视频 | 国外成人在线视频 | 激情 一区 | 一级片在线观看 | 亚洲一区在线日韩在线深爱 | 亚洲精品久久久一区二区三区 | 久久亚洲国产 | 亚洲性人人天天夜夜摸 | k8久久久一区二区三区 | 亚洲欧美在线观看 | 久久精品中文字幕 |