Showing posts with label process. Show all posts
Showing posts with label process. Show all posts

Monday, November 19, 2018

Rinse and Repeat HD remastered, and three years of reflections and thwarted plans



I've just uploaded an updated version of Rinse and Repeat: it is now known as Rinse and Repeat HD, which is basically the same version currently playable at the Victoria and Albert's Videogames exhibition.*

In addition to fancier graphics, I've also: added gamepad / rumble support, re-programmed the entire scheduling algorithm to be more stable, and tweaked much of the balance and feel.

If you're not familiar with the game, you should probably read my artist statement "Rinse and Repeat as cup runneth over" so that you know how the game works.

The rest of this post will assume you mostly know what it's about already!...

Thursday, September 20, 2018

Fall 2018, teaching game development memo

Sorry I haven't posted lately, we've been pretty busy here at NYU Game Center with the start of the new semester. We're also currently in the middle of some curriculum renovation for our game design programs.

First, we're increasingly adopting JetBrains Rider as our code editor IDE of choice. It is free for students, common in commercial studios, and it's supposedly even used by the Unity CTO himself. While I find Rider to be somewhat annoying in its code style suggestions, its Unity-specific benefits seem to justify it as a teaching tool. We're also teaching source control with Rider's built-in Git support, instead of using a dedicated tool like SourceTree or GitKraken. (If this semester is a disaster though, I might go crawling back to VS Code and GitKraken.)

Second, we're starting to teach new game genres beyond mainstays like platformers. For instance, our MFA studio class now begins with a Fungus-powered visual novel project instead of a traditional platformer. This is partly a reflection of where contemporary game culture is at, where visual novels are perhaps more popular and relevant than platformers today -- but also a visual novel framing helps students focus on different development skills, like narrative design and pacing.

Third, we're gradually moving towards more of a "core studio" design school model, where every 3rd year student will be required to take core studio classes about making self-directed projects. Previously, undergraduate students would optionally enroll in these project studios, but we found that many of these students would opt out in favor of other electives -- and then they would feel unprepared to take on their capstone project in their 4th year. The goal is to normalize "bigger projects" for them. It's also a good opportunity for them to bond with the rest of the students in their class year.

As for my personal teaching load, I'm looking to debut a new class next semester about Let's Plays / game streaming culture. Game streamers are some of the most popular and visible figures in game culture, or even the larger internet as a whole, but I find that most of game academia doesn't really engage with it. It's partly a generation gap thing, where lots of middle-aged and elder millennial faculty (like me) didn't grow up with streaming and still view it as somewhat of an aberration / stain on discourse. However, there's no question that no one reads game critic blogs anymore (RIP, Radiator Blog!) and YouTube and Twitch are driving the big cultural conversations today.

As a discipline that seeks to engage with public game culture, we have an obligation to figure out how to analyze and teach this subject! So far, I'm still figuring out my course design, but I know I want to challenge students to become live game streamers themselves as part of their final project. I'll also be leaning heavily on T. L. Taylor's imminent book "Watch Me Play: Twitch and the Rise of Game Live Streaming" for most of the readings. Maybe next year I'll be able to report back on how the course goes.

Tuesday, June 5, 2018

Remastering Rinse and Repeat

Rinse and Repeat remastered, for Radiator 3 (2018)
Rinse and Repeat (2015)
I'm nearing the end of the remaster process for my shower game Rinse and Repeat, as part of a future re-release planned for late 2018. As I've said before: if you have the time and energy, I highly recommend remastering your games -- you get to revisit all the compromises and sacrifices you inflicted on yourself, and now you're not desperate to get the game out the door -- you can finally do things calmly and properly.

The time difference helps you see the project with new eyes. In my case, it's been about two and a half years since the original Rinse and Repeat release in October 2015. Game engine technology has changed, my skills and tastes have changed, and it's surprisingly therapeutic to revisit my past decisions. Like, why did I give everything a weird green tinge? I don't remember. Maybe I had good reasons that I've now forgotten.

Here's some of the specific changes I made to the shower scene, and some of my reasoning:

Thursday, May 24, 2018

