Animation某一關(guān)節(jié)的轉(zhuǎn)向問題(項目中遇到的問題)

最近在做一個簡單的FPS游戲,可以用鼠標控制槍口的指向,但是動畫的槍口沒有向上抬和向下抬

Paste_Image.png

這樣問題就來了食听,槍口的水平位置我們控制模型的朝向就可以邻寿,但是在控制槍口上下抬得時候我們要怎么解決呢,剛開始想這用Mask遮罩涮雷,然并卵阵面。后來發(fā)現(xiàn)Animation是在Update中渲染的,那我就在LateUpdate中去修改槍口的朝向洪鸭,就是上半身向上样刷,或者向下。

 void LateUpdate()
 {
  rotationZ += Input.GetAxis("Mouse Y") * 10f;
  //這個是限制他的旋轉(zhuǎn)角度的
   rotationZ = Mathf.Clamp(rotationZ, MinRotationZ, MaxRotationZ);
   gunForward.localEulerAngles = new Vector3(gunForward.localEulerAngles.x, gunForward.localEulerAngles.y, rotationZ);

}

這樣就可以去控制他的旋轉(zhuǎn)方向


若水GIF截圖_2017年1月8日12點16分33秒.gif

在上邊的方法大家注意到我是修改的他的localEulerAngles這個屬性览爵,這個屬性跟我們 Inspector面板中的那個是rotation的那個是一樣的置鼻。
我還用了第二種方法


但是用這種方法有一個問題就是,當我們槍口改變方向以后拾枣,又會立即回到初識點位置

若水GIF截圖_2017年1月8日12點23分51秒.gif

這個是因為沃疮,每次在Update中渲染動畫的時候盒让,會把他的位置按照動畫骨骼系統(tǒng)去初始化,而當我們鼠標不動的時候司蔬,旋轉(zhuǎn)角度就為0邑茄,所以就回到了原來的點位,而第一種修改localEulerAngles卻沒有這種情況是因為我們我們的rotationZ的這個變量是可以存儲值的俊啼,所以在LateUpdate再修改一次localEulerAngles肺缕,這樣我們看著就是我們鼠標不動他的槍口也不動,而內(nèi)部是渲染了兩次他的模型的授帕。此時我們只需要一個空物體就可以解決

Paste_Image.png

然而這個我們只需要把想要改變旋轉(zhuǎn)方向的物體放到空物體下邊同木,注意這兩個要在同一層級transform的屬性都要一樣,最最重要的一點跛十,不能在Hierarchy中直接拖彤路,要用代碼去控制,假如要是直接拖動畫會出問題芥映,至于為什么洲尊,這個我咨詢了下大神,大神說應(yīng)該是在我們準備啟動游戲的時候奈偏,系統(tǒng)會遍歷他的骨骼系統(tǒng)坞嘀,并存儲,我們在代碼中去修改的時候惊来,就不會對他的動畫產(chǎn)生影響而是會影響他的旋轉(zhuǎn)角度


這個我是在Awake中去修改的丽涩,這樣就可以了,大家可以去測試下裁蚁。而第二種方法矢渊,我們的那個修改旋轉(zhuǎn)角度的代碼也可以放Update里邊,但是第一種方法的修改方式必須放在LateUptade里邊枉证。

而限制他的旋轉(zhuǎn)角度昆淡,我們可以通過

Paste_Image.png

