Friday, January 27, 2012

THAT Mod, by Axel "Xenon" Shokk

I just wanted to remind people that this existed, because it didn't get nearly as much coverage as it deserved.  It reminds me of an alternate universe GeoComp, where Sparth wouldn't have been so heavily influential in emphasizing economy of form rather than some crazy acid-induced color vomit -- and I truly use the word "vomit" in the best sense possible because walking through these places is fascinating as Xenon dances on the edges of realism so delightfully. Again, we must thank the indie FPS community.

I also remember reading somewhere that he was working on a sequel in Unity3D...

Download THAT Mod @ ModDB. (132 mb)
(Source SDK Base 2007 required... so basically, it's free.)

Tuesday, January 24, 2012

The joys of using world space / procedural UVs for Unity3D

NEW, 9 July 2013: I've detailed a different implementation of the same effect, better for texturing smooth bumpy surface / terrain, in another post -- "A Smoother Triplanar Shader." I still think this way is good for some things too, though.

One of the greatest benefits of old Quake-lineage BSP systems is managed UVs for world geometry; move your polygons wherever you want, and let shaders texture and tile them properly. It lets level designers focus on building, and frees environment modelers to focus on geometry rather than the mundane work of UVing and texturing yet another concrete wall.

If you're an indie developer doing the work of both, well, any shortcuts are welcome. And if you're not thinking about these things, then just ask yourself whether the player's going to look at this thing you're modeling for more than a few seconds. Just use a block and let the engine worry about it.

If you're an actual graphics / shader programmer, you can do pretty nifty stuff with this technique: Tom Betts at Big Robot is working on a not-Minecraft, and talks about using "voxel skinning and virtual texturing" which sure sounds and looks rather pretty. It's kind of similar to what Valve used for the caves in Half-Life 2: Episode Two -- let the computers do math and walk away!

But I'm not Mr. Betts, so I'm using a much more pitiful and simplistic thing.

Here's the shader I've been using for my projects, slightly modified from something I found on Unity3D Answers a long time ago. I found it after a lot of fruitless digging through significantly worse implementations -- one editor script destructively re-UV'd all the meshes in your scenes, the other script did some weird thing with material offsets -- just leave that all at the door and use a shader-based solution, trust me.

Thursday, January 19, 2012

Level With Me, a post-mortem / some unnecessary notes / dear players, it's no longer okay to not know how video games work.

To be clear, I think all readings of "Level With Me" are valid, even the ones that say it's pretentious (though I think it's a remarkably contentless thing to say about experimental work) and it's indulgent (which is like berating a biography for focusing on an individual). But at least it implies a player's willingness to read the levels, even if they don't like what they read -- assuming they even played it.

Game design relies on a theory of mind for players. By that measure, many mainstream commercial games think players are utter simpletons and strive to explain every single thing -- Arkham City will have the Penguin frequently tell you how upset he is and how many enemies are left in the room; tool-tips will remind you that, yes, that glowing electric plate is electrified -- if you prefer your games to talk down to you, to patronize you, then I'm sorry you're going to be disappointed with this mod.

I was shocked, then, by the most common line of criticism I saw: a refusal to read, an insistence that a level without a puzzle-y Portal puzzle is a bad level. It's like the rhetorical equivalent of donkeyspace. I literally can't go through the mental gymnastics required to conclude that challenge is the only interesting thing about first person single player games. Comments like that make me miss all the people who said it was pretentious; I want a higher level of criticism.

Then I watched a "Let's Play" of Level With Me, even the grueling hour or two where he's stuck at the end of chapter one -- and at the end of the whole playlist, he says he doesn't think he "got it" and wants an explanation. Well, whatever you took from it is what it meant. You don't need me to tell you what it means. (This, perhaps, is what the anti-intellectual "pretension police / gestapo" understand better than anyone else.)

Nonetheless, given his struggle and triumph, I'll honor his request. If you can't bother playing the mod, check out his Let's Play Level With Me playlist on YouTube. Now, here's an explanation of my intent and one possible reading of the mod. There are MASSIVE SPOILERS. You were warned:

Saturday, January 14, 2012

Tales from Zobeide

The biggest bottleneck for city generation right now is time; it takes 80 seconds for 2800 buildings. I guess I can just delay the player and make them watch a lot of loading screens? I'm also hoping a "complete" city will have at least 4000, which will probably be about 1.5 million polys -- but they're among the cheapest type of polygon to render, so it'll hopefully be okay. Draw calls seem under control too; I'm merging entire city blocks as combined meshes. (And I'm testing on an integrated card, so it should be fine.)

Friday, January 13, 2012

Postcard from Antiquity

Currently finishing up a geocentric space RTS, another collab with Eddie Cameron, for the Super Friendship Club "Universe" pageant. (Newer interface demo is playable here.) Come make games with us!

Sunday, January 8, 2012

Postcard from Yorda

Started working on an Ico-ish game on a whim, now I have a half-finished monster -- all because I have to prove to Unity's Flash export that I'm not going to let it beat me with it's half-implemented functions and dozens upon dozens of undocumented bugs.

Right now I'm just improvising a giant castle thing, and then I'm going to sprinkle some gameplay in there or something -- I've left some empty spaces for puzzles, whatever those will be. Try out the v0.3 prototype here, which'll probably be the last public prototype since so much of this one is about novelty:

(click to walk, double-click to run, or just sit back and let the pathfinding work its magic)

Thursday, January 5, 2012

Postcard from Zobeide

Zobeide is going to be a hypertext FPS about the danger of desire. I have a decent interface with Twine working, but the seamless level-sharing has been kind of a technical roadblock, with the Playtomic API randomly deciding to fail sometimes. Now I'm thinking I need to have a generic backup city to load in case it can't reach the servers. Next, I need to model some more buildings and think a bit more about the interaction / aesthetic.