1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | union v4
{
struct
{
real32 x, y, z, w;
};
struct
{
v3 xyz;
};
struct
{
real32 r, g, b, a;
};
struct
{
v3 rgb;
};
real32 E[4];
};
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | union v4
{
struct
{
union
{
v3 xyz;
struct
{
real32 x, y, z;
};
};
real32 w;
};
struct
{
union
{
v3 rgb;
struct
{
real32 r, g, b;
};
};
real32 a;
};
real32 E[4];
};
|
1 | v4 foo = {1, 2, 3, 4};
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | union v4
{
struct
{
real32 x, y, z, w;
};
v3 xyz;
v2 xy;
struct
{
real32 r, g, b, a;
};
v3 rgb;
real32 E[4];
};
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | inline v3
V3(v2 XY, real32 Z)
{
v3 Result;
Result.x = XY.x;
Result.y = XY.y;
Result.z = Z;
return(Result);
}
inline v3
ToV3(v2 XY, real32 Z)
{
v3 Result;
Result.xy = XY;
Result.z = Z;
return(Result);
}
|