《游戏编程数学与物理基础》学习笔记

《游戏编程数学与物理基础》学习笔记

ID:5418455

大小:167.91 KB

页数:19页

时间:2017-12-10

《游戏编程数学与物理基础》学习笔记_第1页
《游戏编程数学与物理基础》学习笔记_第2页
《游戏编程数学与物理基础》学习笔记_第3页
《游戏编程数学与物理基础》学习笔记_第4页
《游戏编程数学与物理基础》学习笔记_第5页
资源描述:

《《游戏编程数学与物理基础》学习笔记》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、点和直线点的表示:在2D平面上用一个2元组表示(x,y)在3D位置上用一个3元组表示(x,y,z)记得要统一x,y,z轴的起点和方向。直线的属性:斜率Dyy2-y1斜率slope==Dxx2-x1性质①斜率相等的两条直线平行②斜率为负值,表示直线沿左上角到右下角延伸③斜率为正值,表示直线沿左下角到右上角延伸④斜率为0,直线为水平线,和x轴平行⑤分母为0,表示直线为垂直型,和y轴平行⑥相互垂直的直线斜率的积为-1直线的标准表示是Ax+By=C,斜率为m=-A/B斜截式是y=mx+b,斜率为m点斜式是(y–y1)=m(x–x1),斜率为m对于同一平面上的两条直线组成的线性方程组,其解的

2、情况如下:①如果两直线的斜率不相等,则有一组解,该解为两直线交点;②如果两直线的斜率以及在y轴上的截距相等,则有无穷组解,即两直线重叠;③如果两直线的斜率以及在y轴上的截距不相等,则无解,即两直线平行。相关几何知识1两点间的距离在人工智能程序中,智能体可以通过判断敌人与自己的距离来决定发动攻击的时机。2D场景中的距离公式:设点P1(x1,y1)和P2(x2,y2)分别为线上的点,他们的距离d的计算方法如下:22d=(x-x)+(y-y)21213D场景中的距离公式:222d=(x-x)+(y-y)+(z-z)2121212两点的中点坐标设有点P1(x1,y1)和P2(x2,y2),

3、两点的中点P3的坐标是:x+xy+y1212p=(,)3223抛物线抛物线总是轴对称的。有两个因素决定了抛物线的形状,第一是顶点,是抛物线的与对称轴的交点;第二个是对称轴。抛物线有2种形状,一种是对称轴垂直,一种是对称轴水平。对称轴垂直的抛物线方程:2y=a(x-h)+k顶点是(h,k),对称轴为x=h对称轴水平的抛物线方程:2x=a(y–k)+h顶点是(h,k),对称轴为y=k常数a代表了抛物线的开口方向和开口大小。22如果a是正数,对于y=a(x-h)+k的抛物线来说开口向上,对于x=a(y–k)+h的抛物线来说开口向右。22如果a是负数,对于y=a(x-h)+k的抛物线来说开

4、口向下,对于x=a(y–k)+h的抛物线来说开口向左。a的绝对值越大,开口越小。4圆和球圆是所有到定点长度等于定长的点的集合,这个定长称为半径,定点称为圆心。222圆的方程:(x-h)+(y-k)=r圆心是(h,k),半径是r球是一个圆绕着圆心旋转所得到的。2222球体的方程:(x-h)+(y-k)+(z-l)=r圆心是(h,k,l),半径是r使用方程时应注意圆心坐标的正负号。5在碰撞检测中的应用可以在游戏中利用圆或球的边界进行碰撞检测。当然也可以利用其他图形。不过圆和球都可以方便地进行数学计算,它们在检测的速度上也优于其他图形。虽然精确度不高,但是可以作为外围检测。两圆之间,如果

5、两圆心的距离小于两圆的半径和,即发生碰撞。222222设两圆方程分别为:(x–h1)+(y–k1)=r1和(x–h2)+(y–k2)=r2。如果:22(h-h)+(k-k)£(r+r),则两圆发生碰撞。212112由于开方运算会占用大量的处理器资源,所以建议使用平方进行比较。利用圆边界进行碰撞检测是一种较快的方法,但是极有可能会产生错误的碰撞检测结果,所以避免错误的方法是寻找一种更适合的图形来检测。只要这个图形可以用数学公式表示出来。也可以使用多重圆形进行多重检测,先检测外面的圆,如果发生碰撞则检测内部的圆,减小错误判断的几率。但多重检测会消耗更多的CPU时间。三角函数1角度和弧度

6、每个角都由相交于一点的两条射线组成,我们把其中一条射线称为始边,另一条称为终边。而角的始边总是沿着x轴的正方向。从x轴正方向开始,沿逆时针方向进行旋转的角称为正角,沿顺时针方向旋转的角称为负角,注意该旋转也将决定了终边的位置。。R一个周角是360,也可以表示成2p。这是角度和弧度之间进行转换的基础。Ræpö角度转换成弧度公式:角度×ç÷=弧度ç÷è180°ø注意:①R只是个单位符号②对于C++中所有的三角函数,比如sin()、cos()、tan()等它们都是以弧度值作为输入的;因此在处理角度的时候,我们可以在函数开头用#define定义一个宏,完成弧度和角度的互换。#defineR

7、adToDeg57.29577951f#defineDegToRad0.017453293f只需把角度×DegToRad即可得到相应的弧度,或弧度×RadToDeg即可得到相应角度。æ180°ö弧度转换成角度公式:弧度×ç÷=角度Rèpø2三角函数所有的三角函数都是直角三角形中定义的。b1c正弦:sina=正割:csca==csinabca1cb余弦:cosa=余割:seca==αccosaaab1a正切:tana=余切:cota==atanab常用角度的三角函数值a

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。