Page 1 of 5

OgreMax Exporter 1.5 - With Material Editor/Viewer

Posted: Fri Oct 05, 2007 2:17 am
by nedelman
I'm happy to announce that I've recently released the latest version of the OgreMax Scene Exporter.

The big new features are the material editor, which allows you to specify Ogre materials entirely within 3DS Max, and the material viewer, which allows you to see your material rendered in real time as you edit it.

Some interesting images:

The OgreMax Material type
Image

Exporting objects as lines and points
Image
Lightmapping with the 3DS Max "render to texture" feature
Image

For the full list of updates see: http://www.gameprojects.com/project/upd ... ceba21965d

As always, you can find the OgreMax project by going to http://www.ogremax.com

Posted: Fri Oct 05, 2007 4:44 am
by Chaster
Awesome work Dererk! Keep this up and you'll have the best exporter for Max out there, bar none! I can't wait to try it. Oh, and I also want to compliment you on the OgreMax loader code. I integrated it in my project in minutes and all the callbacks you provide are a huge help!

Kudos kudos kudos!

Chaster

Posted: Fri Oct 05, 2007 8:04 am
by syedhs
Sounds like a very nice exporter although I have not used it (yet). Will give a try later.

Keep up the good work Nedelman! :)

compared to ofusion?

Posted: Fri Oct 05, 2007 1:54 pm
by mklann
first of all: great work!

Let me try to understand that: short of the real-time viewport ogremax offers more or less the same as oFusion, and ogremax is open source, so everybody interested (and capable) could contribute to the development?

Have you ever considered adding a real-time viewport?

I think an open-source community-developed 3ds-exporter is great for the ogre community - so I'd love to see this grow.

Best,

Markus

Posted: Fri Oct 05, 2007 3:38 pm
by Okdano
Congratulations Derek, and thank you again for your excelent work.

Re: compared to ofusion?

Posted: Fri Oct 05, 2007 7:27 pm
by nedelman
Thanks for the compliments and feedback everybody. It's very much appreciated.
mklann wrote: Let me try to understand that: short of the real-time viewport ogremax offers more or less the same as oFusion
Yes, that's correct.
mklann wrote: ogremax is open source, so everybody interested (and capable) could contribute to the development?
Versions prior to 1.5 contained the source code and were available under a public source code license so that anybody could contribute. Unfortunately, after nearly half a year I had received only two small contributions. Meanwhile, I received a very large number of feature requests. So while it's clear that there's a great interest in using the tool and having new features added, there's very little interest in contributing to it. As a result, I've removed the source code for the exporter, but I will make it available in the near future to those who need it. This doesn't affect the source code for the viewer, which is totally free.
mklann wrote: Have you ever considered adding a real-time viewport?
Of course.

Posted: Sun Oct 07, 2007 1:34 am
by Marioko
can i download a binary version??? if its. where??

Posted: Sun Oct 07, 2007 11:51 am
by Dom
nedelman,

did you already release a new version including the resource directory stuff I talked about? Just did a re-download and suddenly I see
# -Directory, -Dir, or -d - Specifies the path to the directory resource location.
# -RDirectory, -RDir, or -rd - Specifies the path to the directory resource location that is searched recursively.
or did I overlook them previously? (edit: answering myself later)

btw. the readme point to a DTD that is not found
OgreMax-1.5.1/OgreMax/Documents/OgreMax-dotscene-1.0.dtd
*one minute late*

:shock: doh! cool dude, you already implemented the post-export events!!!! Thanks a lot :!: :!: :!:
Using Scene Events to Launch the OgreMax Scene Viewer After a Scene Export

Posted: Sun Oct 07, 2007 11:52 am
by Dom
Marioko,

the binaries are included in the download.

Posted: Sun Oct 07, 2007 12:42 pm
by Dom
nedelman,

I am just looking into the OgreMaxScene for integration and I am wondering if the single RenderWindow input is a problem for an Editor App using multiple render windows.

It might be that there is initially only one rendering window and the others are added after the load process, but I am not sure that this is generally true. In my case I don't know yet if I will close all windows but one when loading a new .scene or just keeping them and adding the cams that are available (besides that there will also be some standard editor cams like left, right, perspective etc).

Maybe the class needs to be enhanced/modified to operation on a collection of render windows. For the texture creation it would then take the values of the biggest window and the lowest depth (though depth is probably always the same?).
Your thoughts on this?

Posted: Sun Oct 07, 2007 8:16 pm
by nedelman
The scene loader class was written for the most common use case of loading into a single window application, but as you've noticed, it would take just a few modifications to support multiple render windows. I'll make these changes.

