Commit Graph

1606 Commits

Author SHA1 Message Date
Kah Wei 6af4933b52 Fixed on-close crashes coming from SHResourceManager 2023-01-29 18:51:31 +08:00
Xiao Qi 83a33b3851 Bone count data member in mesh asset 2023-01-29 18:38:12 +08:00
Kah Wei eab2f2d54a Fixed bug where replacing an animator's rig causes the GPU to be lost 2023-01-29 16:03:08 +08:00
Kah Wei 3f1a25c95b Fixed crash caused by loading more than one SHRig 2023-01-29 15:39:48 +08:00
Kah Wei 1472823dc0 Removed buggy animation debug draw 2023-01-29 14:45:46 +08:00
mushgunAX ac10b95b01 Tooltips 2023-01-25 23:54:04 +08:00
mushgunAX bde191aeca Input Bindings Panel Done 2023-01-25 23:22:15 +08:00
Kah Wei 80a7fe701b Added debug draw for animation system 2023-01-24 23:31:00 +08:00
mushgunAX e70354df74 Get input code name functions 2023-01-24 19:17:27 +08:00
mushgunAX 834d474f21 Merge branch 'main' into SP3-10-input-management 2023-01-23 18:04:07 +08:00
Diren D Bharwani 4ed7aa3aed Reverted an attempt to stabilise edge detection between polyhedrons 2023-01-23 03:03:40 +08:00
Diren D Bharwani 5730381302 Physics objects can be implicity static if only a collider was added.
Removed the need to create an extra body. Math is great.
2023-01-23 00:56:46 +08:00
Diren D Bharwani a0f6cd3ae7 Cached SAT for improved stability
The effects of baumgarte stabilisation can be rather obvious especially when polyhedrons are thrown around at angles. Regardless, the system is relatively stable bar the added energy from the solving method, which may make for a more "bombastic" physics playground
2023-01-23 00:37:22 +08:00
Kah Wei 354d9434f6 SHAnimatorComponent and SHRig now use the proper transform and offset matrices 2023-01-22 21:43:37 +08:00
Diren D Bharwani 0c3106f15b Abstracted contact derivation as setup for cached SAT 2023-01-22 19:20:03 +08:00
mushgunAX dddb556553 Progress 2023-01-22 17:59:36 +08:00
Diren D Bharwani 826a1bc617 Merge remote-tracking branch 'origin/main' into SHPhysics 2023-01-22 17:39:06 +08:00
Diren D Bharwani 1dc16fdcda Fixed typos 2023-01-22 17:38:51 +08:00
Xiao Qi 80fb8f7c73 Saved and loaded bone offsets 2023-01-22 17:00:55 +08:00
mushgunAX 79a40cb58b Merge branch 'main' into SP3-10-input-management 2023-01-20 14:02:06 +08:00
mushgunAX 71572381f7 Progress on input bindings in editor 2023-01-20 14:00:24 +08:00
Kah Wei 62f104a535 Added Global Inverse Matrix for SHRig 2023-01-18 20:11:48 +08:00
Kah Wei a543f6cc3a Removed unecessary check in SHAnimatorComponent 2023-01-18 19:52:26 +08:00
Kah Wei 3e23f08aa8 Fixed bug where keyframes of animation clips are not interpolated 2023-01-18 19:25:27 +08:00
Kah Wei b9fcdc43d4 Modified how SHAnimatorComponent computes the bone matrices 2023-01-18 19:16:45 +08:00
Kah Wei 35b7ac0178 Fixed SHAnimationClip::GetTotalTime() 2023-01-18 19:16:20 +08:00
Kah Wei e013112b2c Fixed validation errors when rendering a non-animated model 2023-01-18 16:03:25 +08:00
Kah Wei 6c6e3bfe28 Merge branch 'SP3-17-animation-system' of https://github.com/SHADE-DP/SHADE_Y3 into SP3-17-animation-system 2023-01-18 15:12:03 +08:00
Xiao Qi 1b97cd72bd TEMP fix to get anim timing correct 2023-01-18 04:05:36 +08:00
Xiao Qi 6872bae151 Updated compiled shmodel file for racoon with fixed rig node order and build format
Fixed bug when building histogram for vertex weights
2023-01-18 04:00:48 +08:00
Kah Wei b36145fa39 Added isAnimated check with base 0-index identity matrix for bones 2023-01-17 22:55:33 +08:00
Kah Wei 20ffd67fcc Fixed move constructor and assignment for SHBatch and added a check for if a batch is animated 2023-01-17 21:54:53 +08:00
SHAM-DP c3a140b9aa Merge branch 'main' into SP3-4-Editor
reordered draw order for some windows
2023-01-17 21:08:37 +08:00
SHAM-DP 3cb1e5c7fc Merge branch 'main' into SP3-4-Editor 2023-01-17 21:02:01 +08:00
SHAM-DP 6b19a635e3 All component view toggle headers open by default
uint32_t fields now accept EID & Resource drag/drop
2023-01-17 20:52:22 +08:00
Kah Wei af3e4a3cfd Modified SHRig to use indices provided by SHRigAsset instead of auto generated indices 2023-01-17 18:26:58 +08:00
Xiao Qi 2d898851c5 Fixed rig asset node delete 2023-01-17 16:07:19 +08:00
Xiao Qi 1b4397c76d Updated all compiled models
Fixed UV mappings
2023-01-17 14:38:50 +08:00
Glence affa6f0dd8 added implantation for audio scripting 2023-01-16 21:05:21 +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
Kah Wei a668f38c87 Fixed bone vertex data not correctly passed to the GPU 2023-01-16 17:49:16 +08:00
Kah Wei 1fc2897150 Added SHVec4U and modified SHMesh to use SHVec4U instead of uint32_t 2023-01-16 16:30:15 +08:00
Diren D Bharwani dc55c31c36 Merge remote-tracking branch 'origin/main' into SHPhysics 2023-01-16 16:23:20 +08:00
Diren D Bharwani 8475bdccd7 Merge remote-tracking branch 'origin/main' into SHPhysics 2023-01-16 16:22:59 +08:00
Xiao Qi 5089957468 Implemented bone weight reading into desired format. 2023-01-16 16:12:43 +08:00
XiaoQiDigipen b6724eed77
Merge pull request #314 from SHADE-DP/SP3-1-Rendering
Implemented Shadow maps (still needs improvement)
2023-01-16 15:40:30 +08:00
Brandon Mak 09911cc50c Merge remote-tracking branch 'origin/main' into SP3-1-Rendering 2023-01-16 15:33:37 +08:00
maverickdgg cb93fab363 Merge branch 'main' into SP3-20-UI-System 2023-01-16 15:17:43 +08:00
maverickdgg fe39be0d61 Added asset browser tool tip that shows asset id 2023-01-16 15:17:06 +08:00
Brandon Mak 1526176c58 Shadows WIP 2023-01-16 15:06:46 +08:00
XiaoQiDigipen dfb8500c9b
Merge pull request #311 from SHADE-DP/SP3-20-UI-System
Added Changing of textures for buttons. Change button events to be on release
2023-01-16 15:01:51 +08:00
Diren D Bharwani c077575a73 Fixed convex-convex face detection
Minor bugs with contact point detection. Will test more before pushing into main
2023-01-16 15:01:14 +08:00
maverickdgg cdb5102630 Added a 0 check for button textures. 2023-01-16 14:51:06 +08:00
maverickdgg 1e351366af fix clicked texture to take priority over hovered texture 2023-01-16 14:44:20 +08:00
Kah Wei b5c9392baf Merge branch 'main' into SP3-1-DebugDraw 2023-01-16 14:39:53 +08:00
Kah Wei b603044579 Fixed validation errors caused by debug draw and fixed SHDebugDraw::WireCapsule not being static 2023-01-16 14:39:35 +08:00
maverickdgg a41354f2ce Added changing texture of buttons 2023-01-16 14:35:16 +08:00
Xiao Qi 7f9991038a Working commit 2023-01-16 14:34:59 +08:00
SHAM-DP 34f22808ee transition scenescave prompt 2023-01-16 14:07:44 +08:00
maverickdgg 0c7224b8be Merge branch 'main' into UI-Test 2023-01-16 11:37:38 +08:00
maverickdgg 5190c490c9 added events 2023-01-16 11:36:12 +08:00
mushgunAX c5998c3b53 Laying out foundations for input editor UI 2023-01-16 10:32:18 +08:00
maverickdgg 5aa7bfe03e button fixed 2023-01-16 07:34:44 +08:00
Diren D Bharwani 85f0902c2d Removed unused collision table and fixed bug with kinematic bodies exploding 2023-01-16 03:48:08 +08:00
Diren D Bharwani 19bffc9124 First half of re-implementing face-face contact derivation 2023-01-16 02:44:27 +08:00
Diren D Bharwani dab109bc77 Fixed a fatal error with rigid body rotations. 2023-01-16 02:43:31 +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
Kah Wei 74d6e5cee7 SHPipelineLibrary now sets the pipeline layouts correctly 2023-01-13 18:14:40 +08:00
Glence 1c47f17d92 Merge branch 'SP3-129-AudioSystem' into AudioScripting 2023-01-13 17:46:23 +08:00
Glence de6f4dd138 Added functions to attach and detach audio clips to objects 2023-01-13 17:46:01 +08:00
Diren D Bharwani ef5016351b Reverted changes to inertia tensors
Created a new branch since I reverted to an older commit but kept some new updates. This will be the main branch moving forward.
2023-01-13 15:26:21 +08:00
Kah Wei d1ab595126 Fixed certain crashes when assigning rig and clip 2023-01-12 20:04:49 +08:00
Kah Wei 406759f856 Added animator inspector to the editor 2023-01-11 23:02:09 +08:00
Brandon Mak f217562fef Shadows are sort of working 2023-01-11 20:04:53 +08:00
Kah Wei c0e8c032b9 Added inspector for animator component 2023-01-11 16:17:32 +08:00
Kah Wei 3d73185926 Fixed vector issues when constructing the SHRig 2023-01-11 15:15:35 +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
Xiao Qi 190665bbbf Changed function signature to take in rig node pointer reference instead of r value ptr 2023-01-10 20:52:34 +08:00
Kah Wei c0de2d4705 Fixed SHAnimationClip not copying name of channels correctly and added extra check for SHRig if an invalid rig is being constructed 2023-01-10 19:42:43 +08:00
Kah Wei 5c14a0829a Added support for edge cases in transforms interpolation for animation clips 2023-01-10 11:46:37 +08:00
Brandon Mak 9538636af6 Shadows WIP 2023-01-10 01:47:10 +08:00
Kah Wei e9624977cd Modified SHAnimationComponent to handle interpolation of separate position, rotation and scale keyframes 2023-01-09 23:32:20 +08:00
Kah Wei 7bf0c26052 Added support for loading SHRig and SHAnimationClip into SHResourceManager and modified SHAnimationClip to support proper keyframe data 2023-01-09 17:51:54 +08:00
XiaoQiDigipen 8e58d47115
Merge pull request #306 from SHADE-DP/SP3-10-input-management
Changed default pathing for binding file serialisation
2023-01-09 17:44:14 +08:00
mushgunAX 356ec24cc2 Change default pathing for binding file I/O 2023-01-09 17:21:24 +08:00
Xiao Qi a58c3e86a5 Reinserted genMeta in compiling function 2023-01-09 17:10:13 +08:00
XiaoQiDigipen be337a2687
Merge pull request #305 from SHADE-DP/SP3-5-ECS
Added GetComponents to Component Manager
2023-01-09 16:59:45 +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
maverickdgg 4f63558f40 Added GetComponents to Component Manager 2023-01-09 10:44:36 +08:00
maverickdgg 88491ffbd8 ToggleButton fix 2023-01-09 09:56:46 +08:00
Brandon Mak 4928ed4bcf Will update commit message tomorrow. Fuck Vulkan. *KW in BG: DiReCtX*
- Changed RenderGraphNodeNames to RenderGraphEntityNames
- Managed to get shadow maps into desc sets
2023-01-09 09:44:40 +08:00
maverickdgg e89b6f5c4c Fixing button 2023-01-09 09:38:53 +08:00
maverickdgg 5f11a931c7 Added Toggle Button, Fixed canvas Scalar 2023-01-09 09:24:20 +08:00
maverickdgg b293b28a56 Button fix 2023-01-09 07:14:40 +08:00
mushgunAX 7dbd0b93b3 Minor comment fix 2023-01-08 21:39:48 +08:00
mushgunAX 4123e76a7d Checking Input Binding I/O 2023-01-08 21:36:19 +08:00
mushgunAX 92a7555370 Merge branch 'main' into SP3-10-input-management 2023-01-08 21:05:18 +08:00
mushgunAX baaeb9ee10 Input Binding File I/O 2023-01-08 21:05:09 +08:00
Kah Wei 686e141efa Fixed comment for SHPrimitiveGenerator::LineCapsuleCap 2023-01-08 01:46:52 +08:00
Kah Wei f44e7b7a1c Debug draw capsule now works with different orientations 2023-01-08 01:43:40 +08:00
Kah Wei 5c5ff38b49 Merge branch 'main' into SP3-1-DebugDraw 2023-01-08 01:07:15 +08:00
Kah Wei 98bfbc1048 Added DrawWireCapsule for debug draw (doesn't support orientation changes yet) 2023-01-08 01:06:50 +08:00
Xiao Qi 1eab15d129 Root nullptr check when destroying rig tree 2023-01-07 22:04:11 +08:00
Xiao Qi c3d027f5b1 AssetID check for 0 2023-01-07 21:32:16 +08:00
Xiao Qi ae024e9757 Changed order of init in asset manager to init all loaders first before building directory to avoid crash 2023-01-07 21:13:59 +08:00
Xiao Qi 73a1aaa480 Updated model loading to match new model binary implementation
Changed some calls in resource to match new names and defines
2023-01-07 21:00:11 +08:00
Brandon Mak 77a5829fc9 Shadows WIP 2023-01-07 17:45:49 +08:00
SHAM-DP f726592557 Popup window base & popup management
Added Scene save prompt popup (WIP)
2023-01-07 17:34:07 +08:00
Xiao Qi 64323f6cf8 Merge branch 'SP3-17-animation-system' into Model-Loader-Update 2023-01-07 16:43:01 +08:00
Xiao Qi ab766d9304 Updated Model asset and rig loading 2023-01-07 16:42:13 +08:00
Diren D Bharwani c3582cf5ee Added a rotate method with quaternions for Vector3 2023-01-07 16:14:55 +08:00
Brandon Mak 8bb406e17f Shadows WIP
- new subpass generated for shadow maps now use light's renderer
- Added support to pass in custom binding and location for vertex attributes
- SHLightingSubSystem GetViewMatrix uses SHMatrix::LookAtLH but with hard-coded values for now. This will eventually be replaced with real position and target values
- Created new shadow map rendering vertex input state.
2023-01-07 15:27:08 +08:00
SHAM-DP 1188c61c7d Filter WIP (Need to optimize the search first) 2023-01-07 15:25:50 +08:00
Brandon Mak 3e01c9e80a shadows WIP 2023-01-07 12:01:09 +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
Diren D Bharwani 8ca4045d55 R for retard 2023-01-05 17:53:48 +08:00
Diren D Bharwani 0c92e7ff6c Added more comments and clarity for polyhedron edge contacts 2023-01-05 14:40:59 +08:00
Diren D Bharwani 68e11ba48e Added edge vs edge contacts for convex polyhedron collisions 2023-01-05 13:42:17 +08:00
Diren D Bharwani c484a088fd Added first half of Gauss Map Optimised SAT 2023-01-05 01:12:25 +08:00
Diren D Bharwani dffdec9d9c Cleaned up colliders 2023-01-04 19:45:41 +08:00
Kah Wei 9d17328262 Added bone animation supported vertex shader 2023-01-04 18:20:04 +08:00
Diren D Bharwani dd2fc934a2 Removed Redundant Geometry 2023-01-04 17:48:08 +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
Diren D Bharwani a49c674c2b Generalised the Parallel Axis Theorem for computing inertia tensors 2023-01-04 15:03:58 +08:00
Diren D Bharwani d7fa40776a Merge remote-tracking branch 'origin/main' into PhySH 2023-01-04 14:35:37 +08:00
Brandon Mak db87bea002 Added pre compute functions for render graph node compute 2023-01-04 09:58:29 +08:00
Brandon Mak 87b2103f6e Shadows WIP 2023-01-03 22:05:36 +08:00
Diren D Bharwani f7e867098d Small changes to rigidbody tooltips 2023-01-03 20:30:20 +08:00
Sri Sham Haran 562c9e2064 Merge branch 'main' into SP3-4-Editor 2023-01-03 20:29:09 +08:00
Kah Wei 06b7db14d5 Added code for bone matrices 2023-01-03 18:57:14 +08:00
Diren D Bharwani b2645fb584 Added support for composite colliders 2023-01-03 18:53:21 +08:00
Diren D Bharwani 0460d776b0 Fixed collision tag panel fallacies and saving of tag masks 2023-01-03 10:40:02 +08:00
Diren D Bharwani 1b5024793c Added debug drawing for rays 2023-01-03 10:14:39 +08:00
Brandon Mak b771cdbfc6 Added barrier for shadow maps 2023-01-03 07:41:37 +08:00
Kah Wei c1910db2af Fleshed out SHAnimatorComponent 2023-01-03 00:23:37 +08:00
Diren D Bharwani 1f2a9820d1 Readded collision tags and moved collision filtering to an earlier stage 2023-01-02 22:49:12 +08:00
Diren D Bharwani 58a44997b2 Reworked raycasting on engine side. Re-added raycasting to scripting 2023-01-02 22:31:48 +08:00
Brandon Mak ef8867a7a5 Shadows WIP 2023-01-02 22:16:35 +08:00
Brandon Mak 7f8dc2b647 Added constants for render graph node names
- Fleshed out event function to add resource and subpass to shadow map render graph node when shadow is turned on
- Added support for linking resources and subpasses to render graph at runtime
2023-01-02 18:24:29 +08:00
Diren D Bharwani ddfbc71400 Added implementation for raycasting into the collision space 2023-01-01 19:39:16 +08:00
Diren D Bharwani 7a92c2c86f Reverted a change 2023-01-01 17:23:06 +08:00
Diren D Bharwani 50de3a8ef0 Added some todo comments 2023-01-01 17:15:49 +08:00
Diren D Bharwani 6f55f202b9 Added planes 2023-01-01 16:53:13 +08:00
Diren D Bharwani 37db6a2bf1 Merge remote-tracking branch 'origin/main' into PhySH 2023-01-01 14:11:47 +08:00
Brandon Mak 03becd8e47 Removing resources now remove subpasses and computes involved
- Added an empty node in the render graph for shadow mapping
2023-01-01 13:59:10 +08:00
XiaoQiDigipen a6a0e1588b
Merge pull request #299 from SHADE-DP/SP3-6-c-scripting
Added scripting quality of life features
2023-01-01 12:37:09 +08:00
XiaoQiDigipen 1590982507
Merge pull request #298 from SHADE-DP/SP3-10-input-management
Fixed and Enhanced Input Binding Management
2023-01-01 12:35:49 +08:00
Brandon Mak d7754e125d Wrote remove resource for render graph (untested) 2023-01-01 12:02:51 +08:00
Diren D Bharwani 38764e79b3 Added trigger check for sphere vs convex polyhedron 2023-01-01 03:32:59 +08:00
Diren D Bharwani f3c0bdbcfd Clean up 2023-01-01 03:24:34 +08:00
Diren D Bharwani 67907b1ca9 Replaced twin-edge dependency on sphere vs convex polyhedron 2023-01-01 02:48:02 +08:00
Diren D Bharwani 00f8726e46 Solved edge case for sphere vs convex polyhedron 2023-01-01 02:42:44 +08:00
Kah Wei 38e27ce21a Merge branch 'main' into SP3-17-animation-system 2022-12-31 19:17:19 +08:00
Diren D Bharwani 3a7336fe15 Improved stability of sphere vs convex polyhedron except for one edge case 2022-12-31 18:43:46 +08:00
Kah Wei fee2cdd8bf Merge branch 'main' into SP3-6-c-scripting 2022-12-31 18:32:41 +08:00
Diren D Bharwani 136b7e7bfc Renamed HalfEdgeDS to HalfEdgeStructure for clarity
do not abbreviate. abbreviation are usually bad!!
2022-12-31 01:47:42 +08:00
Diren D Bharwani 6451ca5e95 forgot to flip a normal 2022-12-31 01:40:28 +08:00
Diren D Bharwani 987a1fa515 Fixed false positives with convex polyhedron radii 2022-12-31 01:18:35 +08:00
Diren D Bharwani 896b47c1a0 Fixed and optimised sphere vs convex polyhedron
Improved sphere vs convex polyhedron from O(n^2) to O(n). Math is amazing.
2022-12-31 01:11:25 +08:00
Kah Wei dcf7a65cac Added launching of Visual Studio by double clicking on a script file 2022-12-31 00:21:00 +08:00
Diren D Bharwani 82d46fce99 Fixed voronoi region tests for sphere vs convex polyhedron 2022-12-30 23:53:45 +08:00
mushgunAX 0e417fa7d6 Merge branch 'main' into SP3-10-input-management 2022-12-30 21:58:11 +08:00
mushgunAX fed7f340cd Add Binding Parameters 2022-12-30 21:57:59 +08:00
Diren D Bharwani 3586c7ffdc Added mostly working sphere vs convex polyhedron collision detection 2022-12-30 21:43:22 +08:00
Diren D Bharwani d98d6a9e06 Refactored polyhedron and half-edge structures 2022-12-30 21:43:06 +08:00
Diren D Bharwani a36d03b03b Contacts now draw normals 2022-12-30 21:42:44 +08:00
Diren D Bharwani 50e3ddf0dd Fixed box inertia tensor calculation 2022-12-30 17:59:59 +08:00
Kah Wei 8db5b35f25 Added additional file utilities, PowerShell based execution of commands and tools for working with visual studio 2022-12-30 17:02:09 +08:00
mushgunAX 472f52af89 Should be finished for now, final checks to do 2022-12-30 15:56:36 +08:00
Brandon Mak 118ad33109 Got rid of SHEnumWrapper 2022-12-30 15:54:45 +08:00
Kah Wei 2e8535d3cf Fixed script building causing a freeze 2022-12-30 15:43:54 +08:00
Kah Wei ce16ca6f8d Exposed transform and MDI buffers in SHBatch and exposed Batches in SHSuperBatch 2022-12-30 15:29:17 +08:00
Diren D Bharwani 7b1b4873ec dumb dumb energy 2022-12-30 01:27:31 +08:00
Diren D Bharwani 6bab419428 Fixed collision tag bugs 2022-12-30 01:23:14 +08:00
Diren D Bharwani 196945ae84 Merge remote-tracking branch 'origin/main' into PhySH 2022-12-30 01:23:02 +08:00
Diren D Bharwani fba338eaef Fixed half edge builder and built box polyhedron 2022-12-30 01:14:40 +08:00
Diren D Bharwani 400cbb35d9 Partial implementation of a generic convex polyhedron object 2022-12-30 00:45:37 +08:00
Diren D Bharwani ea1dd57996 Added stub functions for collision detection algorithms 2022-12-30 00:45:01 +08:00
Diren D Bharwani 8ead885d0d Renamed CollisionShapeFactory to CollisionShapeLibrary 2022-12-30 00:44:08 +08:00
Diren D Bharwani b14ddac1e6 Added missing serialisation for box colliders 2022-12-30 00:42:10 +08:00
Kah Wei 2f5d855fc6 Added stub for SHVSUtiltiies 2022-12-29 23:46:44 +08:00
Kah Wei abf9c6b813 Refactored SHExecUtilities to return additional data 2022-12-29 23:46:27 +08:00
SHAM-DP 2037aab3df Added current scenename display
Cleaned up menu bar
2022-12-29 15:31:27 +08:00
Brandon Mak 8e2c32d110 Graphics refactor more or less tested and working
- Descriptors sets are now independent from a set index. Camera matrices for example can be bound to set index 1 for the batching system but index 2 for compute shaders.
- Truly global descriptors sets (misc data, textures and light data) are now manually bound to a global static class that allows retrieval of these sets to be bound whenever in the middle end. 
- Predefined descriptor set layouts (but not truly global such as camera data, materials and font) have their layouts predefined in a class and used for descriptor set initialization within the middle end. The sets themselves are allocated using these layouts (also accessible globally). 
- Descriptor sets that are more flexible with their bindings such as render graph resources are introspected from shaders and not predefined at all (though their types are recorded in SHGraphicsPredefinedData to avoid magic numbers when binding descriptor sets in some systems).
- Systems now have fixed mappings for descriptors used in shaders and these are defined in SHGraphicsPredefinedData. Batching for example has 3 fixed descriptors: Static global bound at 0, camera data bound at 1, materials bound at 2.
- Viewports no longer contain renderers and renderers no longer contain render graphs. The graphics system only has 1 render graph and subpasses can have both viewports and renderers bound to them to have options for viewport/scissor and camera settings. 
- Light data is now bound before every compute system.
- There is only 1 render graph in the entire system and contains only 6 nodes: G-Buffer pass (with lighting compute pass), debug draw with depth, debug draw, screen space pass, dummy pass for transition to input attachment for imGui and lastly the imGui pass for rendering editor to swapchain.
2022-12-29 14:29:25 +08:00
SHAM-DP 17b9520fff Fixed bug where all components are serialized for any entity even if it does not have the component(s)
Hierarchy Controls are no longer disabled when it is not in focus
2022-12-28 22:05:06 +08:00
SHAM-DP 16d34c6478 Added Copy/Paste of Component Values
- Command should fail if deserialization fails
2022-12-28 21:23:34 +08:00
Brandon Mak 99e7dbfa01 WIP 2022-12-28 20:47:20 +08:00
SHAM-DP 51c9058ab8 Window now maximized by default
Application now loads working scene if run with editor
Added editor config to save:
- Window size
- Window Maximized
- Working Scene
- Editor Style
2022-12-28 17:21:08 +08:00
Brandon Mak 497889c050 Merge branch 'main' into SP3-1-Rendering 2022-12-28 15:09:38 +08:00
Brandon Mak b84364ffe9 Minor changes
- Render Node Compute now has access to camera to send camera data to shaders
- Fonts now have functions to bind descriptor set
2022-12-28 12:43:40 +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
SHAM-DP f49ecdbb14 Remove a few redundancies.
Audio System now creates handles to audio clips
2022-12-27 16:23:53 +08:00
XiaoQiDigipen 35c8321e98
Merge pull request #296 from SHADE-DP/SP3-4-Editor
Added Collision Tag Matrix
2022-12-27 13:59:49 +08:00
Sri Sham Haran 37f62fdd24 Collision Tag Matrix 2022-12-26 14:35:48 +08:00
Brandon Mak 5f2fa7fdf5 WIP
- Created a class that allows custom mappings of descriptor types to set indices
- SHPredefinedData now contains objects of the above class with predefined mappings for the different sub systems in the Graphics System. 
- These mappings are also accompanied with descriptor set layout vectors that are only for that system. This helps the sub systems have access to these layouts easily without having to pass them around. 
- Created another class to manage global descriptor sets such as lights. 
- Modified pipeline layout creation code to take in the correct descriptor set layouts.
2022-12-26 09:28:15 +08:00
Brandon Mak b035582b30 Renamed SHGraphicsGlobalData to SHPredefinedData
- SHPredefinedData now contains the font data descriptor set layout as well 
- Added a function for SHPredefinedData to retrieve descriptor sets based on a bitfield
- Modified descriptor sets to not be tied to a set index anymore
- Descriptor set layout doesn't have a set anymore
- Removed desc set index constants from SHGraphicsConstants since they aren't really needed anymore
2022-12-25 14:32:55 +08:00
mushgunAX 43950400ae Merge branch 'main' into SP3-10-input-management 2022-12-25 14:13:30 +08:00
mushgunAX ee4ec83f7a Progress on Input Manager Fixes 2022-12-25 14:13:21 +08:00
Diren D Bharwani 0df6e09ed6 Added box collision shapes 2022-12-24 13:32:50 +08:00
Diren D Bharwani 89f1f60064 Added physics settings menu for easily toggling debug draw states 2022-12-24 02:19:53 +08:00
Sri Sham Haran c44f0f093a Merge branch 'main' into SP3-4-Editor 2022-12-23 19:07:21 +08:00
mushgunAX 605d408a3a Binding types, scroll wheel support, bind clears 2022-12-23 15:24:12 +08:00
Diren D Bharwani 22c0a14081 Renamed SHBox to SHAABB for clarity
The future SHBox will represent an OBB
2022-12-23 00:55:36 +08:00
Kah Wei 861e47812f Fixed bug where StrToWstr and WstrToStr may contain invalid characters from a previous call 2022-12-22 15:06:52 +08:00
Diren D Bharwani b667e4df87 Implemented axis locking constraints 2022-12-22 03:11:14 +08:00
Diren D Bharwani f4f6cb7eae Fixed sequential impulses 2022-12-22 01:10:25 +08:00
Diren D Bharwani 92ed8a29ff Fixed bug with non-dynamic masses being overriden 2022-12-21 19:04:10 +08:00
Diren D Bharwani d109d06764 Implemented sequential impulses using baumgarte stabilisation
There is a bug with masses of static bodies not being properly set
2022-12-21 18:57:10 +08:00
Kah Wei 360b362b7b Moved command and process execution helpers to SHExecUtilities 2022-12-21 16:47:10 +08:00
Diren D Bharwani 33ef5e0d3d Implemented accumulated impulses
untested
2022-12-21 01:10:28 +08:00
Diren D Bharwani 265a5bece8 Slight refactor to fix collision states for very fast moving objects 2022-12-21 00:40:01 +08:00
Diren D Bharwani b58b475c04 Separated collision detection and added contact manager 2022-12-20 23:10:23 +08:00
Kah Wei 88e89a226a Added the option to open the script csproj via menu bar 2022-12-20 22:35:47 +08:00
Kah Wei b402a44d95 Added SHAnimationClip stub 2022-12-20 17:26:27 +08:00
Diren D Bharwani 5def5392a1 Cleaned up CollisionKey object 2022-12-20 02:26:31 +08:00
Diren D Bharwani 751a16dcc3 Tested collision detection with collision states 2022-12-20 02:13:06 +08:00
Diren D Bharwani cf9d4ef04b Implemented backbone for collision detection with broadphase 2022-12-19 16:56:34 +08:00
Diren D Bharwani 3b55888fa1 Added conversions to and from wxyz quaternion representations 2022-12-16 23:19:44 +08:00
Kah Wei 51479d2bd0 Fixed bug where meshes added to the mesh library will not have correct corresponding "null" vertex bone weights and indices 2022-12-16 21:43:33 +08:00
Diren D Bharwani 24b13ed6e4 Refactored colliders to use parent-child transform logic 2022-12-16 18:34:53 +08:00
Diren D Bharwani a6e1064e64 Fixed bug where collider offsets were not recomputed 2022-12-16 15:03:55 +08:00
Diren D Bharwani 2bd90e7c14 Adjusted physics debug draw to fit new debug draw interface 2022-12-16 14:38:46 +08:00
Diren D Bharwani 1b91f60c4a Fixed warning with wrongly declared friends 2022-12-16 14:38:22 +08:00
Diren D Bharwani ddf2d8bde9 Fixed warnings for subscript operator in vectors and removed react conversions 2022-12-16 14:38:01 +08:00
Diren D Bharwani af39662748 Merge remote-tracking branch 'origin/main' into PhySH 2022-12-16 14:04:58 +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
Diren D Bharwani 6b8232ae91 Fixed bug where intertia tensors were not reset when unlocking axes 2022-12-16 02:02:20 +08:00
Kah Wei 0a3ff527d9 SHDebugDraw drawing functions now have the colour parameter defaulted to white 2022-12-16 00:05:03 +08:00
Kah Wei 8978515cb9 Reworked SHDebugDraw to fit new interface of SHDebugDrawSystem 2022-12-15 23:25:49 +08:00
Diren D Bharwani 27c7a17397 Fixed computation of global inverse inertia tensor 2022-12-15 22:59:55 +08:00
Kah Wei eb06eebc32 Added ability to debug draw circles 2022-12-15 20:30:20 +08:00
Kah Wei 78575b11e4 Added debug draw of wire spheres, filled cube and filled sphere 2022-12-15 18:08:12 +08:00
Kah Wei b6ab7b44d9 Renamed DrawWireBox to DrawWireCube 2022-12-15 02:19:30 +08:00
Diren D Bharwani 53edffebac Added (untested) rotational motion to rigidbodies
Also added a temporary solution for debug drawing rotated spheres
2022-12-15 02:08:25 +08:00
Kah Wei 9ef005346b Merge branch 'main' into SP3-1-DebugDraw 2022-12-15 01:46:26 +08:00
Kah Wei 98ff16d00c Added deebug drawing of cubes of any transform 2022-12-15 01:45:44 +08:00
mushgunAX 3041761e96 Merge branch 'main' into SP3-10-input-management 2022-12-14 16:13:27 +08:00
Kah Wei 06cc969658 Reworked DebugDraw system (only lines now) 2022-12-14 01:20:12 +08:00
Diren D Bharwani af3a5e7dc9 Re-implemented Collider Debug Drawing 2022-12-13 03:54:37 +08:00
mushgunAX 775dcd5337 Merge branch 'main' into SP3-10-input-management 2022-12-12 20:11:51 +08:00
Diren D Bharwani 7820d332b1 Changed managed code's GameObject to synce with the node's active state 2022-12-12 17:58:15 +08:00
Diren D Bharwani 9b17c62b1d Added active in hierarchy property to scene nodes 2022-12-12 17:07:18 +08:00
Sri Sham Haran 82765648c4 fix colliderpanel 2022-12-12 11:49:52 +08:00
Sri Sham Haran a820d19670 Merge branch 'main' into SP3-4-Editor 2022-12-12 10:39:07 +08:00
Diren D Bharwani 0cebedeee0 Fixed compile errors with merged scene init and exit events 2022-12-11 20:44:40 +08:00
Diren D Bharwani 60409b47cb Merge remote-tracking branch 'origin/main' into PhySH 2022-12-11 20:44:25 +08:00