Martin Felis
7c8b44247b
Fixed SpeedScale node not properly propagating time.
2023-04-02 21:24:12 +02:00
Martin Felis
abf44a875a
Added support for const node inputs.
2023-04-02 16:26:24 +02:00
Martin Felis
42303d5f47
Store the input values of nodes if they are non-zero.
2023-04-01 22:53:53 +02:00
Martin Felis
3d55b748e6
Refactored anim graph data usage and evaluation.
...
- Refactored NodeSocketAccessor to NodeDescriptor.
- Connections are wired up during AnimGraph instantiation.
- Output and input sockets point to the same memory location.
- No re-wiring needed during evaluation.
- AnimGraph are pre-allocated (refactoring for less memory usage postponed).
- Evaluation of AnimGraph now possible from the editor.
2023-04-01 14:16:20 +02:00
Martin Felis
91607baa9d
Initial step for connectivity refactor.
...
Instead of wiring up pointers with prepareNodeEval() and finishNodeEval() use for each connection a single memory block where outputs and inputs point to.
2023-03-30 23:50:07 +02:00
Martin Felis
411aa5ef20
Better split between runtime library and editor.
2023-03-30 18:11:54 +02:00
Martin Felis
9168dec9f9
Added NodeDescriptor::UpdateFlags() to set Blend2 weight input flags.
2023-03-30 16:53:09 +02:00
Martin Felis
9dd10e8f27
Initial version of NodeDescriptor which aims to replace NodeSocketAccessor.
2023-03-29 22:25:09 +02:00
Martin Felis
08283d9bcf
Evaluation of very simple graphs works.
2023-03-28 22:00:58 +02:00
Martin Felis
e38c0b4934
Started working on graph initialization in ATP Editor.
2023-03-26 23:39:11 +02:00
Martin Felis
a1931185d8
Simple AnimationPlayer now working.
2023-03-26 18:53:32 +02:00
Martin Felis
80ea25483b
Started working on the animation player widget.
2023-03-26 15:01:44 +02:00
Martin Felis
7152fa74e1
Added SkinnedMeshResource
2023-03-26 13:28:12 +02:00
Martin Felis
15871f349c
Updated ozz-animation to version 0.14.1 @35b2efd4
2023-03-26 13:28:12 +02:00
Martin Felis
bf3189ff49
Some more improvements of editor persistence.
2023-03-26 13:28:12 +02:00
Martin Felis
3d387a5dad
Better serialization of application state.
2023-03-25 23:50:03 +01:00
Martin Felis
8a91c7700a
Minor UI improvements.
2023-03-16 23:51:49 +01:00
Martin Felis
aa9ab1def1
Added missing test data
2022-10-18 22:34:01 +02:00
Martin Felis
2a8a5a5e40
Use std::list for animation data eval buffer..
2022-04-18 23:14:34 +02:00
Martin Felis
68331467f0
Refactored graph evaluations.
2022-04-18 20:02:16 +02:00
Martin Felis
5e7a48b2eb
WIP: graph evaluations. Fixed various memory issues, better tests.
2022-04-14 18:03:36 +02:00
Martin Felis
2da07ef961
Working on graph evaluations. WIP.
2022-04-13 15:48:39 +02:00
Martin Felis
b518220576
Added test which creates skeleton and animation during runtime.
2022-04-13 11:14:29 +02:00
Martin Felis
eeef635c64
Initial works for actial animation sampling and graph evaluation.
2022-04-11 16:46:09 +02:00
Martin Felis
bf0c7a7daa
Added Tests for MathAdd Node
2022-04-11 11:40:53 +02:00
Martin Felis
e7314e3477
imnodes: pin coloring and connectivity logic
2022-04-08 12:48:04 +02:00
Martin Felis
5d8c1e289b
Initial graph evaluations, added Float to Vec3 Node, minor editor tweaks.
2022-04-03 21:05:11 +02:00
Martin Felis
08ae84fcb4
New evaluation scheme.
...
- Animation Data are always referenced via a pointer in nodes.
- Animation Data storage pointers are injected from graph when node is evaluated.
- Node value outputs always stored in node.
- Node value inputs always referenced via pointer. References are created when instantiating the graph.
2022-04-01 13:19:54 +02:00
Martin Felis
abddbea62b
Refactoring.
2022-03-25 12:05:56 +01:00
Martin Felis
6c0c0599f8
Removed old animation graph code.
2022-03-25 11:51:37 +01:00
Martin Felis
72a67195e6
Use socket pointers instead of indices for connections.
2022-03-25 11:23:03 +01:00
Martin Felis
84a9ef6f14
Use node pointer to check whether we use graph input/output nodes instead of indices.
2022-03-25 11:03:53 +01:00
Martin Felis
2f646bc5ec
Simpler conversion SocketType <-> Strings.
2022-03-25 10:59:12 +01:00
Martin Felis
73e7a60875
Minor cleanup.
2022-02-24 23:47:31 +01:00
Martin Felis
976875c218
Added index member to node, preparing synctrack and node evaluation.
2022-02-24 22:55:40 +01:00
Martin Felis
d6453911e2
Removed node input splitting.
2022-02-24 22:06:47 +01:00
Martin Felis
306a2cb4d8
Minor fix to node input splitting. Not sure it is a good idea anymore, though...
2022-02-22 22:49:12 +01:00
Martin Felis
ef74f39cf4
Splitted animation and data node inputs.
2022-02-22 22:34:13 +01:00
Martin Felis
af5d27db85
Simple time propagation works.
2022-02-22 22:03:26 +01:00
Martin Felis
87eb2ab7df
Mark all nodes that connect to the graph output nodes by default as active.
2022-02-20 16:00:45 +01:00
Martin Felis
b01acc2a88
Added marking of nodes active/inactive.
2022-02-20 15:57:19 +01:00
Martin Felis
618f6b613e
Minor test cleanup.
2022-02-19 12:18:54 +01:00
Martin Felis
da916a7346
Added node ordering code and tests.
2022-02-19 12:16:57 +01:00
Martin Felis
bd304bde4e
Give access to node inputs in runtime graph, initial works for marking of active nodes.
2022-02-19 00:25:51 +01:00
Martin Felis
9069a8192b
Added serialization and deserialization of properties.
2022-02-18 23:33:30 +01:00
Martin Felis
ee6a8eb29a
Basic node properties editor.
2022-02-18 22:24:19 +01:00
Martin Felis
0d0b181ebb
Unified handling of nodes in editor.
2022-02-15 21:06:12 +01:00
Martin Felis
9b743fd081
Links can be removed in graph editor.
2022-02-15 20:57:59 +01:00
Martin Felis
3e02f28b18
Graph Input/Output wiring added.
2022-02-14 22:37:19 +01:00
Martin Felis
bbab4d8608
Graph editor allows instantiation of different node types.
2022-02-12 12:06:25 +01:00