Make Juliet a dynamic library.

Added some dllexport (JULIET_API) to make the code compile.
A lot are missing but will be added when needed
This commit is contained in:
2025-01-11 14:14:38 -05:00
parent 915858c0d3
commit 2b82952f62
11 changed files with 734 additions and 351 deletions

View File

@@ -1,233 +1,287 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<VCProjectVersion>17.0</VCProjectVersion>
<Keyword>Win32Proj</Keyword>
<ProjectGuid>{1bbc0b92-e4d8-4838-974b-439c5c501e82}</ProjectGuid>
<RootNamespace>Juliet</RootNamespace>
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props"/>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>ClangCL</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>ClangCL</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props"/>
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Label="Shared">
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform"/>
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform"/>
</ImportGroup>
<PropertyGroup Label="UserMacros"/>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<OutDir>$(SolutionDir)\lib\$(Platform)\$(Configuration)\</OutDir>
<IntDir>$(SolutionDir)Intermediate\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
<IncludePath>$(SolutionDir)Juliet\include\;$(SolutionDir)Juliet\src\;$(SolutionDir)Juliet\src\Graphics\RHI\DX12\D3D12;$(IncludePath)</IncludePath>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<OutDir>$(SolutionDir)\bin\$(Platform)\$(Configuration)\</OutDir>
<IntDir>$(SolutionDir)Intermediate\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
<IncludePath>$(SolutionDir)Juliet\include\;$(SolutionDir)Juliet\src\;$(SolutionDir)Juliet\src\Graphics\RHI\DX12\D3D12;$(IncludePath)</IncludePath>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>_DEBUG;_LIB;JULIET_WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
<PrecompiledHeader>Use</PrecompiledHeader>
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
<LanguageStandard>stdcpp20</LanguageStandard>
<FloatingPointModel>Fast</FloatingPointModel>
<RuntimeTypeInfo>false</RuntimeTypeInfo>
<ExceptionHandling>false</ExceptionHandling>
</ClCompile>
<Link>
<SubSystem>
</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>NDEBUG;_LIB;JULIET_WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
<PrecompiledHeader>Use</PrecompiledHeader>
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
<LanguageStandard>stdcpp20</LanguageStandard>
<FloatingPointModel>Fast</FloatingPointModel>
<RuntimeTypeInfo>false</RuntimeTypeInfo>
<ExceptionHandling>false</ExceptionHandling>
</ClCompile>
<Link>
<SubSystem>
</SubSystem>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClInclude Include="include\Core\Application\ApplicationManager.h"/>
<ClInclude Include="include\Core\Application\IApplication.h"/>
<ClInclude Include="include\Core\Common\CoreTypes.h"/>
<ClInclude Include="include\Core\Common\CoreUtils.h"/>
<ClInclude Include="include\Core\Common\EnumUtils.h"/>
<ClInclude Include="include\Core\Common\NonCopyable.h"/>
<ClInclude Include="include\Core\Common\NonMovable.h"/>
<ClInclude Include="include\Core\Common\NonNullPtr.h"/>
<ClInclude Include="include\Core\Common\Singleton.h"/>
<ClInclude Include="include\Core\Container\Vector.h"/>
<ClInclude Include="include\Core\HAL\Display\Display.h"/>
<ClInclude Include="include\Core\HAL\Event\SystemEvent.h"/>
<ClInclude Include="include\Core\HAL\Keyboard\Keyboard.h"/>
<ClInclude Include="include\Core\HAL\Keyboard\KeyCode.h"/>
<ClInclude Include="include\Core\HAL\Keyboard\ScanCode.h"/>
<ClInclude Include="include\Core\HAL\Mouse\Mouse.h"/>
<ClInclude Include="include\Core\JulietInit.h"/>
<ClInclude Include="include\Core\Logging\LogManager.h"/>
<ClInclude Include="include\Core\Logging\LogTypes.h"/>
<ClInclude Include="include\Core\Memory\Allocator.h"/>
<ClInclude Include="include\Core\Memory\Utils.h"/>
<ClInclude Include="include\Core\Networking\IPAddress.h"/>
<ClInclude Include="include\Core\Networking\NetworkPacket.h"/>
<ClInclude Include="include\Core\Networking\Socket.h"/>
<ClInclude Include="include\Core\Networking\SocketHandle.h"/>
<ClInclude Include="include\Core\Networking\TcpListener.h"/>
<ClInclude Include="include\Core\Networking\TcpSocket.h"/>
<ClInclude Include="include\Core\Thread\Thread.h"/>
<ClInclude Include="include\Engine\Engine.h"/>
<ClInclude Include="include\Graphics\Graphics.h"/>
<ClInclude Include="include\Graphics\GraphicsConfig.h"/>
<ClInclude Include="include\pch.h"/>
<ClInclude Include="src\Core\HAL\Display\DisplayDevice.h"/>
<ClInclude Include="src\Core\HAL\Display\Display_Private.h"/>
<ClInclude Include="src\Core\HAL\Display\Win32\Win32DisplayDevice.h"/>
<ClInclude Include="src\Core\HAL\Display\Win32\Win32DisplayEvent.h"/>
<ClInclude Include="src\Core\HAL\Display\Win32\Win32Window.h"/>
<ClInclude Include="src\Core\HAL\Display\Window.h"/>
<ClInclude Include="src\Core\HAL\Event\KeyboardMapping.h"/>
<ClInclude Include="src\Core\HAL\Event\Keyboard_Private.h"/>
<ClInclude Include="src\Core\HAL\Event\Mouse_Private.h"/>
<ClInclude Include="src\Core\HAL\Event\Win32ScanCode.h"/>
<ClInclude Include="src\Core\HAL\Event\WindowEvent.h"/>
<ClInclude Include="src\Core\Networking\SocketPlatformImpl.h"/>
<ClInclude Include="src\Core\HAL\Win32.h"/>
<ClInclude Include="src\Graphics\GraphicsDevice.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="src\Core\Application\ApplicationManager.cpp" />
<ClCompile Include="src\Core\Common\CoreUtils.cpp" />
<ClCompile Include="src\Core\HAL\Display\Display.cpp" />
<ClCompile Include="src\Core\HAL\Display\Win32\Win32DisplayDevice.cpp" />
<ClCompile Include="src\Core\HAL\Display\Win32\Win32DisplayEvent.cpp" />
<ClCompile Include="src\Core\HAL\Display\Win32\Win32Window.cpp" />
<ClCompile Include="src\Core\HAL\Event\Keyboard.cpp" />
<ClCompile Include="src\Core\HAL\Event\KeyboardMapping.cpp" />
<ClCompile Include="src\Core\HAL\Event\Mouse.cpp" />
<ClCompile Include="src\Core\HAL\Event\SystemEvent.cpp" />
<ClCompile Include="src\Core\HAL\Event\WindowEvent.cpp" />
<ClCompile Include="src\Core\Juliet.cpp" />
<ClCompile Include="src\Core\Logging\LogManager.cpp" />
<ClCompile Include="src\Core\Memory\Allocator.cpp" />
<ClCompile Include="src\Core\Networking\NetworkPacket.cpp" />
<ClCompile Include="src\Core\Networking\Socket.cpp" />
<ClCompile Include="src\Core\Networking\TcpListener.cpp" />
<ClCompile Include="src\Core\Networking\TcpSocket.cpp" />
<ClCompile Include="src\Core\Networking\Win32\Win32SocketPlatformImpl.cpp" />
<ClCompile Include="src\Engine\Engine.cpp" />
<ClCompile Include="src\Graphics\DX12\DX12GraphicsDevice.cpp" />
<ClCompile Include="src\Graphics\Graphics.cpp">
<RuntimeLibrary>MultiThreadedDebugDll</RuntimeLibrary>
<Optimization>Disabled</Optimization>
<SupportJustMyCode>true</SupportJustMyCode>
<AssemblerOutput>NoListing</AssemblerOutput>
<AssemblerListingLocation>W:\Classified\Juliet\Intermediate\Juliet\x64\Debug\</AssemblerListingLocation>
<UndefineAllPreprocessorDefinitions>false</UndefineAllPreprocessorDefinitions>
<BrowseInformationFile>W:\Classified\Juliet\Intermediate\Juliet\x64\Debug\</BrowseInformationFile>
<CompileAs>Default</CompileAs>
<ConformanceMode>Default</ConformanceMode>
<DiagnosticsFormat>Column</DiagnosticsFormat>
<ExceptionHandling>false</ExceptionHandling>
<EnableASAN>false</EnableASAN>
<EnableFiberSafeOptimizations>false</EnableFiberSafeOptimizations>
<EnableEnhancedInstructionSet>NotSet</EnableEnhancedInstructionSet>
<FloatingPointModel>Fast</FloatingPointModel>
<InlineFunctionExpansion>Default</InlineFunctionExpansion>
<IntrinsicFunctions>false</IntrinsicFunctions>
<LanguageStandard>stdcpp20</LanguageStandard>
<LanguageStandard_C>Default</LanguageStandard_C>
<ModuleDependenciesFile>W:\Classified\Juliet\Intermediate\Juliet\x64\Debug\</ModuleDependenciesFile>
<OmitDefaultLibName>false</OmitDefaultLibName>
<FavorSizeOrSpeed>Neither</FavorSizeOrSpeed>
<ObjectFileName>W:\Classified\Juliet\Intermediate\Juliet\x64\Debug\</ObjectFileName>
<CallingConvention>Cdecl</CallingConvention>
<PrecompiledHeader>Use</PrecompiledHeader>
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
<PrecompiledHeaderOutputFile>W:\Classified\Juliet\Intermediate\Juliet\x64\Debug\Juliet.pch</PrecompiledHeaderOutputFile>
<PreprocessToFile>false</PreprocessToFile>
<PreprocessKeepComments>false</PreprocessKeepComments>
<PreprocessSuppressLineNumbers>false</PreprocessSuppressLineNumbers>
<ScanSourceForModuleDependencies>false</ScanSourceForModuleDependencies>
<ShowIncludes>false</ShowIncludes>
<SourceDependenciesFile>W:\Classified\Juliet\Intermediate\Juliet\x64\Debug\</SourceDependenciesFile>
<SuppressStartupBanner>true</SuppressStartupBanner>
<BufferSecurityCheck>true</BufferSecurityCheck>
<SmallerTypeCheck>false</SmallerTypeCheck>
<StructMemberAlignment>Default</StructMemberAlignment>
<TrackerLogDirectory>W:\Classified\Juliet\Intermediate\Juliet\x64\Debug\Juliet.tlog\</TrackerLogDirectory>
<MinimalRebuildFromTracking>true</MinimalRebuildFromTracking>
<TreatWarningAsError>false</TreatWarningAsError>
<WarningLevel>Level3</WarningLevel>
<XMLDocumentationFileName>W:\Classified\Juliet\Intermediate\Juliet\x64\Debug\</XMLDocumentationFileName>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<IntelJCCErratum>false</IntelJCCErratum>
<BuildStlModules>false</BuildStlModules>
<TreatExternalTemplatesAsInternal>true</TreatExternalTemplatesAsInternal>
<PreprocessorDefinitions>_DEBUG;_LIB;JULIET_WIN32;_UNICODE;UNICODE;</PreprocessorDefinitions>
<RuntimeTypeInfo>false</RuntimeTypeInfo>
<LibCompiled>true</LibCompiled>
<ClangClMode>true</ClangClMode>
<MSCVersion>Default</MSCVersion>
<AdditionalOptions>--target=amd64-pc-windows-msvc </AdditionalOptions>
</ClCompile>
<ClCompile Include="src\pch.cpp">
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Create</PrecompiledHeader>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Create</PrecompiledHeader>
</ClCompile>
</ItemGroup>
<ItemGroup>
<Content Include="include\Core\Thread\Mutex.h" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets"/>
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<VCProjectVersion>17.0</VCProjectVersion>
<Keyword>Win32Proj</Keyword>
<ProjectGuid>{1bbc0b92-e4d8-4838-974b-439c5c501e82}</ProjectGuid>
<RootNamespace>Juliet</RootNamespace>
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>ClangCL</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>ClangCL</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Label="Shared">
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<OutDir>$(SolutionDir)\lib\$(Platform)\$(Configuration)\</OutDir>
<IntDir>$(SolutionDir)Intermediate\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
<IncludePath>$(SolutionDir)Juliet\include\;$(SolutionDir)Juliet\src\;$(SolutionDir)Juliet\src\Graphics\DX12\D3D12;$(IncludePath)</IncludePath>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<OutDir>$(SolutionDir)\bin\$(Platform)\$(Configuration)\</OutDir>
<IntDir>$(SolutionDir)Intermediate\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
<IncludePath>$(SolutionDir)Juliet\include\;$(SolutionDir)Juliet\src\;$(SolutionDir)Juliet\src\Graphics\DX12\D3D12;$(IncludePath)</IncludePath>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>_DEBUG;JULIET_EXPORT;JULIET_WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
<PrecompiledHeader>Use</PrecompiledHeader>
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
<LanguageStandard>stdcpp20</LanguageStandard>
<FloatingPointModel>Fast</FloatingPointModel>
<RuntimeTypeInfo>false</RuntimeTypeInfo>
<ExceptionHandling>false</ExceptionHandling>
</ClCompile>
<Link>
<SubSystem>
</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalDependencies>ws2_32.lib;d3d12.lib;dxgi.lib;$(CoreLibraryDependencies);%(AdditionalDependencies)</AdditionalDependencies>
</Link>
<Lib>
<AdditionalDependencies>
</AdditionalDependencies>
</Lib>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>NDEBUG;JULIET_EXPORT;JULIET_WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
<PrecompiledHeader>Use</PrecompiledHeader>
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
<LanguageStandard>stdcpp20</LanguageStandard>
<FloatingPointModel>Fast</FloatingPointModel>
<RuntimeTypeInfo>false</RuntimeTypeInfo>
<ExceptionHandling>false</ExceptionHandling>
</ClCompile>
<Link>
<SubSystem>
</SubSystem>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalDependencies>ws2_32.lib;d3d12.lib;dxgi.lib;$(CoreLibraryDependencies);%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClInclude Include="include\Core\Application\ApplicationManager.h" />
<ClInclude Include="include\Core\Application\IApplication.h" />
<ClInclude Include="include\Core\Common\CoreTypes.h" />
<ClInclude Include="include\Core\Common\CoreUtils.h" />
<ClInclude Include="include\Core\Common\EnumUtils.h" />
<ClInclude Include="include\Core\Common\NonCopyable.h" />
<ClInclude Include="include\Core\Common\NonMovable.h" />
<ClInclude Include="include\Core\Common\NonNullPtr.h" />
<ClInclude Include="include\Core\Common\Singleton.h" />
<ClInclude Include="include\Core\Container\Vector.h" />
<ClInclude Include="include\Core\HAL\Display\Display.h" />
<ClInclude Include="include\Core\HAL\Event\SystemEvent.h" />
<ClInclude Include="include\Core\HAL\Keyboard\Keyboard.h" />
<ClInclude Include="include\Core\HAL\Keyboard\KeyCode.h" />
<ClInclude Include="include\Core\HAL\Keyboard\ScanCode.h" />
<ClInclude Include="include\Core\HAL\Mouse\Mouse.h" />
<ClInclude Include="include\Core\JulietInit.h" />
<ClInclude Include="include\Core\Logging\LogManager.h" />
<ClInclude Include="include\Core\Logging\LogTypes.h" />
<ClInclude Include="include\Core\Memory\Allocator.h" />
<ClInclude Include="include\Core\Memory\Utils.h" />
<ClInclude Include="include\Core\Networking\IPAddress.h" />
<ClInclude Include="include\Core\Networking\NetworkPacket.h" />
<ClInclude Include="include\Core\Networking\Socket.h" />
<ClInclude Include="include\Core\Networking\SocketHandle.h" />
<ClInclude Include="include\Core\Networking\TcpListener.h" />
<ClInclude Include="include\Core\Networking\TcpSocket.h" />
<ClInclude Include="include\Core\Thread\Thread.h" />
<ClInclude Include="include\Engine\Engine.h" />
<ClInclude Include="include\Graphics\Graphics.h" />
<ClInclude Include="include\Graphics\GraphicsConfig.h" />
<ClInclude Include="include\Juliet.h" />
<ClInclude Include="include\pch.h" />
<ClInclude Include="src\Core\HAL\Display\DisplayDevice.h" />
<ClInclude Include="src\Core\HAL\Display\Display_Private.h" />
<ClInclude Include="src\Core\HAL\Display\Win32\Win32DisplayDevice.h" />
<ClInclude Include="src\Core\HAL\Display\Win32\Win32DisplayEvent.h" />
<ClInclude Include="src\Core\HAL\Display\Win32\Win32Window.h" />
<ClInclude Include="src\Core\HAL\Display\Window.h" />
<ClInclude Include="src\Core\HAL\Event\KeyboardMapping.h" />
<ClInclude Include="src\Core\HAL\Event\Keyboard_Private.h" />
<ClInclude Include="src\Core\HAL\Event\Mouse_Private.h" />
<ClInclude Include="src\Core\HAL\Event\Win32ScanCode.h" />
<ClInclude Include="src\Core\HAL\Event\WindowEvent.h" />
<ClInclude Include="src\Core\Networking\SocketPlatformImpl.h" />
<ClInclude Include="src\Core\HAL\Win32.h" />
<ClInclude Include="src\Graphics\DX12\D3D12\directx\d3d12.h" />
<ClInclude Include="src\Graphics\DX12\D3D12\directx\d3d12compatibility.h" />
<ClInclude Include="src\Graphics\DX12\D3D12\directx\d3d12sdklayers.h" />
<ClInclude Include="src\Graphics\DX12\D3D12\directx\d3d12shader.h" />
<ClInclude Include="src\Graphics\DX12\D3D12\directx\D3D12TokenizedProgramFormat.hpp" />
<ClInclude Include="src\Graphics\DX12\D3D12\directx\d3d12video.h" />
<ClInclude Include="src\Graphics\DX12\D3D12\directx\d3dcommon.h" />
<ClInclude Include="src\Graphics\DX12\D3D12\directx\d3dx12.h" />
<ClInclude Include="src\Graphics\DX12\D3D12\directx\d3dx12_barriers.h" />
<ClInclude Include="src\Graphics\DX12\D3D12\directx\d3dx12_check_feature_support.h" />
<ClInclude Include="src\Graphics\DX12\D3D12\directx\d3dx12_core.h" />
<ClInclude Include="src\Graphics\DX12\D3D12\directx\d3dx12_default.h" />
<ClInclude Include="src\Graphics\DX12\D3D12\directx\d3dx12_pipeline_state_stream.h" />
<ClInclude Include="src\Graphics\DX12\D3D12\directx\d3dx12_property_format_table.h" />
<ClInclude Include="src\Graphics\DX12\D3D12\directx\d3dx12_render_pass.h" />
<ClInclude Include="src\Graphics\DX12\D3D12\directx\d3dx12_resource_helpers.h" />
<ClInclude Include="src\Graphics\DX12\D3D12\directx\d3dx12_root_signature.h" />
<ClInclude Include="src\Graphics\DX12\D3D12\directx\d3dx12_state_object.h" />
<ClInclude Include="src\Graphics\DX12\D3D12\directx\DirectML.h" />
<ClInclude Include="src\Graphics\DX12\D3D12\directx\dxcore.h" />
<ClInclude Include="src\Graphics\DX12\D3D12\directx\dxcore_interface.h" />
<ClInclude Include="src\Graphics\DX12\D3D12\directx\dxgicommon.h" />
<ClInclude Include="src\Graphics\DX12\D3D12\directx\dxgiformat.h" />
<ClInclude Include="src\Graphics\DX12\D3D12\dxguids\dxguids.h" />
<ClInclude Include="src\Graphics\DX12\D3D12\wsl\stubs\basetsd.h" />
<ClInclude Include="src\Graphics\DX12\D3D12\wsl\stubs\oaidl.h" />
<ClInclude Include="src\Graphics\DX12\D3D12\wsl\stubs\ocidl.h" />
<ClInclude Include="src\Graphics\DX12\D3D12\wsl\stubs\rpc.h" />
<ClInclude Include="src\Graphics\DX12\D3D12\wsl\stubs\rpcndr.h" />
<ClInclude Include="src\Graphics\DX12\D3D12\wsl\stubs\unknwn.h" />
<ClInclude Include="src\Graphics\DX12\D3D12\wsl\stubs\unknwnbase.h" />
<ClInclude Include="src\Graphics\DX12\D3D12\wsl\stubs\winapifamily.h" />
<ClInclude Include="src\Graphics\DX12\D3D12\wsl\stubs\wrl\client.h" />
<ClInclude Include="src\Graphics\DX12\D3D12\wsl\stubs\wrl\implements.h" />
<ClInclude Include="src\Graphics\DX12\D3D12\wsl\winadapter.h" />
<ClInclude Include="src\Graphics\DX12\D3D12\wsl\wrladapter.h" />
<ClInclude Include="src\Graphics\DX12\DX12Includes.h" />
<ClInclude Include="src\Graphics\DX12\DX12Utils.h" />
<ClInclude Include="src\Graphics\GraphicsDevice.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="src\Core\Application\ApplicationManager.cpp" />
<ClCompile Include="src\Core\Common\CoreUtils.cpp" />
<ClCompile Include="src\Core\HAL\Display\Display.cpp" />
<ClCompile Include="src\Core\HAL\Display\Win32\Win32DisplayDevice.cpp" />
<ClCompile Include="src\Core\HAL\Display\Win32\Win32DisplayEvent.cpp" />
<ClCompile Include="src\Core\HAL\Display\Win32\Win32Window.cpp" />
<ClCompile Include="src\Core\HAL\Event\Keyboard.cpp" />
<ClCompile Include="src\Core\HAL\Event\KeyboardMapping.cpp" />
<ClCompile Include="src\Core\HAL\Event\Mouse.cpp" />
<ClCompile Include="src\Core\HAL\Event\SystemEvent.cpp" />
<ClCompile Include="src\Core\HAL\Event\WindowEvent.cpp" />
<ClCompile Include="src\Core\Juliet.cpp" />
<ClCompile Include="src\Core\Logging\LogManager.cpp" />
<ClCompile Include="src\Core\Memory\Allocator.cpp" />
<ClCompile Include="src\Core\Networking\NetworkPacket.cpp" />
<ClCompile Include="src\Core\Networking\Socket.cpp" />
<ClCompile Include="src\Core\Networking\TcpListener.cpp" />
<ClCompile Include="src\Core\Networking\TcpSocket.cpp" />
<ClCompile Include="src\Core\Networking\Win32\Win32SocketPlatformImpl.cpp" />
<ClCompile Include="src\Engine\Engine.cpp" />
<ClCompile Include="src\Graphics\DX12\D3D12\directx\d3dx12_property_format_table.cpp" />
<ClCompile Include="src\Graphics\DX12\D3D12\dxguids\dxguids.cpp" />
<ClCompile Include="src\Graphics\DX12\DX12GraphicsDevice.cpp" />
<ClCompile Include="src\Graphics\Graphics.cpp">
<RuntimeLibrary>MultiThreadedDebugDll</RuntimeLibrary>
<Optimization>Disabled</Optimization>
<SupportJustMyCode>true</SupportJustMyCode>
<AssemblerOutput>NoListing</AssemblerOutput>
<AssemblerListingLocation>W:\Classified\Juliet\Intermediate\Juliet\x64\Debug\</AssemblerListingLocation>
<UndefineAllPreprocessorDefinitions>false</UndefineAllPreprocessorDefinitions>
<BrowseInformationFile>W:\Classified\Juliet\Intermediate\Juliet\x64\Debug\</BrowseInformationFile>
<CompileAs>Default</CompileAs>
<ConformanceMode>Default</ConformanceMode>
<DiagnosticsFormat>Column</DiagnosticsFormat>
<ExceptionHandling>false</ExceptionHandling>
<EnableASAN>false</EnableASAN>
<EnableFiberSafeOptimizations>false</EnableFiberSafeOptimizations>
<EnableEnhancedInstructionSet>NotSet</EnableEnhancedInstructionSet>
<FloatingPointModel>Fast</FloatingPointModel>
<InlineFunctionExpansion>Default</InlineFunctionExpansion>
<IntrinsicFunctions>false</IntrinsicFunctions>
<LanguageStandard>stdcpp20</LanguageStandard>
<LanguageStandard_C>Default</LanguageStandard_C>
<ModuleDependenciesFile>W:\Classified\Juliet\Intermediate\Juliet\x64\Debug\</ModuleDependenciesFile>
<OmitDefaultLibName>false</OmitDefaultLibName>
<FavorSizeOrSpeed>Neither</FavorSizeOrSpeed>
<ObjectFileName>W:\Classified\Juliet\Intermediate\Juliet\x64\Debug\</ObjectFileName>
<CallingConvention>Cdecl</CallingConvention>
<PrecompiledHeader>Use</PrecompiledHeader>
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
<PrecompiledHeaderOutputFile>W:\Classified\Juliet\Intermediate\Juliet\x64\Debug\Juliet.pch</PrecompiledHeaderOutputFile>
<PreprocessToFile>false</PreprocessToFile>
<PreprocessKeepComments>false</PreprocessKeepComments>
<PreprocessSuppressLineNumbers>false</PreprocessSuppressLineNumbers>
<ScanSourceForModuleDependencies>false</ScanSourceForModuleDependencies>
<ShowIncludes>false</ShowIncludes>
<SourceDependenciesFile>W:\Classified\Juliet\Intermediate\Juliet\x64\Debug\</SourceDependenciesFile>
<SuppressStartupBanner>true</SuppressStartupBanner>
<BufferSecurityCheck>true</BufferSecurityCheck>
<SmallerTypeCheck>false</SmallerTypeCheck>
<StructMemberAlignment>Default</StructMemberAlignment>
<TrackerLogDirectory>W:\Classified\Juliet\Intermediate\Juliet\x64\Debug\Juliet.tlog\</TrackerLogDirectory>
<MinimalRebuildFromTracking>true</MinimalRebuildFromTracking>
<TreatWarningAsError>false</TreatWarningAsError>
<WarningLevel>Level3</WarningLevel>
<XMLDocumentationFileName>W:\Classified\Juliet\Intermediate\Juliet\x64\Debug\</XMLDocumentationFileName>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<IntelJCCErratum>false</IntelJCCErratum>
<BuildStlModules>false</BuildStlModules>
<TreatExternalTemplatesAsInternal>true</TreatExternalTemplatesAsInternal>
<PreprocessorDefinitions>_DEBUG;_LIB;JULIET_WIN32;_UNICODE;UNICODE;</PreprocessorDefinitions>
<RuntimeTypeInfo>false</RuntimeTypeInfo>
<LibCompiled>true</LibCompiled>
<ClangClMode>true</ClangClMode>
<MSCVersion>Default</MSCVersion>
<AdditionalOptions>--target=amd64-pc-windows-msvc </AdditionalOptions>
</ClCompile>
<ClCompile Include="src\pch.cpp">
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Create</PrecompiledHeader>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Create</PrecompiledHeader>
</ClCompile>
</ItemGroup>
<ItemGroup>
<Content Include="include\Core\Thread\Mutex.h" />
<Content Include="src\Graphics\DX12\D3D12\directx\d3d12.idl" />
<Content Include="src\Graphics\DX12\D3D12\directx\d3d12compatibility.idl" />
<Content Include="src\Graphics\DX12\D3D12\directx\d3d12sdklayers.idl" />
<Content Include="src\Graphics\DX12\D3D12\directx\d3d12video.idl" />
<Content Include="src\Graphics\DX12\D3D12\directx\d3dcommon.idl" />
<Content Include="src\Graphics\DX12\D3D12\directx\dxgicommon.idl" />
<Content Include="src\Graphics\DX12\D3D12\directx\dxgiformat.idl" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>

