Cargar la posición de una entidad - AWS SimSpace Weaver

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Cargar la posición de una entidad

Puede cargar (leer en la estructura de estados) la posición de una entidad mediante una estructura de datos de enteros. Estos ejemplos usan la siguiente función:

nota

Debe proporcionar Api::BuiltinTypeId::Vector3F32 a Api::LoadEntityIndexKey(), como se muestra en los siguientes ejemplos.

ejemplo Ejemplo: uso de una matriz para representar la posición
Result<void> GetEntityPosition(Api::Entity& entity, Transaction& transaction) { std::int8_t* dest = nullptr; WEAVERRUNTIME_TRY(Aws::WeaverRuntime::Api::LoadEntityIndexKey( transaction, entity, Api::BuiltinTypeIdToTypeId( Aws::WeaverRuntime::Api::BuiltinTypeId::Vector3F32), &dest)); std::array<float, 3> position = *reinterpret_cast<std::array<float, 3>*>(dest); }
ejemplo Ejemplo de uso de struct para representar la posición
struct Position {struct float x; float y; float z; }; Result<void> GetEntityPosition(Api::Entity& entity, Transaction& transaction) { std::int8_t* dest = nullptr; WEAVERRUNTIME_TRY(Aws::WeaverRuntime::Api::LoadEntityIndexKey( transaction, entity, Api::BuiltinTypeIdToTypeId( Aws::WeaverRuntime::Api::BuiltinTypeId::Vector3F32), &dest)); Position position = *reinterpret_cast<Position*>(dest); }