vizard介紹
Vizard是一款虛擬現(xiàn)實開發(fā)平臺軟件,從開發(fā)至今已走過十個年頭。它基于C/C++,運(yùn)用新近OpenGL拓展模塊開發(fā)出的高性能圖形引擎。當(dāng)運(yùn)用Python語言執(zhí)行開發(fā)時,Vizard同時自動將編寫的程式轉(zhuǎn)換為字節(jié)碼抽象層(LAXMI),進(jìn)而運(yùn)行渲染核心。
vizard入門
1、加載人物、對象、背景
2、鴿子隨機(jī)漫步
①利用vizact.randfloat()生成隨機(jī)位置,調(diào)用vizact.walkTo()實現(xiàn)鴿子漫步
?、诶胿izact.choice()生成隨機(jī)選擇,隨機(jī)更新鴿子的state狀態(tài)
?、壅{(diào)用vizact.waittime()實現(xiàn)隨機(jī)時間的等待
?、芾胿izact.sequence()實現(xiàn)上述動作序列
3、人物談話動作
4、角色移動
?、偻ㄟ^viz.getFrameElapsed()*speed計算移動速度
②初始化歐拉矩陣m1=viz.Matrix.euler(0,0,0)
?、弁ㄟ^viz.key.isDown()分析對應(yīng)鼠標(biāo)事件,根據(jù)人物朝向avatar.getEuler()更新m1平移變換矩陣
?、芡ㄟ^avatar.setPosition(m1.getPosition())更新人物位置
⑤通過viz.key.isDown()分析對應(yīng)鼠標(biāo)事件,設(shè)置對應(yīng)人物動畫:
前進(jìn)、后退動畫:avatar.state(2)
左跨步動畫:avatar.state(12)
右跨步動畫:avatar.state(13)
人物靜止動畫:avatar.state(1)
5、獲取鼠標(biāo)位移
通過回調(diào)函數(shù)callback獲取
基于vizard實現(xiàn)的效果:
1.時鐘顯示當(dāng)前系統(tǒng)時間
2.兩個談話小人(帶動畫)
3.第三人稱漫游(帶動畫)
前進(jìn)(鍵盤 W 鍵)
后退(鍵盤 S 鍵)
左跨步(鍵盤 A 鍵)
右跨步(鍵盤 D 鍵)
旋轉(zhuǎn)(使用鼠標(biāo)左右平移)
上仰(使用鼠標(biāo)上下平移)
4.其他三維物體/背景
鴿子做自由漫步
花瓶擺件
天空背景
草地背景