View File

@@ -54,10 +54,247 @@
<ClInclude Include="include\Engine\Engine.h">
<Filter>Header Files\Engine</Filter>
</ClInclude>
<ClInclude Include="include\Core\Platform\Win32\Win32.h">
<ClInclude Include="include\pch.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="include\pch.h">
<ClInclude Include="include\Core\Common\CoreTypes.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Core\Common\CoreUtils.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Core\Common\EnumUtils.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Core\Common\NonCopyable.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Core\Common\NonMovable.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Core\Common\NonNullPtr.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Core\Common\Singleton.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Core\Container\Vector.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Core\HAL\Display\Display.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Core\HAL\Event\SystemEvent.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Core\HAL\Keyboard\Keyboard.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Core\HAL\Keyboard\KeyCode.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Core\HAL\Keyboard\ScanCode.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Core\HAL\Mouse\Mouse.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Core\JulietInit.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Core\Logging\LogManager.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Core\Logging\LogTypes.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Core\Memory\Allocator.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Core\Memory\Utils.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Core\Networking\IPAddress.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Core\Networking\NetworkPacket.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Core\Networking\Socket.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Core\Networking\SocketHandle.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Core\Networking\TcpListener.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Core\Networking\TcpSocket.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Core\Thread\Thread.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Graphics\Graphics.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Graphics\GraphicsConfig.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Core\HAL\Display\DisplayDevice.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Core\HAL\Display\Display_Private.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Core\HAL\Display\Win32\Win32DisplayDevice.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Core\HAL\Display\Win32\Win32DisplayEvent.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Core\HAL\Display\Win32\Win32Window.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Core\HAL\Display\Window.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Core\HAL\Event\KeyboardMapping.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Core\HAL\Event\Keyboard_Private.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Core\HAL\Event\Mouse_Private.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Core\HAL\Event\Win32ScanCode.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Core\HAL\Event\WindowEvent.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Core\Networking\SocketPlatformImpl.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Core\HAL\Win32.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\directx\d3d12.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\directx\d3d12compatibility.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\directx\d3d12sdklayers.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\directx\d3d12shader.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\directx\D3D12TokenizedProgramFormat.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\directx\d3d12video.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\directx\d3dcommon.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\directx\d3dx12.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\directx\d3dx12_barriers.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\directx\d3dx12_check_feature_support.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\directx\d3dx12_core.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\directx\d3dx12_default.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\directx\d3dx12_pipeline_state_stream.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\directx\d3dx12_property_format_table.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\directx\d3dx12_render_pass.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\directx\d3dx12_resource_helpers.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\directx\d3dx12_root_signature.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\directx\d3dx12_state_object.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\directx\DirectML.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\directx\dxcore.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\directx\dxcore_interface.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\directx\dxgicommon.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\directx\dxgiformat.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\dxguids\dxguids.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\wsl\stubs\basetsd.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\wsl\stubs\oaidl.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\wsl\stubs\ocidl.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\wsl\stubs\rpc.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\wsl\stubs\rpcndr.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\wsl\stubs\unknwn.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\wsl\stubs\unknwnbase.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\wsl\stubs\winapifamily.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\wsl\stubs\wrl\client.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\wsl\stubs\wrl\implements.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\wsl\winadapter.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\D3D12\wsl\wrladapter.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\DX12Includes.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\DX12\DX12Utils.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Graphics\GraphicsDevice.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
@@ -71,5 +308,71 @@
<ClCompile Include="src\pch.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\Core\Common\CoreUtils.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\Core\HAL\Display\Display.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\Core\HAL\Display\Win32\Win32DisplayDevice.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\Core\HAL\Display\Win32\Win32DisplayEvent.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\Core\HAL\Display\Win32\Win32Window.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\Core\HAL\Event\Keyboard.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\Core\HAL\Event\KeyboardMapping.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\Core\HAL\Event\Mouse.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\Core\HAL\Event\SystemEvent.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\Core\HAL\Event\WindowEvent.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\Core\Juliet.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\Core\Logging\LogManager.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\Core\Memory\Allocator.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\Core\Networking\NetworkPacket.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\Core\Networking\Socket.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\Core\Networking\TcpListener.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\Core\Networking\TcpSocket.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\Core\Networking\Win32\Win32SocketPlatformImpl.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\Graphics\DX12\D3D12\directx\d3dx12_property_format_table.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\Graphics\DX12\D3D12\dxguids\dxguids.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\Graphics\DX12\DX12GraphicsDevice.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\Graphics\Graphics.cpp">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
</Project>

