NeoAxis 學習筆記 3

2021-06-16 05:52:13 字數 2034 閱讀 2682

動畫操作

在class dynamic建立函式onpostcreate()中初始化:

protected override void onpostcreate( bool loaded )

createanimationcontroller();

其中class meshobjectanimationcontroller和class animationitem都不是引擎部分的,都是遊戲部分的。

在class dynamic的重新整理函式中更新動畫:

void onrenderframe()

animationcontroller.dorenderframe(); // 更新動畫幀

if( forceanimationremainingtime == 0 ) // 設定預設動畫

onupdatebaseanimation();

當forceanimationremainingtime為0時,就為物體設定預設動畫,這個函式在class dynamic中沒有實現,放到了具體的子類中實現,比如class gamecharacter中:

protected override void onupdatebaseanimation()

//idle animation

}根據速度,設定預設動畫是idle或者walk。

當角色做了乙個動作,比如跳時,需要設定乙個臨時的跳的動畫來代替預設動畫,

在class dynamic function setforceanimation中:

public void setforceanimation( string animationbasename, bool allowrandomanimationnumber )

//activate new animation

currentanimationitem = animationcontroller.add( animationbasename,

allowrandomanimationnumber, false );

if( currentanimationitem != null )

forceanimationremainingtime = currentanimationitem.length;

forceanimationremainingtime 作為臨時動畫的時間長度,在上面的function onrenderframe中,如果forceanimationremainingtime 為0,表示臨時動畫結束,就需要還原成預設動畫了。

protected override void ontick()

if( animationcontroller != null )

tickforceanimationremainingtime();

void tickforceanimationremainingtime()

}由於自己開發的需要,新增乙個功能:新增多個動畫,組成乙個動畫串,單個動畫之間可以設定延時。

在class dynamic裡面新增乙個結構定義和乙個列表:

// for delay animation

struct delayanimationitem

listdelayanimationlist = new list();

增加乙個新增動畫函式:

ontick() --> tickforceanimationremainingtime()

修改tickforceanimationremainingtime()為如下:

void tickforceanimationremainingtime()

else

}else if( forceanimationremainingtime != 0 )

}因為對延時精度要求不高,所以在ontick中呼叫。

修改function onrenderframe()為如下:

protected override void onrenderframe()

//animation management

if( animationcontroller != null )

}

NeoAxis學習筆記(2)

由於網上基本沒有任何的資料 除了官網 在安裝完成之後,我們開啟安裝路徑下的freeeditor檔案。我們能看到這個裡有11個工程 這裡我們介紹幾個主要的工程 其他的我也不知道是幹什麼的0.0 chatexample 顧名思義就是聊天的例子。沒有什麼好看的。你可以set as startup proj...

學習筆記3

第四單元 了解linux檔案系統 1.絕對路徑和相對路徑 a.絕對路徑 無論在系統的任何位置,從系統的頂級目錄 根目錄 一級一級往下排的表示方法 b.相對路徑 如果已經在某乙個目錄下面操作,那麼可以省略從根目錄到當前目錄的表示,若要切到該目錄下的任意位置,直接表示 2.系統中根目錄下子目錄的作用 a...

學習筆記3

乙個簡單的程式 import tensorflow as tf 定義網路結構和前向傳播演算法 def get weight shape w tf.variable return w def get bias shape b tf.variable return b def forward x,sha...