GLEngineMobile/GLObj.cs
/// <summary>
/// Actions before render 
/// - push position
/// - move to Position
/// - rotatation 
/// </summary>
Actions before render
push position
move to Position
rotatation
Actions before render push position move to Position rotatation
public virtual void BeforeRender()
        {
            GL.PushMatrix();
            GL.Translate((float)Position.X, (float)Position.Y, (float)Position.Z); 
            var c = Center;
            if (!Rotation.IsZero)
            {
                GL.Translate((float)-c.X, (float)-c.Y, (float)-c.Z);
                GL.Rotate((float)Rotation.X, 1, 0, 0);
                GL.Rotate((float)Rotation.Y, 0, 1, 0);
                GL.Rotate((float)Rotation.Z, 0, 0, 1);
            }
        }
public virtual void BeforeRender ( ) { GL . PushMatrix ( ) ; GL . Translate ( ( float ) Position . X , ( float ) Position . Y , ( float ) Position . Z ) ; var c = Center ; if ( ! Rotation . IsZero ) { GL . Translate ( ( float ) - c . X , ( float ) - c . Y , ( float ) - c . Z ) ; GL . Rotate ( ( float ) Rotation . X , 1 , 0 , 0 ) ; GL . Rotate ( ( float ) Rotation . Y , 0 , 1 , 0 ) ; GL . Rotate ( ( float ) Rotation . Z , 0 , 0 , 1 ) ; } }
Actions before render
 push position
 move to Position
 rotatation
Actions before render push position move to Position rotatation
// object position 