Im trying to make a flying projectile using body velocity
However when i shoot the projectile the position seems to be through the player rather than where the object actually hit
Im thinking about constantly recasting ahead of the object and detecting how close the projectile is from hitting the object but i feel like that would be a bit laggy
This really depends on the projectile, if its a bullet then a raycast is perfect since bullets are often thin and are considered 2 dimensonal, however say your making a giant fireball rays would not be optimal here since that would require drawing an arbitrary number of points each one representing a ray not only is this inaccurate but also inefficient. To solve the fireball example there a couple solutions, easiest ones are using something like GetTouchingParts() or the new region3 system that roblox implemented, More optimal solutions would be doing something like Separating Axis Therom which I believe works for any convex geometry although coding this optimally is significantly harder, so I recommend using the first 2 solutions
No it wouldn’t. Rays are really really efficient at short ranges (which is what you’re going to be doing). Its also a way more reliable method to check if the bullet hit something.