数学
july32
这个作者很懒,什么都没留下…
展开
-
[笔记]游戏开发中的数学
1.dx,dydy/dx就是导数或者说斜率, 变化率dx,dy中的d其实是 differentiation 的简写,意思是微分算子,表示在任意小的范围内的变化量。dx是对Δx的近似,Δx=dx+dx的高阶无穷小Δ这里往往是方便数学思想的描述和宏观解释,这个变化量是肉眼可见的,宏观的。dx则是微积分中的微了,表示一点的变化。、不定积分就是先把fx看成是某个函数的导数,然后给它乘上dx然后fxdx就表示了原函数的纵向增量,也就是fxdx是原函数在x处的微分,然后积分符号S表示对后面整个式子f原创 2020-07-28 19:39:10 · 2085 阅读 · 0 评论 -
点至三角形的最近点
文章目录已优化版本未优化版本点P到三角形的相交点分为三种情况:1.顶点域,相交点为三角形的三个顶点2.边域,相交点在三角形的三条边上,也就是点P在边上的投影3.中心域,相交点在三角形内部,也就是点P在三角形中的投影代码如下:已优化版本 /// <summary> /// 点到三角形最近点,已优化cross为dot /// 求解思路:平面的法线和pa,pb,pc的法线进行dot,可知p是落在哪个域上,再对p在各个边上进行投影,求得边域上最近点。在三角形内就是质心原创 2020-07-13 16:21:20 · 1091 阅读 · 0 评论 -
圆,扇形,胶囊体,凸多边形,OBB,AABB相交检测
转自:https://blog.csdn.net/qq_37043683/art图形相交检测常常用在伤害判定,使用自定义的图形相交检测,可以在一定程度上控制性能。比如2D格斗游戏中使用的矩形包围盒(AABB),一些动作游戏中常常出现的扇形攻击。2D的图形相交检测能够满足大部分的需求,且可以拓展成为柱状的3D物体,2D比3D的计算复杂度会低很多,3D的图形检测原理与2D相似,本文会实现几个圆形与其他2D图形的相交检测:1、圆形与圆形2、圆形与胶囊体3、圆形与扇形...转载 2020-07-13 15:31:25 · 3063 阅读 · 0 评论 -
向量投影推导
给定一个向量u和v,求u在v上的投影向量,如下图。假设u在v上的投影向量是u’,且向量u和v的夹角为theta。一个向量有两个属性,大小和方向,我们先确定u’的大小(即长度,或者模),从u的末端做v的垂线,那么d就是u’的长度。而u’和v的方向是相同的,v的方向v/|v|也就是u’的方向。所以有 (1)再求d的长度。 (2)最后求cos(theta) ...原创 2020-07-13 15:07:13 · 16303 阅读 · 3 评论 -
点是否在三角形内
2种方法1是用之前的射线判断交点的奇偶数2是这一篇的叉乘方向判断/// <summary> /// 点是否在三角形内 /// 将三角形ABC三个边(AB,BC,CA)分别与比较点判断叉乘,如果这3个叉乘结果表示的方向一致,说明就在三角形内 /// </summary> /// <param name="point"></param> /// <param na...原创 2020-07-13 11:16:30 · 163 阅读 · 0 评论 -
两线段相交
/// <summary> /// 2个线段是否相交(已验证) /// 有线段AB和线段CB /// 用线段AB的方向和C,D两点分别做差乘比较。如果C,D在同侧则return跳出 /// 用线段CD的方向和A,B两点分别做差乘比较。如果A,B在同侧则return跳出 /// 最终返回相交 /// </summary> public static bool ...原创 2020-07-13 10:56:48 · 364 阅读 · 0 评论 -
2D空间求一点是否在多边形内
转自:https://www.cnblogs.com/hont/p/6105997.html大致流程:1.随便选取多边形上任意一条边,以比较点和边的中心点做一条射线(这里用的伪射线)。2.用这条射线与其他所有边判断是否相交。3.将所有与线段相交的数量相加,如果是奇数就在多边形内。特殊情况:1.刚好在点上或者在线上。实际运用时会有点误差,但不影响。2.必须是闭合线段,且不能存在包含的情况。但如果是一个数组生成的线段,不会有这种情况代码(Unity3D):...转载 2020-07-13 10:55:58 · 333 阅读 · 0 评论 -
Unity中差乘判断目标是否在左边或右边
转自:https://www.cnblogs.com/hont/p/6017172.html使用差乘判断左右一般是比较差乘的y,小于0是左,大于0是右。特殊情况可以用其他分量来比较默认情况:var cross = Vector3.Cross(lhsObject.transform.position, rhsObject.transform.position);if (cross.y > 0) //sideif(cross.y < 0)//another side..转载 2020-07-13 10:25:49 · 787 阅读 · 0 评论 -
点乘和投影,扇形判断
转自:https://www.cnblogs.com/vuciao/p/10362823.html三角函数:概念:用来描述三角形中某个角和对应的三条边的比例关系。正弦:sin<θ>(sin<theta>)=对边/斜边余弦:cos<θ>(cos<theta>)=邻边/斜边正切:tan<θ>(tan<theta>)=对边/邻边正弦函数曲线:随着θ角度不断增大,sinθ的值的变化周期余弦函数曲线:正..转载 2020-06-13 21:01:21 · 2099 阅读 · 0 评论