Yep. Another scene editor...

Should be fixed now. Thanks for pointing this out.

I’ll have a look into this. It might be a bit hard because I can’t get a repro on win7. Some of the state checking is a bit dodgy, I seem to remember - so maybe a clean up will fix the issue.

Are you able to use the editor if you switch to no gizmo (Q or cursor)?

EDIT: @Crolli - Just did a few tests with polyset keep descend. Using that flag does indeed cause the unnamed nodes to appear - the unnamed node is the geom node and the node with the original name becomes the collision node under it. There’s not much I can do unless we can detect a node tagged in this way using getTag() or getPythonTag().

However, I’ve just hacked together a plugin based on this code: [url]GeomNode vs CollisionPolygon] which would take a nodepath and convert it to a collision solid without having to use polyset keep descend. Doing it this way would give you better control over how the hierarchy ends up.

EDIT2: I’ve just tried the same trick with BulletTriangleMeshShape and it works quite well. It seems like this part of the pipeline closely resembles the existing Blender pipeline, ie you tag geometry in your editor and parse the model game-side and turn NodePaths into the nodes you need. Hopefully this should make it easier for those considering using the editor who are coming from the Blender pipeline.

Ok, I think wx python is installed correctly now. This is the error I have got.
Currently I have copied and pasted the two folders from the panda3d editor folder to the site packages folder as well. Is this the wrong place for them to be on the python path?

more information.
[evaluate main.py]
Traceback (most recent call last):
  File "F:\Wing IDE 101 4.1\src\debug\tserver\_sandbox.py", line 4, in <module>
    #print 'Exiting sandbox process'
  File "F:\panda3d-editor\panda3d-editor-master\src\pandaEditor\__init__.py", line 13, in <module>
    from project import Project
  File "F:\panda3d-editor\panda3d-editor-master\src\pandaEditor\project.py", line 8, in <module>
    from wx.lib.pubsub import Publisher as pub
ImportError: cannot import name Publisher

Ok, this stumps me. As far as I’m aware the publisher should come with wx as default.

A few suggestions:

  • What version of wx widgets are you using?
  • Can you run a simple script with “import wx”?
  • Do you get the same result when not running from wings?

I have successfully run one of the wxwidget .exe programs to show a simple gui. Presumably that uses the import function.