Games as Research symposium, after-action report


A month ago I attended a one-day Games As Research symposium, hosted by TAG at Concordia University and organized by Rilla Khaled and Pippin Barr. If you want my rawest thoughts, here's my live tweet thread from that day.

I learned a lot about design history and current methodologies for studying how a game is made. Here's some of the common topics and threads that we kept coming back to, and a brief summary of each presentation:

Sunday, May 13, 2018

Dreamhouse process diary and prototyping notes + a better retro 3D low precision vertex shader


In collaboration with local NYC-area arcade collective Death by Audio Arcade, me and several other gay / queer artists are making small games for an event at a Brooklyn queer arts space called Dreamhouse / (formerly known as The Spectrum). My contribution is shaping up to be a retro low polygon 3D brawler called "Dream Hard."

If you want to play it, you'll have to visit The Dreamhouse, which will house the only public display of the game in the world (for the time being), starting in late May 2018.

I don't have much time to work on this, so grounding the concept firmly within a clear retro arcade genre helps me work quickly with less realistic visuals and simplified character art, while also engaging deeply with the arcade tradition of game design. Specifically I'm riffing off one of my favorite genres, beat 'em up games like Die Hard Arcade, X-Men Arcade, Simpsons Arcade, or the iconic Street of Rage series, which all offer breezy brawling with strange setpieces and colorful sets.

Here's some prototype GIFs and notes from my development process...

Thursday, February 8, 2018

Postcards from Unreal, pt 3: on spaghetti monsters

Unreal Engine 4
We're now a few weeks into the Unreal level design class, and things seem to be going OK. Our students have enough familiarity with Unity that they're able to digest a lot of the 3D workflow without too many problems. People are happily grayboxing here and there, and we recently did an intro to Blueprint scripting.

In the past, I've been pretty skeptical of teaching visual programming methods to students. Teaching a specific visual scripting tool always felt like we were locking students to that toolkit, versus learning how to code in C# or Lua or JS, which is a generalized language useful across multiple engines and multiple industries. Visual programming was considered a relatively niche practice, where you might mock-up an art installation in MaxMSP but not much else, and even Unreal used to confine visual programming to its Kismet level scripting system. (The precursor to Blueprint.)

However, that criticism of visual programming is gradually losing its power as this type of practice becomes more common in the game industry. Many Unreal Engine 4 devs (as well as Epic themselves) make heavy use of Blueprint for making games, a lot of Unity devs rely on the third-party Playmaker plug-in, and even upstart engines like Godot support a visual programming workflow. AAA texture generating darling Substance Designer also has a heavy node-based workflow. It's everywhere!

Saturday, December 30, 2017

Postcards from Unreal, pt 2


My Unreal Tournament 4 deathmatch map "Pilsner" isn't really done. But as an exploratory project, I've fulfilled my goals to learn the basics of building 3D spaces in Unreal. I also reached the point where I needed an actual player base to confirm how the map plays, or at least tell me that it's total shit -- but it looks like I can't even get a denunciation when Unreal Tournament 4 seems to have a grand total of like 5 players!

I appreciate all the pre-configured art content and basic gameplay structures implemented in the game already, and it has been really helpful for me to learn how to configure my assets and work in Unreal projects -- but this experience has also convinced me that I shouldn't try to teach level design to my students with this half-finished basically-dead game.

It was also questionable how well this was going to run on our students' laptops, because half of them use Macbooks with small hard drives, and very little room for a Windows partition and an additional 50 GB for UT4 and the UT4 editor. This leads me to one of the original reasons why we stopped running a level design course: there are simply no popular first person multiplayer games with modern level editor suites that were easily deployable on our students' computers. (Given how long it takes to make games, computer labs are impractical.)

Wednesday, November 29, 2017

The destruction / extinction of digital brutalism

screenshot from "Brutalism: Prelude on Stone" by Moshe Linke
The other day in level design class, a student brought up Moshe Linke's "Brutalism: Prelude on Stone" for discussion. What does it mean to re-create / re-construct / build a brutalist building in a video game?

