Commit Graph

1831 Commits

Author SHA1 Message Date
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
Diren D Bharwani bf8a410fa2 Fixed bug where colliders were not properly deserialised 2022-12-11 20:33:30 +08:00
Diren D Bharwani c1d7702914 Moved debug draw state to colliders. Synced collider positions with rigid bodies 2022-12-11 20:12:26 +08:00
Diren D Bharwani 74e50e10bd Refactored the colliders?
This took me 4 days omg
2022-12-09 01:15:43 +08:00
maverickdgg 4f1007e6be Added scene init exit events 2022-12-06 13:09:47 +08:00
maverickdgg 9eddcc8460 Merge branch 'main' into SP3-12-SceneGraph 2022-12-06 12:54:43 +08:00
mushgunAX 9a5dc52d77 Minor fixes to input manager
- Pass binding names into functions by const reference instead of by value
- Fixed oversight of not being able to modify or read mouse Y positive multiplier for a binding
2022-12-05 23:25:43 +08:00
Diren D Bharwani 38b1c46d1f Added physics world and tested applied gravity for linear movement 2022-12-05 00:20:29 +08:00
Diren D Bharwani 36ceec5855 Added SceneInit & SceneExit events 2022-12-05 00:19:48 +08:00
Diren D Bharwani ca45a12186 Restructured Physics Systems & Interfaces 2022-12-04 17:31:22 +08:00
Diren D Bharwani 6cd203179a Added Rigid Body 2022-12-02 19:01:08 +08:00
Diren D Bharwani 52dc993941 goodbye react 2022-12-02 17:44:44 +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
Glence 413156dabb Merge branch 'main' into PlayerController 2022-11-25 15:45:35 +08:00
Diren D Bharwani 1cfd3cfd3a Merge remote-tracking branch 'origin/main' into SP3-2-Physics 2022-11-25 14:06:28 +08:00
Diren D Bharwani afd2abf036 Fixed pre & post physics transforms update routines 2022-11-25 14:06:20 +08:00
Diren D Bharwani 43a5cb4deb Reverted world extents computation 2022-11-25 14:05:43 +08:00
Glence 9daaade56a Merge branch 'main' into PlayerController 2022-11-25 13:22:51 +08:00
Xiao Qi 300647afa6 Stopped camera from running when editor is in pause 2022-11-25 12:24:13 +08:00
maverickdgg f3e7f1747a Merge branch 'main' into SP3-141-Camera-System 2022-11-25 10:06:11 +08:00
maverickdgg 428f8f29c6 Camera collision. WIP 2022-11-25 10:06:02 +08:00
Glence c07fa3c5ae remove the clamp from the phsysicSystem routines
added cheats for maingame
added raycast for pick throw
2022-11-25 00:54:45 +08:00
Kah Wei 7c58c9a23d Fixed crash caused when building scripts in debug mode when a debugger is attached 2022-11-24 23:20:37 +08:00
Diren D Bharwani 6525a39df2 Added collision tags for raycasting. Does not apply to collider raycasting 2022-11-24 15:11:07 +08:00
Diren D Bharwani 3775df23a4 Debug draw is disabled on publish builds. 2022-11-24 14:43:41 +08:00
Diren D Bharwani a9bacc9e48 Fixed incorrect storing of world extents 2022-11-24 14:42:34 +08:00
Diren D Bharwani f6c74ad3d2 Fixed recurring bug with collision listener 2022-11-24 14:41:52 +08:00
Diren D Bharwani 74a85180ac Merge remote-tracking branch 'origin/main' into SP3-2-Physics 2022-11-24 12:02:34 +08:00
Diren D Bharwani 7d7d40ba8e Debug draw is always enabled. 2022-11-24 12:02:08 +08:00
XiaoQiDigipen d09fefe9b4
Merge pull request #271 from SHADE-DP/SP3-2-Physics
Fixed Physics Bugs
2022-11-24 02:10:54 +08:00
Xiao Qi b7b3301158 Added isDirty copy in move ctor for SHBatch 2022-11-24 02:01:41 +08:00
Diren D Bharwani 33ac1a868a Fixed wrongly returning fixed DT in managed code & collision listener bug 2022-11-24 01:46:29 +08:00
Glence ca60b64a89 Merge branch 'main' into PlayerController 2022-11-23 20:39:47 +08:00
Kah Wei 57df4e2905 Fixed awake() and start() getting called before all objects are loaded when changing scenes 2022-11-23 20:36:28 +08:00
Glence af93e59d0e added text to maingame 2022-11-23 20:26:53 +08:00
Kah Wei 6261661ef6 Added potential fix for Vulkan buffer creation crashes from SHBatch 2022-11-23 19:30:51 +08:00
maverickdgg 49b475442f Added a targetOffset for camera arm 2022-11-23 18:27:54 +08:00
Glence 22972d7455 updated the music banks
update a tem fix for physicsSystem
2022-11-23 17:37:06 +08:00
Kah Wei 20a1fdc16e Fixed Application::Close() not closing but instead minimizing the window 2022-11-23 17:03:57 +08:00
Diren D Bharwani 9bdaea10f5 Fixed...another..bug...:( 2022-11-23 16:56:25 +08:00
Diren D Bharwani 4865a49bfa Fixed bug where rigidbody setters in the first frame causes a crash 2022-11-23 15:32:14 +08:00
XiaoQiDigipen 5af5d4ef96
Merge pull request #260 from SHADE-DP/SP3-16-Math
Added Forward & LookAt to C# Transforms
2022-11-23 15:07:23 +08:00
Diren D Bharwani 7202551838 Added Vector rotation with Quaternions 2022-11-23 14:56:20 +08:00
XiaoQiDigipen 87936f1e31
Merge pull request #259 from SHADE-DP/SP3-2-Physics
Fixed fatal bug where rigidbody masses was incorrectly computed when editor is enabled
2022-11-23 13:50:22 +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
Diren D Bharwani db69cfb567 Merge remote-tracking branch 'origin/main' into SP3-2-Physics 2022-11-23 13:30:40 +08:00
Diren D Bharwani 1402139369 Fixed bug where colliders were not properly added with editor enabled 2022-11-23 13:30:28 +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
Diren D Bharwani 2523613732 Fixed fatal bug that prevent scene changing while the editor is enabled 2022-11-23 01:01:29 +08:00
Diren D Bharwani fa83e2bc4c Modified Shape.Raycast functions to return RaycastResult 2022-11-23 01:01:12 +08:00
Diren D Bharwani 4277ba10d7 Merge remote-tracking branch 'origin/main' into SP3-12-SceneGraph 2022-11-22 22:11:42 +08:00
Xiao Qi cc2587a7bd Added recognition for material and prefab types when generating meta files 2022-11-22 21:54:51 +08:00
Xiao Qi bcd8b37fd7 Merge branch 'main' into SP3-13-Assets-Manager 2022-11-22 21:53:46 +08:00
Diren D Bharwani 82b92d45cf Merge remote-tracking branch 'origin/main' into SP3-12-SceneGraph 2022-11-22 21:31:45 +08:00
Diren D Bharwani 807ad54d7d Fixed Scene Node SetActive & SceneGraph CheckActiveInHierarchy 2022-11-22 21:31:37 +08:00
Sri Sham Haran f119acdb65 collider tag panel 2022-11-22 21:15:18 +08:00
maverickdgg 44733308f1 Merge branch 'main' into SP3-20-UI-System 2022-11-22 21:04:03 +08:00
maverickdgg 7c36886669 Fix for Canvas scaler 2022-11-22 21:03:53 +08:00
XiaoQiDigipen cecd8ab717
Merge pull request #251 from SHADE-DP/SP3-2-Physics
Fixed Rigidbodies not sleeping
2022-11-22 20:58:11 +08:00
maverickdgg 142f025692 Added check for editor camera. 2022-11-22 20:54:16 +08:00
Diren D Bharwani 72d70e4747 Merge remote-tracking branch 'origin/main' into SP3-2-Physics 2022-11-22 20:46:37 +08:00
Diren D Bharwani 62c4b3837d Fixed bug where transform dirty flags were not being properly cleared.
This was preventing bodies from going to sleep and transforms always updating.
2022-11-22 20:46:31 +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
XiaoQiDigipen 720ccb6eab
Merge pull request #249 from SHADE-DP/SP3-2-Physics
Fixed various physics bugs and added Physics Material to Inspector
2022-11-22 20:14:31 +08:00
Xiao Qi 57a0bbdb8c Added entity count at the bottom bar of editor
Changed colour of bottom bar
2022-11-22 20:14:21 +08:00
Diren D Bharwani dab51ee4cf Readded testing function in physics routines for future use 2022-11-22 20:00:58 +08:00
Diren D Bharwani 053c3e04fd Merge remote-tracking branch 'origin/main' into SP3-2-Physics 2022-11-22 19:26:47 +08:00
Diren D Bharwani c18d58cba3 Fixed various physics bugs
Fixed bug where world was prebuilt and entity IDs were wrongly synced
Fixed collider properties not being synced in the first frame during mass property computations
Fixed static objects being wrongly updated post world update
2022-11-22 19:26:17 +08:00
Kah Wei 9964d5dfce Fixed missing comments for SHEditorUI 2022-11-22 18:17:24 +08:00
Kah Wei 1bd19b90a8 Merge branch 'main' into SP3-6-c-scripting 2022-11-22 18:11:17 +08:00
Kah Wei 4478b6db62 Added editor support for FontAsset, MeshAsset and MaterialAsset. 2022-11-22 17:48:01 +08:00
Kah Wei 7d692061fb Reworked how Materials are handled on C# 2022-11-22 17:23:50 +08:00
Kah Wei 719d29dec3 Renamed Mesh and Font structs in Managed to MeshAsset and FontAsset and reworked them to be a abstraction for asset IDs 2022-11-22 16:51:07 +08:00
Glence 71e8ba6044 doing up the main menu 2022-11-22 16:18:16 +08:00
Kah Wei a78b3c0123 Reworked NativeAsset system 2022-11-22 15:52:55 +08:00
Xiao Qi 681e7f3506 Added invalid Asset ID Macro 2022-11-22 14:26:10 +08:00
maverickdgg 5d04149797 buttons WIP 2022-11-22 14:02:45 +08:00
Xiao Qi 3b6d1c815d Merge branch 'main' into SP3-17-animation-system 2022-11-22 13:55:17 +08:00
Xiao Qi 5024956c04 Merge branch 'main' into SP3-13-Assets-Manager 2022-11-22 13:54:40 +08:00
maverickdgg cf10724f3a Update SHSerialization.cpp 2022-11-22 13:17:45 +08:00
maverickdgg 3e4ebaab7b Merge branch 'main' into SP3-20-UI-System 2022-11-22 13:16:04 +08:00
maverickdgg 080c2c70d5 Added canvas to serialization 2022-11-22 13:09:40 +08:00
XiaoQiDigipen 437cb075d3
Merge pull request #242 from SHADE-DP/SP3-141-Camera-System
FIxed major crashes caused by main camera retrieval and entity destroy
2022-11-22 12:55:17 +08:00
maverickdgg 858e200fb3 Bug fixes 2022-11-22 11:32:19 +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
Diren D Bharwani 23bae3d515 Fixed bug with Bounciness failing to serialise 2022-11-22 00:46:32 +08:00
Diren D Bharwani f1ac689bb0 Added Physics Materials to Inspector 2022-11-22 00:37:09 +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
XiaoQiDigipen 6d8fba8e05
Merge pull request #238 from SHADE-DP/Fix-BatchPersistence
Fixed ghosts of a renderable being rendered when a material is changed
2022-11-21 20:27:48 +08:00
Xiao Qi 1ed0181c9e Reverted premake changes 2022-11-21 20:27:38 +08:00
XiaoQiDigipen 81043a5927
Merge pull request #237 from SHADE-DP/SP3-2-Physics
Added more debug drawing & Fixed Physics running without SHEDITOR
2022-11-21 20:24:05 +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
Diren D Bharwani 3baedd8ffa Merge branch 'main' into SP3-2-Physics 2022-11-21 20:15:58 +08:00
Diren D Bharwani 1d692d3301 Physics works without SHEDITOR defines. Mass is temporarily auto computed. 2022-11-21 19:59:32 +08:00
Kah Wei 1a20eeed96 Added system routine stub for the SHAnimationSystem 2022-11-21 19:46:53 +08:00
Kah Wei e3c573baa7 Added support for enabling and disabling scripts
OnEnable and OnDisable are not called on GameObject active toggling for now but will be added in future
2022-11-21 17:16:16 +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
Kah Wei 0a9dea1c83 Disabled xmldoc generation warnings for SHADE projects 2022-11-21 12:14:07 +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
Kah Wei 2a6db58cd9 Added SHRig and stubs for SHAnimatorComponent and SHAnimationSystem 2022-11-21 00:22:46 +08:00
XiaoQiDigipen e10c1f518f
Merge pull request #234 from SHADE-DP/SP3-1-Rendering
Implemented serialization and editor inspector display for text renderer component
2022-11-20 22:41:06 +08:00
Brandon Mak 5d3603ac7d Text Renderer Component serialization 2022-11-20 22:24:24 +08:00
Diren D Bharwani d4ad60ea79 Fix compile error with collision tags 2022-11-20 20:12:20 +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
Diren D Bharwani cada3acb8a Collision tags should be referenced by pointers 2022-11-20 18:30:18 +08:00
Diren D Bharwani 5871f32547 Merge remote-tracking branch 'origin/main' into SP3-2-Physics 2022-11-20 17:23:38 +08:00
Diren D Bharwani 4ebc16564a Added collision matrix for configurating individual collision tags 2022-11-20 17:23:28 +08:00
XiaoQiDigipen 788ba22e0a
Merge pull request #232 from SHADE-DP/UI_Integration
Added UI functionality to the Graphics System
2022-11-20 15:43:34 +08:00
XiaoQiDigipen a355d9911a
Merge pull request #231 from SHADE-DP/SP3-4-Editor
Fix not being able to disable/enable Rigidbody freeze rotation through editor inspector panel
2022-11-20 15:36:02 +08:00
Diren D Bharwani 4198310b7a Missing implementation for updating all tag names through the physics system 2022-11-20 15:34:34 +08:00
Diren D Bharwani a0f4f3b00a Added collision tag names file 2022-11-20 15:32:33 +08:00
Sri Sham Haran 2b41394a74 Fix not being able to disable/enable Rigidbody freeze rotation through editor inspector panel 2022-11-20 15:30:14 +08:00
Diren D Bharwani 7226ccf279 Tested Collision Tags 2022-11-20 03:16:49 +08:00
Diren D Bharwani b8530dfc89 Merge remote-tracking branch 'origin/main' into SP3-2-Physics 2022-11-20 02:35:12 +08:00
Diren D Bharwani 62433d1a53 Added Collision Tags 2022-11-20 02:35:02 +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 b323735ba8 Merge remote-tracking branch 'origin/SP3-1-VertexSwitch' into UI_Integration 2022-11-19 23:27:06 +08:00
Kah Wei a988c45d52 Vertex shader can now be modified in the material inspector 2022-11-19 23:22:54 +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 6fa14aff85 Fixed sizeof bug when reading old model header 2022-11-19 21:27:30 +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
Xiao Qi 5fb51511f6 Merge branch 'main' into SP3-13-Assets-Manager 2022-11-19 19:59: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
XiaoQiDigipen 51d663ab14
Merge pull request #226 from SHADE-DP/SP3-2-Physics
Added in Raycasting through Physics
2022-11-19 16:24:50 +08:00
Kah Wei f3a44d2ead Fixed crash caused when loading more than one graphics pipeline 2022-11-19 16:11:07 +08:00
Diren D Bharwani 6ad05d306f Merge remote-tracking branch 'origin/main' into SP3-2-Physics 2022-11-19 04:21:58 +08:00
Diren D Bharwani 411c4a4e56 Added C# Interface for Raycasting
Untested with Scripts, tested engine side.
2022-11-19 04:21:46 +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
Diren D Bharwani a4e5a1c269 Merge remote-tracking branch 'origin/main' into SP3-2-Physics 2022-11-18 18:31:38 +08:00
Diren D Bharwani 6b5b0387a9 Fixed bug where pausing then playing crashes physics 2022-11-18 18:31:07 +08:00
Diren D Bharwani b328d1df82 Added Physics Raycasts with Debug Drawing
Press F11 while the scene is playing to toggle debug drawing of rays.
2022-11-18 18:15:19 +08:00
Glence a77740db51 Merge branch 'main' into PlayerController 2022-11-18 17:16:04 +08:00
Glence 0551b1fb8a added the new banks
added onplay/onpause/onstop for audiosytem
2022-11-18 17:04:06 +08:00
Brandon Mak 09249cf9e8 Merge remote-tracking branch 'origin/main' into SP3-1-Rendering 2022-11-18 16:48:09 +08:00
maverickdgg a181d7b896 Added Canvas and UI to editor 2022-11-18 16:37:33 +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
maverickdgg 36a1a1c696 Merge branch 'main' into SP3-20-UI-System 2022-11-18 12:24:24 +08:00
maverickdgg 0b5ec34b00 Merge branch 'main' into SP3-141-Camera-System 2022-11-18 09:38:52 +08:00
maverickdgg 9ac1c01008 Merge branch 'main' into SP3-20-UI-System 2022-11-18 09:38:42 +08:00
maverickdgg d997cd4da6 Added canvas ID to UI Component 2022-11-18 09:38:31 +08:00
XiaoQiDigipen c493432f3f
Merge pull request #219 from SHADE-DP/SP3-6-c-scripting
Scripts are now always built on engine launch
2022-11-17 17:38:17 +08:00
Kah Wei e8bd33ec9e Scripts are now always built on engine launch 2022-11-17 17:36:35 +08:00
XiaoQiDigipen 379c44086d
Merge pull request #218 from SHADE-DP/SP3-6-c-scripting
Fixed edge cases for serialization and deserialization of scripts
2022-11-17 17:17:12 +08:00
XiaoQiDigipen e31f868257
Merge pull request #217 from SHADE-DP/SP3-2-Physics
Fixed various Physics bugs
2022-11-17 17:13:01 +08:00
Kah Wei 6efbea54e1 Fixed issue where scripts of Entities destroyed during scene unloading are not properly disposed 2022-11-17 15:43:35 +08:00
Sri Sham Haran 920e977232 Merge branch 'main' into SP3-4-Editor 2022-11-17 13:34:34 +08:00
Sri Sham Haran e170a5fca8 Added controls to editor viewport menu bar to adjust movement speed and turn speed for editor camera 2022-11-17 13:33:22 +08:00
Diren D Bharwani b3fbfce56f FIxed debug draw for offset colliders 2022-11-17 12:58:01 +08:00
Diren D Bharwani 360c55fa2b Disabled automass on rigid bodies 2022-11-17 12:27:00 +08:00
Diren D Bharwani 18218443ec Fixed a bug 2022-11-17 12:20:28 +08:00
Diren D Bharwani c967f9355f Merge remote-tracking branch 'origin/main' into SP3-2-Physics 2022-11-17 10:42:53 +08:00
Diren D Bharwani 7288894507 Fixed bug where adding colliders would fail to maintain previous collider sizes 2022-11-17 10:42:45 +08:00
maverickdgg ad30f150d1 UI component and UI System prep 2022-11-17 07:12:38 +08:00
maverickdgg 0bb97413ef Added Canvas and UI Components 2022-11-17 05:39:55 +08:00
maverickdgg 7d71390d43 separated ortho and proj matrix in camera comp 2022-11-17 05:29:11 +08:00
maverickdgg 6b80a4baa9 Merge branch 'main' into SP3-141-Camera-System 2022-11-17 04:56:04 +08:00
maverickdgg c80a819b6e Guard Find entity by name function 2022-11-17 04:55:46 +08:00
Diren D Bharwani 8f9fedff41 Added sleeping debug info to Rigidbody Inspector 2022-11-17 01:39:05 +08:00
Diren D Bharwani 503f32c3a6 Merge remote-tracking branch 'origin/main' into SP3-2-Physics 2022-11-17 00:21:18 +08:00
Diren D Bharwani 39a8ca131f Fixed Collision & Trigger Messages not being cleared on deactivating objects 2022-11-17 00:11:55 +08:00
Kah Wei b129a68680 Disabled setting of shader for now as it is buggy 2022-11-16 23:19:25 +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 fe91f58d28 Fixed material inspector saving not saving the correct texture ID into the runtime material 2022-11-16 19:25:17 +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
Sri Sham Haran edd44604f1 Merge branch 'main' into SP3-4-Editor 2022-11-16 17:47:36 +08:00
Sri Sham Haran 37e845336b Fix line draws for asset browser 2022-11-16 17:46:48 +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
Sri Sham Haran 1bd7183231 Added validation for Renderable drag drop fields 2022-11-16 17:30:19 +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 db7c4a6d38 Merge branch 'main' into SP3-1-MaterialUpdate 2022-11-16 16:40:15 +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
XiaoQiDigipen 690ebef77d
Merge pull request #213 from SHADE-DP/SP3-4-Editor
Added Custom RigidBody Component View in Editor
2022-11-16 15:33:38 +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
Sri Sham Haran ba39c02f9f Changed formatting slightly for RigidBody component view 2022-11-16 15:28:42 +08:00
Kah Wei dc9291bc01 Added Audio class for playing audio from C# 2022-11-16 15:00:56 +08:00
Kah Wei 3affaf426d WIP Runtime Material Editing support 2022-11-16 09:06:29 +08:00
Diren D Bharwani a9f77d666c Fixed compile error 2022-11-16 00:04:56 +08:00
Diren D Bharwani f172ccb744 Added Automass and Sleep check for Rigidbodies 2022-11-15 23:58:08 +08:00
Sri Sham Haran 37aad49406 Added requested rigidbody component view with debug information
Changed DragVec controls to not push commands if ImGuiSliderFlags_ReadOnly is enabled
2022-11-15 21:09:24 +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
Diren D Bharwani a3d2f95aa0 Merge remote-tracking branch 'origin/main' into SP3-16-Math 2022-11-15 18:41:16 +08:00
Brandon Mak b6bae850bf Merge remote-tracking branch 'origin/main' into FontIntegration 2022-11-15 18:25:40 +08:00
Kah Wei 958310a8ea Renderable now shows the name of the mesh and material assigned instead of asset IDs 2022-11-15 18:16:07 +08:00
Kah Wei c69ad04f1e Added functions to get name of a backing asset from SHResourceManager 2022-11-15 18:15:49 +08:00
Sri Sham Haran 93cded6ed9 Added serialization of component isActive 2022-11-15 17:04:52 +08:00
Sri Sham Haran 0e4d97da81 tooltip now reflects the correct keys 2022-11-15 16:28:46 +08:00
Sri Sham Haran b0404bd59a Merge branch 'main' into SP3-4-Editor 2022-11-15 16:22:56 +08:00
Sri Sham Haran d3be8127cd [FIXED] Parenting of entities selected using Shift+Select
[FIXED] Component Active Checkbox not working for non reflected components
2022-11-15 16:22:48 +08:00
Diren D Bharwani d3103598f3 Removed old SHLog trace methods 2022-11-15 16:22:16 +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
Sri Sham Haran e7a66eed08 Merge branch 'main' into SP3-4-Editor 2022-11-15 15:12:16 +08:00
Xiao Qi f7cca42e59 Added shlog information source 2022-11-15 13:53:15 +08:00
Xiao Qi 786e15771c Addedo control paths for font compilation and loading 2022-11-15 13:44:39 +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
XiaoQiDigipen 94b4e3d169
Merge pull request #206 from SHADE-DP/SP3-6-c-scripting
Updated projects documentation auto generation
2022-11-15 01:52:53 +08:00
Kah Wei 5cb87402b2 Hide .shmeta files from C# script project 2022-11-15 01:22:22 +08:00
Xiao Qi 16e357acb0 Accounted for texture compilation
Changed refresh, doesnt clear asset collection anymore
Checks for preexisting sub assets and asset meta in collection
2022-11-14 21:18:36 +08:00
Sri Sham Haran 7c636adbfc Merge branch 'main' into SP3-4-Editor 2022-11-14 20:41:50 +08:00
Sri Sham Haran 36ed195a69 [FIX] Scene saving when you press play from pause
[FIX] WER for transform gizmo can now be pressed regardless of whether editor viewport is focused
2022-11-14 20:40:52 +08:00
Kah Wei 47c50c3a31 Merge branch 'main' into SP3-6-c-scripting 2022-11-14 19:38:43 +08:00
Brandon Mak 4eb5fa64e0 Text Rendering WIP 2022-11-14 19:31:26 +08:00
Kah Wei 6673e6f266 Merge branch 'main' into SP3-6-c-scripting 2022-11-14 19:08:46 +08:00
Diren D Bharwani d897ac01e6 Merge remote-tracking branch 'origin/main' into SP3-2-Physics 2022-11-14 18:39:06 +08:00
Diren D Bharwani 10335f3033 Added syncing of physics materials & clear forces methods 2022-11-14 18:38:32 +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 5ccd2263c7 Documentation files are now generated for projects 2022-11-14 18:35:52 +08:00
Xiao Qi 3cc5ed0dec Added meta generation recognisation for scene and font extension types on load up
Check for std::optional value exist
2022-11-14 18:31:56 +08:00
XiaoQiDigipen 45ec617c3a
Merge pull request #203 from SHADE-DP/SP3-6-c-scripting
Script QoL Improvements
Added

GetComponentsInChildren() for GameObject
GetScriptsInChildren() for GameObject
GetComponentsInChildren() for Scripts
GetScriptsInChildren() for Scripts
Fixed

Bug causing crash if a Renderable is added without any mesh or materials
Serialization failure caused by null objects in Scripts
2022-11-14 17:57:54 +08:00
Kah Wei 77cab3e4c5 Merge branch 'main' into SP3-6-c-scripting 2022-11-14 17:08:50 +08:00
Kah Wei 9e8674859c Fixed script serialization for objects with no default values set 2022-11-14 17:05:54 +08:00
XiaoQiDigipen 101dbb7a6f
Merge pull request #202 from SHADE-DP/SP3-2-Physics
SP3-2 Bugfixes

UPDATES

SHBoundingBox & SHBoundingSphere are renamed to SHBox & SHSphere
BUGFIXES

Colliders & Rigidbodies active states affect behaviour
Forces are cleared after every physics update
2022-11-14 16:07:51 +08:00
Brandon Mak ac17721363 Merge branch 'main' into SP3-1-Rendering 2022-11-14 15:38:33 +08:00
Diren D Bharwani 9515fcca4f Renames & Bugfixes
Renamed BoundingBox & BoundingSphere to Box & Sphere
Forces are forcefully cleared
2022-11-14 15:35:02 +08:00
maverickdgg eb32e87387 Camera Orthographic projection 2022-11-14 15:10:23 +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
Xiao Qi 9e0bc0bbc9 Added checks for path exist and bin and obj folders when building directory for asset browser 2022-11-14 02:52:13 +08:00
Kah Wei ab869348f1 Added code that only renders objects which are active 2022-11-14 00:59:21 +08:00
Diren D Bharwani 3c61b7519b Merge remote-tracking branch 'origin/main' into SP3-2-Physics 2022-11-14 00:25:52 +08:00
Diren D Bharwani fe1b9d14f5 Partial implementation of syncing SHADE and ReactPhysics active states 2022-11-14 00:25:24 +08:00
Diren D Bharwani d36d70e3eb Added a forced update to the physics system 2022-11-14 00:20:54 +08:00
Kah Wei 73a5d5e4b9 References path for csproj generated file is now dynamically generated 2022-11-13 22:29:04 +08:00
Xiao Qi a8d4f9c756 On building of asset file directory, check for recognised assets without meta file and generate 2022-11-13 19:51:19 +08:00
Diren D Bharwani c98693c6bc missing change from last commit 2022-11-13 17:57:46 +08:00
Diren D Bharwani c953931f4f Merge branch 'main' into SP3-2-Physics 2022-11-13 17:57:30 +08:00
Diren D Bharwani 277a3ca011 Fixed deletion bugs 2022-11-13 17:42:48 +08:00
Sri Sham Haran eed950f26f Merge branch 'main' into SP3-4-Editor 2022-11-13 17:26:56 +08:00
Sri Sham Haran 895eb56cc0 Integrate cam arm 2022-11-13 17:26:21 +08:00
Diren D Bharwani 3512ed3397 AHHHHHH
i want to pull my hair out
2022-11-13 15:50:03 +08:00
Diren D Bharwani 86ca047c88 Merge remote-tracking branch 'origin/main' into SP3-2-Physics 2022-11-13 14:49:44 +08:00
Sri Sham Haran 66dbd7df93 Merge branch 'main' into SP3-4-Editor 2022-11-13 13:55:57 +08:00
Sri Sham Haran 276e0806fa Can now undo/redo entity deletion (working afaik) 2022-11-13 13:55:30 +08:00
Kah Wei a83a38eba8 Fixed bin and obj folders respawning and causing engine crashes 2022-11-13 13:07:49 +08:00
XiaoQiDigipen 897294426f
Merge pull request #194 from SHADE-DP/SP3-141-Camera-System
Sp3 141 camera system
Added EditorCameraArm functionality
Added helper functions in SceneManager to help check scene node and component actives
2022-11-13 11:58:50 +08:00
Sri Sham Haran 19f0c0ea70 Copy/Paste of entities can now be undone
Fixed bug where Shift Select would reset in a duplicate entity selection
Moved editor window manager to its own file.
2022-11-13 11:43:08 +08:00
maverickdgg efed33ce94 Added code to test EditorCameraArm. 2022-11-13 05:45:43 +08:00
maverickdgg 922d5b0996 Merge branch 'main' into SP3-141-Camera-System 2022-11-13 05:31:34 +08:00
maverickdgg 258c07e857 Added helper functions to check if Scene nodes are active 2022-11-13 05:31:18 +08:00
maverickdgg 4d0598a7f5 Added Editor Camera Arm function 2022-11-13 05:19:46 +08:00
Kah Wei cf60210b4a Merge branch 'main' into SP3-6-ArraySerialization 2022-11-13 02:43:12 +08:00
Sri Sham Haran e2bcb0bbbb play pause stop bound to F5 F6 F7 2022-11-12 23:57:12 +08:00
Sri Sham Haran 69ac074926 change entity active to scene node active 2022-11-12 18:38:57 +08:00
Sri Sham Haran 78ca464c65 Editor now uses separate stacks; 1 set of stacks when in play and another set of stacks otherwise.
CommandStack now uses SHDeque
2022-11-12 18:22:45 +08:00
Sri Sham Haran 3402992189 dont draw gizmos on play 2022-11-12 18:09:55 +08:00
Diren D Bharwani f8bbcdd909 Small fixes 2022-11-12 17:28:49 +08:00
Diren D Bharwani 4ad23a605f Fixed compilation issues from merge 2022-11-12 17:04:09 +08:00
Diren D Bharwani 3faf3804aa Merge remote-tracking branch 'origin/main' into SP3-2-Physics 2022-11-12 16:57:45 +08:00
Diren D Bharwani 45e549f9f1 .....small restructure.... 2022-11-12 16:56:58 +08:00
Kah Wei 24dcd77f32 Added tooltip and range attribute support for lists in scripts 2022-11-12 12:17:11 +08:00
Kah Wei 6dbda12f30 Adjusted design of list on scripts and all numbers now use sliders 2022-11-12 03:53:30 +08:00
Sri Sham Haran 7c7589ce8e idk why creation of new material is not working here send help. Change to popup for asset creation 2022-11-11 21:12:08 +08:00
Sri Sham Haran e96db99ee3 Merge branch 'main' into SP3-4-Editor 2022-11-11 20:41:14 +08:00
Sri Sham Haran 153f040c40 Refresh 2022-11-11 20:41:05 +08:00
Sri Sham Haran c9db3b283d asset browser 2022-11-11 14:00:51 +08:00
Xiao Qi 3b22f95e29 Added font identifiers 2022-11-11 13:21:22 +08:00
Kah Wei ed3694bde1 Merge branch 'main' into SP3-6-ArraySerialization 2022-11-11 12:07:40 +08:00
XiaoQiDigipen 34dcc98a41
Merge pull request #191 from SHADE-DP/SP3-13-Assets-Manager
Filesystem directory features and bugfix
Fixed type from extension bug that results in null meta

Added compiled check for SHFiles
2022-11-11 10:56:44 +08:00
Xiao Qi 94b64e92dd Initialise files to not compiled 2022-11-11 10:55:19 +08:00
Xiao Qi 9fe5dc385b Implemented check for raw asset if compiled 2022-11-11 10:52:57 +08:00
Xiao Qi 6df3f3d417 Fixed get type from extension bug in asset handler 2022-11-11 10:47:03 +08:00
XiaoQiDigipen 6e98776165
Merge pull request #190 from SHADE-DP/SP3-13-Assets-Manager
Assets bugfix

Fixed asset type conversion bug when loading from meta files
Removed compile all function
Set parent id to 0 for non sub assets
2022-11-11 10:07:19 +08:00
Xiao Qi e824c17405 Fixed asset type conversion bug when loading from meta files
Removed compile all function
Set parent id to 0 for non sub assets
2022-11-11 10:06:26 +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
Kah Wei 5875107ce2 Merge branch 'main' into SP3-6-ArraySerialization 2022-11-10 23:44:07 +08:00
Kah Wei d93ea8e49b Child caches are now updated when scene hierarchy changes 2022-11-10 23:34:53 +08:00
Sri Sham Haran aad83d9e32 Revert "Asset browser is wonky now"
This reverts commit 2fdff77420.
2022-11-10 23:02:29 +08:00
Sri Sham Haran 2fdff77420 Asset browser is wonky now
Refresh asset browser
Compile asset
2022-11-10 23:01:09 +08:00
Xiao Qi c95a6a2492 Added open modes for ofstream when building csharp project 2022-11-10 17:37:59 +08:00
Xiao Qi ed1bc7c62d Changed scripting project relative path to managed and csharp dlls 2022-11-10 17:34:33 +08:00
Xiao Qi 03f9c593b6 Function to call to refresh asset directory 2022-11-10 17:09:55 +08:00
Brandon Mak 9d367a359a Text Rendering WIP 2022-11-10 16:59:26 +08:00
Xiao Qi 0e5609995f Added data member to signal whether asset file can be compiled
Properly linked meta file to file in directory

Fixed extension to type conversion bug
2022-11-10 16:44:16 +08:00
Kah Wei bdc7297937 Converted macros for script field inspectors to use templates 2022-11-10 16:20:04 +08:00
Diren D Bharwani 901c007cb2 Added Transform Matrix method to SHMatrix 2022-11-10 14:55:28 +08:00
Diren D Bharwani c40992b48c Merge remote-tracking branch 'origin/main' into SP3-2-Physics 2022-11-10 14:44:18 +08:00
Diren D Bharwani 3efecd64e7 Added box & sphere debug draw for physics 2022-11-10 14:30:30 +08:00
maverickdgg e4e4894610 Canvas Component
Added a canvas component. No functionality added yet
2022-11-10 13:01:31 +08:00
Xiao Qi 35bcdc5239 Missed out path for config 2022-11-10 11:14:40 +08:00
Xiao Qi fa0787d349 Changed hardcoded paths to use defined asset root folder
Shifted scripts and project into folder in assets
2022-11-10 10:33:21 +08:00
Diren D Bharwani 578f384808 Removed redundant overloads to restrict potential bad function calls 2022-11-10 10:24:09 +08:00
Diren D Bharwani 08b3cbafcd Added IsChildOf method to SceneGraph 2022-11-10 10:20:54 +08:00
Diren D Bharwani ac217ffe97 Added Add and Remove Child Events to SceneGraph 2022-11-10 09:06:38 +08:00
Brandon Mak be6a11c629 Text Rendering WIP 2022-11-10 08:28:44 +08:00
Diren D Bharwani eeab3494ba Reworked SceneGraph Interface 2022-11-10 03:30:02 +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 da12db6726 Merge branch 'main' into S3-6-Gizmos 2022-11-09 14:45:31 +08:00
XiaoQiDigipen 7ac910149e
Merge pull request #185 from SHADE-DP/SP3-6-CSharpLights
Add interface for C# light class and modified Color to match Unity's interface
2022-11-08 21:51:04 +08:00
XiaoQiDigipen fe018fc95d
Merge pull request #184 from SHADE-DP/SP3-2-Physics
SP3-2 Fixed physics bugs and collider improvements
BUGFIXES

Added a relative collider size for ease of use. This variable does not affect any calculations or intersection tests.
Fixed bug where duplicate triggers are caught.
2022-11-08 21:50:07 +08:00
Kah Wei 41b7cb842c Added C# Gizmos class interface 2022-11-08 21:31:53 +08:00
Kah Wei e89f5b4b9e Added OnDrawGizmos for debug draw for scripts 2022-11-08 20:49:07 +08:00
Diren D Bharwani f8417f6116 Merge remote-tracking branch 'origin/main' into SP3-2-Physics 2022-11-08 15:22:28 +08:00
XiaoQiDigipen 639cf4448d
Merge pull request #182 from SHADE-DP/SP3-1-DebugLabels
Fixed compile error in Release caused by Debug Labels implementation
2022-11-08 15:18:05 +08:00
Kah Wei 1f4a530dcc Fixed compile error in Release 2022-11-08 14:06:01 +08:00
XiaoQiDigipen 2ab8efb097
Merge pull request #181 from SHADE-DP/SP3-6-c-scripting
GameObjects can now be marked as invalid
2022-11-08 13:52:08 +08:00
Brandon Mak 572700fbb3 Text Rendering WIP 2022-11-08 10:57:07 +08:00
Kah Wei ddd93a85f4 Added support for null GameObjects (loading is buggy) 2022-11-08 00:53:47 +08:00
Diren D Bharwani 8fbd32a144 Added Relative Sizes to Shapes 2022-11-08 00:46:09 +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
Diren D Bharwani 70dcad1313 Changed Collider to CollisionShape for improved clarity 2022-11-07 18:19:39 +08:00
Diren D Bharwani 4e02f64133 Fixed bug where duplicate triggers were caught due to swapped entity IDs 2022-11-07 18:06:43 +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
Sri Sham Haran de38b29f25 small fixes for ms2 submission 2022-11-05 18:15:18 +08:00
Kah Wei 04e2c255b0 Build script options are now disabled when in play or pause mode 2022-11-05 15:34:56 +08:00
Kah Wei 06afd384af Scenes are now reloaded and scripts are no longer lost when building scripts 2022-11-05 14:56:52 +08:00
XiaoQiDigipen 29c25c2d6d
Merge pull request #176 from SHADE-DP/SP3-1-BuiltInMesh
Pregenerates default meshes and provides a function to retrieve them
2022-11-05 00:13:45 +08:00
Kah Wei 40422a6d23 Added built-in primitives 2022-11-05 00:10:54 +08:00
Sri Sham Haran ab17d57756 Asset browser now recurses down subassets 2022-11-04 23:32:29 +08:00
Kah Wei b5bc64456c Added debug names for some SHVkBuffers 2022-11-04 19:16:57 +08:00
Sri Sham Haran b30da7e495 Fixes 2022-11-04 19:16:32 +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
Xiao Qi 1f0d54486d Added sub asset data members
Changed some control flow in asset manager to accommodate for subassets
Read/Write meta files for assets with sub assets
2022-11-04 17:20:42 +08:00
Xiao Qi 6984653b64 Renamed and restructured model asset members
Added mesh asset vector for model asset to contain
2022-11-04 17:18:40 +08:00
Xiao Qi 608b204f88 Changed premake to copy model compiler exe 2022-11-04 17:17:48 +08:00
Sri Sham Haran 2b34e8c13b Fix drag-drop parenting issue
Users can now drop onto empty space in hierarchy panel to unparent
2022-11-04 16:09:15 +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
Xiao Qi f24346a6fd Revert "TEMPORARY Push with all relative paths changed for building exe"
This reverts commit 0979ee93e6.
2022-11-03 00:11:56 +08:00
Xiao Qi 0979ee93e6 TEMPORARY Push with all relative paths changed for building exe 2022-11-02 22:44:27 +08:00
XiaoQiDigipen 02e9df4df7
Merge pull request #164 from SHADE-DP/SP3-10-input-management
Zero out arrays in input manager
Properly zero out arrays in input manager so that it works in Release Mode, where arrays are not zeroed-out to save time.
2022-11-02 22:35:57 +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
Xiao Qi 2beae24924 Removed Original mesh compiler, rewriting mesh loader to reflect ModelCompiler format 2022-11-02 20:50:51 +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
Glence 4f70b543b2 Merge branch 'main' into PlayerController 2022-11-02 17:36:04 +08:00
Glence fc56973645 added getright in camera.cxx/.hxx
PickandThrow is done
adjusted thirdPersonCamera and PlayerController to work with each other
2022-11-02 17:31:57 +08:00
Kah Wei 976c220145 Deserialization of SHMaterialSpec will return an empty SHMaterialSpec on failure now instead 2022-11-02 17:19:18 +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
XiaoQiDigipen 8495175bd8
Merge pull request #163 from SHADE-DP/SP3-2-Physics
SP3-2 Integrated some Debug Draw, Added Trigger checkbox
NEW

Debug Draw can be toggled for colliders. Hardcoded to space for now in Application until I have a menu to toggle it. (Feel free to change or remove it).
Trigger Checkbox added to Collider Inspector View
2022-11-02 16:31:26 +08:00
XiaoQiDigipen 3175d4c3a4
Merge pull request #162 from SHADE-DP/SP3-1-DebugDraw2
Added editor gridlines and fixed SHDebugDraw::DrawPoly()
2022-11-02 16:30:53 +08:00
mushgunAX 6ab6cc15a9 Zero out arrays for input manager 2022-11-02 16:14:26 +08:00
Diren D Bharwani 27526dfd92 Fixed relative size for sphere colliders 2022-11-02 16:12:47 +08:00
Diren D Bharwani 02c79b4cc4 Added Debug Drawing for Colliders (wonk) and Trigger checkbox to Colldiers
Press space to toggle debug draw. Does not work until you press play, then it can be toggled on and off.
2022-11-02 15:44:24 +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 93c684fbb1 Merge branch 'main' into SP3-6-c-scripting 2022-11-02 13:42:41 +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 ed446002aa Merge branch 'SP3-16-Math' into SP3-1-DebugDraw2 2022-11-02 01:05:29 +08:00
Diren D Bharwani b9ada6a5be Reworked SHColour to be compatible with SHVec4 2022-11-02 00:47:19 +08:00
Diren D Bharwani 07bfb2f485 Merge remote-tracking branch 'origin/main' into SP3-16-Math 2022-11-02 00:22:36 +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
Xiao Qi e2778da955 WIP Rewrite flow from compiling to loading to recognising assets 2022-11-01 20:54:51 +08:00
Kah Wei 0096bc4975 Debug Draw fixes 2022-11-01 20:32:35 +08:00
Kah Wei 674b4d5155 Fixed extra # appearing on all names of script variables 2022-11-01 20:29:03 +08:00
Brandon Mak b0d08d27fd SSAO is fully implemented 2022-11-01 20:10:59 +08:00
Sri Sham Haran 26591e8c24 material inspector 2022-11-01 19:03:08 +08:00
Diren D Bharwani 40be8a7962 Merge branch 'main' into SP3-12-SceneGraph 2022-11-01 19:00:12 +08:00
Kah Wei 8afe8c1a79 GameObjects on scripts can now be edited in the inspector and are serialized 2022-11-01 17:24:20 +08:00
XiaoQiDigipen 294e61a549
Merge pull request #153 from SHADE-DP/SP3-2-Physics
SP3-2 Reworked Physics Component Removal, Added Editor State Change events

NEW

Events for editor state change added:
SH_EDITOR_ON_PLAY_EVENT,
SH_EDITOR_ON_PAUSE_EVENT,
SH_EDITOR_ON_STOP_EVENT
BUGFIX

Reworked physics component removal to match ECS update
2022-11-01 15:36:34 +08:00
Diren D Bharwani e0dcf9e13e Added Editor State Change events 2022-11-01 15:32:01 +08:00
Diren D Bharwani 4dcd60f239 Added rotation offsets to colliders 2022-11-01 15:10:47 +08:00
Kah Wei d7429c4627 Merge branch 'main' into Fix-SetMesh 2022-11-01 14:56:16 +08:00
Kah Wei e1587c7252 Fixed SetMesh() not working and loading of mesh and textures 2022-11-01 14:56:03 +08:00
Diren D Bharwani 35771a619a Adjusted for new component removal method 2022-11-01 14:46:56 +08:00
maverickdgg 43604066b2 Merge branch 'main' into SP3-5-ECS 2022-11-01 14:22:20 +08:00
maverickdgg d5cadfe8ed Removed Component event now runs after the component has been removed from the sparse set 2022-11-01 14:21:43 +08:00
Diren D Bharwani 68be65f341 Fixed bug where collisions were reported in the wrong state 2022-11-01 14:08:47 +08:00
Kah Wei 450970579a Merge branch 'main' into Fix-SetMesh 2022-11-01 13:38:34 +08:00
Brandon Mak 5852c409e6 SSAO WIP 2022-11-01 11:57:08 +08:00
Diren D Bharwani 9ec9411ce3 Merge remote-tracking branch 'origin/main' into SP3-2-Physics 2022-11-01 02:42:33 +08:00
Diren D Bharwani da690e4395 Simplified RigidBody Implementation 2022-11-01 02:41:08 +08:00
Kah Wei b35ca86ae9 BatcherDispatcher should now account for mesh changes properly 2022-11-01 00:53:15 +08:00
Xiao Qi a8f5d021d3 Switch case initialisation error fix 2022-11-01 00:50:57 +08:00
Xiao Qi 220e1a7d8b Fixed asset creation broken logic loop 2022-11-01 00:44:37 +08:00
Kah Wei c08afcb804 Fixed incorrect FixedUpdate() execution and added Time.FixedDeltaTime 2022-11-01 00:37:09 +08:00
Diren D Bharwani 45cc8c01b6 Merge remote-tracking branch 'origin/main' into SP3-16-Math 2022-11-01 00:31:02 +08:00
Kah Wei 4e97392098 Added support for multiplying doubles with Vectors in C# 2022-11-01 00:27:45 +08:00
Kah Wei 76737a735a Merge branch 'main' into SP3-6-c-scripting
# Conflicts:
#	SHADE_Engine/src/Physics/SHPhysicsSystem.cpp
2022-11-01 00:12:51 +08:00
Kah Wei e4cb8ede5a Added support for collision and trigger events in code properly 2022-11-01 00:11:09 +08:00
Brandon Mak 53b9c8f746 SSAO WIP 2022-10-31 23:28:46 +08:00
Diren D Bharwani 6e604fe7e9 Fixed bug with relative collider sizes 2022-10-31 23:18:20 +08:00
Kah Wei a6a8700b82 Moved commits over to C# Branch 2022-10-31 21:39:53 +08:00
Kah Wei f9810684ed Added functions for execution of OnCollision*() and OnTrigger*() 2022-10-31 21:38:17 +08:00
Kah Wei 27e71558ad SHPhysicsSystemInterface now uses a forward declaration for SHPhysicsUtils 2022-10-31 21:26:12 +08:00
Kah Wei ccbbdc6485 Added CollisionInfo and SHPhysicsSystemInterface 2022-10-31 21:05:46 +08:00
Brandon Mak 2bd3b45ba0 SSAO sort of working 2022-10-31 20:49:28 +08:00
XiaoQiDigipen 68237ae086
Merge pull request #145 from SHADE-DP/SP3-2-Physics
SP3-2 Remove component bugfix
BUGFIX

Fixed crash from attempted removal of non-existent rigidbodies / colliders
2022-10-31 18:42:56 +08:00
Diren D Bharwani b0544d69d2 Merge remote-tracking branch 'origin/main' into SP3-2-Physics 2022-10-31 18:24:21 +08:00
Kah Wei 2ca353a0b7 Fixed compilation issues in SHResourceManager 2022-10-31 18:18:06 +08:00
Diren D Bharwani a8cb36b46f Fixed component removal bug on application close 2022-10-31 17:55:32 +08:00
Kah Wei 33431d71a6 Merge branch 'main' into SP3-1-SerialisedRenderable 2022-10-31 17:48:02 +08:00
Kah Wei 5bb728663c Materials are now serializable and deserializable 2022-10-31 17:47:38 +08:00
XiaoQiDigipen d96ba153ed
Merge pull request #143 from SHADE-DP/SP3-141-Camera-System
Sp3 141 camera system
Added Camera Look at.
Fixed Camera Arm.
Added Camera Set View Matrix.
Added ViewMatrix decomposition
2022-10-31 17:44:20 +08:00
Kah Wei 797f4bfd75 Fixed shader changes 2022-10-31 17:35:52 +08:00
XiaoQiDigipen 0957c39283
Merge pull request #141 from SHADE-DP/SP3-5-ECS
SP3-5 ECS
Bugfix: Added remove component broadcast to removeComponentOfEntity
2022-10-31 17:32:42 +08:00
Diren D Bharwani dc20317a70 M dumb again. 2022-10-31 17:25:31 +08:00
maverickdgg a9c1bd7e7a Added remove component broadcast to removeComponentOfEntity 2022-10-31 17:25:17 +08:00
maverickdgg 883c5460bc Added a boolean for CameraArm to lock and unlock camera look at 2022-10-31 17:23:03 +08:00
maverickdgg acf52c77ce Merge branch 'main' into SP3-141-Camera-System 2022-10-31 16:55:56 +08:00
Diren D Bharwani c6cc327141 M dumb. 2022-10-31 16:53:34 +08:00
Diren D Bharwani f863f57466 Triggers were being stored in the wrong container 2022-10-31 16:49:09 +08:00
maverickdgg 65013969a8 Added Camera LookAt and CameraArmComponent works now 2022-10-31 16:39:06 +08:00
Kah Wei a9b9695155 Merge branch 'main' into SP3-1-SerialisedRenderable 2022-10-31 16:31:22 +08:00
Diren D Bharwani c47c5653b4 Merge remote-tracking branch 'origin/main' into SP3-2-Physics 2022-10-31 16:04:48 +08:00
Diren D Bharwani 3638828541 Fixed desync of rigid body velocities 2022-10-31 16:04:40 +08:00
Diren D Bharwani b7abfde310 Added Collision and Trigger Events 2022-10-31 15:54:54 +08:00
maverickdgg 0e2b017716 View matrix decomposition and set view matrix
View matrix decomposition does not decompose roll yet but there isn't much use case
2022-10-31 15:39:04 +08:00
Kah Wei 42a80bfc3b Merge branch 'main' into SP3-1-SerialisedRenderable 2022-10-31 15:31:38 +08:00
Kah Wei d03780a9b3 Merge branch 'main' into SP3-6-c-scripting 2022-10-31 15:20:23 +08:00
Kah Wei 1d2b23d762 Fixed script deletion and OnDestroy never being called 2022-10-31 15:19:57 +08:00
maverickdgg f5f9b80490 Added GetEntityByName to EntityManager 2022-10-31 15:06:08 +08:00
maverickdgg ab46d0a96a Decompose matrix WIP 2022-10-31 15:02:28 +08:00
Kah Wei 66529474cd Added Application class equivalent to SHADE_Managed 2022-10-31 14:51:50 +08:00
Diren D Bharwani ed88b9e5d3 Merge remote-tracking branch 'origin/main' into SP3-12-SceneGraph 2022-10-31 13:15:07 +08:00
Diren D Bharwani ea516189d2 Merge remote-tracking branch 'origin/main' into SP3-2-Physics 2022-10-31 13:14:38 +08:00
Diren D Bharwani d4dbb38dc4 Merge remote-tracking branch 'origin/main' into SP3-16-Math 2022-10-31 13:12:20 +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
Sri Sham Haran d3dc87accb can assign mesh
add bigobj option to command line till we find a better solution
2022-10-30 23:15:41 +08:00
Brandon Mak 647182241e Fixed a buy with view space lighting calculations 2022-10-30 19:21:02 +08:00
Sri Sham Haran 0aebc3053f Asset browser (currently only displays asset and can drag drop for setting of mesh. except setting mesh in inspector doesnt work) 2022-10-30 18:26:49 +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 96112e5251 Merge remote-tracking branch 'origin/SP3-16-Math' into SP3-1-Rendering 2022-10-30 16:37:38 +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 13ad7d46c6 Fix crash when entity w no transform being set as child of entity w transform
Add select all
2022-10-30 15:19:42 +08:00
Diren D Bharwani 03c0d10014 Fixed bug where objects without transform causes a crash on reparenting 2022-10-30 15:10:39 +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
Diren D Bharwani 605ff9710d Added Matrix * Vec4 2022-10-30 14:37:30 +08:00
Sri Sham Haran f21f501d5a Merge branch 'main' into SP3-4-Editor 2022-10-30 14:23:39 +08:00
Sri Sham Haran dd8d913071 Add widget for drag drop read only
field
Editor tweaks
2022-10-30 14:22:55 +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
Sri Sham Haran 04d3c6c9bb Merge branch 'main' into SP3-8-serialization 2022-10-30 11:26:23 +08:00
Xiao Qi 087cbcabaf Forgot function to actually retrieve root folder pointer hehe 2022-10-30 04:41:24 +08:00
Xiao Qi 2ebcd3fd47 Filesystem builds directory tree of asset folder to show all files and subfolders 2022-10-30 04:39:16 +08:00
Xiao Qi d3b44f9c22 Merge branch 'main' into SP3-13-Assets-Manager 2022-10-30 03:08:36 +08:00
Xiao Qi 00d4d5d910 Removed code that accidentally calls delete on freed memory for asset loaders 2022-10-30 03:06:18 +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 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
Diren D Bharwani 72cdbf55e5 Fixed boolean for updating entities in Transform system 2022-10-29 16:42:02 +08:00
Xiao Qi c71a84cc59 Simple file deletion 2022-10-29 15:50:26 +08:00
Xiao Qi 219492dedd Changed asset collection from vector to unordered_map for better id col check
Reduce use of for loops to iterate through asset collection
2022-10-29 15:36:34 +08:00
Diren D Bharwani 96bd982e4c Merge remote-tracking branch 'origin/main' into SP3-12-SceneGraph 2022-10-29 14:51:48 +08:00
Xiao Qi 270205b0ba Added line to write asset meta into file when saving
Does check for data write before saving
2022-10-29 14:50:44 +08:00
Xiao Qi 0182c90a21 Interface to create and save new assets that are internal: Prefabs, Scenes, Materials 2022-10-29 14:42:38 +08:00
Xiao Qi cd62dbbb25 Material WIP 2022-10-29 11:58:14 +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 15e9aaa57d Modified SHSerialization to load Material using SHResourceManager 2022-10-29 01:54:43 +08:00
Kah Wei 3c2e51cb0b Built-in shaders are now fully loaded via the SHResourceManager 2022-10-29 01:38:29 +08:00
Kah Wei e4394b6170 Generalised SHResourceManager 2022-10-28 21:32:05 +08:00
Xiao Qi 22b0a2f97b Changed tabs/spacing 2022-10-28 21:20:59 +08:00
Xiao Qi 6ce143665a Added scene and prefab asset classes
Added scene and prefab text based loaders

Added write functions to all asset loaders to overwrite data
2022-10-28 20:48:50 +08:00
Sri Sham Haran 001c25f554 fix camera not updating when undock/dock 2022-10-28 20:47:28 +08:00
Sri Sham Haran f9f818b49c Merge branch 'main' into SP3-4-Editor 2022-10-28 20:31:51 +08:00
Sri Sham Haran ea9f90f60d Serialize Collider Component done 2022-10-28 19:39:39 +08:00
Xiao Qi 017cbf90c5 Changed filesystem interface in preparation for asset browser functionalities 2022-10-28 19:07:48 +08:00
Kah Wei 541f44c039 Fixed bugs in SHMaterial, SHMeshLibrary and removed unused functions in SHTextureLibrary 2022-10-28 19:02:54 +08:00
Kah Wei 199897adb4 Added GenericHandles to SHADE_Managed 2022-10-28 19:02:26 +08:00
Sri Sham Haran 04d372b9b8 Merge branch 'main' into SP3-8-serialization 2022-10-28 18:00:08 +08:00
Sri Sham Haran fa6e3cf1df Light Component Serialization & Inspector 2022-10-28 17:58:16 +08:00
XiaoQiDigipen ade24b904f
Merge pull request #127 from SHADE-DP/SP3-2-Physics
SP3-2 Colliders use relative size

NEW

Colliders have materials. The material system is intended to emulate Unity's physics materials.
UPDATE

Colliders now show relative size on the Editor. This change has not been reflected in Scripting.
Colliders will deep copy the shape in case it was not already doing so.
If this doesn't compile, beat me. I swear I just compiled, ran and tested for functionality.
2022-10-28 16:38:44 +08:00
XiaoQiDigipen f276595202
Merge pull request #126 from SHADE-DP/SP3-1-SerialisedRenderable
All Vec3 and Vec4s in materials are now automatically set to full 1.0 Vectors
2022-10-28 16:38:17 +08:00
Diren D Bharwani 270f69572c Replaced cout with SHLOG 2022-10-28 16:25:57 +08:00
Brandon Mak f110f9b16b Removed isActive from component 2022-10-28 15:56:22 +08:00
Diren D Bharwani b0175dba31 Ensured a deep copy (recreation) of collision shapes 2022-10-28 15:29:28 +08:00
Diren D Bharwani 1a4b15feb2 Changed ColliderBound to CollisionShape because ColliderBound sounds weird 2022-10-28 14:29:05 +08:00
Brandon Mak baa77e5d37 setter for culling mask 2022-10-28 14:10:08 +08:00
Diren D Bharwani d4f775843c Merge remote-tracking branch 'origin/main' into SP3-2-Physics 2022-10-28 14:08:18 +08:00
Brandon Mak 5ab2ebbff4 Getters for light 2022-10-28 13:54:46 +08:00
Kah Wei 621dae4c40 All Vec3 and Vec4s in materials are now automatically set to full 1.0 vectors 2022-10-28 13:32:13 +08:00
Sri Sham Haran a04e57d048 Merge branch 'main' into SP3-8-serialization 2022-10-28 13:17:22 +08:00
Sri Sham Haran c35f3d5e15 fix hierarchy panel menu bar padding 2022-10-28 12:47:17 +08:00
XiaoQiDigipen c750bffd1d
Merge pull request #125 from SHADE-DP/SP3-1-SerialisedRenderable
Added Serialized Renderable
2022-10-27 23:27:00 +08:00
Kah Wei e733cd2e1c Fixed bug where changes to meshes were not saved by batching system 2022-10-27 23:18:02 +08:00
Brandon Mak 0cab0107b2 Fixed minimizing by resetting command pools and fences 2022-10-27 19:37:05 +08:00
Kah Wei cc1fe71d4b Serialization and deserialization of SHRenderable to use default material for now 2022-10-27 19:31:00 +08:00
Kah Wei 003a99ae07 Merge branch 'main' into SP3-1-SerialisedRenderable
# Conflicts:
#	SHADE_Engine/src/Graphics/MiddleEnd/Interface/SHGraphicsSystem.cpp
#	SHADE_Engine/src/Graphics/MiddleEnd/Interface/SHRenderable.h
#	SHADE_Engine/src/Graphics/RenderGraph/SHRenderGraphNode.cpp
#	SHADE_Engine/src/Graphics/RenderGraph/SHSubpass.cpp
#	SHADE_Engine/src/Graphics/RenderGraph/SHSubpass.h
2022-10-27 19:30:54 +08:00
Brandon Mak 09c5843cdb Ambient lighting added 2022-10-27 19:02:55 +08:00
Sri Sham Haran c7e2116df0 Fix editor component view bug where fields from different components that have the same name clash 2022-10-27 18:34:19 +08:00
Kah Wei 392ecae434 Merge branch 'main' into SP3-6-c-scripting 2022-10-27 17:52:52 +08:00
Kah Wei 623e964160 Fixed bug causing issues with debugging not working 2022-10-27 17:51:30 +08:00
Diren D Bharwani a354928e0d Merge remote-tracking branch 'origin/main' into SP3-2-Physics 2022-10-27 17:41:01 +08:00
maverickdgg b0f28f98c5 WIP camera arm component 2022-10-27 15:01:18 +08:00
Xiao Qi 2102835629 Added function to manually compile shaders by path 2022-10-27 14:24:03 +08:00
Xiao Qi b10da2d160 Merge branch 'main' into SP3-13-Assets-Manager 2022-10-27 14:19:22 +08:00
Xiao Qi e1de423483 Treat all shaders as built in for now to facilitate getting shader module by name 2022-10-27 14:12:53 +08:00
Xiao Qi b5a1d5ea88 SP3-282 Restructured loaders and compilers
Completed shader compiling and loading
2022-10-27 12:54:58 +08:00
Kah Wei 97432b8666 Accounted for updating collider storage when a collider is removed 2022-10-27 12:46:42 +08:00
Kah Wei d45d621701 Collider now will have it's sub collider list updated based on events 2022-10-27 12:32:06 +08:00
Kah Wei cd04132fd7 Merge branch 'main' into SP3-6-c-scripting 2022-10-27 11:41:14 +08:00
Brandon Mak b7b3ef08ab Some lighting fixes 2022-10-27 11:31:11 +08:00
maverickdgg dee4e9acbd Fixed RTTR registration. Added back Camera Clamp 2022-10-27 10:33:54 +08:00
Kah Wei d2c7630af4 Merge branch 'main' into SP3-6-c-scripting 2022-10-27 10:12:52 +08:00
Kah Wei 2108d9e1f6 Added triple buffering to SHDebugDrawSystem 2022-10-27 10:12:30 +08:00
maverickdgg 0c2d020f89 Merge branch 'main' into SP3-141-Camera-System 2022-10-27 09:26:53 +08:00
maverickdgg 012070ba6d Added RTTR registration 2022-10-27 09:26:49 +08:00
Sri Sham Haran a854a50fb2 Fix error from shader graph preventing compilation on main 2022-10-27 09:22:42 +08:00
maverickdgg d8086edbe2 Merge branch 'main' into SP3-141-Camera-System 2022-10-27 08:55:06 +08:00
Diren D Bharwani 75fd02c08a small change to where forces are cleared (1 less comparison) 2022-10-27 03:35:32 +08:00
Diren D Bharwani 371ffc52da Colliders now use relative sizes 2022-10-27 03:14:46 +08:00
Brandon Mak da3edb2b6b Working abit more now. Error with device extension thingy. 2022-10-27 02:46:38 +08:00
Brandon Mak ae88c70936 Lighting shader kind of done (still has bugs) 2022-10-27 02:28:38 +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
Brandon Mak 6e9f54987f Prepared light global desc set layout data and render graph resources
- Fixed material padding
- Lighting desc sets now have a buffer at binding 0 to store light counts.
- Added position, normals, albedo resources in render graph
2022-10-26 22:40:04 +08:00
Sri Sham Haran 3518004266 Add Open File DIalog (WIP) 2022-10-26 21:06:09 +08:00
Sri Sham Haran 1018454f2e Add Win32 MessageBox
Add Prefab Manager
2022-10-26 20:21:47 +08:00
Xiao Qi f2e2b21d47 Merge branch 'main' into SP3-13-Assets-Manager 2022-10-26 18:40:10 +08:00
Diren D Bharwani 19ceab84df Added events for adding and removing colliders 2022-10-26 18:35:41 +08:00
Xiao Qi 4eaa15d999 Added function to compile built in shaders 2022-10-26 17:16:09 +08:00
Diren D Bharwani 12758878c5 Fixed bug with multiple collider removals 2022-10-26 16:55:28 +08:00
Diren D Bharwani 4f28161e45 Merge remote-tracking branch 'origin/main' into SP3-2-Physics 2022-10-26 16:30:36 +08:00
Kah Wei 57027da80b Integrated into SBApplication and accounted for case where number of points to draw is 0. 2022-10-26 16:27:58 +08:00
Diren D Bharwani 58491fcbff Fixed physics bugs
1. Colliders are now properly deleted along with its component.
2. Forces and velocities are reset on stop.
2022-10-26 16:17:22 +08:00
Sri Sham Haran 51489ecb3b Merge branch 'main' into SP3-4-editor_fix 2022-10-26 16:07:01 +08:00
Sri Sham Haran 1c099acccb handle vec2/3/4 that contain values in radians 2022-10-26 16:05:52 +08:00
Kah Wei 550b8d85f0 Added SHDebugDrawSystem class 2022-10-26 16:05:50 +08:00
Kah Wei 632df80d06 Refactored SHPrimitiveGenerator and added Sphere generation support 2022-10-26 16:05:18 +08:00
Sri Sham Haran b013d09f42 Tooltips. editor tweaks 2022-10-26 15:31:23 +08:00
Brandon Mak 43ea33cabf Merge remote-tracking branch 'origin/main' into SP3-1-Rendering 2022-10-26 15:26:41 +08:00
Sri Sham Haran d9584a0e39 Changed SHEditor.hpp to .h
Handle editor camera update when interacting with viewport window only
2022-10-26 14:32:00 +08:00
Brandon Mak 5637fb707f Tested light component. Values reflected in renderdoc correctly
- Added pure copy compute shader (used instead of kirsch)
- Created sparse set for lights
- Note that while the instanced attribute contains both EID and layer light index and in the future potentially more, the objects still write to a uint framebuffer. 
- Light layer index is in a different frame buffer than the eid one.
- Updated shaders to accommodate light layer index.
2022-10-26 02:14:43 +08:00
Xiao Qi 54796773b2 Added built in shader extension
Collision check for asset IDs
2022-10-26 01:53:26 +08:00
Xiao Qi c0c6d35b29 Split function in shader module library to get vk flag conversion
Changed some calls to get build in modules
2022-10-26 01:53:08 +08:00
Diren D Bharwani 7ba02aeb0f Removed unused functions, fixed RigidBody 2022-10-26 01:46:13 +08:00
Diren D Bharwani fbb613b859 m dumb. it work. 2022-10-26 01:16:49 +08:00
Brandon Mak 4b7a837469 Fixed some bugs in render graph
- Changed the eid buffer for instanced rendering to a vec2 (potentially vec3 or 4), to pass other types of data like light layer index. 
- Renamed some render graph nodes and subpasses. Added a dummy render pass to transition the scene to read only optimal.
- offscreen buffer resource now transitions to eShaderReadOnlyOptimal instead of eGeneral
2022-10-26 01:08:02 +08:00
Brandon Mak 5016600397 Lights WIP 2022-10-25 23:39:35 +08:00
Diren D Bharwani 0defa58c77 Physics Component Synchronisation is now done through events 2022-10-25 23:09:46 +08:00