Stolen Pixels #81: Left 4 Dumb: Part 3

By Shamus Posted Tuesday Apr 14, 2009

Filed under: Column 19 comments

I can’t decide what I like most about Left 4 Dead. Playing it, or making comics about it.

Who am I kidding? Playing it is two or three flavors of awesome. Thanks to everyone who joins in and acts nothing like I depict in the comic. That’s appreciated.

 


 

Procedural City, Part 1: Introduction

By Shamus Posted Monday Apr 13, 2009

Filed under: Programming, Projects 155 comments

Change of pace. In the last week I’ve had an idea clawing at the back of my head, and it’s clear the thing isn’t going to leave me alone until I do something with it. I don’t usually blog about my little programming projects (with the exception of the Terrain Project) because I like to imagine this site has some sort of focus, but the choice here is for me to blog about this or leave the site fallow for a week. So I’m blogging it. Perhaps you’ll find it entertaining anyway.

Motivation

There are several reasons for wanting to do this.

It’s comical now, but this was a real eye-grabber in 1996.
It’s comical now, but this was a real eye-grabber in 1996.

Way back in my early days of 3D development a lot of my work was focused on creating effects or finding tricks to make it look like there is more to the scene than what is really being rendered. A lot of work was being done by game companies to simply push the technology as far as it would go, but I enjoyed getting halfway there with technology and then going the rest of the way with a good facade and some lighting tricks. The techniques I used in the mid 90’s would seem laughably simplistic and trivial today, but at the time I remember getting a lot of “How did you do this?!?” type reactions to my work.

For example: I wanted to make a city, but the scene just couldn’t render things at a great enough distance to give you a “big city” feel. It just felt like a handful of big boxes next to each other in the middle of a featureless plain. So I set the city at night, scaled the buildings down so that they weren’t really much bigger than houses, and slightly pinched the tops of them so that the top of the (apparent) cube was smaller than the base. The reduced scale let me get a lot of buildings close together, the night lighting let me suggest more detail than was really present, and the skewed shape created a false impression of height. (The eye wanted to believe that these building-ish objects were cubes, and so when you looked up it made them seem taller than they were.) The scene was pretty astounding in 1996, although I doubt it would impress anyone today.

This sort of thing was an unusual blend of technical and artistic work, and I enjoyed it immensely.

l4d_buildings.jpg
In a section of the Left 4 Dead commentary (near the very end of the initial No Mercy level) one of the developers draws attention to an apartment building in the distance. He explains that it’s a very simple building with little detail, but because it’s mostly a silhouette against a detailed sky, the eye accepts it and your mind fills in details that aren’t really there. This reminded me a great deal of my old work, and got me itching to do some of that sort of thing again.

My new graphics card is ridiculously powerful. While I’m working less and less with graphics these days, on the rare occasions where that sort of work crops up it’s still focused on getting more out of widely adopted low-end technology. So I haven’t worked with much new technology. (“New” being very relative. For me, anything younger than a kindergartner is new.) This makes me some sort of cutting-edge Luddite, pushing the limits of stale technology.

CPU’s have stagnated a bit over the last few years while GPU’s have continued to accelerate. (No pun intended.) This has moved a lot of the old bottlenecks around. I think it would be good for me to get to know one of these recent GPU’s and see what it’s like to work with them.

And finally, I love procedural content, but I never get a chance to work with it.

Goals

1. The goal is to make a nighttime cityscape that is mostly made of lights and suggestions rather than real detail.

2. The city will be entirely procedurally generated. That is, the program will contain no art assets. No textures. No models. Everything must be built from scratch at startup.

3. I’m budgeting a week of nights and weekends for the project. So, probably about 30 hours of time total.

4. I’m going to use only conventional rendering. While I’d love to muck about with pixel shaders and see what the new ones can do, I haven’t messed with that sort of thing since 2006. Just getting up to speed on the subject would blow my entire time budget. (Pixel shaders are special programs that run on your graphics card instead of on your “computer” with all of your other software. They are strange, amazingly powerful, and difficult to master.)

