三維數字沙盤教程第20課 武警部隊公安院校開發指導教程

武警部隊公安院校開發指導教程 三維數字沙盤教程第20課 武警部隊公安院校開發指導教程

在SDK中提供底層的模型訪問接口,利用好了可以實現模型的移動動畫。材質替換動畫等等。下面介紹一下具體的操作方法:

這部 分需要懂一點3dmax如果不懂可以找懂的美工配合一下,這裏只起一個拋磚引玉的做用。能夠實現的很多,就要看大家的想法了。

先在3dmax中建如 下模型:

注意看一下結構圖:

這裏我 簡單建了幾個box。放了一個茶壺它屬於box003下面的子物體。相當於我們用box來模仿樓層,茶壺相當於樓層中的物體。,下面爲了方便好看,我們給它們弄上半透明的顏色材質,這 裏有一點需要注 意,因爲我們用的是3ds格式,所以是不支持光影材質和3dmax擴展材質(意思就是隻只支持貼圖或者純色了):

然後我們導出爲3ds格式。進入平臺後如下圖:

可以看到我們導入系統後可以得到和3dmax中一模一樣的結構列表。這個列表怎麼用呢。。我們可以幹什麼呢。。比如我們可以把有茶壺的那一層拿出來單獨研究研究看一看:上代碼:

 GisObjectFor3DSFile va = (GisObjectFor3DSFile)IniRead.IniReadWrite.BiaoManage.BiaoList[0];//從當前場景中找到模型標號
            var aa = va.FindNode("Box002__Group");//從模型標號中找到二樓
            TranslateTransform3D p1 = new TranslateTransform3D();
            p1.OffsetX = aa.Value.Transform.Value.OffsetX + aa.Value.Bounds.SizeX;
            p1.OffsetY = aa.Value.Transform.Value.OffsetY;
            p1.OffsetZ = aa.Value.Transform.Value.OffsetZ;
            //利用wpf中自帶的移動器把它移出來,這裏也可以加上動畫
 
            aa.Value.Transform = p1;
出來的效果如下:

當然你還可以替換材質,複雜一點的可以實現沿路運動,比如導彈發射等複雜效果。在   GisObjectFor3DSFile 類中有點擊事件

如下:

  GisObjectFor3DSFile va = (GisObjectFor3DSFile)IniRead.IniReadWrite.BiaoManage.BiaoList[0];//從當前場景中找到模型標號
            va.ShowBiaoInfo += Va_ShowBiaoInfo;
 
  private void Va_ShowBiaoInfo(NewGisBiao.Base.BaseInfo value, MouseEventArgs Mouseevent, RayMeshGeometry3DHitTestResult TouchObject = null)
        {
            throw new NotImplementedException();
        }
 
可以在在事件中得到點擊的模型哪個一部件,這樣就可以與你的模型交互了。
————————————————
版權聲明:本文爲CSDN博主「種瓜的」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/xtgmd168/article/details/104676048

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章