Virtools开发之底层篇100411明日香着培训资料_第1页
Virtools开发之底层篇100411明日香着培训资料_第2页
Virtools开发之底层篇100411明日香着培训资料_第3页
Virtools开发之底层篇100411明日香着培训资料_第4页
Virtools开发之底层篇100411明日香着培训资料_第5页
已阅读5页,还剩264页未读 继续免费阅读

下载本文档

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

文档简介

1、Virtools的行动纲领梦幻的魔法之门覃伯明 编著实例教程群36187700(500人超级群)唯一下载,不经本人同意,书与实例不得在其他地方提供下载致谢非常感谢郭健先生对本书的斧正。内容提要本书是从已经具有一定Virtools开放能力,但仍然没有得到满足的、想再提升的程序员角度出发,通过virtools学习VSL脚本程序以及SDK开发包,去挖掘virtools的强大功能,从而更加地发挥自己的想象。所以本书面向的是已经具有一定编程经验的读者,最好已经学会了virtools;在学习本书SDK部分的内容中,还必须有一定的cc+编程能力。本书分VSL脚本编程、SDK开发包和项目实例剖析三部分,前两部

2、分又分学习应用篇和实例篇二篇,共21章。学习应用篇是对virtools的VSL和SDK进行深入剖析,掌握运用的方法;未定的而实例篇则是作者提供的一些实例,读者可以拿来借鉴和无限制使用。最后是项目实例剖析部分通过几个项目案例进行系统化的开发运用。本书说的内容先从容易上手的VSL脚本说起,最先说的是VSL的基础语法。可以让没有代码开放经验的读者,也能够看懂VSL,然后慢慢讲解个个VSL类型的用法。VSL部分讲解完后,接着就是SDK的学习。请读者阅读该部分内容前,请必须掌握C+程序设计,还有VC2003这个编译工具的使用,最好具有STL、ADO、Winsocket等编程基础。随书附送有配套光盘。光盘

3、按章节顺序提供了书中的所用实例代码,这些代码都经过作者精心调试过,在WindowsXP、Virtools4.0下,保证可用。如果你是virtools开发者,如果你是3D游戏开发者,如果你是虚拟现实项目开发者,请你相信,此书会对你很有用。前言Virtools是什么是“ HYPERLINK /about/200705/215.html 3D for All”开发平台。直译为:为所有平台解决3D图形化功能。它是用最直观的图形化程序接口方式,来实现真实的多样化的虚拟体验。Virtools能做什么3D游戏、虚拟场景漫游、数字营销系统、数字教学方案、地理信息导航、虚拟驾驶等等。本书能为读者带来什么写本书的

4、初衷目前市面上Virtools的开发书籍很少,涉及底层的开发应用就更少,所以想把自己多年来的开发经验总结出来,让晚辈们少走弯路。做为一个开发人员,仅仅熟悉virtools现有的图形化界面方式,并以此开展项目工作是远远不够的。当项目提出更多的需求或者需求变得复杂时,你就会发现图形化界面编程方式变得难以应付了。如果想让自己处理起来游刃有余,必须要融会贯通virtools的VSL脚本程序以及SDK开发包,三者共同发挥才能展现出virtools的强大魅力,才能出色的完成项目工作。本书的特点:本书光盘内容:本书包含书中所涉及的所有例子程序,同时包含一些美工资源。其中VSL脚本的例子程序的命名规则如下:“

5、例子5.1.2_1.cmo” 其中“5”表示第五章、“1”表示第五章的第一节内容、“2”表示该小节下的第二个知识点,“_1”表示该知识点的第一个例子程序。本书的读者可供Virtools开发人员参看,也适合其它虚拟现实项目开发程序员参看。本书约定本书中对VSL脚本有两种叫法,一个叫VSL脚本程序,一个叫VSL脚本BB,它们其实是同一个东西,只不过一个从程序的角度来叙述VSL,因为它要输写代码,所以叫VSL脚本程序;一个从BB的角度来叙述VSL,因为它要连线,填参数,所以叫VSL脚本BB。当说到脚本时候,请注意virtools脚本和VSL脚本程序,是不同概念的东西。VSL脚本程序只是一小段程序代码

