Become a fan of Slashdot on Facebook

 



Forgot your password?
typodupeerror
×
Graphics Software

OGRE GPL'ed 3D Engine 262

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."
This discussion has been archived. No new comments can be posted.

OGRE GPL'ed 3D Engine

Comments Filter:
  • Looks nice, but.... (Score:5, Informative)

    by dnaumov ( 453672 ) on Sunday June 09, 2002 @07:58PM (#3670380)
    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 ?
    • by ulrhol ( 220140 )
      What about utilizing the already existing model libraries of LEGO. LDraw has a large numbers of pieces which quite easily could be turned into a FPS Lego Game ;-)
    • I can imagine so. Not only because you can probably consider all individual map- and texture-makers working in an "almost open-source" environment already. Sure, there might have been some debate recently [slashdot.org] over who owns mods created for a specific game, but on the whole game designers seem to encourage this kind of behavior by not restricting mod creation too unreasonably. We can only hope Verant doesn't become a big player in moddable games.

      Some might say some open-source games [dmoz.org] to be fairly pretty already. Admittedly, there aren't many open-source 3-D games out there, but the more people can use a 3-D engine the better they get -- like pretty much anything -- so we have only good things to look forward to.

      Well, we also have bad things to look forward to until then, but we've always had to deal with this anyway.
    • by g4dget ( 579145 ) on Sunday June 09, 2002 @08:58PM (#3670600)
      You don't need artists to make a "playable and interesting game", you need smart game designers. Nice visuals is icing on the cake. Sadly, many game design companies these days make the same mistake: they assume that great graphics makes for great game play. In some cases, I think graphics actually detracts from game play; for example, I like Nethack a lot better than the graphics-based equivalents--the monsters I can imagine in my head are a lot more interesting than the cheesy commercial graphics that kills the imagination.

      I would actually argue that many, perhaps most, great game designs originated in open source or the public domain. Those designs were then picked up by commercial gaming companies, branded, trademarked, and augmented with lots of graphics.

      • the monsters I can imagine in my head are a lot more interesting than the cheesy commercial graphics that kills the imagination.

        So in other words, bad graphics kill the game? Congratulations, you just contradicted yourself. Maybe you should change your opinion to "if you can't do it well, don't do it", which also applies to posting on slashdot.
        • So in other words, bad graphics kill the game?

          No, I'm saying that any graphics can make a game less interesting because it removes an element of the imagination (I was comparing it to nethack, in which some scary monsters look like "V", "c", "&", and "h"). What is scary or interesting or beautiful to even the most skilled artist may just not be so for you or me. Symbolic representations let me use my imagination.

          That isn't to say that good graphics are automatically bad, I'm just saying that elaborate graphics are neither necessary nor sufficient for a good game.

      • You may not need good art to make a good game, but you do need them to market a popular game. Every review will feature screen shots.

      • > You don't need artists to make a "playable and interesting game", you need smart game designers. Nice visuals is icing on the cake. Sadly, many game design companies these days make the same mistake: they assume that great graphics makes for great game play. In some cases, I think graphics actually detracts from game play; for example, I like Nethack a lot better than the graphics-based equivalents--the monsters I can imagine in my head are a lot more interesting than the cheesy commercial graphics that kills the imagination.

        I play Angband [angband.org] with the graphical display, but otherwise I agree with the gist of your post. I used to keep a Windows partition for the sole purpose of booting up to play a game now and then, but in the mid-late 90's I bought several games in a row that had first-rate graphics and fourth-rate play, and I simply lost interest in commercial games. (Actually, even more recently I bought Lokisoft's CivIII for Linux, and found that the trend has continued: the graphics are dazzling, but the game is boring as hell. I find myself playing crappy-graphics Freeciv instead.)

        Like so much else in IT (and as some of the other replies to your post seem to tacitly admit), marketing has taken the driver's seat in commercial game design, and products have suffered for it.

      • You don't need artists to make a "playable and interesting game"

        I think you undervalue the role of artists in the creation of a successful game. At the heart of every great game is *great game design*, and if a game is lacking that, no amount of pretty graphics/sound/fluff/etc is going to make it fun. This much, I think, is incontrovertible, and I agree with you on this. I also agree that in some cases, graphics actually detract from the fun! It's entirely possible to have an excellent game without great audiovisuals... look at Angband, Nethack, Robotron (my all-time fave twitch game), Asteroids, the classic coin-ops, etc.

        But for many types of games, where character, atmosphere, and story play a more prominent role, I think artists ARE indispensible. Take a game like Metal Gear Solid, Tie Fighter, Chrono Trigger, Final Fantasy Tactics, Final Fantasy 6, or Soul Calibur. They have great game design at heart, but I don't think they'd be nearly as enjoyable without the art that went into them as well.

        Or, if you want another angle, look at the classic Infocom text adventures. In a sense, he interesting writing, locations, characters, and stories were fluff or "icing", as you put it. The actual "game design" of an Infocom game was a series of puzzles that often made no sense at all, at least to me. :) It was the fluff that made the experience fun though, as it definitely pulled you into the fantasy. Without the fluff it would have been merely an exercise in machocism for the player!
        • I think you undervalue the role of artists in the creation of a successful game.

          I was talking about what I consider "good" games, not "commercially successful" ones. Civ and Myst are commercially successful, but I don't think they are very good ones.

          But for many types of games, where character, atmosphere, and story play a more prominent role, I think artists ARE indispensible.

          Well, I didn't claim that no game ever benefits from graphics, I merely stated that I think that many excellent games can be written with no or minimal graphics. And those are the games that open source developers might concentrate on if they can't find open source artists.

          • I think you're totally wrong. UT with good graphics is more fun than UT with bad graphics. TTY quake is a horrrid abomination, and while an amazingly cool exercise, it's no fun to actually play. Games certainly benefit from graphics. A game can be good without good graphics. But bad graphics (or sound, or whatever) can make a good game less fun, and good ones can make a good game excellent.
            And, as with all things open source, if someone WANTS to make it, they will - hence the existence of (several) open source 3d engines. Also an annoyingly huge amount of cookie-cutter crap angband mods. Open source is not immune to people making crappy fluff.
      • In some cases, I think graphics actually detracts from game play; for example, I like Nethack a lot better than the graphics-based equivalents

        You and about the rest of the 0.0001% of gamers that feel this way. Not suggesting you should follow the herd, but this argument has gotten really tired. Most avid nethack fans play the game with sepia-tinted glasses of nostalgia, and frankly that's not a great way to approach something new.

        I would actually argue that many, perhaps most, great game designs originated in open source or the public domain. Those designs were then picked up by commercial gaming companies, branded, trademarked, and augmented with lots of graphics.

        Your point would itself be augmented with lots of examples.
      • Actually, artists or on the other side of the visuals vs. gameplay debate. Good artistry is not the same thing as good graphics. Good artistry is about taking whatever the capabilities of the engine and hardware is and making something asthetically pleasing to the user. On the other hand, a lot of games today are just how many particles the engine can throw onscreen at 60fps.
    • artists need tools. (Score:2, Interesting)

      by Steveftoth ( 78419 )
      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.
    • 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.

  • Steve Jackson's Ogre (Score:2, Interesting)

    by bsartist ( 550317 )
    Heh. The first thing I thought of when I read the headline was the Ogre [sjgames.com] wargame from Steve Jackson. Just showing my age, I guess.
  • by Anonymous Coward
    Here's the sourceforge link [sourceforge.net]. Does anyone know if this works on Linux? It's listed as windows only on sourceforge.
    • The bar on the right side of the front page says "Win32/Direct3D support but porting trivial." I'm assuming that's meant as an invitation :)
    • Its all Direct3D based right now, but seems to be fairly well abstracted...Someone would need to port it to OpenGL for it to work under Linux (or force people to run it under WineX maybe).
    • Re:Windows only? (Score:3, Informative)

      by Drahca ( 410495 )
      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.
    • To quote from the news item a bit down: A full Linux port is planned, temas is doing most of the work on this
  • by MongooseCN ( 139203 ) on Sunday June 09, 2002 @08:04PM (#3670420) Homepage
    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.
  • by Hast ( 24833 ) on Sunday June 09, 2002 @08:05PM (#3670422)
    Judging from screen shots and feature lists it's pretty much on par with Crystal Space [sourceforge.net]. 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/
    • Besides, I think OpenGL is extremely hard to implement efficiently in software.

      A nice man call John Carmack would probably disagree with you there.

      Dave
      • by Phil Wilkins ( 5921 ) on Sunday June 09, 2002 @10:20PM (#3670844)
        JC writes to OpenGL, he does not implement it, that's the job of the driver writers. Writing to OpenGL is piss easy. Writing an OpenGL driver, or worse, a complete software implementation of OpenGL, is a fucking nightmare.
        • by Tomble ( 579119 ) <tomble AT usermail DOT com> on Sunday June 09, 2002 @11:00PM (#3670979) Homepage Journal
          JC writes to OpenGL, he does not implement it, that's the job of the driver writers
          Well generally, yes. Except that he helped develop the Utah-GLX Open-GL drivers for Xfree86 3.3.

          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)

          Writing an OpenGL driver, or worse, a complete software implementation of OpenGL, is a fucking nightmare
          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.

      • Actually, your argument provides a nice counter-example. How much nicer was QuakeGL then Quake? And QuakeGL still didn't use all of OpenGL, even for the time. Transparency was so hard to do in software that Quake II still used stippling instead in software.

        Even the geniuses at iD didn't get software OpenGL-class software renderers. It would have been too slow.
    • If you keep repeating that it's hard to get accelerated OpenGL under Linux, someone might start believing you.

      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.

      • Well, the only OpenGL implementation I've ever gotten to work on my Linux boxen is mesa, and at it's awfully slow. For exmaple, I've never gotten it to render CrystalSpace's walktest at more than 1 frame per second. I currently have two machines that supposedly support OpenGL, one with a savage2000-based card (I believe a Diamond Viper II), and one laptop with a Trident Cyber/BladeXP. Maybe it's just me, but I have not been able to find drivers for either one. Now I haven't searched for Viper II drivers for about a year now, and the Trident card seems pretty new, but with hardware-independent support, things would work straight out of the box.
        • Well, again, just look around for another card. There are many boards with nVidia and ATI chips that give excellent performance and are very cheap. Quake3 on Linux with one of those cards runs as well as it does on Windows, for example.
    • So why don't you stop whining and buy a 3d video card from a vendor that currently supports linux.

      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.

  • This will no doubt do wonders to the speed and usage of GNOME.
  • 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!
    • Actually, math to handle 3D is not that hard. All you need are 4x4 matrix (or 3x4 if you want) and vectors, then you just compute cross product, matrix multiply, etc. What's hard is to make it fast.
      • I would agree with this - but I would go one step further and say that what is really hard (other than making it fast, which is pretty tough) is going beyond simple polygons with shading (which isn't the easiest at first), to full texture mapping, then shading, then all the other effects.

        Also, moving from a single "cube" (your standard first object, IMO) to multiple cubes, to world representation with cameras, light sources, etc - gets tough, especially in regards to speed (ie, object culling based on view, etc). Most of the time, you have to learn funky methods of object culling (bsp trees, quad trees, etc) that are almost an art/science in themselves, that to get the required speed...

        Let's just say I learned a long time ago that when it comes to 3D graphics I knew I would never become the next "Carmack" and that those that can do this stuff, and provide us engines that bring the coding and knowledge down to a more managable level for us more average 3D coders - these guys are worth their weight in gold.

        Not that I don't enjoy reading and trying to learn about the latest in 3D coding - but I know that such coding isn't something I excel in, and probably never will (my best project: before I got into Linux I used to do a lot of personal coding in VB - I managed to code a custom perspective correct texture mapping 3D engine in pure VB, later added a custom Visual C DLL that did raster rendering to speed the thing up - I wanted to do the actual poly rendering in the VC DLL, never got around to it - at that point, DirectX still couldn't be accessed easily in VB, so the whole thing was a complete rendering engine - learned a lot, though)...
  • Now I can build a virtual 3D woman on my linux system. THANK YOU. I have had sex only once in my life, and that was when I was in mid 20's (No Joke). I LOVE technology! I almost had to buy ALIAS|Wavefront or Softimage[god forbid]!
  • by Anonymous Coward

    Good to see people are still trying to re-invent the wheel again

    there are over 600 3d engines [tu-berlin.de] 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
    • 600 3d engines ... yet none of them are "really good"

      Uh, you did notice the part saying "last modified on 23.6.2000", didn't you? Two years is a long time; Crystal Space [sourceforge.net] and others have come a very long time since then.

      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 ?

      3d engines have become a much larger project since two years ago, what with people wanting platform independence, 3d acceleration, and lots of other technically demanding features. The only 3d engines that are getting anywhere have lots of developers coordinating.

      I guess time is what programmers waste best

      He says smugly, as he pushes the Submit button and millions (if not billions) of lines of code are executed for his message to be posted.

    • Man, you are so right. Same thing with those damned stamp collectors.

      I mean, why the hell do they do it by themselves. It's not like they are going to have the best one in the world with so many people competing against them.

      Instead, everyone in the world should join ONE BIG stamp collecting group. Then they'd have the BEST collection of stamps in the WORLD!

      Whoooo!!!

      Oh, wait. What do you mean they do it for fun? They program because the like learning? Enjoy it? Not for the purpose of taking over the world or pleasing others?

      Oh god. So confused.

      Justin Dubs
      • Hehe. I'm a programmer. Here's another part of the problem:

        Programming is, to a good extent, a lot like art. There is a LOT of design work involved. There is no right or wrong, good or bad. Just opinion.

        Can you imagine getting together 1000 world-class artists, asking them for a portrait, and then trying to get them to agree in what style to paint and what colors to use?

        Good god no.

        Everyone has there opinion on how things should be done. Some people agree to a good extent, or atleast to enough of an extent that they can work together happily. Hence Crystal Space and Linux. But, it's not always that pretty. A lot of people just have conflicting styles and shouldn't be allowed in the same room when discussing proramming.

        Justin Dubs
  • Am I the only one who sees OGRE and thinks of giant tanks [sjgames.com]?
  • 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.
    • by Temas ( 30015 ) on Sunday June 09, 2002 @10:08PM (#3670803) Homepage
      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.
  • Well done! (Score:2, Interesting)

    by abdulla ( 523920 )
    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.
  • by Animats ( 122034 ) on Sunday June 09, 2002 @11:10PM (#3671007) Homepage
    It's a nice piece of work, but it solves a problem that nobody needed solved.

    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.

    • My 0.02 is that the parent post is 100% wrong. Nobody that has even looked at doing viz-sim work could take that comment seriously. SGI Performer - historically *the* high performance scenegraph to measure things against, is widely used, and it's widely used because it is so very *very* useful.

      ATM SGI are porting Performer to windows (too little, too late perhaps), and there are a number of Open Source projects stepping up to fight it (personal recommendation www.openscenegraph.org) ;-)

      The world is a big place, and there are a lot of people doing serious work that can't use OpenGL - it's far too low level for application writing these days if you want to concentrate on your app itself, and cant use a game engine because they're too expensive/too limited (typically the first problem is that they are often designed for static scene only, even if they support minor modifications with a penalty)/dont work on big iron/stereo/whatever.

      The notion that scenegraphs are useless is the dumbest thing I've seen here for a while, now is the begining of the scenegraph era.
    • by mav[LAG] ( 31387 ) on Monday June 10, 2002 @06:12AM (#3671869)
      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 [openscenegraph.org], 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 [vterrain.org], flight simulation [homeip.net] and terrain rendering [terrainengine.com]. 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.
    • 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 forgot Java 3D. (R.i.P)
    • Are you on crack? You can't compare Ogre to OpenGL, or DirectX. All game engines have a scene graph in them, usually coded on top of the native 3D API (OpenGL, DirectX). What Ogre does is to allow game developers to use Ogre as the graphics engine for their game, and save themselves the trouble of actually writing it (which can be one of the most difficult portions of writing a game engine). Where do you get off claiming that "they don't do enough of the job to justify the trouble." Have you written something using Ogre?
  • by BadmanX ( 30579 ) on Monday June 10, 2002 @12:24AM (#3671220) Homepage
    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.
    • I don't get it... I thought the GPL only made it so that you have to release all changes you make to the source under the GPL. Doesn't that mean that any music, art, and seperate level design programs you make are yours and you can distribute them under any license or no license at all? How does that affect you selling your game? It only forces you to release the source of the engine with your games - not the games themselves. If I am mistaken on any of this, please correct me since I am also intereste din creating a game in my spare time with a GPLed engine.
    • Completely wrong. (Score:5, Insightful)

      by Doktor Memory ( 237313 ) on Monday June 10, 2002 @01:27AM (#3671379) Journal
      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 [garagegames.com], which you can license for $100 and a revenue-sharing agreement with GarageGames.
      • Re:Completely wrong. (Score:4, Informative)

        by jswitte ( 216975 ) <jswitteNO@SPAMbloomington.in.us> on Monday June 10, 2002 @03:22AM (#3671595)
        Uh, no, completely right. See 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. 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.

        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 ;-), 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.

        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 [kallisys.org] 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.
        • 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.

        • 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.
      • You are BOTH wrong! (Score:4, Informative)

        by Tord ( 5801 ) <tord.jansson@[ ]il.com ['gma' in gap]> on Monday June 10, 2002 @03:50AM (#3671651) Homepage
        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.

      • You are only required by the GPL to release any changes you make to the engine itself

        You are thinking of the LGPL. Anything that touches the GPL becomes GPL'd. e.g. using the header files, or linking.

        I'm pretty sure that the art wouldn't get covered though, it should be pretty simple to give away the game and charge for the art, music, voiceovers, maps, writing ... anything that isn't source code, basically. Games might be one of the better venues for the GPL, if they're games that depend more on production quality than technical pizazz.

        You are way the hell off-base calling the poster a troll.
    • by VortexVertigo ( 541172 ) on Monday June 10, 2002 @02:48AM (#3671525)

      Why would they want you making money using their 3D engine? I don't believe the LGPL or BSD license gives them any right to seek their share of the profits from your game sales. If you want to make a saleable game then license a closed source engine. That's what everyone else does *cough* Unreal Engine *cough*.

      I always get a big laugh out of people who complain that they can't make money if they use GPLed code. That's the whole point, you aren't supposed to make money that way. If the authors of the GPLed code wanted it to be used by others for the purposes of making a profit they would SELL the code to you.

    • 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,
    • So either
      a) do something to justify your existence - write your own engine licensed under your own terms and quit complaining;
      or
      b) use an existing GPL engine but have a different license for the original art packs (not linked into the binary, *duh*) if they're that worthwhile.
    • "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."

      Obviously you've never played Counterstrike. Back to your bridge, troll.
      • I have, in fact. And for a long time, Counterstrike didn't have very good models or artwork. But people played it because it had good gameplay and maps. Which, yes, were created by people in their spare time who, at the time, had no hope of making a financial profit off what they were doing.

        Bully for them. They are great guys who made a great game, and they got compensated for it in the end.. But saying that the entire game software industry can/should work the same way is absurd. Game software is (with a few noted exceptions) commercial software, and we all know that commercial software and the GPL mix about as well as oil and water.
  • 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 [sourceforge.net]. It already works on Linux.

    --
  • 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.

Can anyone remember when the times were not hard, and money not scarce?

Working...