Animation breaks when recording to keyframes.

Hello,

I just followed blendercookie’s tutorial on how to break a cup with the BGE. Everything works just fine, but when I want to record it to IPO curves something strange happens.

It is set up as follows: all individual shards have suspended dynamics until they are touched by a box with a certain material which restores the dynamics. The box is animated manually and followed by a bullet which is also hand animated. Now the problem is when I play the animation in the viewport, the box and the bullet follow each other perfectly. The same thing happens when I simulate the entire thing in the BGE. But when I want to record the scene to keyframes, all of a sudden my box moves way faster than the bullet, so all the shards start moving before the bullet has hit it.

I already tried parenting the box to the bullet, but that way the touch-sensor won’t work. Can anybody help me out on this?

Thanks!

Don’t use a action for the bullet

use a rigid body and

Delay once---------------and-----------Motion Force ALOT

then when you fire up the scene the bullet fires, when the delay runs out, and is recordable.

And all interactions are recordable,

Actions in the game engine, are not the same as physics,

also to have a action happen where you want it, parent the action object to a empty, now move the empty where the action needs to be,

I tried your method but it gives the same results. The problem is in the action of the object that triggers the dynamics of the shards. It is indeed an action but everything works exactly as it’s supposed to, except when I want to record it. The animation for both the bullet and the trigger object are just linear curves, but when I record it the animation behaves very differently. Perhaps some screenshot will make it clear:




The first screenshot shows how it’s supposed to happen. The second screenshot shows what exactly happens when I record it, as you can see the bullet and the trigger (represented by the red and blue arrows) don’t follow each other anymore even though they still have exactly the same action.

.blend?

I just think something is parented wrong etc,

Well the bullet is parented to a empty so I could easily adjust the angle without having to redo my keyframes. The trigger on the other hand is independent from the empty because otherwise the touch sensor wouldn’t work. I attached the blend file but I’l also try to unparent the bullet and animate it without the empty.

Nope, unparented the bullet from the empty and the problem still persists.

Is it adding the action to the recording?

Can you try removing the action and using the motion actuator as a test?

check this out,

I ditched the actions,

And used motion to move the Rigidbody collider (I like collision better then touch btw)

(uploading file to pasteall now)

hrmmm it keeps saying upload failed,

Anyway,
remove the actions from the bullet and the “collider”

instead use motions, and it works fine,

(I recorded it and am playing it back now)

Tried it, but still the exact same thing happens. Everything works untill I try to record the simulation :frowning: I hope you’l be able to upload the file, or could you send me a screenshot of the logic setup you used?

Ok, I ma trying to upload it now, I may have to strip out all but a few things so the scene is smaller, my upload is either bieng throttled, or interrupted,

if I can’t get it to upload I will just remove the bullet and collider to another blend,

here ya go,

This triggers the destruction and records fine,

just append it in over your other?

The bullet can get spin btw using the motion actuator

also gravity/scene you made are a bit buggy…

Attachments

bulb_test(emptied).blend (591 KB)

Thanks again for your help. But again I have the same problem when recording… For some reason the record function just doesn’t work properly for me. I have no idea how but I guess I’l have to find some way to work around it. Could it be possible that this happens because the scene is too heavy for my CPU to calculate everything correctly?