CameraEnableFlag settings do not work

Version: 1.7.6.0

SDK 1.6.4

Frequency: Consistently

Severity: High
I am using this method after the Camera has been acquired.

void Set_Camera(double, lat, double lon, float alt, float pitch, float heading)
{
     SIMCONNECT_DATA_CAMERA data = new SIMCONNECT_DATA_CAMERA();
     data.Referential = (uint)SIMCONNECT_POSITION_REFERENTIAL.WORLD;
     data.Pos.x = lat;
     data.Pos.y = lon;
     data.Pos.z = (double)alt * 0.3048;

     data.Pbh.Pitch = pitch;
     data.Pbh.Bank = 0;
     data.Pbh.Heading = heading;
    
     data.Fov = 0.80;

     simconnect.CameraSet(data, (uint)SIMCONNECT_CAMERA_DATA_MASK.ALL_ROTATION);
     simconnect.CameraEnableFlag((uint)SIMCONNECT_CAMERA_FLAG.INTERACTION | (uint)SIMCONNECT_CAMERA_FLAG.ABOVE_GROUND);
 }

Bug description: Using the Flag Interaction and and Above_Ground have no effect when using referential WORLD.

It would be a nice feature to be able to use the controller to move around as in drone view,

I probably fully misunderstand the meaning of these Flags when using referential WORLD.

Repro steps:

Attachments:

Private attachments: Send a PM to @PrivateContent with the link to this topic and the link to download your content

Hello @Voss1917

I’m not sure to understand what you expect from those flags but:

  • Interaction, when enabled means you can interact with cockpit controls
  • Above_Ground, when enabled forces the camera to stay above ground level even when provided with an altitude that’s below ground.

I just tested it and both are working as expected when setting a camera position using referential WORLD.

Regards,
Sylvain

Hi,

Confirm that both flags now work in my managed code using 2 flag events instead of one as I used before.

Works:

         simconnect.CameraEnableFlag((uint)SIMCONNECT_CAMERA_FLAG.INTERACTION);
         simconnect.CameraEnableFlag((uint)SIMCONNECT_CAMERA_FLAG.ABOVE_GROUND);

Did not work:

simconnect.CameraEnableFlag((uint)SIMCONNECT_CAMERA_FLAG.INTERACTION | (uint)SIMCONNECT_CAMERA_FLAG.ABOVE_GROUND);