要概览游戏对象,请参阅 概念:Game Object 。
游戏对象必须先注册,然后才能用于发布事件、设置位置等。下列代码使用预定义 ID 注册两个游戏对象。请注意,您可以自由选用任一 64 位无符号整数 ID (0 ~ 0xFFFFFFFFFFFFFFDF),比如转换为 AkGameObjectID
的递增计数器或对象指针。
const AkGameObjectID GAME_OBJECT_ID_CAR = 100; const AkGameObjectID GAME_OBJECT_ID_HUMAN = 200; const AkGameObjectID GAME_OBJECT_ID_MARKERS = 300; (...) // // 注册游戏对象。某些全局游戏对象可能在初始化时 // 注册,但大多数游戏对象会在游戏中 // 出现/消失时动态注册/注销。 // AK::SoundEngine::RegisterGameObj( GAME_OBJECT_ID_CAR, "Car" ); AK::SoundEngine::RegisterGameObj( GAME_OBJECT_ID_HUMAN, "Human" ); AK::SoundEngine::RegisterGameObj( GAME_OBJECT_ID_MARKERS, "MarkerTest" );
当游戏对象作废时,例如当相应实体从游戏世界中移除时,您应该注销它们,以释放可能与它们相关联的资源:
AK::SoundEngine::UnregisterGameObj( GAME_OBJECT_ID_CAR ); AK::SoundEngine::UnregisterGameObj( GAME_OBJECT_ID_HUMAN ); AK::SoundEngine::UnregisterGameObj( GAME_OBJECT_ID_MARKERS );
请参阅 集成详情——游戏对象 了解有关游戏对象的更多信息。
|
Note: 此例程摘自 示例 一节中的“声音引擎集成工程示例”部分。请参阅 Integration Demo 示例 了解更多信息。 |