Im animating a shipbattle and want to animate the canonshots inbetween. The project is unfortunatly above 150mb at this point. I have a canon model, seperated into a stand, the canonbarrel and a sphere as canonball (sub-parented in that order to copy the movement of the shipmesh). The canonstand and -barrel are animated (pushing back and launching the barrel in the air

I thought of several ways but run into different problems with them, so i wonder what would be the tech-best way to approach:

  1. have a bezier spline attached to the canon and have a follow-path constraint on the canonball [the position of the canonball is messed up due to the path moving along the ship, it doesnt track to the path but somewhere off in the distance]
  2. active rigid body on the canonball(sphere) and passive on the canonbarrel (full mesh), have animated checked and a keyframed forcefield in the back of the canon to launch the shot. [ridig bodys doesnt seem to work at all on childs of a moving object?!? more below]
  3. particle system in the canon, forcefield on the target ship. [i cannot animate smoke due to particles have no interaction with smoke domains. also controlling the launches is hard with keyframes on the particle system]

are there more possibilities? rigid body seems to be the obvious best solution but it seems pretty messy. i can get it partially working when i start the rigid body world on frame 1 but i need it to start on frame 5400-5600 on moving meshes, which just does nothing (no gravity, no forcefields, just parent-movement). i also would love to use the 3 canon-related meshes in an action together so far i can only do that for the animation of the canon itself, not the shot. the solution doesnt need to be very much dynamic due to only beeing 4 shots fired in the animation (2 of those mirrored-meshes).

  • $\begingroup$ i have no idea, why you think that rigid body is messy? $\endgroup$ – Chris Jun 13 at 7:03

Since the cannonball movement should realistic, i would choose the rigid body way:

How to do it:

  1. create the objects (ship + cannonball) -> i assume you already have that

  2. animate ship + cannonball location in the same way (location)

  3. add rigid body active for cannonball, check animated checkbox

enter image description here

  1. for the "shoot" sequence you need 3 keyframes like this:

enter image description here

  1. on first keyframe of starting the shot just keyframe the location of the cannonball which it has

  2. on second keyframe just move the cannonball a bit up and left/right (whatever) to give it a starting speed (as more far away you move it from its current position, the faster it goes), so you keyframe that location

  3. on third keyframe just keyframe the "animated" checkbox as off and let Blender do the magic

enter image description here


enter image description here

  • $\begingroup$ the animation made my day! :D works like a charm without complicated forcefields, very good solution, thank you very much sir! $\endgroup$ – knighToFdemonS Jun 13 at 7:06
  • $\begingroup$ glad i could help $\endgroup$ – Chris Jun 13 at 7:06

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.