5. I’m aiming for something that will run on a broad range of machines. This will be a little tricky, since my current machine is pretty beefy compared to the average. (I’m talking about the average windows-based PC, not the average gaming computer.) It’s much easier to develop on an old machine than to develop on a new one and try to guess where the bottlenecks will appear when run on old hardware. All of our older machines around the house have been converted to Ubuntu, and running under WINE wouldn’t make for a very useful benchmark. So this goal will be difficult to judge. The best I can do is aim for the program running at at least 100 frames per second on my PC and hope that it can still manage 25 or so on an older machine. Even this is pretty dicey, but it’s the best I can do for now.

I don’t know what I’ll do with the program beyond the goals above. Give away the source? Turn it into a screensaver? Add more features? We’ll see where the project takes me and how interesting this is to people.

Getting Started

The first step in a project like this is to make a simple program to open a window, start up OpenGL, and provide some basic camera interface so that I’ll be able to examine my work. This involves gathering up a lot of boring boilerplate code, creating the project files, and adding a bunch of not-very-interesting low-level systems. The result is not very compelling:

pixelcity_base.png

Sorry for dragging you all this way only to show you an empty window, but this is how it often goes. I’ll make sure to have something more compelling to show you next time around. This series will run all week, assuming everything goes to plan.

 


 

Unskippable: X-Blades

By Shamus Posted Saturday Apr 11, 2009

Filed under: Movies 38 comments

I had trouble enjoying this Unskippable because of the way the cutscene made me hate the game with an unquenchable passion. This antipathy is particularly deep in regards to the main character, who has the personality of Paris Hilton, but less intellectual. From her preposterous outfit that makes Lara Croft look like a nun to her heroic display of vapidity, stupidity, and skankidity, there was just nothing notable or likable about this character. Her personality is abrasive, her voice is grating, and her dialog is narcissistic expositional pablum.

Perhaps you could just ignore the cutscenes, plot, characters, and dialog. You could sweep the narrative aside and enjoy some mindless button-mashing violence, but apparently the gameplay is also insufferable. A male player might be able to overlook both the narrative and the gameplay to enjoy some cheap T&A, but they ruined that by making her look underage and giving her a voice actress that makes Yoko Ono sound like Judy Garland.

So… I guess I won’t be adding this to my “buy” list.

“But, you’d think she’d know to wear practical footwear. Or for that matter, pants.”

 


 

Gamethread Apr 10 09

By Shamus Posted Friday Apr 10, 2009

Filed under: Notices 34 comments

Today I have the day off from the ravages of a job that wasn’t all that bad to begin with. Left 4 Dead tonight is inevitable. Team Fortress 2 is possible. And by “tonight” I mean, “anytime after noon”. Noon was two hours ago for me. I plan to vigorously slack off very soon. Perhaps I’ll see you in-game. Remember that if I shoot you it’s probably not because of anything you did. Do try to be patient about it.

Note that you’ll need to join the Twenty Sided Group on Steam to join the official group server.

I know it isn’t possible, but I can’t help but think of how excellent it would be if the PC players could meet up with the Xbox players in some sort of utopian platform-agnostic server and play together.

Open thread for any pre-game or post-game comments. Also: when presented with a choice, do you take the pipe bomb or molotov?

 


 

Vatsy and Bruno

By Shamus Posted Friday Apr 10, 2009

Filed under: Nerd Culture, Pictures 20 comments

l4d_ff1.jpg
Online Left 4 Dead is now a nightly tradition. This regular evening exodus from the infection zone to a joyous yet undefined safety are ruinously fun, to the point where I’ve spent too much time shooting zombies and not enough time writing content for this website. Perhaps you’ve noticed and you’ve just been too polite to say anything.

