BUG: New SimConnect camera system not working.

Discuss on the SimConnect SDK can be used by programmers to write add-on components for Prepar3D
Locked
minime
Posts: 1198
Joined: Mon Jun 10, 2013 4:33 pm

Post by minime »

Still not 100% if its a bug or what exactly is the bug, but here are screenshots and code for documentation of what I am doing and what does not work.



More problems are here in this post: http://www.prepar3d.com/forum-5/?mingle ... pic&t=4942



The following code produces the cameras in the screenshots:



Code:
void CSimConnectData::CreateTargetCamera(SimObject* Target)
{
DeleteTargetCamera();

if (!DisplayTargetPic || Target == 0)
return;

CoCreateGuid(&cameraGUID);
cameraType = SIMCONNECT_CAMERA_TYPE_OBJECT_CENTER; // SIMCONNECT_CAMERA_TYPE_WORLD_OBJECT // SIMCONNECT_CAMERA_TYPE_FIXED
sprintf((char*)&cameraName, "Trk %d", Target->ObjectID);
cameraPos.x = 0; cameraPos.y = 0; cameraPos.z = -25;
cameraRot.Pitch = 0; cameraRot.Bank = 0; cameraRot.Heading = 0;

HRESULT hr = SimConnect_CreateCameraDefinition(hSimConnect, cameraGUID, cameraType, cameraName, cameraPos, cameraRot);

if (hr != S_OK) { throw; }

cameraInstance = Target->ObjectID;

hr = SimConnect_CreateCameraInstance(hSimConnect, cameraGUID, cameraName, Target->ObjectID, cameraInstance);

if (hr == S_OK)
{
cameraInitialized = true;

hr = SimConnect_OpenView(hSimConnect, cameraName, cameraName);

if (hr == S_OK)
{
SimConnect_SetCameraWindowPosition(hSimConnect, cameraName, 0, 0);
SimConnect_SetCameraWindowSize(hSimConnect, cameraName, 300, 300);
SimConnect_DockView(hSimConnect, cameraName);
}
else { throw; }
}
else { throw; }
}



First camera: SIMCONNECT_CAMERA_TYPE_WORLD_OBJECT (The used objectID is an AI track as seen on the map; view title however says its a cockpit view, which is not what I want)







Second camera: SIMCONNECT_CAMERA_TYPE_FIXED (It does not matter what I put for cameraPos x, y, z, the fixed camera always displays water for me; text in the view seems wrong)







Third camera: CAMERA_TYPE_OBJECT_CENTER (view title says its an object view of an AI object; however documentation says it should be ownship center, which seems to be right)





Locked