0 主要内容
1)游戏的基本流程与体系结构
2)二维游戏的基本编程技术
- 游戏框架
- 游戏背景地图
- 用户交互
- 碰撞检测及物理模拟
- 脚本
3)三维场景的组织与绘制
- 场景图
- 几何剖分
- LOD
4)游戏中的人工智能
- 游戏AI发展与分类
- 智能体Agent与基本感官系统
- A*算法
- FSM
- 模糊逻辑
1 绪论
从游戏程序员视角看游戏
游戏是一个具有某种 逻辑 和某些 数据点的结合体
计算机游戏:
计算机游戏是一种娱乐活动,是本身具有 特定的流程模式、规则条件、身心娱乐与输赢胜负 的一种行为表现
游戏设计:
游戏设计是决定游戏应该是什么的行为,是一个复杂的网络,包括创新、心理学、技术、艺术和商业
游戏设计四要素:
技术、机制、故事、美学
达尔文难度曲线:
玩家一开始就会接触到所有游戏机制(至少是多数游戏机制),并在随后的任务中有效使用这些机制
心流:
将个鞥精神力完全投注在某件活动上的心理状态;心流产生时会有高度的兴奋及充实感
家用游戏机发展:
- 71年,第一台专用游戏机《电脑空间》
- 72年,雅达利公司建立,《Pong》
- 83年,任天堂 红白机
- 92年,《德军总部》3D电子游戏新时代
- 97年,具有MMX指令的CPU及相关显卡,改进游戏画面,促进计算机游戏发展
计算机游戏发展史
- 61年,PDP-1上的《太空大战》
- 78年,TRS-80上的《冒险岛》
- 80年代中期,以“巫术”(计算机游戏史第一款角色扮演)和“创世纪”为代表的游戏类型丰富化
- 90年代初,光盘的大容量存储空间与多媒体技术对游戏声画的促进
- 90年代中后期,游戏业界兼并重组u,影响游戏开发的创意
- 97年,《网络创世纪》第一个网络游戏
- 07年,《战神世界》《轩辕英雄》最早的一批网页游戏虽然是文字,但玩起来想像空间很大
RPG游戏的框架要点:
- 人物描写
- 职业特色
- 剧情事件
- 宝物收集
体育游戏的三个层次
- 管理
- 战术
- 技能
数值化与功能化行为动作:
- 数值化行为动作:动作与动作间只有数值大小点的差异
- 功能化行为动作:重在探索,不容易有乏味感与同质化
如何避免同质化游戏:
成因:选择安全,待在舒适区
采用游戏领域之外的原则、方法和实例
2 游戏编程概述
数据驱动理念:
把程序中的控制信息从程序中分离出来,形成抽象控制程序和控制信息表两部分
- 抽象控制程序是可重用的,在具体的应用中不必改变
- 控制信息表是可变的,其内容不同,程序的运行结果就不同
3 二维图像游戏基础
以Windows API + GDI为主体的编程框架
- 利用WinMain()创建游戏入口
- 注册窗口类 WNDCLASSEX
- 创建窗口 CreateWndowEXx
- 显示和刷新窗口 ShowWindow、UpdateWindow
- 游戏消息循环 PeekMessage
- 游戏事件处理函数 WndProc
2D地图种类
- 正交
- 等轴
- 交错等轴
- 交错六边形
平面地图绘制时万片贴图的坐标计算
行编号 = 索引值 / 每一行的图块个数
列编号 = 索引值 % 每一行的图块个数
左上角x坐标 = 列编号 * 图块宽度
左上角y坐标 = 行编号 * 图块高度
视差卷轴
使每个图层一不同的速度运动,模拟景物远近不同的层次感
4 精灵动画
5 场景管理
常见的包围体技术
- 包围球
- AABB包围盒
- OBB包围盒
- 物体的凸包围体(特例k-dop 离散有向多面体)
常见四种细节层次模型LOD
- 简单取舍型
- 平滑过渡型
- 静态
- 动态
BSP树
空间中的任意平面将空间一分为二,该平面是分割面,可以建立对整个几何场景和场景中景物几何的描述
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。