Thursday, June 30, 2011

Blender and video editing

I don't know where Blender 2.49b is when it comes to video editing, but I'm not here to talk about that. I'm here to talk about video editing in Blender 2.5. I was originally planning on posting a new LMMS tutorial, but that didn't work out. It did work out for me to spend more than two hours trying to do my video editing in Blender though.

I was trying to add some overlays during certain parts of the video. That really should be no big deal, I mean there are tons video editors I've done this sort of thing with, and probably plenty editors that I haven't tried. You'd think I'd be able to add a couple overlays in no time at all.

That's what I thought, but I very quickly became aware of several little quirks and flaws in the system. Firstly, seeking is totally broken. I can play the movie and make note of what was going on during frame X, and then stop the movie. But then if I jump to frame X, it will sometimes be somewhere completely different. A certain frame very seldom remains the same when you jump to a different part or play the movie again. On top of that, it seems to randomly cut off the beginning and ending as well.

I learned that going back to frame 1 and pushing the "Refresh Sequencer" button will occasionally snap things back to normal, but it breaks again the moment you change from frame one regardless of how you do it. This is especially a problem when it comes to exporting the movie file, as this problem also happens when outputting frames to the file.

I spent quite awhile trying to get it to work properly, as my overlays stayed in their place. It was just that they started at frame X, and what was going on during frame X in the movie file I'd imported was never the same. I eventually gave up. I may never try Blender for video editing again. Then I guess I might come back later and give it another chance. But for the moment, I'm still using good, old, and a bit to minimal Pitivi which comes with Ubuntu.


Tuesday, June 28, 2011

Posting schedule

I've been holding this blog together with no real schedule or discipline. I recently decided to change that. From now on, I'll be posting probably three days a week, on Tuesday, Thursday, and Saturday. I may have to dig a little sometimes to come up with content for you, but I'll settle into it.

One thing I'll probably be doing is having more reviews, programming and tutorials, and less philosophy and humor. I know some of you like philosophy, so don't worry as it's not going away completely by any stretch of the imagination.

As always, leave comments telling me what you want me to write about. Maybe a there's game you'd like me to review, or some nifty new programming language you want me to talk about, or maybe you just want me to quit jabbering and work on my 3D game projects. Whatever the case, you can let me know with comments.


Sunday, June 26, 2011

More Cyberspace experiments

As you can see, it's hard for me to stop working on this setup. It's really pretty fun, and I'm always thinking of making that one little tweak. It's almost like this is becoming a project in of itself. It's not, but it sure seems like it.

Anyway, it's hard to figure out what people will notice first. I can't, so I'll just list some of them in no particular order.

I added some lens distortion to make it seem more unique from reality and give it a little bit of spice. On top of that, I also added little glowy things that fly around. I mentioned the importance of such things in my post about cyberpunk visuals.

I'm thinking the towers can use something so that they seem brighter, but without losing the strong contrast the wireframes have.

Keep in mind that I did all of this is probably less than 20 hours. This just shows how simple it is to create some fairly cool cyberspace visuals.


Thursday, June 23, 2011

Reviewing the Descent series, Part 2: Descent 3

I'm back with the second and final part of my set of Descent review articles. Before I get in I want to say that I made some updates to the first part, so re-reading it or at least skimming it for the changes will probably help you understand this one better.

I'm probably an outcast from the rest of the Descent players in the sense that Descent 3 is my favorite of the series. Most prefer the first or second, with the second I think being the most popular. I also like single player games better than multiplayer, which some of you may find really weird.

Too bad.

Anyway, this game uses the same concept from the previous games(that of a 360 degree spaceship shmup/puzzle game) and takes it all the way. The graphics technology available also did the concept way more justice, while still retaining  some fairly appealing visuals. Add in the fact that this game also ran on Linux, and you have something pretty awesome going on.

The storyline in Descent 3 takes a much bigger role in the experience this time, with numerous cutscenes and in game story details  via things like radio chatter as well as many more pieces being revealed during "ye olde" pre-mission briefings.

The story starts where the second game left off. The player is rescued by Red Acropolis, who explains that Dravis of PTMC(who I forgot to mention in the first part and had to go back and add) is responsible for the near death of the Material Defender. Katelyn Harper who works for Red Acropolis becomes the main informer and convinces the Material Defender to help Red Acropolis bring Dravis down. The plotline from then on is an intricate and involving one, which takes the cake pretty well. The ending is quite superb, probably ranking within my top five video game endings.

