1 章(第2/2 页)
最新玄幻魔法小说:
子不予、
倒霉的双胞胎兄弟、
震惊!我的灵宠们都化形了!、
寿命掠夺,我从杂役证道圣人、
全球文修:我有唐诗三百首!、
综影视:姑娘你别跑、
简丽烟邵临、
开局系统助阵,我赶海都爆桶、
每天一首好歌曲、
谍战1937:开局血洗特高科、
科幻天庭:试炼时代、
高龄巨星:六十岁才出道不算晚吧、
甄嬛重生成琅嬅治懿症、
官场:草根逆袭之路、
文科生无用?我修武道你们慌什么、
开局妹妹给我送媳妇儿、
走错房间后,醋精总裁绷不住了、
咒术高专学习模拟器、
偷听校花心声,她居然是恋爱脑!、
我与我[校园]、
优化算法的地方就是游戏的空间碰撞问题。
说白了就是3D物体的碰撞检测,简单来说,就是判断游戏里两个物体有没有碰撞,举个简单例子:
上面是游戏世界中的两个小球,如何判断它们有没有碰撞呢?
这用初中数学知识马上就可以知道。
计算圆心之间的距离d和两球半径和r1+r2,如果d<=r1+r就说明发生了碰撞。
三维坐标系中,距离d可以用距离公式计算,超简单是不?
但是如果有三个物体呢,那就麻烦一点,需要两两比较,做3次计算,四个物体自然做6次运算。
但是如果有100个物体呢,那我们就需要5000次的计算了,在游戏中往往会有更多的运动物体需要计算,而且这些物体的形状往往是非常不规则的,比如墙壁、河流、树木、人物、武器等等,那么这些计算量就马上指数上升起来。
这时候,程序员就需要运用各种算法技巧来减少运算量,比如四叉树:
当然,就算有了这些方法,我们也要不能无限精度地计算距离,当两个物体挨得很近的时候,出于计算量的考虑,我们一般把浮点精度都控制在一定范围内。
那么控制了计算精度以后会发生什么事情呢?
如果出现了碰撞检测精度不足的情况,往往就会出现一定的显示BUG,这种BUG就叫作「穿模」。
服装穿模
3D游戏中的慢速运动下的静态穿模BUG主要有两种因素引起:
一种是类似上图的模型设置问题,有些模型并没有检测碰撞;
还有一种则物体模型过
本章未完,点击下一页继续。