Mess around Mogre, need help...

Day7

24-09-2010 09:48:51

Is it me alone who feel confused around here? Let me write a story.

mstoyke is developing Mogre on .NET 4 without much feedback as I believe, Beauty is trying to keep resources together here.
Rest of us (just) share stuff (no need to count me, Im here just few months) and thats how I see everything now.

I'd love to help but I have issues like:

- I havent now compiled anything yet here including Mogre (i did everything as instruction says), Autowrap throws exception, tried several times from beginning - I asked for help without reply so far.

- Bitbucket seems to miss files without any notice while downloading because mostly when i download any repository i need to download some missing files myself, my inet connection is fine, even if it wouldnt - there should be any notice, I get info that everything downloaded fine - what the hell?

- Im torn between Mogre 1.6.5 and 1.7.1 - I mean it, I cant give any feedback because Im still bound to .NET 2 and I believe most of us are, theres so much time I could spend on learning stuff and help developing Mogre, but I cannot use .NET 4 so I need to compile everything on using .NET 2, but read first issue again... I didnt have any problem with 1.6.5...

- Is it me or repositories here are well messed up? Comparing to other open-sourced projects I am getting headache while trying to achieve anything here with files. I dont know yet myself whats wrong, but when I find something over inet to compile, I search for details how-to and its done. Here Im getting failed on each step I do.


Please, I dont mean to harm anyone, all I want is help here if You mind, but I need help also to finally have some progress myself. I might be wrong but I like doing things slowly and precisely. Id like to make a workspace here, where a new member comes, press link, see short enough instruction, follows it and can start helping here to develop Mogre without any pressure to research on errors hes getting while trying anything. Seriously I never had problems before like here. You may get this wrong and disagree. But if You dont, I say this place requires cleaning up, mstoyke would get so much feedback I believe. Then we could hold SDK's and sources up to date for VS2003-2010 like it was until 1.7.1 came.

I had no problem with 1.6.5 at all, not even single one - so what happend?...

Now You can shoot me, best regards.

Beauty

24-09-2010 18:52:42

I'm a little bit sad to read about your massive problems.

I never compiled Ogre, nor Mogre.
My C++ knowledge is very bad and until now I just used the precompiled binary files for my project.
(2 years ago I tried to update the MogreNewt wrapper for Newton 2.0 and I burned my fingers. Thanks to Bekas, who helped me to wrap my few needed functions for collision detection. And thanks to GantZ, who wrapped the whole rest of MogreNewt some months later.)

Maybe you didn't know - mstoyke wrote and published Mogre build instructions in the repository.


We are not alone. There are also other active people:
* quertz has done a great job for creating a new MogreSDK from the scratch, including a much improved installer.
* amirabiri does a great job for cleaning up the Mogre tutorials, including the creation of a better MogreFramework (for the tutorials).
* smiley80 share his nice GUI system Miyagi, gives support for it. Also he helped on different problems, e.g. by publishing useful code snippets. One more point: He shared a tool for creation of XML comments for Mogre members. This is also useful, because in the past not only one wrapped method, property or parameter had any discription.
* manski is improving and documentating the Mogre autowrapper generator.
* boyamer is very quite, but sometimes (after asking him) he conjure a great rabbit out of his hat. (He develop a whole game engine (Alimer engine) and it seems to be very professional. He is not aversed to rip some parts of to give it to the Mogre project.)
* GantZ is our retired Mogre maintainer, but he still gives support for MogreNewt problems

These are the currently active Mogre supporters which I remember quickly. Sorry if I forgot somebody. I know there are also some other helpers in the Mogre forum.
You see, everybody has his own focus, but each contribution powers up Mogre.
Unfortunately there are still some open questions in the Mogre threads, where nobody could give an answer.
Ok, we are only a tiny(?) subcommunity and not many people follows all the threads.
But we try the best to improve Mogre and to help others.

This is my point of view.

Day7

24-09-2010 19:30:13

