I have been thinking about making a shooting range in UE4 some what realistic at least in terms of Ricochet, Bullet Drop and Penetration.
My first bet is to use Raycast for this As Realistic Bullets are Fast so using Projectile Object might not be the best idea as that might miss collisions or glitch due to frame rates (Correct me if i am Wrong).
1)As for using Raycast the Idea is to have Smaller Raycasts and if the Hit Result is NULL we can Create another Raycast from the Ending Location of previous one and set its Ending point a bet below to simulate the bullet drop effect. Again I haven’t really dived into the Curves of UE4 so if there exists a better solution please do share.
2)Now for the Penetration using MultiRaycast might be more than enough for this depending on the Physical Material we can add the impacts more Hits Rather than only the first one.
3)Ricochet or Bounce that might be a bit difficult and I kind of don’t really know what to do here. One Option is to Create Another Raycast From the Impact Point to a Random Endpoint but again there is the problem of Right Rotation. Some kind of Reflect Vector.
I would be posting the Solutions or any progress Here as I Go along any help is great you can share your wisdom.
Why Not Projectiles:
So, for Performance Reasons I decided not to use Projectiles I think they are an over kill for Automatic Weapons like Assault Rifles and Machine Guns better to have Hundreds of Raycasts than a fully simulated physics object bouncing around your scene.
Now I may be a bit harsh on Projectile Component but honestly I don’t know much about it, you can help me decide.