PDA

View Full Version : Inkubator 3D game


Feanor
2002.06.09, 03:44 PM
OK I've mentioned this in the (distant) past, but I'm in a better position to present it now that I have some experience.

I would like to make a simple 3D game and preferably work with some other people. I would like it to be in Cocoa and OpenGL. I suggest that the game not use textures initially, just OpenGL's material specifications and lighting (well, we can make the game capable of both so that textures can be added later -- programming them isn't hard, they just take a lot of work to make).

My friend suggested that I make a game like that old arcade tank game -- remember the one that used lines in the style of Tempest and Star Wars -- but we would probably use solid polygons.

Thus the game models would be simple and could be generated in-game. I have already got the workings of a straightforward set of classes that handle simple geometries, lights and scene management. I have to begin writing code for animations, but I have an idea for how to make it pretty simple yet very flexible (using Obj-C delegation). I can switch between windowed and full-screen, I have camera controls, and multi-threading basically covered.

I don't want to steal people away from Hooptie, but if there are people who would rather do a 3D game and have not helped out yet but would like to, this would be the chance.

FÎanor

Kjurtyl
2002.06.09, 07:49 PM
Hooptie is, for now, an exclusively 2d Cocoa/Quartz game. I don't believe you will "steal" anyone from Hooptie as the concepts are different enough to appeal to two different audiences.

Is the old arcade game you're referring to "Battlezone" by any chance?

If you want to make the models "in-game" feel free to go that way - it sounds very interesting, - but I have a few tank models sitting on my hard disk right now (made by me, of course).

To anyone that's been lurking around the inkubator forum looking for some 3d OpenGL work, I also encourage you to respond.

-Kjurtyl.

Pazolli
2002.06.09, 09:43 PM
Hi Feanor,

I'm happy for another project to be launched under the Inkubator Project. But there are probably a few things you need to do to make your project attractive to developers.

Firstly most projects willl get some developers if they're really cool and in a fairly mature stage. But to make contributing more attractive to less mature projects you really need to comment everything you do in plain English. I strongly suggest you look at Hooptie's coding conventions (http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/*checkout*/inkubator/hooptie/obj-c/documentation/conventions.rtf?rev=1.10&content-type=application/rtf) perhaps adapt them a bit and then comment heavily. Commenting only takes a bit of extra time but it can make the code heaps easier to follow for newbies.

Next lay out a brief concept document on the game, you can see Hooptie's here (http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/*checkout*/inkubator/hooptie/obj-c/documentation/concept.rtf?rev=1.12&content-type=application/rtf). You are of course welcome to use our forum to develop the document with group consultation.

These two steps will hopefully help maximize your project's chances of success (with or without you e.g. the person who originally concieved Hooptie has not visited us in quite a while). I'm of course happy to offer my assistance when it comes to getting your work on the CVS, getting set-up on SourceForge or choosing an appropriate Open Source License.

Cheers,
Mark

Feanor
2002.06.09, 11:31 PM
Originally posted by Pazolli
But to make contributing more attractive to less mature projects you really need to comment everything you do in plain English.

You may want to (please) read my discussions about commenting and more in the Game Design thread called "Collision detection: model or view". You may be surprised.

I will happily read over the material.

I will need some help with sourceforge, but I'm at least not starting from zero, having set up a repository on my home machine for use in a group school project.

Thanks much,

FÎanor

Feanor
2002.06.09, 11:51 PM
Originally posted by Kjurtyl
Is the old arcade game you're referring to "Battlezone" by any chance?

If you want to make the models "in-game" feel free to go that way - it sounds very interesting, - but I have a few tank models sitting on my hard disk right now (made by me, of course).

Battlezone definitely sounds right. Plus I always loved the tanks in Tron, now that I think of it.

I want everything to be a Cocoa object, so if we use models created in other packages I would want to convert them over. If they're high-poly they won't suit the style I'm thinking of.

News: there's a cool 3D toolkit called GNU 3D Kit that I just discovered (and I mentioned it elsewhere) -- it might come in very handy. It an Obj-C library extension to GNUstep, with math routines, geometry, scene graph and the like and is very interesting. Everybody really should have a peek:

www.3dkit.org

FÎanor (umlaut is opt-u :))

