Нарисуйте круг, который всегда обращен к камере, нарисовать круг легко.Просто создайте кольцо вершин и используйте GL_LINE_STRIP, чтобы нарисовать его.Создание матрицы преобразования, которая всегда смотрит на камеру, немного сложнее.Вот код, который делает это.Просто установите его в качестве матрицы мира.
Matrix4 createBillbordMatrix(Vector3 position, Vector3 cameraPosition, vector3 up)
{
Vector3 Z = Vector3.Normalize(direction - cameraPosition);
Vector3 X = Vector3.Normalize(Vector3.Cross(up, Zaxis));
Vector3 Y = Vector3.Cross(ZAxis, XAxis);
Vector3 T = cameraPosition;
return new Matrix4(X.X, X.Y, X.Z, 0,
Y.X, Y.Y, Y.Z, 0,
Z.X, Z.Y, Z.Z, 0,
T.X, T.Y, T.Z, 1);
}
Если вы знаете, как работают матрицы, вы сможете понять, как они работают;В противном случае не беспокойтесь об этом, у вас не должно возникнуть проблем с его реализацией.