diff --git a/External/ImGui.vcxproj b/External/ImGui.vcxproj
index be4b9fe..ec18ef0 100644
--- a/External/ImGui.vcxproj
+++ b/External/ImGui.vcxproj
@@ -46,6 +46,8 @@
+
+
@@ -75,6 +77,7 @@
+
@@ -92,6 +95,7 @@
+
diff --git a/External/ImGui.vcxproj.filters b/External/ImGui.vcxproj.filters
index 30ea731..ab04358 100644
--- a/External/ImGui.vcxproj.filters
+++ b/External/ImGui.vcxproj.filters
@@ -57,6 +57,12 @@
backends
+
+ backends
+
+
+ backends
+
backends
@@ -144,6 +150,9 @@
examples\example_android_opengl3
+
+ examples\example_apple_metal4
+
examples\example_apple_metal
@@ -195,6 +204,9 @@
examples\example_sdl3_directx11
+
+ examples\example_sdl3_metal4
+
examples\example_sdl3_metal
@@ -310,6 +322,11 @@
{e530954e-6c94-4f93-bc2a-7f5284b7d434}
+
+
+ {3cc03c55-6c94-4f93-bc2a-7f5284b7d434}
+
+
{16c31149-6c94-4f93-bc2a-7f5284b7d434}
@@ -395,6 +412,11 @@
{b9c33cde-6c94-4f93-bc2a-7f5284b7d434}
+
+
+ {754be038-6c94-4f93-bc2a-7f5284b7d434}
+
+
{4dc8b8c8-6c94-4f93-bc2a-7f5284b7d434}
diff --git a/Juliet/Juliet.vcxproj b/Juliet/Juliet.vcxproj
index 77e03f3..67b2519 100644
--- a/Juliet/Juliet.vcxproj
+++ b/Juliet/Juliet.vcxproj
@@ -108,9 +108,13 @@
+
+
+
+
@@ -223,14 +227,13 @@
+
+
+
-
-
-
-
{ab9c7e88-6c94-4f93-bc2a-7f5284b7d434}
diff --git a/Juliet/Juliet.vcxproj.filters b/Juliet/Juliet.vcxproj.filters
index 0a25d60..6f64aeb 100644
--- a/Juliet/Juliet.vcxproj.filters
+++ b/Juliet/Juliet.vcxproj.filters
@@ -172,15 +172,27 @@
include\Graphics
+
+ include\Graphics
+
include\Graphics
+
+ include\Graphics
+
+
+ include\Graphics
+
include\Graphics
include\Graphics
+
+ include\Graphics
+
include\Graphics
@@ -516,12 +528,21 @@
src\Graphics
+
+ src\Graphics
+
+
+ src\Graphics
+
src\UnitTest\Container
src\UnitTest
+
+ src\UnitTest
+
diff --git a/Romeo.sln b/Romeo.sln
new file mode 100644
index 0000000..6468515
--- /dev/null
+++ b/Romeo.sln
@@ -0,0 +1,49 @@
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio 14
+VisualStudioVersion = 14.0.22823.1
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ImGui", "External\ImGui.vcxproj", "{C16FFE36-6C94-4F93-BC2A-7F5284B7D434}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Juliet", "Juliet\Juliet.vcxproj", "{AB9C7E88-6C94-4F93-BC2A-7F5284B7D434}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Romeo", "Romeo\Romeo.vcxproj", "{05CD1167-6C94-4F93-BC2A-7F5284B7D434}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|x64 = Debug|x64
+ Profile|x64 = Profile|x64
+ Release|x64 = Release|x64
+ Debug|x64Clang = Debug|x64Clang
+ Profile|x64Clang = Profile|x64Clang
+ Release|x64Clang = Release|x64Clang
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {C16FFE36-6C94-4F93-BC2A-7F5284B7D434}.Debug|x64.ActiveCfg = x64-Debug|x64
+ {C16FFE36-6C94-4F93-BC2A-7F5284B7D434}.Profile|x64.ActiveCfg = x64-Profile|x64
+ {C16FFE36-6C94-4F93-BC2A-7F5284B7D434}.Release|x64.ActiveCfg = x64-Release|x64
+ {C16FFE36-6C94-4F93-BC2A-7F5284B7D434}.Debug|x64Clang.ActiveCfg = x64Clang-Debug|x64
+ {C16FFE36-6C94-4F93-BC2A-7F5284B7D434}.Profile|x64Clang.ActiveCfg = x64Clang-Profile|x64
+ {C16FFE36-6C94-4F93-BC2A-7F5284B7D434}.Release|x64Clang.ActiveCfg = x64Clang-Release|x64
+ {AB9C7E88-6C94-4F93-BC2A-7F5284B7D434}.Debug|x64.ActiveCfg = x64-Debug|x64
+ {AB9C7E88-6C94-4F93-BC2A-7F5284B7D434}.Profile|x64.ActiveCfg = x64-Profile|x64
+ {AB9C7E88-6C94-4F93-BC2A-7F5284B7D434}.Release|x64.ActiveCfg = x64-Release|x64
+ {AB9C7E88-6C94-4F93-BC2A-7F5284B7D434}.Debug|x64Clang.ActiveCfg = x64Clang-Debug|x64
+ {AB9C7E88-6C94-4F93-BC2A-7F5284B7D434}.Profile|x64Clang.ActiveCfg = x64Clang-Profile|x64
+ {AB9C7E88-6C94-4F93-BC2A-7F5284B7D434}.Release|x64Clang.ActiveCfg = x64Clang-Release|x64
+ {05CD1167-6C94-4F93-BC2A-7F5284B7D434}.Debug|x64.ActiveCfg = x64-Debug|x64
+ {05CD1167-6C94-4F93-BC2A-7F5284B7D434}.Debug|x64.Build.0 = x64-Debug|x64
+ {05CD1167-6C94-4F93-BC2A-7F5284B7D434}.Profile|x64.ActiveCfg = x64-Profile|x64
+ {05CD1167-6C94-4F93-BC2A-7F5284B7D434}.Profile|x64.Build.0 = x64-Profile|x64
+ {05CD1167-6C94-4F93-BC2A-7F5284B7D434}.Release|x64.ActiveCfg = x64-Release|x64
+ {05CD1167-6C94-4F93-BC2A-7F5284B7D434}.Release|x64.Build.0 = x64-Release|x64
+ {05CD1167-6C94-4F93-BC2A-7F5284B7D434}.Debug|x64Clang.ActiveCfg = x64Clang-Debug|x64
+ {05CD1167-6C94-4F93-BC2A-7F5284B7D434}.Debug|x64Clang.Build.0 = x64Clang-Debug|x64
+ {05CD1167-6C94-4F93-BC2A-7F5284B7D434}.Profile|x64Clang.ActiveCfg = x64Clang-Profile|x64
+ {05CD1167-6C94-4F93-BC2A-7F5284B7D434}.Profile|x64Clang.Build.0 = x64Clang-Profile|x64
+ {05CD1167-6C94-4F93-BC2A-7F5284B7D434}.Release|x64Clang.ActiveCfg = x64Clang-Release|x64
+ {05CD1167-6C94-4F93-BC2A-7F5284B7D434}.Release|x64Clang.Build.0 = x64Clang-Release|x64
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/Romeo/Romeo.bff b/Romeo/Romeo.bff
index 3274d8a..76b81dd 100644
--- a/Romeo/Romeo.bff
+++ b/Romeo/Romeo.bff
@@ -3,11 +3,11 @@
{
.ProjectName = 'Romeo'
.ProjectPath = 'Romeo'
+ .ProjectConfigsRomeo = {}
.JulietIncludePath = ' "-IJuliet/include"'
+ ' "-IJuliet/src"'
+ ' "-IExternal/imgui"'
- // Define the def path even if not used right now
.ProjectDefPath = '$_WORKING_DIR_$/$ProjectName$/$ProjectName$.def'
// Library
@@ -101,7 +101,7 @@
Using( .'Project_$Platform$_$BuildConfigName$' )
.Target = '$ProjectName$-$Config$'
]
- ^ProjectConfigs + .ProjectConfig
+ ^ProjectConfigsRomeo + .ProjectConfig
#endif
}
@@ -110,6 +110,16 @@
.ProjectOutput = '$ProjectPath$/$ProjectName$.vcxproj'
.ProjectBasePath = '$ProjectPath$/'
.ProjectInputPaths = .ProjectBasePath
- .ProjectConfigs = .ProjectConfigs
+ .ProjectConfigs = .ProjectConfigsRomeo
}
+
+ VSSolution( 'Romeo-Solution' )
+ {
+ .SolutionOutput = 'Romeo.sln'
+ .SolutionProjects = { 'Romeo', 'Juliet', 'ImGui' }
+ .SolutionConfigs = .ProjectConfigsRomeo
+ .SolutionBuildProject = 'Romeo'
+ }
+
+ Alias( 'gen-romeo' ) { .Targets = 'Romeo-Solution' }
}
diff --git a/Romeo/Romeo.vcxproj b/Romeo/Romeo.vcxproj
new file mode 100644
index 0000000..d2c4478
--- /dev/null
+++ b/Romeo/Romeo.vcxproj
@@ -0,0 +1,203 @@
+
+
+
+
+ x64-Debug
+ x64
+
+
+ x64-Profile
+ x64
+
+
+ x64-Release
+ x64
+
+
+ x64Clang-Debug
+ x64
+
+
+ x64Clang-Profile
+ x64
+
+
+ x64Clang-Release
+ x64
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {05cd1167-6c94-4f93-bc2a-7f5284b7d434}
+ MakeFileProj
+
+
+
+ Makefile
+ false
+ v143
+ $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe
+
+
+ Makefile
+ false
+ v143
+ $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe
+
+
+ Makefile
+ false
+ v143
+ $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe
+
+
+ Makefile
+ false
+ v143
+ $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe
+
+
+ Makefile
+ false
+ v143
+ $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe
+
+
+ Makefile
+ false
+ v143
+ $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ cd $(SolutionDir) & misc\fbuild -ide -dist -monitor -cache $(ProjectName)-$(Configuration)
+ cd $(SolutionDir) & misc\fbuild -ide -dist -monitor -cache -clean $(ProjectName)-$(Configuration)
+ _CRT_SECURE_NO_WARNINGS;_UNICODE;UNICODE;WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;DEBUG;PROFILING_ENABLED;JULIET_ENABLE_IMGUI;JULIET_DEBUG;JULIET_WIN32;
+ ..\;..\Juliet\include;..\Juliet\src;..\External\imgui;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared;
+ /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245
+ $(SolutionDir)\bin\$(Configuration)\
+ $(SolutionDir)\Intermediate
+ $(SolutionDir)\bin
+
+
+ cd $(SolutionDir) & misc\fbuild -ide -dist -monitor -cache $(ProjectName)-$(Configuration)
+ cd $(SolutionDir) & misc\fbuild -ide -dist -monitor -cache -clean $(ProjectName)-$(Configuration)
+ _CRT_SECURE_NO_WARNINGS;_UNICODE;UNICODE;WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;RELEASE;PROFILING_ENABLED;JULIET_WIN32;
+ ..\;..\Juliet\include;..\Juliet\src;..\External\imgui;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared;
+ /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245
+ $(SolutionDir)\bin\$(Configuration)\
+ $(SolutionDir)\Intermediate
+ $(SolutionDir)\bin
+
+
+ cd $(SolutionDir) & misc\fbuild -ide -dist -monitor -cache $(ProjectName)-$(Configuration)
+ cd $(SolutionDir) & misc\fbuild -ide -dist -monitor -cache -clean $(ProjectName)-$(Configuration)
+ _CRT_SECURE_NO_WARNINGS;_UNICODE;UNICODE;WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;RELEASE;JULIET_WIN32;
+ ..\;..\Juliet\include;..\Juliet\src;..\External\imgui;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared;
+ /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245
+ $(SolutionDir)\bin\$(Configuration)\
+ $(SolutionDir)\Intermediate
+ $(SolutionDir)\bin
+
+
+ cd $(SolutionDir) & misc\fbuild -ide -dist -monitor -cache $(ProjectName)-$(Configuration)
+ cd $(SolutionDir) & misc\fbuild -ide -dist -monitor -cache -clean $(ProjectName)-$(Configuration)
+ _CRT_SECURE_NO_WARNINGS;_UNICODE;UNICODE;WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;DEBUG;PROFILING_ENABLED;JULIET_ENABLE_IMGUI;JULIET_DEBUG;JULIET_WIN32;
+ ..\;..\Juliet\include;..\Juliet\src;..\External\imgui;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared;
+ /std:c++20
+ $(SolutionDir)\bin\$(Configuration)\
+ $(SolutionDir)\Intermediate
+ $(SolutionDir)\bin
+
+
+ cd $(SolutionDir) & misc\fbuild -ide -dist -monitor -cache $(ProjectName)-$(Configuration)
+ cd $(SolutionDir) & misc\fbuild -ide -dist -monitor -cache -clean $(ProjectName)-$(Configuration)
+ _CRT_SECURE_NO_WARNINGS;_UNICODE;UNICODE;WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;RELEASE;PROFILING_ENABLED;JULIET_WIN32;
+ ..\;..\Juliet\include;..\Juliet\src;..\External\imgui;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared;
+ /std:c++20
+ $(SolutionDir)\bin\$(Configuration)\
+ $(SolutionDir)\Intermediate
+ $(SolutionDir)\bin
+
+
+ cd $(SolutionDir) & misc\fbuild -ide -dist -monitor -cache $(ProjectName)-$(Configuration)
+ cd $(SolutionDir) & misc\fbuild -ide -dist -monitor -cache -clean $(ProjectName)-$(Configuration)
+ _CRT_SECURE_NO_WARNINGS;_UNICODE;UNICODE;WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;RELEASE;JULIET_WIN32;
+ ..\;..\Juliet\include;..\Juliet\src;..\External\imgui;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared;
+ /std:c++20
+ $(SolutionDir)\bin\$(Configuration)\
+ $(SolutionDir)\Intermediate
+ $(SolutionDir)\bin
+
+
+
+ $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log
+
+
+
+
+ $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log
+
+
+
+
+ $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log
+
+
+
+
+ $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log
+
+
+
+
+ $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log
+
+
+
+
+ $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Romeo/Romeo.vcxproj.filters b/Romeo/Romeo.vcxproj.filters
new file mode 100644
index 0000000..c2dfc9d
--- /dev/null
+++ b/Romeo/Romeo.vcxproj.filters
@@ -0,0 +1,45 @@
+
+
+
+
+
+
+ src
+
+
+ src
+
+
+ src
+
+
+ src
+
+
+ src
+
+
+ src
+
+
+ src
+
+
+ src
+
+
+ src
+
+
+ src
+
+
+ src
+
+
+
+
+ {58a44f9c-6c94-4f93-bc2a-7f5284b7d434}
+
+
+
\ No newline at end of file
diff --git a/Romeo/docs/Juliet_src_Graphics_D3D12_D3D12CommandList.md b/Romeo/docs/Juliet_src_Graphics_D3D12_D3D12CommandList.md
deleted file mode 100644
index bf2cd53..0000000
--- a/Romeo/docs/Juliet_src_Graphics_D3D12_D3D12CommandList.md
+++ /dev/null
@@ -1,42 +0,0 @@
-# Juliet\src\Graphics\D3D12\D3D12CommandList
-
-## Source Files
-- Header: `Juliet\src\Graphics\D3D12\D3D12CommandList.h`
-- Source: `Juliet\src\Graphics\D3D12\D3D12CommandList.cpp`
-
-## AI Description
-*No AI description generated yet.*
-
-## Symbols
-
-### Namespace `Juliet::D3D12`
-
-#### Classes, Structs & Unions
-- `struct D3D12CommandListBaseData`
-- `struct D3D12CopyCommandListData`
-- `struct D3D12GraphicsCommandListData`
-- `struct D3D12PresentData`
-- `struct D3D12CommandList`
-
-#### Functions & Methods
-- `extern CommandList* AcquireCommandList(NonNullPtr driver, QueueType queueType)`
-- `extern bool SubmitCommandLists(NonNullPtr commandList)`
-- `extern void SetViewPort(NonNullPtr commandList, const GraphicsViewPort& viewPort)`
-- `extern void SetScissorRect(NonNullPtr commandList, const Rectangle& rectangle)`
-- `extern void SetBlendConstants(NonNullPtr commandList, FColor blendConstants)`
-- `extern void SetBlendConstants(NonNullPtr commandList, FColor blendConstants)`
-- `extern void SetStencilReference(NonNullPtr commandList, uint8 reference)`
-- `extern void SetIndexBuffer(NonNullPtr commandList, NonNullPtr buffer,
- IndexFormat format, size_t indexCount, index_t offset)`
-- `extern void SetPushConstants(NonNullPtr commandList, ShaderStage stage, uint32 rootParameterIndex,
- uint32 numConstants, const void* constants)`
-
-### Namespace `Juliet::D3D12::Internal`
-
-#### Functions & Methods
-- `extern void SetDescriptorHeaps(NonNullPtr commandList)`
-- `extern void DestroyCommandList(NonNullPtr commandList)`
-- `extern bool CleanCommandList(NonNullPtr driver, NonNullPtr commandList, bool cancel)`
-- `extern void TrackGraphicsPipeline(NonNullPtr commandList, NonNullPtr pipeline)`
-- `extern void TrackTexture(NonNullPtr commandList, NonNullPtr texture)`
-
diff --git a/Romeo/docs/overview.md b/Romeo/docs/overview.md
index cf3df4e..b302c0a 100644
--- a/Romeo/docs/overview.md
+++ b/Romeo/docs/overview.md
@@ -4,103 +4,32 @@ This is an auto-generated index of all C++ sources in the workspace.
## Files
-- [Juliet\include\Core\Application\ApplicationManager](Juliet_include_Core_Application_ApplicationManager.md)
-- [Juliet\include\Core\Common\CoreUtils](Juliet_include_Core_Common_CoreUtils.md)
-- [Juliet\include\Core\Common\String](Juliet_include_Core_Common_String.md)
-- [Juliet\include\Core\Container\Vector](Juliet_include_Core_Container_Vector.md)
-- [Juliet\include\Core\HAL\Display\Display](Juliet_include_Core_HAL_Display_Display.md)
-- [Juliet\src\Core\HAL\Display\Win32\Win32DisplayDevice](Juliet_src_Core_HAL_Display_Win32_Win32DisplayDevice.md)
-- [Juliet\src\Core\HAL\Display\Win32\Win32DisplayEvent](Juliet_src_Core_HAL_Display_Win32_Win32DisplayEvent.md)
-- [Juliet\src\Core\HAL\Display\Win32\Win32Window](Juliet_src_Core_HAL_Display_Win32_Win32Window.md)
-- [Juliet\src\Core\HAL\DynLib\Win32\DynamicLibrary](Juliet_src_Core_HAL_DynLib_Win32_DynamicLibrary.md)
-- [Juliet\src\Core\HAL\Event\Keyboard](Juliet_src_Core_HAL_Event_Keyboard.md)
-- [Juliet\src\Core\HAL\Event\KeyboardMapping](Juliet_src_Core_HAL_Event_KeyboardMapping.md)
-- [Juliet\src\Core\HAL\Event\Mouse](Juliet_src_Core_HAL_Event_Mouse.md)
-- [Juliet\include\Core\HAL\Event\SystemEvent](Juliet_include_Core_HAL_Event_SystemEvent.md)
-- [Juliet\src\Core\HAL\Event\WindowEvent](Juliet_src_Core_HAL_Event_WindowEvent.md)
-- [Juliet\include\Core\HAL\Filesystem\Filesystem](Juliet_include_Core_HAL_Filesystem_Filesystem.md)
-- [Juliet\src\Core\HAL\Filesystem\Win32\Win32Filesystem](Juliet_src_Core_HAL_Filesystem_Win32_Win32Filesystem.md)
-- [Juliet\include\Core\HAL\IO\IOStream](Juliet_include_Core_HAL_IO_IOStream.md)
-- [Juliet\src\Core\HAL\IO\Win32\Win32IOStream](Juliet_src_Core_HAL_IO_Win32_Win32IOStream.md)
-- [Juliet\include\Core\HAL\OS\OS](Juliet_include_Core_HAL_OS_OS.md)
-- [Juliet\src\Core\HAL\OS\Win32\Win32OS](Juliet_src_Core_HAL_OS_Win32_Win32OS.md)
-- [Juliet\include\Core\HotReload\HotReload](Juliet_include_Core_HotReload_HotReload.md)
-- [Juliet\src\Core\HotReload\Win32\Win32HotReload](Juliet_src_Core_HotReload_Win32_Win32HotReload.md)
-- [Juliet\include\Core\ImGui\ImGuiService](Juliet_include_Core_ImGui_ImGuiService.md)
-- [Juliet\include\Core\ImGui\ImGuiTests](Juliet_include_Core_ImGui_ImGuiTests.md)
-- [Juliet\src\Core\Juliet](Juliet_src_Core_Juliet.md)
-- [Juliet\include\Core\Logging\LogManager](Juliet_include_Core_Logging_LogManager.md)
-- [Juliet\src\Core\Math\MathRound](Juliet_src_Core_Math_MathRound.md)
-- [Juliet\include\Core\Memory\Allocator](Juliet_include_Core_Memory_Allocator.md)
-- [Juliet\include\Core\Memory\MemoryArena](Juliet_include_Core_Memory_MemoryArena.md)
-- [Juliet\include\Core\Memory\MemoryArenaDebug](Juliet_include_Core_Memory_MemoryArenaDebug.md)
-- [Juliet\src\Core\Memory\MemoryArenaTests](Juliet_src_Core_Memory_MemoryArenaTests.md)
-- [Juliet\include\Core\Memory\ScratchArena](Juliet_include_Core_Memory_ScratchArena.md)
-- [Juliet\include\Core\Networking\NetworkPacket](Juliet_include_Core_Networking_NetworkPacket.md)
-- [Juliet\include\Core\Networking\Socket](Juliet_include_Core_Networking_Socket.md)
-- [Juliet\include\Core\Networking\TcpListener](Juliet_include_Core_Networking_TcpListener.md)
-- [Juliet\include\Core\Networking\TcpSocket](Juliet_include_Core_Networking_TcpSocket.md)
-- [Juliet\src\Core\Networking\Win32\Win32SocketPlatformImpl](Juliet_src_Core_Networking_Win32_Win32SocketPlatformImpl.md)
-- [Juliet\include\Engine\Debug\MemoryDebugger](Juliet_include_Engine_Debug_MemoryDebugger.md)
-- [Juliet\include\Engine\Engine](Juliet_include_Engine_Engine.md)
-- [Juliet\src\Graphics\D3D12\AgilitySDK\d3dx12\d3dx12_property_format_table](Juliet_src_Graphics_D3D12_AgilitySDK_d3dx12_d3dx12_property_format_table.md)
-- [Juliet\src\Graphics\D3D12\D3D12Buffer](Juliet_src_Graphics_D3D12_D3D12Buffer.md)
-- [Juliet\src\Graphics\D3D12\D3D12CommandList](Juliet_src_Graphics_D3D12_D3D12CommandList.md)
-- [Juliet\src\Graphics\D3D12\D3D12Common](Juliet_src_Graphics_D3D12_D3D12Common.md)
-- [Juliet\src\Graphics\D3D12\D3D12DescriptorHeap](Juliet_src_Graphics_D3D12_D3D12DescriptorHeap.md)
-- [Juliet\src\Graphics\D3D12\D3D12GraphicsDevice](Juliet_src_Graphics_D3D12_D3D12GraphicsDevice.md)
-- [Juliet\src\Graphics\D3D12\D3D12GraphicsPipeline](Juliet_src_Graphics_D3D12_D3D12GraphicsPipeline.md)
-- [Juliet\src\Graphics\D3D12\D3D12InternalTests](Juliet_src_Graphics_D3D12_D3D12InternalTests.md)
-- [Juliet\src\Graphics\D3D12\D3D12RenderPass](Juliet_src_Graphics_D3D12_D3D12RenderPass.md)
-- [Juliet\src\Graphics\D3D12\D3D12Shader](Juliet_src_Graphics_D3D12_D3D12Shader.md)
-- [Juliet\src\Graphics\D3D12\D3D12SwapChain](Juliet_src_Graphics_D3D12_D3D12SwapChain.md)
-- [Juliet\src\Graphics\D3D12\D3D12Synchronization](Juliet_src_Graphics_D3D12_D3D12Synchronization.md)
-- [Juliet\src\Graphics\D3D12\D3D12Texture](Juliet_src_Graphics_D3D12_D3D12Texture.md)
-- [Juliet\src\Graphics\D3D12\D3D12Utils](Juliet_src_Graphics_D3D12_D3D12Utils.md)
-- [Juliet\src\Graphics\DebugDisplayRenderer](Juliet_src_Graphics_DebugDisplayRenderer.md)
-- [Juliet\include\Graphics\Graphics](Juliet_include_Graphics_Graphics.md)
-- [Juliet\include\Graphics\ImGuiRenderer](Juliet_include_Graphics_ImGuiRenderer.md)
-- [Juliet\include\Graphics\Mesh](Juliet_include_Graphics_Mesh.md)
-- [Juliet\include\Graphics\MeshRenderer](Juliet_include_Graphics_MeshRenderer.md)
-- [Juliet\include\Graphics\SkyboxRenderer](Juliet_include_Graphics_SkyboxRenderer.md)
-- [Juliet\src\UnitTest\Container\VectorUnitTest](Juliet_src_UnitTest_Container_VectorUnitTest.md)
-- [Juliet\src\UnitTest\RunUnitTests](Juliet_src_UnitTest_RunUnitTests.md)
-- [Juliet\include\Core\Application\IApplication](Juliet_include_Core_Application_IApplication.md)
-- [Juliet\include\Core\Common\CoreTypes](Juliet_include_Core_Common_CoreTypes.md)
-- [Juliet\include\Core\Common\CRC32](Juliet_include_Core_Common_CRC32.md)
-- [Juliet\include\Core\Common\EnumUtils](Juliet_include_Core_Common_EnumUtils.md)
-- [Juliet\include\Core\Common\NonCopyable](Juliet_include_Core_Common_NonCopyable.md)
-- [Juliet\include\Core\Common\NonMovable](Juliet_include_Core_Common_NonMovable.md)
-- [Juliet\include\Core\Common\NonNullPtr](Juliet_include_Core_Common_NonNullPtr.md)
-- [Juliet\include\Core\Common\Singleton](Juliet_include_Core_Common_Singleton.md)
-- [Juliet\include\Core\HAL\DynLib\DynamicLibrary](Juliet_include_Core_HAL_DynLib_DynamicLibrary.md)
-- [Juliet\include\Core\HAL\Keyboard\Keyboard](Juliet_include_Core_HAL_Keyboard_Keyboard.md)
-- [Juliet\include\Core\HAL\Keyboard\KeyCode](Juliet_include_Core_HAL_Keyboard_KeyCode.md)
-- [Juliet\include\Core\HAL\Keyboard\ScanCode](Juliet_include_Core_HAL_Keyboard_ScanCode.md)
-- [Juliet\include\Core\HAL\Mouse\Mouse](Juliet_include_Core_HAL_Mouse_Mouse.md)
-- [Juliet\include\Core\JulietInit](Juliet_include_Core_JulietInit.md)
-- [Juliet\include\Core\Logging\LogTypes](Juliet_include_Core_Logging_LogTypes.md)
-- [Juliet\include\Core\Main](Juliet_include_Core_Main.md)
-- [Juliet\include\Core\Math\MathUtils](Juliet_include_Core_Math_MathUtils.md)
-- [Juliet\include\Core\Math\Matrix](Juliet_include_Core_Math_Matrix.md)
-- [Juliet\include\Core\Math\Shape](Juliet_include_Core_Math_Shape.md)
-- [Juliet\include\Core\Math\Vector](Juliet_include_Core_Math_Vector.md)
-- [Juliet\include\Core\Memory\Utils](Juliet_include_Core_Memory_Utils.md)
-- [Juliet\include\Core\Networking\IPAddress](Juliet_include_Core_Networking_IPAddress.md)
-- [Juliet\include\Core\Networking\SocketHandle](Juliet_include_Core_Networking_SocketHandle.md)
-- [Juliet\include\Core\Thread\Mutex](Juliet_include_Core_Thread_Mutex.md)
-- [Juliet\include\Core\Thread\Thread](Juliet_include_Core_Thread_Thread.md)
-- [Juliet\include\Engine\Class](Juliet_include_Engine_Class.md)
-- [Juliet\include\Graphics\Camera](Juliet_include_Graphics_Camera.md)
-- [Juliet\include\Graphics\Colors](Juliet_include_Graphics_Colors.md)
-- [Juliet\include\Graphics\DebugDisplay](Juliet_include_Graphics_DebugDisplay.md)
-- [Juliet\include\Graphics\GraphicsBuffer](Juliet_include_Graphics_GraphicsBuffer.md)
-- [Juliet\include\Graphics\GraphicsConfig](Juliet_include_Graphics_GraphicsConfig.md)
-- [Juliet\include\Graphics\GraphicsPipeline](Juliet_include_Graphics_GraphicsPipeline.md)
-- [Juliet\include\Graphics\Lighting](Juliet_include_Graphics_Lighting.md)
-- [Juliet\include\Graphics\PushConstants](Juliet_include_Graphics_PushConstants.md)
-- [Juliet\include\Graphics\RenderPass](Juliet_include_Graphics_RenderPass.md)
-- [Juliet\include\Graphics\Shader](Juliet_include_Graphics_Shader.md)
-- [Juliet\include\Graphics\Texture](Juliet_include_Graphics_Texture.md)
-- [Juliet\include\Graphics\VertexData](Juliet_include_Graphics_VertexData.md)
-- [Juliet\include\Juliet](Juliet_include_Juliet.md)
+- [C:\Dev\Classified\Juliet\Juliet\include\Core\Application\ApplicationManager](C__Dev_Classified_Juliet_Juliet_include_Core_Application_ApplicationManager.md)
+- [C:\Dev\Classified\Juliet\Juliet\include\Core\Common\CoreUtils](C__Dev_Classified_Juliet_Juliet_include_Core_Common_CoreUtils.md)
+- [C:\Dev\Classified\Juliet\Juliet\include\Core\Common\String](C__Dev_Classified_Juliet_Juliet_include_Core_Common_String.md)
+- [C:\Dev\Classified\Juliet\Juliet\include\Core\Container\Vector](C__Dev_Classified_Juliet_Juliet_include_Core_Container_Vector.md)
+- [C:\Dev\Classified\Juliet\Juliet\include\Core\HAL\Display\Display](C__Dev_Classified_Juliet_Juliet_include_Core_HAL_Display_Display.md)
+- [C:\Dev\Classified\Juliet\Juliet\src\Core\HAL\Display\Win32\Win32DisplayDevice](C__Dev_Classified_Juliet_Juliet_src_Core_HAL_Display_Win32_Win32DisplayDevice.md)
+- [C:\Dev\Classified\Juliet\Juliet\src\Core\HAL\Display\Win32\Win32DisplayEvent](C__Dev_Classified_Juliet_Juliet_src_Core_HAL_Display_Win32_Win32DisplayEvent.md)
+- [C:\Dev\Classified\Juliet\Juliet\src\Core\HAL\Display\Win32\Win32Window](C__Dev_Classified_Juliet_Juliet_src_Core_HAL_Display_Win32_Win32Window.md)
+- [C:\Dev\Classified\Juliet\Juliet\src\Core\HAL\DynLib\Win32\DynamicLibrary](C__Dev_Classified_Juliet_Juliet_src_Core_HAL_DynLib_Win32_DynamicLibrary.md)
+- [C:\Dev\Classified\Juliet\Juliet\src\Core\HAL\Event\Keyboard](C__Dev_Classified_Juliet_Juliet_src_Core_HAL_Event_Keyboard.md)
+- [C:\Dev\Classified\Juliet\Juliet\src\Core\HAL\Event\KeyboardMapping](C__Dev_Classified_Juliet_Juliet_src_Core_HAL_Event_KeyboardMapping.md)
+- [C:\Dev\Classified\Juliet\Juliet\src\Core\HAL\Event\Mouse](C__Dev_Classified_Juliet_Juliet_src_Core_HAL_Event_Mouse.md)
+- [C:\Dev\Classified\Juliet\Juliet\include\Core\HAL\Event\SystemEvent](C__Dev_Classified_Juliet_Juliet_include_Core_HAL_Event_SystemEvent.md)
+- [C:\Dev\Classified\Juliet\Juliet\src\Core\HAL\Event\WindowEvent](C__Dev_Classified_Juliet_Juliet_src_Core_HAL_Event_WindowEvent.md)
+- [C:\Dev\Classified\Juliet\Juliet\include\Core\HAL\Filesystem\Filesystem](C__Dev_Classified_Juliet_Juliet_include_Core_HAL_Filesystem_Filesystem.md)
+- [C:\Dev\Classified\Juliet\Juliet\src\Core\HAL\Filesystem\Win32\Win32Filesystem](C__Dev_Classified_Juliet_Juliet_src_Core_HAL_Filesystem_Win32_Win32Filesystem.md)
+- [C:\Dev\Classified\Juliet\Juliet\include\Core\HAL\IO\IOStream](C__Dev_Classified_Juliet_Juliet_include_Core_HAL_IO_IOStream.md)
+- [C:\Dev\Classified\Juliet\Juliet\src\Core\HAL\IO\Win32\Win32IOStream](C__Dev_Classified_Juliet_Juliet_src_Core_HAL_IO_Win32_Win32IOStream.md)
+- [C:\Dev\Classified\Juliet\Juliet\include\Core\HAL\OS\OS](C__Dev_Classified_Juliet_Juliet_include_Core_HAL_OS_OS.md)
+- [C:\Dev\Classified\Juliet\Juliet\src\Core\HAL\OS\Win32\Win32OS](C__Dev_Classified_Juliet_Juliet_src_Core_HAL_OS_Win32_Win32OS.md)
+- [C:\Dev\Classified\Juliet\Juliet\include\Core\HotReload\HotReload](C__Dev_Classified_Juliet_Juliet_include_Core_HotReload_HotReload.md)
+- [C:\Dev\Classified\Juliet\Juliet\src\Core\HotReload\Win32\Win32HotReload](C__Dev_Classified_Juliet_Juliet_src_Core_HotReload_Win32_Win32HotReload.md)
+- [C:\Dev\Classified\Juliet\Juliet\include\Core\ImGui\ImGuiService](C__Dev_Classified_Juliet_Juliet_include_Core_ImGui_ImGuiService.md)
+- [C:\Dev\Classified\Juliet\Juliet\include\Core\ImGui\ImGuiTests](C__Dev_Classified_Juliet_Juliet_include_Core_ImGui_ImGuiTests.md)
+- [C:\Dev\Classified\Juliet\Juliet\src\Core\Juliet](C__Dev_Classified_Juliet_Juliet_src_Core_Juliet.md)
+- [C:\Dev\Classified\Juliet\Juliet\include\Core\Logging\LogManager](C__Dev_Classified_Juliet_Juliet_include_Core_Logging_LogManager.md)
+- [C:\Dev\Classified\Juliet\Juliet\src\Core\Math\MathRound](C__Dev_Classified_Juliet_Juliet_src_Core_Math_MathRound.md)
+- [C:\Dev\Classified\Juliet\Juliet\include\Core\Memory\Allocator](C__Dev_Classified_Juliet_Juliet_include_Core_Memory_Allocator.md)
+- [C:\Dev\Classified\Juliet\Juliet\include\Core\Memory\MemoryArena](C__Dev_Classified_Juliet_Juliet_include_Co
\ No newline at end of file
diff --git a/Romeo/docs/romeo.db b/Romeo/docs/romeo.db
index 634d6a0..b94bb75 100644
Binary files a/Romeo/docs/romeo.db and b/Romeo/docs/romeo.db differ
diff --git a/Romeo/src/AiGenerator.cpp b/Romeo/src/AiGenerator.cpp
index c7216a2..1051d91 100644
--- a/Romeo/src/AiGenerator.cpp
+++ b/Romeo/src/AiGenerator.cpp
@@ -1,8 +1,9 @@
#include "AiGenerator.h"
#include "HttpClient.h"
#include "JsonParser.h"
-#include
#include
+#include
+#include
#include
#include
#include
@@ -27,11 +28,11 @@ namespace Romeo
{
return {};
}
-
+
fseek(f, 0, SEEK_END);
long size = ftell(f);
fseek(f, 0, SEEK_SET);
-
+
if (size <= 0)
{
fclose(f);
@@ -252,7 +253,7 @@ namespace Romeo
size_t bodyCap = modelName.Size + escapedPrompt.Size + 256;
char* bodyBuf = Juliet::ArenaPushArray(arena, bodyCap JULIET_DEBUG_PARAM("OllamaBody"));
snprintf(bodyBuf, bodyCap,
- "{\"model\":\"%.*s\",\"prompt\":\"%.*s\",\"stream\":false,\"think\":false}",
+ "{\"model\":\"%.*s\",\"prompt\":\"%.*s\",\"stream\":false,\"think\":true}",
static_cast(modelName.Size), CStr(modelName),
static_cast(escapedPrompt.Size), CStr(escapedPrompt)
);
diff --git a/Romeo/src/MarkdownGenerator.cpp b/Romeo/src/MarkdownGenerator.cpp
index e1af751..e42ab43 100644
--- a/Romeo/src/MarkdownGenerator.cpp
+++ b/Romeo/src/MarkdownGenerator.cpp
@@ -1026,6 +1026,8 @@ namespace Romeo
}
}
+ printf("Rome: Done processing batch\n");
+
Juliet::ArenaRelease(aiArena);
Juliet::ArenaRelease(tempArena);
fclose(overviewFile);
diff --git a/fbuild.bff b/fbuild.bff
index c379f04..40f50b9 100644
--- a/fbuild.bff
+++ b/fbuild.bff
@@ -258,7 +258,7 @@ ForEach( .Config in .Configs )
VSSolution( 'GenerateSolution' )
{
.SolutionOutput = 'Juliet.sln'
- .SolutionProjects = { 'Juliet', 'Game', 'JulietApp', 'ImGui', 'Romeo' }
+ .SolutionProjects = { 'Juliet', 'Game', 'JulietApp', 'ImGui' }
.SolutionConfigs = .ProjectConfigs
.SolutionBuildProject = 'JulietApp'
diff --git a/misc/Generate.bat b/misc/Generate.bat
index 22a71d7..127c458 100644
--- a/misc/Generate.bat
+++ b/misc/Generate.bat
@@ -2,4 +2,5 @@
setlocal
fbuild gen-shader -summary
+fbuild gen-romeo -summary
fbuild generatesolution -summary
\ No newline at end of file
diff --git a/misc/launch.bat b/misc/launch.bat
index 5448589..3926bc5 100644
--- a/misc/launch.bat
+++ b/misc/launch.bat
@@ -4,7 +4,9 @@ setlocal
:: --- 1. Argument Parsing Logic ---
set "ARG1="
set "ARG2="
+set "ARG3="
set "AUTOCLOSE=0"
+set "CUSTOM_EXE="
for %%x in (%*) do (
if /I "%%~x"=="autoclose" (
@@ -14,6 +16,8 @@ for %%x in (%*) do (
set "ARG1=%%~x"
) else if not defined ARG2 (
set "ARG2=%%~x"
+ ) else if not defined ARG3 (
+ set "ARG3=%%~x"
)
)
)
@@ -21,20 +25,19 @@ for %%x in (%*) do (
:: Set Defaults
set "COMPILER_TYPE=clang"
set "CONFIG=Debug"
+set "APP_EXE=JulietApp.exe"
-:: Check if the first argument is a Configuration instead of a Compiler
-if /I "%ARG1%"=="Release" (
- set "CONFIG=Release"
-) else if /I "%ARG1%"=="Profile" (
- set "CONFIG=Profile"
-) else if /I "%ARG1%"=="Debug" (
- set "CONFIG=Debug"
-) else if /I "%ARG1%"=="msvc" (
- set "COMPILER_TYPE=msvc"
- if not "%ARG2%"=="" set "CONFIG=%ARG2%"
-) else if /I "%ARG1%"=="clang" (
- set "COMPILER_TYPE=clang"
- if not "%ARG2%"=="" set "CONFIG=%ARG2%"
+:: Check for Configuration, Compiler, or custom EXE name
+:: (Assuming the custom EXE name is passed as the final argument if needed)
+for %%i in (%ARG1% %ARG2% %ARG3%) do (
+ if /I "%%i"=="Release" set "CONFIG=Release"
+ if /I "%%i"=="Profile" set "CONFIG=Profile"
+ if /I "%%i"=="Debug" set "CONFIG=Debug"
+ if /I "%%i"=="msvc" set "COMPILER_TYPE=msvc"
+ if /I "%%i"=="clang" set "COMPILER_TYPE=clang"
+
+ :: If argument contains .exe, treat it as the target executable name
+ echo %%i | findstr /i ".exe" >nul && set "APP_EXE=%%i"
)
:: --- 2. Map Compiler to Platform ---
@@ -46,7 +49,6 @@ if /I "%COMPILER_TYPE%"=="clang" (
:: --- 3. Construct Paths ---
set "APP_DIR=bin\%PLATFORM%-%CONFIG%"
-set "APP_EXE=JulietApp.exe"
echo --- Launching %APP_EXE% ---
echo Platform: %PLATFORM%