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
Kah Wei
c84e33731b
Fixed crash which occurs when changing the material of an object twice in a row
2022-11-25 22:24:30 +08:00
Xiao Qi
b7b3301158
Added isDirty copy in move ctor for SHBatch
2022-11-24 02:01:41 +08:00
Kah Wei
6261661ef6
Added potential fix for Vulkan buffer creation crashes from SHBatch
2022-11-23 19:30:51 +08:00
Kah Wei
20a1fdc16e
Fixed Application::Close() not closing but instead minimizing the window
2022-11-23 17:03:57 +08:00
XiaoQiDigipen
6161d81c4a
Merge pull request #256 from SHADE-DP/Fix-NoGPUClarity
...
Added explicit error check for when no supported GPUs are available to use
2022-11-23 13:48:37 +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
Kah Wei
1a26b0ac70
When no GPU is detected, a proper exception describing it is now thrown instead of failing silently
2022-11-23 09:57:55 +08:00
maverickdgg
a57145b510
Merge branch 'main' into SP3-20-UI-System
2022-11-22 20:39:39 +08:00
maverickdgg
a612e71f0c
Added Buttons, Added Canvas Scaling matrix, Added Serialization of buttons and camera arm
2022-11-22 20:39:15 +08:00
Kah Wei
7d692061fb
Reworked how Materials are handled on C#
2022-11-22 17:23:50 +08:00
Xiao Qi
3b6d1c815d
Merge branch 'main' into SP3-17-animation-system
2022-11-22 13:55:17 +08:00
Brandon Mak
cf0b94e97d
Merge branch 'main' into SP3-1-Rendering
2022-11-22 10:50:04 +08:00
Brandon Mak
dfe86ce7db
Fixed resizing bug
2022-11-22 10:43:59 +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
af2ad6cc80
Merge branch 'main' into SP3-6-c-scripting
2022-11-21 20:59:08 +08:00
Kah Wei
4172362790
Renamed SHTextRenderer to SHTextRenderable
2022-11-21 20:35:31 +08:00
Brandon Mak
cd6edeeee4
Merge branch 'main' into SP3-1-Rendering
2022-11-21 20:29:10 +08:00
Kah Wei
9cc008eaf4
Fixed ghosts of a renderable being rendered when a material is changed
2022-11-21 20:21:08 +08:00
Kah Wei
611744f5d4
Fleshed out SHAnimationComponent more and added preliminary implementation of SHBatch for bone data
2022-11-21 15:09:15 +08:00
Kah Wei
1ff8c9715d
Merge branch 'main' into SP3-17-animation-system
2022-11-21 12:15:57 +08:00
Brandon Mak
485b60c6d8
Added debug check in SHGraphicsSystem to compile assets only in debug
2022-11-21 00:39:13 +08:00
Xiao Qi
1666a0113b
Removed test lines for shader compile in graphics system
2022-11-21 00:29:46 +08:00
Brandon Mak
5d3603ac7d
Text Renderer Component serialization
2022-11-20 22:24:24 +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
d55adcdfe4
Merge remote-tracking branch 'origin/main' into UI_Integration
2022-11-19 22:08:16 +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
Xiao Qi
c4be9b1cba
Initial commit, change of data structs containing data for model and animation assets.
...
Changed all other references to previous mode and mesh asset names
2022-11-19 21:16:24 +08:00
Kah Wei
92b1c6676b
Merge branch 'main' into Fix-BatchCrash
2022-11-19 18:26:37 +08:00
Kah Wei
b2dc440d03
Fixed bug where moving objects stopped moving after chanigng their material's shader
2022-11-19 18:26:11 +08:00
Kah Wei
58e6a3c4c2
Re-aded ability to change shaders
...
Bugged, replacing shaders results in object being rendered in the old position
2022-11-19 17:30:48 +08:00
XiaoQiDigipen
bd3b643c19
Merge pull request #228 from SHADE-DP/Fix-BatchCrash
...
Fixed crash caused when loading more than one graphics pipeline
2022-11-19 16:26:37 +08:00
Kah Wei
f3a44d2ead
Fixed crash caused when loading more than one graphics pipeline
2022-11-19 16:11:07 +08:00
Brandon Mak
798803cf81
UI WIP
2022-11-18 22:03:21 +08:00
Kah Wei
27413c380e
Renderables now no longer render if disabled
2022-11-18 21:59:18 +08:00
Kah Wei
5ec8475842
Merge branch 'main' into SP3-1-RenderOnlyActive
2022-11-18 21:34:28 +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
66f33554a3
Tested adding text component to entities
2022-11-18 16:35:49 +08:00
Kah Wei
19bc90845f
Added additional checks for SetProperty() of Material and MaterialInstance
2022-11-16 21:01:51 +08:00
Kah Wei
8869b42db2
Fixed memory corruption in SHSubpass
2022-11-16 21:00:27 +08:00
Kah Wei
c5bca4111b
Fixed validation error caused by deleting empty batches
2022-11-16 19:23:26 +08:00
Kah Wei
f0c09817ce
EnsureBufferAndCopy utility functions now avoid resizes if new size is smaller or equal
2022-11-16 17:49:11 +08:00
Kah Wei
29b4465dfd
Split pre-rendering tasks to a PrepareRenderRoutine
2022-11-16 17:48:15 +08:00
Kah Wei
506b8836fe
Materials now keep track of their modified state and associated MaterialInstances keep track of changes to their base
2022-11-16 17:46:36 +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
760c0386a9
Merge branch 'SP3-1-MaterialUpdate' into SP3-1-MaterialEditSupport
...
# Conflicts:
# SHADE_Engine/src/Graphics/MiddleEnd/Interface/SHMaterial.h
2022-11-16 16:45:22 +08:00
Kah Wei
acae84d12c
Fixed bug where creation of custom material instance for Renderables are not updated on the GPU
2022-11-16 16:38:04 +08:00
Kah Wei
3e3a66f261
Fixed memory corruption issue caused by SHMaterialInstance::SetMaterial()
2022-11-16 16:32:12 +08:00
Kah Wei
3a6f1f852b
SHMaterialInstance::GetProperty() will now retrieve a property from the base material if it was not overriden
2022-11-16 15:29:11 +08:00
Kah Wei
3affaf426d
WIP Runtime Material Editing support
2022-11-16 09:06:29 +08:00
Brandon Mak
292fdf4ee2
Fixed some bugs but SHFont constructor still breaks
...
the vkImage is not loading correctly
2022-11-15 20:40:43 +08:00
Kah Wei
75f103c372
Setting pipeline of a material now triggers a reset of all properties for material instances based on the material
2022-11-15 15:58:38 +08:00
Xiao Qi
92ddc3f1eb
Fixed wrong include path to SHUtilities
2022-11-15 13:30:25 +08:00
Xiao Qi
3dcb6f26c2
Merge branch 'main' into SP3-1-Rendering
2022-11-15 13:21:28 +08:00
Diren D Bharwani
e93eea6381
Cleaned up tools folder. Added debug only logging macros with _D suffix
2022-11-15 03:03:37 +08:00
Brandon Mak
2a05d821d5
Merge remote-tracking branch 'origin/main' into SP3-1-Rendering
2022-11-14 18:36:33 +08:00
Brandon Mak
d95ed3f067
Text Rendering WIP
2022-11-14 18:36:26 +08:00
Kah Wei
9e8674859c
Fixed script serialization for objects with no default values set
2022-11-14 17:05:54 +08:00
Brandon Mak
ac17721363
Merge branch 'main' into SP3-1-Rendering
2022-11-14 15:38:33 +08:00
Brandon Mak
7209785f9b
Text Rendering WIP
...
- Added font library to store font resources (not yet synced with resource manager)
2022-11-14 14:14:11 +08:00
Brandon Mak
898b7fbf2c
Text Rendering WIP
2022-11-14 10:11:47 +08:00
Kah Wei
ab869348f1
Added code that only renders objects which are active
2022-11-14 00:59:21 +08:00
Brandon Mak
95d2836c94
God I felt so much pain writing this
...
- Thank god this botchy/hacky resource linking feature between graphs will only be used for a couple of resources.
- Setup environment for UI rendering
- "Scene" resource is now used in BOTH world render graph and screen render graph. Layouts are setup accordingly.
- A very horrible result of this is that linked resources have to be resized in their original graph and it has to be resized BEFORE the graphs linked to it since the framebuffers use their image views.
- sigh.
2022-11-11 02:40:02 +08:00
Brandon Mak
d17a83ab77
From last commit. Whoops.
2022-11-11 00:02:18 +08:00
Brandon Mak
c78aade245
Resource manager for render graph is the one in Graphics System
...
- Renamed SH_ATT_DESC_TYPE_FLAGS to SH_RENDER_GRAPH_RESOURCE_FLAGS and added SHARED flag to represent that a resource is shared between graphs
- Allowed linking of resources between graphs (unideal implementation)
- Added info tracker for the render graph resources. Right now only layouts are being tracked.
2022-11-11 00:02:07 +08:00
Brandon Mak
9d367a359a
Text Rendering WIP
2022-11-10 16:59:26 +08:00
Diren D Bharwani
c40992b48c
Merge remote-tracking branch 'origin/main' into SP3-2-Physics
2022-11-10 14:44:18 +08:00
Brandon Mak
be6a11c629
Text Rendering WIP
2022-11-10 08:28:44 +08:00
Diren D Bharwani
99f41e947f
Merge remote-tracking branch 'origin/main' into SP3-2-Physics
2022-11-10 02:16:42 +08:00
Diren D Bharwani
4731df28f0
Skeleton for Reworked Physics Debug Draw
2022-11-10 02:16:33 +08:00
Brandon Mak
67f7d0ea2e
Text Rendering WIP
2022-11-10 00:19:38 +08:00
Kah Wei
41b7cb842c
Added C# Gizmos class interface
2022-11-08 21:31:53 +08:00
Kah Wei
1f4a530dcc
Fixed compile error in Release
2022-11-08 14:06:01 +08:00
Brandon Mak
572700fbb3
Text Rendering WIP
2022-11-08 10:57:07 +08:00
Kah Wei
ed3131143d
Added debug labels for samplers and fixed issue with compute pipeline names not being labelled correctly
2022-11-07 23:51:48 +08:00
Kah Wei
0b813d769a
Added WIP Compute Pipelines labeling
2022-11-07 19:41:19 +08:00
Brandon Mak
1165b9fa47
Text Rendering WIP
2022-11-07 19:38:08 +08:00
Kah Wei
d302d7e07d
Added labels for more buffers, images, imageviews, frames, semaphores and more
2022-11-07 19:32:12 +08:00
Kah Wei
44ae6d0a8f
Removed unused descriptor sets in SHGraphicsGlobalData
2022-11-07 17:28:03 +08:00
Kah Wei
0bda3d5151
Added labels for resources of Mesh and Texture libraries
2022-11-07 14:08:19 +08:00
Kah Wei
fb37742ee0
Staging Buffers are now labeled
2022-11-07 13:28:49 +08:00
Kah Wei
782db1e2a4
Added debug labels for Renderpasses
2022-11-07 13:22:16 +08:00
Kah Wei
4bd9f0817a
Buffers are now tagged as buffers for debug labels
2022-11-07 13:21:17 +08:00
Kah Wei
37c765d5cd
Merge branch 'main' into SP3-1-DebugLabels
2022-11-07 11:24:18 +08:00
Brandon Mak
cc5c764307
Text Rendering WIP
2022-11-07 02:32:38 +08:00
Brandon Mak
88530e9909
Text Rendering WIP
2022-11-07 00:10:57 +08:00
Kah Wei
40422a6d23
Added built-in primitives
2022-11-05 00:10:54 +08:00
Kah Wei
b5bc64456c
Added debug names for some SHVkBuffers
2022-11-04 19:16:57 +08:00
Kah Wei
d8ee991213
Steps in the rendering process are now highlighted and named for debugging tools
2022-11-04 18:39:45 +08:00
Sri Sham Haran
b86f092f52
Merge branch 'main' into SP3-305-configurationsMerge
2022-11-04 18:37:19 +08:00
Sri Sham Haran
1267442210
Deserialization flow is now as follows:
...
Create entities and components >> Fetch Assets needed >> Load assets needed >> Initialize entities
Some other bug fixes
2022-11-04 18:27:25 +08:00
Xiao Qi
6d0089ee12
Merge branch 'main' into SP3-13-Assets-Manager
2022-11-04 17:49:13 +08:00
Sri Sham Haran
4ee0294977
Scene loads correctly now
2022-11-04 14:44:18 +08:00
Xiao Qi
544716547e
Added preprocessor check for debug to turn off renderdoc
2022-11-03 02:37:38 +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
Xiao Qi
d1f624b2eb
Removed SHMeshData declaration/definition in graphics middle end
...
Renamed some data members in SHMeshData
Replaced calls and references to mesh data in Primitive Generator
2022-11-02 21:09:53 +08:00
Kah Wei
c68c5adc0d
Added GetTextureHandle() to SHGraphicsSystem
2022-11-02 17:51:07 +08:00
Kah Wei
4721a133e1
Added a way to retrieve texture handles from texture indices
2022-11-02 17:43:28 +08:00
Brandon Mak
53397e884d
Merge remote-tracking branch 'origin/main' into SP3-1-Rendering
2022-11-02 17:18:44 +08:00
Brandon Mak
ebc94225e7
Merge remote-tracking branch 'origin/main' into SP3-1-Rendering
2022-11-02 17:04:31 +08:00
Kah Wei
d207042fec
Reworked SHMaterialSpec and SHMaterial loading system
2022-11-02 16:56:38 +08:00
Kah Wei
d818adf2a2
Fixed DrawPoly()
2022-11-02 15:34:35 +08:00
Kah Wei
f0ef9fc0cf
Fixed validation errors due to debug draw
2022-11-02 15:13:12 +08:00
Kah Wei
82e0e4df5c
Added editor gridlines and cardinal axes
2022-11-02 10:33:17 +08:00
Kah Wei
41e1f01f29
Added support for persistent debug draw
2022-11-02 10:11:13 +08:00
Kah Wei
1371302a40
Generalised Draw functions in SHDebugDrawSystem for potentially any number of draw queues
2022-11-02 09:34:36 +08:00
Kah Wei
5f7b28e8a0
Added SHDebugDraw convenience static class for debug drawing
2022-11-02 01:11:28 +08:00
Kah Wei
dc8ed48be3
Fixed debug draw system cube rendering
2022-11-01 21:49:57 +08:00
Sri Sham Haran
129f92e4b6
mat inspector properties handling (WIP)
2022-11-01 21:49:42 +08:00
Kah Wei
904d6be6b0
Merge branch 'main' into SP3-1-DebugDraw2
...
# Conflicts:
# SHADE_Engine/src/Graphics/MiddleEnd/Interface/SHGraphicsSystem.cpp
# SHADE_Engine/src/Graphics/MiddleEnd/Interface/SHGraphicsSystem.h
2022-11-01 21:00:55 +08:00
Kah Wei
0096bc4975
Debug Draw fixes
2022-11-01 20:32:35 +08:00
Brandon Mak
b0d08d27fd
SSAO is fully implemented
2022-11-01 20:10:59 +08:00
Kah Wei
e1587c7252
Fixed SetMesh() not working and loading of mesh and textures
2022-11-01 14:56:03 +08:00
Brandon Mak
5852c409e6
SSAO WIP
2022-11-01 11:57:08 +08:00
Kah Wei
b35ca86ae9
BatcherDispatcher should now account for mesh changes properly
2022-11-01 00:53:15 +08:00
Brandon Mak
53b9c8f746
SSAO WIP
2022-10-31 23:28:46 +08:00
Brandon Mak
2bd3b45ba0
SSAO sort of working
2022-10-31 20:49:28 +08:00
Kah Wei
5bb728663c
Materials are now serializable and deserializable
2022-10-31 17:47:38 +08:00
Kah Wei
797f4bfd75
Fixed shader changes
2022-10-31 17:35:52 +08:00
Kah Wei
a9b9695155
Merge branch 'main' into SP3-1-SerialisedRenderable
2022-10-31 16:31:22 +08:00
Kah Wei
42a80bfc3b
Merge branch 'main' into SP3-1-SerialisedRenderable
2022-10-31 15:31:38 +08:00
Kah Wei
66529474cd
Added Application class equivalent to SHADE_Managed
2022-10-31 14:51:50 +08:00
Kah Wei
5eaf2b55aa
Added WIP Application class and adjustments to how ScriptStore destroys scripts (SpdLog errors)
2022-10-31 12:20:46 +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
997ce3011a
Screw you SPIRV-Reflect and screw you GLSL
...
- Pipeline layouts now have a parameter to decide if a binding with a buffer descriptor stores a dynamic type instead.
- SHRenderGraphNodeCompute has catered for this as well through its ctor params
2022-10-30 23:15:52 +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
Sri Sham Haran
ca659e272b
Designate keys for Copy/Paste of entities in hierarchy panel
...
Change default brush for SHWindow so we don't flashbang everytime we run engine
2022-10-30 15:01:36 +08:00
Brandon Mak
fad9d37cd4
Lighting data is now copied to CPU buffer and GPU buffer every frame
...
Since lighting will be done in view space, the camera's constant movement will make it so that the light data is often changing. Keeping track of these changes for optimization might prove to be counter productive. Copying data every frame might just be more ideal.
2022-10-30 14:17:36 +08:00
Brandon Mak
94f579e8e3
CompileAsset function from Asset manager is working
2022-10-30 13:25:15 +08:00
Sri Sham Haran
86e8415845
Merge branch 'main' into SP3-4-Editor
2022-10-30 11:28:01 +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
cac93b7df9
Fixed indentation issue in SHGraphicsSystem
2022-10-29 23:56:37 +08:00
Brandon Mak
5da7638c0a
Compute barriers
2022-10-29 22:52:15 +08:00
Brandon Mak
6f2ca54f7e
WIP compute barriers
2022-10-29 21:36:11 +08:00
Brandon Mak
25db4db99a
Catered to light comp deletion and solved minimize bugs
...
Editor can also now shift the viewport around without Vulkan vomiting validation layers
2022-10-29 17:00:35 +08:00
Kah Wei
dbf1b0b8de
Merge branch 'main' into SP3-6-c-scripting
...
# Conflicts:
# SHADE_Managed/src/Components/Collider.hxx
2022-10-29 02:32:21 +08:00
Kah Wei
3c2e51cb0b
Built-in shaders are now fully loaded via the SHResourceManager
2022-10-29 01:38:29 +08:00
Sri Sham Haran
f9f818b49c
Merge branch 'main' into SP3-4-Editor
2022-10-28 20:31:51 +08:00
Kah Wei
541f44c039
Fixed bugs in SHMaterial, SHMeshLibrary and removed unused functions in SHTextureLibrary
2022-10-28 19:02:54 +08:00
Sri Sham Haran
fa6e3cf1df
Light Component Serialization & Inspector
2022-10-28 17:58:16 +08:00
Brandon Mak
f110f9b16b
Removed isActive from component
2022-10-28 15:56:22 +08:00