6、,其作用类似BB,所以书中也叫他VSL脚本BB; 而Virtools脚本则是一个集合体,包含着BB、BG、VSL脚本BB、以及连接线等等,其更像是一个脚本流程图,Virtools脚的意义更大,更广些。无论是VSL脚本开发,还是sdk的开发,都有碰到“输入输出参数”和“输入输出端口”这两个是完全不同的概念。“输入输出参数”概念就是一个BB上端和下端的参数,是用来填写或者获得数据的参数,就像是程序调用的输入参数和返回参数。输入输出端口”则是用来在virtools脚本中参与连线的端子。目录 TOC o 1-4 h z u HYPERLINK l _Toc258784226 Virtools的行动纲领

7、 PAGEREF _Toc258784226 h 1 HYPERLINK l _Toc258784227 梦幻的魔法之门 PAGEREF _Toc258784227 h 1 HYPERLINK l _Toc258784228 第一部分 VSL脚本语言程序设计 PAGEREF _Toc258784228 h 1 HYPERLINK l _Toc258784229 第一章 认识VSL (Virtools Scripting Language ,脚本语言 ) PAGEREF _Toc258784229 h 1 HYPERLINK l _Toc258784230 1.1VSL简介 PAGEREF _T

8、oc258784230 h 1 HYPERLINK l _Toc258784231 1.1.1BB与VSL的关系 PAGEREF _Toc258784231 h 1 HYPERLINK l _Toc258784232 1.1.2VSL擅长什么工作 PAGEREF _Toc258784232 h 1 HYPERLINK l _Toc258784233 1.1.3VSL脚本语言与C语言相似 PAGEREF _Toc258784233 h 3 HYPERLINK l _Toc258784234 1.1.4VSL与其它脚本语言不同 PAGEREF _Toc258784234 h 3 HYPERLINK

9、 l _Toc258784235 1.2 VSL脚本管理器 PAGEREF _Toc258784235 h 3 HYPERLINK l _Toc258784236 1.2.1VSL脚本管理器的使用 PAGEREF _Toc258784236 h 3 HYPERLINK l _Toc258784237 1.2.2创造第一个VSL脚本程序 PAGEREF _Toc258784237 h 5 HYPERLINK l _Toc258784238 1.2.3一个带输入输出的VSL脚本程序 PAGEREF _Toc258784238 h 6 HYPERLINK l _Toc258784239 1.2.4V

10、SL脚本程序的重命名、定位和删除 PAGEREF _Toc258784239 h 9 HYPERLINK l _Toc258784240 1.2.5VSL快捷键使用 PAGEREF _Toc258784240 h 9 HYPERLINK l _Toc258784241 1.3VSL语法描述 PAGEREF _Toc258784241 h 10 HYPERLINK l _Toc258784242 1.3.1VSL的变量和常量 PAGEREF _Toc258784242 h 10 HYPERLINK l _Toc258784243 1.3.2VSL的运算符 PAGEREF _Toc25878424

11、3 h 11 HYPERLINK l _Toc258784244 1.3.3VSL的表达式与语句 PAGEREF _Toc258784244 h 13 HYPERLINK l _Toc258784245 1.3.4VSL的赋值语句和声明语句和注释 PAGEREF _Toc258784245 h 14 HYPERLINK l _Toc258784246 1.3.5VSL的条件判断语句 PAGEREF _Toc258784246 h 14 HYPERLINK l _Toc258784247 1.3.6VSL的循环和控制语句 PAGEREF _Toc258784247 h 20 HYPERLINK

12、l _Toc258784248 1.3.7数组和多维数组 PAGEREF _Toc258784248 h 24 HYPERLINK l _Toc258784249 第二章VSL的函数 PAGEREF _Toc258784249 h 27 HYPERLINK l _Toc258784250 2.1函数的定义与调用 PAGEREF _Toc258784250 h 27 HYPERLINK l _Toc258784251 2.1.1什么是函数 PAGEREF _Toc258784251 h 27 HYPERLINK l _Toc258784252 2.1.2定义函数 PAGEREF _Toc2587

13、84252 h 27 HYPERLINK l _Toc258784253 2.1.3函数的调用 PAGEREF _Toc258784253 h 28 HYPERLINK l _Toc258784254 2.1.4函数的重载 PAGEREF _Toc258784254 h 29 HYPERLINK l _Toc258784255 2.2 函数的参数及其返回值 PAGEREF _Toc258784255 h 30 HYPERLINK l _Toc258784256 2.2.1形参和实参 PAGEREF _Toc258784256 h 30 HYPERLINK l _Toc258784257 2.2

