This commit is contained in:
Isuru Samarathunga
2025-10-09 19:28:54 +05:30
parent 1f9d5426b8
commit 96bad30f15
25 changed files with 813 additions and 69 deletions

View File

View File

@ -0,0 +1,93 @@
// IAEngine: 2D Game Engine by IA
// Copyright (C) 2025 IASoft (PVT) LTD (oss@iasoft.dev)
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
#include <IAEngine/Engine.hpp>
#include <IAEngine/EngineLibraryInterface.hpp>
C_DECL(GameRequestedConfig GetConfigRequest())
{
return {1280, 720};
}
C_DECL(VOID OnInitialize())
{
}
C_DECL(VOID OnTerminate())
{
}
C_DECL(VOID OnDebugDraw())
{
}
C_DECL(VOID OnFixedUpdate())
{
}
C_DECL(VOID OnUpdate(IN FLOAT32 deltaTime))
{
}
C_DECL(VOID OnResize(IN INT32 newWidth, IN INT32 newHeight))
{
}
C_DECL(PCCHAR GetName())
{
return "IAEngine Editor";
}
C_DECL(UINT64 GetVersion())
{
return IA_MAKE_VERSION(1, 0, 0);
}
C_DECL(PCCHAR GetPackageName())
{
return "com.iasoft.iaengine.editor";
}
C_DECL(PCCHAR GetDeveloperName())
{
return "IASoft (PVT) LTD";
}
C_DECL(PCCHAR GetPublisherName())
{
return "IASoft (PVT) LTD";
}
int main(int argc, char* argv[])
{
GameFunctionTable functionTable{};
functionTable.GetConfigRequest = GetConfigRequest;
functionTable.GetDeveloperName = GetDeveloperName;
functionTable.GetName = GetName;
functionTable.GetPackageName = GetPackageName;
functionTable.GetPublisherName = GetPublisherName;
functionTable.GetVersion = GetVersion;
functionTable.OnDebugDraw = OnDebugDraw;
functionTable.OnFixedUpdate = OnFixedUpdate;
functionTable.OnInitialize = OnInitialize;
functionTable.OnResize = OnResize;
functionTable.OnTerminate = OnTerminate;
functionTable.OnUpdate = OnUpdate;
IAEngine_Run(functionTable);
return 0;
}