Cube: A Modern 3D Game Engine
An anonymous reader writes "There is a new 3d game engine being developed by Wouter van Oortmerssen (aka Aardappel) that utilizes SDL and OpenGL. It is pretty full-featured already, and is heavily influenced by Quake3." Same guy who did panoramic Quake.
Great effort but not comparable to modern day "eye candy" engines yet.... looks more like a Quake 2 level of geometry with nice colour and lighting ability. Perhaps the adjustable LOD is set on a low level....
I wonder how well it handles high polygon counts or is the empahsis more on engine ability rather than model design for now?
- HeXa
Well, it can be advantageous.
You can really optimize your code to work on low-end machines with a reasonable fps, but this recquire a lot of trickery, precomputing everything, and making difficult design decision what fits where. A good example of such design is Crystal Space
On the other hand, you can keep your code very simple, which makes it easibly extensible and wait for one year if you want to make it work on low-end machines.
There's more to Cube then just the engine. It makes for a very nice game. It currently has deathmatch, deathmatch-sp and primitive sp. Try the deathmatch sometime, it's very fun. The engine itself is actually developed by 2 people, Aard does all the main stuff, while the other guy does the networking and the porting to *NIX platforms.
There is also a very nice community of people developing maps for Cube, Aard is rather open-minded, so every new Cube release also tends to include at least several new maps. The game engine is not currently open-source, however, Aard plans to open-source it in "some time in the future".
I've managed to download the game in under 30 mins with a 56k modem!
I remember back in the day, when all this was fields, real men programmed in Cobol and simply uttering the phrase Slashdot Effect was enough to make any sane SysAdmin turn into a gibbering puddle of jelly and spend the rest of his life in rehab :/
You kids nowadays with your fancy broadband, useless :/
The problem with slashdot is that most of its users were bullied and stuffed into lockers as kids!
The main interest in this engine is, I think, the editing mode. It's simply amazing. Anytime you want while in game (I suppose not during a deathmatch though), you just press E and enter the editing mode.
;-)
...
You can raise/lower small cubes (or group of cubes) with the mouse scroller, etc. Everything can be built this way. It's both easy and powerful, requires no compilation (press E again and play) and works really well !
The graphics are far from ugly, I'd say the game is rather pretty. It works well under linux, which is a good thing too.
But you really have to try this editing mode
Let's hope the engine will be open source
theefer
I have 1 beef with full screen games.
I can't switch back to X.
I like linux because it multitasks, and multitasks well. Stable and I can leave it going with all my applications right were I left them.
Then I play a game, I can't pause it and switch back to grab a phone number, check a calendar, I'm stuck.
Why can't they simply put the game in a window, or leave some way to flip back to X?
We tried to get him to submit his resume to id Software. I dunno whatever became of that.
As of a few months ago, he was working with Amiga in some capacity creating the Sheep language. Any old Amiga users out there might remember AmigaE which Wouter also created.
All I want is an efficiently programmed game that's small in size so I don't need another hard drive to install it. Unreal Tournament in ASM - 20MB and faster than a cheetah riding a rocket, lovely :o)
[JJ]
"Insert Dead Smart n Clever Sig Here So I Look Brainy"
If for no other reason that the game's storyline. From the docs:
Official game storyline: "You kill stuff. The End."
Finally a first person shooter that doesn't try to beat me over the head with hours of meaningless plot development!
Democracy is two wolves and a lamb voting on what to have for lunch. Liberty is a well-armed lamb contesting the vote.
quote from the "most wanted feature" forum:
..
"#267:
by Gom Jabbar on 07/20/2002 14:46 through 217.4.101.162
There won't be room over room. At least not within the next 10 years..."
sounds like doom 10 years before
For anybody that's interested in trying out the multiplayer, I have a server running at:
deskstar.101freeway.com
for at least the rest of the weekend.
looks pretty cool, but it does look kinda like a prettier version of that old 'chasm' game ... or quake 1 i suppose ... not to be critical, i loved both of those games ... and im in no place to be critical because i cant even do anything remotely this good ...
... what would be the best way to start on a project like this, say 3d enigine, from a beginners level? i know that a 3d engine isnt even something you consider from a beginners level, but this is what i would like to be looking at doing some time in the future ... any one care to share how they got started on game programming? what would be the best plan of attack? or is it just a matter of sitting down with a C++ book, then a visual C++ book (or could anyone tell me what other avenues i might look at with regards to IDE, including under linux), then a game programming book etc etc??? and are there specific websites, examples, source code that i should be checking out??? ... any useful advice would be most welcome ...
...
speaking of which
ive wanted to do game programming for ages, but ive never pulled my finger out and sat down and got into it, but now that the new version of the stupid accounting software i code at work has gone gold, i wanna clear my brain of VB and get down and dirty into some serious (and entertaining) coding
replies to my hotmail acct welcome
A quote from the page:
:) It will be open sourced in the future, under a license similar to BSD/MIT/ZLIB etc
:-)
The source code for Cube has not been released yet, because Cube is for me a purely fun programming project with a very minimalistic style of design & implementation, and I want to keep all the fun to myself
Such a shame, I'm sure some people out here would want to help this guy make his stuff...
On the sidenote, Aardappel is Dutch, and it literally means potato
Still downloading the engine but the docs on the site make for interesting reading. This engine is not capable of having rooms over rooms, in fact the author compares it to doom which is obviously not 3D.
From reading the docs I think the real innovation here is in the gui which sounds like it has obviously had a lot of time spent on it.
Having edited with the quake and unreal engines it seems this prog is trying to remove the bar into editing by making editing easy enough for anyone to jump in and play around. A good thing in my opoinion.
He did quite a lot of work on the front of visual programming and came up with a lot of programming languages which are definitely worth a look.
Check out the page: http://wouter.fov120.com/proglang/index.html.
Never underestimate the relief of true separation of Religion and State.
"Combines very high precision dynamic occlusion culling with a form of geometric mipmapping [...]"
Thats a nice way of saying "It looks pretty and lets you kill stuff". Hehe.
I'm a game developer, and I find it endlessly amusing that internetters love to equate Quake technology with the cutting edge. I guess it begs the question: Do wannabe game programmers and fanboys have any experience with engines that are *not* Quake-like?
For example, look at the amazing stuff done in high-end PlayStation 2 games. There's no way you could get the Quake III engine to do those kinds of things. And yet everyone fawns all over Quake like it's the only game technology available. In reality, it's just that there's a distinct lack of familiarity with what else is available, much as hardcore Linux advocates don't know about OSes other than Linux and Windows, and don't know much at all about OS history prior to 1991.
...the game can be hacked. Source doesn't make it much easier from what I can see- there seems to be enough hacks and "trainers" out there for the games out right now. These cheating tools end up showing up fairly quickly after the game comes out and so far, all of these games are closed source. Simply put, securing things is a difficult proposition at best (curtailing performance, etc.) if you rely on the client side being clean, etc.- having source only makes it slightly easier.
I am not merely a "consumer" or a "taxpayer". I am a Citizen of the State of Texas
Erm. I'm curious.. what can PS2 games do that games using Quake3 engine can't? Nearly a year after Q3 was out, games continued to use Q2 engine. I know Q3 isn't much more than Q1 with shaders and lightmaps, etc. But a low-res PS2? Certain things engines are good at and certain things they are not. Q3 is still very good for indoor environments. For outdoor environments it sucks ass. It probably wouldn't be good for a Mario or Sonic type game. I don't doubt there is a better indoor engine. Infact, I know it's name: Doom 3.
Dijkstra Considered Dead
The reason why I didn't go into DirectX stuff is mainly because I don't know much about it. But from what I've seen in some college course, it has a lot of fluffy stuff and initlization routines you have to go through before drawing even a single pixel in Direct 3D and DirectDraw, while in GL you create a window, create a GL context, bind them, and you're ready to go.
.x files, which you can create with 3DS Max and then convert to .x with a utility that comes with the SDK. You don't even have to care about model loading, isn't it great? Or of course you can get dirty and play with the immediate mode which achieves the same purpose as OpenGL does, but with a totally different system, which, as Carmack once put it "is broken, but still works."
If you don't want to start from scratch, Direct3d has 2 modes : immediate and something I think is called retained mode. Retained mode is basically a basic 3d engine with notions of meshes, lights, directions, parent/child space, that sort of stuff, already implemented and is great for beginners. It can even load
For the sound though, you will have to go with DirectSound, since it's the best way to make audio on Windows. You might want to look for OpenAL, if you want to do cross platform stuff. It's the OpenGL for audio, hence the AL. I'm not sure though that the standard is set in stone. You should check that out.