a359da1762
- SliceableRigidBody3D is now implemented. - Skinned vertex generation is now its own interruptible slicing step. - Hurtbox queue is implemented in a more performant manner. - Print macros now use class names instead of special tags.
main
ActualHorse2026-10-16 13:48:15 -04:00
00332be60c
Reorganised code files and moved functions to DamageableNode3D parent class.
ActualHorse2026-10-04 21:40:52 -04:00
1a38b7bf19
Hitboxes now send multiple hitboxes per frame instead of just one.
ActualHorse2026-10-02 00:27:32 -04:00
4e0b756000
Slice performance improved by setting time limits on loops.
ActualHorse2026-10-02 00:26:44 -04:00
223eaf2f32
Reworked slicing code in various ways: - slice_mesh takes an input struct, and returns all data in an output struct. - Separated loops to ease the possibility of making them deferred functions.
ActualHorse2026-09-29 04:18:34 -04:00
6e508ccde2
- slice_mesh now supports interpolating custom Float32 data arrays. - get_skinned_vertex_positions now uses Ref<ArrayMesh> instead of a pointer.
ActualHorse2026-09-27 17:36:49 -04:00
e35adc23b2
Removed fix_polygon_winding's ability to delete edges, since it caused problems with polygons that have only three vertices and also that isn't really its job to do anyway.
ActualHorse2026-09-26 14:04:32 -04:00
b5fe9f7c8d
HurtboxBase now sends hit updates on a timer instead of on a new frame.
ActualHorse2026-09-26 01:42:38 -04:00
64421d8ff7
Added a macro to easily call functions on a timer.
ActualHorse2026-09-26 01:34:33 -04:00
b6315f3076
Sliced mesh caps now generate proper normals, thanks to SurfaceTool.
ActualHorse2026-09-26 01:34:01 -04:00
306db05bfc
- Improved loading of newly-sliced MeshInstance3D nodes. - Character3D now handles slicing one skeleton per frame. - Fixed an issue where many identical HurtboxDamages were sent to one body.
ActualHorse2026-09-25 03:56:05 -04:00
a9fd36efa6
- Finally fixed that crash caused by accessing invalid bone transform data. - Skinned vertices are generated per surface, instead of all at once.
ActualHorse2026-09-24 14:41:11 -04:00
52c2aab73c
- HurtboxBase can now properly generate Character3D hit data from a bone hit. - IDamageable now uses a custom damage struct instead of a dictionary.
ActualHorse2026-09-24 01:24:33 -04:00
fda1bada3e
godot-cpp submodule updated to 4.3.
ActualHorse2026-09-19 10:16:29 -04:00
846174f772
HurtboxBase can now find a character hit solely from the CharacterSkeleton3D.
ActualHorse2026-09-19 02:13:30 -04:00
5ccef7932e
CharacterSkeleton3D is now properly registered.
ActualHorse2026-09-19 02:11:22 -04:00
bdca6d83b3
- MeshEditingLibrary now uses the mesh's full AABB for cap UV generation. - MeshEditingLibrary can now also set X/Y/Z plane cap materials as needed.
ActualHorse2026-09-19 02:10:13 -04:00
205ab4357a
Character3D now uses the standard CharacterSkeleton3D build.
ActualHorse2026-09-19 02:07:00 -04:00
38f539e432
Added a CharacterSkeleton3D class, for standardising skeleton builds.
ActualHorse2026-09-19 02:03:49 -04:00
47aa72ae33
Added a DebugDraw3D class, which currently draws an outline of a mesh's AABB.
ActualHorse2026-09-19 02:02:33 -04:00
a2c0d299d4
draw_debug_polygons() now handles parenting the line mesh all on its own.
ActualHorse2026-09-13 00:52:11 -04:00
bd78ca9046
PlayerSpawn now *actually* uses the new print macros.
ActualHorse2026-09-13 00:50:54 -04:00
36c7f87dc0
- Hurtboxes now create their own collision shape nodes automatically. - Character3D prevent crashes on _ready by checking for a valid skeleton. - Fixed deadzone reading as cleared for all axes when only one has done so. - Singletons once again deregistered, since it seems to now cause less crashes. - PlayerSpawn now uses the new error-printing macro.
ActualHorse2026-09-13 00:02:40 -04:00
ef761713b7
- Mesh slicing now works properly when a cut crosses through multiple surfaces. - Added a debug feature to show polygon lines that can't form a closed shape.
ActualHorse2026-09-12 11:56:10 -04:00
004c845af7
- Increased minimum version to 4.3 for compatibility with physics bones. - Added an interface for nodes that can be damaged. - Character3D implements the above interface to make itself sliceable. - Added a hurtbox base class. - MeshEditingLibrary::slice_mesh now uses Godot references when possible. - Removed semicolon from print macros to enforce placing them in code.
ActualHorse2026-09-07 13:49:13 -04:00
c91a539a26
Number of mouse inputs is now tracked, and mouse mode is changed more reliably.
ActualHorse2026-09-03 11:24:38 -04:00
1e43a2433c
- Inputs no longer fire continuously when the axis is in a resting position. - Fixed an error that caused a signal that doesn't exist to disconnect.
ActualHorse2026-08-29 15:52:58 -04:00
ad7281a47a
- Added Character3D as a C++ class. - PlayerOrigin now loads a preview of the player scene in the editor. - LevelScene now executes a signal when a Character3D falls out of the world. - SublevelScene no longer crashes when the extension is reloaded. - slice_mesh() now transforms the slice cap normals to match the vertices. - InputResource now sends mouse axis inputs to a separate callback. - Added debug log macros.
ActualHorse2026-08-25 01:33:07 -04:00
431b7c2f8a
get_skinned_vertex_positions now returns skin transform array.
ActualHorse2026-08-23 23:26:33 -04:00
3119b17bd6
- Removed superfluous check for a valid skeleton. - Fixed getting mesh vertices on meshes with no skeleton.
ActualHorse2026-08-23 22:35:45 -04:00
bbaa3d01d2
- Implemented a much more efficient bone weight calculation. - Added debug messages for measuring the time each step of a mesh slice takes.
ActualHorse2026-08-23 22:18:47 -04:00
814299e449
Fixed signal/function name confusion when adding and removing input resources.
ActualHorse2026-08-23 17:46:11 -04:00
323e55c3fd
Signals are no longer double-connected when a resource is added twice.
ActualHorse2026-08-20 01:51:56 -04:00
acdd9f104e
- Added a method to retrieve actions and axes from a resource by name. - InputResources call their signals with default values before disconnecting.
ActualHorse2026-08-19 19:01:52 -04:00
fb0293ac14
Fixed axes mapped to buttons creating an input for each axis value change.
ActualHorse2026-08-17 21:12:57 -04:00
05a680cc5b
Added static functions that allow slicing meshes, including skinned meshes.
ActualHorse2026-08-01 05:30:25 -04:00
8ab4bde4a1
liborng is now its own repository, as it always should have been.
ActualHorse2026-07-31 00:10:44 -04:00