增强现实技术第四章_第1页
增强现实技术第四章_第2页
增强现实技术第四章_第3页
增强现实技术第四章_第4页
增强现实技术第四章_第5页
已阅读5页,还剩54页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第四章图像的实时显示4.1简单三维模型绘制4.2复杂三维模型绘制与加载4.3三维模型的渲染开发环境编辑环境:运行vrmlpad.exe,sn号见:cdkey.txt。新建文件时:第一行自动出现#VRMLV2.0utf8

此后输入关键字的第一个字母就能显示以该字母开始的关键字选项,可以继续输入其它字母,也可直接选取关键字。存文件时,指定扩展名为lyx,以便用Lyinux浏览器运行。

调试和运行环境:运行LyinuxSetup.exe,用户名和密码见:蓝牛高级账户-1.txt。当不需与服务器连接时,可在弹出“登录”窗口后选“取消”按钮,不必输入用户名和密码。

以后从编辑环境再启动运行时,先存盘,再用鼠标左键点住文件名,经过屏幕下方的Lyinux浏览器图标,再在浏览器中松开鼠标。为了从各个角度观看立体效果,在运行界面中,按鼠标右键,选中“自由视角”后,即可按住左键旋转视图。开发环境程序中出现system等Lyinux特有的节点时,程序文件的第一行必须是#LyinuxV1.1gb2312为了从各个角度观看立体效果,在运行界面中,按鼠标右键,选中“自由视角”后,即可按住左键旋转视图。可以按<Shift>+V来实现“自由视角”,但输入方式必须是英文状态。

当运行时出现错误信息时,通过“查看”-“侧栏”-“输出”,可以看到在哪一行出错。在Vrmlpad编辑器中,可以通过“工具”-“选项”-“编辑器”,选中“显示行号”,则可快速找到出错行进行修改。

物体的显示物体的显示效果由5个方面决定:造型、材质、纹理、光照、摄像机位置。造型:造型,指的是三维物体的几何形体。物体有体积,在三维空间中要占用一定的空间。材料:通俗的讲就是组成物体的材料和物体的质地。在3d虚拟世界里,材质表现为物体如何反射光线。如固有色、反射光线的颜色、自发光、透明度等。纹理:现实世界中充满了大量的视觉细节,这种视觉细节就叫纹理。将现实世界中的景物图片画到、或者映射到虚拟造型上——这就叫做纹理映射技术。纹理映射可以为建模节省大量的时间,不必再为大量的视觉细节生成模型。物体的显示光照:环境中各种光源对物体的显示效果都有影响。在3D虚拟场景中,要设定一个或多个光源,包括光源的类型、颜色、光照强度、位置等。摄像机位置:浏览一个场景,需要有摄像机的存在,在没有摄像机的情况下,浏览器会为场景安排一个默认的透视摄像机,将场景中的所有物体覆盖其中。这个摄像机的位置不是固定的,但方向和视角角度是固定的。在编写程序时,可以定制摄像机节点,设定摄像机的初始位置,在运行过程中可以通过相应值的变化改变摄像机的位置、角度等属性,从而改变浏览时的效果。4.1物体的显示坐标系:Lyinux引擎采用笛卡尔右手坐标系,在三维空间中,X轴的正方向朝右,Y轴的正方向朝上,Z轴的正方向朝向用户(浏览者)。这与3D建模软件3DSMax是不同的,Max中X轴的正方向朝右,Y轴的正方向背向用户,Z轴的正方向朝上。参见:《Lyinux开发基础教程(V1.0).pdf》第二章

第三节Lyinux基本概念

P18-19Lyinux浏览器中的计量单位P19-21Lyinux的数据类型和域P21-22域类型简单几何体组成的场景设计节点和语法,注意大小写之分Shape见P23-24Appearance见P24Material见P24-25Box,见P25(分析gloup1.lyx)CubeSphereCylinderConeGroup简单几何体组成的场景设计造型和组的应用见P33src/ch3/group2.lyx自己创建一个简单几何体的组合,各几何体采用不同的颜色。创建不同的坐标系Transform节点见P39坐标系的平移和旋转见P40、P43src/ch5/transform2.lyx自己创建多组简单几何体的组合,构成各种复杂模型。简单几何体组成的场景设计Transform节点见P39childre列出了所有子节点。