If you’ve been in a game with me, you may have run into lnwlf, Thufir, or thegrimone, all members of my perpetually fallow tabletop gaming group. But more likely is that you’ve run into Rutskarn (who you may recognize from the comments here) who is the most patient of teammates, long suffering in the face of my errant bullets (which are sometimes to the face) and my habit of hoovering up all the pipe bombs. I’ve probably played more games with Rutskarn than anyone else that wasn’t software written by Valve.

l4d_ff2.jpg
In these games we sometimes chat about websites and the running thereof. Rutskarn has his own site, Chocolate Hammer, which has tabletop-type stuff, some fiction, and good supply of cleverness. He’s stuck in the stage where he probably suspects he’s putting up good work but doesn’t know how to get people to come and see it. Having toiled* in obscurity** for months*** on this site, I can sympathize.

* “Toil” in the sense of doing something fun that might vaguely resemble work to someone who didn’t know any better.
** Aside from the readers I was able to beg from SDB.
*** It was actually a year and seven days between the launch of the site and the start of DM of the Rings, but who’s counting?

His big project is Vatsy and Bruno, a work of fiction that I will excerpt rather than attempt to summarize:

To whom it may concern:

We do not regret to inform you that this submission is unusable, unintelligent and frequently illegible. We do not regret that your mental seepage, poured in such an ungainly fashion on your half-cent-per-thousand-sheet paper, will not be gracing this or any future publication of the Writer's Guild World Newsletter. We do not regret that you willâ€"most probablyâ€"die alone, penniless, unloved and foul-smelling.

We do, however, regret that we were exposedâ€"even through this protective screen of incomprehensibilityâ€"to this most unspeakable body of work. We regret that our sanity and our lives can never be whole again after even a brief perusal of your first page. We regret that the stink of hideous purple prose and suspiciously fecal ink will forever saturate our desk space. Most of all, we regret that you had slithered, like a diseased rat infiltrating an unsuspecting granary, into this world on whatever dark day you were born (from the art inherent in your prose, we would estimate about a year ago.)

If we ever see the name “Vatsy”â€"or that name spelled differently, or any name with a superficial resemblance, or anything that even reminds us of youâ€"on any volume, essay, poem, or bill that ever crosses our threshold, we will ensure that you will not survive the night that follows.

Wishing you well,

The Writers Guild

I didn’t think to get permission to talk about his age, but I hope Rutskarn will forgive me for revealing that he is not old. I was shamed last night when I discovered his age and I realized I was not nearly as promising or as focused at roughly that same stage in life. The site is full of amusing self-quotes, witty phraseography, and a solid dose of non-LOLCATS brand humor, a resource which is all to scarce on the internet.

You could do worse than visiting the site. For example, you could not visit the site.

 


 

Stolen Pixels #80: Left 4 Dumb Part 2

By Shamus Posted Friday Apr 10, 2009

Filed under: Column 10 comments

The latest Stolen Pixels, wherein Louis makes astute political observations in the face of tyranny, is now available for your enjoyment.

sp_l4d1.jpg

 


 

The Red Ball

By Shamus Posted Thursday Apr 9, 2009

Filed under: Random 201 comments

This is a little unusual. I wrote this years ago, and filed it away because I had no idea what to do with it. I’m putting it up now and soliciting responses because that’s ever so much more interesting than not posting anything at all, which was my original plan.

If nothing else, perhaps this setup could be adapted to serve as a quest hook if you find yourself running a D&D game.

You’re the new kid in the neighborhood. This neighborhood runs alongside a fast-moving stretch of a four-lane highway. On each side of the highway are nice little houses with yards. You meet the other kids. They seem friendly enough. Soon after meeting them you discover that they have a rule: Never, ever go near the road.

No child is permitted within ten paces of the road. The grass in the yards reveals that they obey this rule unfailingly. The grass is green and untrampled for the ten paces closest to the road. There is a visible line in the grass between the yellow grass where they travel freely, and the green grass where they Do Not Go. They seem to even be a bit apprehensive about getting close to this line. They do so only at need, and only for a few seconds before running back to their friends near the center of the yard. Nobody ever told them explicitly that approaching the road would lead to death, but the rules were laid out so firmly and so carefully and with such sternness that the kids have concluded it would. None of them has even had the nerve to test this theory.

