OgreProcedural links and FAQ


14-01-2013 20:51:18

What is OgreProcedural?

OgreProcedural is an open source library aiming at the realtime/loading time generation of procedural geometry and textures to be used with Ogre.

Where can it be downloaded?

If you want a precompiled binary, please have a look at the binary snapshots that transporter regularly upload to the forums : http://www.ogre3d.org/forums/viewtopic.php?f=4&t=69274

If you have a different compiler/OgreSDK settings, you can build OgreProcedural from source (here are build instructions)

How to setup my project to use it?

If you use CMake : put FindOgreProcedural.cmake in your CMake module directory.
Define OgreProcedural_HOME to your OgreProcedural SDK.
Then use the variables OgreProcedural_INCLUDE_DIR and OgreProcedural_LIBRARY in your project.

If you don't use CMake : same as above, in your preferred IDE.

In your code :
No initialisation is required, just add
#include "Procedural.h"
to your source files.

How to do XXXX with OgreProcedural?

Have a look at the samples and at the documentation.
It's packed with screenshots, which should help you visualise which tool to use.
And if you still don't know, just ask :)

What are future plans?

I write down every feature I would like to see in OgreProcedural here.
For the next milestone (0.3), I would like to at least finish those features :
- CSG (boolean operations) with meshes
- A file format to write procedural scripts

Of course, suggestions and contributions are all welcome! :D


14-01-2013 22:52:58

- A file format to write procedural scripts
May I suggest using Lua?
It's leightweight, fast and tolua++makes interface integration super easy. Then it's just a matter of storing the Lua code and run it.
It also allows prototyping very easy.

Fugu in fact, already does something like that.

And something I discovered from using Lua, is that if you have GUI tool or similar, it's syntax is perfect for automatically generating code with a few clicks. Parsing the code to match the GUI settings back though, is not as easy (easiest solutions are either include additional generated code to affect the GUI, or store GUI settings in a separate file) although sometimes it can be derived from running the script (the hard is obtaining data that is lost because the GUI needs it, not OgreProcedural itself).

Python is another option, but I'm not used to making binding (so I don't know whether it's easy or hard), and Python's arithmetic performance sucks.


15-01-2013 17:01:52

May I suggest using Lua?
Lua bindings already exist and are working great (re-read my first post :wink:)

Since the binding already exist, a dedicated scripting format has to bring something over lua (maybe following a declarative rather than imperative style, for example, would be better suited in a graphical editor).
Of course, both approaches can coexist...


15-01-2013 19:31:05

Sweet! and D'oh

My apologies, I haven't been interested in your project until it started reaching more maturity


20-01-2013 13:37:55

Can I use it without setting up my project for it?

Since recently, I released ScriptInterpreter.
It's a windows executable that interprets lua scripts with OgreProcedural bindings, and that can output Ogre mesh files from it.
It's still a very basic tool, but it can already access the whole library!

"not a valid win32 application"

is it 64 bits then ?


21-01-2013 10:05:11

"not a valid win32 application"

is it 64 bits then ?

No, it has compiled as a 32 bit windows application.

It needs vs2012 runtime dlls, have you installed these?


05-02-2013 11:37:21

Can someone add a sticky to the old forum thread from the main Ogre forums: http://www.ogre3d.org/forums/viewtopic.php?f=11&t=60773

Or even move/copy that thread across, loads of content there.