Search code examples
c#algorithmopentk

I'm writing an algorithm to determine if someone has been hit by a bullet or not


Bullet

I've been thinking about it for a while,
but I can't find an answer, so I'm asking a question.
I'm making a game with C# opengl(opentk).
At first, I tried to search the coordinates of the bullet for each pixel to see
if it hit the enemy.
That method required too extensive a search.
I'm not asking you to code.
Just need some tips.
Any help would be appreciated.


Solution

  • Rotate the scene so that the trajectory becomes vertical. This is done by applying the transformation

    X' = (  u.X + v.Y) / √(u²+v²)
    Y' = (- v.X + u.Y) / √(u²+v²)
    

    to all points. ((u, v) defines the shooting direction.)

    Now it suffices to check if

    Xc' - R < Xo' < Xc' + R
    

    and

    Yo' < Yc'
    

    enter image description here