add rotation-order parameter to vca configure

This commit is contained in:
MihailRis 2026-09-06 00:05:03 +03:00
parent 2104bc7670
commit eeff17e143
2 changed files with 7 additions and 2 deletions

View file

@ -187,7 +187,11 @@ local function codegen_track(raw_track, lineset, memoised, keysets, use_tsf)
end
local axis_names = {"X", "Y", "Z"}
for axis, var in ipairs(rotation) do
local axis_indices = {X=1, Y=2, Z=3}
local rotation_order = raw_track.rotation_order
for i=1,3 do
local axis = axis_indices[rotation_order[i]]
local var = rotation[axis]
if var then
code = code .. "\n mat4.rotate(dst, " .. axis_names[axis] ..
", l" .. var .. ", dst)"

View file

@ -25,6 +25,7 @@ local function parse_configure(raw_track, node)
elseif node.duration then
raw_track.duration = node.duration
end
raw_track.rotation_order = string.upper(node["rotation-order"]) or "XYZ"
end
local function parse_curve(line, node)