因為畫圖就真的只是畫圖,這種講求美感的東西我較少東西可以寫
所以接下來是「程式」和「整合」的主場((灑花
話說回來,整個專案都開始一年多了
這篇其實比較像開發回顧才對XDD
以我個人而言,剛開始新專案時,最先寫的程式是「主角移動」
(這裡先假設美術、動畫都已經調整好)
在腳本中抓取角色動畫控制和剛體後,讓他跑跑看,測試動畫有沒有正常播放、人物有沒有跟著跑等等
(還沒習慣Blog的插入圖片,圖片大小很難抓_(:3」 有點模糊抱歉了Orz)
在剛開始接觸C#時,一些更早期的專案中,其實我是以修改position的方式來移動的w
(即transform.position = new Vector3(0,0,0,); 之類的)
但這麼做的話,遇上Collider時會「彈回來」,形成一個不自然的抖動www
上網查了一下後才發現,那是因為直接修改position的話
它會「先移動,之後才偵察物理碰撞」
所以構成了「走進Collider裡面,才發現那是Collider而被迫出來」
一個天然呆的概念((才不是##
因此後來改用修改Velocity,問題就解決了((灑花
再來一個就是,移動是放在FixedUpdate裡面的
原本吶,我是放在Update裡的吶
但是呢,遊戲匯出後拿到別的電腦測試時,才發現
主角你跑太快了吧Σ(*゚д゚ノ)ノ ((驚
和我家筆電測試時,移動速度快了一倍有多(((゚д゚))) ((抖
明明數值是一樣的!?
後來啦,在估狗大神的協助下,才知道Update會因電腦性能差異而有不同
因為另一台測試機性能比我家的好,Update運行次數較多,所以跑的速度也增加
所以為免這種情況,改用「固定更新」的FixedUpdate,好像就解決掉了((
以此延伸,在「物理判定」時好像都在用FixedUpdate
不過這是聽回來的w
我只是個程式渣渣不能判定真偽
上面打了一大堆東西也未必是對的啦ww
((哭
沒有留言:
張貼留言