纳金网

标题: 增加动画到Viewpoint场景中 [打印本页]

作者: 愤怒的小猪    时间: 2011-12-26 15:04
标题: 增加动画到Viewpoint场景中
前言:使用VET,你能够在场景中加入动画,例如你可以使物体在场景中移动,旋转物体,改变物体的体积。

你可使用3DMAX等软件创作动画,也可以使用XML在场景中加入新的动画。

在我们的教程中,你将学会:

1.使用XML在场景中加入新的动画。

2.使用interaction去触发动画。

关于MTX文件
当你使用Scene Builder去publish一个场景时,你将创造一个包含XML代码的MTX文件。你可以使用任何的XML的编辑工具,或文本编辑工具,去浏览,编辑MTX文件。


在记事本中打开我们在上一次,创作的场景的MTX文件,里面包含三个物体:martini glass, pyramid, and sphere。

1 <?xml version="1.0"?>

2 <!-- Viewpoint Experience Technology scene des cription file. -->

3 <!-- Created: Thu Aug 22 17:12:03 2002 -->

4 <!-- Creator: Viewpoint Scene Builder (Build 3.0.10.13) -->

5 <!-- Author: anjani -->

6 <MTSScene Version="308" >

7 <MTSSceneParms RenderMode="LightTexture" ShowWidgets="1" BlendShadow="1" EdgeBias="1" >

8 <Transform>

9 <Scale x="1.12127" y="1.12127" z="1.12127" />

10 <osition x="0.00425" y="0.24889" z="0" />

11 </Transform>

12 </MTSSceneParms>

13 <MTSCamera OrbitDist="4.46" >

14 <Rotate x="33.23156" y="2.29183" z="0" />

15 <Translate x="0.005" y="-0.0025" z="0" />

16 <ViewLocation x="0" y="0" z="4" />

17 </MTSCamera>

18 <MTSInstance Name="martini" >

19 <MTSInstance Name="martini" >

20 <Transform>

21 <Scale x="-1" y="-1" z="-1" />

22 <Rotate x="-180" y="-180" z="-0.00001" />

23 </Transform>

24 <MTSGeometry Name="Geo_martini" BackFaceDir="0" />

25 </MTSInstance>

26 <MTSInstance Name="Simple_0" >

27 <Transform>

28 <Scale x="0.44592" y="0.44592" z="0.44592" />

39 <osition x="1.13482" y="-0.25585" z="-0.04041" />

30 </Transform>

31 <MTSGeometry Name="MTSSimple_0" Type="MTSPyramid" />

32 <MTSMaterial ID="0" >

33 <MTSTextureMap Type="Light" Name="diff2_ELight" />

34 <MTSColor Type="Diffuse" r="0.65" g="0.65" b="0.65" />

35 </MTSMaterial>

36 </MTSInstance>

37 <MTSInstance Name="Simple_1" >

38 <Transform>

39 <Scale x="0.36389" y="0.36389" z="0.36389" />

40 <osition x="-1.26348" y="-0.20504" z="0.03402" />

41 </Transform>

42 <MTSGeometry Name="MTSSimple_1" Type="MTSSphere" />

43 <MTSMaterial ID="0" >

44 <MTSTextureMap Type="Light" Name="GelimL_ELight" />

45 <MTSColor Type="Diffuse" r="0.65" g="0.65" b="0.65" />

46 </MTSMaterial>

47 </MTSInstance>

48 <MTSInstance Name="Simple_2" Visible="0" >

49 <Transform>

50 <Scale x="0.46607" y="0.46607" z="0.46607" />

51 <osition x="1.13987" y="-0.25203" z="-0.0438" />

52 </Transform>

53 <MTSGeometry Name="MTSSimple_2" Type="MTSPyramid" />

54 <MTSInstance Name="Layer2D_0" >

55 <Transform>

56 <Scale x="0.2" y="0.2" z="0.2" />

57 </Transform>

58 <LayerData Text="Training Rollover" TextColor="1.000000 0.835294 0.172549"

59 Language="English" AlwaysVisible="0" />

60 </MTSInstance>

61 </MTSInstance>

62 </MTSInstance>

63 <MTSTimeElem Type="MTSStream" Name="martini" Path="martini.mts" >

64 <Target Name="MTSInstance.martini" />

65 </MTSTimeElem>