translation 230

列出了新坐标系的原点。

rotation0010.524

由原点和指定点(前三位)组成旋转轴,第四位为旋转角度,逆时针旋转为正。scale322给出了X,Y,Z方向上的缩放系数。默认值为111。center

0-0.150用于设定旋转的支点、缩放的中心点,为执行translation和rotation后得到的新坐标系中支点的坐标。分析Transform4.lyx和Translform4-test.lyx简单几何体组成的场景设计Separator节点见P55src/ch7/Separator.lyx

除有Transform可实现的平移、旋转、缩放功能外,还可以设置相对独立的材质、颜色(Basecolor)、字体等。TransformSeparator节点见P58src/ch7/transformSeparator.lyx

与Separator不同的是:设置的材质、颜色、字体等在节点外还起作用。简单几何何体组成成的场景景设计编写一个个程序,,实现下下图的简简单图形形组合,,尺寸和和角度自自定,保保证形状状基本相相同。3DMax2011安安装安装源文文件:F:\Tools\3DMax2011运行安装组件件时需要要输入序序列号((Serialnumber):400-45454545,产品密密钥((ProductKey):128C1。见文件件“安装装说明.txt”第一次运运行时需需要激活活,激激活步骤骤见文件件“安装装说明.txt”。1)在软件激激活界面面点击““激活””(Activate)按钮,,然后选选择“我我具有Autodesk提供的激激活码””2)运行注册册机,从从激活界界面复制制申请码码(Requestcode)粘贴到到注册机机的"Request"栏中,点点击"Generate"按钮生成成激活码码(Activation)3)点击注册册机上的的“MemPatch””按钮(非非常重要要)4)注册机中中复制激激活码粘粘贴到软软件激活活界面的的输入框框中,点点击“下下一步””(Next),完成成激活。。3DMax2011简简介3dsMax2011的工作界界面(P10-P31)加载文件件“打开文文件->选定.max文件的路路径工作视图图(P13-P14)视图控制制区(P15-P24)选择对象象(P25-P31)选定渲染染器“渲染””-〉“渲染器器”->“制定渲渲染器””->“产品级级:”-〉选取“mentalray渲染器””渲染效果果单独显显示窗口口3DMax2011简简介创建象棋棋“标准基基本体””->“圆柱图图”视图控制制区(P15-P24)选择对象象(P25-P31)选定渲染染器“渲染””-〉“渲染器器”->“制定渲渲染器””->“产品级级:”-〉选取“mentalray渲染器””渲染效果果单独显显示窗口口3DMax2011简简介制作象棋棋模型“创建””-〉“标准基基本体””->“圆柱体体”->鼠标放在在坐标中中心,按按左键拉拉出适当当大小的的圆,抬抬左键,,再按左左键拉出出高度。。(1)“修改改”-〉“修改器器列表””->“拉伸””->拉伸值::-0.1。(2)如果图图形上没没有显示示出边线线,可以以按F4,显示出出来3DMax2011简简介(3)在图形形上点击击右键,,选择转转换为---转换为可可编辑多多边形,,然后在在右上角角的修改改器列表表里选择择顶点。。(4)在前视视图里框框选中间间的几排排点(F-前视图,P-透视图,T-顶视图)3DMax2011简简介(5)在工具具栏选择择均匀缩缩放工具具,将前前视图修修改为顶顶视图并并进行放放大操作作,同时时观察透透视图里里物体的的比例。。(6)再在前前视图里里框选中中间两排排的点,,再选择择缩放工工具进行行放大,,同时观观察比例例。同时时也可以以调整模模型高度度,反复复调整以以达到合合适的比比例3DMax2011简简介(7)目前前这个个模型型是使使用的的初始始参数数,所所以边边上的的环线线只有有4条,如如果觉觉得边边缘不不够圆圆滑,,可以以在一一开始始建立立模型型的时时候,,增加加高度度分段段和边边数。。(8)也可转转换为为可编编辑多多边形形,然然后在在右上上角的的修改改器列列表里里选择择边。。选择择中间间的一一条边边,按按右边边中间间位置置的““循环环”,,可马马上选选上中中间一一圈的的所有有的边边,然然后缩缩放。。象棋的的UV展和和贴图图的生生成参考““象棋棋制作作.avi”,制制作效效果如如图。。象棋的的UV展和和贴图图的生生成在3DMAX里选择择导出出文件件,格格式选选择OBJ。然后后打开开UVlayout,点击击Load,选择择刚才才保存存的文文件。。左侧侧的Dir可以选选择文文件夹夹,然然后右右侧会会显示示出来来那个个文件件夹里里的文文件。。象棋的的UV展和和贴图图的生生成在操作作区对对模型型的UV进行切切割,,把顶顶面和和底面面都切切开。。把鼠鼠标悬悬停在在要选选择的的边上上,按按C键就会会看到到边被被选择择上了了(红红色的的是人人为选选择的的,黄黄色的的是程程序智智能延延长的的)。。选择择一圈圈之后后按回回车键键,就就能看看到物物体被被切开开了。。底面面也用用同样样方法法切开开。象棋的的UV展和和贴图图的生生成在侧边边上选选择一一条线线进行行切开开。把把鼠标标放在在侧面面的一一条边边上,,按C健,选择好好切口口上所所有的的编后后,按按<shift>+S。象棋的的UV展和和贴图图的生生成将鼠标标悬停停在物物体上上,按按D键送入入展平平区域域。在左侧侧点击击Display展开菜菜单,,然后后点选选UV按钮。。象棋的的UV展和和贴图图的生生成鼠标悬悬停在在要展展开的的物体体上,,按shift+f键,展展开UV,当没没什么么变化化之后后,按按空格格,然然后等等物体体完全全展开开之后后再按按空格格,如如此依依次将将三部部分都都展开开。象棋的的UV展和和贴图图的生生成空格+左键进进行旋旋转,,空格格+中键进进行移移动,,空格格+右键进进行缩缩放,,将UV放在中中间实实线的的红色色框内内。也也可按按中部部的<AutoFit>自动产产生红红色框框。象棋的的UV展和和贴图图的生生成在左侧侧点击击Save按钮进进行保保存,,可以以在下下面的的目录录里进进行重重命名名,这这样就就相当当于另另存为为,之之后关关闭UVlayout。象棋的的UV展和和贴图图的生生成将UV保存成成图片片。打开3DMAX,导入入刚才才保存存的OBJ文件。。象棋的的UV展和和贴图图的生生成将UV保存成成图片片。选择模模型,,在右右侧的的修改改器列列表里里选择择UVW展开,,然后后点击击下面面参数数中的的编辑辑按钮钮。象棋的的UV展和和贴图图的生生成将UV保存成成图片片。在弹出出的编编辑UVW窗口中中可以以看到到刚才才展开开的UV,在菜菜单栏栏选择择工具具----渲染UV,之后后设置置宽度度和高高度为为1024,点击击渲染染UV模版。。象棋的的UV展和和贴图图的生生成将UV保存成成图片片。在弹出出的窗窗口中中点击击左上上角的的保存存图像像,选选择PNG格式,,也可可选择择为JPG格式。。制作贴贴图将图片片用PS打开,,在右右侧双双击图图层,,选择择描边边,大大小1,位置置内部部,颜颜色红红色。。制作贴贴图导入扫扫描好好的象象棋的的图片片,在在右侧侧拖动动图层层,放放在UV层下方方,调调整图图片大大小,,对其其UV的边线线。制作贴贴图在底面面扫描描图片片中截截取部部分木木纹,,采用用复制制的方方法((不要要采用用拉伸伸的方方法,,否则则纹理理较粗粗)同同样放放入PS,作为为侧面面的贴贴图,,并且且按UV调整大大小。。制作贴贴图隐藏UV层,然然后保保存图图片新建图层,,在菜单中中点击选择择----色彩范围,,然后点击击文字上的的颜色,调调整颜色容容差,把文文字清楚的的显示出来来,点击菜菜单栏编辑辑-----填充,选择择黑色,然然后把其他他图层都隐隐藏。赋予物体贴贴图切换到3DMAX,点击工具具栏的材质质编辑器。。点选一个标标准材质球球,然后点点击赋予物物体。赋予物体贴贴图点击下面的的贴图选项项,展开之之后点击漫漫反射颜色色后面的none按钮。赋予物体贴贴图在弹出的窗窗口中选择择位图,然然后选择第第一次保存存的jpg文件点击凹凸后后面的none按钮,选择择第二次保保存的png图片,调整整凹凸后面面的数值到到合适的状状态渲染查看状状态,可以以看到顶面面和侧边面面颜色深浅浅度不够吻吻合,所以以要在PS里调整贴图图的颜色,,然后在3DMAX里重新载入入贴图。从3DMax导出模模型在3DsMAX2009中文件->导出->保存类型为为“VRML97(*.WRL)”,保存到::(设定目目录,如D:\test,输入文件件名abc,按保存)按保存键后后,出现提提示框,在在下方“位位图URL前缀”中使使用前缀,,“..\maps”,按“确定定”,只生生成文件abc.wrl,不生成贴贴图文件在test下建议子目目录\maps,将MAX中的贴图文文件(*.jpg)拷贝到test\maps中。将生成的abc.wrl也拷贝到test\maps中。在Lyinux中打开abc.wrl,将出现有有贴图的三三维场景。。如果贴图有有问题,也也可人工添添加语句::与material节点并列,,加textureImageTexture{url"images/迷彩.jpg"}从3DMax导出模模型另一种选择择:按保存键后后,出现提提示框,在在下方“位位图URL前缀”中不不使用前缀缀将MAX中的贴图文文件(*.jpg)和导出的abc.wrl放在同一目目录下。在Lyinux中打开abc.wrl,将出现有有贴图的三三维场景。。如果贴图有有问题,也也可人工添添加语句::与material节点并列,,加textureImageTexture{url"images/迷彩.jpg"}复杂几何体体组成的场场景设计自己在3DMax中创建一个个复杂的三三维模型,,最好有漂漂亮的贴图图,然后将将模型和贴贴图导入到到Lyinux中,并能进进一步编辑辑修改(加加一个立方方体,也有有贴图,与与三维模型型不重叠))。通用造型PointSet点集见见P49#VRMLV2.0utf8Shape{geometryPointSet{coordCoordinate{point[211,235,458]}colorColor{color[110,010,001]}}}通用造型IndexedLineSet线集见见P50src/ch6/IndexedLineSet.lyxIndexedFaceSet面集见见P52src/ch6/st1.wrlln124:DEFLine54Transform{ln141:geometryDEFLine54-FACESIndexedFaceSet{ln144:coordDEFLine54-COORDCoordinate{point[ln1027:TextureCoordinate见P84texCoordDEFLine54-TEXCOORDTextureCoordinate{point[ln2609:coordIndex[ln2620:texCoordIndex[ln5551-5584:另一个物体体通用造型ImageTexture节点见见P71ImageTexture图象纹理节节点用于设设置图象纹纹理的参数数并将该纹纹理粘贴映映射到造型型表面。图图象纹理是是最简单最最常用的一一种纹理方方式,它可可以完成多多种纹理效效果。使用用的图像文文件格式有有JPEG、GIF和PNG文件。textureImageTexture{url"maps/校门口的石石头柱.jpg"}TextureCoordinate节点见见P84TextureCoordinate纹理坐标节节点定义了了一组二维维坐标,用用于完成纹纹理和几何何表面顶点点间的映射射。它通常常用在IndexedFaceSet和ElevationGrid节点的texCoord域中。二维坐标反反映的是::Coordinate的point域中各几何何表面定点点的三维坐坐标,所对对应的纹理理jpg文件图形中中的二维坐坐标。虚拟校园造造型造型文件WebRoot\Model\st1.wrl、else.wrl纹理文件WebRoot\Model\maps\*.jpg从3DsMAX中导出文件件,在Lyinux中编辑和显显示:将文理文件件sky3.jpg存入目录E:\workingcenter\素材\图片\天空中在3DsMAX2009中打开E:\游戏引擎应应用实践-Lyinux\天空\天空.max文件->导出->保存类型为为“VRML97(*.WRL)”,保存到E:\游戏引擎应应用实践-Lyinux\天空\天空.WRL将“天空.WRL””改名为“天天空.lyx””用vrmlpad编辑,双击击“天空.lyx””启动lyinux运行。文本造型Text1见P36不能显示汉汉字Text2见36不随镜头的的旋转而旋旋转(通过过自由视角角体验)Text3见37随镜头的旋旋转而旋转转(通过自自由视角体体验)Font见P37指定Text2和Text3的字体和文文字大小纹理映射固有色纹理理见P71包括ImageTexturePixelTextureTextureUnitTexture2视频纹理MovieTexture网页纹理HtmlTexture(P76)src/ch8/HtmlTexture.lyx凹凸纹理BumpMap纹理映射TextureTransform见P80纹理变换src/ch8/TextureTransform.lyxsrc/ch8/TextureTransform-test.lyx体验translation和rotation的作用Texture2Transform见P81对Texture2纹理进行变变换纹理映射纹理坐标类类节点TextureCoordinate见P84src/ch8/TextureTransform.lyxsrc/ch8/TextureTransform-test.lyx体验translation和rotation的作用TextureCoordinateEnvironmentTextureCoordinatePlaneTextureCoordinateCubeTextureCoordinateSphereTextureCoordinateCylinder颜色设置Color节点见P70BaseColor节点PackedColor节点创建背景Background节点见P87src\ch9\Background.lyx注意天空的的颜色的梯梯度变换,,skyColor与skyAngle的配合skyAnger的角度是以以Y轴正方向为为基准,正正上方(天天空的中间间部分)是是skyColr的第一组值值的颜色,,1.57是旋转90度后(X轴,靠近地地面)的值值,对应skyColr的最后一组组值的颜色色。利用leftUrl”cake.jpg””加载左边背背景src\ch9\Background-test.lyx在虚拟校园园中,不能能用Background来设置天空空和首钢医医院等背景景,而是做一个个半球,将将校园外面面各个方向向的照片拼拼接起来贴贴在半球模模型上。摄像机默认摄像机机:透视摄摄像机,位位置不固定定,方向和和视角固定定。透视摄像机机:PerspectiveCamera节点见见P89缺省位置((0,0,1)沿Z轴负向看在虚拟校园园中Webroot\main.cc6\ln105设置平行摄像机机:OrthographicCamera见P90平行透视摄摄像机用来来设定某一一个物体总总是出现在在视线的前前方,且随随着是视线线的变化而而跟着变化化。src/ch9/OrthographicCamera.lyx注意:position对Sphere位置的影响响无论鼠标如如何旋转,,球的位置置不受影响响,与摄像像机的位置置总是position指定定的的相相对对位位置置。。摄像像机机默认认摄摄像像机机::透透视视摄摄像像机机,,位位置置不不固固定定,,方方向向和和视视角角固固定定。。透视视摄摄像像机机::PerspectiveCamera节点点见见P89缺省省位位置置((0,0,1)沿沿Z轴负负向向看看在虚虚拟拟校校园园中中Webroot\main.cc6\ln105设置置DEFcameraPerspectiveCamera{nearDistance0.059939999farDistance393.82602focalDistance26.330042}参数数值值来来自自于于在在3DsMax中调调试试好好的的位位置置摄像像机机平行行摄摄像像机机::OrthographicCamera见P90平行行透透视视摄摄像像机机用用来来设设定定某某一一个个物物体体总总是是出出现现在在视视线线的的前前方方,,且且随随着着是是视视线线的的变变化化而而跟跟着着变变化化。。src/ch9/OrthographicCamera.lyx注意意::position对Sphere位置置的的影影响响无论论鼠鼠标标如如何何旋旋转转,,球球的的位位置置不不受受影影响响,,与与摄摄像像机机的的位位置置总总是是position指定定的的相相对对位位置置。。摄像像机机NavigationInfo节点点::NavigationInfo导航航节节点点创创建建一一个个观观察察者者的的替替身身,,这这个个替替身身是是不不可可见见的的。。利利用用替替身身的的视视角角,,按按照照不不同同的的视视点点导导航航方方式式,,在在虚虚拟拟现现实实的的空空间间里里漫漫游游,,浏浏览览场场景景和和造造型型。。该该节节点点对对替替身身的的外外表表尺尺寸寸,,浏浏览览方方式式,,浏浏览览速速度度,,头头灯灯光光源源等等参参数数进进行行设设置置。。在虚虚拟拟校校园园中中Webroot\main.cc6\ln73设置置DEFnavigationInfoNavigationInfo{steadyTRUEpickTypePICK_FRONTability"FULLSCREEN"}灯光光节节点点点光光源源::PointLight节点点P95src\ch9\PointLight.lyxsrc\ch9\PointLight-test.lyx平行行光光源源::Directi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论