I think that the foreground node renders incorrectly when using View.VIEW_FIXED and different coordinate systems. Right now I have a view that’s looking towards <0,0,0> with an up vector <0,0,1> (up is the Z-axis). So my Y axis is the “real up”, the camera moves and is set at a height of -1000 on the Y-axis, so <0,-1000,0>, but it moves along an XZ plane at that height. The positive X axis is to the right.
So when a geometry of created like so:
public static Geometry createQuad() {
Point3f[] coords = new Point3f[] {
new Point3f(0, 0, 0),
new Point3f(-10, 0, 0),
new Point3f(-10, 0, -10),
new Point3f(0, 0, -10),
};
Color3f[] colors = new Color3f[] {
new Color3f(1,0,0),
new Color3f(1,1,1),
new Color3f(0,1,0),
new Color3f(1,1,1)
};
QuadArray g = new QuadArray(coords.length, GeometryArray.COORDINATES|GeometryArray.COLOR_3);
g.setCoordinates(0,coords);
g.setColors(0,colors);
return g;
}
It is for some reason invisible, might be because it’s sideways? Well I tried to see if it was side ways and changing its first Point3f to Point3f(0,10,0) makes it visible, but the colors are incorrect, and changing the size doesn’t seem to affect the actual quad, it’s rendered to take up the top-left half of the view completely (which is incorrect, it should be the bottom-left half, and it should be smaller, and should be tilted at one end slightly).
I think that somewhere in the render code a certain coordinate system is chosen to render this thing. Will, what coordinate system are you using? How should I change mine to be like yours so that the foreground node renders properly?
