Tak jsem se na to dneska podíval a skript na zpomalení/zrychlení animace je tady:
Kód:
from Blender import Ipo, Scene
frameCoordCoefficient = 2
renderData = Scene.GetCurrent().getRenderingContext()
firstAffectedFrame = renderData.sFrame + 1
lastAffectedFrame = renderData.eFrame
for ipo in Ipo.Get():
for ipoCurve in ipo:
for point in ipoCurve.bezierPoints:
if point.pt[0] >= firstAffectedFrame and point.pt[0] <= lastAffectedFrame:
point.pt = [point.pt[0] * frameCoordCoefficient, point.pt[1]]
ipoCurve.recalc()
Zpomalení (resp. násobek umístění na časové ose) se nastavuje v proměnné
frameCoordCoefficient. Ty další dvě proměnné (
firstAffectedFrame a
lastAffectedFrame) určují interval posouvaných framů. Tak jak to mám, je to od druhého do posledního framu animace.
Kdyby někoho zajímalo zrychlení, tak to je zpomalení převrácenou hodnotou (
frameCoordCoefficient = 0.5 zrychlí dvakrát apod.).