I’m using wx version 2.9.4 where in the pubsub folder it has the file pub.
Presumably it isn’t workable to have ‘import pub’ There is a point to that, that they haven’t altered Publisher to pub and it cannot import Publisher??
(I.e. the correct interpretation of the code isn’t actually to import the file ‘Publisher’ but refer to it as ‘pub’.
The simplest thing would be to know which version of wx are you using?

Anyway, I did try to alter the references and eventually got an error.

 File "F:\panda3d-editor\panda3d-editor-master\src\wxExtra\customTreeCtrl.py", line 13, in __init__
    self.SetFirstGradientColour( wx.Color(46, 46, 46) )
AttributeError: 'module' object has no attribute 'Color

Its not funny being this ignorant, I’m trying to learn pi3d for the raspberry pi as well, but Panda3d will be far more developed.

This is very odd. I’m using wx v2.8, but unless they have made major revisions I doubt they would have re / moved the wx.Color and publisher classes.

Can you try wx v2.8?

I will do. I tried installing Pandemonium yesterday (I’m not sure if you’ve had a chance to look through some of the features there.) That gave me any number of problems until I completely uninstalled things and reinstalled wx.
Including not using the packaged version of wx, but I’m quite sure it was all a messed up installation.

Anyway, that’s on Panda 1.7.1 and wx 2.8.

Really it would be useful to be able to control separate installations. But just getting things to run would be nice, but at least we’ll have a better idea of the incompatible versions, though it can still be a installation problem even with the correct versions.

I’ll let you know how I get on.

Thanks for this scene editor! Although I wasn’t able to start it yet, I took a look in the code - and I like the style, the way it is structered and the whole idea of having a small, stable base and everything else in plugins. Keep to this concept, it’s great! :smiley:

I opend an issue on github, thought that would be cleaner than post the traceback here…
https://github.com/Derfies/panda3d-editor/issues/1

It seems that it isn’t that simple to make it run on linux as it should be. I would be glad to help with this topic, but alas I have no experience with GUI programming at all. But I can test it and report any bugs I will run into. Or tell me, if there is anything I could inspect and analyse.

If I may ask for a favor: although the code it easy to read, it would be great to have more docstrings on classlevel, that tells me whats the purpose of this class is, and some in init.py. This way it would be very easy to understand the big picture.

And finally after uninstalling all traces of panda, python and wx, and installing the panda 1.8 and wx 2.8…

It runs… :laughing: Thanks for the patience and the replies.

That’s great news! Sounds like there were some conflicting versions / installations going on there, but I’m glad you’re able to test it out finally. :slight_smile:

Thanks Nomad, glad to hear you like what I’m working on. Thanks also for starting an issue DB - let’s keep adding to it in the future. I can’t test on Linux myself at the moment but I know there are some issues there. I will try to get a virtual box up and running so I can test it myself, but don’t be shy sending back issues or PMing me about stuff that seems dodgy.

Yes, I know I’ve been a bit slack with doc strings lately. I’ll try to make things a bit more verbose in places. :slight_smile:

I have yet to give this a try, but if there are features from this that you want integrated then let me know (providing their project is open source BSD license too).

Just commited a few more changes including a hello world example based off the one in the manual. Test is out and let me know what you think. :slight_smile:

sourceforge.net/projects/etc-sto … =directory
wiki.etc.cmu.edu/pandale/index.php/Main_Page

I’ll ask how useable the code is. It was supposed to be included in Panda.
The conversation mode and journal features appeal, but I’m wondering if I can develop something to write out in a different python wrapper, whilst using the features available in Panda for the gui and editor.
Are there any good resources for developing an engine, or is it all based on technical knowledge?

The hello world example is charming. It might be helpful to add the ‘alt plus mouse’ scroll commands in the instructions for manuovering. Are there any plans for adding textures to primitives? or be able to add a background image.

And a delete button… :smiley: It excellent work.

Works rather well imo.

Uploaded with ImageShack.us

Hey all,

Sorry for the lack of updates recently. Been back at work to try and iron out some of the problems, adding some new features and generally improving the architecture. Some stuff which has changed recently:

  • Translation gizmo now has snapping (hold X)
  • Optimised scene file format
  • Hotswapping of textures and models
  • Improved grid appearance
  • Helper meshes should now appear correctly (still getting a weird shader bug though…?)

If anyone can test out the latest that would be greatly appreciated. As always, if you have a suggestion then leave a post or PM me!

Hi kurohyou!

Glad to see you back :slight_smile: I didnt participate for about 2 monthes due to high restrictions on work :frowning:

So, just checked latest revision and posted an issue on github.
Also, small bug with pressing up/down arrow (I know it doesnt work this way, just pressed them accidentally ) in input fields gives:

Traceback (most recent call last):
  File "D:\0\panda3d-editor\src\wxExtra\propertyGrid.py", line 56, in OnChar
    char = chr( key )
ValueError: chr() arg not in range(256)

By the way - how about adding up/down support for changing values? Like UP do +1, DOWN do -1? And maybe 0.1 step for small range values like colors? Just an idea :slight_smile:

I dont know if sample projects must work, I got exception every time I try to open helloworld/panda obejct samples:

Traceback (most recent call last):
  File "D:\0\panda3d-editor\src\pandaEditor\ui\mainFrame.py", line 245, in OnFileOpen
    self.app.doc.Load()
  File "D:\0\panda3d-editor\src\pandaEditor\ui\document.py", line 22, in Load
    self.contents.Load( self.filePath )
  File "D:\0\panda3d-editor\src\pandaEditor\editor\scene.py", line 36, in Load
    base.game.scnParser.Load( self.rootNp, filePath )
  File "D:\0\panda3d-editor\src\pandaEditor\game\sceneParser.py", line 15, in Load
    self.LoadComponent( sRootElem, None )
  File "D:\0\panda3d-editor\src\pandaEditor\game\sceneParser.py", line 31, in LoadComponent
    wrprCls = base.game.nodeMgr.GetWrapperByName( elem.get( 'type' ) )
AttributeError: 'NoneType' object has no attribute 'get'

P.S. sorry, samples works, I forgot to do “Set project” first

Hi Crolli, great to see you’re back!

I’ve figured out what the problem is with primitives but it’s going to take me a while to get a fix in. Once I’ve cleared my schedule I can come back to this.

Also, I think I almost have a solution for embedded collision for your models without using polyset-keep-descend (and thus won’t break the scene format because of duplicate NodePath names). If this is more useful to you then please let me know and I’ll polish it up first.

That’s a relief, but I’ll put some checks in so the editor can tell the user what’s going on instead of raising an exception.

hey, just wanted to say keep up the good work.

Thanks redpanda :slight_smile:

I wish I could spend more time on this but unfortunately there’s other stuff that has priority at the moment. Hopefully at least a couple of users are finding it useful!

Sorry for the double post, but I was looking to get some feedback from the community on the editor so I can focus the development a bit more. I’m currently working on trying to integrate Coppertop’s new Bullet KCC and TobiasSpringer’s terrain, but I realise there are probably other, more basic features that still need implementing.

So if you would like to use the editor and can’t, or there is some basic functionality stopping it from being useful to you, please let me know. Perhaps if some of these issues are fixed the user base will grow.

Cheers!

I create a new project, and then I try to middle mouse drag a .bam file into the scene from the resource panel under models, but nothing happened.

Have a backman.bam file in the /tmp/test/models/.

by the way, I can’t import .bam file by menu.

I use Ubuntu 12.10 and Panda3D 1.9.0~cvs20130704~quantal49

Sorry to resurrect a very dead thread, but for anyone who may still be interested in this project I have decided to broom it and see if I can get it working again. The branch (still WIP) is here.

Already it’s working with python 3 and latest build of the panda libs, and most of the breaking issues are resolved. I can’t guarantee long-term support because I have different priorities for doing this over and above building an editor for the sake of it, but someone might get some use out of it.

2 Likes

Ended up doing a lot of work over the last three weeks. Fixed a lot of the poor code and architecture, polished up some of the base functionality, introduced Yapsy for a plugin framework and even started adding unit tests. I’ve killed some of the avant-garde features in order to concentrate on getting the base offering a little more polished.

Oh, and you can add particles to your scene now too :slight_smile:

5 Likes