[WIP] Level Editor

pro, look, im only saying, try to build something different to the known os styles, which is also very handy to use but away from inflexible ui. for example maya with the marking menus. on that way you could watch the complete scene without any windows infront or areas which shrinks your screen. which would be pretty good at having a permanent feedback. so you can play and modifying without anything which hides areas on your screen :wink:

For the editor don’t start in the lastest cvs version:

[LinuxDonald@localhost panda3d]$ python level-editor.py
Known pipe types:
(all display modules loaded.)
/usr/lib64/python2.6/site-packages/wx-2.8-gtk2-unicode/wx/_core.py:14450: UserWarning: wxPython/wxWidgets release number mismatch
warnings.warn(“wxPython/wxWidgets release number mismatch”)
:prc(warning): Invalid floating-point value for ConfigVariable simple-thread-epoch-timeslice: 0.05

That seems more like an installation problem on your end: looks like you have multiple competing wxWidgets libraries installed, and you’re somehow picking up the one that doesn’t match the one that your wxPython library is compiled against.


It’s an fedora problem but i have created an ticket for that on fedoras bugzilla :slight_smile:

I could not execute it, but i’d like to suggest some things:

-Some prefab objects, like simple cube, trees, animated doors, cars, and anything else. With these we don’t have to use 3D editors to create simple things…
-Some thing like the Kismet Editor in Unreal Engine (you’ll need to use a GUI system like ditus said)
i289.photobucket.com/albums/ll21 … tmymap.jpg
A guy is working on this for Unity3D, the “Visual Logic Editor” forum.unity3d.com/files/game_328.png

EDIT:: rdk mentions Iprob. need panda 170, so nvm it would seem :wink: < unless a workaround exists! >

I downloaded the 3 links above into one folder and fixed UI.py file and im still getting this from CMD in vista:

TypeError: init() takes exactly 1 argument (2 given) < trying to run leveleditorstart.py


Ok does this REQUIRE python 2.6? I tried to run it but there was some type of wxpython error. I have python 2.6 installed but not the wxpython version FOR python 2.6. I do most of my work with python 2.5 which I keep becasue of compatibility with some blender scripts.

AFAIK Python 2.6 is required by the windows version of Panda3D 1.7.0, which is required to run the editor.

No luck. I think I have to make python2.6 the default version of python on my system Which I hesitate to do becasue of other scripts and programs I have. I will try moving it to the front of my pythonpath statement and see if that makes a difference.

After much research and talking to rdb on the irc channel I realized that it 1.7.0 comes with a full install of python 2.6 so I installed wxpython for 2.6 in that same directory. I still got a wxpython error saying that the object module was not compatible with python 25.dll. I think this is becasue of how I have my path variable set up. If so I can change that without rebooting on Windows XP. I will give it a try later this weekend and let you all know the results.

Thanks rdb and everyone else.

I tried the editor after installing the latest of wxPython for the Mac. The agw crash with the old version is gone, the editor starts.

Problem is that all windows seem to be created at top left 0,0, so all window title bars are behind the system bar and therefor can not be grabbed and rearranged. All windows are created upon each other instead of being nicely spread out. Using Expose -> show all app windows however you see all windows looking as expected.

OS X.5.6, Python 2.5.1, wx (mac-unicode)

Since I’m working on a Windows machine I didn’t know issues with Mac. I’ll try to get a Mac dev environment and take a look at it soon.

Does this only work with the development versio of panda3d?

Yes. A nightly build might be good enough.


suggestion: include hardware geometry instancing support.

Wow, that’s a pretty advanced subject, and I don’t think it makes a lot of sense to cover that in the level editor besides through the use of an “instance count” property and an interface to assign a custom shader to a model.

In an editor, you often place many copies of a single mesh, such as trees, rocks, lamp posts, bushes… Automatically/optionally using hardware instancing to speed up the rendering of this would be nice. Unfortunately, doing so requires custom shaders I believe, though if you support uniform matrix arrays (to replace the model to world matrixes), it should be really quite a simple shader. Maybe some support on the shader generator side would be needed though.

Right, and that’s why it doesn’t make much sense to add that functionality as part of the level editor, but rather as part of Panda3D.

Note that hardware instancing is not always an optimization, because it breaks culling. It is usually only preferred when there are hundreds of instances in view at the same time.

This instancing?: chicken-export.svn.sourceforge.n … d?view=log

No, we’re talking about hardware accelerated geometry instancing here.