• Advertisement
Sign in to follow this  

project and scale 3D object to 2d screen space

This topic is 1891 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I have a function that already project a 3d point into my screen whitch I want to share with you !

Public Function GetScreenCoordBy3DPoint(ByRef RetX As Single, ByRef RetY As Single, ByRef Px As Single, ByRef Py As Single, ByRef Pz As Single, ByRef RetdistZ As Single) As Object
Dim MatView As Matrix
Dim matProj As Matrix
Dim RetVec As Vector3
Dim Vec1 As Vector3
Vec1.X = Px
Vec1.Y = Py
Vec1.Z = Pz
Dim tViewPort As Direct3D.Viewport ' DxVBLibA.D3DVIEWPORT8
Dim IdentMat As Matrix
IdentMat = Matrix.Identity
MatView = D3DDevice9.GetTransform(Direct3D.TransformType.View)
matProj = D3DDevice9.GetTransform(Direct3D.TransformType.Projection)
'd3ddevice9.GetTransform D3DTS_WORLD, IdentMat
tViewPort = D3DDevice9.Viewport
RetVec = Vector3.Project(Vec1, tViewPort, matProj, MatView, IdentMat)
RetX = RetVec.X
RetY = RetVec.Y
RetdistZ = RetVec.Z
End Function

I want to render a 3d mesh and prevent its scaling when it go far from camera
any suggestion how should I scale it ??
sorry for bad EN

Share this post

Link to post
Share on other sites
Sign in to follow this  

  • Advertisement