14、.2函数值的返回 PAGEREF _Toc258784257 h 31 HYPERLINK l _Toc258784258 2.3 变量的作用域和存储类型 PAGEREF _Toc258784258 h 32 HYPERLINK l _Toc258784259 2.3.1局部变量、全局变量和作用域 PAGEREF _Toc258784259 h 32 HYPERLINK l _Toc258784260 2.3.2VSL全局共享变量和全局静态变量 PAGEREF _Toc258784260 h 34 HYPERLINK l _Toc258784261 2.3.3结构体和枚举类型 PAGEREF

15、_Toc258784261 h 36 HYPERLINK l _Toc258784262 2.4 字符串类的使用 PAGEREF _Toc258784262 h 38 HYPERLINK l _Toc258784263 2.4.1字符变量、字符串类型变量、字符数组和字符串类的区别 PAGEREF _Toc258784263 h 38 HYPERLINK l _Toc258784264 2.4.2字符串类的定义与赋值 PAGEREF _Toc258784264 h 39 HYPERLINK l _Toc258784265 2.4.3字符串的处理函数 PAGEREF _Toc258784265 h

16、 39 HYPERLINK l _Toc258784266 2.4.4字符串的应用 PAGEREF _Toc258784266 h 40 HYPERLINK l _Toc258784267 第三章 VSL中的3D数学与变换以及简单几何体 PAGEREF _Toc258784267 h 43 HYPERLINK l _Toc258784268 3.1向量 PAGEREF _Toc258784268 h 43 HYPERLINK l _Toc258784269 3.1.1 向量的概念 PAGEREF _Toc258784269 h 43 HYPERLINK l _Toc258784270 3.1.

17、2 向量长度和归一化 PAGEREF _Toc258784270 h 43 HYPERLINK l _Toc258784271 3.1.3 向量的相加与相减 PAGEREF _Toc258784271 h 44 HYPERLINK l _Toc258784272 3.1.4向量和标量的乘法 PAGEREF _Toc258784272 h 45 HYPERLINK l _Toc258784273 3.1.5 向量的点积 PAGEREF _Toc258784273 h 45 HYPERLINK l _Toc258784274 3.1.5 向量的叉积 PAGEREF _Toc258784274 h

18、46 HYPERLINK l _Toc258784275 3.1.6 位置和位移向量 PAGEREF _Toc258784275 h 46 HYPERLINK l _Toc258784276 3.2VSL中的2D向量Vector2D PAGEREF _Toc258784276 h 47 HYPERLINK l _Toc258784277 3.2.1 Vector2D的方法 PAGEREF _Toc258784277 h 47 HYPERLINK l _Toc258784278 3.2.2 Vector2D的应用 PAGEREF _Toc258784278 h 49 HYPERLINK l _T

19、oc258784279 3.3VSL中的3D向量Vector PAGEREF _Toc258784279 h 51 HYPERLINK l _Toc258784280 3.3.1Vector的方法 PAGEREF _Toc258784280 h 51 HYPERLINK l _Toc258784281 3.3.2 Vector的应用 PAGEREF _Toc258784281 h 51 HYPERLINK l _Toc258784282 3.4矩阵和Matrix PAGEREF _Toc258784282 h 53 HYPERLINK l _Toc258784283 3.4.1矩阵的概念 PA

20、GEREF _Toc258784283 h 53 HYPERLINK l _Toc258784284 3.4.2Matrix的方法和应用 PAGEREF _Toc258784284 h 54 HYPERLINK l _Toc258784285 3.5简单几何体 PAGEREF _Toc258784285 h 54 HYPERLINK l _Toc258784286 3.5.1点、线、面 PAGEREF _Toc258784286 h 54 HYPERLINK l _Toc258784287 3.5.2 正方体 PAGEREF _Toc258784287 h 55 HYPERLINK l _To

21、c258784288 3.5.3圆锥体和圆球 PAGEREF _Toc258784288 h 56 HYPERLINK l _Toc258784289 3.5.4矩形 PAGEREF _Toc258784289 h 56 HYPERLINK l _Toc258784290 第四章 Virtools中的2D实体 PAGEREF _Toc258784290 h 62 HYPERLINK l _Toc258784291 4.1 2D帧Entity2D PAGEREF _Toc258784291 h 62 HYPERLINK l _Toc258784292 4.1.1Entity2D与Rect PAG