66 </MTSScene>
第1行:是mtx file必须的头

第2--5行:是注释

6---17:描述场景,照相机的信息

Lines 19-25 :描述the instance of the martini glass在场景中的信息

Lines 26-47 :描述pyramid 和 sphere 在场景中的信息

Lines 48-61 :描述 热点 hot spot

Lines 63-65 :包含 MTSStream time element ,他的作用是下在 mts file
关于 MTSTimeElem Element

MTSTimeElem Element可以在场景中增加动画

我们来看下面这个例子使用MTSTimeElem Element来改变一个物体的尺寸

1 <MTSTimeElem Type="Keyframe" On="0" Name="Scale_Martini" >

2 <Target Name="MTSInstance.martini" Property="scl_" Timeline="T1" />

3 <Time> 0 2 </Time>

4 <Timeline Name="T1" Type="3D" > * [.5 .5 .5] </Timeline>

5 </MTSTimeElem>
Line 1:Keyframe 是一个基本的动画类型,也是最常用的

Line 2:告诉场景我们要改变哪一个物体的哪属性,在这里我们要改变martini的scl_属性

Line 3:动画的运行时间的长度,我们定义为2秒

Line 4:在这个动画过程中,martini的尺寸将沿着x,y,z轴缩小一半
关于 the MTSInteractor Element(互动)

VET的互动系统可以指定系统或用户定义的事件去触发动作或动画

我们来看下面这个例子使用MTSInteractor Element响应用户事件

1 <MTSInteractor Name="Martini_Event_Handler" >

2 <Target Name="MTSInstance.Martini" />

3 <MTSHandle Event="MouseLeftClick" Target="MTSTimeElem.Scale_Martini::trgr"

4 Value="1" Action="MTSAssignProperty" />

5 </MTSInteractor>
Line 2 在这个例子中 Target 元素 告诉互动系统当用户点击哪一个物体时,才会触发这个互动

Lines 3-4 The MTSHandle element 指定一个用户事件,例如MouseLeftClick,去引发系统的响应

这段代码的含义是:当用鼠标左健点击Martini时将引发“Scale_Martini“动画(在“关于 MTSTimeElem Element”中创造的动画)
作者: 带花的杯子    时间: 2011-12-26 15:49
顶啊
作者: 四哥    时间: 2011-12-27 13:33
四哥路过,其他闪道!
作者: 有人不让用炮炮    时间: 2011-12-27 13:33

作者: 打死不看十三钗的猪    时间: 2011-12-27 13:39
继续晕啊
作者: 我心飞翔    时间: 2011-12-27 13:43

作者: 哭泣的野百合    时间: 2011-12-27 13:49

作者: 哭泣的野百合    时间: 2011-12-27 13:49

作者: tc    时间: 2012-2-14 23:28
非常感谢,管理员设置了需要对新回复进行审核,您的帖子通过审核后将被显示出来,现在将转入主题

作者: 菜刀吻电线    时间: 2012-3-8 23:22
佩服,好多阿 ,哈哈

作者: Tomoya    时间: 2012-3-9 22:05

作者: 晃晃    时间: 2012-4-1 23:30
这么后现代

作者: 愤怒的小猪    时间: 2012-4-2 19:43

作者: 菜刀吻电线    时间: 2012-6-8 23:25
呵呵,真得不错哦!!

作者: tc    时间: 2012-7-24 23:25
不错哦,顶一下......

作者: 晃晃    时间: 2012-7-28 23:21
提醒猪猪,千万不能让你看见

作者: C.R.CAN    时间: 2012-8-20 23:27
呵呵,很好,方便罗。

作者: 奇    时间: 2012-8-26 23:22
发了那么多,我都不知道该用哪个给你回帖了,呵呵

作者: tc    时间: 2012-9-1 01:08
不错不错,收藏了

作者: 晃晃    时间: 2012-11-12 23:22
加精、加亮滴铁子,尤其要多丁页丁页

作者: C.R.CAN    时间: 2013-2-20 23:27
不错不错,收藏了

作者: fgdf#dfg    时间: 2013-2-23 19:20
不错不错,收藏了!!
作者: 菜刀吻电线    时间: 2013-3-9 23:41
俺是新人,这厢有礼了!





欢迎光临 纳金网 (http://go.narkii.com/club/) Powered by Discuz! X2.5