Mogre學習筆記(七)

2021-04-19 09:39:40 字數 1085 閱讀 4610

section 7: skeleton animation今天試圖新增多個模型的骨骼動畫,出了一些問題,鬱悶了一上午之後終於找到了問題所在,下面我們就首先給出tutorial上的一段**,看看如何使用骨骼動畫,再說說我遇到的問題吧n_n

using system;

using system.drawing;

using math3d;

using ogredotnet;

using system.collections.generic;

namespace ogredotnettutorial

protected bool nextlocation()

protected override bool framestarted(frameevent e)

//if(nextlocation())

else //nowhere to go. set the idle animation. (or die)

}else //we're in motion

//if(mdistance <= 0.0f)

}else

else}}

//update the animation state.

manimationstate.addtime(mdeltatime);

return true;

}[mtathread]

static void main(string args)}}

}

首先,注意紅色**部分,每個entity物件都有乙個getanimationstate方法,用於取得其animation

state,robot.skeleton有walk和idle兩種屬性,設定loop true和enabled true,呼叫addtime方法以設定動畫速度。addtime方法必須在framestarted或者frameended中被呼叫,以使其在render時被重新整理。

需要注意的是,骨骼動畫是已經設定好的,**只能讓其按照指令碼動作。

藍色**部分是設定位置和轉向的。

找到問題所在就容易解決了,兩種方法:1.try catch 2.更換模型。

Mogre學習筆記(三)

section 3 frame listeners and windows.forms inputframelistener,是ogre最有用的部分,下面我們就先來看一下 using system using system.collections.generic using system.windo...

Mogre學習筆記(四)

section 4 the ogre startup sequence在我們寫自己的ogre應用前,必須知道ogre有乙個特殊的啟動順序。他主要分為以下7步 生成乙個root物件 定義資源 resourcegroupmanager.singleton.addresourcelocation loca...

Mogre學習筆記(五)

section 5 embed ogre in a windows.forms window 很多時候,我們需要把ogre放到乙個windows.form中,以方便使用,下面給出 先 using system using system.collections.generic using system...