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
当一个物体在另一个物体上时检测?(HTML5)_Html_Actionscript 3_Html5 Canvas_Game Development - Fatal编程技术网

当一个物体在另一个物体上时检测?(HTML5)

当一个物体在另一个物体上时检测?(HTML5),html,actionscript-3,html5-canvas,game-development,Html,Actionscript 3,Html5 Canvas,Game Development,我正在HTML5画布上创建一个游戏,当一个对象(图形)越过另一个对象(也是图形)时,需要执行一个动作 我尝试过在网上看到的方法,但它们似乎不起作用。 我本来希望代码类似于Mouseover函数,但我尝试过这个,但没有成功 这是一个可能的功能吗?它可以通过图形来实现吗 这是我在AS3中的原始代码: object1.addEventListener( Event.ENTER_FRAME, handleCollision) function handleCollisi

我正在HTML5画布上创建一个游戏,当一个对象(图形)越过另一个对象(也是图形)时,需要执行一个动作

我尝试过在网上看到的方法,但它们似乎不起作用。 我本来希望代码类似于Mouseover函数,但我尝试过这个,但没有成功

这是一个可能的功能吗?它可以通过图形来实现吗

这是我在AS3中的原始代码:

        object1.addEventListener( Event.ENTER_FRAME, handleCollision)

        function handleCollision( e:Event ):void
        {
            if (object2.hitTestPoint(object1.x, object1.y, true))
            {
               // object2 collided with object1
                trace("Collision");u

            }
        }
您必须使用像素级检测。这是一个参数,所以您需要像enter\u frame这样的函数来不断检查重叠

您可以找到一个使用BitmapData.hitTest检测与表示播放区域的精灵失去联系的示例。您的要求正好相反,检测与另一个精灵的接触。但本质上是相同的想法


希望能有所帮助

经过一些研究,我发现在HTML5中,由于某些原因,图形之间的冲突检测是不可能的。相反,我使用了另一种方法,如果object2的坐标与object1的坐标相同,且Y轴不在其上方,则会发生反应。

可能会重复,以供将来参考,请回答您的问题,而不是对其进行轻微调整。