图书介绍

Virtools引擎3D游戏程序设计2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

Virtools引擎3D游戏程序设计
  • 覃伯明编著 著
  • 出版社: 北京:清华大学出版社
  • ISBN:9787302313274
  • 出版时间:2013
  • 标注页数:493页
  • 文件大小:149MB
  • 文件页数:511页
  • 主题词:游戏程序-程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

Virtools引擎3D游戏程序设计PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第一部分 VSL脚本语言程序设计3

第1章 认识VSL3

1.1 VSL简介3

1.1.1 BB与VSL的关系3

1.1.2 VSL的优势3

1.1.3 VSL脚本语言与C语言的对比5

1.1.4 VSL与其他脚本语言的差异5

1.2 VSL脚本管理器5

1.2.1 VSL脚本管理器的使用5

1.2.2创造VSL脚本程序6

1.2.3带输入输出的VSL脚本程序7

1.2.4 VSL脚本程序的重命名、定位和删除10

1.2.5 VSL快捷键使用10

1.3 VSL语法描述11

1.3.1 VSL的变量和常量11

1.3.2 VSL的运算符12

1.3.3 VSL的表达式与语句13

1.3.4 VSL的赋值语句、声明语句和注释15

1.3.5 VSL的条件判断语句15

1.3.6 VSL的循环和控制语句20

1.3.7数组和多维数组25

第2章 VSL的函数28

2.1函数的定义与调用28

2.1.1函数的概念28

2.1.2定义函数29

2.1.3函数的调用29

2.1.4函数的重载30

2.2函数的参数及其返回值31

2.2.1形参和实参31

2.2.2函数值的返回32

2.3变量的作用域和存储类型33

2.3.1局部变量、全局变量和作用域33

2.3.2 VSL全局共享变量和全局静态变量35

2.3.3结构体和枚举类型36

2.4字符串类的使用39

2.4.1字符变量、字符串类型变量、字符数组和字符串类的区别39

2.4.2字符串类的定义与赋值39

2.4.3字符串的处理函数40

2.4.4字符串的应用41

第3章 VSL中的3D数学与变换以及简单几何体43

3.1向量43

3.1.1向量的概念43

3.1.2向量长度和归一化44

3.1.3向量的加减44

3.1.4向量和标量的乘法45

3.1.5向量的点积45

3.1.6向量的叉积45

3.1.7位置和位移向量46

3.2 VSL中的2D向量Vector2D46

3.2.1 Vector2D的方法46

3.2.2 Vector2D的应用48

3.3 VSL中的3D向量Vector50

3.3.1 Vector的方法50

3.3.2 Vector的应用50

3.4矩阵和Matrix51

3.4.1矩阵的概念51

3.4.2 Matrix的方法和应用52

3.5简单几何体53

3.5.1点、线、面53

3.5.2正方体54

3.5.3圆锥体和圆球55

3.5.4矩形55

第4章 Virtools中的2D实体60

4.1 2D帧Entity2D60

4.1.1 Entity2D与Rect60

4.1.2 Entity2D的应用60

4.2 2D精灵Sprite64

4.2.1 Sprite与Entity2D64

4.2.2 Sprite的应用65

第5章 灯光、材质和纹理68

5.1光68

5.1.1光的类型68

5.1.2用VSL设置光照69

5.1.3光的衰减属性69

5.1.4高光70

5.1.5色彩71

5.2材质的特性72

5.2.1物体表面材质属性72

5.2.2 3D物体填充模式73

5.2.3 Flat渲染和Gouraud渲染74

5.2.4 Alpha混合74

5.2.5 Alpha测试76

5.2.6纹理采样过滤77

5.2.7纹理寻址78

5.2.8多重纹理混合79

5.2.9纹理过滤和纹理寻址的显示例程80

5.3纹理的特性81

5.3.1纹理的插槽属性81

5.3.2天空盒纹理83

第6章 3D物体85

6.1 3D Entity85

6.1.1坐标系和3D物体85

6.1.2 3D Entity的位置、方向与缩放86

6.1.3物体的父子关系89

6.1.4物体的网格91

6.1.5 3D物体的屏幕坐标位置92

6.2 Mesh93

6.2.1 Mesh的应用93

6.2.2 Mesh与材质、纹理贴图95

6.2.3纹理坐标:(u,v)坐标95

6.2.4 Mesh的通道材质特性96

6.3 3D精灵Sprite 3D97

6.3.1 3D精灵和公告板97

6.3.2 3D精灵的应用97

第7章 角色动画99

7.1角色99

7.1.1角色的概念99

7.1.2播放角色动画99

7.1.3角色的次级动画播放102

7.1.4角色的身体104

7.2角色动画105

7.2.1如何确定角色动画是否有问题105

7.2.2角色的动画帧105

7.2.3角色动画的一些设置108

7.2.4用VSL设置角色动画110

7.3角色动画的应用111

第8章 摄像机116

8.1相机的基本属性116

8.1.1相机的投影116

8.1.2相机的视锥118

8.1.3目标相机119

8.2相机的应用119

8.2.1第一人称相机119

8.2.2第三人称相机122

第9章 曲线与网格126

9.1 3D曲线126

9.1.1 3D曲线和3D曲线节点的概念126

9.1.2 3D曲线的应用128

9.1.3 3D曲线节点的详细设置129

9.2 2D路径131

9.3网格133

9.3.1网格和层133

9.3.2网格的VSL应用133

第10章 表、组和场景137

10.1表137

10.1.1表的数据存储类型137

10.1.2使用VSL创建表和存储数据138

10.1.3通过VSL提取表中数据和删除行列140

10.1.4通过VSL对表中数据的操作142

10.2组143

102.1组的意义143

102.2组的应用143

10.3场景144

10.3.1场景的概念144

10.3.2场景技术的简单应用146

10.4数据容器147

10.4.1数据容器的使用147

10.4.2 String、StringTokenizer和ArrayString150

第11章 声音与视频152

11.1声音的基本运用152

11.1.1声音的特性152

11.1.2播放声音的方法153

11.1.3 2D声音和3D声音154

11.2声音的高级应用155

11.2.1锥形的听觉范围155

11.2.2声音的多重播放157

11.3视频的播放158

11.3.1视频的属性158

11.3.2视频的播放159

第12章 VSL中的bc161

12.1工厂的概念161

12.1.1工厂的作用161

12.1.2工厂的产品161

12.1.3工厂如何复制产品162

12.1.4工厂如何删除产品164

12.2属性控制165

12.2.1属性的概念165

12.2.2属性的操作165

12.3 be的其他功能168

12.3.1取得场景物件168

12.3.2 be的其他一些小功能172

12.4输入管理器174

12.4.1鼠标的使用174

12.4.2键盘的使用176

12.5渲染设备179

12.5.1渲染设备的概念179

12.5.2如何设置雾179

12.5.3鼠标拾取物件181

12.5.4 2D屏幕与3D位置185

12.6 ac188

12.6.1 ac的概念188

12.6.2如何创建和使用ac188

第二部分 高级渲染语言193

第13章 Virtools中的Shader193

13.1认识Shader193

13.1.1 Shader的诞生193

13.1.2 Virtools中的Shader193

13.1.3 Virtools中Shader的执行过程194

13.1.4 Shader编辑器195

13.2 Shader语言196

13.2.1创建第一个Shader程序196

13.2.2顶点着色器和像素着色器198

第14章 光照200

14.1参数200

14.1.1设置自发光参数的Virtools写法200

14.1.2设置自发光参数的HLSL写法201

14.2光照203

14.2.1光照的原理203

14.2.2光照Shader204

14.2.3光照的HLSL写法206

14.3镜面反射210

14.3.1一盏灯的镜面反射光照210

14.3.2两盏灯的镜面反射光照212

第15章 纹理贴图光照214

15.1简单的纹理渲染214

15.1.1 Virtools纹理渲染的Shader代码214

15.1.2 HLSL纹理渲染215

15.1.3带光照的纹理渲染216

15.1.4逐像素地纹理渲染217

15.1.5两层纹理渲染220

15.2凹凸纹理映射221

15.2.1凹凸纹理映射的由来221

15.2.2凹凸纹理映射的原理222

15.2.3凹凸纹理映射的实现222

15.2.4改良的凹凸纹理映射226

15.3环境映射230

15.3.1环境映射的原理和立方贴图纹理230

15.3.2 Virtools中如何生成立方体贴图231

15.3.3反射环境映射231

15.3.4折射环境映射234

15.3.5菲涅尔效果和颜色色散237

15.3.6环境映射和凹凸纹理映射的结合241

15.4 2D Frame的Shader244

15.4.1 2D帧的多次渲染244

15.4.2 2D帧的旋转246

第16章 Shader的效果250

16.1 Shader实现动画效果250

16.1.1脉动的茶壶——顶点动画250

16.1.2舞动的花朵——纹理UV动画252

16.1.3波光粼粼的浅水区——序列帧动画256

16.2简单的修饰效果258

16.2.1广告墙变换效果258

16.2.2海底焦散261

16.2.3画面模糊效果265

16.2.4景深效果268

16.2.5地球大气效果271

16.3简单的几个其他效果276

16.3.1灼烧276

16.3.2发光277

16.3.3绽放280

16.3.4毛发284

16.3.5灰度288

第17章 Shader的应用290

17.1地形渲染290

17.1.1 Texture Splatting原理简介290

17.1.2 Texture Splatting对地形建模的一点要求291

17.1.3 Shader代码剖析291

17.2运动模糊296

17.2.1运动模糊原理简介296

17.2.2设置需要配合的资源296

17.2.3运动模糊的Shader代码297

17.3带倒影的水面渲染300

17.3.1渲染水面的步骤300

17.3.2水面的设置302

17.3.3水的Shader代码303

第18章 Shader的其他应用307

18.1渲染车307

18.1.1渲染车灯307

18.1.2渲染车轮311

18.1.3渲染车窗314

18.2渲染场景317

18.2.1带法线的地形渲染317

18.2.2树的渲染322

18.2.3树叶与草的渲染323

第三部分 Virtools SDK329

第19章 认识Virtools SDK329

19.1 Virtools的体系结构329

19.1.1 SDK的介绍329

19.1.2帧循环的介绍331

19.1.3主要对象之间的关系332

19.2使用SDK创建BB333

19.2.1行动前的准备333

19.2.2通过向导创建BB335

19.2.3 BB源文件的解释338

19.2.4编译生成BB344

第20章 用SDK开发BB346

20.1 BB的参数346

20.1.1 BB的3种参数346

20.1.2 BB参数值的获取和赋值347

20.1.3改变BB参数的数量和类型349

20.2 BB的输入输出端口354

20.3自定义类型的参数358

20.3.1自定义类型的参数说明358

20.3.2创建简单的自定义参数359

20.3.3结构体类型参数的处理函数361

20.4使用SDK的BB367

20.4.1修改PushBotton和DragAndDrop367

20.4.2转向功能368

20.4.3有层级关系的中文显示370

第21章 用SDK扩展功能379

21.1多线程的应用379

21.1.1进程和线程379

21.1.2 VxThread、VxMutexl、VxMutexlLock380

21.1.3多线程的应用381

21.2管理器的开发使用391

21.2.1管理器391

21.2.2 Manager代码解释394

21.2.3 Virtools与ADO的整合395

21.2.4创建ADOACCESSManager397

21.2.5在BB中调用管理器的方法404

21.2.6管理器功能的整合406

21.3为VSL绑定新类型408

21.3.1绑定新类型的规则408

21.3.2绑定的细则409

21.3.3绑定的简单范例414

21.4第三方声音引擎与Virtools的整合415

21.4.1整合第三方声音引擎的原因415

21.4.2第三方声音引擎使用介绍416

21.4.3不同喇叭播放不同声音417

21.5网络引擎与Virtools的整合425

21.5.1整合网络引擎的原因425

21.5.2使用网络引擎创建服务器425

21.5.3网络模块管理器430

21.5.4连接到服务器的BB436

21.5.5发送消息到服务器的BB438

21.5.6处理服务器消息的BB439

第22章 用SDK开发新功能442

22.1读写注册表442

22.1.1注册表的简单介绍442

22.1.2读写注册表功能描述443

22.1.3访问注册表的BB444

22.2文件目录的操作446

22.2.1列举所有指定类型文件446

22.2.2记录日志文件449

22.2.3设置打印451

22.2.4复制移动文件455

22.3 Virtools与串口通信457

22.3.1串口通信类457

22.3.2定义串口通信协议458

22.3.3串口通信管理器461

22.3.4启用串口BB462

22.3.5从串口中得到数据463

22.3.6向串口写数据464

22.4 Virtools与Flash整合466

22.4.1和Flash整合的原因466

22.4.2 Flash的封装466

22.4.3封装一个播放swf文件的BB467

第23章 发布应用程序473

23.1编译生成独立的执行程序473

23.1.1关于执行程序的介绍473

23.1.2编译生成Virtools自带的播放器474

23.1.3 CustomPlayer类分析474

23.1.4 CustomPlayerApp类分析475

附录A VSL全局函数478

附录B Virtools参数类型GUID481

附录C 枚举CK BEHAVIOR FLAGS的标识484

附录D CKBehavior::SetCallbackFunction回调标准486

附录E Virtools消息使用须知487

E.1消息的接收487

E.2消息的参数488

附录F 常用类的标识符类CK_CLASSID491

参考文献493

热门推荐