sceneEditor ,model-path, and Models directory question

Hi All,

Look I’ve got a question about the Model-Path config variable and about
how your models directorys are laid out on windows.

I am trying to fix the sceneEditor code under linux and I found this
little puzzle while studying the source.

My prc file has the model-path set to $DMODELS. So I have set the enviroment
variable to point to my models…


… which works Ok.

Now in the sceneEditor code, in, on line 22 it wants the Icons
to load based on model-path. OK, so I use locate and find they are in the
dmodels/src/icons directory. I copied that and the other folders into
my model-path dir. And the sceneEditor program loads the icons just as I

Further along in the startup, the file wants to load
the models off hard coded paths like ‘models/misc/sphere’ in line 88, which
are relative to the model-path.

This also happens in on line 32.

If I set my $DMODELS enviroment variable to …


… then the models load.

If I set my $DMODELS enviroment variable to …


… then the icons load.

I fixed this by making a models directory under the models directory!

What troubles me is that this code, seems inconsistent in the way it uses
the search path for models, yet it is reported to work under MS Windows.
It’s GOT to be on my side, maybe I am just not seeing it.

Could someone who uses the sceneEditor under windows help a guy port
this thing to linux, by telling me how your model directory is set up
and what variables you set in your .prc file to do it?

Any help would be much appreciated. If I don’t figure this out I am
sure it will pop up in another app or version.



/usr/local/development/panda3d … then the models load.
/usr/local/development/panda3d/models … then the icons load.

In the panda distribution that comes on the website, both directories are in the model path.

This is a historical artifact. At one time, there was no “one” panda distribution, there were just a bunch of versions of panda compiled by different people. Some programs got written that expected the model path to be configured one way, some programs got written that expected the model path to be configured the other way. Rather than rewrite these programs, we just put both directories into the model path. It’s not elegant, but it works fine.