Levels are no longer simple get the keys blow the reactor and run levels. Every level leaves the player with totally different puzzles and goals which can be everything from protecting targets to rescuing prisoners to stealing parts for a new spaceship. The guide-bot stays on to help navigate the levels which are still fairly complex.

Probably the thing that got me the most about this game is the choice to include "jumping puzzles." I'm using a figure of speech I coined with some friends to reference any kind of puzzle which isn't one of thinking, but one of luck and often dexterity which must be attempted numerous times before even the most skilled players can succeed. Descent 3 has three such puzzles, which don't get in the way too much but can still be a nuisance.

There are twenty weapons, which work the same way as the weapons in the first games. The player can load one weapon from each type into each weapon bay and fire simultaneously if needed. Many weapons are carry-overs, redesigns, or simplifications of weapons in the originals, although there are some totally new ones as well.

There's a pretty good set of enemies which are pretty diverse and cool looking, and all the bosses are even more awesome. Some of the bosses err a bit too far on the "kills you again and again until you get lucky" side, but I didn't find them to be too much of a problem.

A lot of the sound effects are kind of hokey, but they work and are enjoyable to listen to. The music is pretty awesome in my opinion. It's a mix of electro, hard techno, rock, and more, although no genre dominates a single track even.

So anyway, I give Descent 3 a final score of 8.

I know you can't comprehend that I would give Descent 3 a designers score of eight when I enjoyed it more than the first game which I gave a nine to. It's because while from a "survive in the market and be designed well" point of view, Descent 3 is behind the first game regardless of it's better technology and my having enjoyed it more.

It's definitely a game I enjoyed, although the steep learning curve may turn a lot of people off as well as the slight annoyance a few of the puzzles pose. I recommend it to people who are willing to keep trying again when they hit a rough spot.


Sunday, June 19, 2011

Reviewing the Descent series, Part 1: Descent 1 and 2

There are a few games that I'm known to be a big fan of, some of which shape my tastes and my personality. The Descent series makes up three of those games.

I'm going to review all three of them in one article set, so buckle up and prepare for a possibly bumpy ride. Scratch that, get something with caffeine in it instead, it's much better for reading my game reviews.

The first Descent game, merely titled "Descent," came out in 1995, just two years after the world changing DOOM game. By the date, it's easy to guess correctly that Descent was a DOS game. It's not easy to guess that the graphics were quite a ways ahead of what was normally on the market at the time. Descent threw away all conventional gameplay and control schemes to come up with a 6 degrees of freedom game in which the player was allowed to move or turn in any direction without gravity bias.

Note that even thought Descent was originally a DOS game, there are modernized open-source ports of the game to newer operating systems which enhance the graphics as well as fix bugs. I'll be using screenshots from either the original or a port that replicates the old graphics though.

The plot places unnamed material defender #1032 in the cockpit of the Pyro-GX(which to this day is my favorite one-manned space fighter.) It seems that quite a few of the PTMC(Post Terran Mineral Corporation) mines spread throughout the universe are being plagued by an extremely complex nano-virus which is causing the robots to rebel.

The player is tasked by Dravis of PTMC with going through and manually destroying each mine by causing the nuclear reactor to self destruct, and then high tailing it out before it does(this can result in some really cool exit cutscenes esp if you have the moviepack for Descent 2). The player is also advised to keep an eye out for any hostages the robots have taken and rescue them as well.

Yea, it's a pretty simple storyline, and in a very arcade style by nature. What else can you expect from a 1995 DOS game though? There are also briefings before each level with tips and sometimes hints about the story.

The game has you ten weapons, five primary and five secondary. The player can naturally have one weapon of each class selected at a time, and fire both at the same time if they want to. Primary weapons all draw from the energy pool, except for the Vulcan Canon which has it's own ammo. Secondary weapons also have their own individual ammo banks as well. Nothing extremely complicated.

There's a fairly wide set of enemies the player may encounter, and some boss fights mixed in as well. Some of the enemies are even revealed during pre-level briefings before the player encounters them.

The sound effects do sound good even though they aren't necessarily the most "realistic." The music is also quite appealing if you aren't afraid of old school midi.