I think i know most of contributors since I've searched through this forum a lot. I dont know much about C++ too.
Ive wasted most of my time in reverse engineering, writing DLL injects with C++/ASM stuff, but yet Im having still
problem with fully understanding pointers *cough, dont laugh =P*

I just think that this place could be better organized to bring much better results in development.

I work 09:00 - 17:00 as network admin, but Im sitting in C# (sometimes... play Bad Company 2)
So why not spend time by helping with Mogre? Im into C# since april 2010 and I know Ive learned
more than I could during those months, spending whole days annoying myself with coding, wrote bunch of tools which
helps other employees at company a lot using sql, parsing and stuff... beside real life stuff (i wanna get married next year, crazy)
I could do the same with C++, everytime I started to mess with something with every problem there was a solution,
but I cant seem to find anything like this here.

Beauty I know Your C++ knowledge, mstoyke is very busy as I think.

We could learn it in team, share solutions and start somewhere, then help mstoyke in maintaining Mogre as best
as we can. But theres need to clean up things before. Isnt it?

GantZ

24-09-2010 20:01:49

is it me, or are all you're problems related to source build ? I think most user here use the available SDK, and are happy with it. It's definitely not perfect, but it's still better than the 1.6 days where only binary where released.

Source build could definitely get problematic, but you have to aknowledge that it's advanced stuff. granted, with version prior to 1.6, generated source files where provided, so it was easier for anyone to compile the whole stuff. It would be probably a good idea to release generated source files once again, with a ready to build configuration for anyone who want to make some change to the mogre source.

also, don't worry about the fact that you use only .net 2, or don't know about c++. i don't know anything about c++ before using mogre, and i'm sticking to .net 2.0 for the time being :) besides, there is almost no difference between the .net 2.0 /and 4.0 version. Once you understand the structure of mogre / ogre in whole, everything is easier, but you have to be prepared to encounter some difficulties. About the fact that it have get harder with 1.7. well, we are dependent of the evolution of the ogre project. the introduction of cmake along with the custom allocator policies have make the whole thing a nightmare, but we have to either cope with it, or stick with an older version. i think it's better to at least having an up to date wrapper :)

Finally, the mogre project have been on hiatus for a long time between the 1.4 and 1.6 version. a lot of thing get outdated, and the whole project have lagged behind the ogre project. we still suffer of this situation. Now, if you are willing to help, any contribution is welcome. the ogre project have been quite calm lately, so it easier for the mogre contributors to catch up with it.

btw, is your problem related to this ? : viewtopic.php?f=8&t=13123&p=75326#p75326 .

Day7

24-09-2010 20:21:31

Yea, that issue comes from no where, I found someone had similar exception but with other type
and solution was there yet I cant understand how to do it due to fact that instruction was very
simple without details. Using instructions Beauty linked to it is suppose to compile successfuly.

I believe if it would be packed as before to 7z and uploaded it'd work same as for everyone,
instead repository was updated in the middle of something and that was bug left as bonus?
Or what else is the reason of exception inside code where everyone is using it and it works?
I dont know if You still getting my point, but I cant find myself here...

Beauty

24-09-2010 20:27:21

Nice to read some backgrounds of you real life.
I'm a student for 11 years now (engineering informatics) and passed all tests a longer time ago. Since about 3 years I'm working in a company with focus on system engineering. There I develop an application for visualization of (our real) underwater vehicles and a simplified sonar simulation. It's a cooperation project with my university for which I use Mogre. And sometimes I help out in other projects. The works makes so much fun, that I away my university exam again and again. But in the next time I want to put the focus in this important thing.
Some details of my underwater application is here in the Ogre wiki.

The learning team idea is good, but I'm not much interested to learn C++.
When I need to handle something with C++ (very rarely), then I try to do it. In other cases I prefere to use C#.
In the past my favorite language was Perl. Now I'm happy that I can use the amazing power of regular expressions with C#, too. Maybe other languages learned it by Perl? :lol:

Instead of C++ I have more interest in learning more about Windows PowerShell, Blender, WPF and of course Mogre/Ogre :D
If a company needs somebody to do something with C++, there are enough other people who can do the job. I do other things. :lol:

