Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
237 commits
Select commit Hold shift + click to select a range
539916c
physics, ikrig, metrics: a foot under something stands on what is und…
nicolas-maman Nov 4, 2026
32b76bf
ci: Aether 0.880.0
nicolas-maman Nov 4, 2026
889d8b6
Merge remote-tracking branch 'origin/main' into feat/motion-next
nicolas-maman Nov 4, 2026
f47a47a
ci: the 0.880 entry names the aether-ui the editor builds against (58…
nicolas-maman Nov 4, 2026
cf6d0e1
changes: the animation pipeline (#921, #939 so far) and Aether 0.880
nicolas-maman Nov 4, 2026
03907d5
character: bodies from creation, pause and resume, takes shared, take…
nicolas-maman Nov 4, 2026
9fcb7d2
changes: characters a game can drive (#940, #942, #944, #949)
nicolas-maman Nov 4, 2026
6e2908b
character: a person at another size than its file's (#943)
nicolas-maman Nov 4, 2026
baf15bf
changes: a person at another size (#943)
nicolas-maman Nov 4, 2026
33c8aa9
usable, character: a slot's takes from a file it names (#950)
nicolas-maman Nov 4, 2026
7cd24c1
changes: a slot's takes from a file it names (#950)
nicolas-maman Nov 4, 2026
dfc0a3f
animator, ikrig: transitions ease out of the graph's own pose; a step…
nicolas-maman Nov 4, 2026
6bf271c
changes: a seated figure stands up without its pelvis dropping (#953,…
nicolas-maman Nov 4, 2026
6785991
physanim, physics, animator, metrics: people weigh a person; a graph'…
nicolas-maman Nov 4, 2026
76775a5
ikrig: a foot the take sets down without marking it lands where it to…
nicolas-maman Nov 4, 2026
0d0a65f
ikrig, items, animator: a two-handed hold's fingers and second hand s…
nicolas-maman Nov 4, 2026
fd36f06
ikrig, animator: an aimed trunk is the aim's; the look turns the neck…
nicolas-maman Nov 4, 2026
ff5ff6d
ikrig: a heel-locked foot goes onto its toe once its heel rises over …
nicolas-maman Nov 4, 2026
0d5c8fd
clips, mover, character: a run slows to its stop's speeds before it s…
nicolas-maman Nov 4, 2026
317ea78
items: a second hand let go of on its handle, kept within reach, left…
nicolas-maman Nov 4, 2026
fc0c124
changes: feet that land and roll, a run that stops, held items and aims
nicolas-maman Nov 4, 2026
acf7ca7
character: act, a one-off take played with its root motion through th…
nicolas-maman Nov 4, 2026
ed3b43e
ikrig: a landed foot's sole is laid on the ground as a planted one's …
nicolas-maman Nov 4, 2026
2b64ba2
changes: character.act, a landed foot's sole laid
nicolas-maman Nov 4, 2026
5454993
skin: a limb's cut names the joints of the skin its mesh is posed by …
nicolas-maman Nov 4, 2026
5cb032b
character: act holds a pose state until the next act (#958)
nicolas-maman Nov 4, 2026
b31a912
ikrig: a toe-locked foot is put back over its lock until it is there …
nicolas-maman Nov 4, 2026
bb5c0e6
clips: a loop cut on purpose is sealed whatever its gap (#962)
nicolas-maman Nov 4, 2026
c9fad87
changes: gait loops sealed, a limb's cut on its own skin, act holds a…
nicolas-maman Nov 4, 2026
0b54de1
mover: a standing figure asked off to its side turns where it stands,…
nicolas-maman Nov 4, 2026
5415fcb
animator: a state played backward ends at its start, its events passe…
nicolas-maman Nov 4, 2026
e3690ca
items, animator: a swing over the gait on the upper body, a rate per …
nicolas-maman Nov 5, 2026
62b7315
changes: turning starts, backward states, swings over the gait
nicolas-maman Nov 5, 2026
340b3b1
items, physics: a hit names the bone, the edge's speed and depth; the…
nicolas-maman Nov 5, 2026
14977b2
items: an edge meets another item's, a parry, and swing_stop ends a s…
nicolas-maman Nov 5, 2026
2390861
ci: Aether 0.882.0; the macOS leak tier over three shards (#965)
nicolas-maman Nov 5, 2026
2d83644
animgraph: a capture cropped, with events, from ASF/AMC, named; a sta…
nicolas-maman Nov 5, 2026
304fd25
changes: hits for damage models, graph captures
nicolas-maman Nov 5, 2026
8f2a30c
items: a hit's velocity is the edge's at the point met (#946)
nicolas-maman Nov 5, 2026
17d9c62
ci: Aether v0.883.0 (runtime ABI rev 3)
nicolas-maman Nov 5, 2026
024aca2
character.swing: a swing with the whole body steps in by its take (#945)
nicolas-maman Nov 5, 2026
76f4dc9
feet: held through a transition's fade, a far release shuffled (#966)
nicolas-maman Nov 5, 2026
45d806d
plaza: the ground asphalt and its blocks concrete, matte
nicolas-maman Nov 5, 2026
b3aafd0
items: a sweep casts its rays only when its step's box touches something
nicolas-maman Nov 5, 2026
4eda20e
test_anim_pipeline: stops from a walk and a run on either foot, read …
nicolas-maman Nov 5, 2026
6a9fe8a
ci: Aether v0.884.0
nicolas-maman Nov 5, 2026
84a6b4c
feet: a contact that flickers for a frame keeps its lock (#930)
nicolas-maman Nov 5, 2026
2ff6de4
ci: Aether v0.885.0
nicolas-maman Nov 5, 2026
b4dea28
animator: a transition's offset and seconds; starts measured on the g…
nicolas-maman Nov 5, 2026
a3b1219
test_humanoid: a figure on a database turned on the spot, and to a st…
nicolas-maman Nov 5, 2026
a5b0693
animator: the feet's contacts ease from what they were given, only th…
nicolas-maman Nov 5, 2026
afeb104
motion: heading_off; the POWERED walk in place measured (#938, #968)
nicolas-maman Nov 5, 2026
5315951
physanim: release and retake, so ae3d.motion acts on the same bodies …
nicolas-maman Nov 5, 2026
b7c4016
character: solid characters steer round each other (#956)
nicolas-maman Nov 5, 2026
057ad8c
drive_editor: query values encoded, so a typed colour reaches the editor
nicolas-maman Nov 5, 2026
9a576e6
ci: Aether v0.886.0
nicolas-maman Nov 5, 2026
aa9f6d8
character: a character keeps its gaits' shared takes until it is freed
nicolas-maman Nov 5, 2026
8bd555e
ci: the two showcases run with the examples; Aether v0.887.0
nicolas-maman Nov 5, 2026
3cd6e3d
items: a kind's hold pose on the main arm between swings
nicolas-maman Nov 5, 2026
c00a9ad
ci: Aether v0.888.0
nicolas-maman Nov 5, 2026
959bb03
people_plaza: the plaza's crowd on the new motion pipeline (#860)
nicolas-maman Nov 5, 2026
41e31fc
ci: the people plaza runs with the examples
nicolas-maman Nov 5, 2026
a3d5b1c
motion: gaits at an even root, walkers curve into sharp turns, feet t…
nicolas-maman Nov 5, 2026
0a7b9ca
ikrig: a released foot goes with its clip, its offset faded out
nicolas-maman Nov 5, 2026
9590a8b
test_humanoid: free the stool's usables and kind
nicolas-maman Nov 5, 2026
4d5da7d
mover: a curve keeps the way within 10 degrees of the facing; turning…
nicolas-maman Nov 5, 2026
c6a1097
mover: a moving figure faces where it goes, turned toward the goal by…
nicolas-maman Nov 5, 2026
3f0b174
metrics: FOOT_THROW, a toe drawn faster over the ground than its clip…
nicolas-maman Nov 5, 2026
cf45f12
avoidance: weigh each way by where the mover's curve really takes it
nicolas-maman Nov 5, 2026
6f4f1a6
ci: Aether v0.889.0
nicolas-maman Nov 5, 2026
532ec67
animator: a blend samples its takes into its own scratch; a frame on …
nicolas-maman Nov 5, 2026
a7bed32
animator: a start's clock held to its pace, handed to the gaits behin…
nicolas-maman Nov 5, 2026
3b751d7
motion: a fall come down in a heap has landed (#951)
nicolas-maman Nov 5, 2026
3b48a0b
ci: Aether v0.890.0
nicolas-maman Nov 5, 2026
bfbf2ef
Revert "animator: a start's clock held to its pace, handed to the gai…
nicolas-maman Nov 5, 2026
b657edc
ikrig: a toe held past its takes' say-so only while its tip stays put
nicolas-maman Nov 5, 2026
b012c40
ikrig: a foot slowed out of its swing lands at this frame's clearance…
nicolas-maman Nov 5, 2026
e1c641d
people_plaza: report goals reached, the slowest errand and anyone off…
nicolas-maman Nov 6, 2026
7d2e7d3
physics: static_depth reads a point just under a surface's underside …
nicolas-maman Nov 6, 2026
dd4979f
ikrig: a lock caught again after a flicker keeps its heading too
nicolas-maman Nov 6, 2026
72c67d0
items: a bowl given to a seated figure, held in both hands through it…
nicolas-maman Nov 6, 2026
8cd93eb
knockdowns: a hundred seeded knockdowns of the mannequin, measured ag…
nicolas-maman Nov 6, 2026
1eda974
ikrig: the look and the feet let go as the trunk lies
nicolas-maman Nov 6, 2026
36857fd
ci: Aether v0.891.0
nicolas-maman Nov 6, 2026
66feb37
ikrig: toes on the ground to the last digit are not in it
nicolas-maman Nov 6, 2026
60b2904
test_physanim: the walk's own fastest read over the frames it eases b…
nicolas-maman Nov 6, 2026
e808208
motion: starts that keep their pace
nicolas-maman Nov 6, 2026
49f0c26
character: get up from a ragdoll in one call
nicolas-maman Nov 6, 2026
e0def06
clips: a get-up's root motion taken from its pelvis, the capsule unde…
nicolas-maman Nov 6, 2026
6e181f2
character: the get-up chosen by how the body lies
nicolas-maman Nov 6, 2026
f7bed87
ikrig: no foot landed on while the trunk lies
nicolas-maman Nov 6, 2026
966d08b
ci: Aether v0.902.0
nicolas-maman Nov 9, 2026
0cbba27
animlod: crowd banks from the graph, update-rate LOD, hand-over by sn…
nicolas-maman Nov 9, 2026
1a268f4
bench_animlod: a figure's cost a frame at each LOD against 2,000
nicolas-maman Nov 9, 2026
3dccf75
ikrig: motion's limbs solved by the pose rig's two-bone solve
nicolas-maman Nov 9, 2026
576225b
character: a get-up eased in no faster than its own pelvis
nicolas-maman Nov 9, 2026
487dfff
Morph targets imported, drawn on both renderers and played as pose cu…
nicolas-maman Nov 9, 2026
e444397
Faces: ARKit face set by name, procedural blinks, mirrored curves, GL…
nicolas-maman Nov 9, 2026
7f3f364
metrics: a sole in a solid's side is in it by the shortest way out
nicolas-maman Nov 9, 2026
fc6e3ca
mover, ikrig: a walker against a wall walks along it, its feet off it
nicolas-maman Nov 9, 2026
8439f6c
test_morph: closes on "all checks passed", the words ci.sh passes a s…
nicolas-maman Nov 9, 2026
c669ae9
ci: Aether v0.904.0
nicolas-maman Nov 9, 2026
834e998
Faces: eyes that lead the head, saccades, blinks in the pose, a CC0 f…
nicolas-maman Nov 9, 2026
dddae7f
Visemes from a voice track, played as a layer of the animator's pose …
nicolas-maman Nov 9, 2026
97c2dc2
The head takes its share of a gaze shift, then catches up (#910)
nicolas-maman Nov 9, 2026
fe3b5b6
test_face: closes on "all checks passed", the words ci.sh passes a su…
nicolas-maman Nov 9, 2026
3cd001c
ci: Aether v0.905.0
nicolas-maman Nov 9, 2026
35d1985
test_face: its figure's animator freed with it
nicolas-maman Nov 9, 2026
f9896c3
tests: get-ups measured under the floor and side by side
nicolas-maman Nov 9, 2026
c9483dc
animator: a change into a state drawn by its owner (play_shaped)
nicolas-maman Nov 9, 2026
018b647
ikrig: lift_turn, the turn that raises a point about a pivot onto a h…
nicolas-maman Nov 9, 2026
01df68f
character: a get-up's hand-over planned off the floor
nicolas-maman Nov 9, 2026
0b953ac
net: streams, a game's blocks of bytes sent unreliably (#911)
nicolas-maman Nov 9, 2026
bc373c3
mover: correct, the springs put on another peer's velocity and facing…
nicolas-maman Nov 9, 2026
858eb8a
netanim: a character over the network, its inputs and events, not its…
nicolas-maman Nov 9, 2026
31d5270
people_plaza: AE3D_HASH=1 prints each person's state hashed, a line a…
nicolas-maman Nov 9, 2026
718a65d
test_plaza_repeat: the plaza run twice on one seed reads the same, bi…
nicolas-maman Nov 9, 2026
b1d4c90
test_plaza_repeat: a parting in a person's place, turn or mover named…
nicolas-maman Nov 9, 2026
a77ebd3
people_plaza: a run with AE3D_FRAMES steps on the fixed tick, and say…
nicolas-maman Nov 9, 2026
ee8fc56
physics: the capsules of what moves near a box, and segment distance
nicolas-maman Nov 9, 2026
df27530
character: a get-up's way up kept off other figures' bodies (#835)
nicolas-maman Nov 9, 2026
9a025e9
test_get_up_pair: two get-ups side by side held apart, in both orders
nicolas-maman Nov 9, 2026
8ea8c71
ikrig, mover: a planned turn on the spot, head first, 2 steps for 90 …
nicolas-maman Nov 9, 2026
418b95c
ikrig, mover, character: the planned turn keeps its way round and fin…
nicolas-maman Nov 9, 2026
3b60de4
ikrig: a turn's step sized by how far its toe goes, lifted as a turni…
nicolas-maman Nov 9, 2026
b528b15
mover, ikrig: the way ahead predicts a standing turn as its steps tak…
nicolas-maman Nov 9, 2026
8ac5432
ikrig: turning steps lift with their reach and keep the body by the f…
nicolas-maman Nov 9, 2026
9a15385
ikrig: a turning step travels over more of its time, half a turn in 2…
nicolas-maman Nov 9, 2026
2a3e41f
ikrig: a turning step up quicker at its ends, clear of the floor as i…
nicolas-maman Nov 9, 2026
3a7eb63
A figure's frame by system: animator.profile, printed by bench_animlo…
nicolas-maman Nov 9, 2026
4a7ebdb
Cheaper joints and ground reads in a figure's frame (#862, #980)
nicolas-maman Nov 9, 2026
7f9c86f
The pose phase on the job pool: animators evaluated on workers (#862,…
nicolas-maman Nov 9, 2026
5ced9eb
The fixed step's animators on the job pool too (#862, #980)
nicolas-maman Nov 9, 2026
3de7f69
bench_animlod: back to 64 full figures (100 peaked at 5.9 GB), the po…
nicolas-maman Nov 9, 2026
5b1de2b
test_ik_constraints: each solve's cost the fastest of five blocks
nicolas-maman Nov 10, 2026
83ba752
ci: Aether v0.906.0
nicolas-maman Nov 10, 2026
df3cbfd
fdlibm: the same sin, cos, atan2, acos and exp on every platform (#911)
nicolas-maman Nov 10, 2026
4459262
netanim: flush, the last ticks streamed as an owner's figures stop (#…
nicolas-maman Nov 10, 2026
829aee5
The feet's ground reads: static shapes gathered once a solve, no allo…
nicolas-maman Nov 9, 2026
acaf489
AE3D_PERF: the behaviours' own time by name and phase; people_plaza's…
nicolas-maman Nov 10, 2026
4e13bbc
physics: a character controller that keeps to its ground stops at a l…
nicolas-maman Nov 9, 2026
1deab58
character: people keep to the ground they walk on (#981)
nicolas-maman Nov 9, 2026
0caea0a
test_ledges: people kept to the ground they walk on (#981)
nicolas-maman Nov 9, 2026
11e97a2
people_plaza: goals put on ground the person can stand on (#981)
nicolas-maman Nov 9, 2026
1acc8bd
physics: a ledge looked for along the ground as the capsule walks it …
nicolas-maman Nov 10, 2026
255ab62
A figure's graph goes on at the fixed step, drawn between its last tw…
nicolas-maman Nov 10, 2026
734b10a
people_plaza: AE3D_STEPS ends a run at its nth fixed step, and the re…
nicolas-maman Nov 9, 2026
5536277
test_frame_rates: a walking, turning, stopping figure reads the same …
nicolas-maman Nov 9, 2026
e378507
animator: a figure made after the frame's steps shows its graph's pos…
nicolas-maman Nov 9, 2026
06964e3
test_animlod: the twin streets' check named for the fixed step's anim…
nicolas-maman Nov 10, 2026
f49af06
gltf: a file's animations read once, shared by every scene of the sam…
nicolas-maman Nov 10, 2026
5fd2431
clips: takes compressed ACL's way, within 0.1 mm of the skin (#990)
nicolas-maman Nov 10, 2026
b87b9b1
character: the gaits' takes compressed as they are made (#990)
nicolas-maman Nov 10, 2026
7d72534
bench_animlod: what a figure holds; 100 figures again; test_anim_memo…
nicolas-maman Nov 10, 2026
41f0a47
clips: a compressed take's still turns blended over their length, as …
nicolas-maman Nov 10, 2026
726ec7a
gltf: a VRM's spring bones read as the file gives them, VRM 0.x's sec…
nicolas-maman Nov 10, 2026
0aa1cb8
springs: spring chains and jiggle, tails pulled to the pose, held out…
nicolas-maman Nov 10, 2026
81508ed
animator: secondary motion solved after the IK on the fixed step's po…
nicolas-maman Nov 10, 2026
d1d0b45
test_springs: a ponytail behind a running, turning, stopping figure l…
nicolas-maman Nov 10, 2026
879521a
character: a humanoid's file's own spring bones on as its maker set t…
nicolas-maman Nov 10, 2026
7de7529
physics: a ragdoll body's velocity read and set at its origin, the an…
nicolas-maman Nov 10, 2026
8e76847
physanim: a blow lets its chain go by share (give, spread, muscles fr…
nicolas-maman Nov 10, 2026
e0cad61
character: die turns the figure into a full ragdoll for good, the blo…
nicolas-maman Nov 10, 2026
8ff1596
test_deaths: deaths from a walk and a run and partial hits on an arm,…
nicolas-maman Nov 10, 2026
45898df
test_items: a swing's sweep cost the fastest of five swings
nicolas-maman Nov 10, 2026
df347b0
ikrig: lift_turn's angle the turn about its own axis (lift_about) (#841)
nicolas-maman Nov 10, 2026
c40507a
character: the get-up's plan played back and its lifts raised where a…
nicolas-maman Nov 10, 2026
50416c0
test_knockdowns: the get-up's floor bound held over 300 landings swep…
nicolas-maman Nov 10, 2026
7fd83ef
ci: Aether v0.907.0
nicolas-maman Nov 10, 2026
41b8799
physics: a character's capsule reshaped (character_set_shape) and ask…
nicolas-maman Nov 10, 2026
5924175
animator: a cross-fade into a state a matching transition chose enter…
nicolas-maman Nov 10, 2026
9fb3901
stance: stand, crouch and prone as a graph parameter, the feet kept t…
nicolas-maman Nov 10, 2026
b13baff
test_springs: the cost a joint a step the fastest of five blocks
nicolas-maman Nov 10, 2026
692565c
physics: a ragdoll body put at a place and turn, its velocity kept, i…
nicolas-maman Nov 10, 2026
85dee45
ikrig: each foot's lock read and set: the point held, heel or toe, an…
nicolas-maman Nov 10, 2026
9f87906
mover: its springs' whole state written and read, for a peer that joi…
nicolas-maman Nov 10, 2026
a1471c3
netanim: foot locks in the state, a peer's ragdoll drawn onto the own…
nicolas-maman Nov 10, 2026
9cc9671
test_net_anim: a death, planted feet after drift, late joins at seede…
nicolas-maman Nov 10, 2026
cd19597
ikrig: the feet's, the look's and an aim's whole state written and re…
nicolas-maman Nov 10, 2026
b0b84a1
springs: the tails' whole state written and read (#911)
nicolas-maman Nov 10, 2026
47b6c0b
physanim: its weights, easing, hits and poses written and read whole …
nicolas-maman Nov 10, 2026
0c11f33
character: what it was asked and is doing written and read whole (#911)
nicolas-maman Nov 10, 2026
ba41fa7
animator: its poses, inertialization, states, layers, parameters and …
nicolas-maman Nov 10, 2026
a0c7134
netanim: snapshots of a figure whole, a parted figure resynced from i…
nicolas-maman Nov 10, 2026
39ca28c
pose: CMU's BVH conversion maps its slots onto the ASF's bones (SCHEM…
nicolas-maman Nov 10, 2026
4141f98
bvh: load_asf reads a gzip'd AMC take as load reads a gzip'd BVH (#907)
nicolas-maman Nov 10, 2026
9bd35d6
animator: transition_need, the fastest a transition's easing turns a …
nicolas-maman Nov 10, 2026
3bb95b7
test_combat_takes: UAL1's punches retargeted onto the mannequin withi…
nicolas-maman Nov 10, 2026
ab6e0c5
test_springs, test_ik_constraints: built optimised in CI, as their co…
nicolas-maman Nov 10, 2026
d765210
physanim: knock, a knockdown powered as it goes down, reaching for th…
nicolas-maman Nov 10, 2026
f0249b0
character: knock, down and shove on physanim, no ae3d.motion in a kno…
nicolas-maman Nov 10, 2026
d6e8602
character: knock without the reach by default (#861)
nicolas-maman Nov 10, 2026
953aebd
test_balance: knockdowns on physanim, staggers and the reach, measure…
nicolas-maman Nov 10, 2026
d684fc0
animgraph: a graph file's takes made once a figure file and skeleton,…
nicolas-maman Nov 10, 2026
c00f4c3
gltf: a file parsed once while a scene of it is held, its meshes shar…
nicolas-maman Nov 10, 2026
cf77bbf
clips: key reduction in compress, frames the skin does not need dropp…
nicolas-maman Nov 10, 2026
66a7022
bench_animlod: graph-driven figures in the memory report; the file's …
nicolas-maman Nov 10, 2026
9bc2533
bench_animlod: the graph-driven figures made last, after the frames a…
nicolas-maman Nov 10, 2026
4dd0bcc
gl, vulkan: a skinned mesh's buffers made once and drawn by every fig…
nicolas-maman Nov 10, 2026
d677320
ikrig, animator: a load's lean given before an aim turns the trunk, s…
nicolas-maman Nov 10, 2026
dee574b
items: aim, a held item aimed along its own front: onto its kind's ai…
nicolas-maman Nov 10, 2026
ba965fe
test_combat_takes: the rifle aimed stood, walking and running, barrel…
nicolas-maman Nov 10, 2026
2732f15
clips: planted_frame and set_planted, a take's planted frames read an…
nicolas-maman Nov 10, 2026
79ecb80
retarget: feet held in stances of the retarget's own: a stance whose …
nicolas-maman Nov 10, 2026
bdde2ff
test_combat_takes: CMU's punch take onto the mannequin with its feet …
nicolas-maman Nov 10, 2026
971a8e9
test_combat_takes: the rifle's gait set freed (gaits_free), as macOS'…
nicolas-maman Nov 10, 2026
3f62a7b
test_combat_takes: UAL2's sword strike and block, the male mannequin'…
nicolas-maman Nov 10, 2026
13fdf05
animator: a start played by the distance come no faster than 1.5 time…
nicolas-maman Nov 10, 2026
d0d10b7
test_start_clock: a start on a figure kept to no pace, walked off, ru…
nicolas-maman Nov 10, 2026
c7ddb6e
test_eat: a bowl held on the UE5 mannequin (no metacarpals), three bi…
nicolas-maman Nov 10, 2026
5938d70
physanim: a leg drawn as its animation has it keeps its foot, its toe…
nicolas-maman Nov 10, 2026
7683d54
geometry: world bounds kept on the model, the shared mesh only its ow…
nicolas-maman Nov 10, 2026
d3e6fe1
test_start_clock: its gait set freed (gaits_free), as test_combat_tak…
nicolas-maman Nov 10, 2026
e994239
ci: Aether v0.908.0
nicolas-maman Nov 11, 2026
8c80490
ci: Aether v0.912.0
nicolas-maman Nov 12, 2026
150bc5a
plaza: the people on the motion pipeline, struck by the car and up in…
nicolas-maman Nov 9, 2026
e324b66
plaza: the ramp and the steps rise to the deck; AE3D_TRACE
nicolas-maman Nov 9, 2026
5436ece
physics, character: a figure put is put, and a get-up waits for a car…
nicolas-maman Nov 9, 2026
768ee20
character: a walker steps round a person lying struck in its way
nicolas-maman Nov 9, 2026
348e78f
plaza: a get-up waits for the car over it; what goes up measured
nicolas-maman Nov 9, 2026
29a9bfb
physics: a capsule found inside another person's eases out of it
nicolas-maman Nov 10, 2026
9188fc7
plaza: AE3D_FLAG, and the trace with the mover, the graph and the cli…
nicolas-maman Nov 10, 2026
fab8776
plaza: the trace with the clip's own feet, the gait's ground speed an…
nicolas-maman Nov 10, 2026
5567e11
physics, ikrig: a sole is kept out of a wall's face and a ramp's lip …
nicolas-maman Nov 10, 2026
143da81
tests: test_feet_edges, a walker along and across the plaza's edges (…
nicolas-maman Nov 10, 2026
1b033da
ikrig, physics: a wall is a solid a step's height up; a foot keeps th…
nicolas-maman Nov 10, 2026
a04fbd8
plaza: a get-up told once waits on its own (character.get_up_waiting)
nicolas-maman Nov 10, 2026
8b0e8b1
character: a way up still into a body at every turn is laid off it (#…
nicolas-maman Nov 10, 2026
7106d53
test_character_walls: held back mid-stride, swept over the stride (#9…
nicolas-maman Nov 10, 2026
893dd6c
physics: a capsule meets another figure by its capsule, not its drive…
nicolas-maman Nov 10, 2026
55df623
test_character_walls: the trace gives each step's toe thrown and each…
nicolas-maman Nov 10, 2026
a4dc855
ikrig: a planted foot the body goes over sideways past the hips' midd…
nicolas-maman Nov 10, 2026
5b5a47f
ikrig: a standing step goes as long as its gap takes; a swing reads n…
nicolas-maman Nov 12, 2026
85b964c
test_trip_kerb_character: a figure tripped at a run on a kerb, on the…
nicolas-maman Nov 10, 2026
5927609
character: a get-up's turn lengthened where its plan turns a joint pa…
nicolas-maman Nov 10, 2026
6cff61c
test_knockdowns: the landings swept take the hard blows turned aside,…
nicolas-maman Nov 10, 2026
dbfe94b
test_character_walls: the shove scene's other capsule freed, as macOS…
nicolas-maman Nov 13, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
87 changes: 83 additions & 4 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -257,7 +257,70 @@ env:
# ae3d does not call it. aephysics 7985511 (its main,
# on 0.839's @keep rules) builds on it. All 290
# programs and the editor compile on it.
AETHER_REF: v0.860.0
# v0.880.0 2026-11-04 0.880 removes contrib.host.lua (ae3d imports
# none); 0.871 reads s[i] on a string as a checked
# int from 0 to 255 and compiles in time linear in a
# program's size again (aether#3499). aephysics
# ad0cae2 (its main) builds on it. All 311 programs
# ci.sh builds and the editor (aether-ui 58e9fa15)
# compile on it without an error or a warning.
# v0.882.0 2026-11-05 0.881 adds core benchmarks and --time-phases;
# 0.882 releases a string a failed list add or map
# put was handed. Neither changes what ae3d calls;
# #939's run on it builds and runs every leg.
# v0.883.0 2026-11-05 runtime ABI rev 3 (a counted slice header; C
# never frees a slice's .ptr; ae3d has no C);
# string.release_kept gives back only what
# string.keep recorded (every ae3d call is paired
# with a keep); closures share the slices they
# push into. Everything is rebuilt against it.
# v0.884.0 2026-11-05 the sandbox preload holds every libc way of
# starting a program, install.sh into a shared
# prefix copies only Aether's files, the no-leak
# tests read current RSS. Nothing ae3d calls.
# v0.885.0 2026-11-05 install.sh writes both version stamps. Nothing
# ae3d calls.
# v0.886.0 2026-11-05 two shared maps never share a token. Nothing
# ae3d calls.
# v0.887.0 2026-11-05 contrib.host.python removed (ae3d imports none);
# FreeBSD sandbox fork fix. Nothing ae3d calls.
# v0.888.0 2026-11-05 a slice local that only views C memory or arrays
# registers no cleanup and no release (aether#3583):
# the ECS column accessors are indexed loads again
# (0.883 made them 3.5 to 5 times slower, the ECS
# core 16 to 19 ms against its 12).
# v0.889.0 2026-11-05 Unix-domain sockets, bcrypt, a streamed chunked
# body read as it arrives. Nothing ae3d calls.
# v0.890.0 2026-11-05 std.truetype reads Microsoft Symbol fonts' cmaps;
# FreeBSD installs. ae3d's fonts are not Symbol.
# v0.891.0 2026-11-06 `ae add` of a tarball made on a Mac, TLS 1.3 0-RTT
# ticket age. Nothing ae3d calls.
# v0.902.0 2026-11-09 through 0.894 to 0.902: tcp.connect_timeout, RSA-OAEP
# SHA-1, heap.new(pkg.T) and ptr[] locals accepted
# (additions), a full scheduler core no longer parks,
# FreeBSD and Windows HTTP fixes. Nothing ae3d calls
# changed.
# v0.904.0 2026-11-09 a *T or a struct passed for a string parameter (and
# a string for a *T) is a type error; config.get safe
# under a concurrent put. ae3d must type-check clean.
# v0.905.0 2026-11-09 std.encoding base64url; base64 decode returns an owned
# string. ae3d decodes glTF data: URIs itself.
# v0.906.0 2026-11-09 bytes.string_from_ptr refuses a bytes handle (ae3d
# passes raw pointers: bytes.data, malloc'd buffers);
# http_server_stop waits for a foreground server.
# v0.907.0 2026-11-10 OpenBSD: the shell suite runs there, -ldl left off
# its link lines, spawn pipes told apart. Nothing ae3d
# calls.
# v0.908.0 2026-11-11 os.run_stdio and ipc.stdio_channel: a child talked to
# over its stdin and stdout, std.ipc's bounded waits on
# Windows pipes. Nothing ae3d calls.
# v0.912.0 2026-11-12 0.909: writes that do not wait on the reader,
# owner-only modes on Windows. 0.910: a local read once
# inside a loop is no longer moved out on the first
# pass; an optional owning a string returned safely.
# 0.911: `hide` and `import ... hiding`. 0.912:
# std.posix.regex. ae3d runs its full motion list on it.
AETHER_REF: v0.912.0
# The aether-ui the editor is built against on the Linux runner. A commit,
# not a branch: the editor's CI should say what the editor did, not what
# the toolkit did that morning. Bumped by hand when aether-ui lands
Expand Down Expand Up @@ -382,13 +445,21 @@ jobs:
- os: macos-latest
name: macos
tier: leaks
shard: 0/2
shard: 0/3
trail: true
gpu: 0
- os: macos-latest
name: macos-2
tier: leaks
shard: 1/2
shard: 1/3
gpu: 0
# A third leak shard (#965): the leak tier's second half ran out its 54
# minutes in Run CI on #939 (runs on 62b73158 and fc0c1245), cold and
# warm, after the motion suites the PR adds.
- os: macos-latest
name: macos-3
tier: leaks
shard: 2/3
gpu: 0
# Windows had no arm here, and every Windows-only assumption in the
# tree survived because of it: <dlfcn.h> included unconditionally, a
Expand Down Expand Up @@ -681,7 +752,10 @@ jobs:
# the suites. Written whether or not the run above passed, since what
# it answers -- does this platform simulate what the others do -- is a
# question of its own. The determinism job below reads all three and
# compares them.
# compares them. Then a character's graph (#911): the trail of
# tests/test_net_anim.ae, the mannequin's every joint hashed at every
# tick of its script, which every peer has to draw alike from the same
# inputs, put after the horde's and the physics' in the same file.
- name: Write the determinism trail
if: (success() || failure()) && matrix.trail
run: |
Expand All @@ -690,6 +764,11 @@ jobs:
./build.sh tests/test_determinism.ae
fi
AE3D_DETERMINISM_TRAIL="determinism-${{ matrix.name }}.txt" ./build/test_determinism
if [ ! -f build/test_net_anim ] && [ ! -f build/test_net_anim.exe ]; then
./build.sh tests/test_net_anim.ae
fi
AE3D_ANIM_TRAIL="anim-${{ matrix.name }}.txt" ./build/test_net_anim
cat "anim-${{ matrix.name }}.txt" >> "determinism-${{ matrix.name }}.txt"

- name: Keep the determinism trail
if: (success() || failure()) && matrix.trail
Expand Down
Loading
Loading