Simon Lübeß
1279dc0a66
Implemented Copy for physics components
2024-03-28 22:40:53 +01:00
Simon Lübeß
d28426478b
Font renderer improvements + component for scripting
2024-03-17 20:29:52 +01:00
Simon Lübeß
930d289565
Improved copying of components
2024-03-17 20:28:41 +01:00
Simon Lübeß
a2c7bf7d06
Ensure generating unique Entity IDs
2024-03-17 20:25:38 +01:00
Simon Lübeß
96609a6c31
FontRenderer: Basic Rich Text processing and lazy text building
2024-03-16 23:35:12 +01:00
Simon Lübeß
e703452b94
Start of text renderer component
...
- UC, LC, IC, RC tags
2024-03-14 22:17:57 +01:00
Simon Lübeß
fc475eb468
Save and copy editor flags with scene. Replaced EditorComponent with DontSafe-flag
2024-03-10 13:11:53 +01:00
Simon Lübeß
72bd152999
Refactor
2024-03-10 13:01:05 +01:00
Simon Lübeß
8d92822845
Added EditorFlags: Hide entities in hierarchy and editor scene
...
- Also some Style changes
2024-03-10 12:21:20 +01:00
Simon Lübeß
0a8d83ffb6
Changed Transform Update order
2024-02-26 13:47:29 +01:00
Simon Lübeß
59aaec572b
Render 2D with depth, reverse depth of camera projection
...
dirty fix in Renderer...
2024-02-16 17:31:32 +01:00
Simon Lübeß
8ff35d3967
ScriptCore: Added more properties to components
...
- Added CircleRenderer
- Transform: Added Rotation, RotationEuler, RotationAxisAngle and Scale
- RigidBody: Added BodyType and GravityScale
- Added ColorRGBA
2024-01-27 19:46:37 +01:00
Simon Lübeß
bc535ddc26
Get/Set FixedRotation in play mode
2024-01-26 12:51:29 +01:00
Simon Lübeß
7026be1c90
2D Physics and script improvements
...
- fixed time step
- Fixed crash caused by physics script callback being registered in simulation mode
- Moved 2D Physics config to file
- Finally gave up on the attempt to keep X and Y rotation when applying new Z-rotation from 2D rigidbody to transform and now I can sleep well
- Streamlined starting and stopping of scenes
- Scripts: execute all inits and OnCreates before OnUpdate
2024-01-22 23:19:55 +01:00
Simon Lübeß
c906fc9667
Properly destroy script instances
...
Now without memory leaks!
2024-01-18 21:29:11 +01:00
Simon Lübeß
ba68eb7428
Editor: Show name of open scene in window title
2024-01-12 15:41:56 +01:00
Simon Lübeß
99a12a118c
Fixed Script data for entity copying
2024-01-09 13:41:54 +01:00
Simon Lübeß
bfc9d4a0a5
Save and Load script data from files
2024-01-07 18:35:33 +01:00
Simon Lübeß
abb119589c
Reload scripts in Play Mode!!!
...
- Dont serialize static fields
- Added some profiling to ScriptEngine
- Removed superseded ScriptFieldMaps
2023-12-24 01:33:48 +01:00
Simon Lübeß
ed756f5847
Fixed scripts OnUpdate not being called in play mode
2023-12-13 14:01:23 +01:00
Simon Lübeß
e69e1b5526
Show Buttons in entity editor
...
- ScriptEngine: Added HasCustomAttribute- extension method
- ScriptEngine: Added Application class
2023-12-12 13:38:29 +01:00
Simon Lübeß
13cb043cf4
Removed TODOs related to native script component (which was removed)
2023-12-10 12:52:49 +01:00
Simon Lübeß
1238a43896
Start and Stop script runtime for editor scene
2023-12-03 14:06:40 +01:00
Simon Lübeß
5852e11ccb
Start of edit mode scripts
...
- Initialize script instances in edit mode
- Run OnCreate and OnUpdate for Entities with RunInEditMode-Attribute
2023-12-02 00:28:04 +01:00
Simon Lübeß
dc551fb85c
Remove native script component
2023-12-01 23:51:53 +01:00
Simon Lübeß
214889470f
Scene: Set ScriptEngine Context (Scene) when copying entities
...
Fixes invalid access when constructors throw exceptions
2023-11-18 02:00:11 +01:00
Simon Lübeß
b41eaad788
Disposable Rigidbody2D
2023-10-28 21:48:56 +02:00
Simon Lübeß
38fc1f63b3
Small script engine improvements
...
- Fixed script class name not visible in Component Editor
- Retain user assembly file system watcher (fixed deletion while handling events)
- Fixed crash when a scritp constains a List or Array (by ignoring them for now)
- Fixed Typo in Genericinst
- Scene: Invoke OnCreate for copied entity scripts
2023-10-28 21:48:43 +02:00
Simon Lübeß
688046fcf9
Scripting: Create Rigidbodies and Colliders during runtime
2023-09-21 15:10:20 +02:00
Simon Lübeß
446dc2ca2a
Scripting: Basic copying of entities during runtime + Reference Components using UUID
2023-09-21 14:23:00 +02:00
Simon Lübeß
754c149493
Entity Creation and Destruction from scripts
...
- ScriptEngine: Allow destroying scripts during runtime
- Scripting:
- Create new entities using Constructors
- Added Destroy functions for Entities
- Added SetScript/RemoveScript functions for Entities
- Allow adding multiple components at once
- Added Is-Method
- Mono Wrapper: Added Array-Functions
- WorldEnumerator: Fixed crash due to dangling list pointer after entity creation
- Scene:
- Basic create Rigidbodies during runtime
- Start of entity copying (For runtime use)
- Added DestroyEntityDeferred
- SceneSerializer:
- Added option to assign new IDs to entities
2023-09-15 23:22:27 +02:00
Simon Lübeß
ff54eb738e
UUID: Removed empty constructor, added static Create-Function
2023-09-13 13:14:54 +02:00
Simon Lübeß
7bffd01401
Rigidbody2D Get/Set Linear and Angular Velocity
2023-09-05 23:15:33 +02:00
Simon Lübeß
cd333f4f02
EditVector: Allow Disabling individual components
...
+ Disable XY-Angle when Entity has Rigidbody2D Component (This is something for future me, I couldn't figure it out...)
+ Start of handling of non trivial tranform nesting and rotations on XY axes
+ TranformComponent.RotationEuler: Normalize quaternion before converison
2023-09-05 23:14:51 +02:00
Simon Lübeß
d7201299c7
Fixed physics only simulation
...
+ Don't run scripts in physics only mode
+ Don't initialize scritps in physics only mode
+ Don't setup physics callbacks in physics only mode
2023-08-14 22:38:55 +02:00
Simon Lübeß
74b17c8599
2D Polygon Collider
2023-08-13 12:03:06 +02:00
Simon Lübeß
4e5d3cfd64
Add OnCollisionLeave2D
2023-08-10 22:07:58 +02:00
Simon Lübeß
b28ca14e15
Updated Box2D
2023-08-10 20:38:49 +02:00
Simon Lübeß
aafcc41286
Invoke on collision enter + start of attach child colliders to rigidbody
...
+ Changed default Namespace of ScriptCore to GlitchyEngine
+ Implicit Casts float2 <-> b2Vec2
+ Entity constructor internal
+ Renamed RigidBody2D to Rigidbody2D (notice the B)
+ Basic Debug Draw actual 2D Colliders
+ Added Entity::GetParentWithComponent
2023-08-10 19:55:45 +02:00
Simon Lübeß
803fd7f8ba
Fixed crash when ScriptComponent has no Instance in Play Mode
2023-07-31 16:36:02 +02:00
Simon Lübeß
c1a87ed946
Separated Assets to Resources (Engine assets) and Assets (Project specific)
...
+ AssetHierarchy: Exposed RootNode
+ ContentBrowserWindow: Fixed Empty Folder not being Leaf-Node
+ TreeNode: Added IsParentOf, IsChildOf and IsInSubtree.
+ Fixed InternalDeleteTreeAndChildren for null trees
2023-07-30 20:30:06 +02:00
Simon Lübeß
37197cbdf1
Allow dragging and dropping of Entities in editor
...
+ New Dictionary Helpers
+ Made ImGui Payloads safer
+ Start of Component drag'n'drop
2023-07-24 23:17:00 +02:00
Simon Lübeß
b53ed2d8f2
Made script deserialization more robust
2023-07-24 21:28:58 +02:00
Simon Lübeß
cd1562f372
Basic Script reloading
...
+ ScriptComponent now saves script name instead of direct ScriptClass reference
+ Added ClearDictionaryAndDeleteKeys helper
+ Moved ScriptFieldType to separate file
+ _ScriptFieldMap now uses String as Key
2023-07-18 22:06:34 +02:00
Simon Lübeß
e8505f6bdb
Scripting: FindEntityWithName and get script instance
...
+ Some C# UUID stuff
+ Added some Mono functions
+ ScriptEngine:
+ ID -> ScriptInstance map in ScriptEngine
+ GetManagedInstance
+ Fixed Scene not visible after loading a new scene
+ Renamed OnViewportResize to SetViewportSize for Scene and SceneRenderer
2023-07-17 20:27:18 +02:00
Simon Lübeß
66d66d3308
Serialize script fields in "array" + more forgiving deserialization
2023-07-17 04:04:01 +02:00
Simon Lübeß
1641bafd06
Don't instantiate scripts for Editor + ScriptComponent Serialzation + Don't crash when scene loading failed
2023-07-17 01:27:58 +02:00
Simon Lübeß
77c45db122
Replaced IntX by intX, Basic AssetViewer (can view Textures, kind of)
2023-07-01 00:15:01 +02:00
Simon Lübeß
9e1f648aa0
Transitioned from VectorX to floatX
...
And some trying to update Rigidbody when transform changes
2023-06-25 02:47:33 +02:00
Simon Lübeß
f4607a6210
Script default values after init, Fix memory leak, Copy Script values on Play
2023-05-31 14:38:07 +02:00