I have created a Gem integrating some grpc c++ server libraries describing some services.
I load a basic default level right from editor to have something to see.
In one of my services, I am creating entities, this is occuring on a different thread than the main thread this way :
newEntity = aznew AZ::Entity(AZ::EntityId(entity_id(), name());
This seems to be working fine. The entity is initialised but not activated.
Then in another service I do :
EBUS_EVENT_RESULT(entity, AZ::ComponentApplicationBus, FindEntity, entityId); entity->CreateComponent(CameraComponentTypeId);
The entity isn’t activated so adding the component works fine. The cameraComponent is created with default values.
I active the entity, seems ok.
Then in a third service, I call :
At this point, the screen turns completely black.
Could anyone point me what I am doing wrong please ? I guess first I’m not allowed to call the API from other threads the way I am doing ? Everything seems to work fine until I make the camera the active view thougth.
Is it because I missed something about the TickBus ?
I’m open to any advice