Getting 2d coords from 3d object

Started by
2 comments, last by Irlan Robson 10 years, 6 months ago

Like in tf2, I'm wanting to use the technique of displaying bullet damage in an FPS game by way on 2d text above where the bullet hits the target in 3d like so:

2nrhk74.jpg

My only problem is that I don't know how to translate this 3d position of where the bullet hit into 2d. Any ideas?

Advertisement

Most frameworks or libraries have a method to transform a 3dvector.


Vector3 temp = Vector3.Transfom(3dposition, view * projection);
 
Vector2 screenPosition = new Vector2(temp.x, temp.y);
You could try to look upsome tutorials on 'picking' (that's the technique your describing).
It is/ can be based on 'shooting a ray' from the camera position through space, and looking which objects/ meshes you're intersecting

Crealysm game & engine development: http://www.crealysm.com

Looking for a passionate, disciplined and structured producer? PM me

You can use picking + time of impact just as @cozzie described above to estimate the contact point.

A good tutorial: http://www.rastertek.com/dx11tut47.html

This topic is closed to new replies.

Advertisement