作者yolin5460 (悠悠悠...靈)
看板C_Sharp
標題[程式] 關於3D程式,XNA的問題..
時間Sun Jun 2 01:14:14 2013
因為不知道該發在哪一版,所以發在開發語言的這版
如果有發錯版的話,會把文章轉過去詢問
------------------------------------------------
小弟是大學生,課程專題選了3D程式設計,是使用XNA來開發
最近製作課程專題的時候,遇到了一些問題
我們課程專題的組別是決定做遊戲,內容主要是"第一人稱視角的障礙通過遊戲"
簡單的說,就是玩家需通過各種障礙物到達終點,視角有點像CS的第一人稱遊戲
目前第一人稱視角的部分已經完成,現在在做人物的移動部份
這部份有遇到幾個問題,想問問看有沒有可以解決的辦法
首先我們人物是用一個Box來表示,cameraPosition附著在Box上
1.人物的移動部份
這部分我們打算用WSAD + Space來做人物操控
在按下W鍵時,Box的LinearVelocity(線性速度)就會等於目前前進方向的向量
例: LinearVelocity = new Vector3(10f,0,0);
然後按下Space時,Box的LinearVelocity就會等於向上的向量
例: LinearVelocity = new Vector3(0,10f,0);
不過這樣就會出現一個問題,就是因為是用等號,所以便無法做到慣性的現象
也就是無法向前跳這樣,不過如果用LinearVelocity += new Vector3
便會以極快的速度加速,所以想請問有沒有比較好的解決方法?
2.斜坡的行走
我們地圖有一些斜坡的地形,這部份是為了做出大球從上方滾動下來的陷阱
不過這方面有一些問題,就是當人物走到斜坡時,經常會發生穿牆的事情
這部份就不知道怎麼解決了,雖然可以把斜坡和陷阱移掉
但是逃避問題只會讓自己解決問題的能力停瀉不前
所以來請教看看,有沒有可以解決這部份問題的方法
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.161.252.145
1F:推 ahonchen:射線往下 三角形碰撞偵測出所在高度? 06/02 10:37
2F:→ ck574b027:遊戲的話看來能跑去 GameDesign? 06/03 08:17
3F:→ yolin5460:謝謝各位的意見,這幾天都在找射線相關的資訊,但是後 06/03 16:56
4F:→ yolin5460:來找到其他折衷的方法,就是當碰到斜坡時,把box的位置 06/03 16:57
5F:→ yolin5460:移到不會卡住的位置,運作起來就還算正常。另外移動方面 06/03 16:59
6F:→ yolin5460:也解決了。雖說沒有正面挑戰問題,不過因為deadline快 06/03 17:00
7F:→ yolin5460:到了,所以用了偷吃步的方法,不過還是再次謝謝各位的意 06/03 17:01
8F:→ yolin5460:見。 06/03 17:01
9F:→ yolin5460:另外請問一下,GameDesign是在哪個版塊?或是中文名稱? 06/03 17:05
10F:→ stormcorn:UNITY不好用嗎? 06/04 00:12
11F:→ ck574b027:沒搜過版?在外面按s打GameDesign 06/04 12:36
12F:→ yolin5460:課程限定用XNA啊= = 06/08 01:34