Linked Camera Problem

After much searching I must resort to making a new thread.

Working in 2.57.1, official build from blender.org for 64bit Linux…
I have created a lovely character, with mesh and armature and animation (heavily inspired by David Ward’s excellent tutorial on creating a game character).

He has a slow-parented camera attached to him which works splendid. All these are members of the same group.

I made a new blender file meant to be a level of the game. I linked in the character. I even figured out how to set the camera to the one in the group even though you can’t click on it.

But when I press P the camera stays in place as the character leaves it behind :’(

Also, at one point I was using a Camera actuator instead. In the character’s .blend it followed him around and did it’s thing perfect. When linked into the level it still did some funky rotation but it wouldn’t move to follow him.

Help?

i had a file, where i linked in a camera too, and the problem was just that when starting the GE, blender wouldn´t switch to the linked camera, but it worked apart from that. There i fixed it with a python script that sets this camera as active cam, when the game starts. Maybe that can help you too. try this:

from bge import logic as gl
sc_ob = gl.getCurrentScene().objects
cam = sc_ob['your_cam_name']
cam_act = cam.actuators['camera_actuator´s_name']
player = sc_ob['your_player´s_name']
cam_act.object = player
gl.getCurrentScene().active_camera = cam

attach that to a pulse sensor(just one, that fires once the game starts)

You can set the linked camera to active by going to the Scene tab in the Properties window and choosing the right cam from the Camera list, at least in 2.57.1. My trouble is it doesn’t want to move from it’s spot.

thats why i think, this script should do it.

Thanks heijulien, that worked for a Camera actuator. I’d still like to know why Python is necessary for something so trivial though.

Prof. Monster recently made a thread about that, it´s related to linked groups not really being in the scene until start of the GE

Oh ok, that makes sense. Any idea how to enable slow parenting instead of the Camera actuator? I can set it to parent and the timeOffset with Python, but it still doesn’t do slow parenting.


from bge import logic as gl
sc_ob = gl.getCurrentScene().objects
cam = sc_ob[the camera]
player = sc_ob[the character]
cam.setParent(player)
cam.timeOffset = 250
gl.getCurrentScene().active_camera = cam

sorry, no idea, i never used slow parenting. But what about slow parenting your cam to an empty, link both and dynamicly parent (child) that empty to your player.

Brilliant! That worked like a charm. Thanks so much for your help heijulien.