Commit Graph

325 Commits

Author SHA1 Message Date
Kah Wei e87c4c8dc8 Fixed SHTextureLibrary compiler errors 2022-09-22 12:39:05 +08:00
Kah Wei 5bc24b09d4 Added generalisation of csproj file location 2022-09-22 12:32:15 +08:00
Xiao Qi 8cfe58a3ad SP3-103 SP3-104 Implemented DDS loading and error reporting
Not tested
2022-09-22 12:29:30 +08:00
Brandon Mak 1290e99dda Merge remote-tracking branch 'origin/SP3-1-Rendering' into SP3-1-Rendering 2022-09-22 12:12:47 +08:00
Brandon Mak 7ddf665460 Updated Descriptor sets
Descriptor set layouts now have set index stored in them
It should be noted that when passed into a pipeline layout as global descriptor sets, these don't matter since the pipeline layout will use these in the order that they are passed in.
2022-09-22 12:12:44 +08:00
Xiao Qi a13e8f43fd Merge branch 'main' into SP3-13-Assets-Manager 2022-09-22 11:41:44 +08:00
Xiao Qi 6f1592e16f SP3-103 SP3-102 Added call to mesh loader in asset manager. Removed old references to previous maps and vectors. 2022-09-22 11:40:24 +08:00
Xiao Qi 8ac6ef95d6 SP3-103 Implemented library to load GLTF with assimp and processmesh 2022-09-22 11:26:06 +08:00
Kah Wei b04789945f Merge branch 'main' into SP3-6-c-scripting 2022-09-22 11:06:26 +08:00
Kah Wei af1d24d874 Fixed certain DLLs and includes missing when copying 2022-09-22 10:52:07 +08:00
Kah Wei c1b7c7ded8 Merge branch 'main' into SP3-6-c-scripting
# Conflicts:
#	SHADE_Application/src/Application/SBApplication.cpp
#	SHADE_Engine/src/Scene/SHSceneManager.h
2022-09-22 09:55:31 +08:00
Brandon Mak ba181eb9c9 Shifted Command buffers outside of render graph
Command buffers now exist in renderer instead
Graphics system that calls the renderer, begins and ends the renderer recording in it's main loop as well
2022-09-22 09:23:40 +08:00
Kah Wei 3d9abcf19c Implemented image creation for textures in the texture bank 2022-09-22 09:19:18 +08:00
Xiao Qi 4446d0a60d Merge branch 'main' into SP3-13-Assets-Manager 2022-09-21 22:54:53 +08:00
Xiao Qi d2e2e85726 Added build path ignore
Readded output dir and removed interdir from premake
Added DEBUG guards in SHVkPhysicalDeviceLibrary when using SHLOG_TRACE
2022-09-21 22:54:15 +08:00
Xiao Qi ae3fb448d4 Merge branch 'main' into SP3-13-Assets-Manager 2022-09-21 22:28:31 +08:00
Xiao Qi 124b367413 Fixed SHTransform compile error
Include header in math path wrong
Added proj and filter ignore into git (again)
2022-09-21 22:24:52 +08:00
Xiao Qi ba4d85a4e1 SP3-103 SP3-104 Implementing Mesh Loader for asset manager to use assimp to load gltf
Loading of dds from gltf file planned ahead
2022-09-21 22:20:52 +08:00
Brandon Mak 7acf25a770 Merge remote-tracking branch 'origin/main' into SP3-1-Rendering 2022-09-21 20:09:48 +08:00
Kah Wei 791c4cd0d0 Merge branch 'SP3-1-Rendering' of https://github.com/SHADE-DP/SHADE_Y3 into SP3-1-Rendering 2022-09-21 20:03:03 +08:00
XiaoQiDigipen f52fa9463d
Merge pull request #39 from SHADE-DP/SP3-16-Math 2022-09-21 20:02:20 +08:00
XiaoQiDigipen 67d673ff80
Merge pull request #38 from SHADE-DP/SP3-12-SceneGraph 2022-09-21 20:01:44 +08:00
Diren D Bharwani 14eed4c726 Added missing active check in transform system 2022-09-21 18:30:20 +08:00
Diren D Bharwani ac379e3ef3 Added method to scene graph to easily traverse and execute a unary function 2022-09-21 18:23:01 +08:00
Brandon Mak 270c8240c1 Shifted Graphics system to SBTestScene 2022-09-21 16:29:54 +08:00
Brandon Mak 80dc8d0a71 Merge remote-tracking branch 'origin/main' into SP3-1-Rendering 2022-09-21 15:41:36 +08:00
Brandon Mak 8d2b6aec46 Descriptor set fix and camera descriptor set
Fixed SHVkDescriptorSetGroup bug with vkLayouts inside the ctor
Added descriptor set to renderer for camera
Logical Device now stores a buffer alignment variable for UBOs
2022-09-21 15:41:30 +08:00
Diren D Bharwani 415e47780c Completed Transform System 2022-09-21 14:54:57 +08:00
Diren D Bharwani 0db7392eed Merge remote-tracking branch 'origin/main' into SP3-16-Math 2022-09-21 14:06:36 +08:00
Cocoa 9c69d41a4e Added 90% of transform component & transform system. 2022-09-21 00:49:52 +08:00
Cocoa 3cd538562c More Scene Graph Fixes 2022-09-20 19:32:28 +08:00
Kah Wei 5f305f9609 Added SHTextureLibrary stub 2022-09-20 18:13:13 +08:00
Cocoa cc6d1dd95b Added Transform Component 2022-09-20 17:20:57 +08:00
Brandon Mak c194765889 More warnings fixed. More graphics constants. 2022-09-20 16:12:47 +08:00
Cocoa 7f173b3207 Added SH_API to Math Classes 2022-09-20 16:10:47 +08:00
Cocoa 7b7a4788e4 Merge branch 'main' into SP3-16-Math 2022-09-20 15:42:53 +08:00
Cocoa b5f3ec85aa Merge branch 'main' into SP3-16-Math 2022-09-20 15:37:28 +08:00
Cocoa f4bf895e45 Fixed constness of functions in scene graph 2022-09-20 15:35:10 +08:00
Brandon Mak 0bc3a23161 Fixed the fence with high quality wood 2022-09-20 14:15:09 +08:00
Brandon Mak 147292f91c Fence is broken. The neighbour's kids went to knock it down again. 2022-09-20 12:15:06 +08:00
Brandon Mak d9213fe35d Moved a bunch of global data from Graphics System to new class
New class in SHGraphicsGlobalData
2022-09-20 10:39:52 +08:00
Brandon Mak 77330511ee Fixed pipeline default color blend state
Remember to switch winding back to CCW after rendering in world space
2022-09-20 09:27:13 +08:00
Cocoa c0290b7185 Added fixes to scene graph. Read description for details.
1. Scene graph creates a root on construction. EntityID is set to MaxEID. The root is not intended to be modified.
2. When adding a node, if the 2nd arg (parent) is omitted, the node will be a child of the root.
2022-09-20 01:31:59 +08:00
Cocoa 34685e6726 Regenerated project files 2022-09-20 00:48:27 +08:00
Kah Wei 8772ce0cea Fixed SHSceneManager not SH_API-ed 2022-09-20 00:03:29 +08:00
Kah Wei 95b01fb96d Merge branch 'main' into SP3-6-c-scripting 2022-09-19 23:12:52 +08:00
Kah Wei 8ad0eee032 Fixed vertex data buffer being incorrect 2022-09-19 21:31:23 +08:00
Kah Wei 9e09896984 Fixed SHVkBuffer move and reworked batching buffers to be host visible 2022-09-19 20:15:39 +08:00
Xiao Qi c6e1ba7f15 Added tinyddsloader to dependencies 2022-09-19 18:40:27 +08:00
Kah Wei 4023b9d136 Added tests for rendering and fixed bugs with Batching system 2022-09-19 18:37:57 +08:00
maverickdgg ceb96938fb Added SHAPI to Scene graph 2022-09-19 17:28:59 +08:00
Cocoa e51a3688af Merge branch 'main' into SP3-16-Math 2022-09-19 17:17:40 +08:00
Kah Wei 308aa35e00 Merge branch 'main' into SP3-6-c-scripting 2022-09-19 17:17:28 +08:00
Xiao Qi 620f8a01ac Merge branch 'main' into SP3-13-Assets-Manager 2022-09-19 17:16:51 +08:00
Xiao Qi 52efdcf65e Merge branch 'main' into SP3-5-ECS 2022-09-19 17:12:54 +08:00
Cocoa ec3470c443 Merge branch 'main' into SP3-16-Math 2022-09-19 17:08:16 +08:00
Xiao Qi a867ecbcbf SP3-108 Shifted definitions for functions in Event Manager from cpp to hpp 2022-09-19 17:08:08 +08:00
Cocoa 471ec27a6d Added Bounding Box 2022-09-19 16:50:06 +08:00
Kah Wei f408247007 Linked MeshLibrary to RenderGraph 2022-09-19 15:52:51 +08:00
maverickdgg 44611115fe Added Scene graph functionality (un tested) 2022-09-19 15:41:52 +08:00
Brandon Mak d025abe43a Render graph execution now takes in graph scope buffers 2022-09-19 15:32:03 +08:00
Cocoa f1e6031d2e Added Transform, adjusted alignment in math files for better readability on smaller screens 2022-09-19 14:32:01 +08:00
Kah Wei 8070b2dafa Accounted for Shaders with no SHShaderBlockInterface 2022-09-19 00:11:57 +08:00
Brandon Mak 23fe51b483 Merge remote-tracking branch 'origin/SP3-1-Rendering' into SP3-1-Rendering 2022-09-19 00:04:42 +08:00
Brandon Mak 643efbe1bb WIP 2022-09-19 00:00:07 +08:00
Kah Wei b9185eab18 Added Mesh Registration Functions to SHGraphicsSystem and a SHGraphicsSystem compatible version of mesh generation functions for SHPrimitiveGenerator 2022-09-18 23:23:48 +08:00
Kah Wei 41daaaba9c Added SHPrimitiveGenerator 2022-09-18 23:11:08 +08:00
Brandon Mak 28a5f8e4e5 Auto stash before merge of "SP3-1-Rendering" and "origin/SP3-1-Rendering" 2022-09-18 22:34:48 +08:00
Kah Wei 96ec1afcdd Changed batching system to use SHRenderable* instead of handles 2022-09-18 17:02:02 +08:00
maverickdgg f21aa8836c Merge branch 'main' into SP3-5-ECS 2022-09-18 16:50:10 +08:00
maverickdgg b3d9a54d8f Added entity creation event and entity destroyed events 2022-09-18 16:46:08 +08:00
Brandon Mak ec40754eb9 Render graph, graphics system and pipeline library changes lel
Solved errors
Graphics system AddMaterial now takes in a subpass
Pipeline library now stored in render graph node instead since pipelines have to be compatible with a renderpass.
Renderers now bind render graphs instead of storing them
2022-09-18 15:23:10 +08:00
Kah Wei 8c30e656f7 Modified AddMaterial() to take in a subpass 2022-09-18 14:58:32 +08:00
Kah Wei 7a126bf1fc SHViewport now takes in a RenderGraph instead of creating one 2022-09-18 14:49:15 +08:00
Kah Wei a3aa708b34 Fixed numerous template errors and warnings 2022-09-18 00:49:27 +08:00
Kah Wei 6e4d6abd1c Fixed Handle<> include issues 2022-09-17 23:37:22 +08:00
Kah Wei 1c8a434b26 Added Batcher classes and fixed errors 2022-09-17 23:37:22 +08:00
Brandon Mak c1a3a6acf1 Created global descriptor set layouts 2022-09-17 23:32:03 +08:00
Xiao Qi 6706f9acf0 SP3-108 Created templated derived classes for events to accommodate for automatic type sending ability 2022-09-17 22:33:11 +08:00
Brandon Mak bff27a7188 Added a bunch of KW's files for batching
Prepared Graphics system for merging with batcher
2022-09-17 22:29:22 +08:00
Kah Wei 5171ddd2bf Added SHLog class and changed Debug::Log to use SHLog 2022-09-17 03:20:24 +08:00
Brandon Mak 2f2567044a Submitted command buffer :D 2022-09-16 17:28:27 +08:00
Kah Wei c83a5a379e Added Awake, Start, Update, LateUpdate, OnDestroy calls via SystemRoutines 2022-09-16 17:02:36 +08:00
Sri Sham Haran eb8cbaeebb init vulkan for imgui 2022-09-16 16:40:42 +08:00
Kah Wei 0f63ee10d0 Converted SHScriptEngine into a SHSystem 2022-09-16 16:37:50 +08:00
Kah Wei 941f4a135f Merge branch 'main' into SP3-6-c-scripting 2022-09-16 16:21:58 +08:00
Sri Sham Haran 470e1f07f0 Merge branch 'main' into SP3-4-editor 2022-09-16 15:02:56 +08:00
Brandon Mak c1c5e70676 Merge remote-tracking branch 'origin/main' into SP3-1-Rendering 2022-09-16 14:46:48 +08:00
Brandon Mak a42a8b0c46 SH_API EVERYWHERE 2022-09-16 14:20:21 +08:00
XiaoQiDigipen e976dee601
Merge pull request #27 from SHADE-DP/SP3-5-ECS
SP3-5 ECS

