Commit Graph

281 Commits

Author SHA1 Message Date
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 819607925f Added GameObject.Null for setting GameObjects to null. 2022-11-21 15:41:15 +08:00
Kah Wei 0a9dea1c83 Disabled xmldoc generation warnings for SHADE projects 2022-11-21 12:14:07 +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
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
Kah Wei 042bff5c1a Added additional exception handling for serialization and deserialization failures for scripts to prevent data loss 2022-11-17 15:49:06 +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
Kah Wei 17662abef1 Fixed bug where certain null objects in deserialization was not handled 2022-11-17 15:42:40 +08:00
Diren D Bharwani 503f32c3a6 Merge remote-tracking branch 'origin/main' into SP3-2-Physics 2022-11-17 00:21:18 +08:00
Kah Wei dc9291bc01 Added Audio class for playing audio from C# 2022-11-16 15:00:56 +08:00
Diren D Bharwani 1b2ff7f4a2 Expanded Collision Shape C# Interface 2022-11-15 23:57:38 +08:00
Diren D Bharwani a752bdb985 someone donno how to normalise sia 2022-11-15 18:45:58 +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
Kah Wei 47c50c3a31 Merge branch 'main' into SP3-6-c-scripting 2022-11-14 19:38:43 +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
Kah Wei 5ccd2263c7 Documentation files are now generated for projects 2022-11-14 18:35:52 +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
Kah Wei 9e90a78ee4 Added GetComponentsInChildren and GetScriptsInChildren for Scripts and GameObjects 2022-11-14 16:29:53 +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
Diren D Bharwani c953931f4f Merge branch 'main' into SP3-2-Physics 2022-11-13 17:57:30 +08:00
Kah Wei 4dc8527395 Reworked scripts to no longer need definition of constructors 2022-11-13 16:29:25 +08:00
Kah Wei af361062e7 Modified how scripts are added and updated to support runtime adding of scripts 2022-11-13 16:07:14 +08:00
Diren D Bharwani 86ca047c88 Merge remote-tracking branch 'origin/main' into SP3-2-Physics 2022-11-13 14:49:44 +08:00
Kah Wei 23320863e3 Added support for undo-redo of adding/removing scripts 2022-11-13 14:49:32 +08:00
Kah Wei 635d999c2c Fixed redo not working correctly 2022-11-13 13:16:36 +08:00
Kah Wei 4b6ede88e2 Merge branch 'main' into SP3-6-c-scripting 2022-11-13 12:44:50 +08:00
Kah Wei fd7a47b4c0 Added changes to hide internal types and constructors that should not be available to SHADE_Scripting 2022-11-13 12:44:23 +08:00
Kah Wei 26e0e72b25 Fixed lists not deserialising correctly 2022-11-13 04:57:10 +08:00
Kah Wei d98deda63d Implemented deserialization of lists 2022-11-13 02:42:47 +08:00
Kah Wei 889d3dac4c Split serialization code into SerialisationUtilities, refactored serialisation code and implemented list serialisation 2022-11-12 23:14:25 +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
Kah Wei d6764b4551 Added support for adding and removing elements from a list 2022-11-12 03:25:46 +08:00
Kah Wei 543c199b03 Fixed lists undo not working 2022-11-12 02:33:00 +08:00
Kah Wei 2d2cc532a5 Fixed editing intermdiate list values not working 2022-11-11 22:59:45 +08:00
Kah Wei dfc03839db Renamed functions for clarity 2022-11-11 22:18:32 +08:00
Kah Wei d98d00b916 Wonky solution for array editor that doesn't work for elements outside of the first 2022-11-11 15:20:14 +08:00
Kah Wei 5d2aae3561 Made enum editor template specializations instead 2022-11-11 13:41:58 +08:00
Kah Wei ed3694bde1 Merge branch 'main' into SP3-6-ArraySerialization 2022-11-11 12:07:40 +08:00
Kah Wei fdc8965b62 Made String and GameObject editor template specializations instead 2022-11-11 12:07:26 +08:00
Kah Wei 85cc97ca27 Added implementation for ListElementAddCommand and ListElementRemoveCommand 2022-11-11 12:07:05 +08:00
Kah Wei 80db641b6f Added ListElementChangeCommand 2022-11-11 00:49:20 +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
Kah Wei 8670b419d0 Merge branch 'main' into SP3-6-c-scripting 2022-11-10 22:25:58 +08:00
Kah Wei cf5cc41a3f Reworked Undo-Redo system to be more flexible and stable 2022-11-10 18:10:15 +08:00
Kah Wei bdc7297937 Converted macros for script field inspectors to use templates 2022-11-10 16:20:04 +08:00
Kah Wei e8d2179d76 Added test support for List<int> display in editor 2022-11-10 11:01:17 +08:00
Diren D Bharwani eeab3494ba Reworked SceneGraph Interface 2022-11-10 03:30:02 +08:00
Kah Wei da12db6726 Merge branch 'main' into S3-6-Gizmos 2022-11-09 14:45:31 +08:00
Kah Wei bbe8622d1e De-plushied SHADE_Managed comments 2022-11-09 14:45:08 +08:00
Kah Wei a3fe98317d Fixed performance issue in scripts editor when multiple attributes are applied onto script fields 2022-11-09 10:31:30 +08:00
Kah Wei 349f4a875b Added full implementation of Gizmos class 2022-11-09 10:22:11 +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
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
Kah Wei 715699b63b Add interface for C# light class and modified Color to match Unity's interface 2022-11-08 20:18:50 +08:00
Kah Wei 8512c658f9 Made GameObject an IEnumerable to follow Unity's Transform interface for iterating through children 2022-11-08 18:32:47 +08:00
Kah Wei 9be58e7e5d Added SceneGraph interaction functions in GameObject 2022-11-08 18:32:13 +08:00
Diren D Bharwani f8417f6116 Merge remote-tracking branch 'origin/main' into SP3-2-Physics 2022-11-08 15:22:28 +08:00
Kah Wei e3369c688d Added comment to document invalid/null GameObject usage 2022-11-08 13:49:49 +08:00
Kah Wei e0481ad8af Removed debug log 2022-11-08 13:47:39 +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
Diren D Bharwani 70dcad1313 Changed Collider to CollisionShape for improved clarity 2022-11-07 18:19:39 +08:00
Sri Sham Haran 4ee0294977 Scene loads correctly now 2022-11-04 14:44:18 +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 7bda8b3998 Added IsInterpolating to RigidBody in C# 2022-11-02 13:48:53 +08:00
Diren D Bharwani 72dc07bbd9 Shifted Hierarchy interface from Transform to GameObject 2022-11-01 19:00:31 +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
maverickdgg eb54b49a5e Merge branch 'main' into SP3-141-Camera-System 2022-11-01 15:50:45 +08:00
maverickdgg 39910afa54 Added GetForward to Camera C# interface.
GetForward gets the forward according to Camera's last calculated view matrix
2022-11-01 15:49:15 +08:00
maverickdgg a45432ef66 Merge conflict 2022-11-01 15:35:50 +08:00
maverickdgg d917159f67 Merge branch 'main' into SP3-141-Camera-System 2022-11-01 15:31:11 +08:00
maverickdgg f919d95c0b Added C# interface for Camera and Camera Arm. Added some test scripts 2022-11-01 15:30:13 +08:00
Kah Wei 69e625014d Added EntityID retrieval from GameObject 2022-11-01 15:25:19 +08:00
maverickdgg d82bc8833f Camera C# interface 2022-11-01 14:20:03 +08:00
Kah Wei c08afcb804 Fixed incorrect FixedUpdate() execution and added Time.FixedDeltaTime 2022-11-01 00:37:09 +08:00
Kah Wei 4e97392098 Added support for multiplying doubles with Vectors in C# 2022-11-01 00:27:45 +08:00
Kah Wei e4cb8ede5a Added support for collision and trigger events in code properly 2022-11-01 00:11:09 +08:00
Kah Wei b7aca5b118 Merge branch 'main' into SP3-6-c-scripting 2022-10-31 23:39:56 +08:00
mushgunAX caf6006c9e Update C# Input Enums 2022-10-31 22:06:28 +08:00
Kah Wei f9810684ed Added functions for execution of OnCollision*() and OnTrigger*() 2022-10-31 21:38:17 +08:00
Kah Wei 60c2c9facb Added collision and trigger event functions for Script 2022-10-31 21:31:33 +08:00
Kah Wei 40044cbbfe Added definitions for CollisionInfo properties 2022-10-31 21:26:39 +08:00
Kah Wei ccbbdc6485 Added CollisionInfo and SHPhysicsSystemInterface 2022-10-31 21:05:46 +08:00
Kah Wei 2ffba202f7 Added proper implementation of IsActiveInHierarchy() 2022-10-31 16:29:29 +08:00
Kah Wei f91b1f00ad Added implementation for GameObject.Find() 2022-10-31 15:28:28 +08:00
Kah Wei b04565c9dc Added implementation for scripts and component functions for scripts 2022-10-31 15:07:10 +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
Kah Wei 5eaf2b55aa Added WIP Application class and adjustments to how ScriptStore destroys scripts (SpdLog errors) 2022-10-31 12:20:46 +08:00
Kah Wei da05cb3edc Fixed script error and added support for static functions in CallbackAction 2022-10-30 02:37:58 +08:00
Diren D Bharwani 96bd982e4c Merge remote-tracking branch 'origin/main' into SP3-12-SceneGraph 2022-10-29 14:51:48 +08:00
Diren D Bharwani c9b116b8be Added skeleton functions to managed GameObject for scene graph interface 2022-10-29 14:51:34 +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 19dc999e4f Added full implementation of Renderable script interface 2022-10-29 02:19:36 +08:00
Kah Wei 9617ed3838 Added NativeAsset, Material and Mesh representations along with a stub for Renderable 2022-10-28 19:23:40 +08:00
Kah Wei 7e5c819813 Fixed warning with Collider not being made abstract 2022-10-28 19:03:07 +08:00
Kah Wei 199897adb4 Added GenericHandles to SHADE_Managed 2022-10-28 19:02:26 +08:00
Diren D Bharwani 1a4b15feb2 Changed ColliderBound to CollisionShape because ColliderBound sounds weird 2022-10-28 14:29:05 +08:00
Diren D Bharwani 4fc87866ee Fixed compilation error 2022-10-28 14:23:11 +08:00
Kah Wei 7d6af884a4 Added Color struct 2022-10-28 13:59:41 +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 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
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 3bdc48260f Improved CallbackEvent inspector 2022-10-25 16:55:50 +08:00
Kah Wei 73a85e4aab Merge branch 'main' into SP3-6-c-scripting
# Conflicts:
#	SHADE_Managed/src/Utility/Convert.cxx
#	SHADE_Managed/src/Utility/Convert.hxx
2022-10-25 15:56:11 +08:00
Kah Wei f6cbb18143 Added display of WIP CallbackEvents on the inspector 2022-10-25 01:34:46 +08:00
Diren D Bharwani ff025f212c Added Euler Angles properties to Managed Transforms 2022-10-24 22:41:36 +08:00
Diren D Bharwani 24c591ec27 Modified Managed Transform Interface to use Quaternions 2022-10-24 20:07:59 +08:00
Diren D Bharwani c34faade86 Converted doubles to floats in SHADE Managed. Added Quaternions. 2022-10-24 02:45:47 +08:00
Kah Wei 51c79d33d6 Added C-style versions of SHLog functions and P/Invoke versions in SHADE_CSharp 2022-10-24 02:04:12 +08:00
Diren D Bharwani 57f9898e07 Finished quaternion implementation 2022-10-23 20:03:18 +08:00
Kah Wei 2bd633c11b Added RigidBody component 2022-10-22 23:00:50 +08:00
Kah Wei 9d8dfd334f Added serialization interfaces for Material (missing Shader) 2022-10-22 19:38:02 +08:00
Kah Wei 488fd51d05 Added Collider component and Ray struct for C# 2022-10-20 17:07:21 +08:00
Kah Wei 166a036142 Completed script serialization in YAML 2022-10-20 11:08:20 +08:00
Kah Wei 4bc91283c8 Fixed primitive fields not being serialised 2022-10-20 10:10:43 +08:00
Kah Wei cfed342f9c Modified script serialization to use a sequence of scripts instead of a map 2022-10-20 09:54:51 +08:00
Kah Wei 4f177bc455 Reworked script serialization and deserialization functions (WIP) 2022-10-19 20:43:22 +08:00
Kah Wei a3c4c347bb Added Time class for C# 2022-10-19 16:06:26 +08:00
Kah Wei 7df24e7a66 Fixed RangeAttribute not working correctly 2022-10-19 10:12:56 +08:00
Kah Wei ceb4c6c4ca Added Range Attribute 2022-10-18 22:34:46 +08:00
Kah Wei 87cf3ffa61 Added script inspector tooltips support via Tooltip attribute 2022-10-18 20:09:50 +08:00
Kah Wei 3b3492843f Added input class 2022-10-16 03:25:33 +08:00
Diren D Bharwani 7c4a9ca004 Added conversions for shade math to reactphysics math 2022-10-10 18:07:21 +08:00
Brandon Mak 3f334da934 Merge remote-tracking branch 'origin/main' into SP3-1-Rendering 2022-10-02 03:09:25 +08:00
Brandon Mak d432822608 Merge remote-tracking branch 'origin/main' into SP3-1-Rendering 2022-10-02 01:13:43 +08:00
Brandon Mak 64d1c2ab2e Minimize is now working 2022-10-02 00:47:26 +08:00
Kah Wei 15c39d7028 Removed mixed tabs and spaces 2022-10-01 22:58:19 +08:00
Kah Wei f717b61c88 Added undo and redo support for script changes in the inspector 2022-10-01 22:56:15 +08:00
Kah Wei 1477aaaead Merge branch 'SP3-6-c-scripting' of https://github.com/SHADE-DP/SHADE_Y3 into SP3-6-c-scripting 2022-10-01 20:34:45 +08:00
Kah Wei b3d15b6a39 Added WIP UndoRedoStack 2022-10-01 20:34:23 +08:00
Sri Sham Haran a6e17847bf Warning disables
Remove SDL hint that gave warning (it was unnecessary anyway)
2022-10-01 18:58:13 +08:00
Kah Wei 70559204bf Added spinning raccoons and fixed TRansform component bug 2022-09-28 23:55:44 +08:00
Kah Wei 94a7258eb3 Context menu for the script inspector will now work even when collapsed 2022-09-28 15:33:32 +08:00
Kah Wei 7010e1b688 Added initial implementation of script inspector 2022-09-28 00:06:47 +08:00
Kah Wei a57c4d0d73 WIP Script Inspector 2022-09-27 19:17:53 +08:00
Kah Wei e42283a553 Fixed RTTR linker errors 2022-09-27 01:12:02 +08:00
Kah Wei 187142d5c3 Added Transform Component C# interface 2022-09-23 19:57:29 +08:00
Kah Wei 1bede86ff6 Awake(), Start() and Update(), OnDestroy() for scripts now all run as intended 2022-09-22 17:25:43 +08:00