View File

@@ -5,5 +5,6 @@
namespace Juliet
{
enum class JulietInit_Flags : uint8;
void StartApplication(IApplication& app, JulietInit_Flags flags);
extern JULIET_API void StartApplication(IApplication& app, JulietInit_Flags flags);
} // namespace Juliet

View File

@@ -1,8 +1,6 @@
#pragma once
#include <algorithm>
#include <cstdio>
#include <cstdlib>
#include <Juliet.h>
#if _DEBUG
#define Assert(expression) \
@@ -19,4 +17,4 @@
#define Assert(Expression)
#endif
void JulietAssert(const char* expression);
extern void JULIET_API JulietAssert(const char* expression);

View File

@@ -1,5 +1,6 @@
#pragma once
#include <Juliet.h>
#include <Core/Common/CoreTypes.h>
#include <core/Common/NonNullPtr.h>
@@ -8,11 +9,11 @@ namespace Juliet
struct Window;
using WindowID = uint8;
extern Window* CreatePlatformWindow(const char* title, uint16 width, uint16 height, int flags = 0 /* unused */);
extern void DestroyPlatformWindow(NonNullPtr<Window> window);
extern JULIET_API Window* CreatePlatformWindow(const char* title, uint16 width, uint16 height, int flags = 0 /* unused */);
extern JULIET_API void DestroyPlatformWindow(NonNullPtr<Window> window);
extern void ShowWindow(NonNullPtr<Window> window);
extern void HideWindow(NonNullPtr<Window> window);
extern JULIET_API void ShowWindow(NonNullPtr<Window> window);
extern JULIET_API void HideWindow(NonNullPtr<Window> window);
extern WindowID GetWindowID(NonNullPtr<Window> window);
extern JULIET_API WindowID GetWindowID(NonNullPtr<Window> window);
} // namespace Juliet

