描述
开 本: 16开纸 张: 轻型纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787121319679
第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
参考文献
前 言
本书是一本专门介绍基础数学和物理知识如何应用于游戏开发的书。数学与物理,是游戏开发中非常重要且不可或缺的基础。尽管我们在中学和大学学习了非常多的数学和物理理论知识,但是这些知识或者公式并不能直接应用于实际的游戏开发中。那么如何把这些知识用起来,尤其是用在游戏开发中呢?相信这本书一定能帮到大家。
本书的目的是帮助读者通过学习和训练,用计算思维重新理解,用代码重新演绎基础数学和物理知识。书中结合实例对知识点展开了非常详细及生动的阐述,每个重要知识点都配备了内容丰富、翔实的游戏及视觉案例,以期帮助读者从浅到深、由点及面地理解和掌握游戏开发入门所需的基础数学和物理知识。
适合读者
作为入门图书,本书着眼于如何将基础的理论知识转化为游戏开发中的关键技术,对于读者来说,是理论指导实践的参考。本书既适用于高等学校计算机及相关专业,也可作为普通读者学习游戏开发时的数学和物理知识应用自学教材和参考书,还适合读者进行计算思维的训练。
阅读本书需要的基础知识
本书不要求读者都具有理工科背景,但是要求读者充分理解并掌握中学阶段学习的基础物理学知识。为了能让读者对本书的数学部分有一个更深入的理解,读者需要掌握一些基本的代数和几何知识,如三角函数、函数和变量、代数运算法则等。另外,尽管本书的实验平台Processing并不要求读者有任何编程的基础,但是如果读者能对Processing语法有一个基本的了解或者有Java基础,动手实践时上手会更快。
本书概览
本书第1章至第6章,主要介绍了游戏开发入门的基础数学知识,从基础的坐标系、向量和矩阵及线性变换,深入到几何图元及几何检测。本书第7章至第11章,则围绕着游戏开发入门所需的基础物理知识,从线性运动、牛顿力学,深入到碰撞、旋转运动,后进行综合应用,即粒子系统基础的介绍。本书每一章的代码案例都是基于Processing平台来设计实现的,操作方便且易学易懂,这些案例详细阐述了在游戏开发时如何用代码思维重新诠释基础理论知识,并佐以生动的可视化结果。
教学资源
本书包含二维码,通过扫描二维码,即可直接浏览设计效果,阅读或下载拓展学习资源。同时,本书还配套相关教学资源包,包括教学课件、案例的完整源代码等,读者可登录华信教育资源网(www.hxedu.com.cn),注册并免费下载。
致谢
感谢本书的编辑,电子工业出版社戴晨辰,给予了非常有益的评析与建议。
感谢沈学文老师不仅提出了非常宝贵的意见,还对本书数学部分的内容进行了详细校对。另外,还要感谢我的同事们,张帆、周忠成、潘瑞芳、俞承杭、杜辉、谢昊、林生佑、张小红、马同庆、舒莲卿、钱归平、莫小梅、荆丽茜,感谢大家对本书的鼓励和支持。
感谢我的学生,刘圣男、刘怡东、陈婧、张霖雲,不仅帮助我完成了公式的调整与校对,还为本书提供了很多有益启发。
特别感谢我的家人,尤其是我的母亲,为了支持我的工作,在家庭生活中付出了很多心血和精力。
本书是集体智慧的结晶,但书中难免存在疏漏或不妥之处,恳请广大读者批评指正。
编 者
评论
还没有评论。