Nahuel Rocchetti
dbe29265af
Make ids shorts, implement more data sources
2023-08-22 02:10:53 -03:00
Nahuel Rocchetti
b16b98abd5
fix interrupt not handling
2023-08-22 01:52:23 -03:00
Nahuel Rocchetti
143b3fb67f
Interrupt system
2023-08-22 01:50:42 -03:00
Nahuel Rocchetti
67348d72dd
Can notify objects out of idle now.
2023-08-22 01:09:34 -03:00
Nahuel Rocchetti
3ee0b00c84
Simplify Continue Handler
2023-08-22 00:45:05 -03:00
Nahuel Rocchetti
9a87ea04c8
Refactor VM blocking.
2023-08-22 00:32:43 -03:00
Nahuel Rocchetti
92dfcc0193
Refactor primtiives
2023-08-22 00:06:03 -03:00
Nahuel Rocchetti
38c1d3536a
optimize gosub argument passing
2023-08-21 23:52:57 -03:00
Nahuel Rocchetti
11e51e1e7c
Some comments
2023-08-21 23:50:00 -03:00
Nahuel Rocchetti
524d0b797d
Transfer stackobjid to new stack frame.
2023-08-21 23:44:44 -03:00
Nahuel Rocchetti
9710bc5f04
Implement gosub to private/global bhavs
2023-08-21 23:43:35 -03:00
Nahuel Rocchetti
6d3812883c
better names for stack frame funcs
2023-08-21 22:11:38 -03:00
Nahuel Rocchetti
a298771cfc
Update VMStack.cs
2023-08-21 20:51:49 -03:00
Nahuel Rocchetti
5f8513d320
implement non blocking stack, return exitcodes from stack.
2023-08-21 20:49:12 -03:00
Ammar Askar
1da81c10d6
Add gizmos for hand IK bends
2023-08-21 19:46:04 -04:00
Nahuel Rocchetti
a4d4dacf5c
rename expression operators
2023-08-21 20:17:03 -03:00
Nahuel Rocchetti
8df3087498
VM: don't yield if continue callback ends in same tick.
2023-08-21 20:14:42 -03:00
Ammar Askar
becb9815e3
Fix inverse kinematics for legs.
...
Some animations change the root_trans and root_rot bones and these
were causing the IK feet goals to get out-of-sync with the model.
Adding a RigTransform is the recommended way to handle this in the
unity's animation rigging package.
2023-08-21 18:37:45 -04:00
Nahuel Rocchetti
b531dad192
Comment VMTest
2023-08-21 19:06:44 -03:00
Nahuel Rocchetti
1092566421
Fix sleep, implement test
2023-08-21 19:03:56 -03:00
Nahuel Rocchetti
7eada145c8
Implement simantics primitive registry
2023-08-21 18:23:20 -03:00
Nahuel Rocchetti
da18fc787f
Update VMExpressionPrimitive.cs
2023-08-21 18:16:10 -03:00
Nahuel Rocchetti
c1d99422e9
Implement data sources
2023-08-21 17:56:58 -03:00
Nahuel Rocchetti
4daccae598
Document data sources
2023-08-21 17:39:38 -03:00
Ammar Askar
5e71afef64
Add gizmos around IK target positions to make animation debugging easier
2023-08-21 15:43:06 -04:00
Nahuel Rocchetti
f72520d0d2
Refactor VM exit codes, implement VM logic
2023-08-21 16:11:44 -03:00
Nahuel Rocchetti
6009d9f121
Start implementing primitives and entities
2023-08-21 13:41:18 -03:00
Nahuel Rocchetti
2bb732b4d6
Basic BHAV reading code
2023-08-21 12:59:44 -03:00
Ammar Askar
862dfe0f14
Add temporary hack for IK animations with hands by mirroring them
2023-08-21 00:39:35 -04:00
Ammar Askar
c237c9c291
Store data from cBoneDataExtension blocks
2023-08-20 23:55:10 -04:00
Ammar Askar
2b1c37b91f
Use 2-bone ik constraints for all IKs
2023-08-20 23:37:17 -04:00
Ammar Askar
60578789af
Load skeleton first for sims, fix IK chains for arms
2023-08-20 22:41:32 -04:00
Ammar Askar
73e06f09cc
Start loading IK chains from animations into sim
2023-08-20 19:04:44 -04:00
Ammar Askar
c4bc83fe97
Add test scene for sims animation rigging
2023-08-20 13:09:25 -04:00
Ammar Askar
69922d956c
Store Inverse-Kinematics chain data from animations
2023-08-19 22:58:58 -04:00
Ammar Askar
cd2f968ed5
Add animation rigging package for inverse kinematics
2023-08-19 10:46:36 -04:00
Ammar Askar
979da1a147
Add ability to render multiple scenegraph resources to a single ScenegraphComponent
2023-08-19 10:44:52 -04:00
Ammar Askar
4685e52efd
Add a SimCharacterComponent class and handle 1F animation channels
2023-08-19 02:37:50 -04:00
Ammar Askar
9dd80da480
Fix accidentally un-commited files in refactor
2023-08-18 19:12:35 -04:00
Ammar Askar
462e7fdd16
Move ScenegraphComponent to components folder
2023-08-18 19:02:39 -04:00
Ammar Askar
060dc588c8
Change byte array to ReadOnlyList in texture asset class
2023-08-18 01:05:44 -04:00
Ammar Askar
0f88ae3bd9
Fix bug where BGR textures were loaded as RGB
2023-08-18 01:05:11 -04:00
Ammar Askar
da3165d602
Add work-in-progress cLightRefNode rendering
2023-08-17 17:55:11 -04:00
Ammar Askar
77c490f858
Render sub-components of cShapeRef in scenegraph
2023-08-17 17:41:48 -04:00
Ammar Askar
dfdb07f4b9
Fix tangent values for animations
2023-08-17 16:42:00 -04:00
Nahuel Rocchetti
caf0e655fb
Merge pull request #48 from riperiperi/perf/reia
...
Improve performance of REIA decoding
2023-08-16 18:07:13 -03:00
riperiperi
d1fc4bfc79
Improve performance of REIA decoding
...
The REIA decoder was performing a lot of crops and copies using Texture2D containers, which was slowing down decoding significantly.
The enumerator now remembers frame data and modifies it in place when new frames are requested. It only needs a working array to decode block data into before it's added to the result.
The mode where it creates a new texture for each frame still works. Here's how decoding the whole startup animation into textures compares:
before:
REIA (800x600 153 frames) took 4.657419s
after:
REIA (800x600 153 frames) took 0.8785773s
I'm not sure how much time creating each of the textures takes, it's probably faster when just setting data to the same one repeatedly.
2023-08-16 20:08:35 +01:00
Ammar Askar
99e43f21ac
Fix bug with rendering some scenegraph components
2023-08-16 00:18:39 -04:00
Ammar Askar
12c875deba
Start animating blend/morph shapes
2023-08-16 00:14:35 -04:00
Ammar Askar
6df4f8b9dc
Fix fixed point deserialization in animations
2023-08-15 22:19:45 -04:00