Pazolli
2002.06.10, 03:38 AM
Originally posted by Feanor

You may want to (please) read my discussions about commenting and more in the Game Design thread called "Collision detection: model or view". You may be surprised.



I read through the discussion (briefly) and I think you've got a pretty good handle on software design, which is excellent to hear.

There is certainly no reason why this project can't be many times more successful than Hooptie. And there's a lot I'd like to impart to you from my experience working on Hooptie, and I'll hope that you'll let me.

But first things first, so let's start developing a game concept...

:-)

Feanor
2002.06.10, 10:21 AM
Well this tank-style arcade/action game has really got my imagination going. It should be possible to have a speedy game if the poly count is low enough and we have good culling. I'm thinking that the view could be a kind of night-vision or something so that it looked interesting even without textures (or with simple ones).

You'd be in the tank, looking for enemies. They could be typical military vehicles (other tanks) or some fantasy/sci-fi things like those wacky giant staples in Tron. You would pilot the tank around a blocky urban style landscape most of the time. Initially it would just be flat, but we could add grades later. Outdoors would be possible if we used a very simple, expressionist style for hills and trees. It would be very retro.

So the player's job could either be enemy-elimination or to get from point A to point B. It could vary by map, perhaps. The early levels would feature smaller, dumber enemy units, perhaps just tread-based robot bombs, so they could only hurt you if they got close and blew themselves up. I guess that makes them Wandering Minesô. I'd prefer not to have human troops at all. It's you against the robots/vehicles, like in descent.

A second enemy might have a simple projectile weapon. Projectiles will not be accurately modeled -- they will just fly in nice straight lines. So they'd shoot small, weak missles at you. Another enemy would have to be (eventually) enemy tanks, which would be very rare, but on high levels you might have to fight two or even three. You'd need a powerful gun.

I'm thinking you could have ammo and repair modules dropped in (say its air support or a long-range ballistic package). These would drop randomly on the landscape and you'd then have to find them. I thought about radar, which might be tough if it has a pseudo-map, but not too tough if it's just blips on a screen, but we could make it more challenging and just do everything with map co-ordinates. A readout on the screen would have a list of nearby enemies, the mission target, and ammo/health drop points -- text radar.

We could call it Rolling Thunder like the Halo level (if you haven't played it, that's when you take the Scorpion tank into Halo's tunnel system and basically crush a contingent of Covenant).

Missions to actually blow up targets would be really interesting.

I think a cool secondary weapon would be an EMP bomb. Your systems have to put themselves into a protected state which takes one minute to recover. Good for eliminating many small enemies that are all within a certain radius, but you'd have to hope that others couldn't find you in less than a minute, because you would be without electrical systems. You can still drive, but your radar is busted. And maybe you lose night-vision, so it gets REALLY dark (that would be creepy) but not pitch black -- just moonlight or starlight.

OK, I'm going to write a proper proposal and technical overview tonight and I'll post it on my iDisk when I'm done. I'll read any comments/criticism/ideas/spins during the day.

FÎanor

Feanor
2002.06.10, 10:32 AM
Well this tank-style arcade/action game has really got my imagination going. It should be possible to have a speedy game if the poly count is low enough and we have good culling. I'm thinking that the view could be a kind of night-vision or something so that it looked interesting even without textures (or with simple ones).

You'd be in the tank, looking for enemies. They could be typical military vehicles (other tanks) or some fantasy/sci-fi things like those wacky giant staples in Tron. You would pilot the tank around a blocky urban style landscape most of the time. Initially it would just be flat, but we could add grades later. Outdoors would be possible if we used a very simple, expressionist style for hills and trees. It would be very retro.

So the player's job could either be enemy-elimination or to get from point A to point B. It could vary by map, perhaps. The early levels would feature smaller, dumber enemy units, perhaps just tread-based robot bombs, so they could only hurt you if they got close and blew themselves up. I guess that makes them Wandering Minesô. I'd prefer not to have human troops at all. It's you against the robots/vehicles, like in descent.

A second enemy might have a simple projectile weapon. Projectiles will not be accurately modeled -- they will just fly in nice straight lines. So they'd shoot small, weak missles at you. Another enemy would have to be (eventually) enemy tanks, which would be very rare, but on high levels you might have to fight two or even three. You'd need a powerful gun.

I'm thinking you could have ammo and repair modules dropped in (say its air support or a long-range ballistic package). These would drop randomly on the landscape and you'd then have to find them. I thought about radar, which might be tough if it has a pseudo-map, but not too tough if it's just blips on a screen, but we could make it more challenging and just do everything with map co-ordinates. A readout on the screen would have a list of nearby enemies, the mission target, and ammo/health drop points -- text radar.

We could call it Rolling Thunder like the Halo level (if you haven't played it, that's when you take the Scorpion tank into Halo's tunnel system and basically crush a contingent of Covenant).

Missions to actually blow up targets would be really interesting.

I think a cool secondary weapon would be an EMP bomb. Your systems have to put themselves into a protected state which takes one minute to recover. Good for eliminating many small enemies that are all within a certain radius, but you'd have to hope that others couldn't find you in less than a minute, because you would be without electrical systems. You can still drive, but your radar is busted. And maybe you lose night-vision, so it gets REALLY dark (that would be creepy) but not pitch black -- just moonlight or starlight.

OK, I'm going to write a proper proposal and technical overview tonight and I'll post it on my iDisk when I'm done. I'll read any comments/criticism/ideas/spins during the day.

FÎanor

Josh
2002.06.10, 03:56 PM
Sounds like a good idea and I would love to join, but, like so many things these days, it requires OS X which I lack. Good luck!

Carlos Camacho
2002.06.10, 07:46 PM
Listening makes me think on a movie called "Avalon." Any one see it? It ws a Japanese movie with Russia actors that used heavy CG, yet looked very nice. It had a kind of septia look to it.

One game that you could draw upon is the Amiga classic called "Tank Fire." (or was it just Fire?) The screen was split in two (in two player mode) and the object was A.) Knock out the opponents HQ B.) Rescue any POWs.

