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 ?
Heh. The first thing I thought of when I read the headline was the Ogre wargame from Steve Jackson. Just showing my age, I guess.
Lost: Sig, white with black letters. No collar. Reward if found!
OGRE is a well designed, flexible and easy to use 3D engine...
I hope this doesn't compete with my badly designed, rigid and difficult to use 3D engine I have been working on.
Outdoor digital photography, mostly in New Engl
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.
What I would really like to see is hardware 3D acceleration actually _working_. What I mean is that , these days, virtually every videocard supports accelarated 3D graphics. So far, however, I have not been able to take advantage of this, because either the card supports only Dircet3D (may it burn forever), or there is no OpenGL driver for Linux. Now you can blame me for buying the wrong hardware or even using the wrong OS, and rub it in my face that a UNIX-like OS is not for playing games, and I fully agree with that, but there is another option. How about a standard implemented in hardware, like VESA did for 2D graphics? OpenGL 2.0 seems to come a long way, but isn't out yet. Besides, I think OpenGL is extremely hard to implement efficiently in software. Any 3D engine just fails to interest me as long as my 256 MB RAM Duron 900 with `3D card' running Linux performs worse than my 486 DX2/66 with 16 MB running DOS with no such thing as 3D-acceleration. Now that comparison is slightly exaggerated, but sometimes I really feel that way.
---
``The nice thing about standards is that there are so many of them to choose from.''
-- Taken from http://www.talula.demon.co.uk/freebe/
Please correct me if I got my facts wrong.
Having never had the math skills to handle 3D graphics, just looking through the documentation for Ogre and it all sounds... well, easy.
Setup a scene, add some objects, add a camera object and point it round with a few simple methods!
[)amien
In the real world, the great majority of installed cards have accelerated OpenGL working for them under Linux. Even all my laptops just came with graphics cards that give me accelerated OpenGL, and I wasn't even looking for that.
If you really have some very old or obscure graphics card that either lacks drivers or is software-only, you can buy a usable, supported card for under $50.
As for software implementations being inefficient, that depends on what you mean by "OpenGL". Today, you can implement OpenGL features in software that required high-end hardware a decade ago. Of course, if you want today's high-end OpenGL features, you do need today's high-end hardware.
Good to see people are still trying to re-invent the wheel again
there are over 600 3d engines out there in various stages of completion, yet none of them are " really good(TM) "
3d engines have been done to death
so why can't developers focus and colaborate on making 1 really good engine and make it "perfect" instead of fragmenting into their own little GPL projects that are nothing more IMO than a waste of time ?.
I guess time is what programmers waste best
Actually, any porting is trivial for the person who doesn't have to do it.
I'm an American. I love this country and the freedoms that we used to have.
Almost all artists hate computers because most are not as technicly skilled as the programmers that make the engines.
Which is why the real beauty behind games like Unreal, Quake , etc... are in the people who write the tools for the artists. Without good easy to use tools, it doesn't matter how good your engine is.
Err...no ? Trolltech has been dual-licensing QT since forever.
Am I the only one who sees OGRE and thinks of giant tanks?
SO YOU'RE GOING TO DIE: The Comic for Dealing with Death
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.
Dude! I think you need to keep your ogre in your pants when posting on slashdot.
It looks and sounds great, but I'm not too fond of Free Software that only builds under a Microsoft compiler. Let's hope that linux port comes before 1.0.
To quote from the news item a bit down: A full Linux port is planned, temas is doing most of the work on this
Switch back to Slashdot's D1 system.
AFAIK (too lazy to lock for actual references) Carmack has said quite recently that DirectX is although feature-wise the same or even beyond OpenGL still harder and more cumbersome to work with. I doubt there is a significant performance difference between both engines, OpenGL is certainly not two times as fast. I'd argue that Direct3D gets commonly used because it's backed by Microsoft, which is probably a pretty compelling reason for any larger game developer.
Kinda guessing, though, it's not like I was some kind of insider.
Switch back to Slashdot's D1 system.
A significant amount of work has been done on mods to the Quake, Unreal and so forth engines by people who work in their spare time, which goes to show that as long as the base engine is competently done, there are more than enough people to pull off some amazing things.
Of course, many of these mod makers haven't embraced open-source development, keeping their work to themselves mostly in pipe-dream hopes of repeating the success of CounterStrike as much as preventing other mod teams from ripping them off.
Aye, if anything this is something to beat Id or Epic.
Switch back to Slashdot's D1 system.
I've been watching this project as its been moving along, and I must say its quite the posterchild for what can be done, I hope more people support it and help with development, until recently its been steve alone, now the development team is getting a lot bigger, I hope more people join in to make this a great engine.
Oh and with linux support, its being done Thomas 'temas' Muldowney of Jabber fame, so it won't be long.
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.
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.
You need a low-level graphics API to abstract different types of hardware. That's the real job of OpenGL and Direct-X. You might want a full game engine if you're building a game, and you can get those from a number of vendors. 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.
It's a request, not a requirement, and not an unreasonable request at that.
I've been looking for a full-featured 3D gaming engine for a while, as I wish to write a hobby game in my spare time. But since I want to keep the option of selling my game open to me, I can't use any of the currently existing 3D engines. Nor can I use the Quake 1/2 source. Why?
They are all GPL. While I will be the first person to admit that Free Software has its merits, it simply does not work for game software. Releasing a core component of a game under the GPL means that only GPL games can be made with it "That's great!" you may be saying. The only problem is that games are not just programming. They are programming, music, art, and level design. Musicians, artists, and level designers (even hobbyist ones) are used to making money for what they do. But since the core engine of the game is GPL, no money can be made on the game.
(Aside: And don't give me that line about how it's perfectly legal to sell Free Software. Sure, it's legal, but that doesn't mean it works. It's like another poster in another thread said: "Sure, I't's LEGAL for me to try to sell my used car for retail price, but it doesn't mean I'll be able to." Aside over.)
And you guys wonder why FreeCraft and FreeCiv have such lousy art. It's because there's no Free Art Foundation going around saying, "You should give your art away! It's immoral to charge for art!" Same thing for musicians. Same thing for level designers. Hell, same thing for just about any skilled work that combines technical expertise with creativity EXCEPT FOR PROGRAMMING.
The GPL doesn't work for gaming. Please, I'm begging you, stop releasing game libraries under the GPL. Release them under the LGPL or the BSD license. If you do, it means professionals can use and maintain them, benefiting and giving somthing back to the community. And we can all stop having to start from scratch (or use crappy middleware like NetImmerse) whenever we want to make a game.
Requesting and requireing are two different things.
The only problem is that games are not just programming. They are programming, music, art, and level design. Musicians, artists, and level designers (even hobbyist ones) are used to making money for what they do. But since the core engine of the game is GPL, no money can be made on the game.
This is completely and totally wrong. (Or it's an artfully constructed troll; can't tell which.)
You are only required by the GPL to release any changes you make to the engine itself. If you take the Q2 engine and make a game with your own models, textures, levels and game logic, you are not required to give away the models, textures, levels and game code.
Remember, the engine and game logic are seperate codebases: Id Software releases the game logic seperately from the engine code, and usually years before, so that mod authors can play with it. And of course, the GPL does not "infect" anything but code: your textures, skins, models and levels remain your own no matter what.
If you really need to make changes to the rendering engine itself (highly unlikely for a hobbyist game programmer) without giving away your code, consider looking at the Torque Engine, which you can license for $100 and a revenue-sharing agreement with GarageGames.
News for Nerds. Stuff that Matters? Like hell.
As allready pointed out by others earlier within this topic thread, the thing about the splash-screen is just a request (and a very fair one I must say), not a requirement, and thus doesn't clash with the GPL. You can still do as you see fit with the code, but if you base a program on OGRE you really should give credit where credit is due.
Using the LGPL would mean that also commercial game developers could use the engine royalty-free, which is a good thing in some cases and less good in other. Using dual licenses means that the author can milk any commercial projects for some money that could be put back into development, while free software developers can use the fruits of that for free.
Dual licenses can really be a big win for program infrastructure projects like this and I'm kind of surprised not more developers are using it. Commercial users pay for the product with real money that keeps the company alive, while the free software community contribute bugreports, improvements and some free work labor in return for free use, not to mention the free advocating, exposure and wider acceptance.
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.
Nah, it's much easier just to be good-looking! :)
My other account has a 3-digit UID.
German company Radon Labs released their game engine under a free licence (but not GPL nor LGPL). It has very impressive feature list, check their Sourceforge site. It already works on Linux.
--
I refuse to use
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.
Well, it could have been worse.
Yes, there are some games like that. But if we couldn't get the open source artists, there would still be a huge world of excellent games to be written.
Given how many free levels and total conversions there are for commercial games, I don't think this is even a problem, however.
Does CLI based UT sound all that appealing though?
No, but you could probably get UT-like gameplay with very simple graphics. And if you put out a UT-like engine and give users the hooks to add complex environments and landscapes, they will do it.
I just got a GF4, and let me tell you it absolutely smokes in Linux. It actually performs slightly better in Linux than windows, only too bad that there are few native Linux games. I run a couple games in winex too, but you lose some performance doing that, but the GF4 really helps, now I can run JK2 in 1024 with all details turned on and it runs great.
FWIW, games that run well in winex, usually run more stable than they do in windows, even win2k, but admittedly win2k is plenty stable enough for gaming.
I really hope OpenGL 2 will attract developers away from D3D, that sure would be good for Linux in the future.
Sticking feathers up your butt does not make you a chicken - Tyler Durden
section 2b of the GPL [gnu.org]: 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. [emphesis added]
This clearly refers to the source code, not add-on graphics, etc. Dynamic libraries are not "getting around" the GPL, the GPL is specifically designed to limit itself to the project(s) in question and its derivatives, not every usage of the project that doesn't directly incorporate its source code.
Furthermore, your artistic work is no more a part of the GPLed code that a word document you write with Open Office is a part of that GPLed project (and thus GPLed itself). You are propogating a Microsoft myth that has been debunked by numerous third parties, and by the Free Software Foundation itself.
If you were writing a game based on a GPLed game, then yes, your game would have to be GPLed. If, however, you are writing a game that uses a GPLed library (like Ogre or Crystal Space) the GPL does not extend beyond the boundries of the GPLed library unless you statically link it to your code, and then distribute that statically linked binary (something no one in their right mind would do in this day and age regardless of the GPL).
The GPL foists no trap upon developers, it protects the freedom of their projects from poachers like Microsoft, and it in no way coerces your project external to it into using the GPL, your protestations and denials notwithstanding.
The Future of Human Evolution: Autonomy
Strange that OO-ness is such a major feature that it found it's way into the name of the engine. I've never really thought of OO-ness as making or breaking an engine.