第1章 3D游戏开发简介 1
一、计算机游戏产业 1
3D游戏的类型和风格 2
游戏平台 13
游戏开发角色 15
发布游戏 20
二、3D游戏的元素 21
游戏引擎 21
脚本 22
图形用户界面 25
模型 26
纹理 26
声音 27
音乐 27
支持底层结构 28
三、Torgue游戏引擎 30
描述 30
本书使用的Torque 36
安装Torque 37
四、本章小结 39
第2章 初识编程 41
一、UltraEdit-32 41
程序安装和配置 42
创建项目和文件 43
查找和替换 47
在文件中查找 50
grep 51
书签 53
宏 56
回顾UltraEdit 58
二、用程序控制计算机 58
三、编程概念 61
如何创建和运行示例程序 62
Hello World 63
表达式 67
变量 68
运算符 76
循环 80
函数 82
条件表达式 88
分支 92
调试并解决问题 100
最佳的实践方式 104
四、本章小结 105
第3章 3D编程概念 107
一、3D概念 107
坐标系统 108
3D模型 111
3D形体 114
二、3D模型显示 116
变换 116
渲染 121
场景图 129
3D音频 131
三、3D编程 131
由程序控制的转变 132
由程序控制的旋转 139
由程序控制的缩放 140
由程序控制的动画 141
3D音频 144
四、本章小结 148
第4章 游戏编程 149
一、Torque Script 149
字符串 150
对象 151
数据块 154
二、游戏结构 156
三、服务器和客户机设计问题 160
四、公共功能 160
五、准备工作 161
六、根主模块 161
七、控制主模块 167
八、初始化 169
九、客户机 171
十、服务器 177
十一、玩家 179
十二、运行Emaga4 182
十三、本章小节 184
第5章 运行游戏 185
一、修改 185
文件夹 185
模块 186
二、控制模块 187
control/main.cs 187
三、客户机控制模块 188
control/client/client.cs 188
control/client/interfaces/menuscreen.gui 190
control/client/interfaces/playerinterface.gui 194
control/client/interfaces/splashscreen.gui 197
control/client/misc/screens.cs 198
control/client/misc/presetkeys.cs 200
四、服务器控制模块 204
control/server/server.cs 204
control/server/players/player.cs 210
control/server/weapons/weapon.cs 217
control/server/weapons/crossbow.cs 221
control/server/misc/item.cs 228
五、运行Emaga5 233
六、本章小结 234
第6章 网络 235
一、直接发送消息 235
CommandToServer 236
CommandToClient 237
直接发送消息小结 239
二、触发器 239
区域触发器 240
动画触发器 240
武器状态触发器 240
玩家事件控制触发器 240
三、GameConneetion消息 242
GameConnection消息做什么 243
细节 243
四、查找服务器 248
修改代码 249
新模块 250
五、专用服务器 262
根主模块 262
Control—Main模块 263
Control—Initialize模块 263
六、Emaga6地图文件夹 265
测试Emaga6 265
测试直接发送消息 266
七、本章小结 267
第7章 公共脚本 269
一、游戏初始化 269
二、选出的公共服务器模块 274
服务器模块 274
消息模块 275
任务载入模块 276
MissionDownload模块 281
ClientConnection模块 286
Game模块 292
三、选中的公共代码客户机模块 295
Canvas模块 295
Mission模块 298
MissionDownload模块 299
Message模块 303
四、结束语 306
五、本章小结 310
第8章 纹理 311
一、使用纹理 311
二、Gimp 2 317
安装Gimp 2 318
开始 319
处理文件 328
Gimp的功能 339
图层 340
工具箱 343
工具选项 346
填充工具 348
其他工具 350
三、本章小结 352
第9章 外皮 353
一、UV展开 353
二、外皮创建过程 354
三、制作汤罐外皮 356
汤罐蒙皮步骤 357
添加文本 367
汤罐蒙皮试验 368
四、制作汽车的外皮 371
沙漠巡逻车的“兜风” 371
轻便小汽车的蒙皮过程 372
轻便小汽车蒙皮试验 379
五、制作玩家外皮 380
头和颈 381
头发和手掌 387
衣服 392
调整外皮大小 395
六、本章小结 396
第10章 创建GUI元素 397
一、控件 399
GuiChunkedBitmapCtrl 400
GuiControl 402
GuiTextCtrl 403
GuiButtonCtrl 404
GuiCheckBoxCtrl 405
GuiScrollCtrl 406
GuiTextListCtrl 408
GuiTextEditCtrl 409
二、Torque GUI Editor 410
编辑器概述 410
三、创建界面 415
四、本章小结 417
第11章 结构材质纹理 419
一、资源 420
照片 420
原创图像 428
二、比例问题 429
三、平铺 430
四、纹理类型 433
不规则纹理 434
粗糙纹理 434
卵石纹理 434
木材纹理 435
光滑纹理 435
图案纹理 436
织物纹理 436
金属纹理 436
反射纹理 437
塑料纹理 437
五、本章小结 438
第12章 地形 439
一、地形介绍 439
地形特征 439
地形数据 440
二、地形建模 442
高度图 443
地表物 444
平铺 445
三、创建地形 448
高度图方法 448
地表物应用 462
四、本章小结 468
第13章 MilkShape建模 469
一、MilkShape 3D 469
安装MilkShape 3D 470
MilkShape 3D GUI 470
视图导航 471
视图大小与方向 472
再次介绍“汤罐” 474
菜单 483
工具箱 493
关键帧 502
Preferences对话框 504
其他功能 505
二、UVMapper 506
File菜单 506
Edit菜单 506
Help菜单 508
UV贴图 509
三、本章小结 516
第14章 制作角色模型 517
一、建模技术 517
形体图元 517
方框法 518
递增多边形构造法 518
轴向挤压 519
任意挤压 519
地形形体贴图 519
混合法 520
Torque建模 520
二、基本“Hero”模型 522
准备工作 522
头部 523
躯干 534
将头部与躯干匹配 545
腿 548
将腿整合到躯干上 550
胳膊 551
将胳膊整合到躯干上 559
测试工具链 561
三、“Hero”的皮肤 564
四、角色动画 572
在Torque中制作动画角色 573
创建骨架 575
安装:连接骨架 580
嵌入式动画 586
测试模型 604
动画序列文件 608
五、MilkShape 3D的DTS Exporters 611
标准的Torgue游戏引擎(DTS)Exporter 611
增强的Torque DTSPlus Exporter 616
六、本章小结 624
第15章 制作交通工具模型 625
一、交通工具模型 626
草图 626
模型 628
二、车轮 649
三、测试轻型小汽车模型 650
四、本章小结 652
第16章 制作武器和物品 653
一、药箱 653
模型 653
测试药箱 656
二、岩石 660
测试岩石 663
三、树 664
实体树 665
测试实体树 670
布告板树 671
四、Tommy枪 674
制作模型 674
为Tommy枪蒙皮 680
测试Tommy枪 684
Tommy枪脚本 684
五、本章小结 685
第17章 制作结构体 687
一、CSG建模 688
Torque Constructor 691
安装Constructor 691
Cook's Tour 693
二、快速启动 698
三、建造桥梁 707
四、建造房屋 712
五、本章小结 718
第18章 制作游戏世界的环境 719
一、天空 720
天空体 720
二、天空任务对象 731
三、云层 733
云朵详述 734
云朵纹理 734
四、水 737
五、雾 737
六、暴风雨 738
七、水块 749
八、地形成型 752
九、本章小结 755
第19章 创建并编排音效 757
一、Audacity 758
安装Audacity 758
使用Audacity 759
Audacity参考资料 762
二、OpenAL 774
三、音频配置文件和数据块 775
音频描述 775
进行试验 778
四、Koob 779
五、本章小结 782
第20章 游戏音效和音乐 783
一、玩家音效 783
沙沙声 785
脚步声 788
说话声 790
二、武器音效 794
安装Mission Editor 794
弓弩音效 797
汤姆枪准备 797
三、车辆音效 806
四、环境音效 812
五、界面音效 815
六、音乐 817
七、本章小结 818
第21章 创建游戏任务 821
一、游戏设计 821
需求 822
约束 823
Koob 824
二、Torque任务编辑器 826
文件菜单 826
编辑菜单 826
镜头菜单 828
其他菜单 828
场景编辑器 828
贴图编辑器 831
贴图地形编辑器 832
贴图纹理编辑器 833
任务区域编辑器 834
三、创建场景 835
粒子 835
地形 847
物品和结构体 849
四、本章小结 853
第22章 游戏服务器 855
一、玩家角色 855
玩家产生 855
车辆装配 857
模型 858
服务器代码 860
二、车辆 865
模型 865
数据块 865
三、触发事件 869
创建触发器 869
计分 873
四、本章小结 880
第23章 游戏客户机 881
一、客户机界面 882
MenuScreen界面 882
SoloScreen界面 885
Host界面 886
FindServer界面 886
ChatBox界面 887
MessageBox界面 891
二、客户机代码 893
MenuScreen界面代码 894
SoloScreen界面代码 894
Host界面代码 900
FindServer界面代码 900
ChatBox界面代码 903
MessageBox界面代码 906
三、游戏循环 908
四、最后的修改 910
五、本章小结 911
第24章 游戏结束 913
一、测试 914
基本测试 914
退化 914
游戏测试 915
测试工具模块 915
二、主机服务器 916
三、专用服务器 916
四、FPS游戏想法 917
五、其他类型 918
六、修改并扩展Torque 918
七、放手去做吧 919