Article View: rec.games.programmer
Article #131Re: Game library...
From: David M. Baggett
Date: Wed, 22 Jul 1992 13:14
Date: Wed, 22 Jul 1992 13:14
129 lines
7054 bytes
7054 bytes
psteffn@hal.gnu.ai.mit.edu (Paul Steffen) writes: >Well, to me, programming is a learning experience where I not only learn >how to code increasingly efficient algorithms, but whatever tricks >(software/hardware, orthodox/unorthodox, etc) I can use to get the task >down faster. This may include using register save opcodes for block >moving memory, delaying video DMA for smooth scrolling, or writing >fully background interrupt-driven disk routines. I gauge my success >in machine cycles. OK, but all I'm saying is this: not everyone views programming the same way you do; for those people that don't care about the hardware, a library makes perfect sense. So it's not "ridiculous" (and not something restricted to the PC world either). That's all. You're trying to convince me that hardware programming has merit, which is not what I'm arguing against. I do think that hardware-oriented techniques have merit provided one of the following things holds: 1. the techniques work on all "100% compatible" hardware 2. the application that uses them is one where you don't care about #1 >I have to admit that the thought of seeing some actual 2600 code is >mildly erotic. Uh... :) Anyway, check out comp.sys.atari.8bit; a doc file loaded with info about the 2600 was posted there. It includes a disassembly of Combat and of some demos. >The difference being is that the non-professionals >I talk of are programming code many levels above the norm for >professionals. You're trying to incite me aren't you? :) We've discussed this into the ground elsewhere, so I won't go into it at great length again. Suffice it to say that I think your group(s) are genuine masters of their art (demo writing; i.e., abusing the hardware to do achieve otherwise impossible effects). I think it's a subsantially different activity than programming in general, however. But if you were to write a C++ compiler you'd find similarly difficult challenges there, not to mention similar opportunities for clever optimization. GCC/G++ was 100,000 lines of code, last I checked. At least one game library I know of has a similar amount of code. Part of your task as a programmer on such a system is just to keep everything in order so you know what the heck is where. The larger a system gets, the more difficult this becomes. So it's a different set of challenges. >The quality of even the artists and musicians who work with the >programmers far exceed the norm. Part of being a professional is *endurance*. While the art for something like Dungeon Master or Ultima Underworld may look simple enough, realize that it consists of literally thousands of shapes. It's not just a matter of "can you draw this at all," but rather, "can you draw this quickly, and do the same quality of work 1000 more times?" If you have a PC, load up Commander Keen IV and count how many different shapes you see. It's a staggering job to do art for even a simple game like that. Game artists don't get enough credit. Just like it takes endurance and perseverance not to quit in the middle of your 100,000 line C++ compiler, so does it take endurance and perseverance to actually put together and fine-tune a couple hundred or thousand game shapes. What I see missing from most demos (on the Atari at least) is polish. They look like the programers got their awesome hack working and then lost interest without bothering to really make the thing look professional. This is not really a criticism so much as an observation; demo programmers really *aren't* interested in making something shine as much as showing off their latest and greatest hack, right? I mean, once you kill yourself to get 262,000 colors on the screen at once without flicker, are you really going to bother making sure your text font is nice? Again, demo programmers aren't doing the same thing better; they're doing a different thing masterfully. >Don't get me wrong. I don't have anything against game libraries as >long as the programmer is supplied with source and the right to >make improvements on them [and an incentive to make them available >as updates]. So you *would* be opposed to such a library without source available? I'm not sure how using a library without source code would make any difference to you, since you write everything yourself now anyway. If you didn't like some feature of the library you could (in theory) write your own routines and use only those parts of the library that you found acceptable. How could it be *worse* to have a library? >But, the argument for game libraries is that people want to do just the >fun stuff [*-i.e. design-*] and none of the hard stuff [*-programming-*] >where-as, here are demos where the programmer[s] did all the hard >programming and very little game design. You're assuming that programming a game is harder than designing one. I think you've got it backwards. Sure, you can crank out yet another Chop Socky move-to-the-right-and-kill-things game, and in that case the art and programming might take a lot longer than the design. But a truly good game design can only be cultivated and refined with a lot of work (which might be why we hardly see any good designs in arcades these days -- designing is not cost-effective). I think most profesional game programmers would say that the coding is the easy part. Perhaps some of them would like to comment? (We might ask the Atari and Williams folks in rec.games.video as well). >Do you think people would go to all this work if hardware programming >wasn't fun? esp. for no pay? Nope; obviously some people find it fun. No argument there. I'm not going to try to tell you you're not having fun! >I'm not aware of that game but I am aware of Thalion. They were a very early >demo group and the first to use that technique in a Neochrome slideshow >[which had people at Atari boggled]. It probably had Atari *pissed*, if you want to know the truth. "Yet another applcation that won't run on the <STe, Mega, TT, Falcon>" But for a NEOchrome slideshow, who cares? Like I said, a game is a different matter. I think they did us a disservice by using that technique in commerical software. >How does it contradict my opening statement? I'm confused. Simply in that your opening statement was that game libraries are ridiculous, and that you couldn't imagine anyone using one. Maybe I was reading more into that comment than was intended. Dave Baggett dmb@wam.umd.edu
Technical Details
Message-ID:
<1992Jul22.131418.19638@wam.umd.edu>Path:
arc1-ca.pugleaf.net!sparky!uunet!haven.umd.edu!wam.umd.edu!dmbReferences:
<9207220449.AA68324@hal.gnu.ai.mit.edu>Show Full Headers
Complete Article Headers
Newsgroups: rec.games.programmer Path: arc1-ca.pugleaf.net!sparky!uunet!haven.umd.edu!wam.umd.edu!dmb From: dmb@wam.umd.edu (David M. Baggett) Subject: Re: Game library... Message-ID: <1992Jul22.131418.19638@wam.umd.edu> Sender: usenet@wam.umd.edu (USENET News system) Nntp-Posting-Host: rac2.wam.umd.edu Organization: University of Maryland, College Park References: <9207220449.AA68324@hal.gnu.ai.mit.edu> Date: Wed, 22 Jul 1992 13:14:18 GMT Lines: 129