namespace Msp {
namespace GL {
+struct Vector4;
+
struct Vector3
{
float x, y, z;
Vector3(): x(0), y(0), z(0) { }
Vector3(float x_, float y_, float z_): x(x_), y(y_), z(z_) { }
+ Vector3(const Vector4 &);
};
struct Vector4
Vector4(const Vector3 &v): x(v.x), y(v.y), z(v.z), w(1) { }
};
+inline Vector3::Vector3(const Vector4 &v):
+ x(v.x/v.w), y(v.y/v.w), z(v.z/v.w)
+{ }
+
} // namespace GL
} // namespace Msp