The texture creation you're referring to is for the texture shadows, since there is some logic when using the OpenGL render system to prevent the creation of shadow textures with dimensions greater than the render window's dimensions. I haven't tried to create multiple render windows under OpenGL, so I'm not sure of how to handle this texture shadow issue, but I'll create some experiments and see what happens.

And yes, as you noticed, I already released an update containing the events that you suggested. It's a very useful feature! I'll also remove the link to the missing DTD.

Posted: Mon Oct 08, 2007 4:30 pm
by Marioko
this project is very nice.. ¿there is some scene parse for MOGRE???


:lol:

Posted: Mon Oct 08, 2007 5:09 pm
by nedelman
It's standard C++ only.

Posted: Tue Oct 09, 2007 9:04 am
by FrameFever
ist there now a function available, to export only mesh files, without a scene?

Posted: Tue Oct 09, 2007 9:38 am
by nedelman
Just ignore the scene file.

Posted: Tue Oct 09, 2007 1:35 pm
by Marioko
It's standard C++ only.
Ok. i will try to make a MOGRE Scene Loader... thanks anyway

Posted: Mon Oct 15, 2007 1:16 pm
by mr.Zog
when I try to start max with the plugin it get a "failed to initialize" error:
Error code: 126 - The specified module could not be found

I installed the Visual C++ runtimes.
Running winXP sp2.

I also got oFusion and Lexiexporter installed, could this be the problem?

Posted: Mon Oct 15, 2007 1:37 pm
by nedelman
Someone else had the same problem. The solution was to update the DirectX runtimes to the newest version.

http://www.microsoft.com/downloads/deta ... laylang=en

Let me know if this works for you.

Posted: Mon Oct 15, 2007 6:47 pm
by mr.Zog
Yes, it seems to work!

Thanks!

Posted: Fri Oct 19, 2007 12:00 am
by JeDi
I think it would be a good idea to have another layer of abstraction above the current material system (which is great btw, good work!). It is a great thing that you can edit all settings available for Ogre materials right now, but we should have some kind of template system.

For example, in our project we would like to have the same type of material for a lot of objects (shader using diffuse, specular, normal and light maps). If an artist could just choose our "game material", and only had to specify the 4 maps, we could save a lot of time. The "game material" could be a parent of the Ogre material, so you could see all Ogre material parameters involved, and tweak the material.

An automatic way of creating a proxy material for inside max would be great too.

Greetz,
JeDi

Posted: Fri Oct 19, 2007 1:06 am
by nedelman
JeDi wrote:in our project we would like to have the same type of material for a lot of objects (shader using diffuse, specular, normal and light maps). If an artist could just choose our "game material", and only had to specify the 4 maps, we could save a lot of time.
In some sense, you can already achieve this. You can put your OgreMax "game" materials into a 3DS Max material library and then when it's time to create a new material based off of an existing material you can use the "Copy Settings from Source Material" button (on the main OgreMax material rollout) and select a material from the library. This will copy the contents of the source material into the current material. You can then modify the material and its textures as needed. When using this technique, be sure to correctly set the Ogre resource locations (in the Scene Settings->Ogre tab) since these locations are not stored with the materials that you put into the library.
JeDi wrote: An automatic way of creating a proxy material for inside max would be great too.
This would be nice but unfortunately there's no consistent way of mapping Ogre texture units (which are very general) to 3DS Max maps (which are very special-purpose).

Posted: Fri Oct 26, 2007 3:57 pm
by randall
Hi!

Great job with exporter. Thanks.

I think that I found a bug. I have created simple vertex program with default parameter:

param_named _ambientColor float4 1 0 0 1

After exporting material using this vertex program I get:

vertex_program_ref
{
param_named _ambientColor float4x4 ... (16 floats)
...
}

Posted: Fri Oct 26, 2007 5:25 pm
by randall
Ok I solved the problem. It seems that global parameters can't be used, only uniform.

There is one more thing. Programs must have at least one default parameters to be seen in 3ds Max.

When I declare program like this:

fragment_program fp_simple hlsl
{
source simple.hlsl
entry_point fp_main
target ps_2_0
}

I can't see my program in 3ds Max. But when I add one uniform parameters to the program and change declaration to:

fragment_program fp_simple hlsl
{
source simple.hlsl
entry_point fp_main
target ps_2_0

default_params
{
param_named col float4 1 0 0 1
}
}

Everything works.

Posted: Fri Oct 26, 2007 5:47 pm
by nedelman
I created some experiments and was able to reproduce the problem using the OpenGL render system. I'll have a fix soon, probably within the next day or so.

Posted: Sun Oct 28, 2007 7:47 am
by nedelman
Problem fixed. You can find more information about the latest release here: http://www.ogre3d.org/phpBB2/viewtopic.php?t=36729