Mogre for Ogre3D 2.0

boyamer

06-05-2016 07:31:53

Hi guys,
Long time no see, I'm working on upgrade Mogre to Ogre3D 2.0 and later to Ogre 2.1.
I'm using hand written binding as current Mogre is big mess, so I need your feedback about what is missing and what you need.

The current approach has:
- Premake5 autogeneration build system.
- Separated from Ogre3D and can with ease update.
- Binding stuff similar to BulletSharp or PhysX .NET.
- Full Portable Class Library math library written in C#.
- One .bat click will generate Visual Studio 2010, 2012, 2013 or 2015 projects.
- Can easily update to newest Ogre3D versions.
- Where possible, will try to reflect current Mogre API.
- High Performance and there is a object cache that won't create multiple .NET object as Mogre currently does.
- Can distribute .nuget packages.

Code is hosted here:
https://github.com/amerkoleci/mogre

Spread your voice :)

Amer

Zonder

06-05-2016 09:57:01

I think this is a great idea. I have also been wondering my self if CppSharp should be investigated again before heavy work is done a lot has improved and progressed with that project. I had planned to do this my self but without a PC atm I can work on. (Hard drive failed)

boyamer

06-05-2016 10:22:52

I have also experience with CppSharp but found difficult to compile with MSVC toolchain and not easy task, maybe I will give try soon.

Zonder

06-05-2016 13:25:01

They have prebuild binaries now it's come along way :)


https://ci.appveyor.com/project/tritao/CppSharp
https://github.com/mono/CppSharp

Beauty

29-05-2016 14:09:45

Hi boyamer,

it's great to see you here again (-:

What's about your game engine project, which you developed a few years ago?
If you already posted a state of the art, just give me the link.

I have no wish, because I don't work on 3D projects since my diploma thesis.
What I know from reading the forum for years:

1.)
Newcomers often ask for the latest Ogre Version.
(Although the current Mogre version is good for many cases. Additionally the wanted add-ons needs more update work for Ogre 2.x)

2.)
Some users miss support of other operation systems than Windows.
As far as I know this would only be possible with P/Invoke wrappers (like you use).

3.)
Currently Mogre has problems with terrain.
The Terrain Scene Manager was removed, although it was nice and simple to use (in my point of view).
The Terrain Component was partially wrapped in a Mogre branch. I supose it's more a half boiled wrapper. Additionally in my active 3D development time I didn't find out how to use it. There is no documentation and I didn't found a sample.

I think it would be great to have the possibility to use terrain, which is created by Artifex Terra.
The downloadable project wasn't updated for a while, but I know that the author still works actively on the next Version.
Nevertheless this terrain editor has great features - especially for artists, which want to create sweet looking terrains.
The editor itself is based on the Enhanced Terrain Manager, but this isn't important to Mogre.

4.)
An easy to use GUI system including documentation and example would be useful.
I think Miyagi is a good choice, because it's developed directly for Mogre and Axiom. It was improved and supported for a long time (some years I think).
Also I read that MyGUI should be powerful, has a layout editor and mstoyke had good experience with using it in Mogre projects. The downside is the lack of documentation for Mogre integration.
Interesting is the idea to use WPF for GUIs. I'm a WPF developer and like the design possibilities. Some people could get it work with Mogre and others failed. I think it's a little bit tricky.


A general problem of Mogre is the low number of users.
Especially in the last 3 years there very low activity in the Mogre forum.
I suppose developers have low motivation when there are only a couple of people (or maybe nearly nobody) who need their efforts.
On the other hand newcomers tend to go ahead (to other engines), because they feel Mogre is like death.

I know, you (boyamer) like to do much things with your own fingers.
Nevertheless, maybe it's interesting for you to have a look to Mogre Builder project.
You want to use an other compilation pipeline, but maybe you get some ideas from this tool for your own build pipeline.

Very important is a usage documentation if you develop and publish your own wrapper.
My feeling is that the lack of documentation often was a problem in the past. From time to time somebody did a great job for the Mogre community, but "just" gave the plain sources and/or precompiled binaries. Then they were away again. Without any documentation (concept descriptions, usage notes, examples, or such things) and without forum support.
So even if you just write quick and dirty notes about some important things of your wrapper, this would be realy great.


By the way - what's your motivation to update and use Mogre?
Is it for your game enginge?

Piotrek

30-05-2016 12:33:29

It is very good to hear that something moved in Mogre development!
+1 :D

boyamer

30-05-2016 18:03:43

Hi guys,
I'm almost done with the wrapper, I've added Sample browser using WPF (as you said), but if I have time I will also do some UI sample with WPF, as I'm quite WPF expert, what I like for this approach is that its easy to maintain and the classes are under source control and you can see them, DEBUG them or also change whatever you want without going to all the nasty builder process.

I'm working on this stuff because one user ask me to update to latest Ogre version but for personal purpose I plan to add also Ogre3D 2.1 wrapper too.

Cheers,

Gecc

05-07-2016 09:28:37

Very good news !
Thank you for your work, I use Mogre 1.8 for a while and it's great that Mogre still follows the evolution of Ogre.
I hope that the development goes well.
All the best !

spacegaier

14-07-2016 22:49:06

Nice to see that MOgre is not dead yet. As soon as there is a usable, stable MOgre version for 2.x, let me know and we can certainly created a sticky in the main forums and a blog post to raise awareness.

randomcode

19-08-2016 05:43:23

nice work! i am glad to see mogre is not dead. Could you please add terrain system? it is very important.

redheadedrod

15-11-2016 02:57:34

Will this work with Mono and C#?

Using the P/Invoke method I am assuming it should but want to know before I dig in and try.

I want to use Ogre for a project and if I can use C# with it that would make it easier to do.
The end project needs to be able to run under linux on a RPI 2.

boyamer

28-04-2017 13:54:34

At some point I will start to work on 2.1 integration but maybe with PInvoke support, at the moment not much time.