While it isn’t nearly as deadly as they think, the highway can be pretty dangerous if you’re careless. You figure that whoever made the rule was probably thinking, better safe than sorry.

To help make friends, you have brought with you a brand-new bright red kickball. The kids admire the ball and welcome you into their group. A game of kickball starts up. Once the game is going strong and everyone is having fun the unthinkable happens: Your ball gets knocked right over the road and lands in the opposite yard. Your new friends are horrified. They act as though the ball had just plunged into a pit of deadly vipers.

As far as they are concerned, the ball is gone forever. It’s unrecoverable. But you know better. You’ve been around roads like this before and you’ve been taught how to cross them. You could, if you wanted, walk right up to the edge of the road, wait for a gap in traffic, and get to the opposite side with little risk. You’ve done it before and you know it’s not that hard. Your parents never made any rules against crossing the road, and none of the other parents has any authority over you, so by doing so you won’t be breaking any rules. However, you also know you will be utterly smashing a taboo for these kids. To them just getting near the road is a suicidal act. To cross is unthinkable.

You could do it. You could get your ball and bring it back, but to do so you would overthrow their thinking in regards to the highway. Once they knew the road could be crossed, they would inevitably want to do it themselves. Sooner or later, they would try it on their own. They might not do it right away. They might not do it when you’re around, but it will happen. You could tell them not to do as you do, but you’re a smart kid and you know that telling them not to do something you are doing is tantamount to a dare. Are you going to let the new kid get away with that? Get over there and show him he’s not so special.

So what do you do? It took you a little while to learn to cross safely. Crossing takes patience and clear thinking. If you choose to break this taboo, are you willing to take on the responsibility of teaching all of them how to do it? If so, you will be aiding them in defying the rules. You are free to cross, but teaching these other kids against the will of their parents is quite another thing. What about the younger hyperactive kid that is watching you? He doesn’t seem to have the patience or the maturity for crossing safely, and you don’t have the authority to forbid him. He wouldn’t listen to you anyway. In fact, he’s most likely going to be the first of the kids to get up the nerve to try.

You are free to cross. No rules forbid you from doing so. It is (for you) reasonably safe. Your new ball is over there. Should you follow the overbearing rules and accept the loss of your ball? Or do you get the ball, knowing that to do so may lead one of these kids to endanger themselves?

We’re talking about kids, but approach the question with your grown-up mind: Would you get the ball?

[poll id=”3″]

 


 
From The Archives:

Game at the Bottom

Why spend millions on visuals that are just a distraction from the REAL game of hotbar-watching?

 

Are Lootboxes Gambling?

Obviously they are. Right? Actually, is this another one of those sneaky hard-to-define things?

 

Shamus Plays WOW

Ever wondered what's in all those quest boxes you've never bothered to read? Get ready: They're more insane than you might expect.

 

A Telltale Autopsy

What lessons can we learn from the abrupt demise of this once-impressive games studio?

 

If Star Wars Was Made in 2006?

Imagine if the original Star Wars hadn't appeared in the 1970's, but instead was pitched to studios in 2006. How would that turn out?

 

A Lack of Vision and Leadership

People fault EA for being greedy, but their real sin is just how terrible they are at it.

 

Programming Language for Games

Game developer Jon Blow is making a programming language just for games. Why is he doing this, and what will it mean for game development?

 

Who Broke the In-Game Economy?

Why are RPG economies so bad? Why are shopkeepers so mercenary, why are the prices so crazy, and why do you always end up a gazillionaire by the end of the game? Can't we just have a sensible balanced economy?

 

Top 64 Videogames

Lists of 'best games ever' are dumb and annoying. But like a self-loathing hipster I made one anyway.

 

Bethesda’s Launcher is Everything You Expect

From the company that brought us Fallout 76 comes a storefront / Steam competitor. It's a work of perfect awfulness. This is a monument to un-usability and anti-features.