Day7

24-09-2010 20:34:38

Now I'm happy that I can use the amazing power of regular expressions with C#, too.
http://www.radsoftware.com.au/regexdesigner/ - God bless 'em.

But still C++ would help a lot in developing Mogre, thats great point of learning it.

I just think mstoyke needs more help with Mogre, not because he might not know something... If I were him, Id be mad that no one else beside me is working on it and there would be better results...

GantZ

24-09-2010 20:59:40

I believe if it would be packed as before to 7z and uploaded it'd work same as for everyone,

What i mean by releasing an archive is releasing all the generated source in it. You're problem basically goes with the generation of the source. in 1.4, bekas used to make available in the svn the generated source of mogre, so it was much easier.

instead repository was updated in the middle of something and that was bug left as bonus?
Or what else is the reason of exception inside code where everyone is using it and it works?


The problem you have is that your ogre configuration (ogrebuildsettings.h) is incorrect, so cpp2java step into an incorrect part of the code, that is not supported by autowrap. it goes with OGRE_STRING_USE_CUSTOM_MEMORY_ALLOCATOR. now, reading the build instruction, it seem there is only OGRE_CONFIG_CONTAINERS_USE_CUSTOM_ALLOCATOR that is instructed to be set to 0. it seem to have change since the first 1.7 versions AFAIK.

Keep in mind that buildsettings are generated by cmake, so instead of having a tool which cater for one ogre configuration, autowrap have to cater for every possible ogre configuration, which make it much more complex to use. This is this kind of little thing that make the process of generating the source harder, now, like i wrote, we are dependent to the evolution of the ogre project, so we can't help but try to adapt the best we can.

Day7

24-09-2010 21:57:41

But I did exacly as instruction said and it is suppose to work so. You cant follow it if its not correct to current sources.
Damn Im tired and its hard to talk now. i'll try to read cmake stuff at monday, since im off till then... all i say thats wrong and does not work this way...

mstoyke

24-09-2010 23:37:06

Make sure you update the sourcecode to the "default" branch in the repository. There is a newer revision in the "TerrainAndPaging" branch and I remember that there was still a problem with the autowrapper when I added the terrain component for the first time.

The changeset Id you should use is f21db0f80151 in the mercurial repository.

Day7

25-09-2010 17:27:19

Im back sooner than I though. mstoyke do You feel okay with way how Mogre developing is going now? I dont know, isnt there anything We can do or so... Because I feel so freaking sorry that most of current development is being done only by You - correct me if Im wrong. There must be something we can help with...
Of course if You like it that way I have nothing else to say, yo. (holy crap that sounds cool =P)

mstoyke

27-09-2010 00:09:54

I think that the way how Mogre is developed and maintained at the moment is not so bad. Sure, we could use some more maintainers for certain add-ons, but I'm sure if more people use Mogre there will be a higher demand for working add-ons and someone will fix the problems.

If you really want to help the project, use Mogre. Create cool stuff with it, show it to others in these forums and report everything that works or doesn't work. I know there are a lot of people out there who are interested in Mogre, some of them actually use it, but only few people are registered in the forums and post about their experiences.

Mogre core development will be extended to more people, I already contacted some of them to see who wants to join the core team.

Mogre already made some great progress, more and more people are working hard to improve the most important part of any library: the documentation. And I'm very happy to see this is already attracting more people to Mogre.

Day7

27-09-2010 18:19:18

Thats insane, tried already like 5th time to compile and I get the same error while launching autowrap. I think ill switch to C++.
I would fix it myself then instead of bother anyone then, but I dislike way c++ looks like...

mstoyke

27-09-2010 22:33:16

Thats insane, tried already like 5th time to compile and I get the same error while launching autowrap. I think ill switch to C++.
I would fix it myself then instead of bother anyone then, but I dislike way c++ looks like...

It seems the precompiled binaries are not working for you or is there any particular reason why you need to compile Mogre yourself? Building Mogre is not trivial and if you don't have very good reason to do it, there should be no problem to use the binaries and create some cool stuff with it.

Just my opinion, but I'm a little bit sad to hear that's the only reason for you so far why you don't want to use Mogre. It may sound harsh, but if that's true then I see no point in convincing you to use Mogre...

amirabiri

27-09-2010 23:14:44

Hi Day7.

I'm also very new here, I've only found Mogre several weeks ago. The Mogre community is still small but I personally would like to see it grow and Mogre evolve. It will be a shame to loose any member, let alone one who wants to contribute. So I'll be happy if you stay :-).

Having said that - and please don't take this the wrong way - are you sure you are going about this the right way? If you are coming from *nix sysadmin background that might explain the confusion - Mogre and Ogre are open source projects but they are not like your average *nix open source software. It isn't easy to compile them or develop C++\.NET wrapping code.

If you are looking for a project to join to enhance your C++ skills, sad as that is my advice would be to start with something much simpler. If on the other hand it's Mogre specifically that you want to use and contribute to I would suggest starting from the start :-).

mstoyke

27-09-2010 23:34:22

It would be probably a good idea to release generated source files once again, with a ready to build configuration for anyone who want to make some change to the mogre source.
I'm currently considering releasing the auto-generated sourcecode files in a separate zip file for download, so if anybody wants to build their own Mogre version without using the wrapper generator it would be possible. I will, however, not provide any support for these files. Let me know if this would help.

I'm also thinking about putting the auto generated files in the repository, but I want to get some feedback about the pros and cons first.

Day7

28-09-2010 07:38:13

Uhhh, I dont need a minor reason to compile public released sources i think, even just to have sure it does really work. Ogre compiled fine, pretty easy and thats how Mogre should work too. Managed Ogre is awesome, freaking pwn everything on its way (btw i hate short name "Mogre", sounds bad and weird =p).

Putting stuff together like MyGUI, SkyX, HydraX, MOIS, work a bit with models, terrain and You have pretty awesome results with very short time, even one man can do awesome things with Mogre. Performance is great, I have lower FPS with clear render window with Gorgon (2D Lib using SlimDX) almost by double.

But, Mogre doesnt compile ;x

(*nix suck, duh never touched)

mzanin

05-11-2010 20:40:48

Not to be rude, but if you follow the steps given here: https://bitbucket.org/mogre/mogre/src/tip/BUILD
Then you should be able to get a build happening within a couple of hours. I've had to build Ogre/Mogre numerous times on different machines and last time I compiled a x64 build in less than an hour from scratch.

Maybe you need to re-consider working on a project that you cannot even compile?

If you do go for a build I would stick with 1.6 and C++.
We've been having a number of issues with Ogre/Mogre 1.7.1 in terms of stability. We require our application to work for days on end without crashing, so far Mogre hasn't been able to deliver.
There's nothing worse than getting random AccessViolationException's crashing your app which end up being null pointer exceptions (or whatever) in Ogre itself. You end up having to attach the C++ Ogre solution to the app anyway just to find the issue. Then you end up writing a workaround in your application to get around the bug because you don't have the time to wade through all the Ogre code to fix the bug.
And I'm talking about some obscure bugs here (such as calling SetNamedConstant too often result's AccessViolationException's so you have checks in place before calling SetNamedConstant)... fun and games indeed.

Beauty

26-12-2010 15:38:00

We've been having a number of issues with Ogre/Mogre 1.7.1 in terms of stability.
It would be fine when you add bugs to the bug tracker and/or post it in a forum thread to give the Ogre team a chance to solve it. Because they can't search for problems and solutions when they doesn't know.

Thanks for your report. :D
For Mogre related bugs, it would be great when you add it to our Mogre bug tracker:
http://bitbucket.org/mogre/mogre/issues

It seems so that you have experiences with Mogre AND Ogre.
What's your experience about the Mogre wrapper?
Does it work well or does it cause more problems than the "plain" Ogre library (C++)?