《游戏开发入门:数学和物理》徐芝琦【文字版_PDF电子书_推荐】
内容简介:
本书围绕着游戏开发入门必须掌握的数学和物理知识,展开了非常详细及生动的阐述。本书的每个重要知识点都配备了内容丰富、翔实的游戏及视觉案例,帮助读者从浅到深、由点及面地理解和掌握在游戏开发入门时所需基础数学和物理知识。 本书第1章至第6章,主要介绍了游戏开发入门必备的基础数学知识,从最基础的坐标系、向量和矩阵及线性变换,深入到几何图元及几何检测。本书第7章至第11章,则围绕着游戏开发入门所需的基础物理知识,从线性运动、牛顿力学,深入到碰撞、旋转运动,最后进行综合应用,即粒子系统基础知识的介绍。本书每一章的代码案例都是基于Processing平台设计实现的,操作方便且易学易懂,这些案例详细阐述了在游戏开发时如何用代码思维重新诠释基础理论知识,并佐以生动的可视化结果。作为入门图书,本书着眼于如何将基础的理论知识转化为游戏开发中的关键技术,对于读者来说,是理论指导实践的*参考。本书既适用于高等学校计算机及相关专业,也可作为普通读者学习游戏开发时的数学和物理知识应用自学教材和参考书,还适用于读者进行计算思维的训练。
作者简介:
徐芝琦,女,浙江传媒学院新媒体学院教师,现任公共计算机教学部主任。1999年进入浙江大学,度过了本科、硕士和博士研究生的学习阶段,于2008年获得了计算机应用技术专业的博士学位。2008至2012年曾在华南理工大学计算机科学与工程学院及广东省计算机网络重点实验室工作。目前的主要研究方向为基于游戏的学习、可视化编程与计算思维、数字交互艺术与技术等。中国高校虚拟现实产业联盟成员。主持并参与了多项国家、省部级科研项目以及教学改革项目,发表高水平被索引论文若干篇。指导大学生各级创新基金和新苗人才计划项目近10项,带领学生参加移动应用开发大赛、全国计算机设计大赛、浙江省多媒体设计大赛等,获得多个全国一等奖、二等奖以及省级奖项。多次获得校级教学技能竞赛奖项以及多个荣誉称号(三育人、优秀班主任等)。
张帆,男,浙江传媒学院新媒体学院教师,主要研究方向为数字娱乐交互技术。中国高校虚拟现实产业联盟、中国高校游戏设计联盟成员。国家自然科学基金项目"盲人电子化阅读的触感建模与交互方法研究”、浙江省科技厅"面向盲人的移动终端新型触感交互技术研究”项目主要成员。指导大学生创新基金和新苗人才计划项目12项,带领学生参加微软国际创新杯(Imagine Cup)大赛、全国计算机设计大赛、浙江省多媒体设计大赛、全国信息技术应用水平大赛等,获得全国一等奖8项,二等奖20项,省级奖项若干。出版过多部教材,包括:《计算机游戏程序设计(基础篇)(第3版)》,电子工业出版社,2016年(国家精品课教材);《游戏策划与设计》,清华大学出版社,2016年;《Unity3D游戏开发基础》,浙江工商大学出版社,2013年(第2版即将出版);《手机游戏的设计开发》,中国广播影视出版社,2012年。目前负责学校"小目标”游戏设计工作室,带领学生设计开发面向市场的游戏和VR相关作品。曾获2012年度浙江传媒学院"三育人”先进个人,2013年度校学科竞赛和科技创新评优优秀指导教师称号。
目 录:
目 录
第1章 笛卡儿坐标系和极坐标系
1.1 2D笛卡儿数学
1.2 从2D到3D
1.3 Processing及其坐标系
1.3.1 Processing
1.3.2 Processing中的2D和3D坐标系
1.4 极坐标系
1.4.1 2D极坐标系
1.4.2 极坐标和笛卡儿坐标的转换
习题1
第2章 向量
2.1 向量与标量
2.2 向量的定义
2.2.1 数学定义
2.2.2 几何定义
2.3 向量的表达
2.4 向量与点
2.5 向量运算
2.5.1 零向量和负向量
2.5.2 模长
2.5.3 标量与向量的乘法
2.5.4 向量的加减法
2.5.5 向量点乘
2.5.6 向量叉乘
2.6 PVector
2.6.1 定义与源代码
2.6.2 add函数
2.6.3 sub函数
2.6.4 normalize函数
2.6.5 mult函数
2.6.6 dot函数
2.6.7 cross函数
习题2
第3章 矩阵运算
3.1 矩阵的数学定义
3.1.1 矩阵的维数和记法
3.1.2 方阵
3.1.3 相等矩阵
3.1.4 转置矩阵
3.1.5 矩阵的加减运算
3.1.6 标量和矩阵的乘法运算
3.1.7 矩阵相乘
3.1.8 行列式
3.1.9 矩阵的逆
3.2 向量和矩阵
3.2.1 行向量与列向量
3.2.2 向量与矩阵的乘法
3.3 矩阵的几何意义
3.4 PMatrix
习题3
第4章 矩阵和仿射变换
4.1 变换物体和变换坐标系
4.2 齐次坐标和齐次矩阵
4.2.1 齐次坐标
4.2.2 齐次矩阵
4.3 平移
4.3.1 2D和3D中的平移
4.3.2 translate函数
4.4 缩放
4.4.1 沿坐标轴的缩放
4.4.2 沿任意轴的缩放
4.4.3 正交投影
4.4.4 镜像
4.4.5 scale函数
4.5 旋转
4.5.1 2D旋转
4.5.2 3D旋转
4.5.3 rotate函数
4.6 组合变换
习题4
第5章 几何图元
5.1 直线、线段和射线
5.1.1 直线和线段
5.1.2 射线和线段
5.1.3 line函数
5.2 圆和球
5.2.1 定义
5.2.2 ellipse函数
5.2.3 sphere函数
5.3 平面
5.3.1 定义
5.3.2 Processing中平面的绘制
5.4 三角形
5.4.1 定义
5.4.2 triangle函数
5.5 多边形
5.5.1 定义
5.5.2 Processing中多边形的绘制
5.6 矩形边界框
5.6.1 定义
5.6.2 box函数
习题5
第6章 几何检测
6.1 直线上的最近点
6.1.1 2D直线上的最近点
6.1.2 射线上的最近点
6.2 圆或球上的最近点
6.2.1 原理
6.2.2 模拟
6.3 平面上的最近点
6.3.1 原理
6.3.2 模拟
6.4 直线的两两相交
6.4.1 2D中两条直线的相交检测
6.4.2 3D中两条射线的相交检测
6.4.3 模拟
6.5 直线与圆或球的相交
6.5.1 原理
6.5.2 模拟
6.6 直线与平面的相交
6.6.1 原理
6.6.2 模拟
6.7 圆或球的两两相交
6.7.1 原理
6.7.2 模拟
6.8 球与平面的相交
6.8.1 原理
6.8.2 模拟
习题6
第7章 线性运动
7.1 速度
7.1.1 平均速度
7.1.2 瞬时速度
7.2 加速度
7.2.1 平均加速度
7.2.2 瞬时加速度
7.3 运动方程
7.3.1 运动方程定义
7.3.2 Processing中的运动实现
7.4 抛体运动
7.4.1 原理
7.4.2 模拟
习题7
第8章 牛顿力学
8.1 牛顿三大定律
8.1.1 牛顿第一定律
8.1.2 牛顿第二定律
8.1.3 牛顿第三定律
8.2 力
8.2.1 重力与支持力
8.2.2 摩擦力
8.2.3 风阻力和流体阻力
8.2.4 引力
习题8
第9章 动量和碰撞
9.1 与静止物体的碰撞
9.1.1 轴对齐向量反射
9.1.2 非轴对齐向量反射
9.2 动量定理
9.2.1 动量
9.2.2 冲量
9.2.3 动量定律
9.2.4 动量守恒定律
9.3 线性碰撞建模
9.3.1 弹性碰撞模型
9.3.2 非对心碰撞模型
习题9
第10章 旋转运动
10.1 角运动
10.1.1 基本概念
10.1.2 模拟
10.2 旋转力学
10.2.1 基本概念
10.2.2 模拟
习题10
第11章 粒子系统基础
11.1 粒子系统的组成
11.1.1 功能模块
11.1.2 更新循环阶段
11.2 单个粒子的模拟
11.3 粒子系统的模拟
11.3.1 定义粒子系统
11.3.2 与力的整合
11.3.3 复杂粒子
习题11
参考文献