Ardor3D - love it, might want to help
Forum rules
Developer discussions only. Newbie questions belong in the HELP! forum. This is a forum for discussing development work on the Ardor3D core systems. Basically, anything that is in the ardor3d-core, math or savable modules.
Developer discussions only. Newbie questions belong in the HELP! forum. This is a forum for discussing development work on the Ardor3D core systems. Basically, anything that is in the ardor3d-core, math or savable modules.
7 posts
• Page 1 of 1
Ardor3D - love it, might want to help
First of all, I apologize if this is the wrong forum for this topic, so feel free to move it if necessary. Anyway, I have been looking at game engines recently, preferably Java based, and I came across Ardor3D and I am intribued by it, and I wanted to ask a bit about your goals and direction and see if they align with mine. If so, I would be willing to contribute to this project in a big way, and I think I have some skills that could be very useful.
About me - I have been developing professionally for over 17 years, and many years before that semi-professionally (i.e. smaller projects while in college, etc.). I started out as a C++ developer, but caught the Java bug in 1999 and have never looked back. I think I have worked on 1 smaller C++ project since then, and it was painful and I have no desire to do it again, which is why I am focusing on Java-based engines.
I am just starting out in the gaming area. I did play around quite a bit with game development back in college and my early career - we're talking 15-20 years ago. Think Castle Wolfenstein days, when the newest thing was raycasting engines and we didn't even know what a scenegraph was. So I am still getting up to speed with the nuaces of modern game development (which is why I am looking at existing engines - no point reinventing the wheel).
What I do have is extensive experience in OSGi and Eclipse RCP development. I started developing in-house Eclipse plugins for my day job 7-8 years ago, and over the last couple of years we have been leveraging that experience into moving our core server-based products onto an OSGi framework. One of the things I'm working on right now at my real job is a distributed licensing, provisioning and updating system for OSGi. I won't bore you with the details (unless you are interested), but that's just an example of some of the work I am doing which I could see benefitting other projects, like maybe Ardor3D.
What I would like to see eventually is an OSGi-based gaming platform, where you could plug in different rendering engines, physics engines, sound engines, etc. through a centralized API. On top of this you could build a more advanced gaming framework that would be highly customizable depending on your needs. And the final piece of the puzzle is advanced tooling provided through Eclipse plugins. I realize that's a lofty goal, and I know it won't happen overnight. But you've got to start somewhere, right?
Like most people interested in Java engines, I started off looking at JME. It looks like a nice project, but I'm not exactly excited by the direction they are going in. I was very disappointed to see on their forums that any inquiries into using OSGi were pretty much met with the attitude "meh, why would you want to do that". That attitude makes me wonder how many people have actually tried to use it on large sophisticated projects, since most people who have worked on those types of projects would immediately see what OSGi brings to the table. Another thing I didn't like (and this is a completely personal opinion) was their choice of Netbeans for their tool platform. Nothing against Netbeans in general, but I use Eclipse, and despite its warts it's still a good platform, and I think has a much larger installed based of users than Netbeans, and certainly a more active community (especially now that Sun has been swallowed up by Oracle). And another, completely personal, prejudice - I just can't stand Swing. I've written many apps in both, and SWT is a far superior framework than Swing IMHO. In fact one project I'm finishing up at work right now is porting our last remaining Swing app to SWT/RCP - yay!
Alright, that's enough of my rambling. Let me know if you think I am headed in the right direction, you agree with that direction (or some of it) for Ardor3D, and if I can help out with making that a reality. And if you don't agree, that's fine too, please enlighten me as to where I am off base. Like I said, the game part of all this is new to me, so it's very possible I have overlooked some critical aspects that makes my vision impractical, and I welcome (constructive) feedback there as well to help me see the light!
Mike
About me - I have been developing professionally for over 17 years, and many years before that semi-professionally (i.e. smaller projects while in college, etc.). I started out as a C++ developer, but caught the Java bug in 1999 and have never looked back. I think I have worked on 1 smaller C++ project since then, and it was painful and I have no desire to do it again, which is why I am focusing on Java-based engines.
I am just starting out in the gaming area. I did play around quite a bit with game development back in college and my early career - we're talking 15-20 years ago. Think Castle Wolfenstein days, when the newest thing was raycasting engines and we didn't even know what a scenegraph was. So I am still getting up to speed with the nuaces of modern game development (which is why I am looking at existing engines - no point reinventing the wheel).
What I do have is extensive experience in OSGi and Eclipse RCP development. I started developing in-house Eclipse plugins for my day job 7-8 years ago, and over the last couple of years we have been leveraging that experience into moving our core server-based products onto an OSGi framework. One of the things I'm working on right now at my real job is a distributed licensing, provisioning and updating system for OSGi. I won't bore you with the details (unless you are interested), but that's just an example of some of the work I am doing which I could see benefitting other projects, like maybe Ardor3D.
What I would like to see eventually is an OSGi-based gaming platform, where you could plug in different rendering engines, physics engines, sound engines, etc. through a centralized API. On top of this you could build a more advanced gaming framework that would be highly customizable depending on your needs. And the final piece of the puzzle is advanced tooling provided through Eclipse plugins. I realize that's a lofty goal, and I know it won't happen overnight. But you've got to start somewhere, right?
Like most people interested in Java engines, I started off looking at JME. It looks like a nice project, but I'm not exactly excited by the direction they are going in. I was very disappointed to see on their forums that any inquiries into using OSGi were pretty much met with the attitude "meh, why would you want to do that". That attitude makes me wonder how many people have actually tried to use it on large sophisticated projects, since most people who have worked on those types of projects would immediately see what OSGi brings to the table. Another thing I didn't like (and this is a completely personal opinion) was their choice of Netbeans for their tool platform. Nothing against Netbeans in general, but I use Eclipse, and despite its warts it's still a good platform, and I think has a much larger installed based of users than Netbeans, and certainly a more active community (especially now that Sun has been swallowed up by Oracle). And another, completely personal, prejudice - I just can't stand Swing. I've written many apps in both, and SWT is a far superior framework than Swing IMHO. In fact one project I'm finishing up at work right now is porting our last remaining Swing app to SWT/RCP - yay!
Alright, that's enough of my rambling. Let me know if you think I am headed in the right direction, you agree with that direction (or some of it) for Ardor3D, and if I can help out with making that a reality. And if you don't agree, that's fine too, please enlighten me as to where I am off base. Like I said, the game part of all this is new to me, so it's very possible I have overlooked some critical aspects that makes my vision impractical, and I welcome (constructive) feedback there as well to help me see the light!
Mike
- txmikester
- newcomer
- Posts: 3
- Joined: Mon Aug 16, 2010 2:11 pm
- Location: Houston, TX
Re: Ardor3D - love it, might want to help
Hey Mike,
Welcome and sounds like you're in the right place.
We could definitely use some help setting up and improving our OSGi / RCP integration story. If you'd like to contribute, we'd love to have your help. See here for a little blurb on contributing. We already have some folks using Ardor3D that way (including NASA) so I'm sure we can get help on the testing whatever we come up with. We also have a few contacts at the Eclipse foundation who might lend us a friendly ear should we want to set up some kind of formal relation with them.
Anyhow, I'd especially be interested personally in hearing ideas on how we can make Ardor3D more friendly to OSGi without also forcing it on anyone who is simply just using the engine. In regards to tools, we've already begun tinkering with a toolset in RCP and could always use help there, though we are still deciding what our story will be in regards to professional tools vs community tools (we want to find ways to make enough to keep supporting ardor3d without it also being an unreasonable burden on our users, etc.)
PS: It's gratifying to hear of jME as a starting point... makes those years of evangelizing jME during my time as one of its main developers feel more worth it.
Welcome and sounds like you're in the right place.
Anyhow, I'd especially be interested personally in hearing ideas on how we can make Ardor3D more friendly to OSGi without also forcing it on anyone who is simply just using the engine. In regards to tools, we've already begun tinkering with a toolset in RCP and could always use help there, though we are still deciding what our story will be in regards to professional tools vs community tools (we want to find ways to make enough to keep supporting ardor3d without it also being an unreasonable burden on our users, etc.)
PS: It's gratifying to hear of jME as a starting point... makes those years of evangelizing jME during my time as one of its main developers feel more worth it.
Gratitude is a mark of a noble soul and a refined character.
-

