So did I make a mistake or is the model messed up?

Hi,

I’ve just posted a snippet of code on my blog to move a model around. It’s functional, but I had to use a bit of a workaround. Originally, I was setting a model’s position relative to itself using

model.setX(model,increment)

and the same thing for the y coordinate. It was a model of a panda and, strangely, a positive y increment caused it to move not in the direction it was looking in, but in the direction of its back. I fixed it by adding an empty node for the actor, rotating the model 180 degrees and reparenting the model to the empty node.

Is this normal behaviour for a model? Or was there something wrong with my code? And is this an acceptable fix? You can find the snippet and a link to my BitBucket page on my blog (see signature - the entry is http://vincentnys.ulyssis.be/wordpress/?p=86).

My sincere newbie thanks :wink:

That’s totally normal. You could also:

model.setY(model,-increment)

Most (some?) people model characters in their modelling software (be it max, maya, or blender…) facing the camera in the ‘front’ view(-port). In Panda the front is ‘looking down the +y axis’ so for example the front of the camera would be where the camera is looking.
If you put the two together you end up with the models ‘tail’ where its ‘face’ should be.

As a side note - Panda has vector operations build-in and they are in C++, so I suspect them to be way faster then the same done in python, check this out:
panda3d.org/reference/1.8.0/ … VBase2.php

That’s great, thanks for the help. Mind if I quote your explanation on my website?

Sure, all I write is ‘pro publico bono’ so quote whenever you feel like quoting, just bear in mind that I may be totally wrong :wink: