Commit Graph

108 Commits

Author SHA1 Message Date
Brandon Mak d3cd36984d Shadow map WIP 2023-01-07 07:42:42 +08:00
Brandon Mak 19f9b67550 Shadow map WIP
- Added companion subpass object to subpass
- Lighting sub system updates a light's renderer when it is a valid handle
- Light component's renderer will be created in the graphics system event when a light's shadow is enabled
2023-01-06 10:40:19 +08:00
Kah Wei 9d17328262 Added bone animation supported vertex shader 2023-01-04 18:20:04 +08:00
Kah Wei 7da89def50 Refactored SHBatch to support animation data in the same descriptor set 2023-01-04 17:42:02 +08:00
Kah Wei 3ca6859fcb Merge branch 'main' into SP3-17-animation-system
# Conflicts:
#	SHADE_Engine/src/Graphics/MiddleEnd/Batching/SHBatch.cpp
#	SHADE_Engine/src/Graphics/MiddleEnd/Batching/SHBatch.h
#	SHADE_Engine/src/Graphics/MiddleEnd/Interface/SHGraphicsSystem.cpp
2023-01-04 15:52:08 +08:00
Brandon Mak 99e7dbfa01 WIP 2022-12-28 20:47:20 +08:00
Brandon Mak 3bfec1e54f WIP will update later, afraid for BSOD again
- All Shaders now take in a single projection matrix. The type of projection matrix is dependent on the SHRenderer projection type.
- SHGraphicsSystem now only has a single render graph.
- SHGlobalDescriptorSets now store a descriptor set for static global data and a handle to the lighting system. Functions to bind their descriptor sets are also available. 
- Font desc set layout is added back into SHPredefinedData because while its possible to introspect the layouts from the shaders, the layouts is required beforehand to generate the font objects
- SHRenderers and SHViewport are now 2 separate entities, both passable to SHSubpass to be contained and used to set viewport/scissor and send camera matrices to shaders.
-  SHRenderer descriptor sets are now updated separately from the binding. They happen directly before the render graph executes.
2022-12-28 12:19:30 +08:00
Kah Wei 12a46c4266 Merge branch 'main' into SP3-17-animation-system
# Conflicts:
#	SHADE_Engine/src/Graphics/MiddleEnd/Batching/SHBatch.cpp
#	SHADE_Engine/src/Graphics/MiddleEnd/Interface/SHDebugDrawSystem.cpp
#	SHADE_Engine/src/Graphics/MiddleEnd/Meshes/SHPrimitiveGenerator.cpp
#	SHADE_Engine/src/Graphics/MiddleEnd/Meshes/SHPrimitiveGenerator.h
2022-12-16 12:59:11 +08:00
Kah Wei 98ff16d00c Added deebug drawing of cubes of any transform 2022-12-15 01:45:44 +08:00
Kah Wei 06cc969658 Reworked DebugDraw system (only lines now) 2022-12-14 01:20:12 +08:00
Xiao Qi 0edd2f24e3 Added VS and FS shaders to tile singular textures
Added shader stage flag bit for vertex shaders
2022-11-23 13:02:33 +08:00
Glence f1c7f42e13 Merge branch 'main' into PlayerController 2022-11-22 16:21:28 +08:00
Glence 71e8ba6044 doing up the main menu 2022-11-22 16:18:16 +08:00
Brandon Mak 780c716199 Updated SSAO shader 2022-11-22 16:00:05 +08:00
Xiao Qi 3b6d1c815d Merge branch 'main' into SP3-17-animation-system 2022-11-22 13:55:17 +08:00
Brandon Mak 4377972315 Added functionality for graphics system to render to swapchain image
- Added functionality for graphics system to render to swapchain image when SHEDITOR is disabled. This is done via rendering a simple quad on screen and using an input attachment as a texture to the shader.
2022-11-22 10:10:26 +08:00
Brandon Mak 964b375ccd Write to swapchain image without SHEDITOR defined WIP 2022-11-22 09:05:56 +08:00
Kah Wei 1ff8c9715d Merge branch 'main' into SP3-17-animation-system 2022-11-21 12:15:57 +08:00
Brandon Mak c686954c77 Implemented Text Rendering
- The Text Renderer Component serialization and reflection onto inspector is not in yet, but there is basic functionality.
- Updated shaders
- Topology for text rendering is changed to triangle fan. Front facing for primitives is clockwise. Vertex state has both the positionOffset and glyphIndex attribute set as instanced.
-  Freetype instance is now initialized in InitBoilerplate
- SHCamera no longer calling SetPerspective/Ortho inside HandleResize
- Font Geometry is now loaded in SHFontLoader into SHFontAsset fontGeometry variable.
2022-11-20 19:03:12 +08:00
Brandon Mak 575132c4bb Added UI Component check in SHBatch
- UI Component shader changes
- Fixed picking issue
2022-11-20 01:45:14 +08:00
Kah Wei 841948b82c Added support for Bone Weights and Bone Indices vertex attributes for meshes 2022-11-20 01:33:55 +08:00
Brandon Mak 6d1f30e05b Merge branch 'SP3-1-Rendering' into UI_Integration 2022-11-19 21:45:21 +08:00
Brandon Mak 223276dd87 Created partial functionality to render a texture to swapchain image 2022-11-19 21:44:41 +08:00
Brandon Mak 798803cf81 UI WIP 2022-11-18 22:03:21 +08:00
Brandon Mak 03ce142137 Merge remote-tracking branch 'origin/main' into SP3-1-Rendering 2022-11-18 16:37:06 +08:00
Brandon Mak f991e7b227 Fixed some text shaders and changed some image parameters
- SHApplication has a font compiler exe call to test compiling a sample font
- SHVkImage now takes in a vector instead of a span for mip offsets (fuck it, copy the mip offset. The RAM can cry about it).
- Removed font data descriptor set layouts from graphics global data
- FONT_DATA set index is changed to 4 instead. This clashes with Render graph resource set index but it won't matter. 
- Added entity ID render graph resource to scene render graph
- SHFont format for images is now R8G8B8A8UNorm
2022-11-16 16:57:08 +08:00
Kah Wei 3affaf426d WIP Runtime Material Editing support 2022-11-16 09:06:29 +08:00
Brandon Mak 4eb5fa64e0 Text Rendering WIP 2022-11-14 19:31:26 +08:00
Brandon Mak d95ed3f067 Text Rendering WIP 2022-11-14 18:36:26 +08:00
Brandon Mak 9d367a359a Text Rendering WIP 2022-11-10 16:59:26 +08:00
Brandon Mak be6a11c629 Text Rendering WIP 2022-11-10 08:28:44 +08:00
Kah Wei eea35600d3 Switched shaders to use multiply colour instead of additive 2022-11-04 14:04:59 +08:00
Glence 5fe10ce8d1 Changes to main for presentation
Change TestCube_FS.glsl
Change debugdraw Key input to F10
TestScene changes
AI waypoint changed
playercontroller camera axis change
2022-11-03 01:50:02 +08:00
Sri Sham Haran 86254a5bf3 Merge branch 'main' into SP3-4-Editor 2022-11-02 21:41:38 +08:00
Sri Sham Haran e609b5634a Material Inspector
Can set material
2022-11-02 21:31:27 +08:00
Brandon Mak ebc94225e7 Merge remote-tracking branch 'origin/main' into SP3-1-Rendering 2022-11-02 17:04:31 +08:00
Brandon Mak 73be299aae new SHMETA 2022-11-02 15:05:34 +08:00
Brandon Mak eb569a4263 Shader updates 2022-11-02 14:21:27 +08:00
Brandon Mak b0d08d27fd SSAO is fully implemented 2022-11-01 20:10:59 +08:00
Brandon Mak 78545889da SHSHSHAO 2022-11-01 12:47:50 +08:00
Brandon Mak 53fc1fce95 WIP 2022-11-01 12:10:15 +08:00
Brandon Mak 5852c409e6 SSAO WIP 2022-11-01 11:57:08 +08:00
Brandon Mak 54a36e1476 SSAO WIP 2022-11-01 02:32:14 +08:00
Brandon Mak 53b9c8f746 SSAO WIP 2022-10-31 23:28:46 +08:00
Brandon Mak 441207260b shmeta 2022-10-31 20:49:49 +08:00
Brandon Mak 2bd3b45ba0 SSAO sort of working 2022-10-31 20:49:28 +08:00
Kah Wei 797f4bfd75 Fixed shader changes 2022-10-31 17:35:52 +08:00
Brandon Mak 94a57219da Created CPU and GPU data for SSAO
Renderpass for SSAO not yet done (that's next)
2022-10-31 10:32:32 +08:00
Brandon Mak 647182241e Fixed a buy with view space lighting calculations 2022-10-30 19:21:02 +08:00
Kah Wei b1a933a2c3 Merge branch 'main' into SP3-1-SerialisedRenderable
# Conflicts:
#	Assets/Shaders/TestCube_FS.shshaderb
#	Assets/Shaders/TestCube_VS.shshaderb
#	SHADE_Engine/src/Graphics/MiddleEnd/Interface/SHGraphicsSystem.cpp
2022-10-30 17:14:28 +08:00
Brandon Mak 39b5ac0774 LIGHTING NOW DONE IN VIEW SPACE 2022-10-30 16:52:40 +08:00
Brandon Mak 4711a131eb Shifted the lighting system run outside the viewport loop.
- Since lighting is only calculated in the world render graph for now, this will do just fine
- Renderer takes in a view and projection matrix and does the transpose of the multiplication in the renderer
2022-10-30 16:35:55 +08:00
Brandon Mak b46b6b0b85 CompileAll uncommented and asset manager metadata writes commented
SHmeta files should now be identical to what's on main
Shaders themselves have some changes (binaries also updated)
2022-10-30 00:25:49 +08:00
Brandon Mak 5db9299699 Reverted back to old asset IDs 2022-10-30 00:07:02 +08:00
Brandon Mak 7c5a24b8e1 Merge remote-tracking branch 'origin/main' into SP3-1-Rendering 2022-10-30 00:00:17 +08:00
Kah Wei e4394b6170 Generalised SHResourceManager 2022-10-28 21:32:05 +08:00
Xiao Qi b5a1d5ea88 SP3-282 Restructured loaders and compilers
Completed shader compiling and loading
2022-10-27 12:54:58 +08:00
Xiao Qi 5154b579d7 Re-restructured compilers to be more self contained
Loaders only load internal binary asset files
2022-10-26 23:07:01 +08:00