The game is from back when you had these things called difficulty levels. That's where you can set the game to be easier or harder in order to expand the range of skill-levels the game targets. It also makes things like learning controls easier for some people. The difficulty levels range from "don't spend more than 20 minutes in front of the boss or you might lose a little bit of health" to "the weakest enemy will kill you in under five seconds unless you're really talented." Hotshot is the medium difficulty if you're wondering.

As far as level design goes, the game is extremely linear. It's merely a search for the blue, yellow, and then red keys in that order, then a search for the reactor, and a run for the exit. The rest is basically just pure destructive fun. There are a few tactical details the player should be aware of, including energy recharging tunnels which have yellow stars floating in them, purple temporary cloaking devices, blue invulnerability orbs, and purple robot building tunnels, lava which will burn anything that touches it and cause explosions when shot.

All in all Descent is a pretty good game, and I recommend it. I'm not going to write a whole article on Descent 2 since I would be repeating a lot of what I said here, but I do have some information.

Descent 2 came out in 1996, using a very similar engine but with more features and slightly higher graphics capabilities. There are twice as many weapons, a lot of which are improved versions of the Descent weapons. There are also more enemies and there are more bosses are spread around even though are are less levels.

Story-wise, Material defender 1032 is forced by contract fine print to further help PTMC by purging the deep space mines, an obvious excuse for more levels. BUT, the storyline picks up and takes a few turns at the end of the game which paves the way for Descent 3.

The levels become markedly more complex, which brings the GuideBot into the series to help the player find their way. Although there are many much more complex puzzles, the levels can still be leveled down to the same old arcade style of the first Descent game. To be honest, I'm one of the few Descent players that didn't really get into Descent 2, preferring the first and third games. I did play through the second one however, and I enjoyed it.

And the finals scores:

Descent 1: 9/10

Descent 2: 7/10

Descent 1 doesn't really fail anywhere, it's just a really hard idea to make a 10 point game based on the premise. Descent 2 does fail in some places for me, mostly in level and puzzle design, but it makes up for it with nicer graphics and a good story. I recommend both games to anyone who like fast paced action mixed in with puzzle solving and a sweet arcade feeling. It's also a good burst of nostalgia for those of you that were around when it came out.

Stay tuned for the next part when I'll be reviewing Descent 3.


Wednesday, June 15, 2011

The art of the vacuum

"What is this obviously Gimped(like the image editor) picture doing on my screen?" "That's the memory mnemonic that helps you remember and helps me prove my point." "I don't like it." "Yes, but you will remember that you didn't like it, and that will help you remember the rest of the post." "Or it will help me remember me tying your arms in a square knot."

-- The Mcdursy brothers

You might be wondering, what place does a vacuum cleaner have in the lair of a techno-geek? We don't spill food, and when we do we always have our minions lick it up off the titanium floor one crumb at a time. Yet why do we still find them in almost every lair? Why should the modern techno-geek of today consider having one?

The answer is simple, computers NEED vacuumed. Seriously, if you want to keep your machine around, you should vacuum it regularly. It will vary for different machines and different climates, but I find once a month is usually pretty safe. Vacuuming is something that can only be trusted to the highest minions, and sometimes can only be done by the geek itself.

You may not believe me, or you may think you haven't the time. I was once of a similar mindset, and have recently come to greatly appreciate my decision to vacuum regularly. Why this recent burst of pride and appreciation?

You guessed it, another tech support trap. Well, this time it wasn't really a trap, more of a likes to have friends and money(or money anyway,) so it was only a small step away.

A very small step.

So anyway, I get a call from one of my non-geek connections saying they have malware. Yea that figures, non-geek kinda goes with that. I accept the job, and have them drop off the computer. I didn't have time to look at it right away, so I just stuck it in my task stack near the top.

It ended up sitting in my lair for almost a week before I got to it. Yea, the thing was filled with malware, running slower than a snail carrying an anvil, and seemed to be lower on RAM than it should have been. So I do a little bit of malware hunting, which is really hard since the thing is apparently part of some kind of botnet based on how it prevents you from using it while still using up so many resources.

I decide to open it up and vacuum it out, knowing non-geeks don't do that very often. I also had to put the drive in a different machine and run anti-malware scans from an external system. So I pop the thing open. What I saw made me sorry I hadn't bought that digital camera I had my eye one. The thing was basically a huge roach nest. This was annoying on a number of levels. For example, that machine had just sat in my lair(which now has roaches) for almost a week.