To review, brutalism was a design ideology deployed mostly in public architecture from 1950-1970s throughout the world, exemplified by large blocky concrete structures in Soviet Russia and/or brick housing developments across Europe.

For the last 2-3 decades, people have criticized brutalism mostly as a cold, ugly, overly institutional style that ignores local communities and human warmth -- and recently that's been amplified by various material and technical critiques of brutalism (poor weathering and staining; environmental impact of concrete; seismic issues; etc) -- but now that we've started demolishing iconic brutalist buildings around the world, there's been a resurgence in defending brutalism before it becomes extinct.

Given that brutalism faces a real existential threat, and it is so heavily focused on the real-world material aspects of architecture, does a digital brutalism make sense?

Wednesday, November 22, 2017

Postcards from Unreal


I'm building a Unreal Tournament 4 level in preparation for a level design studio class I'm teaching next year. I've been using Unity for a few years and now I feel very comfortable with using Unity for my projects, but I don't really have much experience with Unreal Engine 4. To try to learn how to use it, I thought I'd make a small UT deathmatch map.

Honestly, I think Unreal Tournament is a colossal over-designed mess of a game -- players can slide, wall run, dodge -- use 10 different weapons each with primary and secondary fire modes... I prefer the simplicity (and elegance?) of Quake 3 and its successors. Basically, Quake feels like soccer, while Unreal Tournament feels more like American football with 100 extra rules tacked on.

Nevertheless, it's important to be able to internalize how a game plays, even if you don't like it very much. I've tried to provide opportunities for sliding and wall running, and I've focused on what seems like the core three weapons in UT (Flak, Rocket, Shock) while attempting to channel the UT series' sci-fi urban industrial aesthetic.

Saturday, September 23, 2017

Writing stories / dialogue for Unity games with Yarn

I've been using Yarn for a little while, and I've grown to prefer it as my "talking to NPCs" solution for game development. If you're not familiar, Yarn and Yarn Spinner are a pretty powerful Twine-like plugin for Unity (though it could technically work in any C# game engine) that's geared towards writing video game dialogue, and it was most famously used for Night In The Woods.

