virtools中文教程内容摘要:
ing Blocks」面版中打开「 Cameras/Movement」资料夹。 14 – 愛迪斯科技股份有限公司 AXIS 3D Technology, Inc. 将「行 为模块」 CameraOrbit拖放到 Schematic view里,摆在「行为模块」 SetAsActiveCamera之右 ,如图所示。 在 Schematic view里将鼠标移到 CameraOrbit「行为模块」方块上按下右键,这时会出现一个选单,然后在选单里选择 Edit parameters。 这个动作将会开启一个对话框,这个对话框能让您指定该camera所要锁定的目标。 点选按键( Eyedropper button) ,并从 3D Layout视角中选取角色 Scientist。 点取 OK。 步骤 3:设计一套「行为模块流程」( Designing a behavior flowchart.) 现在,我们的 New Camera已经拥有两个「行为模块」了。 注意:在 Virtools里所有的「行为模式」实时处理与绘制,每执行一个 Frame(画格)都依循下列的执行程序运作: 处理「行为模块」 运算绘制场景 处理「行为模块」 运算绘制场景 依此类推 在 Virtools中,一个基本处理周期( basic cycle)(包括一次的『行为模块』处理与场景算图)被称为一个 Frame(画格 )。 举例来说, frame rate(画格更新率)为 30 fps代表了上述的基本处理周期在一秒钟里需要被连续执行 30次。 在这一课里,我们将会以 Frame的概念来描述所有的「行为模块」是如何地被连续组合起来的。 注意: Frame这个字在 Virtools也指在 3D环境里被用来标示一个位置或是有方向性的虚拟对象,小心别混淆了(其实在其它的软件里如 3DMAX,这样的对象通常被叫做 Dummy)。 以下就是我们所希望在 camera上所执行之「行为模块」的顺序: 1. 激活演出场景。 2. 切换到 New Camera(执行 SetAsActiveCamera)。 15 – 愛迪斯科技股份有限公司 AXIS 3D Technology, Inc. 3. 运算绘制场景。 4. 让 New Camera锁定在角色(执行 CameraOrbit)。 5. 运算绘制场景( Render the scene)。 6. 回到第 3步(以便在每一个新的 Frame绘制之前都能重新执行 CameraOrbit)。 步骤 4:观察所设定的「行为模块」如何运作( Understanding how behaviors basically work) 在学习如何创造「行为模块流程」之前,我们得花点时间搞清楚「行为模块」是如何运作的。 基本上,所谓的「行为模块」就是一些执行程序中的组件,当其被触发激 活时,就会展开特定的作业与效果。 这就是它们「输入端」( inputs)(位于每个『行为模块』的左侧) 的作用:「输入端」( inputs)接收以事件为基础的讯号 ( eventbased signals) ,并负责触发该「行为模块」激活之后一连串的处理程序。 某些「行为模块」或许需要设定一些参数以执行它的工作。 这些参数能够藉由一群称为「参数输入插脚」( input parameter pins)的小点来输入与控制,您可以在「行为模块」方块的上方找到这些「参数输入插脚」。 一旦某个「行为模块」完成它所负责的任务,它将 会传送一些事件基础讯号出去,透过位于盒子右方的「输出端」( outputs),然后接着触发连结到这些「输出端」的其它「行为模块」,继续执行它们的任务。 一个「行为模块」的执行结果或许还会输出一些「计算参数」 ( puting parameters) ,而这些「计算参数」则是透过盒子下方一些称为「参数输出插脚」( output parameter pins)传送出去的。 步骤 5:在 Schematic view 里新增「行为模块流程」( Creating the behavior flowchart in the Schematic view) 现在,让我们试试看以一些基本的规则来建立属于自己的「行为模块」流程。 我们可以看到在最左边的箭头状的 Start尖端 与「行为模块」 SetAsActiveCamera之间的连结,这连结所代表的意义是:当您按下 Play 按键开始播放您的作品时,「行为模块」 SetAsActiveCamera将第一个被触发激活。 一旦该「行为模块」的工作完成(切换到 New Camera), SetAsActiveCamera将藉由它盒子上的 16 – 愛迪斯科技股份有限公司 AXIS 3D Technology, Inc. 「输出端」送出一个讯号。 若是我们希望接下来要执行 CameraOrbit,我们得在 SetAsActiveCamera的「输出端」与 CameraOrbit的「输入端」之间建立起连结才行。 点选 Schematic view工具列中的 Link选项。 在 SetAsActiveCamera里选择 output。 在 CameraOrbit里选择 input。 到这里,我们已经建立起下列的简单「行为模块」流程了: 1. 激活演出场景。 2. 执行 SetAsActiveCamera。 3. 运算绘制场景。 4. 执行 CameraOrbit。 注意我们刚刚所建立的连结上头显现的指示 0/0:这 代表该连结所会延续( delay) 的时间。 它告诉我们从 SetAsActiveCamera的「输出端」传送到 CameraOrbit的「输入端」需要花费 0个 Frame的时间。 换句话说, SetAsActiveCamera与 CameraOrbit两个动作在以 Frame为执行单位里已经被串成一个执行程序。 按下状态区里的 Play按钮,以激活演出场景。 如您所见,现在 New Camera变成了 active camera( Virtools以此 camera为最起始的视点,算出整个场景),目前此 camera正锁定在角色上。 要是您使用数字键盘上的方向键让该角色在场景里四处移动一下,您会发现 New Camera并没有跟着角色而动。 别担心,看看我们刚建立的流程:原因出在于我们只要求该 camera在开始演出场景时锁定角色一次而已。 按 「 Restore Initial Condition」 (回复初始条件)按钮 停止演出。 按下状态区里的 Play 按键,再次激活演出场景。 正如您所看到的,现在 camera再一次地对准了目标角色。 当然啦,要是您现在将角色移开的话,camera是还不会跟着走的。 按 「 Restore Initial Condition」 (回复初始条件)按钮 停止演出。 步骤 6:在「 CameraOrbit」里加入一个循环 ( Creating a feedback loop on the behavior CameraOrbit) 17 – 愛迪斯科技股份有限公司 AXIS 3D Technology, Inc. 要想让 camera持续锁定追踪该角色,我们必须在每个 frame运算前都执行一次 CameraOrbit才行。 要达到这个效果,我们得在它的「输出端」和「输入端」间建立起一道延续值为 1个 Frame的连结。 如此,「行为模块」 CameraOrbit将会在每个新的 Frame开始执行时,重复执 行一次。 在 Schematic view工具列里点选 Link指令。 先 在 CameraOrbit里选择 output。 再 将鼠标移向右边,并轻击一下以创造一个连结控制点 ( link control point)。 如下页所示般,轻击鼠标,继续创造另外两个连结控制点。 按下 CameraOrbit的 「输入端」。 按下 Restore Initial Condition 按钮以停止演出播放。 现在,按下 Status Bar上的 Play 按钮,重新播放一次演出场景。 我们发现 camera已经 会追踪锁定移动中的角色了,因为「行为模块」 CameraOrbit在每个 frame绘制之前都会被重新执行一次。 按下 Schematic工具列上的 Trace按钮以激活 Trace模式,并实时地观察执行中的「行为模块」:您会看到以红色的高亮度显示着的「行为模块」 CameraOrbit正一次又一次不断地执行着。 恭喜啦。 您已经在 Schematic view里创作了自己的第一个「行为模块」流程了。 在下一课中,我们将让您知道,当您能将 Schematic view运用自如的时候, Virtools能够展示多么强大的威力。 记得要储存您辛苦完成的作品哦,因为您将会于下一课里在上头继续增添新的东西。 只要用第 2课里所学到的 Virtools Player就可以随时观赏您的得意作品了。 LESSON 4 障碍物回避的处理 18 – 愛迪斯科技股份有限公司 AXIS 3D Technology, Inc. 这一课里,我们将教您如何为您的角色附加上基本的障碍物回避功能,使用到的是「碰撞侦测行为模块」与「属性设定」。 在 Virtools里要处理障碍物回避的方式,其中之一就是利用 Virtools所提供的「碰撞总管」( Collision Manager),「碰撞总管」会自动替您计算所给定的 3D对象间会产生碰撞与否 ,是个很方便的工具。 要达到这个效果,我们需赋予角色叫做 Prevent Collision的「行为模块」。 一旦激活,这个「行为模块」会询问「碰撞总管」相关的信息,以决定该角色会跟哪些 3D对象产生碰撞行为。 若有任何碰撞被侦测到,这个「行为模块」将会让角色稍稍后退,以避免直接撞击。 要执行碰撞侦测测试,您的「碰撞总管」得要有一张会发生碰撞的障碍物清单才行。 我们必须指定出场景中会发生碰撞的 3D对象,并将其列入障碍物清单里头。 要这样做,我们得将这些对象一一挑出来,并且在个别对象上头贴上「障碍物」( obstacle) 的属性。 所谓的属性( Attributes),其实还是一些特定的参数,您可以将它们贴到场景里的个别组件上,用来给它们一些指定的特性。 在这一课里,我们只会用到「障碍物」( obstacle)属性(可被碰撞侦测引擎所解读),其它还有许多不同的属性能够被贴在组件上头(像是角色的『生命值』、物体的『重量』等等),我们有机会再做介绍。 步骤 1:将计算机设定为潜在障碍物属性( Declaring the puter as a potential obstacle using attributes.) 轻击 Level Manager卷标。 从 Global资料夹里打开 3D Objects子资料夹。 从 3D Layout工具列上点取 Select tool 图标。 从 3D Layout view中点取计算机,以选择它。 一个「外切框」( bounding box)会出现在 3D Layout中,这表示该桌子已经成功地被选取了。 计算机( New puter) 同时也在 Level Manager里以高亮度显示,就如一般被选取的组件一样。 19 – 愛迪斯科技股份有限公司 AXIS 3D Technology, Inc. 在 Level Manager里的 New puter上按下滑属右键, 并从选单里选取 Add Attributes。 这个动作开启了 Add Attribute对话盒。 「碰撞总管」 Collision Manager上单击鼠标,以开启对应的属性目录。 选取 Fixed Obstacle。 点取 Add Selected。 点取 Close。 您刚已经成功地将 Fixed Obstacle的属性给附加在计算机上了。 这台计算机目前已经被「碰撞侦测引擎」登录为一个潜在的障碍物了。 步骤 2:应用 Prevent Collision( Applying the Prevent Collision.) 在开始将该「行为模块」应用到角色上面之前,先按下 status bar上的 Play 按钮,激活场景演出。 以方向键让角色在场景中四处游走一番,然后让角色停在书桌前面(注意不要让角色和书桌接触)。 再一次按下 Play 按钮,暂停演出的进行(注意不要按到 Restore Initial Condition 按钮,因为您只是想暂停,而不是想倒带。 )。 选取 Building Blocks。 开启 Collisions资料夹。 开启 3D Entity资料夹。 将「行 为模块」 PreventCollision拖曳到角色上。 在重新测试场景之前,让我们从 Schematic view里先检视一遍角色所有行为模块的 script吧。 选取 Schematic卷标以开始检视 scripts。 使用垂直滚动条来检视角色的 script。 顺利的话,您将会看到。virtools中文教程
相关推荐
“ darwin10″。 关闭 VMware,重新打开,点击“ Options” ,双击 General,再看 Version:那里,是不是多出了 Mac OS X Server 这一项。 原来是没有的 ~好了,现在就可以正常安装雪豹了。 第三阶段,引导: 这个阶段最重要的是引导。 我提供了 两个引导盘 ,一个 是 Rebel ,另 一个是。 安装的时候,两个任选一个
500万元≤单项合同金额< 1000万元,每个合同计 2 分; c)单项合同金额≥ 1000万元,每个合同计 3 分; 售后服务(满分 5 分): a)制造商在浙江省内设有售后服务机构的 的人员、规模、服务能力的横向比较、综合打分 ,最高的 3 分。 b)质保期(满分 2 分):在满足招标文件要求的情况下,质保期每超过 6 个月加 1 分,不足 6 个月不计分;满分 2 分。 施工组织设计
构的 If 语句,最终能够使用计算机语 言来解决实际问题。 【教学过程】 一、情境引入 问题提出:根据数学公式( x=0 时, y=x; x0 时, y= x)编写一个程序 老师引入:通过对这个数学公式的分析请同学们思考用选择结构中的哪个语句来解决 ,然后带着这个问题进入本章内容的学习,课时结束前在回过头来解决 选择结构的概念了解,并且引出本章重点掌握的内容 二、了解选择结构的各个环节
18 系统的运行 ........................................ 19 系统的维护 ........................................ 29 第八章 开发总结与对管理信息系统的展望 ................. 30 开发总结 ......................................... 31