OGRE GPL'ed 3D Engine
Steve Streeting writes "Version 0.99b of OGRE (Object-oriented Graphics Rendering Engine) has been released! OGRE is a well designed, flexible and easy to use 3D engine released under the GNU Public License. This version adds highly customisable, scriptable particle systems, generic billboard support, compatibility with VC.Net, performance improvements and various bug fixes."
Judging from the screenshots, the engine is very capable, as it can even render Quake3 maps rather well. The problem is, does the open-source community have the artists needed to take this and make it into a playable and interesting game ?
Judging from screen shots and feature lists it's pretty much on par with Crystal Space. Although the latter doesn't have built in support for Q3A levels. (Would have been a nice way to compare them otherwise.)
I do know that some game engine courses at my uni use Crystal Space as the engine of choice. (But I haven't taken that course yet.) Seems like lot's of fun in any case.
From the site:
Temas joined the project in April 2002 and has been working hard on Linux porting and also generally on ANSI C++ compliance. He comes from a background of open-source development, and is currently a lead contributor to the Jabber open-source server as well as working on OGRE.
Linux port will probably be here shortly, I think.
Well be happy, it already compiles under Linux. I've been working hard on the Linux port and have the Core and Engine compiling currently, and should be in CVS now. I'm also working on the OpenGL renderer as I type this. I'm actually hoping to get some OpenGL screenshots tonight. It will just be a basic version, but it's a starting point.
Unfortunately, Utah-GLX was crappy and crashed a lot. Well, it did on my machine. I got a MGA G400 on the strength that their HW specs had been opened and a driver was being developed. Oh well, it's not like many other choices are well supported on Linux today. (I'm not too bitter now, tho, as Xfree 4's DRI version seems to work good)
I'd imagine so, OpenGL is pretty big. Of course, Brian Paul has already done the complete software implementation with Mesa (I guess everyone knows that nowadays, right?) but I doubt that any commonly available PC graphics cards support a full OpenGL state machine. It has too many features that are of little interest to the average games programmer for most companies to care that much to do it properly.Well, IMHO, y'know.
Be careful! New moon tonight.
If you read the page you have the option to pay him to get a non gpl version of the engine. You can download it and play with it now, and if you get to a point were you want to sell something buy the engine.
Crystal Space not active for a while!!!??? Based on what information do you make that statement? I'm the project manager of Crystal Space and the project is extremely active now. There are updates to the source nearly every day and lots of CS related/using projects are emerging. Especially take a look at http://www.planeshift.it, a free MMORPG using Crystal Space. They have very good artists.
Greetings,
Project Manager of Crystal Space (http://www.crystalspace3d.org). Support CS at http://tinyurl.com/cb3x4
You write:
...
> I can't use any of the currently existing 3D engines
Did you consider looking at an LGPL licensed engine? LGPL allows your program to link with such an engine without requiring your own source code to be GPL/LGPL or whatever.
Crystal Space is such an engine. I'm the project manager of that engine. Take a look at http://crystal.sf.net
As a bonus CS works on Linux, Windows, MacOS/X,
Greetings,
Project Manager of Crystal Space (http://www.crystalspace3d.org). Support CS at http://tinyurl.com/cb3x4
Uh, no, completely right. See section 2b of the GPL: You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. I don't see any way around that. Of course, there is the possibility of dynamic linking with the library to get around the GPL, which was debated here a number of months ago, but without the library, the program would effectively be unusable, so I don't know if that would work.
;-), and that steam will work to deflect certain economic realities from entering consideration, which, which while perhaps being "unpleasent" are nonetheless real in the world we live (just as was and is true with communism and capitalism as social systems)
Paul Guyot, who has worked for over a year on a Apple Newton ATA driver (which was been mentioned on Slashdot at one point), refuses to work on GPL projects. I don't know all his reasons, but one main one is that GPL software tends to be hard to compile, hard to use, hard to configure, and generally you have to be a gear-head to get anything done with it (okay, that last reason was my little flourish, but you get the idea). There are some notable exceptions: GIMP for one, and it's offspring MacGIMP. But then, I haven't installed or used MacGIMP yet. How do I know that somewhere in it I won't get an inscrutable error having to do with the Fink under-structure? In addition to working for a year on this driver with a basically undocumented operating system, he has killed two development units. Do you think that someone who has invested that kind of time, energy, and money is going to release under a license that forces him to give up any propect of making money off of it? I don't, and neither does he.
I'll probably get modded way down for this, but hell, my karma is only 14 anyway.. I generally agree with the idea of the FSF, just not all of the means. The idea that "By releasing libraries that are limited to free software only, we can help each other's free software packages outdo the proprietary alternatives. The whole free software movement will have more popularity, because free software as a whole will stack up better against the competition." [http://www.gnu.org/philosophy/why-not-lgpl.html] is a good one, but I think it partly fails in that there will always be commerical software, or ever shareware. The GPL is basically incompatible with the idea of making money off of personal work. True, maybe programmer's should just program for the fun of it, for the joy of it, for the intellectual curiosity of it, yadda, yadda, yadda. But some also want (and need) to do it to eat.
Requireing all GPL software to be released in source form basically nullifies the idea of making any kind of income off of software, unless either (1) your clients are very generous, or (2) the software is very good. Hell, it might be that the better the software is, the fewer people will pay for it (but the people who do pay may pay more, I don't know if that would balance - has anyone done any economic/psycholofical studies of payment and the GPL?) That statement in favor of the GPL over the LGPL also presupposes that there is a large base of easy to use, compelling free software out there already. As I see it, there isn't. Oh, there is if you want to go that way phiposophically, but not otherwise. To make a very bad real-world analogy: the combustion engine I don't believe that the internal combusion engine would have achieved the dominence it did if it were GPL'd immidiately after being invented. (bad analogy for one becasue the ICM is a physical product). Oh, it would have, someone else would have just "reinvented" it. The GPL offers a "freedom" of sorts with respect to knowledge, but it also places very severe restrictions on anyone trying to make a guaranteed income-stream of of something (the counter-argument, of course, is that the software will be pirated anyway if it's any good). The restrictions of the GPL are stict enough, that I believe it will drive away perhaps as many people as it attracts.
One might say, well, you could always ask the person to dual-license, but (1) the author may be unwilling to do that, not becasue it doesn't make sense (economically or in a real-world sense) but on philosophical grounds alone, and (2) it's not clear how this works if the original work is itself a derived work from other GPL code. The FSF has gathered an enourmous amount of steam in the computing community ("psychohistorical inertia" as Prof. Seldon might put it
To the end of his objection the lack of good documentation of GPL software that he sees, he has drafted a license that seeks to address this, the Kallisys Reflexive License which requires that all modifications have documentation of source code changes, but does not require source code to be released. It is incompatible with the GPL, becasue the GPL requires strictures on the code beyond the KRL. This is the GPL's "freedom". (of course, the same could be said of communism, and some have described the FSF as neo-communist)
One very interesting thing I note about the GPL is this: in section 3b, it states: [distirbute in executable code if you] Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy [...] This seems backward to me. The idea whould be that you can charge money for it (or "force people to pay" if you prefer) for a specified period of time, after which it must become open-source. This would prevent abandon-ware. If this sane alternative had been adopted by the major computer companies back in the seventies and eighties, Paul wouldn't have had to work for a year on his driver, becasue the Newton source would be out by now!
I agree with the FSF's intentions, and their opposition to software patents, DRM, etc, etc. But in my mind, it goes to far. Freedom should also be about choice. People should not be forced into releasing source, and large corporations are not going to be in the near future (as one other Slashdotter said, "the GPL gives Apple layers hives"). As a way to prevent abandonware like the Newton, Quickdraw 3D (now basically, but not completely, a moot point), OpenDoc, etc, etc (I'm sure that companies other than Apple also have some very interesting stuff buried in their vaults, never again to see the light of day..)
Putting together a "compromise" organization like this would not be easy - witness now Rosetta - the printing recognizer for the Newton - will finally see the light of day in MacOS X "Jaguar" as InkWell. If my idea of a standard "abandonware clause" had been adopted with a three year limit, this would be impossible, and Apple would be in the same trap I accuse the GPL of foisting on programmers. I think the FSF has taken the easy way out, opting for an extremem communist-style "solution". But real-life, and the real-world (even the ones we create ourselves) are messy, and not ammenable to easy but extreme solutions, like pure social communism (Soviet Union), or pure social capitalism (the US in many ways), or, I fear, the FSF.
The first poster is wrong in that he won't be able to make money from the game. Most GPL:ed 3D engines are available under dual licenses, the GPL and one commercial license that comes with a fee. That is perfect for him since he can start developing without a commercial license and then get a commercial license if/when he decides to release the game commercially. Just be sure to check the details of the license first though and possibly get some kind of guarantee that they won't change the commercial licenses during your development.
The second poster is somewhat wrong in his interpretation of the GPL. You do have to release your entire codebase under the GPL, but not the textures, models etc.
The GPL works on a program-wide level while the LGPL works more like the above poster described (but not entirely, you are for example required to keep the LGPL:ed codebase in a DLL, which shouldn't cause the developer any bigger troubles but gives the user the benefit of being able to modify or replace the LGPL:ed part of the program), so I guess he mixed them up a bit.
It's a nice piece of work, but it solves a problem that nobody needed solved.
I'm glad you don't have a problem with calculating and drawing all visible polygons in a 50 000 poly-based world as quickly as possible. Some of us do.
Ogre is a "high-level scene graph engine". This is a level above a standard 3D rendering API, like OpenGL, but a level below a general-purpose game engine. Unfortunately, while high level scene graph engines seem plausible, they're not very useful.
I'm not sure what you mean by plausible - since Scene Graphs are not just theoretical: they work extremely well for their purpose. They are very useful, probably the fastest general purpose method for drawing large scenes available today.
There are quite a few of these things. SGI Inventor was the first major one. Apple had one in Quicktime 3D. Direct-X has one, but Direct-X is mostly used as a low-level drawing API. One was announced for OpenGL (it was called Farenheit) when SGI and Microsoft lost interest, it didn't really bother anybody.
Meanwhile in the year 2002, there are quite a few scene graphs available for many platforms. One of the best is Open Scene Graph, an LGPLed library which is used for games, demos and high-end visualisation systems. Not to mention Ogre itself which looks very sweet indeed.
You need a low-level graphics API to abstract different types of hardware. That's the real job of OpenGL and Direct-X.
Direct-3D I think you mean.
You might want a full game engine if you're building a game, and you can get those from a number of vendors.
You might also want to consider what 95% of game writers do and that is to select the best tools for the job and assemble them yourself. Graphics and rendering tends to be 10% of the typical code base for a commercial game - the bulk is AI, gameplay logic, resource management, menus, and supporting tools.
But mid-level APIs just aren't all that useful. You have to do things their way, but they don't do enough of the job to justify the trouble.
I suppose if you're looking for a game engine which does everything for you while wiping your nose and holding your hand, then a mid-level API won't be very useful. For a game writer looking to solve the one big problem of overdraw, a mid level API like Ogre or OSG is an excellent solution. Plug it in and it does the clipping, culling and drawing work for you. I know from personal experience that OSG is superb at this job - adapting equally well to visualisation, flight simulation and terrain rendering. Ogre's screenshots tell a similar story. Want a Quake 3 level? Load it and Ogre adds it to the graph and takes care of the rest.
--- Hot Shot City is particularly good.
What are you *talking* about? If what you're saying is true, then all of idSoftware's maps would now be free, because the q1/q2 engines have been GPL'd. As it turns out, the GPL only applies to part of that program.
Furthermore, the copyright holders can relicense under something other than GPL so you can still play your idea-ownership games if you must.
microsoftword.mp3 - it doesn't care that they're not words...