|
|
|
|
@ -33,103 +33,103 @@ namespace ia::iae
|
|
|
|
|
{
|
|
|
|
|
public:
|
|
|
|
|
// Event Functions
|
|
|
|
|
STATIC IAE_DLL_API Handle CreateEvent(IN CONST String &name);
|
|
|
|
|
STATIC IAE_DLL_API VOID DestroyEvent(IN Handle event);
|
|
|
|
|
STATIC IAE_DLL_API Handle GetEventByName(IN CONST String &name);
|
|
|
|
|
STATIC IAE_DLL_API VOID AddEventListener(IN Handle event, IN std::function<VOID()> callback);
|
|
|
|
|
STATIC IAE_DLL_API VOID AddEventListener(IN CONST String &eventName, IN std::function<VOID()> callback);
|
|
|
|
|
STATIC IAE_DLL_API VOID BroadcastEvent(IN Handle event);
|
|
|
|
|
STATIC IAE_DLL_API VOID BroadcastEvent(IN CONST String &eventName);
|
|
|
|
|
STATIC Handle CreateEvent(IN CONST String &name);
|
|
|
|
|
STATIC VOID DestroyEvent(IN Handle event);
|
|
|
|
|
STATIC Handle GetEventByName(IN CONST String &name);
|
|
|
|
|
STATIC VOID AddEventListener(IN Handle event, IN std::function<VOID()> callback);
|
|
|
|
|
STATIC VOID AddEventListener(IN CONST String &eventName, IN std::function<VOID()> callback);
|
|
|
|
|
STATIC VOID BroadcastEvent(IN Handle event);
|
|
|
|
|
STATIC VOID BroadcastEvent(IN CONST String &eventName);
|
|
|
|
|
|
|
|
|
|
// Renderer Functions
|
|
|
|
|
STATIC IAE_DLL_API Handle GetGeometry_Quad();
|
|
|
|
|
STATIC IAE_DLL_API Handle CreateGeometry(IN CONST Vector<GeometryVertex> &vertices,
|
|
|
|
|
STATIC Handle GetGeometry_Quad();
|
|
|
|
|
STATIC Handle CreateGeometry(IN CONST Vector<GeometryVertex> &vertices,
|
|
|
|
|
IN CONST Vector<INT32> &indices);
|
|
|
|
|
STATIC IAE_DLL_API VOID DestroyGeometry(IN Handle geometry);
|
|
|
|
|
STATIC IAE_DLL_API VOID DrawGeometry(IN Handle handle);
|
|
|
|
|
STATIC IAE_DLL_API IVec2 GetDisplayExtent();
|
|
|
|
|
STATIC IAE_DLL_API VOID ResizeDisplay(IN INT32 newWidth, IN INT32 newHeight);
|
|
|
|
|
STATIC VOID DestroyGeometry(IN Handle geometry);
|
|
|
|
|
STATIC VOID DrawGeometry(IN Handle handle);
|
|
|
|
|
STATIC IVec2 GetDisplayExtent();
|
|
|
|
|
STATIC VOID ResizeDisplay(IN INT32 newWidth, IN INT32 newHeight);
|
|
|
|
|
|
|
|
|
|
// Renderer State Functions
|
|
|
|
|
STATIC IAE_DLL_API VOID SetRenderState_Scissor(IN IVec4 rect);
|
|
|
|
|
STATIC IAE_DLL_API VOID SetRenderState_FlippedH(IN BOOL value);
|
|
|
|
|
STATIC IAE_DLL_API VOID SetRenderState_FlippedV(IN BOOL value);
|
|
|
|
|
STATIC IAE_DLL_API VOID SetRenderState_TextureOffset(IN Vec2 off);
|
|
|
|
|
STATIC IAE_DLL_API VOID SetRenderState_YSortingEnabled(IN BOOL value);
|
|
|
|
|
STATIC IAE_DLL_API VOID SetRenderState_ColorOverlay(IN Color color);
|
|
|
|
|
STATIC IAE_DLL_API VOID SetRenderState_CameraRelative(IN BOOL value);
|
|
|
|
|
STATIC IAE_DLL_API VOID SetRenderState_Texture(IN Handle image);
|
|
|
|
|
STATIC IAE_DLL_API VOID SetRenderState_Transform(IN Vec2 position, IN Vec2 scale, IN FLOAT32 rotation,
|
|
|
|
|
STATIC VOID SetRenderState_Scissor(IN IVec4 rect);
|
|
|
|
|
STATIC VOID SetRenderState_FlippedH(IN BOOL value);
|
|
|
|
|
STATIC VOID SetRenderState_FlippedV(IN BOOL value);
|
|
|
|
|
STATIC VOID SetRenderState_TextureOffset(IN Vec2 off);
|
|
|
|
|
STATIC VOID SetRenderState_YSortingEnabled(IN BOOL value);
|
|
|
|
|
STATIC VOID SetRenderState_ColorOverlay(IN Color color);
|
|
|
|
|
STATIC VOID SetRenderState_CameraRelative(IN BOOL value);
|
|
|
|
|
STATIC VOID SetRenderState_Texture(IN Handle image);
|
|
|
|
|
STATIC VOID SetRenderState_Transform(IN Vec2 position, IN Vec2 scale, IN FLOAT32 rotation,
|
|
|
|
|
IN UINT8 layer, IN INT16 sortIndex);
|
|
|
|
|
|
|
|
|
|
// Debug Draw Functions
|
|
|
|
|
STATIC IAE_DLL_API VOID DebugDraw_SetColor(IN Color color);
|
|
|
|
|
STATIC IAE_DLL_API VOID DebugDraw_StrokeWidth(IN FLOAT32 width);
|
|
|
|
|
STATIC IAE_DLL_API VOID DebugDraw_Line(IN Vec2 from, IN Vec2 to);
|
|
|
|
|
STATIC IAE_DLL_API VOID DebugDraw_FillRect(IN Vec2 position, IN Vec2 size);
|
|
|
|
|
STATIC IAE_DLL_API VOID DebugDraw_StrokeRect(IN Vec2 position, IN Vec2 size);
|
|
|
|
|
STATIC VOID DebugDraw_SetColor(IN Color color);
|
|
|
|
|
STATIC VOID DebugDraw_StrokeWidth(IN FLOAT32 width);
|
|
|
|
|
STATIC VOID DebugDraw_Line(IN Vec2 from, IN Vec2 to);
|
|
|
|
|
STATIC VOID DebugDraw_FillRect(IN Vec2 position, IN Vec2 size);
|
|
|
|
|
STATIC VOID DebugDraw_StrokeRect(IN Vec2 position, IN Vec2 size);
|
|
|
|
|
|
|
|
|
|
// Resource Functions
|
|
|
|
|
STATIC IAE_DLL_API Handle CreateSoundFromFile(IN CONST String &name, IN CONST String &path);
|
|
|
|
|
STATIC IAE_DLL_API Handle CreateImageFromFile(IN CONST String &name, IN CONST String &path,
|
|
|
|
|
STATIC Handle CreateSoundFromFile(IN CONST String &name, IN CONST String &path);
|
|
|
|
|
STATIC Handle CreateImageFromFile(IN CONST String &name, IN CONST String &path,
|
|
|
|
|
IN INT32 resizeToWidth = 0, IN INT32 resizeToHeight = 0);
|
|
|
|
|
STATIC IAE_DLL_API Handle CreateImage(IN CONST String &name, IN PCUINT8 encodedData, IN SIZE_T encodedDataSize);
|
|
|
|
|
STATIC IAE_DLL_API Handle CreateImage(IN CONST String &name, IN PCUINT8 rgbaData, IN INT32 width,
|
|
|
|
|
STATIC Handle CreateImage(IN CONST String &name, IN PCUINT8 encodedData, IN SIZE_T encodedDataSize);
|
|
|
|
|
STATIC Handle CreateImage(IN CONST String &name, IN PCUINT8 rgbaData, IN INT32 width,
|
|
|
|
|
IN INT32 height);
|
|
|
|
|
STATIC IAE_DLL_API Handle CreateSound(IN CONST String &name, IN PCUINT8 encodedData, IN SIZE_T encodedDataSize);
|
|
|
|
|
STATIC IAE_DLL_API Handle GetImage(IN CONST String &name);
|
|
|
|
|
STATIC IAE_DLL_API Handle GetSound(IN CONST String &name);
|
|
|
|
|
STATIC IAE_DLL_API VOID DestroyImage(IN Handle image);
|
|
|
|
|
STATIC IAE_DLL_API VOID DestroySound(IN Handle sound);
|
|
|
|
|
STATIC IAE_DLL_API IVec2 GetImageExtent(IN Handle image);
|
|
|
|
|
STATIC IAE_DLL_API Handle ResizeImage(IN Handle image, IN INT32 newWidth, IN INT32 newHeight);
|
|
|
|
|
STATIC IAE_DLL_API Handle ResizeImage(IN CONST String& name, IN INT32 newWidth, IN INT32 newHeight);
|
|
|
|
|
STATIC IAE_DLL_API VOID RescaleAllImages(IN FLOAT32 factorX, IN FLOAT32 factorY);
|
|
|
|
|
STATIC IAE_DLL_API Handle CombineImages(IN CONST Vector<Handle> &images, IN INT32 unitWidth,
|
|
|
|
|
STATIC Handle CreateSound(IN CONST String &name, IN PCUINT8 encodedData, IN SIZE_T encodedDataSize);
|
|
|
|
|
STATIC Handle GetImage(IN CONST String &name);
|
|
|
|
|
STATIC Handle GetSound(IN CONST String &name);
|
|
|
|
|
STATIC VOID DestroyImage(IN Handle image);
|
|
|
|
|
STATIC VOID DestroySound(IN Handle sound);
|
|
|
|
|
STATIC IVec2 GetImageExtent(IN Handle image);
|
|
|
|
|
STATIC Handle ResizeImage(IN Handle image, IN INT32 newWidth, IN INT32 newHeight);
|
|
|
|
|
STATIC Handle ResizeImage(IN CONST String& name, IN INT32 newWidth, IN INT32 newHeight);
|
|
|
|
|
STATIC VOID RescaleAllImages(IN FLOAT32 factorX, IN FLOAT32 factorY);
|
|
|
|
|
STATIC Handle CombineImages(IN CONST Vector<Handle> &images, IN INT32 unitWidth,
|
|
|
|
|
IN INT32 unitHeight, IN INT32 unitCountX, IN INT32 unitCountY);
|
|
|
|
|
|
|
|
|
|
// Game Functions
|
|
|
|
|
STATIC IAE_DLL_API VOID SetTimeScale(IN FLOAT32 scale);
|
|
|
|
|
STATIC IAE_DLL_API VOID SetActiveCamera(IN CameraComponent *cameraComponent);
|
|
|
|
|
STATIC VOID SetTimeScale(IN FLOAT32 scale);
|
|
|
|
|
STATIC VOID SetActiveCamera(IN CameraComponent *cameraComponent);
|
|
|
|
|
|
|
|
|
|
// Scene Functions
|
|
|
|
|
STATIC IAE_DLL_API RefPtr<Scene> CreateSceneFromFile(IN CONST String &path);
|
|
|
|
|
STATIC IAE_DLL_API Scene *GetActiveScene();
|
|
|
|
|
STATIC IAE_DLL_API VOID ChangeActiveScene(IN RefPtr<Scene> scene);
|
|
|
|
|
STATIC IAE_DLL_API VOID AddNodeToActiveScene(IN RefPtr<INode> node);
|
|
|
|
|
STATIC IAE_DLL_API INode *GetNodeFromActiveScene(IN CONST String &name);
|
|
|
|
|
STATIC IAE_DLL_API VOID RemoveNodeFromActiveScene(IN CONST String &name);
|
|
|
|
|
STATIC RefPtr<Scene> CreateSceneFromFile(IN CONST String &path);
|
|
|
|
|
STATIC Scene *GetActiveScene();
|
|
|
|
|
STATIC VOID ChangeActiveScene(IN RefPtr<Scene> scene);
|
|
|
|
|
STATIC VOID AddNodeToActiveScene(IN RefPtr<INode> node);
|
|
|
|
|
STATIC INode *GetNodeFromActiveScene(IN CONST String &name);
|
|
|
|
|
STATIC VOID RemoveNodeFromActiveScene(IN CONST String &name);
|
|
|
|
|
|
|
|
|
|
// Input Functions
|
|
|
|
|
STATIC IAE_DLL_API Vec2 GetInputAxis();
|
|
|
|
|
STATIC IAE_DLL_API VOID SwitchInputModeToText();
|
|
|
|
|
STATIC IAE_DLL_API VOID SwitchInputModeToAction();
|
|
|
|
|
STATIC IAE_DLL_API Vec2 GetInputPointerPosition();
|
|
|
|
|
STATIC IAE_DLL_API BOOL IsInputKeyDown(IN InputKey key);
|
|
|
|
|
STATIC IAE_DLL_API BOOL WasInputKeyPressed(IN InputKey key);
|
|
|
|
|
STATIC IAE_DLL_API BOOL WasInputKeyReleased(IN InputKey key);
|
|
|
|
|
STATIC IAE_DLL_API BOOL IsInputActionDown(IN Handle action);
|
|
|
|
|
STATIC IAE_DLL_API BOOL WasInputActionPressed(IN Handle action);
|
|
|
|
|
STATIC IAE_DLL_API BOOL WasInputActionReleased(IN Handle action);
|
|
|
|
|
STATIC IAE_DLL_API BOOL IsInputActionDown(IN CONST String &action);
|
|
|
|
|
STATIC IAE_DLL_API BOOL WasInputActionPressed(IN CONST String &action);
|
|
|
|
|
STATIC IAE_DLL_API BOOL WasInputActionReleased(IN CONST String &action);
|
|
|
|
|
STATIC IAE_DLL_API Handle BindInputAction(IN CONST String &name, IN InputKey key);
|
|
|
|
|
STATIC IAE_DLL_API VOID BindInputAxis(IN InputKey upKey, IN InputKey downKey, IN InputKey leftKey,
|
|
|
|
|
STATIC Vec2 GetInputAxis();
|
|
|
|
|
STATIC VOID SwitchInputModeToText();
|
|
|
|
|
STATIC VOID SwitchInputModeToAction();
|
|
|
|
|
STATIC Vec2 GetInputPointerPosition();
|
|
|
|
|
STATIC BOOL IsInputKeyDown(IN InputKey key);
|
|
|
|
|
STATIC BOOL WasInputKeyPressed(IN InputKey key);
|
|
|
|
|
STATIC BOOL WasInputKeyReleased(IN InputKey key);
|
|
|
|
|
STATIC BOOL IsInputActionDown(IN Handle action);
|
|
|
|
|
STATIC BOOL WasInputActionPressed(IN Handle action);
|
|
|
|
|
STATIC BOOL WasInputActionReleased(IN Handle action);
|
|
|
|
|
STATIC BOOL IsInputActionDown(IN CONST String &action);
|
|
|
|
|
STATIC BOOL WasInputActionPressed(IN CONST String &action);
|
|
|
|
|
STATIC BOOL WasInputActionReleased(IN CONST String &action);
|
|
|
|
|
STATIC Handle BindInputAction(IN CONST String &name, IN InputKey key);
|
|
|
|
|
STATIC VOID BindInputAxis(IN InputKey upKey, IN InputKey downKey, IN InputKey leftKey,
|
|
|
|
|
IN InputKey rightKey);
|
|
|
|
|
|
|
|
|
|
// Random Functions
|
|
|
|
|
STATIC IAE_DLL_API FLOAT32 GetRandomFloat();
|
|
|
|
|
STATIC IAE_DLL_API INT32 GetRandomInRange(IN INT32 min, IN INT32 max);
|
|
|
|
|
STATIC FLOAT32 GetRandomFloat();
|
|
|
|
|
STATIC INT32 GetRandomInRange(IN INT32 min, IN INT32 max);
|
|
|
|
|
|
|
|
|
|
// Time Functions
|
|
|
|
|
STATIC IAE_DLL_API INT64 GetTickCount();
|
|
|
|
|
STATIC IAE_DLL_API INT64 GetUnixSecond();
|
|
|
|
|
STATIC IAE_DLL_API INT64 GetUnixMillisecond();
|
|
|
|
|
STATIC IAE_DLL_API FLOAT32 GetFrameDeltaTime();
|
|
|
|
|
STATIC INT64 GetTickCount();
|
|
|
|
|
STATIC INT64 GetUnixSecond();
|
|
|
|
|
STATIC INT64 GetUnixMillisecond();
|
|
|
|
|
STATIC FLOAT32 GetFrameDeltaTime();
|
|
|
|
|
|
|
|
|
|
// Engine Functions
|
|
|
|
|
STATIC IAE_DLL_API BOOL IsDebugMode();
|
|
|
|
|
STATIC IAE_DLL_API String GetUniqueResourceName();
|
|
|
|
|
STATIC BOOL IsDebugMode();
|
|
|
|
|
STATIC String GetUniqueResourceName();
|
|
|
|
|
};
|
|
|
|
|
} // namespace ia::iae
|