print(MVP.MultiplyPoint(vertices*)); // โ i expect this result same as WorldToScreenPoint but itโs not!*
_ print(Camera.mainCamera.projectionMatrix.MultiplyPoint(vertices*));_ _ print(Camera.mainCamera.WorldToScreenPoint(vertices)); i++; }*_
Yes, this is an important observation too. MVP takes a vertex from object space to clip space, whose (x, y) coordinates are in (-1, 1). Rasterization to screen space in a shader is a hidden step between your vertex and fragment programs. You will have to scale and bias the resulting value if you want to get to screen space ((0, 0), (Screen.width, height)), or viewport space (0, 1).