You got points for blowing stuff up as well as running over enemy soldiers. It was 2D based looking from above. So, some things you could take from that game are:
* Two player concept - If you are using low-count models, then it is a great chance to try to make it networkable.
* Three typw of tanks which vary in speed, armor, fire power (pros and cons on each)
* Ability to lay down mines
* The need to watch out for attacks from turrents
* The ability to blow up walls & buildings, etc..

I'd like to lend a hand in GUI or models. In addition, I've been building up SFX for such a game. (i.e. many tank-like, helicopter-like rumbling loops.)

Feanor
2002.06.10, 09:32 PM
I haven't seen or heard of Avalon; sounds interesting.

I like all of your suggestions very much. Two player mode could be pretty straightforward I think, but I need to learn more about input.

The biggest challenge would be damaging buildings. It would probably be possible to do some kind simple animation and swap the normal building model for a damaged model, but they'd all look the same done that way. Well, if we design the game with that in mind, we could have an abstracted damage-to-building method that initially returned a stock damaged model and later generated one using the hit location, some building stats, and a parametric modeler, but that would take some serious work.

If we are going to do models externally we'll have to make decisions on file formats and how to convert them into game objects. One strong feeling I have about 3D is that animations make a big impact, so having complicated models would demand complicated animations, which would really bog us down. That's the other reason I didn't want to have people models: no soldiers, no civilians (the other reason is I don't want any violence against people in the game).

I think what would make the game really fun is the quality of the maps. With some really nice layouts that have strategic variations, we wouldn't need fancy curves or that sort of thing. Just some nice blocky, spacious urban landscapes with some ramps, bridges, tunnels and such.

OK, I'm off to write the proposal draft now. I figure I can crank out a few thousand words in a couple of hours. I'll post it on my idisk and anyone who wants to offer edits can put them here or email me.

FÎanor

Carlos Camacho
2002.06.10, 11:55 PM
Re-reading your first post about NOT using texture has gone deeper into my brain. In the early CGI movies like Tron and Star Fighter, they used solid colors without much texturing. A kind of Phong rendering look. So I really like your idea NOT to use textures.

If it has some elements like Tron, how about the name "Xron"? It is a play on Mac OS X, and also CRON. (and Tron) I think if you stay away from lightcycles then you won't infringe on anything.

Looking forward to your docs...

Feanor
2002.06.11, 12:52 AM
Please see the new Thread. Editor, you may as well lock this one. -- FÎanor