Anyway, it took me two hours to get the mess cleaned up. They'll probably be finding stuff left over from that incident jammed into tiny little crevices I couldn't vacuum or didn't think to. Even after that, I found that there was a thick layer of dirt encrusted on top of the CPU's heatsink which was behind a permanently attached fan. If you turn the machine off and open it up, you can feel the heat by holding your hand a few inches away, and you will burn yourself if you touch. That didn't come off easy either.

Yet all of this could have been avoided if they had simply taken it upon themselves to vacuum their machine out every once in awhile. Even non-geeks, it's very simple. Just open the case and clean out any dust(or bugs) you see.

So if you haven't opened your case in awhile, you might consider checking for bug infestations and cleaning the dust out.

Oh, and for those of you who haven't witnessed me ranting previously, you just did.


Monday, June 13, 2011

How do you take your coffee?

Foreward: If you get these jokes, good for you. If you don't get these jokes, good for you anyway because you're lucky. Note that you can only enjoy this article fully if you happen to be a trekkie.

Not Foreward:

Ask twenty people and you will probably get at least ten different answers. Well, twenty coffee drinkers anyway. Some only drink black coffee, others can only stand it with amounts of creamer that almost make me sick. Some take one lump of sugar, others two, some take only cream. Even after all that, you have espresso, cappuccino, latte, and all kinds of other variations which make coffee available to more people.

As a geek, I myself drink coffee at times. I'm highly irregular in every way however, and it's hard to put my finger on any habits. I've narrowed it down to mood and activities. Duh, staying up late working on a project equals drinking coffee. However, sometimes I drink it for the heck of it, sometimes I can't get enough of it, sometimes I just like the flavor at the moment, etc.

How I take my coffee is a can of worms in of itself. I've narrowed it down to mood. If I wish I had more time in my schedule, I often find myself diluting it with things like cream or milk, sometimes to extreme amounts. If I'm frustrated, I often find myself brewing a *very* strong pot and drinking it black. Then again I sometimes add extra sugar for the extra energy, or sometimes just mindlessly dump whatever is in front of me in the cup on the way back to my computer.

You may find it interesting that a person with my heredity would be influenced by things like frustration or wist-fullness. For those of you who don't know, I'm half Vulcan, about a quarter Klingon, and then another quarter Italian. It's hard to think such of a half-Vulcan, but remember what happens when you mix Vulcan and Klingon blood, let alone get Italian mixed in there.

Anyway, I tend to channel my feelings into things like how I take my coffee, so there's no need for worry about my 11 year mating cycle causing me to seek a warriors honorable revenge of my woman by putting the hit on you. Yea, mixing those together can create some interesting situations. ;)

I guess this is what happens when I try to write a whole article on coffee with too much of it in my system.



Sunday, June 12, 2011

Infiltrator - Season 2, Part 1:

Hazzah for being back in the business. Yea things are going pretty slow due to school, more of a fact of life than a variable. Anyway, I haven't got a whole lot to show, but I figure a little is better than none.

I finally got some rudimentary physics simulation coded in Ray3D, and I've been having a blast playing with it. I basically just set the boss to be a rigid body and turned on bounding box rendering(which you might not be able to see without clicking to zoom in). I've just been tweaking settings and experimenting with different gravity and collision methods.

