1
0
Fork 0
mirror of https://github.com/AquariaOSE/Aquaria.git synced 2025-02-19 19:34:57 +00:00
This commit is contained in:
fgenesis 2024-07-07 03:45:47 +02:00
parent e34b854338
commit 8efdec5aa0
2 changed files with 10 additions and 6 deletions

View file

@ -1005,7 +1005,9 @@ void AnimationEditor::editStripKey()
bgGrad->makeVertical(Vector(0.4f, 0.6f, 0.4f), Vector(0.8f, 1, 0.8f)); bgGrad->makeVertical(Vector(0.4f, 0.6f, 0.4f), Vector(0.8f, 1, 0.8f));
BoneKeyframe *bk = a->getKeyframe(currentKey)->getBoneKeyframe(editingBone->boneIdx); BoneKeyframe *bk = a->getKeyframe(currentKey)->getBoneKeyframe(editingBone->boneIdx);
assert(bk->controlpoints.size() == interp->bsp.ctrlX() * interp->bsp.ctrlY()); const size_t totalcp = interp->bsp.ctrlX() * interp->bsp.ctrlY();
const bool reset = bk->controlpoints.empty();
bk->controlpoints.resize(totalcp);
assert(!splinegrid); assert(!splinegrid);
splinegrid = new SplineGrid; splinegrid = new SplineGrid;
@ -1014,10 +1016,12 @@ void AnimationEditor::editStripKey()
splinegrid->setTexture(editingBone->texture->name); splinegrid->setTexture(editingBone->texture->name);
splinegrid->setWidthHeight(editingBone->width, editingBone->height); splinegrid->setWidthHeight(editingBone->width, editingBone->height);
splinegrid->position = Vector(400, 300); splinegrid->position = Vector(400, 300);
//splinegrid->followCamera = 1;
if(reset)
splinegrid->resetControlPoints();
else
splinegrid->importKeyframe(bk); splinegrid->importKeyframe(bk);
//editSprite->addChild(splinegrid, PM_STATIC, RBP_OFF, CHILD_FRONT);
//editSprite->alphaMod = 0.5f;
addRenderObject(splinegrid, LR_PARTICLES_TOP); addRenderObject(splinegrid, LR_PARTICLES_TOP);
} }
else else

View file

@ -202,7 +202,7 @@ void BSpline2DControlPointGenerator::refresh(const float* knotsx, const float* k
Vector* BSpline2DControlPointGenerator::generateControlPoints(const Vector *points2d) Vector* BSpline2DControlPointGenerator::generateControlPoints(const Vector *points2d)
{ {
const size_t cpx = interp.x.getNumInputPoints(); const size_t cpx = interp.x.getNumInputPoints();
const size_t cpy = interp.x.getNumInputPoints(); const size_t cpy = interp.y.getNumInputPoints();
// y direction first // y direction first
for(size_t x = 0; x < cpx; ++x) for(size_t x = 0; x < cpx; ++x)