renanse - Site Admin
- Posts: 2955
- Joined: Tue Oct 28, 2008 6:49 pm
- Location: Austin, TX
Re: Ardor3D - love it, might want to help
Great, let me spend a few days digging through the source code and playing with things, and I'll see what I can come up with once I know exactly where we're starting from.
You bring up a good point about supporting OSGi without forcing it on people. I hadn't really thought about it that way, probably because for the last year or so we've been 100% OSGi-focused at work. But you're right, it should be optional. That may be somewhat of a challenge, but I'm sure it can be overcome. At the most basic level of course, we can just make sure everything has an OSGi manifest, but that's not really taking advantage of all that OSGi has to offer. Leveraging the full power of the service registry without REQUIRING it - hmm, could be a little tricky. Off the top of my head, maybe using Maven tricks to build 2 different versions of bundles, but that's not particularly elegant. Well, it is definitely something I will keep in mind as I peruse the code.
You bring up a good point about supporting OSGi without forcing it on people. I hadn't really thought about it that way, probably because for the last year or so we've been 100% OSGi-focused at work. But you're right, it should be optional. That may be somewhat of a challenge, but I'm sure it can be overcome. At the most basic level of course, we can just make sure everything has an OSGi manifest, but that's not really taking advantage of all that OSGi has to offer. Leveraging the full power of the service registry without REQUIRING it - hmm, could be a little tricky. Off the top of my head, maybe using Maven tricks to build 2 different versions of bundles, but that's not particularly elegant. Well, it is definitely something I will keep in mind as I peruse the code.
- txmikester
- newcomer
- Posts: 3
- Joined: Mon Aug 16, 2010 2:11 pm
- Location: Houston, TX
Re: Ardor3D - love it, might want to help
Hey Mike,
thanks for the nice introduction and welcome to Ardor3D.
Amen
I love Eclipse and have written plugins and apps using RCP myself but I have made a different experience regarding "more advanced" and "highly customizable".
If you want a platform which allows for different rendering engines, physics engines and sound engines you need to find the lowest common denominator.
This contradicts the desire for an advanced gaming framework, where you want the coolest, most cutting edge, "other engines don't have" features...
So IMHO, OSGi: yes, different rendering engines, physics engines, sound engines: no...
That would surely be nice
Ray.
thanks for the nice introduction and welcome to Ardor3D.
txmikester wrote:I think I have worked on 1 smaller C++ project since then, and it was painful and I have no desire to do it again, which is why I am focusing on Java-based engines.
Amen
txmikester wrote:What I would like to see eventually is an OSGi-based gaming platform, where you could plug in different rendering engines, physics engines, sound engines, etc. through a centralized API. On top of this you could build a more advanced gaming framework that would be highly customizable depending on your needs.
I love Eclipse and have written plugins and apps using RCP myself but I have made a different experience regarding "more advanced" and "highly customizable".
If you want a platform which allows for different rendering engines, physics engines and sound engines you need to find the lowest common denominator.
This contradicts the desire for an advanced gaming framework, where you want the coolest, most cutting edge, "other engines don't have" features...
So IMHO, OSGi: yes, different rendering engines, physics engines, sound engines: no...
txmikester wrote:And the final piece of the puzzle is advanced tooling provided through Eclipse plugins.
That would surely be nice
Ray.
- paranoidray
- Officer
- Posts: 174
- Joined: Sat May 01, 2010 8:29 pm
Re: Ardor3D - love it, might want to help
love Eclipse and have written plugins and apps using RCP myself but I have made a different experience regarding "more advanced" and "highly customizable".
If you want a platform which allows for different rendering engines, physics engines and sound engines you need to find the lowest common denominator.
This contradicts the desire for an advanced gaming framework, where you want the coolest, most cutting edge, "other engines don't have" features...
So IMHO, OSGi: yes, different rendering engines, physics engines, sound engines: no...
Good point. I think the main thing I am looking for is an extensible platform I can build higher level frameworks upon. That is the top priority for me. Pluggable engines, etc. are nice to have, but if we have to sacrifice speed/quality/architecture then yeah, it's not worth it.
- txmikester
- newcomer
- Posts: 3
- Joined: Mon Aug 16, 2010 2:11 pm
- Location: Houston, TX
Re: Ardor3D - love it, might want to help
paranoidray wrote:I love Eclipse and have written plugins and apps using RCP myself but I have made a different experience regarding "more advanced" and "highly customizable".
If you want a platform which allows for different rendering engines, physics engines and sound engines you need to find the lowest common denominator.
This contradicts the desire for an advanced gaming framework, where you want the coolest, most cutting edge, "other engines don't have" features...
So IMHO, OSGi: yes, different rendering engines, physics engines, sound engines: no...
The problem is that we might not agree with using the same "cool" things... For example, Lots of people here use LWJGL whereas the NASA, some other public and private organizations and I use JOGL. I use a sound engine written by Paul Lamb whereas some other people use other solutions based on OpenAL, FFMPEG or Java Sound. I need only a very rudimentary physics engine whereas JBullet is a better alternative in much complicated cases.
So in my humble opinion, OSGI: yes, different OpenGL/OpenGL-ES/OpenAL bindings: yes, different physics engines: yes, different sound engines: yes.
It is possible to get a quite "pluggable" engine without sacrifying the performance and it gives even a better code design, a better separation of concerns (it forces not to put explicit calls to OpenGL bindings inside the core for example).
- gouessej
- regular
- Posts: 1186
- Joined: Fri May 01, 2009 3:26 am
- Location: France
Re: Ardor3D - love it, might want to help
Heya! I think you have definitely come to the right place, and seems like someone we would love to get input from. I've done a lot of Eclipse RCP work over the last years so basing a tool on that is a definite first choice for me. Looking forward to many discussions on both engine development in regards to osgi as well as tool dev. Welcome!
Destroy, Erase, Improve
-

MrCoder - Site Admin
- Posts: 755
- Joined: Mon Nov 03, 2008 8:56 am
- Location: Stockholm, Sweden
7 posts
• Page 1 of 1
Return to Core Development Discussions
Who is online
Users browsing this forum: No registered users and 1 guest