System manager rework. Added system routines
2022-09-16 14:15:23 +08:00
Brandon Mak 4b168fb2d7 Merge branch 'main' into SP3-1-Rendering 2022-09-16 14:09:14 +08:00
Brandon Mak eb975d96c6 Merge remote-tracking branch 'origin/main' into SP3-1-Rendering 2022-09-16 14:08:36 +08:00
Xiao Qi 0373754e37 Merge branch 'main' into SP3-5-ECS 2022-09-16 14:06:05 +08:00
Kah Wei c89fe48182 Merge branch 'BackTo5.0' into SP3-6-c-scripting 2022-09-16 14:04:56 +08:00
Kah Wei aaf3d67eed Downgraded back to .NET 5.0 due to lack of VS 2019 support 2022-09-16 14:02:55 +08:00
Sri Sham Haran 6f67c1acc7 Base Editor (WIP, no vulkan) 2022-09-16 13:55:29 +08:00
Kah Wei b933b0f7fc Added SerializeField attribute 2022-09-16 13:13:38 +08:00
Brandon Mak f0b9f19f4d clear color value fix 2022-09-16 12:33:42 +08:00
Xiao Qi 1dde480a9f Merge branch 'main' into SP3-18-Events 2022-09-15 18:38:11 +08:00
Xiao Qi f9743f394d Added some lines in comments for clarity 2022-09-15 18:37:05 +08:00
Xiao Qi e1074887c8 Added instructions 2022-09-15 18:34:07 +08:00
Xiao Qi 5af0bf7d25 Instructions on how to use events 2022-09-15 18:33:36 +08:00
Kah Wei 382d75528a Removed and ignored VS project and solution files 2022-09-15 12:50:48 +08:00
Kah Wei e5b7742955 Merge branch 'main' into SP3-6-c-scripting
# Conflicts:
#	Dependencies.bat
2022-09-15 12:22:37 +08:00
maverickdgg 7900c52984 Merge branch 'main' into SP3-5-ECS 2022-09-15 12:18:20 +08:00
maverickdgg a90c137445 #comment Completed System Routine Added Unit Test version 1 2022-09-15 12:10:06 +08:00
Xiao Qi ddf6a7bee5 SP3-108
Removed singleton instance from event manager and changed it to static class instead.

WARNING: Might need to change back to singleton next time, I had to do it previously for some reason but I don't remember why
2022-09-15 12:06:09 +08:00
Kah Wei 972fe46ec2 Merge branch 'main' into SP3-6-c-scripting
# Conflicts:
#	SHADE_Engine/SHADE_Engine.vcxproj
#	SHADE_Engine/SHADE_Engine.vcxproj.filters
#	SHADE_Engine/premake5.lua
2022-09-15 12:05:12 +08:00
Kah Wei e1fb74f784 SHADE_Engine now copies the SDL2.dll to the out directory 2022-09-15 11:55:22 +08:00
Kah Wei 9b25d909dd Merge branch 'main' into SP3-6-c-scripting
# Conflicts:
#	SHADE_Engine/SHADE_Engine.vcxproj.filters
2022-09-15 11:43:30 +08:00
Kah Wei 10c38a10a7 Merge branch 'DisableDllWarnings' into SP3-6-c-scripting
# Conflicts:
#	Dependencies.bat
#	SHADE_Application/SHADE_Application.vcxproj
#	SHADE_Application/premake5.lua
#	SHADE_Application/src/Application/SBApplication.cpp
#	SHADE_Engine/SHADE_Engine.vcxproj
2022-09-15 11:43:03 +08:00
XiaoQiDigipen d680a07918
Merge pull request #19 from SHADE-DP/DisableDllWarnings
Disable DLL Export Warnings (4251)

Might not be the 100% correct way but in existing usage in GAM 200, there were no issues at all.
2022-09-15 11:38:27 +08:00
XiaoQiDigipen 5ebdf87714
Merge pull request #18 from SHADE-DP/SP3-19-frame-rate-controller
FRC implemented
Handles the main game loop, which includes:

Handling restarting of scenes by freeing and initializing again
Handling changes of scenes by unloading previous scene and loading the next
Calling to update on a fixed time basis and reducing the accumulator
Calling to render on a variable time basis and adding to the accumulator
Measuring of variable time elapsed per frame
Ready for integration. Anticipating much change from this implementation during integration.
2022-09-15 11:34:53 +08:00
Kah Wei 67290c03e7 Updated vcxproj files 2022-09-15 11:34:04 +08:00
Kah Wei c48a467e57 Disabled warnings for DLL export 2022-09-15 11:33:40 +08:00
Kah Wei 12cfbb9952 Fixed SHDotNetRuntime::IsLoaded() giving incorrect data and updated qualifiers and comment formats 2022-09-15 11:25:58 +08:00
Sri Sham Haran 20f4b59f41 Merge branch 'main' into SDLIntegration 2022-09-15 09:30:03 +08:00
Sri Sham Haran bd69c6043a SDL Updates 2022-09-15 09:26:43 +08:00
Kah Wei 79828740fd Fixed hot reloading copying the wrong DLL 2022-09-15 09:21:51 +08:00
Kah Wei ad7df083bf Merge branch 'main' into SP3-6-c-scripting
# Conflicts:
#	Premake/premake5.exe
#	SHADE_Application/src/Application/SBApplication.cpp
#	SHADE_Engine/SHADE_Engine.vcxproj
#	SHADE_Engine/SHADE_Engine.vcxproj.filters
#	SHADE_Engine/premake5.lua
2022-09-15 09:17:17 +08:00
Brandon Mak 169822c221 Render graph execution fixed
GetVkQueue function deleted. More specific function implemented (Present).
2022-09-15 09:16:13 +08:00
Kah Wei 196ef93fed CSProj for SHADE_Scripting is now generated if a build is attempted without it existing 2022-09-15 09:11:02 +08:00
Xiao Qi d62201367a Merge branch 'main' into SP3-18-Events 2022-09-15 09:10:49 +08:00
Xiao Qi 8e601e60e5 Added SHCommonTypes header file
Changed C++ std from latest to 20
Updated premake program
2022-09-15 01:51:04 +08:00
Xiao Qi a3b1660013 SP3-108 Removed old event register method
added new events define
2022-09-15 01:46:11 +08:00
XiaoQiDigipen 98d61f1ca7
Merge branch 'main' into SetWorkingDirectory 2022-09-15 01:39:10 +08:00
Sri Sham Haran 5e4eabc582 [WIP] SDL Window wrap 2022-09-15 00:48:43 +08:00
Kah Wei 7bc0dfb399 Set working directory of the application to be the executable location 2022-09-15 00:33:12 +08:00
mushgunAX a2353e4446 frc commit, not connected yet 2022-09-14 22:00:00 +08:00
Sri Sham Haran 599f1e4ffe add sdl to dependencies 2022-09-14 21:47:39 +08:00
Kah Wei 57393ad7e4 Updated projects to use .NET 6.0 2022-09-14 20:29:40 +08:00
Kah Wei 95c3609d21 Removed all references to Plushie 2022-09-14 20:26:31 +08:00
Kah Wei 7e4c6a986a Merge branch 'CleanUpPremake' into SP3-6-c-scripting
# Conflicts:
#	SHADE_Engine/SHADE_Engine.vcxproj
#	SHADE_Engine/SHADE_Engine.vcxproj.filters
2022-09-14 20:10:10 +08:00
Kah Wei 7c64a12896 Moved spdlog lib link to SHADE_Engine and removed KTX references in Premake 2022-09-14 20:09:01 +08:00
Kah Wei e67b90c6a8 Added calls to SHScriptEngine in SBApplication 2022-09-14 20:07:13 +08:00
Kah Wei 08f3a52dab Merge branch 'main' into SP3-6-c-scripting
# Conflicts:
#	SHADE_Application/premake5.lua
#	SHADE_Engine/SHADE_Engine.vcxproj
#	SHADE_Engine/SHADE_Engine.vcxproj.filters
#	SHADE_Engine/premake5.lua
#	premake5.lua
2022-09-14 19:57:59 +08:00
Brandon Mak 44e529f06f Merge branch 'SP3-4-editor' into SP3-1-Rendering 2022-09-14 19:44:01 +08:00
XiaoQiDigipen b66e2cf3d1
Merge branch 'main' into UseSharedOutInterDirs 2022-09-14 19:40:33 +08:00
Brandon Mak 921680d472 Deleted editor folder 2022-09-14 19:19:54 +08:00
Brandon Mak 7459e19846 Changes 2022-09-14 19:19:24 +08:00
Brandon Mak 5a1abe6530 Auto stash before merge of "SP3-4-editor" and "origin/SP3-4-editor" 2022-09-14 19:18:54 +08:00
Cocoa 803b29146e Fixed memory error with SHLogger & spdlog
The logger needs to be registered outside the library. As such, a macro SHLOG_REGISTER has been added, as well as a variable to the actual logger. The logger needs to be passed into the macro anywhere outside the library after it has been initialised to work on the dll. This has already been done right before the application runs.
2022-09-14 17:57:36 +08:00
Sri Sham Haran fdc8a61c1d Added SHWindow to SHImguiWindow 2022-09-14 16:01:40 +08:00
Kah Wei 44ef3a500f Added post build command to copy spdlog.dll to output 2022-09-14 13:29:23 +08:00
maverickdgg b7cd1bed48 Added System Routines 2022-09-14 10:32:50 +08:00
Sri Sham Haran a3e4b0a845 update premakes for spdlog changes 2022-09-14 09:14:18 +08:00
Cocoa 2332e5401f Merge branch 'main' into SP3-15-Tools 2022-09-13 23:29:44 +08:00
Cocoa e45e589ba9 Added functions that wrap around logging macros for C++/CLI integration 2022-09-13 23:29:20 +08:00
Kah Wei cba3aa0663 Converted SHADE_Engine to a DLL project and exported common use classes 2022-09-13 21:08:13 +08:00
Kah Wei 91709b16c3 Changed out and intermediatery directories for all projects to use shared directories 2022-09-13 20:35:30 +08:00