One thing that's gotten left out of the story, is the part about the lasers. I just basically threw something together that will let you fire 30 times and then stop. The stopping is basically a safeguard that makes sure you don't run past the array length and crash the system(if you're lucky). I don't check for collisions to make the lasers die or anything. This is quite horrible for a number of reasons, and I've been putting it off because it kind of works. Let that be a lesson about throwing together temporary solutions.

I'm also adding more variables to the config file, making it less hard-coded. I'll probably eventually separate it out into several files for different categories making things more data driven, but I'm not there yet. I also discovered that preserved surface normals are not a given, which can lead to some really weird lighting situations.

Other than all that, I've done little more than experiment with the size of the boss, knowing it will become an important factor in scale later on. The scaling apparently also has effects on surface normals, which in turn contributes to the lighting problems.

I guess that sets me up for about 3 hours of work on this project so far. The new time budget is 500 hours, which is because I'm aiming for something fairly ambitious. I know it's probably another project that's doomed to failure, but aren't those ones the most fun?


Wednesday, June 8, 2011

Hungarian notation

Hungarian notation

Is the devil. Or not. Or maybe it's simply a neutral element like a ham and cheese sandwich. Meh, let's just write some philosophical and overly cynical prose about it. Oh, and those of you who aren't familiar with programming ideas or don't like reading about them, may get in line at the volcano entrance to my lair.

Hungarian notation originated way back in the day. It came from people who didn't like proper variable naming, and had no concept of which information was useful or merely a waste of space.

Hungarian notation is basically one of two systems where you prefix your variable names with extra info about them. So if your variable which is called "numCustomerSunglasses" was an integer, then by one system you would change it to "iNumCustomerSunglasses." By another system, you might classify it like so if it was used for stats analysis: "statNumCustomerSunglasses."

I am/was EXTREMELY opposed to Hungarian notation, and I noticed something in my code today:


                debug = true;

This is a form of Hungarian notation, and a perfect example of why it's so foolish. I scanned my code and found that some version of myself has been accepting method parameters with the same names as class members accept with a 'p' before the name.

This is quite a bad idea for a number of reasons. Probably the biggest is that it breeds confusion and bugs over forgetting to put the 'p' there or forgetting to leave it off, and then not noticing whether or not it's there when you're reading through the code again later.

Perhaps the biggest problems with Hungarian notation come from what it's original root must have been. That root is taking things that should be spelled out in simple English, and reducing them to terse, hard to remember symbols which often must be looked up. This increases coding time, increases debugging time, and is merely the product of the dreams of those inexperienced in coding.

Really "good" Hungarian notation can get variable names like "rgfpBalance" spread all over your code. And I kid you not, thats a perfectly typical name by that system.

I have a bigger beef with "systems Hungarian", which is basically a worse version of a classic coding mistake. In typical code:

        // an integer
        int variable;

And in "systems Hungarian":

        int iVariable;

As you can see, I hate Hungarian notation. This is probably the only occasion on which I have denied the right of balance. That's where I spend the better part of the post ranting about something, and then try to balance it out with some kind of optimistic statement about the pro's of what I'm ranting about. But this time I'm going to leave it without any form of balance, as I feel such behavior is inexcusable. And yes I'm getting it out of my code, so don't accuse me of being hypocritical.


Monday, June 6, 2011

Cyberspace - Almost a week later

So, I posted a few days back about cyberspace and cyberpunk visuals. I even included a nifty cyberspace visualization I threw together pretty quickly. I ended up liking it, and couldn't stop tweaking around with and improving it.

I finally pulled myself away from tweaking for a whole nine hours in order to render an animation for you:

I admit, the camera motion is pretty simple and a bit too fast, but I still like it. In fact, I'm thinking about contributing it to that web-show I mentioned I was making music for. I showed it to the rest of the crew and they're liking it, so it will probably evolve into the main cyberspace visualization of the show.

I can change the animation in a pinch, so I would only have render times to worry about. I could just wait for the very rare occurrence of the phenomenon where I get more than six or seven hours of sleep.

Yes, we still haven't released our first episode yet. Did I just say we? I'll probably be one of the main contributers, and I'm already an official part of the group. Be a little patient, links will come when the first episode it out.

I'll probably keep improving this, as there aren't any kind of little glowing things flying around. I should also add some kind of fish eye camera effects and some motion blur. That will probably make my already ridiculously over-sized composite network even bigger, but meh.

Friday, June 3, 2011

Infiltrator: reflecting and rethinking.

So, I started infiltrator back in March. It was destined to be an Ogre3D project in the style of Hovertank3D and Descent. Time passed, and things changed. I ended up dumping Ogre3D to stick with my Irrlicht based Ray3D engine. I threw away the non-vertical movement thing to go for a pure Descent style game. Then I showed a little progress for awhile, before updates for Infiltrator disappeared for over a month.

That was before, but now it's now, which isn't before. The sky is also a blueish color, not all goldfish are really gold colored, if you feed a baby goat rotten eggs it will barf pure uranium on you, and a handful of other obvious things.


Anyway, where was Infiltrator in that time? Did I forget and abandon it? What was that you heard about physics integration? What effect is this having on my time budget? Such questions as these which some of you surely have are the reason for this post.

So, why there were there no updates? Simple: Infiltrator wasn't progressing. There were two reasons for this. The first reason was that I started having boatload sized school chunks leaving very little time to spend on Infiltrator. This hasn't really worn off yet, and isn't likely to subside for awhile, so I'll have to get used to squeezing what little time I can in on weekends and such.

The other reason was that I had a really clever and sneaky programming problem. I decided to integrate physics using IrrBullet, which was apparently one of those things... You know, the kind where everyone gets it working using a totally different solution unique to their setup, and very few people have the same set of nightmare inducing problems. Yes, nightmare inducing, literally. But that's for another post. It took me awhile to make it work okay?

I will admit, that really killed my initial plan for a 250 hour time budget. Integrating physics alone probably took about fifty hours right off the top. That would put me at 78 hours, and I'm just getting started building the base for the game. I admit, a lot of that time went to wasted Ogre3D work and that physics integration fiasco, but part of that just goes to show that this is a way bigger project than I had originally thought or even planned.

All of these things led me to start rethinking Infiltrator. I will reassign a time budget, which will start at zero even though I already have some work done. I'm also rethinking the scope of the game. Things like whether or not I will take it to the point of integrating composite effects into Ray3D, how many levels I want and how complex they will be, whether or not I will be replacing some enemies with higher detailed ones, etc.

I'll get back with Infiltrator Season 2 part 1 once I have a little more to show. All I have right now is a really simple rigid body demo for the barebones physics integration I have. Once I channel this into the game and apply it usefully, or decide I don't need it and go on without physics, I will be ready to show some of the work.

Anyway, happy don't trip over a rotten onion and fall down the stairs ending up breaking your face on your neighbors autographed $5300 electric bass day.


Wednesday, June 1, 2011

Cyberpunk Visuals

How many of you have seen cyberpunk or cyberspace visuals in one form or another? A lot of you huh? Well, as a techno-geek, I'm here to over-analyze it for you. Let's say you want to have cyberspace in your game, or maybe you want to add that extra cyberpunk touch to the visuals. Maybe you just want a new desktop background. Whatever the case, I love this subject, so it should be fun to read. ;)

