Commit Graph

914 Commits

Author SHA1 Message Date
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