jME scene editor

I'm an artist and very new to Jmonkey but I'm working with a programmer on a small game at the moment using Collada .DAE as our prime file foremat (I believe this format is supported from what I've seen of the features list). I was curious how scene editing is done and if there are any scene editors out there for it.



From an art point of view I'm abit confused about how things like pickups and other interactables are placed in an environment without one. I know environments could simply be one large model but I'm still at a loss at how to add doors, lights (alough they could be placed down from the modelling package), partical emitters, spawn areas, items ect.



Any advice is very much appreciated.



MarkB

The core engine is a bit lower level than the things you describe.

JME will load and render the objects, detect collisions etc. But your code handles the interaction.



You can use a tool to design your scene. I think scene worker is being developed for this purpose, but there's no current standard. And you still have to load and build the scene in the way your game code wants it. It is possible to use external tools depending on your requirements.



My example:

For Exodus Defence I used GROME which is a graphical tool. I sculpt and splat the terrain then place models on it. I tag certain things with certain flags - eg. "scenery" "damageable" "playable".

The tool then exports this all in a text file.

The game parses this text file, which contains data on the object template (what is it), position, rotation etc as well as flags. It then loads the relevant models and constructs the game entities.



This works well. However all the code for loading, and interacting with the scene is game code not jME core code.

yeah thats really what I need, mainly a graphical tool for building worlds out of dae models that will work within jmonkey and using placeholder item models that I can set flags for.



I've checked out Grome - its a tad pricy for such a small project that I'm working on :frowning:



Thanks for the advice though, I will chat tot he coder about sceneworker

Yes there's no point buying GROME, just an example of how it can work.

I think some people have done similar with Blender, but I don't know how that works.

milky_p said:

yeah thats really what I need, mainly a graphical tool for building worlds out of dae models that will work within jmonkey and using placeholder item models that I can set flags for.

I've checked out Grome - its a tad pricy for such a small project that I'm working on :(

Thanks for the advice though, I will chat tot he coder about sceneworker


I'm currently doing something pretty similar with DeleD 3D Editor (www.delgine.com). There's a free and a PRO version, with the free being absolutely free to use for any commercial products (it doesn't have all the features of PRO but its still very usable). In the projects forum I have a thread about my Deled importer, which you could write extensions for to detect custom named or tagged elements, without having to write your own importer in its entirety.

As for a scene editor for jme, yeah I'd say scene worker is your best bet. Although I have interest in an integrated editor, unless if its extensible and pretty robust that many different app users can use it, I don't think we should have an official one. Scene worker probably comes closest to this, but its of course a third party project.  But it's probably tricky when you have a lot of custom defined game entities, and your own pipeline of doing things.

Though, I see a lot more value, rather than in a monolithic scene editor, we have a few smaller tools freely available in the core - like RenParticleEditor. Have a material editor, a model viewer where you could change materials/add meshes/view animations, etc.
milky_p said:

Thanks for the advice though, I will chat tot he coder about sceneworker


scene worker is an application meant to work with the jme core...
as there is no game engine so to speak in jme then scene worker doesn't have a level editor built in...
however scene worker and scene monitor are fully extensible and it isn't that big a job to create your own editors, attributes inspector, menus etc with the code..
also scene monitor and by extension scene worker were both built from the point of view of adding the editor to your source code and not having to use standalone editors but customise the "plugged in" editor for your purposes....

ah right well, I'll let the coder look at all this, I'm really just dealing with the art side of things. I use Maya for all my modelling purposes and was just looking for a tool to arrange my models into an environment, I guess I'll need to find out how the coder wishes to go with it.



Thanks alot guys.

@Alric: YOu use GROME for level-design? In what format do you export you data? And how can you access your tags?

Yes it’s at heart a terrain engine but it does have reasonably good features for placing and tagging objects. It would be cumbersome for indoors but outdoor scenes is fine.



It has a text file exporter which produces readable files with all the info on your scene. example.

I just wrote a simple parser to load this data and build the scene in jME. Works pretty well.



Personally I do think it would be good to have a standard scene format for jME and some editor bundled. It gets asked a lot on the forums and it would allow much better workflow. It should get better attention and be kept up to date as part of the core, which it may not as a third party addon. Also, by having an out of the box level format, people could then develop their own exporters for their tool of choice (eg. GROME has an API for that sort of thing, Blender can etc.) -so it would actually make it easier for people using other tools too.

So you are using grome to model your terrain, export it as HeightMap(?) and the tags with location, parse the grome-scene-file and then create your objects in jME, right?



With the level format I agree with you. Although we have the HottBJ-Format but that is not so readable and not so easy to create (I think). Maybe we would need something like a "userfriendly"-version as well that we can compile to HottBJ-Format.



Ok,…for me as a blender user I'm happy to be able to just use the exporter. Actually I can't think about a better jME scene editor than blender. With all the features the exporter is giving. Maybe this thread is not the right place, but nevertheless an example:



You can model your scene in blender. Then you can tag an object (let's say a house) with the jme.implClass-parameter giving the complete java-class it is representing (e.g. org.tomtro.House ). This class have to extends Node. That you can do with every scene object you want. Export all objects in one file and load it in jME. Afterwards the house-model is not a Node but a House-Class with all the logic you want it to have. Without the need connect the model to the House-class manually. That is sooo cool. Hope you got the point…



I'm planning to write a tutorial about as soon I have some time and won the fight again JGN :smiley: