[Approved] New branch in code and management

Okay, seems you went slightly off track here :slight_smile: In a community of 4k members this can hardly be all who care to put their two cents in when an important decision such as this is about to be made? I would like to urge everyone who has already read this thread but not yet posted to take a brief moment to speak their mind, for that is the whole point of this thread.



The sooner we see that the majority is positive about this migration, the sooner we can start talking about use and deployment of Hudson, alternative SCM, new requests for site design and all that jazz :wink:

I haven't looked at the code, but clearly momoko_fan is one of the community members capable of moving the engine forward.



I would be concerned that a branch with only a single developer could quite easily end up running out of steam.



I would also be concerned that Sadr you have not been a consistent member of the jME community. I have the impression that things build on jME are your primary interest, rather than the core engine.



It is highly unlikely that I would adopt such a branch in the forseeable future.



I have no wish to hamper your efforts, but there I have spoken my mind as requested.

Sadr said:


mcbeth said:

this is pretty much my view on the issue won't add more to it..... yet
http://www.jmonkeyengine.com/jmeforum/index.php?topic=11290.msg85041#msg85041
I can't read that, so I'm assuming that's in the moderator's board. Maybe if the thread doesn't actually touch sensitive topics (more so than this one) then it could be moved into the public area?

sorry, see bolded
me  :-D wrote:
my thing is this, if we are to considering moving forward to a jme3 that is decidedly "next gen" then consideration must be given to the fact that alot of hardware will be be left behind mine included, and as such a fear bit of warning should be given and jme2 remain parallel to it for a while still, especially since, as has been mentioned above, there are very lively attempts to build  "arround" jme2, apart whats already mentioned, there are third party tools that have been showcased and such, and should be given an opportunity to see the light of day.

apart from that, and maybe I'm wrong, but u haven't exactly sort to engender a spirit of community or cooperation into your efforts, it has  been pretty much "this is the way I see it and thats that" kind of vibe from the outset, kinda cold............jme was many things but never cold

well I don't really know how much my outlook on the situation really matters since i'm still really learning what jME truly has to offer but w.e



I agree with everything your saying Sadr and I've spoken with Momoko and have been able to see some of what he's working on however as previously mentioned one individual working on a fully-fledged nex-gen engine by himself can't possibly result in a reasonable production time frame. Diversity is everything and individuals tend to look at problems and create solutions differently. The more individuals working on a project the better it can be given thier working together properly and propose different solutions in an orderly manner. Momoko has told me some of the ideas he has and what he's really working on, but working on an entirely new engine by oneslef is kind of ludacris.



I also agree with gouessej's previous statement jME can't possibly be called an engine of choice if it lacks proper support for a whole API, these second hand JOGL patch ups won't fly. Darkfrog has informed me of some advantages of using JOGL over LWJGL that has actually persuaded me to attempt to use JOGL after I finish my current project. However I see LWJGL a bit easier to use for me a beginner and enthusiast.



I would attempt to help the new project if I could however my limited understanding and my annoying habit of continuously dumping and repeating a project in an attempt to find the best solution to managing my app wouldn't probably help at all. As I see it all i'm good for at my current udnerstanding is simplifying classes such as the ogre loader singleton I made in which given the name of the mesh(given that its in a proper folder hierarchy scheme) or name and url (in which its located) it loads the mesh skeleton and texture and saves it in a Hashmap (so other models can be located thier as well) and then returns clones of which ever model is called. reducing the line for the user to load everything to one line. But i doubt thats useful to anyone but myself who dislikes messy classes.



Likewise I do however think that technically jME 2 is really 1.5 as it was based heavily on 1.0 and only showed a couple of imporovements.



As far as 3.0 goes though I still think it be a bit early to make a new engine now that theirs a change of shift and even more talented programmers in the community counting momokofan , blaine,  basix, nymon, core-dump, llama,  gouessej, JOC, jjmontes, Trussell, [IR]Radek, Ender and many others more than when the jME project first began, I think jME can take a radical shift changing its name to gorrilla3D would be confusing but can also indicate a new branch in development. Indicating a more matured community and engine.

As far as the site goes I can see a front page which directs the users to either this current page or a new page. though gorrilla3D will still be under jMEā€¦g3D a more matured engine will contain all of the aspirations and knowledged attained working with jME over the years.



I also understand mcbeth's comment and concern of jME worrying mainly about nex generation and forgetting about users with low end hardware. As far as i'm concerned I always thought that it was in the hands of the developer and their engine which decided if a game would work properly on low end machines or not. I have always targeted lower end rigs which is probably why i'm still in the beginning phase after a year and a half =p. I've always thought that given poor coding you could probably max out the PS3 or 360 with a game of pong.



Though I still have much to learn and you can tell my lack of experience by my post I do marginally think that its time jME moves forward. Their should be divisions working on specific parts of the engine and collaborating together to create a more matured engine than 2.0 was to 1.0 and also do some work on memory management.



Though my word possibly means nothing i've given it and hope jME grows into an engine that grasps and overcomes all of the current issues which hinders all of the other current java based engines. I would help with the project however I don't think coming up with an idea for a solution and asking the community 30-40 questions a line a class (though come to think of it I only ever really have issues when i implement code that wasn't originally mines like some from the tutorials and flagRush) and repeatedly bother momoko slowing down his own  development flow would be much help lol.



Throughout all of this I askā€¦everyone knows its time for a change will jME and its community be the ones to bring Java game development to the foregrounds??

Okay, thanks. Answering this should be quite simple.



First, why do you think I was troubled with Ardor3Dā€™s separation from jME in the first place? I tried keeping jME together as one community back then, and this is the very same thing Iā€™m trying now. Iā€™m sure renanse had even more reasons for his complete separation with jME than what he cared to go into detail with, but when it comes to the decision of starting a completely refactored codebase, that came from a simple need: A need to take his engine to places where jME 2.0 could not.



MomokoFan reached that same conclusion and he has made considerable progress with his solution to this problem already, and what we hope to avoid now is yet another fork from jME that will further split up the community.





Secondly, if you read through my first thread completely (a drag, I know) youā€™ll see that Iā€™m merely proposing that me and MomokoFan be allowed to start building a new team and development environment for this new branch inside of jME so to speak; Iā€™m not asking for others to get immediately involved. Building a strong team takes time and wonā€™t happen overnight. The ā€œtransitionā€ from jME 2.0 to 3.0 that you seem to fear wouldnā€™t even start happening for real until jME 3.0 can offer a feature-set almost as wide as that of jME 2.0. In the meantime I expect to see those currently heavily involved with jME 2.0 to continue unmoved, finish their project, then maybe give jME 3.0 an assessment when pondering on their next start-up.





Edit: Thank you very much for your elaborate input Bonechilla. Iā€™d like to just address one point in particular:

"Bonechilla" wrote:
As far as 3.0 goes though I still think it be a bit early to make a new engine now that theirs a change of shift and even more talented programmers in the community
Surely there are several immensely talented developers involved with jME, and probably many more now than before. However, that does not say anything about how big a commitment any of these are willing and able to make. That is, in my eyes, the reason why jME has stagnated in this way; because none of these capable people that you mentioned felt they had the competence or time or both, in order to spearhead jME's continued development.

Also remember that there is a big difference between being able to make great tools & games, and making a great engine. Their (people who use jME for whatever purpose) continued contributions are crucial to the project, but they probably have good reasons for preferring their own projects instead of signing up as a core developer for jME.

When we recognize a good product we like it; if that same product is championed by the right people, we'll worship it. I don't fear for jME 3.0, because I know what me and MomokoFan are capable of (and limitations of said capabilities) and I believe that to be enough to build a strong team for jME 3.0 without disrupting any and all internal as well as external development surrounding jME 2.0. Possibly, our proven success will be someone else's motivator, and jME 2 will have established it's own compact team of flagbearers, and the community as a whole will be stronger than ever.

I'm a dedicated monkey and fear nothing in terms of attempting a change of direction. I'm sorry if my post is unclear but i do not wish to split the community entirely simply create an engine for more indepth developers and leave 2.0 as a startingpoint for new developers coming into the community.



In terms to your question I second or third  (:? through reading the thread i'm not exactly sure where my proposal stands lol) your proposal to start a new branch within jME as long as more dedication and time is put into it than was put into 2.0. I understand working on the next best thing right after the current is important in production, however I think (though i know between you and momoko it will be anyway) that 3.0 should be thoroughly worked on and 4.0 shouldn't be in production the second the codebase of 3.1 is released. I expect the JOGL API to be as robust as the LWJGL one and standardGame to hold as much importance in production as BasicGame.



I understand that it takes time to create a robust engine but the general needs of the community should still be considered early in the production of the future engine

Bonechilla said:
(...) however I think (though i know between you and momoko it will be anyway) that 3.0 should be thoroughly worked on and 4.0 shouldn't be in production the second the codebase of 3.1 is released.
He he, that would definitely not happen. You said yourself that jME2 was more like jME 1.5 because the number of improvements greatly outnumbered the amount of drastic changes. That 'drastic changes' part is what's happening with 3.0 now.

I believe jME started some time around 2003? So if you count 2.0 only as a major maturing point and not really the "next generation", that means jME has been in development for 6 years up until now, when some of the main developers (renanse and MrCoder) decided it was time to start anew. This is a very rough assessment, but I'd say we're looking at a similar timeline for 3.0, but hopefully somewhat more frequent maturing stages leading up to that inevitable revamp down the line.

Hi guys,

I like this thread, because it brings people together talking about the philosophy of JMonkey.

Well, let's say that this is important in my eyes.



For my part I just can say that I'm astonished again and again what great things can be done with Java by people who really live this language.

And at the same moment I have to say that I'm not the person who is skilled enough to make a real point in this discussion. But maybe there should be considered one more thing: We have to use potential! There a many people out there who would be able to develop a jme3.0 together, but there are much more you keep questioning them the same things again and again. And why? Mainly because all the chaos around jme and jme2 and so on. Yes of course such this is part of history and jme2 is THE JMonkey Candidat #1 but all the important information about it get messed up with tuts and articles about jme1.



Why should there be a clean cut at this point of time?

Why shouldn't we reorganize all the present information to make it a lot easier for beginners to find a way in by themselves?

E.g. there could be ONE column called archives or older Versions where ALL this old stuff is stored.



Yes, this doesn't focus on the topic you want to discus Sadr, but well, if you are a organizing genius why shouldn't you try to give as a concept for jme2 knowledge management improvement?



Personally I'm just a little game developer who wants to pimp up "slamsoccer 2006" but I'm going to correct each single mistake a find in tuts and so on, so that the next beginner can save some time.





Maybe it's really the right moment to organize the development process of jme 3 but it's also the right time to reorganize all the knowledge that is already there.

Custom said:
Yes, this doesn't focus on the topic you want to discus Sadr, but well, if you are a organizing genius why shouldn't you try to give as a concept for jme2 knowledge management improvement?
Anything that relates to jME's contemporary management and structure is very relevant to this thread :) I could definitely make an assessment of jME2's current structure and knowledge tree, but I don't know how well my proposals will be welcomed as there are people in here with years worth of experience with this part of the project. I will try though, I can promise you that.

With MomokoFan introducing his jME3, I felt this was the right time for me to offer my support to the project, as this new beginning gave me a chance to be part of a major compartment from the very beginning, thereby knowing it in and out and able to influence any part of the development that I might offer valuable insight on.


Important Update
mojomonk wrote:
It looks like you've done due diligence about taking over the site, no one seems vehemently against it. I certainly have no problem with it, I've only continued keeping the site paid for and up because no one else would. If you are ready to move to the next level, let me know how you want to proceed.
(...)
We're still talking about it, but for me the best case scenario would be to have control over Lunarpages while we prepare things at the new server and get things sorted beforehand here, e.g. I heard someone mention Hudson? ;) (no need to discuss that here, we can set up new threads about it to keep things sorted).

I will be going away for the weekend though, so don't expect any immediate updates following this one.
Momoko_Fan said:

I am also going to add, that the JOGL renderer in jME3, is planned to support all video cards with an OpenGL1.1 minimum requirement. Some changes in the latest local copy adds support for RenderState specification in the material files, which would give further support of fixed-functionality in jME3.

It is an excellent piece of news as the support of (at least) OpenGL 1.3 is an absolute requirement for my project. Let me know when you have a minimal structure to be able to test the AWT input system and the JOGL renderer.

Happy to hear the news about jme3.0.

I'm supporting Momoko_Fan, too.  :smiley:

My two cents: Personally, I've put a "stake in the ground" with jME 2.0 for my current project.  Like others have said, it's a work in progress that I keep re-starting with different engines, but I really think I've found a winner with jME2 and I have no intentions of pursuing any potential 3.0 branch any time soon.  If I actually get my app done, I will certainly consider porting it.  So the 3.0 branch will have as much time as it wants to add features and stablize before I expect anything from it.  However, I was just looking at Ardor3D and while I'm certainly not against competition, or creating an engine just for the sake of creating it, and I'm not trying to stir anything up, I am curious how the 3.0 branch would be substantially different from what is known about Ardor3D?

mjsimpson said:
I am curious how the 3.0 branch would be substantially different from what is known about Ardor3D?
That is a very good question, and I was planning to address it in some equivalent of an FAQ at some point, but we can give you the quick answer here first. The way Momoko_Fan has explained it to me, jME 3 will be the most different from A3D in that it will be optimized for games, and game rendering, instead of a broader, more general purpose. This was some time ago though, so as the code has matured it might be that his scope has adjusted to that. You should probably hold your tongue until momoko can get in here in provide a proper response.

Quick site progress update: Mark "mojomonk" has been waiting for a support ticket to come through in order to complete the transfer of his Lunarpage subscription over to me. It's expected to be done by today. Once I have control over the account I will start assessing what preparations will need to be made prior to the migration to the dedicated server. Before that however, I hope we can open some constructive discussions regarding what your priority changes are (wish list) with the new possibilities that comes with a dedicated server.

Update: Now got admin access to all user databases on the website, namely the forum & wiki, plus the SVN repo (though I won't be involved much if at all in the latter). Changed my nick to 'erlend_sh' for the sake of consistency, as all newer forums I'm on know me by this name now.

Powell really transferred ownership in its entirety to you? I haven't seen you much around the forumsā€¦ how long have you been using jME?



EDIT SIDENOTE: I dislike "Gorrilla Engine" or whatever it was. This seems to violate a fundamental rule of "marketing" by creating confusion with "customers." If you want to do something like that, why not steal from Linux and have different breeds of monkeys act as the layman's version? For instance Hardy Heron and Gabe Gorilla? Chuck Chimpanzee? Alfred Ape?

Trussell said:

Powell really transferred ownership in its entirety to you? I haven't seen you much around the forums... how long have you been using jME?
I've tried to explain (even defend) myself regarding that concern throughout this thread now, so to end it, I will only say this: If you don't see any reason to have faith in me, have faith in Momoko_Fan. He will have a much bigger role in this than I. I am merely trying to contribute whatever is at my disposal in order to improve the situation of this project.

EDIT SIDENOTE: I dislike "Gorrilla Engine" or whatever it was. This seems to violate a fundamental rule of "marketing" by creating confusion with "customers." If you want to do something like that, why not steal from Linux and have different breeds of monkeys act as the layman's version? For instance Hardy Heron and Gabe Gorilla? Chuck Chimpanzee? Alfred Ape?
The 'Gorilla' naming was just a tentative labeling for MomokoFan's codebase which at the time was aka 'jME 3.0 test', because he was not sure whether the community would embrace his attempt at a new start or if he'd have to start on his own (which I was prepared to do with him) like Ardor3D did.

With the majority having expressed faith in jME3, a name-change won't happen.
erlend_sh said:

Trussell said:

Powell really transferred ownership in its entirety to you? I haven't seen you much around the forums... how long have you been using jME?
I've tried to explain (even defend) myself regarding that concern throughout this thread now, so to end it, I will only say this: If you don't see any reason to have faith in me, have faith in Momoko_Fan. He will have a much bigger role in this than I. I am merely trying to contribute whatever is at my disposal in order to improve the situation of this project.


Don't get me wrong--I'm not concerned that you're not going to be fulfilling your duties. I'm just surprised that a relatively new member has taken such drastic leaps in the developer hierarchy and that Powell was able to readily transfer the culmination of several years of work to somebody so new.

Quite frankly, I find your initiative very inspiring. Since this has been such an upheaval, I think that this would be a good time for me to offer my services for developing jME 3.0. I'll be attending University next year and since writing games has been my hobby for the past year, I think I could be of some use to you.

Let me know what I can do to help, though I would like to make the suggestion that I be assigned to work on tools that will integrate with jME 3, since I feel that both versions 1 and 2 of jME lacked any direct support for a program like Valve's Hammer Editor.

Sorry then, I think I did 'get you' a bit wrongly :slight_smile:



That is a great offer you're making and I'll do my darndest to see to it that you follow up on it ;D You'll have a PM from me shortly.

Whoa, quite a lot has happened in the last few days  :-o

I see that you almost finished the transfer, hopefully all goes well  :slight_smile:


EDIT SIDENOTE: I dislike "Gorrilla Engine" or whatever it was. This seems to violate a fundamental rule of "marketing" by creating confusion with "customers." If you want to do something like that, why not steal from Linux and have different breeds of monkeys act as the layman's version? For instance Hardy Heron and Gabe Gorilla? Chuck Chimpanzee? Alfred Ape?

The package name is still called g3d and some parts of the code mention it. What should be the root package name? Should I change it to com.jme?

I was just looking at Ardor3D and while I'm certainly not against competition, or creating an engine just for the sake of creating it, and I'm not trying to stir anything up, I am curious how the 3.0 branch would be substantially different from what is known about Ardor3D?

At this point I think Ardor3D is attempting to satisfy a large audience, even more so, it seems the focus is mainly toward business 3d applications. For example, some of the changes that were made from jME2 include a shift from single-precision floating point to double-precision, which would increase accuracy, but as a consequence decrease performance and increase memory usage (not good for games and other performance-intensive applications). Another change would be the adoption of build systems like Maven and Hudson which work well for large-scale codebases.
Really Ardor3D is more jME than jME3 is (if that makes sense..). renanse took the entire jME2 codebase, and made changes to it from there. On the other hand, for jME3, I created many components from scratch while taking others from jME2. Renanse's path provides more compatibility with jME2 applications, but my path allows more drastic improvements to core components. So in short, jME3 and Ardor3D are quite different and aiming at different audiences and so not really competing with each over.

If only Activision made a game with jME. Codebase would expand 100-fold in like 3 weeksā€¦

Momoko_Fan said:

At this point I think Ardor3D is attempting to satisfy a large audience, even more so, it seems the focus is mainly toward business 3d applications. For example, some of the changes that were made from jME2 include a shift from single-precision floating point to double-precision, which would increase accuracy, but as a consequence decrease performance and increase memory usage (not good for games and other performance-intensive applications). Another change would be the adoption of build systems like Maven and Hudson which work well for large-scale codebases

Thank you for the detailed comparison of jme3 and Ardor3D.
I was planning to port our game to Ardor3D because there was no move to start jme3 and
now I have to reconsider this. :) If what you mentioned is right, I'll wait for jme3.
I think Ardor3D has simple but very important interface like ReadOnlyVector3.. etc.
Is there any plan to provide this kind of interfaces in jme3?
Where do I find the jme3 roadmap plan and suggest features?