localEulerAngles的屬性去限制,我的這個動畫是以Z軸旋轉(zhuǎn)的

 float mouseY = Input.GetAxis("Mouse Y");
    if (TestGun.localEulerAngles.z<=350f&& TestGun.localEulerAngles.z>=310f)
    {
        if (TestGun.localEulerAngles.z<=320f) {
            mouseY = Mathf.Clamp(Input.GetAxis("Mouse Y"), 0, 1);
        }
    }
    if (TestGun.localEulerAngles.z <= 30f && TestGun.localEulerAngles.z >= 10f) {
        if (TestGun.localEulerAngles.z >= 20f)
        {
            mouseY = Mathf.Clamp(Input.GetAxis("Mouse Y"),-1, 0);
        }
    }
    TestGun.transform.RotateAround(TestGun.position, TestGun.forward, mouseY);
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末刽严,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子避凝,更是在濱河造成了極大的恐慌舞萄,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,546評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件管削,死亡現(xiàn)場離奇詭異倒脓,居然都是意外死亡,警方通過查閱死者的電腦和手機含思,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,224評論 3 395
  • 文/潘曉璐 我一進店門崎弃,熙熙樓的掌柜王于貴愁眉苦臉地迎上來甘晤,“玉大人,你說我怎么就攤上這事饲做∠呋椋” “怎么了?”我有些...
    開封第一講書人閱讀 164,911評論 0 354
  • 文/不壞的土叔 我叫張陵盆均,是天一觀的道長塞弊。 經(jīng)常有香客問我,道長泪姨,這世上最難降的妖魔是什么游沿? 我笑而不...
    開封第一講書人閱讀 58,737評論 1 294
  • 正文 為了忘掉前任,我火速辦了婚禮肮砾,結(jié)果婚禮上诀黍,老公的妹妹穿的比我還像新娘。我一直安慰自己仗处,他們只是感情好眯勾,可當我...
    茶點故事閱讀 67,753評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著疆柔,像睡著了一般咒精。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上旷档,一...
    開封第一講書人閱讀 51,598評論 1 305
  • 那天模叙,我揣著相機與錄音,去河邊找鬼鞋屈。 笑死范咨,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的厂庇。 我是一名探鬼主播渠啊,決...
    沈念sama閱讀 40,338評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼权旷!你這毒婦竟也來了替蛉?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,249評論 0 276
  • 序言:老撾萬榮一對情侶失蹤拄氯,失蹤者是張志新(化名)和其女友劉穎躲查,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體译柏,經(jīng)...
    沈念sama閱讀 45,696評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡镣煮,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,888評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了鄙麦。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片典唇。...
    茶點故事閱讀 40,013評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡镊折,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出介衔,到底是詐尸還是另有隱情恨胚,我是刑警寧澤,帶...
    沈念sama閱讀 35,731評論 5 346
  • 正文 年R本政府宣布夜牡,位于F島的核電站与纽,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏塘装。R本人自食惡果不足惜急迂,卻給世界環(huán)境...
    茶點故事閱讀 41,348評論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望蹦肴。 院中可真熱鬧僚碎,春花似錦、人聲如沸阴幌。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,929評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽矛双。三九已至渊抽,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間议忽,已是汗流浹背懒闷。 一陣腳步聲響...
    開封第一講書人閱讀 33,048評論 1 270
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留栈幸,地道東北人愤估。 一個月前我還...
    沈念sama閱讀 48,203評論 3 370
  • 正文 我出身青樓,卻偏偏與公主長得像速址,于是被迫代替她去往敵國和親玩焰。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,960評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 在iOS中隨處都可以看到絢麗的動畫效果芍锚,實現(xiàn)這些動畫的過程并不復(fù)雜昔园,今天將帶大家一窺ios動畫全貌。在這里你可以看...
    每天刷兩次牙閱讀 8,495評論 6 30
  • 如果想讓事情變得順利并炮,只有靠自己--夏爾·紀堯姆 上一章介紹了隱式動畫的概念蒿赢。隱式動畫是在iOS平臺創(chuàng)建動態(tài)用戶界...
    夜空下最亮的亮點閱讀 1,942評論 0 1
  • 111. [動畫系統(tǒng)]如何將其他類型的動畫轉(zhuǎn)換成關(guān)鍵幀動畫? 動畫->點緩存->關(guān)鍵幀 112. [動畫]Unit...
    胤醚貔貅閱讀 13,021評論 3 90
  • 在iOS中隨處都可以看到絢麗的動畫效果渣触,實現(xiàn)這些動畫的過程并不復(fù)雜,今天將帶大家一窺iOS動畫全貌壹若。在這里你可以看...
    F麥子閱讀 5,113評論 5 13
  • 概覽 在iOS中隨處都可以看到絢麗的動畫效果嗅钻,實現(xiàn)這些動畫的過程并不復(fù)雜皂冰,今天將帶大家一窺iOS動畫全貌。在這里你...
    Yiart閱讀 3,819評論 3 34