Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Actionscript 3 AS3子弹命中扫描_Actionscript 3 - Fatal编程技术网

Actionscript 3 AS3子弹命中扫描

Actionscript 3 AS3子弹命中扫描,actionscript-3,Actionscript 3,看看这个场景,我有两个角色,一个朝另一个角色的方向发射两颗子弹,子弹瞬间发射并以无限的速度移动,如何检测碰撞 下面是一张图片来说明问题: 红色的子弹显然会打偏,但绿色的子弹会击中,如何进行这种碰撞测试?这种碰撞测试称为。它的实现可以是简单的,也可以是非常复杂的,这取决于您的特定应用程序以及您愿意投入多少时间来提高性能。如果你感兴趣,一定要在网上搜索这个主题,或者找一本游戏编程书。这是3d游戏的常见操作 如果您知道只有两颗子弹,那么只需检查发射的子弹与另一颗子弹之间的距离即可解决此问题。如果距离

看看这个场景,我有两个角色,一个朝另一个角色的方向发射两颗子弹,子弹瞬间发射并以无限的速度移动,如何检测碰撞

下面是一张图片来说明问题:


红色的子弹显然会打偏,但绿色的子弹会击中,如何进行这种碰撞测试?

这种碰撞测试称为。它的实现可以是简单的,也可以是非常复杂的,这取决于您的特定应用程序以及您愿意投入多少时间来提高性能。如果你感兴趣,一定要在网上搜索这个主题,或者找一本游戏编程书。这是3d游戏的常见操作

如果您知道只有两颗子弹,那么只需检查发射的子弹与另一颗子弹之间的距离即可解决此问题。如果距离小于子弹的总半径,那么你就知道它们击中了目标

如果你正在制作一个游戏引擎,其中有很多子弹在移动,那么我能想到的最简单的方法就是沿着它发射的光线(通过子弹的运动矢量)以小的增量(不大于子弹的半径)移动子弹,并在每一步执行碰撞检查


无论最终使用哪种光线投射方法,它都将与您使用的任何系统紧密集成。在进行光线投射时,无法避免查询许多空间位置,因此请确保使用有效的空间分区系统。这种类型的碰撞测试称为。它的实现可以是简单的,也可以是非常复杂的,这取决于您的特定应用程序以及您愿意投入多少时间来提高性能。如果你感兴趣,一定要在网上搜索这个主题,或者找一本游戏编程书。这是3d游戏的常见操作

如果您知道只有两颗子弹,那么只需检查发射的子弹与另一颗子弹之间的距离即可解决此问题。如果距离小于子弹的总半径,那么你就知道它们击中了目标

如果你正在制作一个游戏引擎,其中有很多子弹在移动,那么我能想到的最简单的方法就是沿着它发射的光线(通过子弹的运动矢量)以小的增量(不大于子弹的半径)移动子弹,并在每一步执行碰撞检查

无论最终使用哪种光线投射方法,它都将与您使用的任何系统紧密集成。在光线投射时,无法避免查询许多空间位置,因此请确保使用有效的空间分区系统