Yarn is fairly lightweight, extensible, and it basically gets out of your way. Want to make a really big long monologue, or 100 little pieces of dialogue snippets? Yarn works well for both of those use-cases. (If you want something that's more focused on manipulating very long dense passages of text, you might want something more like inkle/ink, the system that powers the huge 750,000 word narrative game 80 Days.)

To try to provide more resources for other Yarn users, or potential Yarn users, here's a write-up with some advice and a short guide to working with Yarn...

Thursday, September 14, 2017

How to Graybox / Blockout a 3D Video Game Level

from de_crown, by FMPONE and Volcano

UPDATE, 11 NOVEMBER 2021: this blog post is OK, but I would recommend reading the "Blockout" page in my free online work-in-progress level design book instead.

ORIGINAL POST:

While planning a level design class, I googled for a good article about blocking-out or grayboxing a 3D level design prototype. I didn't really find one that actually went into "how" you might actually go about grayboxing a level, so I guess I have to write it.

Grayboxing is a level design practice where you build a rough block-out version of your level using blocks (usually gray boxes) so that you can iterate and test the layout as soon as possible. Almost every 3D game engine has some sort of box primitive tool -- if you know how to use that, then you can graybox.

Before you graybox, you must make sure you've established a general game design direction. You should generally know how this level might fit into your game or workflow. There's no point in grayboxing if you don't even know what the player should be doing, or what this level is supposed to convey. Is the level supposed to be easy or hard? Does it focus on combat or non-combat? Should it feel scary or safe? Level design must always exist in the context of a larger game design, or else you're just wasting your time.

Then, open up your 3D game engine, and let's start laying down some boxes...

Tuesday, August 15, 2017

StoryCode August 2017 Forum at Film Society, Lincoln Center, NYC


Next week on August 22nd, I'll be giving a presentation for StoryCode, a local community group focused on immersive media and storytelling technology. As one of the few game designers invited to present in their lecture series, I thought I'd try to explain how video games conceptualize narrative, interaction, and expression, to an audience that maybe doesn't play that many video games -- or at least, they don't play what we consider to be the state-of-the-art narrative games.

I'm also being required to talk about my games and present them as case studies, even though my games don't fit neatly into the "narrative game" genre. I think I'll probably just open my actual project scenes in the Unity editor and mess with my scene setup and code, which usually entertains people well-enough? It'll also be a short primer in foundational ideas like immersive fallacy / procedural rhetoric / platform studies, and the idea that production value and paratext amount to their own kind of "story."

The presentation is free and open to the public, but I believe you're encouraged to sign-up and RSVP via this Meetup page or something.

Tuesday, August 22, 2017 @ 7:00 PM
Elinor Bunin Munroe Film Center @ Film Society of Lincoln Center
144 West 65th Street, New York, NY (map)

Monday, July 10, 2017

Bevels in video games


Like a lot of digital artists today, I learned Photoshop in the late 90s in order to make awesome-looking fan sites and "professional" forum signature images. One of the Photoshop tricks I learned was the "Bevel" layer style, which embosses a faked thickness and depth onto a layer, as if it's popping outward toward / inward from the viewer.

When I first learned it, I felt powerful, like I could use Photoshop to "paint in 3D" and make my Starcraft fan forum avatar look even more professional. But then I realized that the bevel had a very specific look to it, and I started seeing that look everywhere. My astounding bevels quickly lost their sheen. To this day, the conventional wisdom in 2D game art is that you should just handpaint your own bevels, and it only takes a few minutes when you get good at it anyway.

Today in 2017, the bevel has arguably taken over 3D environment art, and like all the other game art gods, it demands labor from us. But unlike 2D bevels, there's no strong consensus on what the best 3D bevel techniques are, which means we're free to experiment...

Thursday, June 29, 2017

The Tearoom as a record of risky business



WARNING: This post spoils what happens in The Tearoom. If you care about that, you should probably play the game before reading any further.

The Tearoom is a historical public bathroom simulator about anxiety, police surveillance, and sucking off other dudes' guns. In it, you basically cruise other willing strangers for sex, and try to have some fun without getting caught by undercover police. It's heavily inspired by Laud Humphreys' epic Tearoom Trade (1970), a meticulous 180 page sociological study of men who have quick anonymous sex with men in public bathrooms ("tearooms" in US, "cottages" in UK), along with interviews, diagrams, and derived "rules" for participating in the tearoom trade.

My game is set in a small roadside public bathroom in Ohio in 1962. Much of the game sequences and gameplay are based on Humphreys' notes (in his book, Humphreys even calls it a "game" himself) and the layout of the bathroom is based partly on diagrams from his observation reports. And while I wanted the game to be about gay history, I also wanted it to speak to how video games think of sex and violence.

This is also the most complicated sex game I've ever made. It took me ~8-9 months of on-and-off work to finish it, it has several different systems going on, so it's going to take a while to unpack the history and my intent. Buckle up!...

Friday, June 23, 2017

Some recent conversation on cultural appropriation


A few months ago, I wrote about how I think VR "empathy machines" are basically just a form of appropriation, where VR brands associate themselves with vaguely progressive political causes in a bid to make VR seem more relevant.

Maybe a lot of people still aren't really sure what "cultural appropriation" means? It's also a bit more of a US-thing, because of how race in the US works, so if you don't live in the US then you might not be as familiar with it.

If you're in a hurry, Amandla Stenberg made a popular 5 minute video in 2015 called "Don't Cash Crop On My Cornrows". Back in 2015, white performers like Katy Perry, Taylor Swift, and Miley Cyrus were incorporating black music, black hair, and black memes into their acts, but it seemed like that care suddenly evaporated when black people got killed by police. Are white people actually the anti-racist allies they thought they were? If this is "cultural exchange", then black people were getting a pretty bad deal -- in return, they weren't even getting their own lives!

However, the conversation on cultural appropriation has shifted since 2015. So as a sort of public service, I'd like to highlight some more recent writing on cultural appropriation, all published within the last month or so, to give a small sense of what some people are saying right now.

Sunday, May 14, 2017

Eyes on the prize...


I've been working hard on my historical bathroom simulator The Tearoom, and I'm desperately trying to finish it within the next couple weeks. Basically, I've been doing lots of art passing and tuning. I've added the two last characters, for a total of 4 possible dude archetypes to encounter in the bathroom. I also have 2/8 possible dicks implemented, I still need to add 6 more, but at least I have the workflow and functionality figured out. In the meantime, please appreciate all the care and detail going into modeling the bathroom stalls -- and enjoy them in their clean pristine state, before I dirty them with layers of graffiti...

Monday, November 9, 2015

"Rinse and Repeat" technical post-partum / how to do over-complicated wet skin shower shader effects in Unity


This is a technical overview of how I built certain parts of Rinse and Repeat. It spoils the game, so you should probably play it first if you care about stuff like that.

Rinse and Repeat took about 1-2 months to make. For these sex games, my development process can basically be summarized as "art first" -- my very first in-engine prototypes are usually about establishing mood and texture, and setting up the character you'll be staring at, and these are by far the most important parts of the game.

Wednesday, October 21, 2015

"Psycho-material geographies" of 3D spaces, and The Beginner's Guide by Davey Wreden et al


This post gives vague conceptual SPOILERS for The Beginner's Guide, and spoils a few specific moments. You really shouldn't worry about it, I mostly just talk about me in this.

I was one of the people who secretly played The Beginner's Guide long before its public release. Why was I given access, and not someone else? Well, that's kind of what the game's about: a "Davey" who is talking through his relationship with another designer named Coda. Who did Coda want to play their games?

In her own excellent post about TBG, Emily Short argues that the game has a very spare "personality-light" kind of style compared to what Short regards as more distinctive contemporary experimental designers like "Stephen Lavelle, Michael Brough, Pippin Barr, [... or] Robert Yang." That shout out (thanks!) is what stirred my memory...

I remember playing this seven months ago (back when it was simply codenamed "The Author") and suddenly thinking... wait, is Coda supposed to be me?

Wednesday, February 18, 2015

We are drugs; speculative dev tools and psychedelic hologram futures.

This post is adapted from a talk I gave at Indiecade East 2015, where the theater was way too small for the crowd, so not many people got to see the talk... sorry / oh well. Here's basically what I said:

Our story begins on October 8th, 2014, on a very special episode of the Late Show with David Letterman. He was ending that episode with a musical guest from Japan -- a holographic vocaloid named Hatsune Miku. Pay attention to Letterman's barely-veiled incredulity as he introduces her. He can't believe the words coming out of his mouth:



But what really makes this moment is the ending, after the performance. Letterman doesn't even know what to say, and he knows he doesn't know what to say. The experience was completely overwhelming, so Letterman has to somehow pivot back to interpret it for his audience (mostly moms and dads from Milwaukee) and all he can muster is a facile comparison to "being on Willie Nelson's bus." (Willie Nelson, if you're not familiar, is a celebrity notorious for his drug use, among other things.)

The meaning is both clear and agreeable: Hatsune Miku is drugs.

Wednesday, February 4, 2015

Teaching game development... in public!


I remember one time in design school when a guest critic called out my classmate's project, a website to facilitate bartering. The critic balked at the idea of imposing specific procedures on how people should conduct a trade, and he talked about how the parents of Park Slope, Brooklyn shift several million tons of used toys using a very active Yahoo Groups (the class gasped in horror)... sometimes all a user wants is a message board.

So I'm one of those \Blackboard / "enterprise-class courseware learning platform" skeptics. If you've had the good fortune of never having to use one, they look like the image above, usually some really bloated outdated web portal thing with 50 different "learning modules" that 90% of university classes never use unless they're forced by the department.

As an instructor, I don't want to "setup an assignment" by digging through three different layers of menu screens! Sometimes all a user wants is a message board.

This semester, I'm running my game development courses on GitHub, Steam Community, and Tumblr. All three provide some semblance of message board functionality, so they're all suitable for teaching. Here's how I'm doing it: