Commit Graph

133 Commits

Author SHA1 Message Date
Brandon Mak 7eac238226 Accounted for subpass input descriptors
Silhouette shader is working
2023-02-24 11:47:58 +08:00
Brandon Mak 6faa4e676b Updated shader for scanline (needs refining)
Shader hot reloading is working
2023-02-24 08:27:04 +08:00
Glence 86b662c7dc Merge branch 'main' into PlayerController 2023-02-23 19:45:38 +08:00
Brandon Mak f7bb8606be Shader, text, asset manager events and generic data desc sets
- Made shader for shiniy effect (half done)
- Text objects in scene now use a UI component for better scaling
- Asset manager now creates an event for compilation of assets
- Descriptor for generic data is implemented
2023-02-22 16:39:21 +08:00
Glence 8d10c48645 Bug fixes and WIP for alpha 2023-02-21 19:31:50 +08:00
Brandon Mak f1217cc20b Trajectory Rendering WIP
- Trajectory rendering system is all in place. Just requires testing through the component. 
- Component needs to be reflected in editor
- Shaders for trajectory rendering is also in place
2023-02-17 13:48:14 +08:00
Brandon Mak cee45863fa Trajectory rendering WIP 2023-02-17 00:53:45 +08:00
Brandon Mak 5acca02363 Implemented different shadow mapping technique 2023-02-15 21:34:22 +08:00
maverickdgg b15b5eadbc Merge branch 'main' into SP3-20-UI-System 2023-02-03 22:59:56 +08:00
maverickdgg 382a2d0f6a Added start game button. Texture changing for buttons now only change when necessary 2023-02-03 22:44:02 +08:00
Brandon Mak 6cde511b36 Shadows update
Made it less dark
2023-02-03 20:16:42 +08:00
Brandon Mak 109f35f297 Merge remote-tracking branch 'origin/main' into SP3-1-Rendering 2023-01-31 19:02:11 +08:00
Brandon Mak e9452093f0 Fixed UI 2023-01-31 15:17:40 +08:00
Kah Wei b3f79e31db Forgot to commit shader binary 2023-01-30 14:58:52 +08:00
Kah Wei 52c0cc2f84 Merge branch 'main' into SP3-17-animation-system
# Conflicts:
#	Assets/Shaders/TestCube_VS.shshaderb
#	SHADE_Engine/src/Editor/EditorWindow/Inspector/SHEditorComponentView.hpp
#	SHADE_Engine/src/Graphics/MiddleEnd/Batching/SHBatch.h
#	SHADE_Engine/src/Graphics/MiddleEnd/GlobalData/SHGraphicsPredefinedData.cpp
#	SHADE_Engine/src/Graphics/MiddleEnd/GlobalData/SHGraphicsPredefinedData.h
#	SHADE_Engine/src/Graphics/MiddleEnd/Interface/SHGraphicsConstants.h
#	SHADE_Engine/src/Graphics/MiddleEnd/Interface/SHGraphicsSystem.cpp
#	SHADE_Engine/src/Graphics/MiddleEnd/Meshes/SHPrimitiveGenerator.cpp
#	SHADE_Engine/src/Graphics/MiddleEnd/Meshes/SHPrimitiveGenerator.h
#	SHADE_Engine/src/Graphics/MiddleEnd/Pipeline/SHPipelineLibrary.cpp
#	SHADE_Engine/src/Graphics/MiddleEnd/Pipeline/SHPipelineLibrary.h
#	SHADE_Engine/src/Serialization/SHYAMLConverters.h
2023-01-30 14:57:46 +08:00
Kah Wei bce7237e20 Modified shader to support instanced bone first index and system to support runtime updating of animations 2023-01-16 21:02:37 +08:00
Brandon Mak 1526176c58 Shadows WIP 2023-01-16 15:06:46 +08:00
Kah Wei 7ecb8b11ad Added support for rendering bone-less models using the animated shader 2023-01-13 21:26:05 +08:00
Kah Wei d1a41ea194 Fixed raccoon not rendering for animated material 2023-01-13 20:33:25 +08:00
Brandon Mak f217562fef Shadows are sort of working 2023-01-11 20:04:53 +08:00
Brandon Mak 4cd9a6cea0 shadows WIP 2023-01-11 10:35:29 +08:00
Brandon Mak 4a06032bea Shadows WIP 2023-01-11 08:25:38 +08:00
Kah Wei 19ba71e51c Added animated raccoon material and deleted unused skinned vertex shader 2023-01-09 17:05:10 +08:00
Brandon Mak cb9223db0b Enabled partially bound bit for descriptor sets with variable size
- Shadow maps can be sampled from compute shaders
2023-01-09 11:06:10 +08:00
Brandon Mak 77a5829fc9 Shadows WIP 2023-01-07 17:45:49 +08:00
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