新增 Components 模块: - Component 基类 (生命周期、启用状态管理) - TransformComponent (本地/世界空间变换、矩阵缓存、父子层级) - GameObject (组件管理、父子层级、激活状态、静态查找) 新增 Scene 模块: - Scene (场景管理、对象创建销毁、查找、生命周期) - SceneManager (单例模式、多场景管理、场景切换) 新增测试: - test_component.cpp (12 个测试) - test_transform_component.cpp (35 个测试) - test_game_object.cpp (26 个测试) - test_scene.cpp (20 个测试) - test_scene_manager.cpp (17 个测试) 所有测试均已编译通过。
260 lines
15 KiB
CMake
260 lines
15 KiB
CMake
cmake_minimum_required(VERSION 3.15)
|
|
project(XCEngineLib)
|
|
|
|
set(CMAKE_CXX_STANDARD 17)
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
|
|
add_library(XCEngine STATIC
|
|
# Math
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Math/Math.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Math/Vector2.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Math/Vector3.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Math/Vector4.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Math/Matrix3.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Math/Matrix4.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Math/Quaternion.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Math/Transform.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Math/Color.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Math/Ray.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Math/Plane.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Math/Sphere.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Math/Box.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Math/Bounds.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Math/Frustum.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Math/Rect.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Math/AABB.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Math/Matrix.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Math/Quaternion.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Math/Transform.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Math/Color.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Math/Geometry.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Math/FrustumBounds.cpp
|
|
|
|
# Containers
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Containers/Containers.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Containers/Array.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Containers/String.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Containers/HashMap.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Containers/String.cpp
|
|
|
|
# Memory
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Memory/Allocator.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Memory/LinearAllocator.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Memory/PoolAllocator.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Memory/ProxyAllocator.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Memory/MemoryManager.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Memory/Memory.cpp
|
|
|
|
# Threading
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Threading/Threading.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Threading/Mutex.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Threading/SpinLock.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Threading/ReadWriteLock.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Threading/Thread.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Threading/Task.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Threading/LambdaTask.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Threading/TaskGroup.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Threading/TaskSystemConfig.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Threading/TaskSystem.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Threading/Thread.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Threading/TaskGroup.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Threading/TaskSystem.cpp
|
|
|
|
# Core
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Core/FileWriter.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Core/FileWriter.cpp
|
|
|
|
# Debug
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Debug/Debug.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Debug/LogLevel.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Debug/LogCategory.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Debug/LogEntry.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Debug/ILogSink.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Debug/ConsoleLogSink.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Debug/FileLogSink.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Debug/Logger.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Debug/Profiler.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Debug/LogLevel.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Debug/LogCategory.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Debug/ConsoleLogSink.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Debug/FileLogSink.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Debug/Logger.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Debug/Profiler.cpp
|
|
|
|
# RHI
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/RHIEnums.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/RHIFactory.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/RHIDescriptorPool.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/D3D12/D3D12Enum.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/D3D12/D3D12Device.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/D3D12/D3D12CommandQueue.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/D3D12/D3D12CommandAllocator.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/D3D12/D3D12CommandList.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/D3D12/D3D12DescriptorHeap.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/D3D12/D3D12Buffer.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/D3D12/D3D12PipelineState.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/D3D12/D3D12Sampler.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/D3D12/D3D12Shader.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/D3D12/D3D12Texture.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/D3D12/D3D12RootSignature.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/D3D12/D3D12SwapChain.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/D3D12/D3D12Fence.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/D3D12/D3D12Screenshot.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/D3D12/D3D12RenderTargetView.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/D3D12/D3D12DepthStencilView.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/D3D12/D3D12ShaderResourceView.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/D3D12/D3D12ConstantBufferView.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/D3D12/D3D12QueryHeap.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/D3D12/D3D12UnorderedAccessView.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/RHI/D3D12/D3D12Device.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/RHI/D3D12/D3D12CommandQueue.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/RHI/D3D12/D3D12CommandAllocator.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/RHI/D3D12/D3D12CommandList.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/RHI/D3D12/D3D12DescriptorHeap.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/RHI/D3D12/D3D12Buffer.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/RHI/D3D12/D3D12PipelineState.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/RHI/D3D12/D3D12Sampler.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/RHI/D3D12/D3D12Shader.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/RHI/D3D12/D3D12Texture.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/RHI/D3D12/D3D12RootSignature.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/RHI/D3D12/D3D12SwapChain.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/RHI/D3D12/D3D12Fence.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/RHI/D3D12/D3D12Screenshot.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/RHI/D3D12/D3D12RenderTargetView.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/RHI/D3D12/D3D12DepthStencilView.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/RHI/D3D12/D3D12ShaderResourceView.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/RHI/D3D12/D3D12ConstantBufferView.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/RHI/D3D12/D3D12QueryHeap.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/RHI/D3D12/D3D12UnorderedAccessView.cpp
|
|
|
|
# OpenGL RHI
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/OpenGL/OpenGLBuffer.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/OpenGL/OpenGLTexture.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/OpenGL/OpenGLSampler.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/OpenGL/OpenGLShader.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/OpenGL/OpenGLVertexArray.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/OpenGL/OpenGLDevice.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/OpenGL/OpenGLCommandList.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/OpenGL/OpenGLCommandQueue.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/OpenGL/OpenGLFence.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/OpenGL/OpenGLPipelineState.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/OpenGL/OpenGLSwapChain.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/OpenGL/OpenGLRenderTargetView.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/RHI/OpenGL/OpenGLDepthStencilView.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/RHI/OpenGL/OpenGLBuffer.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/RHI/OpenGL/OpenGLTexture.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/RHI/OpenGL/OpenGLSampler.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/RHI/OpenGL/OpenGLShader.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/RHI/OpenGL/OpenGLVertexArray.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/RHI/OpenGL/OpenGLDevice.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/RHI/OpenGL/OpenGLCommandList.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/RHI/OpenGL/OpenGLCommandQueue.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/RHI/OpenGL/OpenGLFence.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/RHI/OpenGL/OpenGLPipelineState.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/RHI/OpenGL/OpenGLSwapChain.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/RHI/OpenGL/OpenGLRenderTargetView.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/RHI/OpenGL/OpenGLDepthStencilView.cpp
|
|
|
|
# RHI Factory
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/RHI/RHIFactory.cpp
|
|
|
|
# Resources
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Resources/Resources.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Resources/ResourceTypes.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Resources/IResource.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Resources/ResourceHandle.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Resources/IResourceLoader.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Resources/ResourceManager.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Resources/ResourceCache.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Resources/AsyncLoader.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Resources/ImportSettings.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Resources/Texture.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Resources/Mesh.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Resources/TextureLoader.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Resources/TextureImportSettings.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Resources/MeshLoader.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Resources/MeshImportSettings.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Resources/Material.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Resources/MaterialLoader.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Resources/Shader.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Resources/ShaderLoader.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Resources/AudioClip.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Resources/AudioLoader.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Resources/ResourceFileSystem.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Resources/FileArchive.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Resources/ResourcePackage.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Resources/ResourceDependencyGraph.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Resources/ResourcePath.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Resources/ResourceManager.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Resources/ResourceCache.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Resources/AsyncLoader.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Resources/ResourceTypes.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Resources/IResourceLoader.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Resources/Texture.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Resources/Mesh.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Resources/TextureLoader.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Resources/TextureImportSettings.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Resources/MeshLoader.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Resources/MeshImportSettings.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Resources/Material.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Resources/MaterialLoader.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Resources/Shader.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Resources/ShaderLoader.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Resources/AudioClip.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Resources/AudioLoader.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Resources/ResourceFileSystem.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Resources/FileArchive.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Resources/ResourcePackage.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Resources/ResourceDependencyGraph.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Resources/ResourcePath.cpp
|
|
|
|
# Components
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Components/Component.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Components/TransformComponent.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Components/GameObject.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Components/TransformComponent.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Components/GameObject.cpp
|
|
|
|
# Scene
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Scene/Scene.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Scene/SceneManager.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Scene/Scene.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Scene/SceneManager.cpp
|
|
|
|
# Audio
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Audio/AudioTypes.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Audio/AudioConfig.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Audio/IAudioBackend.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Audio/AudioSystem.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Audio/WASAPI/WASAPIBackend.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Audio/AudioSystem.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Audio/WASAPI/WASAPIBackend.cpp
|
|
|
|
# Audio Components
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Components/AudioSourceComponent.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine/Components/AudioListenerComponent.h
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Components/AudioSourceComponent.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src/Components/AudioListenerComponent.cpp
|
|
|
|
# Third-party (KissFFT)
|
|
${CMAKE_SOURCE_DIR}/third_party/kissfft/kiss_fft.h
|
|
${CMAKE_SOURCE_DIR}/third_party/kissfft/kiss_fft.c
|
|
${CMAKE_SOURCE_DIR}/third_party/kissfft/kiss_fftr.h
|
|
${CMAKE_SOURCE_DIR}/third_party/kissfft/kiss_fftr.c
|
|
${CMAKE_SOURCE_DIR}/third_party/kissfft/_kiss_fft_guts.h
|
|
)
|
|
|
|
target_include_directories(XCEngine PUBLIC
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include
|
|
${CMAKE_CURRENT_SOURCE_DIR}/include/XCEngine
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src
|
|
${CMAKE_SOURCE_DIR}/tests/OpenGL/package/include
|
|
${CMAKE_SOURCE_DIR}/third_party
|
|
)
|
|
|
|
if(MSVC)
|
|
target_compile_options(XCEngine PRIVATE /W3)
|
|
else()
|
|
target_compile_options(XCEngine PRIVATE -Wall)
|
|
endif()
|