22、EREF _Toc258784292 h 62 HYPERLINK l _Toc258784293 4.1.2Entity2D的应用 PAGEREF _Toc258784293 h 62 HYPERLINK l _Toc258784294 4.2 2D精灵Sprite PAGEREF _Toc258784294 h 67 HYPERLINK l _Toc258784295 4.2.1Sprite与Entity2D PAGEREF _Toc258784295 h 67 HYPERLINK l _Toc258784296 4.2.2Sprite的应用 PAGEREF _Toc258784296 h

23、 67 HYPERLINK l _Toc258784297 第五章 灯光、材质和纹理 PAGEREF _Toc258784297 h 70 HYPERLINK l _Toc258784298 5.1光 PAGEREF _Toc258784298 h 70 HYPERLINK l _Toc258784299 5.1.1光的类型 PAGEREF _Toc258784299 h 70 HYPERLINK l _Toc258784300 5.1.3光的衰减属性 PAGEREF _Toc258784300 h 71 HYPERLINK l _Toc258784301 5.1.4高光 PAGEREF _T

24、oc258784301 h 72 HYPERLINK l _Toc258784302 5.1.5 色彩 PAGEREF _Toc258784302 h 73 HYPERLINK l _Toc258784303 5.2材质的特性 PAGEREF _Toc258784303 h 74 HYPERLINK l _Toc258784304 5.2.1物体表面材质属性 PAGEREF _Toc258784304 h 74 HYPERLINK l _Toc258784305 5.2.23D物体填充模式 PAGEREF _Toc258784305 h 75 HYPERLINK l _Toc258784306

25、 5.2.3Flat渲染和Gouraud渲染 PAGEREF _Toc258784306 h 76 HYPERLINK l _Toc258784307 5.2.4Alpha混合 PAGEREF _Toc258784307 h 76 HYPERLINK l _Toc258784308 5.2.5Alpha测试(Alpha Test) PAGEREF _Toc258784308 h 78 HYPERLINK l _Toc258784309 5.2.6纹理采样过滤 PAGEREF _Toc258784309 h 79 HYPERLINK l _Toc258784310 5.2.7 纹理寻址(Text

26、ure Address) PAGEREF _Toc258784310 h 80 HYPERLINK l _Toc258784311 5.2.8多重纹理混合 PAGEREF _Toc258784311 h 81 HYPERLINK l _Toc258784312 5.2.9纹理过滤和纹理寻址的显示例程 PAGEREF _Toc258784312 h 82 HYPERLINK l _Toc258784313 5.3纹理的特性 PAGEREF _Toc258784313 h 83 HYPERLINK l _Toc258784314 5.3.1纹理的插槽(Slot)属性 PAGEREF _Toc258

27、784314 h 83 HYPERLINK l _Toc258784315 5.3.2天空盒纹理 PAGEREF _Toc258784315 h 85 HYPERLINK l _Toc258784316 第六章 3D物体 PAGEREF _Toc258784316 h 87 HYPERLINK l _Toc258784317 6.1 3D Entity PAGEREF _Toc258784317 h 87 HYPERLINK l _Toc258784318 6.1.1坐标系和3D物体 PAGEREF _Toc258784318 h 87 HYPERLINK l _Toc258784319 6.

28、1.2 3D Entity的位置、方向与缩放 PAGEREF _Toc258784319 h 88 HYPERLINK l _Toc258784320 6.1.3 物体的父子关系 PAGEREF _Toc258784320 h 91 HYPERLINK l _Toc258784321 6.1.4 物体的网格(Mesh) PAGEREF _Toc258784321 h 93 HYPERLINK l _Toc258784322 6.1.5 3D物体的屏幕坐标位置 PAGEREF _Toc258784322 h 94 HYPERLINK l _Toc258784323 6.2 Mesh PAGERE

29、F _Toc258784323 h 94 HYPERLINK l _Toc258784324 6.2.1mesh到应用 PAGEREF _Toc258784324 h 94 HYPERLINK l _Toc258784325 6.2.2mesh与材质、纹理贴图 PAGEREF _Toc258784325 h 96 HYPERLINK l _Toc258784326 6.2.3纹理坐标:(u, v)坐标 PAGEREF _Toc258784326 h 97 HYPERLINK l _Toc258784327 6.2.4Mesh的通道材质特性 PAGEREF _Toc258784327 h 97

30、HYPERLINK l _Toc258784328 6.3 3D精灵Sprite3D PAGEREF _Toc258784328 h 98 HYPERLINK l _Toc258784329 6.3.13D精灵和公告板 PAGEREF _Toc258784329 h 98 HYPERLINK l _Toc258784330 6.3.23D精灵的应用 PAGEREF _Toc258784330 h 99 HYPERLINK l _Toc258784331 第七章 角色动画 PAGEREF _Toc258784331 h 101 HYPERLINK l _Toc258784332 7.1 角色 P

31、AGEREF _Toc258784332 h 101 HYPERLINK l _Toc258784333 7.1.1角色的概念 PAGEREF _Toc258784333 h 101 HYPERLINK l _Toc258784334 7.1.2播放角色动画 PAGEREF _Toc258784334 h 101 HYPERLINK l _Toc258784335 7.1.3角色的次级动画播放 PAGEREF _Toc258784335 h 104 HYPERLINK l _Toc258784336 7.1.4角色的身体 PAGEREF _Toc258784336 h 105 HYPERLIN

32、K l _Toc258784337 7.2 角色动画 PAGEREF _Toc258784337 h 105 HYPERLINK l _Toc258784338 7.2.1 如果确定角色动画是否有问题 PAGEREF _Toc258784338 h 105 HYPERLINK l _Toc258784339 7.2.2角色的动画帧 PAGEREF _Toc258784339 h 106 HYPERLINK l _Toc258784340 7.2.3角色动画的一些设置Unlimited Controller PAGEREF _Toc258784340 h 109 HYPERLINK l _Toc

33、258784341 7.2.4用VSL设置角色动画 PAGEREF _Toc258784341 h 112 HYPERLINK l _Toc258784342 7.3角色动画的应用 PAGEREF _Toc258784342 h 114 HYPERLINK l _Toc258784343 7.3.1用VSL来控制角色动画 PAGEREF _Toc258784343 h 114 HYPERLINK l _Toc258784344 第八章 摄像机 PAGEREF _Toc258784344 h 119 HYPERLINK l _Toc258784345 8.1 相机的基本属性 PAGEREF _T

34、oc258784345 h 119 HYPERLINK l _Toc258784346 8.1.1相机的投影 PAGEREF _Toc258784346 h 119 HYPERLINK l _Toc258784347 8.1.2相机的视锥 PAGEREF _Toc258784347 h 121 HYPERLINK l _Toc258784348 8.1.3目标相机 PAGEREF _Toc258784348 h 122 HYPERLINK l _Toc258784349 8.2相机的应用 PAGEREF _Toc258784349 h 123 HYPERLINK l _Toc258784350

35、 8.2.1第一人称相机 PAGEREF _Toc258784350 h 123 HYPERLINK l _Toc258784351 8.2.2第三人称相机 PAGEREF _Toc258784351 h 126 HYPERLINK l _Toc258784352 第九章 曲线与网格 PAGEREF _Toc258784352 h 130 HYPERLINK l _Toc258784353 9.1 3D曲线 PAGEREF _Toc258784353 h 130 HYPERLINK l _Toc258784354 9.1.1什么是3D曲线和3D曲线节点 PAGEREF _Toc25878435

36、4 h 130 HYPERLINK l _Toc258784355 9.1.23D曲线的应用 PAGEREF _Toc258784355 h 132 HYPERLINK l _Toc258784356 9.1.33D曲线节点的详细设置 PAGEREF _Toc258784356 h 134 HYPERLINK l _Toc258784357 9.2 2D路径 PAGEREF _Toc258784357 h 136 HYPERLINK l _Toc258784358 9.2.12D曲线和2D曲线的应用 PAGEREF _Toc258784358 h 136 HYPERLINK l _Toc258

37、784359 9.3网格 PAGEREF _Toc258784359 h 137 HYPERLINK l _Toc258784360 9.3.1 网格和层 PAGEREF _Toc258784360 h 137 HYPERLINK l _Toc258784361 9.3.2网格的VSL应用 PAGEREF _Toc258784361 h 138 HYPERLINK l _Toc258784362 第十章 表、组和场景 PAGEREF _Toc258784362 h 142 HYPERLINK l _Toc258784363 10.1 表 PAGEREF _Toc258784363 h 142

38、HYPERLINK l _Toc258784364 10.1.1表的数据存储类型 PAGEREF _Toc258784364 h 142 HYPERLINK l _Toc258784365 10.1.2使用VSL创建表和储存数据 PAGEREF _Toc258784365 h 143 HYPERLINK l _Toc258784366 10.1.3通过VSL提取表中数据和删除行列 PAGEREF _Toc258784366 h 145 HYPERLINK l _Toc258784367 10.1.4通过VSL对表数据的操作 PAGEREF _Toc258784367 h 147 HYPERLI

39、NK l _Toc258784368 10.2 组 PAGEREF _Toc258784368 h 148 HYPERLINK l _Toc258784369 10.2.1组的意义 PAGEREF _Toc258784369 h 148 HYPERLINK l _Toc258784370 10.2.2组的应用 PAGEREF _Toc258784370 h 149 HYPERLINK l _Toc258784371 10.3 场景 PAGEREF _Toc258784371 h 150 HYPERLINK l _Toc258784372 10.3.1场景是一种优化技术 PAGEREF _Toc

40、258784372 h 150 HYPERLINK l _Toc258784373 10.3.2场景技术的简单应用 PAGEREF _Toc258784373 h 151 HYPERLINK l _Toc258784374 10.4 数据容器 PAGEREF _Toc258784374 h 153 HYPERLINK l _Toc258784375 10.4.1数据容器的使用 PAGEREF _Toc258784375 h 153 HYPERLINK l _Toc258784376 10.4.2String、StringTokenizer和ArrayString PAGEREF _Toc258

41、784376 h 156 HYPERLINK l _Toc258784377 第十一章 声音与视频 PAGEREF _Toc258784377 h 158 HYPERLINK l _Toc258784378 11.1 声音的基本运用 PAGEREF _Toc258784378 h 158 HYPERLINK l _Toc258784379 11.1.1声音的特性 PAGEREF _Toc258784379 h 158 HYPERLINK l _Toc258784380 11.1.2播放一个声音 PAGEREF _Toc258784380 h 158 HYPERLINK l _Toc258784

42、381 11.1.32D声音和3D声音 PAGEREF _Toc258784381 h 160 HYPERLINK l _Toc258784382 11.2 声音的高级应用 PAGEREF _Toc258784382 h 161 HYPERLINK l _Toc258784383 11.2.1锥形的听觉范围 PAGEREF _Toc258784383 h 161 HYPERLINK l _Toc258784384 11.2.2一个声音的多重播放 PAGEREF _Toc258784384 h 164 HYPERLINK l _Toc258784385 11.3 视频的播放 PAGEREF _T

43、oc258784385 h 165 HYPERLINK l _Toc258784386 11.3.1视频的一些属性 PAGEREF _Toc258784386 h 165 HYPERLINK l _Toc258784387 11.3.2视频的播放 PAGEREF _Toc258784387 h 166 HYPERLINK l _Toc258784388 第十二章 VSL中的bc PAGEREF _Toc258784388 h 169 HYPERLINK l _Toc258784389 12.1 什么是工厂 PAGEREF _Toc258784389 h 169 HYPERLINK l _Toc

44、258784390 12.1.1工厂干了什么 PAGEREF _Toc258784390 h 169 HYPERLINK l _Toc258784391 12.1.2工厂能生产几种产品 PAGEREF _Toc258784391 h 169 HYPERLINK l _Toc258784392 12.1.3工厂也可以复制产品 PAGEREF _Toc258784392 h 170 HYPERLINK l _Toc258784393 12.1.4工厂如何删除产品 PAGEREF _Toc258784393 h 172 HYPERLINK l _Toc258784394 12.2 属性控制 PAGE

45、REF _Toc258784394 h 173 HYPERLINK l _Toc258784395 12.2.1属性(Attribute)是什么 PAGEREF _Toc258784395 h 173 HYPERLINK l _Toc258784396 12.2.2属性(Attribute)的操作 PAGEREF _Toc258784396 h 173 HYPERLINK l _Toc258784397 12.3 bc的其他功能 PAGEREF _Toc258784397 h 177 HYPERLINK l _Toc258784398 12.3.1取得场景物件 PAGEREF _Toc2587