View File

@@ -4,6 +4,7 @@
#include <Core/HAL/Keyboard/Keyboard.h>
#include <Core/HAL/Keyboard/KeyCode.h>
#include <Core/HAL/Mouse/Mouse.h>
#include <Juliet.h>
// Handles all events from systems handling the Hardware
// Very inspired by SDL3
@@ -106,15 +107,15 @@ namespace Juliet
// Poll for any event, return false if no event is available.
// Equivalent to WaitEvent(event, 0);
// Will not block
extern bool GetEvent(SystemEvent& event);
extern JULIET_API bool GetEvent(SystemEvent& event);
// TODO : use chrono to tag the timeout correctly with nanosec
// timeout == -1 means wait for any event before pursuing
// timeout == 0 means checking once for the frame and getting out
// timeout > 0 means wait until time is out
extern bool WaitEvent(SystemEvent& event, int32 timeoutInNS = -1);
extern JULIET_API bool WaitEvent(SystemEvent& event, int32 timeoutInNS = -1);
// Add an event onto the event queue.
// TODO : support array of events
extern bool AddEvent(SystemEvent& event);
extern JULIET_API bool AddEvent(SystemEvent& event);
} // namespace Juliet

View File

@@ -1,5 +1,7 @@
#pragma once
#include <Juliet.h>
// TODO : Juliet strings
#include <string>
// TODO Juliet Containers + Allocators...
@@ -37,7 +39,7 @@ namespace Juliet
static void OutputLog(Entry& entry);
};
void InitializeLogManager();
void ShutdownLogManager();
void Log(LogLevel level, LogCategory category, const char* fmt, ...);
extern void JULIET_API InitializeLogManager();
extern void JULIET_API ShutdownLogManager();
extern void JULIET_API Log(LogLevel level, LogCategory category, const char* fmt, ...);
} // namespace Juliet

