I'm creating a 3D viewer in Lazarus using GL-scene.
If I want to view my object from the Y-axis with the Z-axis pointing upwards I use the following code (simplefied)
GLCamera1.BeginUpdate;
GLCamera1.Position.Y := GLCamera1.TargetObject.Position.Y - 10;
GLCamera1.Position.X := GLCamera1.TargetObject.Position.X; //solves the problem + 0.001;
GLCamera1.Position.Z := GLCamera1.TargetObject.Position.Z;
GLCamera1.Up.Z := 1;
GLCamera1.Up.X := 0;
GLCamera1.Up.Y := 0;
GLCamera1.EndUpdate;
This however results in a "Projet raised exception class 'External: ?'. error on some computers.
My scene contains a camera (GLCamera1, a glcube used as target object and a EarthSkyDome). If I make the EarthSkyDome invisible then everything works ok.
Is this an error (in which case I'll submit it as a bug)? Or am I just doing something stupid?
I have the source code attached. Running lazarus 0.9.26.2 with GLScene 1.0.0.2.