46、84398 h 177 HYPERLINK l _Toc258784399 12.3.2bc的其他一些小功能 PAGEREF _Toc258784399 h 180 HYPERLINK l _Toc258784400 12.4 输入管理器 PAGEREF _Toc258784400 h 183 HYPERLINK l _Toc258784401 12.4.1鼠标的使用 PAGEREF _Toc258784401 h 183 HYPERLINK l _Toc258784402 12.4.2键盘的使用 PAGEREF _Toc258784402 h 185 HYPERLINK l _Toc2587

47、84403 12.4.3摇杆的使用 PAGEREF _Toc258784403 h 187 HYPERLINK l _Toc258784404 12.5 渲染设备 PAGEREF _Toc258784404 h 187 HYPERLINK l _Toc258784405 12.5.1什么是渲染设备 PAGEREF _Toc258784405 h 187 HYPERLINK l _Toc258784406 12.5.2如何设置雾 PAGEREF _Toc258784406 h 188 HYPERLINK l _Toc258784407 12.5.3鼠标拾取物件 PAGEREF _Toc25878

48、4407 h 190 HYPERLINK l _Toc258784408 12.5.42D屏幕与3D位置 PAGEREF _Toc258784408 h 194 HYPERLINK l _Toc258784409 12.6 ac PAGEREF _Toc258784409 h 197 HYPERLINK l _Toc258784410 12.6.1什么是ac PAGEREF _Toc258784410 h 197 HYPERLINK l _Toc258784411 12.6.1如何创建和使用ac PAGEREF _Toc258784411 h 198 HYPERLINK l _Toc25878

49、4412 第二部分 高级渲染语言 PAGEREF _Toc258784412 h 201 HYPERLINK l _Toc258784413 第十三章 Virtools中的shader PAGEREF _Toc258784413 h 201 HYPERLINK l _Toc258784414 13.1认识shader PAGEREF _Toc258784414 h 201 HYPERLINK l _Toc258784415 13.1.1shader的诞生 PAGEREF _Toc258784415 h 201 HYPERLINK l _Toc258784416 13.1.2Virtools中的

50、shader PAGEREF _Toc258784416 h 201 HYPERLINK l _Toc258784417 13.1.3Virtools中shader的执行过程 PAGEREF _Toc258784417 h 202 HYPERLINK l _Toc258784418 13.1.4shader编辑器 PAGEREF _Toc258784418 h 203 HYPERLINK l _Toc258784419 13.2shader语言 PAGEREF _Toc258784419 h 204 HYPERLINK l _Toc258784420 13.2.1创建第一个Shader程序 P

51、AGEREF _Toc258784420 h 204 HYPERLINK l _Toc258784421 13.2.2顶点着色器和像素着色器 PAGEREF _Toc258784421 h 206 HYPERLINK l _Toc258784422 第十四章 光照 PAGEREF _Toc258784422 h 208 HYPERLINK l _Toc258784423 14.1参数 PAGEREF _Toc258784423 h 208 HYPERLINK l _Toc258784424 14.1.1设置自发光参数的Virtools写法 PAGEREF _Toc258784424 h 208

52、 HYPERLINK l _Toc258784425 14.1.2设置自发光参数的HLSL写法 PAGEREF _Toc258784425 h 209 HYPERLINK l _Toc258784426 14.2光照 PAGEREF _Toc258784426 h 211 HYPERLINK l _Toc258784427 14.2.1光照的原理 PAGEREF _Toc258784427 h 211 HYPERLINK l _Toc258784428 14.2.2光照Shader PAGEREF _Toc258784428 h 213 HYPERLINK l _Toc258784429 14

53、.2.3光照的HLSL写法 PAGEREF _Toc258784429 h 214 HYPERLINK l _Toc258784430 14.3镜面反射 PAGEREF _Toc258784430 h 218 HYPERLINK l _Toc258784431 14.3.1一盏灯的镜面反射光照 PAGEREF _Toc258784431 h 218 HYPERLINK l _Toc258784432 14.3.2二盏灯的镜面反射光照 PAGEREF _Toc258784432 h 220 HYPERLINK l _Toc258784433 第十五章 纹理贴图光照 PAGEREF _Toc258