There are basically three kinds of cyberpunk visuals. The first, are cyberspace visuals. You have glowing things on top of black or near black, probably lots of other glowy things flying around. You can throw in some 0's and 1's for good measure, and maybe some assembler language. You can have big glowing towers, grids, circuit-board designs, or whatever else you want.

Some examples of cyberspace visuals:

Then you have urban visuals. These are basically demonstrations of industrialization, dystopian societies, and a post apocalyptic world. Common themes include Night time cities, places that look like they've been bombed out a hundred times over, huge buildings, and dark alley style places of the underworld.


Even after urban visuals, you have cyborg visuals. These are here to express the ideas behind the combination of man and technology more directly. Cybernetic implants, people with wires hanging out of their heads, androids, and others are prominent here.


Cyberpunk visuals aren't extremely strict however. They also seem to range from doing nothing but communicating ideas to being there only for the visual appeal. All in all, it's not that hard of a style to recreate. Naturally, cyberspace visuals are the easiest, as they contain no real world objects. Urban visuals are usually in the middle, needing a lot to be done, but not necessarily in extremely high detail. And cyborg visuals tend to be the hardest, especially if they are CG and even more so in real time. This is because of the huge amount of detail required.

I can even crank out some cyberspace visuals right now...

That took less than an hour. It was pretty simple really. I used gimp to draw me up a long string of zeros and ones, then slapped them onto a bunch of transparent flat quads. After that I took the schematic's I'd drawn up earlier and stuck them on a floor plain. I threw in some solid wireframe towers and a solid wireframe monkeyhead, and then was ready for post-processing effects. That was actually the hardest part, and if you don't believe me, then take a look at my composite network in blender:

See what I'm saying?

Anyway, duplicating cyberpunk visuals isn't that hard, and can be really fun. That said, if you're having trouble doing cyberpunk visuals, you can always start by trying to duplicate another cyberpunk scene. This way you'll learn a lot about how cyberpunk visuals work while getting ideas for things to use in your own creation.

As I implied, cyberpunk visuals are fairly loose. There isn't some set of rules that I check a scene with to decide whether or not it's cyberpunky. To quote cyberpunkreview about what loosely describes cyberpunk:

"Cyberpunk is about expressing (often dark) ideas about human nature, technology and their respective combination in the near future."

This is basically the same for cyberpunk visuals. Cyberpunk visuals are simply visual expressions of cyberpunk ideas.

Hm, I like that picture I made. I think it will be my new desktop background for awhile.