查看: 3040|回复: 8
打印 上一主题 下一主题

Virtools中的Building Blocks学习入门篇

[复制链接]

5552

主题

2

听众

8万

积分

首席设计师

Rank: 8Rank: 8

纳金币
-1
精华
11

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

跳转到指定楼层
楼主
发表于 2011-10-20 16:42:00 |只看该作者 |倒序浏览

          我提供一些撰写Building Blocks的经验,对一个新手来说,如何在短时间内了解并运用行为模组:Building Blocks (以下简称BB)。
         



          Virtools对每一个使用者的第一个障碍,不是在使用者介面,也不是在BB如何使用,而是在於这些BB的位置,所以对於初学者来说,常常发生的就是找不到BB,找到了也不知如何下手,因而花了不少时间。在这里我提供一些方法给各位参考。
         
            
         
          BB的位置
         

          在目前的版本中,Virtools Dev 2.1共分为几大类,可以先从每一类的名称去 解Virtools所提供的功能,每一类中常用的、基本的功能都会放在Basic中,所以对於不熟悉的BB建议先找Baisc中的BB,然后才去其他的项目中寻找,这样做对於初学者来说,比较容易也比较快上手。以下列表概述每一分类:
         

          -----------------------
         

          3D Transformations
         

          -----------------------
         

          处理3D物件的基本属性,包含座标位置(position)、尺寸(scale)与方位角(orientation)。其他的功能包括3D物件的动态控制(Animation)、移动限制(Constraint)、位移控制(Movement)等,比较特别的是Curve与Nodal Path也是放在这个位置,并没有独立出来。
         

          -----------------------
         

          Cameras
         

          -----------------------
         

          这个比较简单,从字面上就可以知道意义。基本的摄影机属性可以从"Basic"项目中找到,只要是牵涉到物件位移的都会放在"Movement"中,"FX"指的是特殊效果。
         

          -----------------------
         

          Characters
         

          -----------------------
         

          这是特别独立出来的类别,处理的功能类似" 3D Transformations",所以内部的项目几乎一样,除了"IK"之外。
         

          -----------------------
         

          Collisions
         

          -----------------------
         

          所有要处理碰撞的功能都放在这里,不管是 3D Object或是Character,而且设定碰撞的方式不只一种。在Virtools中有些BB的功能,与直接手动增加物件属性的方式效果是一样的,例如"Floor > Declare Floor"或是"Obstacle > Declare Obstacles",会针对所作用的物件增加"Floor"或是" Obstacle"的属性。
         

          -----------------------
         

          Controllers
         

          -----------------------
         

          处理一般我们较常使用的 Input Device的功能,如摇杆、滑鼠、键盘与MIDI。
         

          -----------------------
         

          Grids
         

          -----------------------
         

          处理Virtools中Grid物件的功能。Grid为Virtools中的物件之一,主要功能可以做碰撞,可以侦测目前Object的所在区域。
         

          -----------------------
         

          Interface
         

          -----------------------
         

          处理2D使用者界面的功能,例如按钮功能、字型(英文)、文字显示、动态的Loading Bar。
         

          -----------------------
         

          Lights
         

          -----------------------
         

          这个与Camera相同,从字面上就可以知道意义。同样的,控制灯光基本的功能都放在"Basic"中,关於特殊效果的部分如光晕、Lightmap都放在"FX"里面。
         

          -----------------------
         

          Logics
         

          -----------------------
         

          大部分属於逻辑运算处理的、比较抽象的物件,都放在这个位置。如决定流程走向的"Streaming",处理回圈的"Loop",可处理不同型别之间运算的"Caculator",负责做判断的"Test"…等等,是属於逻辑运算处理的部分。其他的如"Array"、"Attribute"、"Group"、"Message"与"String",属於比较抽象的物件,也是放在这个位置。
         

          -----------------------
         

          Materials-Textures
         

          -----------------------
         

          处理材质、贴图的功能。
         

          -----------------------
         

          Narratives
         

          -----------------------
         

          处理「整个」档案中物件的管理,包含Config:可以从Window的Registry写进或读取一些设定。Object Management:Object的建立、载入、删除…,其中Object可以是3D模型、声音或是贴图。Scene Management:"场景物件"的管理,决定显示哪一个场景的内容。Script Management:控制script的执行与否。
         

          -----------------------
         

          Optimizations
         

          -----------------------
         

          处理场景、场景中的物件最佳化的功能与场景执行中的一些统计数值,如Frame Rate、处理的总面数、著色所花费的时间…等,为了能够调整出更顺畅、更好的画质。
         

          -----------------------
         

          Particles
         

          -----------------------
         

          很单纯,就是指分子运动系统的功能。
         

          -----------------------
         

          Sounds
         

          -----------------------
         

          处理音效、音乐的功能,调整基本的声音属性可以在"Basic"中找到,另外也支援3D Sound。
         

          -----------------------
         

          Visuals
         

          -----------------------
         

          处理一些视觉效果的功能,属於特殊效果的部分如阴影、镜射、Motion Blur…等,放在"Shadow"与"FX"中;比较特别的是2D的物件(2D Framem与2D Sprite)也放在这个位置的"2D"中;物件的显示与隐藏处理则放在"Show-Hide"中。
         

          -----------------------
         

          Web
         

          -----------------------
         

          处理与Web相关的功能,较常用的应该是"Navigation > Go To Web Page",要记得的是,这个BB只要执行一次就要停下来;另一个是"Scripting > Browser Script",可以在Virtools中写javascript或是VBScript。
         

          -----------------------
         

          World Environments
         

          -----------------------
         

          处理场景的背景图片(Cube Map)与背景颜色。
         

          -----------------------
         
            
         
          需求的功能分析
         
            
         
          首先我们要对於想作的功能,做完整的分析,而且要有具体的想法,不能太过於模糊,好像A方法也可以,B方法也可行,这对於我们在往后撰写BB的时候,反是一种阻碍。确定一种适当可行的方法,并且尽可能地将所有的变数量化,定义出变数之间的关系,这是我们首先要做的,也是在企划阶段就应该完成的工作。
         
            
         
          绘制流程图
         
            
         
          在这个步骤,主要是事先确认我们的逻辑的可行性,有任何错误的地方,可以先在这个步骤中发现,避免在BB撰写的过程中才发现错误,而必须花更多时间修改,反而更浪费时间。当整个流程图绘制完成后,就可以很清楚地了解执行流程。
         
            
         
          可运用的BB
         
            
         
          在流程图完成后,我们可以依照流程图的每一个步骤,寻找哪些BB可以满足我们的 要,再将这些BB放到Schematic中编辑。Virtools已经提供大部分我们所 要的BB,包含众多的逻辑运算部分,所以这些BB已经可以应付大部分的状况。
         
            
         
          实作
         
            
         
          如果我们所要作的功能,是由很多BB所组成,在这种情况下,建议分成几个小步骤,确定必须先开始执行的BB(可能只有一个,有可能是一个以上),先拖拉至Schematic中编辑,并设定好相关的参数,接著可以先行执行,检查是否有任何错误讯息,如果没有任何错误讯息,输出的结果也是我们所 的,就可以再继续加入其他的BB,再重复以上的过程,直到整个功能完成。建议不要整个功能的参数都设定完,并做完流程的连结后,才去检查执行结果,除非整个流程都没有错误,除非是你很有把握的功能,不然你可能会多花一些时间在Debug上,因为太多的BB与连结线会让我们一时间无法得知是哪里出了状况。另外,在检查执行的过程中,建议把「Trace」功能打开,执行中的行为模组,或是连结线,都会显示红色的线框,或是红色的线条,如此我们可以很清楚地知道,目前流程执行到哪 ,如果整个流程执行太快,可以在「Play」键上按滑鼠右键,在随后出现的对话框中,限制执行的frame rate,再重新开始执行,会比较容易观察。
         
分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏0 支持支持0 反对反对0
回复

使用道具 举报

1023

主题

3

听众

359

积分

设计实习生

Rank: 2

纳金币
335582
精华
0

最佳新人

沙发
发表于 2012-2-7 23:18:31 |只看该作者
很有心,部分已收录自用,谢谢
回复

使用道具 举报

1023

主题

3

听众

359

积分

设计实习生

Rank: 2

纳金币
335582
精华
0

最佳新人

板凳
发表于 2012-3-14 23:29:32 |只看该作者
不错不错,收藏了
回复

使用道具 举报

1023

主题

3

听众

359

积分

设计实习生

Rank: 2

纳金币
335582
精华
0

最佳新人

地板
发表于 2012-5-15 23:25:45 |只看该作者
好铁多多发,感激分享
回复

使用道具 举报

462

主题

1

听众

31万

积分

首席设计师

Rank: 8Rank: 8

纳金币
2
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

5#
发表于 2012-5-21 23:21:42 |只看该作者
都闪开,介个帖子,偶来顶
回复

使用道具 举报

1023

主题

3

听众

359

积分

设计实习生

Rank: 2

纳金币
335582
精华
0

最佳新人

6#
发表于 2012-6-30 23:25:52 |只看该作者
很经典,很实用,学习了!
回复

使用道具 举报

462

主题

1

听众

31万

积分

首席设计师

Rank: 8Rank: 8

纳金币
2
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

7#
发表于 2012-7-2 23:19:58 |只看该作者
很有心,部分已收录自用,谢谢
回复

使用道具 举报

462

主题

1

听众

31万

积分

首席设计师

Rank: 8Rank: 8

纳金币
2
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

8#
发表于 2012-7-29 23:27:47 |只看该作者
佩服,好多阿 ,哈哈
回复

使用道具 举报

462

主题

1

听众

31万

积分

首席设计师

Rank: 8Rank: 8

纳金币
2
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

9#
发表于 2013-3-18 23:28:04 |只看该作者
好`我顶``顶顶
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

手机版|纳金网 ( 闽ICP备2021016425号-2/3

GMT+8, 2024-11-13 17:21 , Processed in 0.100721 second(s), 29 queries .

Powered by Discuz!-创意设计 X2.5

© 2008-2019 Narkii Inc.

回顶部