54、784433 h 223 HYPERLINK l _Toc258784434 15.1简单的纹理渲染 PAGEREF _Toc258784434 h 223 HYPERLINK l _Toc258784435 15.1.1Virtools纹理渲染Shader PAGEREF _Toc258784435 h 223 HYPERLINK l _Toc258784436 15.1.2HLSL纹理渲染 PAGEREF _Toc258784436 h 223 HYPERLINK l _Toc258784437 15.1.3带光照的纹理渲染 PAGEREF _Toc258784437 h 225 HYPE

55、RLINK l _Toc258784438 15.1.4逐像素的纹理渲染 PAGEREF _Toc258784438 h 226 HYPERLINK l _Toc258784439 15.1.5两层纹理渲染 PAGEREF _Toc258784439 h 229 HYPERLINK l _Toc258784440 15.2凹凸纹理映射Bump mapping PAGEREF _Toc258784440 h 231 HYPERLINK l _Toc258784441 15.2.1凹凸纹理映射的由来 PAGEREF _Toc258784441 h 231 HYPERLINK l _Toc25878

56、4442 15.2.2凹凸纹理映射的原理 PAGEREF _Toc258784442 h 231 HYPERLINK l _Toc258784443 15.2.3凹凸纹理映射的实现 PAGEREF _Toc258784443 h 232 HYPERLINK l _Toc258784444 15.2.4改良的凹凸纹理映射 PAGEREF _Toc258784444 h 236 HYPERLINK l _Toc258784445 15.3环境映射 PAGEREF _Toc258784445 h 241 HYPERLINK l _Toc258784446 15.3.1环境映射的原理和立方贴图纹理 P

57、AGEREF _Toc258784446 h 241 HYPERLINK l _Toc258784447 15.3.2Virtools中如何生成立方体贴图 PAGEREF _Toc258784447 h 242 HYPERLINK l _Toc258784448 15.3.3反射环境映射 PAGEREF _Toc258784448 h 243 HYPERLINK l _Toc258784449 15.3.4折射环境映射 PAGEREF _Toc258784449 h 246 HYPERLINK l _Toc258784450 15.3.5菲涅尔效果和颜色色散 PAGEREF _Toc25878

58、4450 h 248 HYPERLINK l _Toc258784451 15.3.6环境映射和凹凸纹理映射的结合 PAGEREF _Toc258784451 h 253 HYPERLINK l _Toc258784452 第十六章 定点渲染应用 PAGEREF _Toc258784452 h 256 HYPERLINK l _Toc258784453 16.1顶点动画 PAGEREF _Toc258784453 h 256 HYPERLINK l _Toc258784454 16.1.1一个简单的顶点动画 PAGEREF _Toc258784454 h 256以下目录未完成第二部分 Virt

59、ools 中Shader的开发第三部分 Virtools SDK的开发第四部分 Virtools的web开发第五部分 Virtools 与第三方插件的整合第六部分 Virtools项目(一个游戏实例,一个VR项目)第XXX章 VSL编程常见问题5.1语法问题5.2方法问题实例篇第XXXX章 VSL实例编程5.12DEntity类型5.23DEnity类型5.3其他类型- PAGE 258 -第一部分 VSL脚本语言程序设计第一章 认识VSL (Virtools Scripting Language ,脚本语言 )VSL是Virtools提供的一个非常有创意的脚本语言,它以输写代码的方式(区别于

60、Virtools现有的图形化编程界面)进行编程开发,提高了程序的可读性和工作效率,它的存在好比如虎添翼。掌握了这个这种开发方式,你一定会大大的减少“连线”的数量和提高程序的开发效率。Virtools的现成的BB能办的事情,VSL几乎都能办到,有些地方甚至做得更好,所以请相信:“它很好,很强大!”。本章将详细的介绍VSL的语法基础和使用指南,读者可以了解以下内容:VSL的基本面貌。VSL语法规则。VSL脚本管理器如何管理VSL脚本。VSL编程中常用的快捷键。VSL的基本变量和语句。1.1VSL简介1.1.1BB与VSL的关系通常说的BB英文全名是Building Blocks,其意义就像我们小时

温馨提示

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

评论

0/150

提交评论