Simon Lübeß
215e1f6500
Catch Activator exceptions
2023-12-25 20:25:55 +01:00
Simon Lübeß
acefbb58bd
Serialize/Deserialize simple classes
2023-12-25 20:08:48 +01:00
Simon Lübeß
7bd69c162f
Fixed serialization of null-strings
2023-12-25 18:58:06 +01:00
Simon Lübeß
20814a61b6
Fixed memory leak in AssetFile
2023-12-25 16:30:58 +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ß
d0f0a34247
Start of Script Instance deserialization
...
- Also deserialize when stopping the game to restore pre play state
- Fixed ancient bug where ClearDictionaryAndDeleteKeys falsly deletes the dictionary
- Added ClearDictionaryAndDeleteValues helper mixin
2023-12-24 01:30:01 +01:00
Simon Lübeß
c9116812b4
Serialize Data
2023-12-23 00:44:04 +01:00
Simon Lübeß
a6f68a59d6
Moved basic ScriptEngine classes into separate object
2023-12-22 19:11:40 +01:00
Simon Lübeß
424e995fae
ScriptCore: Made trivial pointer stuff complicated to fix some warnings
2023-12-18 01:44:44 +01:00
Simon Lübeß
4b30fc1a69
ScriptCore: Fixed nullable warning
2023-12-18 01:43:23 +01:00
Simon Lübeß
203e8c4ddb
ScriptCore: Generate GetHashCode for Vectors
...
Fixes warnings
2023-12-18 01:43:02 +01:00
Simon Lübeß
945a0e5603
Fixed Half
2023-12-17 19:23:19 +01:00
Simon Lübeß
3a3778651d
ScriptCore: Moved Physics2D into Physics namespace
2023-12-17 18:47:29 +01:00
Simon Lübeß
6a87d1ac09
ScriptCore: Use engine implementation of half to no longer rely on Half-Package
2023-12-17 18:47:07 +01:00
Simon Lübeß
64f7896c15
Updated ImGui to 1.90.1
2023-12-17 02:22:04 +01:00
Simon Lübeß
89e4e4ef17
Start of entity serialization
2023-12-15 14:53:31 +01:00
Simon Lübeß
b884ee8303
Moved Components to their respective namespaces
2023-12-15 14:53:10 +01:00
Simon Lübeß
66281ebddb
Added icon for editor
2023-12-15 14:52:19 +01:00
Simon Lübeß
a129156641
Documentation
2023-12-13 14:45:33 +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ß
4a2635a8c3
ScriptCore: Moved Component + Doc
2023-12-13 14:00:27 +01:00
Simon Lübeß
105ff57206
Merge branch 'main' of github.com:aharabada/glitchy-engine-beef
2023-12-12 13:38:47 +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
aharabada
4ed3dcf96f
Update README.md
2023-12-12 02:34:06 +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ß
bedbc696c3
ScriptCore: Added UUID.CreateNew
2023-12-10 12:50:11 +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ß
aaa48158c3
Removed script editor from beef side
2023-12-02 00:40:17 +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ß
23b38a7a31
Removed references to nonexistent files/folders
2023-12-01 23:52:16 +01:00
Simon Lübeß
dc551fb85c
Remove native script component
2023-12-01 23:51:53 +01:00
Simon Lübeß
df6b522741
Improved postbuild script for ScriptCore: Automatically create target directory
2023-12-01 23:45:02 +01:00
Simon Lübeß
8f93e1e0e5
Ignore ScriptCore build output
2023-12-01 23:22:41 +01:00
Simon Lübeß
48cdcee8a8
Fixed null pointer exception in ShowScriptEditor when script component has no instance
2023-12-01 23:14:51 +01:00
Simon Lübeß
270e34b983
Fixed list of struct drag and drop, added context menu to remove list entries
2023-12-01 23:14:19 +01:00
Simon Lübeß
df446188b6
Add support for strings and BoolX in script engine, show strings as textfields in editor
2023-12-01 23:13:30 +01:00
Simon Lübeß
b68bad5bda
Keep Entities selected when switching between Play- and Edit-Mode
...
- Fixed the check whether all selected entities have the same parent
2023-11-29 14:16:36 +01:00
Simon Lübeß
0257b93c7b
Move List elements via Drag and Drop
2023-11-22 19:28:02 +01:00
Simon Lübeß
872a400966
Scripts: More range attributes for fields
...
- Added Minimum- and Maximum attributes
- Documentation for Min, Max and Range
- EntityEditor: Refactoring + Range Attributes
2023-11-22 01:59:57 +01:00
Simon Lübeß
ffe86a18cf
Scripts: First implementation of Range- and Readonly-Attributes + added support for all primitive types
2023-11-22 00:57:18 +01:00
Simon Lübeß
881bb8ee51
Scriptengine: Support char-type
2023-11-22 00:55:07 +01:00
Simon Lübeß
05350d4768
Renamed EditfloatX to EditFloatX
2023-11-22 00:54:43 +01:00
Simon Lübeß
8127884b50
Improved List editor and added Enum editor, fixed changed fields not updating
2023-11-18 18:06:13 +01:00
Simon Lübeß
18867fd208
Scripting: VectorGeneratorgenerate Equals methods
2023-11-18 18:03:14 +01:00
Simon Lübeß
849a8582f6
Scripting: Added Log functions to print objects
2023-11-18 18:02:37 +01:00
Simon Lübeß
f28eabf807
Fixed mono not finding assemblies like linq, etc.
2023-11-18 17:56:09 +01:00
Simon Lübeß
060d1ae6fc
Scripting: Implemented Equals and GetHashCode for UUID
2023-11-18 16:45:46 +01:00
Simon Lübeß
24365ec477
Call correct UUID constructor for Entities, fixed crash and weirdness when Scripts have fields that are classes
...
Let's not talk about the fact that this was a one line fix all along...
2023-11-18 02:05:55 +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ß
2a4eac814b
ScriptGlue: Changed signature of Entity_GetScriptInstance
2023-11-18 01:59:10 +01:00
Simon Lübeß
1a92f4aec1
Started reworking entity initialisation
2023-11-18 01:04:12 +01:00
Simon Lübeß
02a2ccb6f9
Copy ScriptCore dependencies to output, EntityEditor: Start of lists
2023-11-16 18:32:13 +01:00
Simon Lübeß
d2972d1b03
Updated submodule "gltf"
2023-11-15 16:25:12 +01:00
Simon Lübeß
d718c6625d
Allow separators in "Create new Asset" dropdown (also changed text to just "Create new")
2023-11-15 16:23:22 +01:00
Simon Lübeß
6f1467046d
Tried EntityEditor in C#
2023-11-10 12:41:58 +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ß
909012f518
Moved Script Solution (.sln) to project root
...
- Updated vswhere.exe
- Scripts created via Asset browser are now being added to the project
- Fixed Apply not being called for extended Settings
- Correctly wrap New File preview only when line full
- Create Project: Show warning, when target directory already exists
2023-10-27 22:29:10 +02:00
Simon Lübeß
3d8756ec42
Added context menu entry to create C#-Scripts.
...
Allow entering file name before creation
2023-10-19 19:27:01 +02:00
Simon Lübeß
bad7b08046
EditorContentManager: Fixed asset reloading
...
(thats why unit tests exist... or at least types...)
2023-09-29 18:56:37 +02:00
Simon Lübeß
d32bc6c475
Properties Window: Combined "Save"- and "Apply"-Buttons into one "Save"-Button
2023-09-29 18:51:21 +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ß
ba54d48dfe
Fixed referencing entities and components that are not the script owners entity
2023-09-16 22:14:52 +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ß
370eaf9bc7
Skip CMake compiler testing
2023-09-13 01:02:13 +02:00
Simon Lübeß
5af174ecee
ScriptCore: atan2
2023-09-05 23:15:48 +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ß
2f58f0e142
Renamed RigidBody2D to Rigidbody2D
...
+ Math.normalize(Quaternion)
+ Position and Rotation properties for Rigidbody2D
+ use In, Out on beef side in ScriptGlue
2023-09-03 19:42:50 +02:00
Simon Lübeß
0165279220
Implemented "Open recent Project" menu entry
...
+ Clean up handle -> asset map when chaning Asset or Resource directory
2023-08-21 14:11:51 +02:00
Simon Lübeß
3affb8a32f
Scripting: Added Set and GetPosition to Rigidbody2D
...
+ Vectors: Hide swizzles in Debugger + Generate ToString
2023-08-21 13:20:12 +02:00
Simon Lübeß
d3c19dd8da
2D Polygon Collider editor with Gizmos
...
+ Added Handles class
2023-08-21 13:18:51 +02:00
Simon Lübeß
377997f903
Fixed mouse wrapping to wrong position when window is moved
2023-08-14 23:56:43 +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ß
a112fcc64a
Automatic switch between Player <-> Editor Tabs
...
+ Allow Editor to inject into Settings
2023-08-14 22:10:27 +02:00
Simon Lübeß
f71e851ab5
Push Loggers earlyer to hopefully avoid race condition
...
+ Fix null check in EditorLogger
2023-08-14 22:09:35 +02:00
Simon Lübeß
040e87d57f
Fixed Selection and Deletion in Entity Hierarchy Window
2023-08-14 14:32:58 +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ß
987246a806
Asset Drag'n'Drop preview
2023-08-02 14:59:35 +02:00
Simon Lübeß
f654a4f379
Fixed AssetHierarchy not updating + Drag'n'drop Files in Asset Browser
2023-08-02 13:48:06 +02:00
Simon Lübeß
92334d8150
Hide obsolete Application.Get()
2023-08-02 00:08:30 +02:00
Simon Lübeß
0101f546a5
Use InvokeOnMainThread for asset tree updates
2023-08-02 00:08:17 +02:00
Simon Lübeß
6c4ac923c6
Asset renaming + AssetHierarchy: major refactoring for file tree construction
...
+ AssetFile: Added "AssetConfigPath" Property
+ Less crashy, more cleaner
2023-08-01 23:56:52 +02:00
Simon Lübeß
51441f0e70
Fixed memory leak
2023-08-01 23:20:25 +02:00
Simon Lübeß
d2600c7517
Fixed Race-Condition in SamplerStateManager
2023-08-01 22:50:09 +02:00
Simon Lübeß
60725c3588
Universal AssetHandles. Serialize AssetHandle instead of AssetIdentifier
...
A bit unstable
2023-08-01 21:38:54 +02:00
Simon Lübeß
6d7f26b1f4
Added "Create new Folder" to Asset Browser context menu
2023-08-01 16:45:54 +02:00
Simon Lübeß
b1f89a345f
Deletion of Assets and Directories
2023-08-01 16:45:33 +02:00
Simon Lübeß
253dd8087e
Added option to create Materials in Asset Browser
2023-08-01 16:24:31 +02:00
Simon Lübeß
e8a5594540
Allow changing Effect of Materials
...
+ TextureDimension Property for Texture
2023-08-01 13:28:04 +02:00
Simon Lübeß
5d8c1b111a
Project user settings, load recent scenes, properly cleanup ScriptEngine when switching scenes
2023-07-31 20:09:56 +02:00
Simon Lübeß
3298053d9d
Fixed Asset Drag'n'Drop
2023-07-31 20:07:12 +02:00
Simon Lübeß
adccb74f44
Editor Layer cleanup
2023-07-31 18:48:36 +02:00
Simon Lübeß
97113b5df6
Start of Create Asset Context Menu
...
+ Asset Hierarchy: Fixed Assets in Folder-Root not being shown
2023-07-31 17:40:05 +02:00
Simon Lübeß
c374d86ec7
Cleanup
2023-07-31 16:40:27 +02:00