《虚拟现实实验报告30.docx》由会员分享,可在线阅读,更多相关《虚拟现实实验报告30.docx(30页珍藏版)》请在三一办公上搜索。
1、实验一 造型定位和旋转、缩放一、 实验内容:1. 熟悉VrmlPad编辑器的安装和使用2. 熟悉Cortonaplayer浏览器的安装和使用3. 掌握虚拟造型的基本操作。二、 实验环境:1. 硬件环境计算机一台2. 软件环境WindowsXP操作系统、VrmlPad编辑器和Cortonaplayer浏览器三、 实验步骤:完成第四章例4-1代码:Shape appearance Appearance material Material diffuseColor 0.9 0.1 0.05geometry Sphere radius 0.85Shape appearance Appearance m
2、aterial Material diffuseColor 0.8 0.9 0.1Geometry Cylinder radius 0.3height 2.0bottom FALSE截图:实验二 三维立体造型的设计与实现(需交实验报告)一、 实验内容1. 熟悉各种立体造型的设计2. 学会利用各种不同的立体造型组合实现复杂的造型二、 实验环境1. 硬件环境计算机一台2. 软件环境WindowsXP操作系统、VrmlPad编辑器和Cortonaplayer浏览器三、 实验步骤:1. 制作一个烟囱的立体造型,首先以原点为中心生成一个半径为1、高度为2的圆柱体,然后以(0,0,1.5)为坐标变换节点的
3、新原点生成一个底面半径为2,高度为1的圆锥体。 2. 建立一个带刻度的钟表造型:首先生成钟表面box造型,然后在钟表面上利用球体sphere造型生成各个刻度,利用圆柱体cylinder造型生成时针、分针等造型。其中利用Transform坐标变换节点对各个造型进行平移、缩放以及旋转操作。3. 设计一个文本造型。4、完成书中第四章的例4-2 、4-3和4-4。1)4-2代码:Transform translation -2 0 0 rotation 0 0 1 0.5 children DEF leg Shape appearance Appearance material Material di
4、ffuseColor 0.3 0.3 0.3ambientIntensity 0.3specularColor 0.7 0.7 0.7 shininess 0.1 geometry Box size 2 0.2 4 Transformtranslation2 0 0rotation 0 0 1 -0.5children USE legTransformtranslation0 0.52 0scale 1.5 1 1children Shape appearance Appearance material Material diffuseColor0.5 0.3 0.2 transparency
5、0.15geometry Cylinder radius 3height 0.1截图:2)4-3代码:Shape appearance Appearance materialMaterial diffuseColor 1.0 0 0geometry Text string Happy new Year!fontStyle FontStylestyle BOLDITALICsize 0.8justifyMIDDLETransform translation-3 -0.5 0scale 1.2 1.2 1.2children Inline url1-1.wrlTransform translati
6、on3 -0.5 0scale 1.2 1.2 1.2children Inline url1-1.wrl截图:3)4-4代码:Shape appearance Appearance material Material diffuseColor1 0 0geometry IndexedFaceSet coord Coordinate point 0.00 -0.05 -1, 0.35 -0.10 -1,0.53 -0.26 -1, 0.63 -0.50 -1,0.79 -0.71 -1, 1.00 -0.87 -1,1.24 -0.97 -1, 1.50 -1.00 -1,1.76 -0.97
7、 -1, 2.00 -0.90 -1,0.00 -0.05 -1, 0.35 -0.10 1,0.53 -0.26 -1, 0.63 -0.50 1,0.79 -0.71 -1, 1.00 -0.87 1,1.24 -0.97 -1, 1.50 -1.00 1,1.76 -0.97 -1, 2.00 -0.90 1,coordIndex 0 10 11 1 -1,1 11 12 2 -1, 2 12 13 3 -1,3 13 14 4 -1, 4 14 15 5 -1,5 15 16 6 -1, 6 16 17 7 -1,7 17 18 8 -1, 8 18 19 9 -1solid FALS
8、EcreaseAngle0.875Shape appearance Appearance material Material diffuseColor 0.3 0.3 0.3ambientIntensity 0.3 specularColor 0.7 0.7 0.8shininess 0.1geometry Extrusion crossSection spine 1.8 -1.0 0.75,1.8 -1.5 0.75,0.6 -1.5 0.75,0.6 -1.5 -0.75,0.6 -1.5 -0.75,1.8 -1.5 -0.75,1.8 -1.0 -0.75scale 0.03 0.05
9、截图:实验三 造型的空间变换以及编程技术应用一、 实验内容1. 熟悉Transform空间变换节点的运用2. 熟悉Group编组造型节点的运用3. 熟悉DEF、USE、Inline、Anchor、PROTO等节点的运用二、 实验环境1. 硬件环境计算机一台2. 软件环境VrmlPad编辑器和CortonaPlayer浏览器三、 实验步骤1. 利用Transform空间变换节点和Group编组节点来设计生成4个米字造型,多个造型之间从前到后依次排列。首先,利用Group编组节点和DEF、USE素材调用方式生成一个米字型的造型;然后利用Transform空间变换节点中translation域的域值
10、设定来改变不同的米字造型的前后位置关系,需要用到Group编组造型节点的嵌套。2. 利用PROTO原型节点,设计生成四个带刻度的钟表面,四个带刻度钟表面的位置、大小以及颜色均有不同。首先,利用PROTO原型节点定义钟表面,同时将其定义的参数铜鼓IS关键字传给Transform空间变换节点的translation域、Material节点里面的diffusecolor域、box节点里面的size域来改变造型的空间位置、颜色和大小。3、完成书中第四章的例4-5、4-6 与4-7。1)4-5代码:Group children Shape appearance Appearance material M
11、aterial textureImageTexture urlwood.jpggeometry Box size 2 2.4 0.8Transform translation0 0 0.4children Shape appearance Appearance material Material textureImageTexture url bookcase.jpggeometry Box size 2 2.4 0.01截图:2)4-6代码:Shape appearance Appearance material Material textureMovieTexture urlsteady.
12、mpgloop TRUEgeometry Box size 2.4 2 0.01Sound source AudioClip url steady.mpg loop TRUEintensity 1maxFront 16maxBack16minFront 8minBack83)4-7代码:NavigationInfo headlight FALSEPointLight location0 5 0 intensity 0.8 ambientIntensity0.5 on TRUEShape appearance Appearance material Material diffuseColor 1
13、 0 0 geometry Sphere radius 0.9Transform translation0 -3 0children Shape appearance Appearance material Material geometry Box size 8 0.02 6Transform translation0 -2.99 0children Shape appearance Appearance material Material diffuseColor 0 0 0transparency 0.5geometry Cylinder height 0.05 side FALSE b
14、ottomFALSE截图:实验四 简单的虚拟现实环境场景设计(需交实验报告)一 实验内容1. 理解VRML中虚拟现实场景中具有的一些要素2. 利用Background背景节点设置场景的背景3. 综合利用Transform空间变换节点、Shape空间造型节点、MovieTexture电影纹理节点以及Sound声音节点设计一个播放电影的平板电视造型效果二、 实验环境1. 硬件环境计算机一台2. 软件环境三、 实验步骤:1. 创建一个简单的天空地面组合而成的背景。通过设置Background背景节点里面的skyColor和skyAngle来设置天空的背景颜色渐变的效果,有蓝色逐渐转变成远处地平线位置
15、的白色;同时设置BackGround背景节点里面的goundColor和groundAngle来设置地面背景颜色渐变的效果,由深褐色慢慢变到远处地平线位置的浅褐色。2. 在上题的基础上,增加全景背景的设计,显示一副高尔夫球场的背景。利用Background背景节点里面的leftUrl、rightUrl、frontUrl、backUrl等域的设置,将全景空间背景的前、后、左、右4个面分解设置成4张图片,3. 制作一个平板电视的效果,要求不仅有图像效果,同时也有声音效果。首先利用transform节点和Box节点构造一个平板电视的效果,然后利用MovieTexture电影纹理节点将一个电影文件作为
16、纹理贴图贴于造型表面,再利用Sound声音节点制造与之对应的声音效果。4、完成书中的练习。1)代码:Background skyAngle #设置天空角1.2 1.57skyColor #设置天空角对应的颜色0 0 10 0.5 0.81 1 1groundAngle #设置地面角1.2 1.571groundColor #设置地面角对应的颜色0.1 0.1 0.10.4 0.3 0.20.8 0.8 0.8截图:2)代码:Background skyAngle #设置天空角1.2 1.57skyColor #设置天空角对应的颜色0 0 10 0.5 0.81 1 1groundAngle #
17、设置地面角1.2 1.571groundColor #设置地面角对应的颜色0.1 0.1 0.10.4 0.3 0.20.8 0.8 0.8frontUrl GCA02.JPG #设置前景图片rightUrl GCA04.JPG #设置右景图片leftUrlGCA09.JPG #设置左景图片backUrlGCA07.JPG #设置后景图片截图:3)代码:Background skyColor 0.1 0.5 0.6Transform translation0 0 -0.1children Shape appearance Appearance material Material diffuse
18、Color 0.3 0.3 0.3geometry Box #电视造型size 5.1 3.4 0.2Shape appearance Appearance textureDEF hgdy MovieTexture #电影纹理节点urlxqdz1.MPG #电影文件loop TRUEgeometry Box size 4.5 3 0.01 #电影屏幕造型Sound #声音节点source USE hgdy #引用电影纹理节点maxBack10maxFront 80minBack5minFront 30截图:实验五 造型的动画效果(需交实验报告)一、 实验内容1. 理解VRML中动画实现的基本原
19、理2. 利用TimeSensor时间传感器节点和各种插补节点完成各种动画效果的制作二、 实验环境1. 硬件环境计算机一台2. 软件环境VrmlPad编辑器和CortonaPlayer浏览器三、 实验步骤1.设计实现一个垂直于Z轴并绕Z轴旋转的十字架的造型,并且旋转地过程中十字架的两根金属棒分别进行不同的颜色变换。首先利用transform节点构造两根金属棒的造型,然后设计一个TimeSensor时间传感器驱动整个动画的运行,设计两个OrientationInterpolator朝向插补节点分别控制造型的旋转,设计两个ColorInterpolator颜色插补节点分别控制造型的颜色变换。1)代码
20、:DEFbar1 Transform #定义第一根棒坐标变换节点children Shape appearance Appearance material DEF cbar1 Material diffuseColor 0.5 0.5 0.7ambientIntensity 0.4specularColor 0.8 0.8 0.9shininess 0.2geometry Cylinder height 5radius 0.2DEFbar2 Transform #定义第二根棒坐标变换节点children Shape appearance Appearance material DEF cbar
21、2 MaterialdiffuseColor 0.8 0.8 0.9ambientIntensity 0.4 specularColor 0.8 0.8 0.9 shininess 0.2geometry Cylinder height 5radius 0.2DEFclock TimeSensor #定义时间传感器节点cycleInterval 9loop TRUEDEFpath1 OrientationInterpolator #定义第一根棒的朝向插补器key0 0.5 1 #时间关键点keyValue #朝向关键值0 0 1 00 0 1 3.1410 0 1 6.281DEFpath2
22、OrientationInterpolator #定义第二根棒的朝向插补器key0 0.5 1 #时间关键点keyValue #朝向关键值0 0 1 1.5710 0 1 4.7120 0 1 7.851DEFcpath1 ColorInterpolator #定义第一根棒的颜色插补器key0 0.5 1 #时间关键点keyValue #颜色关键值1 0 00 1 00 0 1DEFcpath2 ColorInterpolator #定义第二根棒的颜色插补器key0 0.5 1 #时间关键点keyValue #颜色关键值0.8 0.6 0.20.6 0.4 0.90.1 0.8 0.4ROUT
23、E clock.fraction_changed TOpath1.set_fractionROUTE clock.fraction_changed TOpath2.set_fractionROUTE clock.fraction_changed TOcpath1.set_fractionROUTE clock.fraction_changed TOcpath2.set_fractionROUTE path1.value_changed TO bar1.rotationROUTE path2.value_changed TO bar2.rotationROUTE cpath1.value_cha
24、nged TO cbar1.diffuseColorROUTE cpath2.value_changed TO cbar2.diffuseColor截图:实验六 造型的交互功能(需交实验报告)一、 实验内容1. 理解VRML中交互实现的基本原理2. 利用TouchSensor、PlaneSensor、CylinderSensor等各种能够实现交互功能的传感器节点设计具有人机交互功能的动画效果二、 实验环境1. 硬件环境计算机一台2. 软件环境VrmlPad编辑器和CortonaPlayer浏览器三、 实验步骤1. 设计一个碰撞效果动画,假想在(0,0,3)的位置有一个长方体,当视点与其碰撞时,
25、触发位于原点位置的一个球体进行一系列的移动。将长方体设置为碰撞传感器节点的代体(proxy),而将真正要运动的球体作为Collision碰撞传感器节点的children子节点;设置一个TimeSensor节点和一个PositionInterpolator节点,用Collision节点去触发TimeSensor节点的运行,从而驱动PositionInterpolator节点来控制球体的运行轨迹。1)代码:Background skyColor 0.6 0.2 1DEFsensor Collision proxy Transform #设置碰撞代体的位置和形状translation0 0 3chi
26、ldren Shape appearance Appearance material Material geometry Box size 4 4 2children DEFball Transform children Shape appearance Appearance material Material diffuseColor 1 1 0geometry Sphereradius 1DEFclock TimeSensor cycleInterval 4DEFpath PositionInterpolator key0 0.2 0.4 0.6 0.8 1keyValue 0 0 00
27、0 -305 0 -10-5 0 -100 0 -300 0 -10ROUTE sensor.collideTime TOclock.startTimeROUTE clock.fraction_changed TOpath.set_fractionROUTE path.value_changed TOball.translation截图: 实验七 综合程序设计(4学时)一、 实验内容 综合运用所学知识,设计一个虚拟校园。或自拟题目设计一个虚拟现实场景。二、 实验环境1. 硬件环境计算机一台2. 软件环境VrmlPad编辑器和CortonaPlayer浏览器三、 实验要求1、 必须要有动画交互功
28、能2、 具有虚拟环境设计3、 具有内联或联接功能1) 作品名:画廊2) 部分代码:Background groundAngle1.309,1.571groundColor0 0.4 0,0 0.2 0,0 0 0skyAngle1.309,1.571skyColor1 1 0,0 0 1,1 1 1NavigationInfoheadlight TRUEViewpoint position 16.3 1.4 12#fieldOfView0.9#orientation0 1 0 1.57PointLight intensity 1color 1 1 1location 3 2.2 2radius
29、 10attenuation 0 1 0PointLight intensity 1color 1 1 1location 8 2.2 2radius 10attenuation 0 1 0PointLight intensity 1color 1 1 1location 13 2.2 2radius 10attenuation 0 1 0PointLight intensity 1color 1 1 1location 19 2.2 2radius 10attenuation 0 1 0PointLight intensity 1color 1 1 1location 3 2.2 6radi
30、us 10attenuation 0 1 0PointLight intensity 1color 1 1 1location 7.5 2.2 5radius 10attenuation 0 1 0PointLight intensity 1color 1 1 1location 8 2.2 8radius 10attenuation 0 1 0PointLight intensity 1color 1 1 1location 11 2.2 5.5radius 10attenuation 0 1 0PointLight intensity 1color 1 1 1location 11 2.2
31、 8radius 10attenuation 0 1 0截图:实验8 初识3ds max6实验目的:熟悉3ds max6用户界面实验课时:2课时实践内容:3ds max 6是一个功能强大的,32位的面向对象的三维建模、动画和渲染程序。它提供了一个非常易用的用户界面。通过本实验,能够掌握如下内容:熟悉3ds max的用户界面;调整视口大小和布局;使用命令(Command)面板;定制用户界面。【思考题】:视图的导航控制钮有哪些?视图的导航控制钮有:缩放 缩放所有视图 最大化显示/最大化显示选定对象 所有视图最大化显示/所有视图最大化显示选定对象 缩放区域/视野 平移视图 户型转换 最大化视图切换如
32、何合理使用各个按钮?动画控制按钮有哪些? “转至开头” “转至结尾 ” “上一帧” “下一帧” “播放动画”“停止动画” “关键点模式切换” “当前帧(转到帧)” “切换自动关键点模式 “切换设置关键点模式” “设置关键点” “新建关键点的默认入/出切线” “打开过滤器对话框” “时间配置”如何设置动画时间的长短?右键单击,可设置时间长动画时间的长短实验9:在3ds max中建模实验目的:熟练使用多边形建模方法建模实验课时:2课时实践内容:熟练使用多边形建模方法建模。直观地说,建模就象在做泥塑,要捏出它的各个面,不同的是三维建模是在计算机里编辑的。在三维软件中建模,一般是从简单的几何形体开始,
33、逐步地修改、调试、变形而得到的比较复杂、精细的模型。在整个动画的制作中建模相当于二维动画中的动画形象和场景设计,模型将是动画中的表现主体。所以建模不仅仅是基础,还将决定动画的风格取向。象最终幻想中真实而趋于完美的人物形象决定了整个动画的唯美写实风格,怪物史莱克中夸张,怪诞的人物造型更是奠定了它的喜剧风格。3Ds max多边形建模方法比较容易理解,非常适合初学者学习,并且在建模的过程中用者有更多的想象空间和可修改余地。在本实验里,我们要通过循序渐进的讲解及相应的小实例来对3Ds max6中的多边形建模进行剖析,使大家可以比较全面的了解和掌握3Ds max6中的多边形建模方式与流程。二、小试牛刀:
34、实际制作茶杯模型【思考题】1、 edit mesh和editable mesh在用法上有和区别?Edit Mash(可编辑网格命令)它是一个加在物体之上对物体进行修改的修改命令。 Editable Mash(可编辑网格物体)是一个自身带编辑命令的网格物体2、 编辑节点的常用工具有哪些?NodeJoe,ThinkingParticle3、mesh select的主要作用是什么?Mesh Select修改器的作用是将一个物体的某个子物体选择集传递给上一层的修改器或者提供给其他操作使用。4、 face extrude的主要作用是什么?此修改工具与Edit Mesh(编辑网格对象)内部的挤压面功能相似
35、,使用它可将其下层修改器中所选择的面次对象相对于自身的法线或已定的中心来进行挤压操作。它Extrude相类似,不同的只是Extrude应用于平面图形的挤压,而Face Extrude则应用于对象的面级次对象。实验10:3ds max中材质的运用实验目的:了解材质编辑器的用法,使用材质实验课时:2课时实践内容:添加材质就象是给模型穿衣服化装一样,用来体现物体的质地,如颜色,透明度,纹理,粗糙或者光滑的程度等等,使模型更具可视性。相当于二维动画制作中给黑白线描上色和场景的上色。和建模一样,也是动画风格的重要体现因素。在3D Studio MAX 中材质与贴图的建立和编辑都是通过材质编辑器Mater
36、ial Editor来完成的。并且通过最后的渲染把它们表现出来,使物体表面显示出不同的质地,色彩和纹理。材质在三维模型创建过程中是至关重要的一环。我们要通过它来增加模型的细节,体现出模型的质感。材质对如何建立对象模型有着直接的影响。通过本实验学会使用Material Editor编辑器,使用3D Studio MAX中提供的多种材质。并且将对如何依赖于材质技功取得与在建立模型细节中相同的效果,并通过渲染为大家最终的作品加入特殊效果。【思考题】1、 如何从材质库中获取材质?如何从场景中获取材质?1)可以通过“材质编辑器”、场景、“材质库”的预定材质外部集合获得材质。2)通过使用滴管光标对材质采样,可以将材质从场景传输至“材质编辑器”。 a.激活首行材质中的第五个示例窗。 b.在“材质编辑器”中,单击“从对象拾取材质”。该按钮位于材质名称的旁边,在首行图标的下面(在示例窗下面)。 c.使用滴管单击视口中的任一对象。2、 在材质编辑器中同时可以编辑多少中材质? 3、 如何创建自己的材质库?做好材质后,打开“材质贴图浏览器”,点Save As按钮保存就可以了