最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

11_P95~P106TheWeaponClass

2023-03-23 09:12 作者:俯瞰萬千風(fēng)景  | 我要投稿

95?the weapon Class武器類

inheriting from the item class從Item類繼承

新建weapon類,從item類中繼承

如果weapon類中需要重寫item中的方法,需要將item中的函數(shù)定位為virtual ,在weapon類中的定義后面加上override

如果在weapon的類中,需要使用item中原來的方法,則需要加上Super::引用


96?Sockets接口

adding sockets and attaching actors to them添加套接字并將角色附加到它們

打開Echo的骨骼,找到左右手,可以給手骨添加socket插槽


添加預(yù)覽模型


97?Downloading Animations下載動畫

Finding Animations for equipping a sword找到裝備劍的動畫

mixamo.com

從網(wǎng)站上找到需要的動作下載,下載時候 不要帶皮膚

然后導(dǎo)入UE

98?IK Rig

Creating an IK Rig for Animation Retargeting為動畫重定向創(chuàng)建IK Rig

新建 動畫->IK綁定


選擇兩個骨骼,并對骨骼進(jìn)行IK綁定

99?IK Retargeter IK重定向

Retargeting Mixamo Animations to Echo

新建一個IK重定向器,在編輯窗口中,將兩個骨骼初始位置要調(diào)整一致,然后就可以導(dǎo)出新的動畫

100?Attaching the Sword 綁定武器

attaching the sword to the right hand socket

佩劍

把劍固定在右手的插座上

藍(lán)圖實現(xiàn):在weapon的藍(lán)圖中編輯如下:

注意 右側(cè)三個選項 需要時對齊到目標(biāo)

C++實現(xiàn)

101?Picking Up Items拾取物品

Creating an Action Mapping to Pick Up Items創(chuàng)建拾取物品的動作映射

希望實現(xiàn)按下E鍵 拾取道具

首先我們現(xiàn)在UE項目設(shè)置中,設(shè)置E按鍵的操作映射

我們吧之前在Weapon中實現(xiàn)的檢測重疊的函數(shù)移動到父類Item中,只在Weapon類中實現(xiàn)裝備Equip的效果,然后再Character類中 實現(xiàn)傳入重疊對象參數(shù)的函數(shù)

首先在Character中包含item和weapon的頭文件

在Item中包含AEchoCharacter頭文件

然后聲明EkeyPress函數(shù),并將其綁定至E鍵

實現(xiàn)EKeyPress函數(shù)的功能,傳入綁定的Mesh參數(shù)和Socket名稱給Weapon的Equip方法

然后在Item中的OnSphereOverlap中,判斷碰撞的是否為當(dāng)前角色EchoCharacter,并將Character賦值給Item的AEchoCharacter類對象


最后在Weapon中,實現(xiàn)Equip的方法

使用AttachToComponent將得到的角色Mesh,轉(zhuǎn)換規(guī)則TransformRules,綁定socket的名稱InSocketName 傳入


102?Enum for Character State角色狀態(tài)枚舉

Creating an Enum fro the Character's State為角色的狀態(tài)創(chuàng)建Enum

如何正確的在UE中聲明一個枚舉

我們需要在枚舉對象的名稱前面加上大寫的E,表示這是一個枚舉參數(shù)

建議在前面加上類型限定,如果這個枚舉只是在EchoCharacter類中使用,最好加上類限制,避免與其他類中相同的枚舉名稱重復(fù),雖然不會有問題,但是這樣可以提高可讀性

在前面加上UENUM(BlueprintType) 建立反射給UE系統(tǒng),這樣可以在藍(lán)圖中使用C++建立的枚舉類型

我們可以在枚舉中,每個標(biāo)識符的名稱前面加上縮寫以提高可讀性,比如Enum Character State 可以縮寫為ECS,并附加在標(biāo)識符名稱前面

將這個枚舉單獨寫在一個頭文件中,這樣可以在其他類里面,直接包含這個頭文件,而不是包含character的頭文件

我們在character類中新建一個const函數(shù),可以返回當(dāng)前角色的狀態(tài)


這樣在EchoAnimInstance中調(diào)用這個函數(shù),就可以獲得當(dāng)前角色的狀態(tài)

103?switching Animation Poses切換動畫姿勢

Changing Poses Based on character state根據(jù)角色狀態(tài)改變姿勢

104?Equipped Animations裝備的動畫

more animations for a Single-handed weapon單手武器的更多動畫

像P98一樣 ,給echo添加持武器跑步的姿勢

依然需要從網(wǎng)上下載跑步的姿勢,導(dǎo)入

然后用xbot創(chuàng)建的ik文件 轉(zhuǎn)換動畫

然后在echo的動畫藍(lán)圖中添加狀態(tài)

105 Linked anim graph鏈接動畫圖

Linking multiple animation blueprints鏈接多個動畫藍(lán)圖


新建一個動畫藍(lán)圖,將之前ABP_Echo中的動畫,復(fù)制到新的藍(lán)圖中

新的藍(lán)圖中,先編譯一下,可以看到缺少一些變量,找到缺失的變量,然后新建

刪除ABP_Echo中的節(jié)點,然后新建一個節(jié)點 Linked Anim 然后找到新的動畫藍(lán)圖

在新建節(jié)點的設(shè)置界面,將參數(shù)傳入,一一對應(yīng)


節(jié)點

將右上角填入傳入的對應(yīng)的參數(shù)

106小結(jié)

11_P95~P106TheWeaponClass的評論 (共 條)

分享到微博請遵守國家法律
天峻县| 广河县| 盐池县| 内江市| 长子县| 东光县| 金乡县| 涟水县| 万州区| 平南县| 莱芜市| 大竹县| 北宁市| 平邑县| 五常市| 徐水县| 文化| 连云港市| 崇明县| 南漳县| 道孚县| 吉水县| 安仁县| 大城县| 长沙市| 泸溪县| 泽库县| 南召县| 麻城市| 永年县| 中宁县| 田阳县| 凤山县| 房产| 沙湾县| 星座| 泸定县| 哈密市| 大洼县| 平原县| 玛多县|