Skip to content
MacaroniJam edited this page Jun 13, 2025 · 2 revisions
  • We are using multiple renderers so to make it simple we are going to implement render API abstraction to avoid conflicts yet we still need to be render-API specific.

  • Even though we will be building our engine with C++, we still want to implement a higher-level language like C# and Lua...(ew).

  • For now, we will focus on Windows and OpenGl but we are still abstract for future aspects.

  • We want to build our engine into a DLL and make an exe. After that, we link our engine to the exe file.

  • Output Directory: $(SolutionDir)bin$(Configuration)-$(Platform)$(ProjectName)\ So this file path, specifically bin stores all of our stuff, including binaries, libraries and project files.

  • Intermediate Directory: $(SolutionDir)bin-int$(Configuration)-$(Platform)$(ProjectName)\ So this file path is for older files like obj files that are created after compilation.

  • Sandbox will be our .exe and DEWEngine will be our .dll

  • For Logging, we will add the spdlog as a submodule. All third-party libraries will be in the "vendor" folder in the DEWEngine folder.

  • We made the log messages function as Macros to give us the ability to strip the code from distribution builds.

  • For generating project files for different platforms we will be using Premake which takes advantage of Lua...EW!!

    • For Premake we will make another vendor folder in which we will create a bin folder to add the exe to, however this is for the entire solution as opposed for just the DEWEngine Solution alone.

Clone this wiki locally