网络软件系统工具应用软件图形图像多媒体类免费游戏安全相关免费音乐网页素材 电子书籍考试考题建站源码
教育教学多媒体类编程开发操作系统游戏天地娱乐天地简历求职站长专区网页设计安全技术图形图像文学驿站
业界资讯 | 图形图像 | 操作系统 | 网络冲浪 | 工具软件 | 办公软件 | 媒体动画 | 精文荟萃 | 认证考试 | 网页设计 | 技术开发 | 专栏
当前位置:热点网络学院媒体动画DirectorDirector 3D 基础(之七)
精品推荐
热点TOP10
·Director生成文件减肥技巧
·用Director控制动画GIF
·Director怎样制作自定义光标
·利用director.ini调试应用程序
·director使用mui xtra创建对话框
·director应用技巧
·Director中控制声音音量的几种方法
·DIRECTOR去背技法步步高
·Director 3D 基础(之七)
·Director 3D 基础(之六)
·Director 3D 基础(之五)
·Director 3D 基础(之四)
·Director 3D 基础(之三)
·Director 3D 基础(之二)
·Director 3D 基础(之一)
·Director制作《七巧板》游戏
·【Director教程】lists的使用一则
·【Director教程】属性列表应用一则
·【Director教程】创建随机列表
·【Director教程】解析文本和列表
Director 3D 基础(之七)
日期:2006年10月15日 作者: 查看:[大字体 中字体 小字体]
移动模型与摄像机

在Director 8.5中,不止一种方法去移动模型与摄像机。模型与摄像机可以相对于它们自己、其它模型或整个身处的3D世界而移动。另外,这些物体可以利用两种不同的Lingo程序来移动。无论你选择哪种方法,都会有明显的效果于你的3D演员的外观。

样版影片

本文的样版影片是Moving_model_and_camera.dir。你可以打开来查看它的程序,如果你喜欢的话,你可以改动它。(点击这里下载相关附件)

看scene 1

影片中的第一个scene说明了如何利用简单的Lingo命令rotate和translate来移动模型和摄像机。
舞台上包含了一个3D精灵――一个含有四个字母的模型。还有一些精灵是显示模型与摄像机的当前位置与旋转角度的文本字段。当按下舞台左下角的说明文字中说明的键时,你可以移动和旋转摄像机和模型。(请注意,如果要旋转是要按住换档键的)
查看名叫“Interface 1”的脚本演员,它是控制3D模型和摄像机的运动的。这个脚本一开始就检查Shift键是否按住了,以决定是用rotate还是translate命令。

member(‘‘3d‘‘).model(‘‘A‘‘).rotate(-1, 0, 0, #world)
当使用rotate命令,事件会在一个键每次按下时轻微改变一个模型的方位角度。当使用translate命令,事件会在一个键每次按下时轻微改变一个模型的位置。每次键按下会在一个轴上改变模型的位置与旋转角度的一个单元值。你可以在舞台上的位置与旋转字段中看到每个轴上的数值是如何依赖于哪个键按下而改变的。
注意到rotate和translate命令包括了一个“#world”参数。这告诉Lingo模型的运动是相对于整个3D世界的,而不是相对于3D世界中的其它物体的。
影片提供了一个代替程序,Alternate Interface,可以代替“Interface 1”程序。这个代替程序履行修改位置与旋转属性的数值的同样的任务,却不是使用rotate和translate命令。

看scene 2

影片中的第二个scene说明了如何移动模型和摄像机相对于其它物体。在这个scene的3D世界中包括了三个模型而不是一个。每个有四个字母的模型都是大模型大写字母“P”的子对象。由于这种关系,小模型们可以相对于父对象大写字母“P”而运动,就象相对于3D世界或相对于它们自身一样。
现在的舞台看起来和scene1一样,只是多了三个按钮,是用来允许你选择小模型们相对于它们自己、它们的父对象或整个3D世界而运动。你可以通过选择标记是“Self”的按钮来选择小模型们相对于它们自己运动,选择标记是“Parent”的按钮来选择小模型们相对于它们的父对象运动,选择标记是“World”的按钮来选择小模型们相对于整个3D世界运动。
名叫“selfBeh、parentBeh和worldBeh”的脚本的作用是更新记录“#self , #parent , 或 #world”的全局变量gRelativeTo。举个例子:
on mouseUp
gRelativeTo = #self
end
然后,全局变量gRelativeTo被用来传送相对参数给在scene2Interface脚本中的translate and rotate命令。
member(‘‘3d2‘‘).model(‘‘A2‘‘).rotate(-1, 0, 0, gRelativeTo)
试验各种不同的相对运动并观察它们可见的不同效果。(记住要按Shift键呀!:)

(出处:http://www.xmsc.com.cn

关于我们 | 帮助(?) | 版权声明 | 友情连接 
Copyright 2005-2005 xmsc.com.cn All Rights Reserved.
Powered by:mesky