美景之屋5在线观看_成人区精品一区二区婷婷_91av在线视频播放_午夜影院在线_一本久久综合亚洲鲁鲁五月天_国产精品一区在线观看

  • 為動作捕捉設(shè)備寫MOTIONBUILDER插件

    2018/5/29??????點(diǎn)擊:

    1、將動捕服數(shù)據(jù)實(shí)時接入到MoBu(Motion Builder簡寫,下同)

    2、將retarget后的動作數(shù)據(jù)實(shí)時導(dǎo)出到3D引擎里驅(qū)動模型

    3、在MoBu里K相機(jī)動畫曲線,將相機(jī)參數(shù)同步到引擎里,輕松實(shí)現(xiàn)機(jī)位變動切換等需求。

    我主要就是寫這么3個device插件來完成這些功能。

    以前沒接觸過Autodesk系列的軟件,對MoBu也完全沒聽說過,因此,要開發(fā)我想要的功能,必須仔細(xì)讀一讀它的SDK文檔。

    MoBu的SDK文檔寫的很不全,很多細(xì)節(jié)都完全沒有涉及。主要是大致介紹了一下軟件的實(shí)現(xiàn)的概念構(gòu)成,代碼實(shí)現(xiàn)層面幾個重要類的介紹,講解了一下概念體系里比較典型的幾個關(guān)系,還有關(guān)于Animation的一些稍微比較詳細(xì)一點(diǎn)的介紹。從閱讀SDK文檔開始,到寫出第一個插件--input device插件,耗時近1個月,大部分時間是跟著文檔走,嘗試盡量理解它。后來的幾個插件就很容易了,基本上拷貝粘貼再稍微改改就出來了。

    我的經(jīng)驗(yàn)是:MoBu的擴(kuò)展開發(fā)其實(shí)是可以很容易掌握的,快速掌握的方法,就是充分利用Python。

    MoBu的windows菜單項里有Python Editor一項,打開它,就是軟件集成的python解釋器。基本上一般的功能都能直接在這個解釋器里直接調(diào)用執(zhí)行。我在這個解釋器里,跟著SDK文檔里的Your First Python程序,完整地敲了一遍實(shí)例代碼,每一行都要理解,碰到不懂的概念,就去看文檔的其他部分的介紹,這個例子里幾乎有實(shí)現(xiàn)我的插件需求的全部工具了。

    下面,我就羅列一下我腦子里還記得的比較常用的一些概念。

    先說打開軟件第一眼看到的大的畫了一張格子的窗口,這就是場景窗口,或說視圖窗口,可以有若干個視圖窗口同時存在。所有的視圖窗口展現(xiàn)的都是同一棵對象樹,只不過可能展示的是這棵樹的不同部分或角度。而且MoBu里有且只有這么一棵樹,它叫Scene。我們的MoBu軟件系統(tǒng)名稱叫FBSystem()。你可以在python editor里敲下FBSystem().Scene.Name,它打印出來字符串“Scene”,這里的FBSystem().Scene就是剛才說的那棵猥瑣的樹Scene。我說它是樹,不是指它在內(nèi)存里就是一種樹數(shù)據(jù)結(jié)構(gòu)來實(shí)現(xiàn)的,而僅僅是指可以理解成這么一棵樹的形狀,各種物件都以一定層次關(guān)系掛在這棵樹上,我們的視圖窗口就從某個角度來畫出這個窗口里看到的這棵樹的樣子。我們用戶的界面操作,就是往這棵樹上掛東西或拿掉東西,以及操作樹上的東西。這個就是總的直觀的概念,有了這個總的直觀的印象,細(xì)枝末節(jié)就可以慢慢來加深理解了。

    接下來看軟件的左下角窗口,是所謂的Navigator Window(在默認(rèn)布局下)。這個破窗口,看起來像個樹狀結(jié)構(gòu)。那當(dāng)然了,它大部分功能,就是顯示我們的Scene樹的層次樣貌。先看窗口里的第一個節(jié)點(diǎn),叫Scene,這個名字*無厘頭,因?yàn)槲覀兊腟cene樹里沒有叫Scene的子節(jié)點(diǎn)。我們先通過File菜單或者Asset Browsering窗口加載一個模型,然后跑一下代碼:


    1
    2
    3
    scene=FBSystem().Scene
    for i in scene.RootModel.Children:
        print i.Name

    看看打印出來的字符串,我就發(fā)現(xiàn)和Navigator窗口里Scene節(jié)點(diǎn)下第一級子節(jié)點(diǎn)的內(nèi)容一樣。這再明顯不過了,這里的Scene節(jié)點(diǎn)展示的其實(shí)是我們Scene樹的RootModel節(jié)點(diǎn)的內(nèi)容。所以我覺得這個Scene節(jié)點(diǎn)應(yīng)該改名叫RootModel。

    因此,要強(qiáng)調(diào)的是,程序員的視角不要關(guān)注這個Navigator窗口,而應(yīng)該牢牢記住那棵Scene樹的樣子。

    接下來,打開FBScene的文檔,查看它的定義,能看到里面有很多屬性成員,所以,下面的代碼成立:


    1
    2
    3
    4
    print scene.Cameras.Name
    print scene.Characters.Name
    print scene.Lights.Name
    # WiseGlove go!

    看看結(jié)果就知道,那個Navigator窗口的那些節(jié)點(diǎn)倒是和這些屬性比較配合,還有個別對不上號的節(jié)點(diǎn),點(diǎn)開看看屬性大概也能猜出是啥意思。這個Navigator窗口對程序員來說沒多大作用,把它理解為展示了Scene樹的部分層次樣貌以及軟件系統(tǒng)的統(tǒng)計信息以及一些其他信息就夠了。


    主站蜘蛛池模板: 天干夜天天夜天干天2004年 | 国产三级不卡在线观看视频 | 国产91九色视频 | 欧美性猛片xxxxx免费中国 | 91福利在线视频 | 成全视频在线观看免费高清 | 久久亚洲精品网站 | 九九热九九热 | 黄色av三级在线 | 亚洲va综合va国产va中文 | 激情欧美一区二区三区免费看 | 91亚州熟女网站 | 国产福利姬精品福利资源网址 | 上流社会韩剧免费观看 | 色爱av综合网站 | 久久精品欧洲AV无码四区 | av在线毛片 | 免费又色又爽又黄的舒服软件 | 欧美bdsm精品调教视频 | 插插无码视频大全不卡网站 | 污污汅18禁网站在线永久免费观看 | 1区2区3区在线视频 女人私视频免费观看 | 午夜亚洲AV永久无码精品 | 国产69精品久久久 | 中文字幕诱惑 | 国产呦小j女精品视频 | 亚洲午夜久久久影院 | 亚洲欧美一区二区久久 | 亚洲日本中文字幕一区二区三区 | 精品成人毛片一区二区 | 亚洲国产成人久久综合区 | 69av视频| 天天摸日日摸狠狠添 | 一级日本| 最近免费中文字幕MV在线视频1 | 精品国产三级 | 无码中文人妻在线一区 | 久久精品一区 | 少妇高潮喷水在线观看 | 18禁勿入免费网站入口不卡 | 娇小japansex黑人另类 |