View File

@@ -1,11 +1,12 @@
#pragma once
#include <Graphics/GraphicsConfig.h>
#include <Juliet.h>
// Graphics Interface
namespace Juliet
{
struct GraphicsDevice;
extern GraphicsDevice* CreateGraphicsDevice(GraphicsConfig config);
extern JULIET_API GraphicsDevice* CreateGraphicsDevice(GraphicsConfig config);
} // namespace Juliet

21
Juliet/include/Juliet.h Normal file
View File

@@ -0,0 +1,21 @@
#pragma once
// Should be included in all files to define basic includes and macros
// clang-format off
#if defined(_WIN32)
#define JULIET_WIN32 1
#endif
#ifndef JULIET_API
# if defined(JULIET_WIN32)
# ifdef JULIET_EXPORT
# define JULIET_API __declspec(dllexport)
# else
#define JULIET_API
# endif
# else
# define JULIET_API (void) // Only Win32 is supported for now
# endif
#endif
// clang-format on

View File

@@ -7,6 +7,7 @@
#ifndef PCH_H
#define PCH_H
#include <Juliet.h>
#include <Core/Common/CoreTypes.h>
#include <Core/Common/CoreUtils.h>
#include <Core/Logging/LogManager.h>

View File

@@ -1,105 +1,105 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<ItemGroup>
<ClCompile Include="Editor\EditorMain_win32.cpp"/>
</ItemGroup>
<ItemGroup>
<ClInclude Include="Editor\EditorMain_win32.h"/>
</ItemGroup>
<PropertyGroup Label="Globals">
<VCProjectVersion>17.0</VCProjectVersion>
<Keyword>Win32Proj</Keyword>
<ProjectGuid>{4b2a0f9c-5f78-4bc9-bee9-1e58bb85fa79}</ProjectGuid>
<RootNamespace>JulietApp</RootNamespace>
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props"/>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>ClangCL</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>ClangCL</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props"/>
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Label="Shared">
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform"/>
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform"/>
</ImportGroup>
<PropertyGroup Label="UserMacros"/>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<LibraryPath>$(SolutionDir)\lib\$(Platform)\$(Configuration)\;$(LibraryPath)</LibraryPath>
<IntDir>$(SolutionDir)Intermediate\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
<OutDir>$(SolutionDir)\bin\$(Platform)\$(Configuration)\</OutDir>
<IncludePath>$(SolutionDir)Juliet\include\;$(SolutionDir)JulietApp;$(IncludePath)</IncludePath>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<IncludePath>$(SolutionDir)Juliet\include\;$(SolutionDir)JulietApp;$(IncludePath)</IncludePath>
<LibraryPath>$(SolutionDir)\lib\$(Platform)\$(Configuration)\;$(LibraryPath)</LibraryPath>
<OutDir>$(SolutionDir)\bin\$(Platform)\$(Configuration)\</OutDir>
<IntDir>$(SolutionDir)Intermediate\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>_DEBUG;JULIET_WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
<LanguageStandard>stdcpp20</LanguageStandard>
<ExceptionHandling>false</ExceptionHandling>
<FloatingPointModel>Fast</FloatingPointModel>
<RuntimeTypeInfo>false</RuntimeTypeInfo>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalDependencies>Juliet.lib;ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>NDEBUG;JULIET_WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
<LanguageStandard>stdcpp20</LanguageStandard>
<ExceptionHandling>false</ExceptionHandling>
<FloatingPointModel>Fast</FloatingPointModel>
<RuntimeTypeInfo>false</RuntimeTypeInfo>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalDependencies>Juliet.lib;ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets"/>
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<ItemGroup>
<ClCompile Include="Editor\EditorMain_win32.cpp" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="Editor\EditorMain_win32.h" />
</ItemGroup>
<PropertyGroup Label="Globals">
<VCProjectVersion>17.0</VCProjectVersion>
<Keyword>Win32Proj</Keyword>
<ProjectGuid>{4b2a0f9c-5f78-4bc9-bee9-1e58bb85fa79}</ProjectGuid>
<RootNamespace>JulietApp</RootNamespace>
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>ClangCL</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>ClangCL</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Label="Shared">
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<LibraryPath>$(SolutionDir)\lib\$(Platform)\$(Configuration)\;$(LibraryPath)</LibraryPath>
<IntDir>$(SolutionDir)Intermediate\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
<OutDir>$(SolutionDir)\bin\$(Platform)\$(Configuration)\</OutDir>
<IncludePath>$(SolutionDir)Juliet\include\;$(SolutionDir)JulietApp;$(IncludePath)</IncludePath>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<IncludePath>$(SolutionDir)Juliet\include\;$(SolutionDir)JulietApp;$(IncludePath)</IncludePath>
<LibraryPath>$(SolutionDir)\lib\$(Platform)\$(Configuration)\;$(LibraryPath)</LibraryPath>
<OutDir>$(SolutionDir)\bin\$(Platform)\$(Configuration)\</OutDir>
<IntDir>$(SolutionDir)Intermediate\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>_DEBUG;JULIET_WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
<LanguageStandard>stdcpp20</LanguageStandard>
<ExceptionHandling>false</ExceptionHandling>
<FloatingPointModel>Fast</FloatingPointModel>
<RuntimeTypeInfo>false</RuntimeTypeInfo>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalDependencies>Juliet.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>NDEBUG;JULIET_WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
<LanguageStandard>stdcpp20</LanguageStandard>
<ExceptionHandling>false</ExceptionHandling>
<FloatingPointModel>Fast</FloatingPointModel>
<RuntimeTypeInfo>false</RuntimeTypeInfo>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalDependencies>Juliet.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>