Multigencreator基础教程.docx
《Multigencreator基础教程.docx》由会员分享,可在线阅读,更多相关《Multigencreator基础教程.docx(39页珍藏版)》请在冰豆网上搜索。
Multigencreator基础教程
MultigenCreator基础教程
第一章视景仿真简介1
第二章开始使用Creator2
第三章建造第一个实时模型14
第四章建造对象层次树26
第五章光照和阴影28
第六章材质32
第七章将纹理应用到Farmhouse35
第一章视景仿真简介
1.1视景仿真的应用领域
MPI的视景仿真建模工具是世界上领先的实时三维数据库生成系统,它可以用来对战场仿真、娱乐、城市仿真、训练模拟器和计算可视化等领域的视景数据库进行产生、编辑和查看。
它区别于CAD等其它建模软件,主要考虑在满足实时性的前提下如何生成面向实时仿真的、逼真性好的大面积场景。
其强大的建模功能可为众多的不同类型的图像发生器提供建模工具;它的诸如细节等级、多边形筛选、逻辑筛选、绘图优先级及二元分离面等高级实时功能使得它提出的OpenFlight格式在实时三维视景仿真领域成为最流行的图像生成格式,并成为视景仿真领域事实上的行业标准。
它的自动化的地形和三维人文景观生成器、道路生成器等众多强有力的集成选项增强了其特性和功能。
1.2视景仿真的特点:
三维、沉浸、交互、实时
三维是视景仿真与二维动画的最根本区别,通过立体显示来增强真实感。
沉浸感是指观众在浏览场景时能产生身临其境的感觉,这主要是由环绕的屏幕和立体声来形成。
交互是指观众可以通过鼠标或控制杆来对场景中的物体进行控制或者切换自己的视角在场景中漫游。
实时是指对场景中物体的控制命令可以即时得到响应。
1.3视景仿真中的几个概念
1TheImageGenerator(IG)-图像生成器
顾名思义,就是指生成图像的计算机,机器配置由仿真需求来决定。
2TheVisualDatabase—可视数据库(模型)
用于描述when、howandwhat场景,场景中的模型,例如地形、房子、车辆等等都需要建模。
模型的格式是Openflight格式(双精度doubleprecision)。
3TheModelingpackage-建模工具
是基于文本的编辑器,建模过程中模型的坐标和自由度都可以通过文本输入来定制。
1.3.4TheRealtimeApplicationProgram—模型驱动
由vega来实现。
1.3.5VisualRealism—可视的真实性
是一个相对概念,可由视景仿真目的决定的,如飞机(机械师—飞行前检查;塔台导航员—指挥飞机;警察—指挥地面交通)。
1.4对CAD和电影数据模型的利用
CAD:
模型精确;机械构造完整;工程标准;静态图像。
CinematicData:
娱乐、艺术性的造型;非常细节的模型。
首先是普通的;然后是非常困难的;要做大量手工劳动,除非使用转换程序;通常再建造比转化更容易。
第二章开始使用Creator
2.1StartingCreator—启动Creator
NT:
①Start/Programs/MultiGenCreator/MultiGenCreator;
②mgfltx.exe(\MultiGen\Creator)→CreateShortcut(产生快捷键)→拖放在桌面
2.2ExitingCreator—退出
①File/Exit或Ctrl+Q
②File/点击X
KeyboardShortcuts快捷键:
可在Info/keyboardshortcuts中更改
2.3OpeningaFile—打开文件File/Open(New);可同时打开多个文件,Thumbnailimages(*.icn)是由View/snapshot产生的;它用于在打开文件前的预览。
2.4Savingyourwork-保存
Save
SaveAs
WriteSelect:
保存当前选择的模型一部分,存成一个新模型。
Close
以OpenFlight(.flt)格式保存;同时保存相关的Color、Material、texture、attributeinformation.
AutosavingFiles:
Info/pregerences/flight自动保存文件的设置。
2.5WindowTour—界面的设置
正常情况下只是一个Windows(GraphicsView);通常使用时要使用两个Windows(graphicsView和HierarchyView)—拖底边框(sash);最多可四个windows(3个graphicsView和一个HierarchyView)-分别拖两个右边框。
如下图:
2.6MovingAroundinYour3Dworld—坐标可定义
Cartesian(笛卡儿)coordinate:
把所选部分置于显示中心:
1FitonPick—只适于graphicsView
2FitonSelect—(graphicsView/HierarchyView)根据哪个窗口被激活。
3ResetView
4FitonGrid—显示整个网络
可以设置缺省的eyepoint(Info/Preferences/State/Graphic/ViewingDefaults,View/ViewingVolume)。
如下图
2.7SelectingGeometry)—选中几何体
首先确定所选模式(上面的下拉菜单或侧面的按钮)然后在graphicsView中用mouse选择;也可在HierarchyView中点击Hierarchy实现。
为了选择多个使用shift左键用fence选择_对graphicsView或HierarchyView均有效。
如下图:
2.8CreateyourFirstModel—建模
1Cleartheworkspace
产生新文件:
为新文件命名(File/save);显示HierarchyView。
2Turnonthegrid
打开Viewpanel并置于一旁;按下grid按钮
3changethegridcolor
Info/preferences/color
4SetaParent
在HierarchyView中,选中gz,Attributes/Rename选中改名后的gz(例如house),然后敲击”parent”—这两步都为了增加模型的可读性。
5UseModetocontrolwhatiscreated—建立“object”
预先定义:
绿色的Object这一层可以不需要,Face直接隶属于Group.但若是非常复杂物体,建议还可建立Object层,用于增加模型的可读性和可重用性。
通过两种方式的任一种选中Object模式即可;若在gz下再产生新的Object,则选中并按Parent,然后选中Object模式。
6Createaface(Polygon)—产生面
左侧FaceTools/Circle
所有建模工具在敲击OK前,可以独立选择并改变点的位置。
7Createa3DObject—建立三维物体GeometryTools/Peak
在建立geometry,所有被选中的Face都将产生该几何体,缺省情况下,几何体向外延伸。
可以使几何体向一个方向延伸,此时只需选中ALLSelectedItemssharesameDirection
为了减少无用的Face(永远了可见的面),可不选keepwallBotton
8RaiseaWall
GeometryTools/wall(选中圆锥的所有的面)
9Createasphere
Geometry/Sphere
NumberofSubdivision缺省值为3,值小则多边形数量少,但球不圆;值大则多边形多,但球精确。
Sphere工具要少用,它会产生大量多边形。
10MovetheSphere
选中Sphere这个物体;Maneuver/Translate;选ToPoint时,一定把该物体置于正下方,用中键敲击该物体的中心。
若不使用middleclick则同样可以把Sphere移至Object的中心:
先选Vertex;选中该物体顶点,coordiuatePanel中查出该点坐标(x,y,y);选择xy,xz或yz工作面并在offset中把x,y,z中的一个值输入(即把工作面置于该物体顶点);Maneuver/translate,一般情况下的移动必须在工作面上进行,即ToPoint应在工作面上。
2.9Workingwithcolor—使用颜色
1OpeningtheColorPalette
点击上方的ColorPalette
2ApplyingColors
CurrentPrimary是用于几何体的颜色,CurrentAlternate用于Lightpoints和textureeffects,选中Face或Object;Properties/InsertColor
3EditingColors
点击上方的ColorPalette;双击ColorChip
4SavingandLoadingtheColorPalette
InColorPalette
File/SavePalette
File/LoadPalette
5RestoringtheColorPalette——恢复缺省设置
InColorPalette:
Edit/MakeHLSMap
每个OpenFlight模型保存时,同时保存自己的ColorPalette和TexturePalette.可以自己定制ColorPalette和TexturePalette,ColorPalette的文件名为*.Color
2.10AdmireYourWork—欣赏作品
同时hold鼠标的middle和right键和Ctrl+点击上方的Y或P或R的指针框
第三章建造第一个实时模型
1建模时要考虑多边形预算,你建的所有多边形将在实时应用中被驱动;
2只在需要时使用细节,使用LOD建立细节部分;
3仔细考虑数据库的结构,一个好的数据库结构不仅增加可重用性,而且增加
实时性能;
4了解你的图像生成系统的优势和劣势;
5建模时,应由下向上,由内向外,以减少多边形的选择和排序;
6消除微小的特征,例如只有两个象素的模型部分;
7消除“T”型顶点;
8通过结合
9对z-buffered系统,限制使用小面(subface);
10当可能时,使用纹理代替细节。
3.2AClassicFarmhouse
1DefineYourDatabaseParameters
Step1:
产生新文件farm.flt;
Step2:
同时显示GraphicsView和HierarchyView;
Step3:
设置数据库单元为feet;Info/Preferences/Flight
Step4:
打开ViewPanel并置于侧面;
Step5:
在ViewPanel上设置Dimension为1.0;
Step6:
在HierarchyView中,把GZ更名为House,并把它定义为Parent;
2FromtheGroundup
Step1:
选择Object模式;
Step2:
通过(-15,-13)和(16,10)点建一矩形;在CoordinatePanel中,可以精确控制矩形的两点。
Step3:
把矩形抬起1.3,不选KeepBottom;
3CheckYourHierarchy
Step1:
把House下面的结点更名为Foundation(只有前7位有效);
Step2:
再次把House设为Parent;
Step3:
产生Group结点,并把它改名为walls;
4PreparefortheWalls
Step1:
把Walls设为Parent;
Step2:
为了在Foundation上建立Wall,必须把Thetrackingplane置于Foundation的操作面上,只有这样才能确定坐标;
方法1:
在ViewPanel上点击FAC,然后点击Foundation的顶面上的任一点。
方法2:
在ViewPanel上点击CTR/VTX,然后用middlebutton点击Foundation顶面上的任一边或顶点,再点击OK.
FAC—只移动ThetrackingPanel,无法改变坐标原点。
CTR—不仅移动ThetrackingPanel,而且可控制坐标原点,Leftbutton只移动坐标原点,不移动工作面;middlebutton二者都移动。
VTX-与CTR类似,只是在移动工作面时,需要1至3个顶点;而CTR只需一个顶点。
Step3:
改变CurrentPrimary的颜色。
5LaytheFloorplaneDownandRaisethewalls
Step1:
设置Y=0P=90r=0,为了方便设置视点;
Step2:
Face/Polygon设置坐标(0,4)、(14,4)、(14,9)、(31,9)、(31,23)、(0,23)。
该坐标点设置是已Foundation在前顶点为(0,0)而定的。
并非是按数据库的坐标系,所以不能使用CoordinatePanel来精确定位各个坐标点,只能靠人工数格子。
Step3:
使用Geometry/wall提升至12feet,不要选KeepBottom.
6CreatingaGable
Step1:
使房子的右侧可视;
Step2:
选择Face模式,并选中房子的右侧面。
Step3:
Vertex/ConstructAverageVertex_用于建模的参考点,当完成建模后,要把它删除(Edit/ClearConstruction)
Step4:
把thetrackingplane置于该面上,并把坐标系原点置于参考点上,FAC→CTR
Step5:
Face/Polygon;使用middlebutton用于精确地选择已存在的Vertex
Step6:
在另一侧复制该面,选择中该面copy/paste.
Step7:
把被复制地面反转过来,ModFace/ReverseFace
Step8:
在房子地前测也类似建起房脊。
7RaiseGablesforHeight
Step1:
设置顶点模式Mode/VertexMode;
Step2:
在ViewPanel中,选中XY工作面并设Offset为zero。
Step3:
选中三个房脊顶点;shift+middlebutton。
Step4:
提升三个房脊顶点:
ModGeom/Project。
Step5:
在ViewPanel中令offset为0.0_offset值更改后,当该工作面使用完成后,需要把它设为0.0
8DeleteaHiddenFace
房子的平顶面将不可见,在Face模式下,选中它并把它删除。
9MaketheLongRoofline
Step1:
设House为Parent并且建立“Roof”Group结点,并把Roof设为Parent;
Step2:
在房子右侧面设置thetrackingPanel并把坐标原点置于前几步做的参考点上,FAC/CTR。
Step3:
建立两个多边形(屋顶):
Face/Polygon
Step4:
把多边形拉伸为屋顶:
Geometry/wall,此时选中keepBottom;middle-click房子另一侧顶点(或Height=-31.00)。
10Createtheoverhang
产生屋顶地两侧伸出端
Step1:
把工作面置于屋顶的一侧面上:
FAC
Step2:
选中“Roof”Group
Step3:
Maneuver/Scale/选中X方向并令X方向的放大倍数为1.055
⑾CreatetheFrontRoofCross—Section
Step1:
把工作面置于前面,做出房脊的两个多边形即FAC→Fac/Polygon;
Step2:
选中两个房脊多边形建出屋脊即Geometry/wall:
1.0foot,不选中KeepBottom。
Step3:
选中整个刚建的屋檐,然后拉伸为屋顶即Maneuver/scale_要使用middle-click把scale的中心点移至屋檐的最前端;
Step4:
在Maneuver/scale中选中Y轴方向并拉伸屋顶超过房子后墙。
⑿SlicetoFit
Step1:
把工作面置于房子地前侧房脊即FAC;
Step2:
Maneuver/scale_此时将把房脊用工作面切成两部分;
Step3:
用鼠标在键选中伸出房子部分地屋脊并删除。
⒀RemoveConstructionPoints
Step1:
设置为Vertex模式;
Step2:
选中参考点;
Step3:
Edit/ClearConstruction_消除掉建模过程中需要地参考点。
⒁DoingWindows
Step1:
设置为Face模式,选中墙并把它设为父结点Parent;并在HierarchyView中middle-click_选中地Face的Hierarchy表示将置于视场中央。
Step2:
把工作面置于被选中的墙上即FAC
Step3:
改变CurrentPrimary颜色;
Step4:
在选中的墙上建立一个小矩形即Face/Rectangle_这样在Hierarchy中可以见到一个子面(subface);
Step5:
选中该面并Edit/CutSubfaces_因为有的系统不支持子面的概念;
Step6:
选中原来的子面的两个面并Edit/combineFace_把两个面融合为一个面。
当在屋顶处开窗户时,有可能会出现该四边形时隐时现的情况,可以type“Z”来打开Z-buffering;也可以忽略此现象。
⒂PreparingfortheFrontPorch
Step1:
把工作面置于Foundation上并把坐标原点定为其左前端即FAC→CTR;
Step2:
在HierarchyView中把House设为Parent;
Step3:
产生一个新的Group并更名为Porch,再令其为Parent;
Step4:
设为“Object“模式。
⒃MakethePosts
Step1:
Face/Rectangle在thetrackingplane(0,0)和(1,1)上建一个矩形;
Step2:
Geometry/wall,不选KeepBottom,建8feet高;
Step3:
Copy“post”并paste,用middlebutton取“FromPoint”,在(20,0)和最右端粘贴。
⒄CreatethePorchRoof
Step1:
设Porch为Parent;
Step2:
把工作面设在房子的右端墙上FAC;
Step3:
在ViewPanel上把Dimension设为0.5;
Step4:
Face/Polygon建一个平面;
Step5:
Geometry/wall,选中“KeepBottom”高度设为-31;
在这个步骤中产生了一个渗透的面(即屋檐插入房中。
在建复杂模型时,可能会用到这种方法,但是为了减少计算量(Z-buffering进行计算),尽量少用该方法。
⒅TheChimney
Step1:
把House设为Parent并产生新的Group,并把它更名为“chimney”;
Step2:
设置为“Object”模式;
Step3:
在ViewPanel中令XZ为工作面,并用CTR/middle-click屋子的顶点的方法放置工作面;
Step4:
在ViewPanel中令offset为-2;令Dimension为0.5;
⒆MaketheChimney
Step1:
设置“Chimney”为Parent
Step2:
Face/Polygon建立烟囱的半切面(把网格拉近zoomin,以便精确建模);
Step3:
Attribute/Rename为刚建这个面更名,以便以后删除它;
Step4:
Geometry/RevolveAboutEdge,middle-click半切面的左侧两个顶点,并且旋转角Step5:
删除上可更名的Face_在建模过程中,最好随时删除不再需要的Face.Vertex等;
⒇RotatetheChimney
Step1:
在ViewPanel中选择XY并把工作面置于烟囱的顶部(FAC或CTR);
Step2:
选中整个“Chimney“;
Step3:
Maneuver/RotateAboutPoint,把Chimney旋转45°。
(21)PlanttheChimney
Step1:
FAC,把工作面置于前屋脊面;
Step2:
选中整个“Chimney“;
Step3:
ModGeom/Plant。
在整个建模中,要经常使用VegaViewer,以观察模型建得可否正确,因为在Creator中的视觉效果并不是实时渲染的视觉效果。
这主要是因为在ViewPanel中的DrawOrder的设置,若总是选ZButter则二者是一致的,但这样会增加模型的渲染计算量。
第四章建造对象层次树
4.1数据库结构
DBNode一个模型只有一个;
MasterGroupsg1、g2代表整个模型;
SignificantGroups每个代表模型的主要部分,对复杂模型可以分级;
Objects它只能包含Face(Polygon),并用于表示非运动部分;
Faces它只用CurrentPrimary颜色标识的,可附在Group、object甚至face、subface上。
Vertex在Hierarchy中无标识,它是Face的一个属性。
4.2操作数据库结构
1Expanding/Contractingthestructure
Step1:
选中结点
Step2:
Hierarchy/ExpandHierarchy或middle-clickHierarchy/ContractHierarchy或Alt+middle-click
2CreatingEmptyNodes
Step1:
选中Parent;
Step2:
Create/CreateGroup产生Group
Create/CreateObject产生Object
Step3:
Attributes/Rename改名;
Step4:
把改名后的物体设为Parent.
3SelectingNodesforEditing
Step1:
shift+left-click
4MovingNodestoNewParents
方法1:
left-button拖动节点至Parents_黄色标识其父节点;刚放置的子结点总是置于最左端。
方法2:
方法1对于非常复杂的结构而言,不太容易操作