!!Con West 2020: Maria Mishurenko - Its alive, but not for long!!

Mar 20, 2020 18:51 · 1566 words · 8 minute read realtime generation basically scaling every

Hi. I’m Maria. I’m based in New York. And I’m a game designer and VR developer. When most people think about virtual reality or imagine its future, they usually imagine that. When in fact, my version of the bright future of utopian technocratic Singularity looks more like this. ♫ United Underground Radio ♫ ✝ We put “sur” in survival ✝ ♫ United Underground ♫ ☢ We put the “rad” in radiation ☢ ♫ United Underground Radio ♫ ♨ We make lava lavish ♨ ♫ United Underground Radio ♫ ☣ We make you fall in love with fallout ☣ ♫ United Underground Radio ♫ ☠ We can mute mutants for you ☠ ♫ United Underground Radio ♫ ♾ Sing Singularity ♾ ✂ With Us ✂ (laughter) So yeah! That was the trailer for my game, Bizarre Barber, that was actually released four days ago. (applause and cheering) Thank you. And this is how I describe my job in a nutshell.

01:39 - So instead of saying I’m fiddling all day with very badly written Unity API, I just say this. I create sophisticated life forms. Like that. (laughter) So yes, actually, I was very lucky to get funding for the game. And… The funding was tight. It was indie. And we had to make characters. And characters are hard on an indie budget. These are all stages of, like, typical development cycle of character for a video game. Except for VR, it also has to be very well optimized.

02:19 - So how to do this on a budget? Especially if we need to make thousands of them. So in our initial game design document, we had this idea, to have like roughly – like you saw these mutant heads coming at you. Roughly 40, 50 mutants per level. And then it would be 13 levels. And then we’ll have birds for doing fancy things with motion. Then we’ll have bosses, then we’ll have custom animals, and we have a three person team for all of that. So we needed to make about 1,000 characters.

02:53 - And we decided that computer magic will save us. Procgen! (Procedural Generation) Computers are great at generating things, right? So we started in a very traditional way with the concept art process. Started doodling on paper. And then we did doodles in VR. And then we started to make the first generated sketches in Houdini. That basically consisted of combined primitives. We combined them according to certain rules.

03:23 - Houdini is actually a very great 3D package for 3D modeling and visual effects and stuff like that. The good thing about Houdini is that it’s basically a glorified spreadsheet. So you can model 3D things without even touching like a single vertex, without doing it in a traditional way, like artists are doing that, like sculpting and drawing stuff. You can basically program all those things. So this is a head. This is the code for the head. So in Houdini, you program with nodes. Basically every node is like some operation on a system level.

03:58 - And when you combine them together, it makes… things. Only on occasion we’ve been writing custom nodes. Basically like… Most of the Houdini instruments are pretty well written for just: Make this. And here you see the nose. So this is like basically the structure, the rule, the description, the ideal platonic model of the nose. That was first test results. Manual test results. So that was kind of like original conception for the characters.

04:31 - We want them to look somewhat distinct, so they won’t feel like they’ve been generated. We’ve got some rules for them. Even mutants need rules. One or more eyes, two ears, eyebrows, nose, mouth. We planned to add some animations. So it has to be like Well done for the smiles. Hair. It’s a game about cutting hair. And to make things easier for us, we decided to only do no textures, and only do vertex colors. Then you have some rules for the game engine.

05:09 - Because after Houdini, we had to import them into the game engine, and set up for the actual game. So there are some rules for this. The main thing that was very important for us was the ability to replace or correct anything without exiting VR mode. So we basically made the whole level design in VR. And this is how the process of thumbnails work. So we import them and then do little pictures of them. In Houdini, you can actually write in Python. So in addition to these ready nodes, you can have your own nodes with Python. For example, this is the code for a node that puts custom glasses over things and those glasses are scaling with the eyes. And you can also write in Vex. Vex is like this weird programming or expression language built in Houdini. If you have to write something really, really small, for example, the round nub of the nose so your nose can be wider or shorter, this is how you do this. This is Vex.

06:17 - You can combine traditional Python, you can combine very easy Vex, and you can also use built-in Houdini nodes. It’s a very cool environment for programming because it’s very visual. So for example, I find it difficult to conceive the whole system of code. But actually, this way I can visualize everything. So here is a thing that we wrote in Python for generating the complementary colors. So we don’t have to deal with these beautiful palettes. Python did that for us. And here’s the time (laughter) we finally had to generate it. So we set everything up. And then we set up the seeds. You see these little dots? Those are like every character. Thousands of them. Like, literally thousands in this video. Okay, let’s see. As you can see… The results are not that spectacular. Not at all exciting or enjoyable. In fact, maybe less than 1% resemble something close to the actual living beings. And it was very hard for me to separate good from bad, because in fact this process is the opposite of creation.

07:30 - You curate something and then you have to retire the rest. And when I say retire, I don’t actually mean they’re being sent to Florida to live in a nice condo. No. I’m just erasing them from existence. (laughter) And this is the opposite of creation. And I didn’t like this process at all. Unfortunately, I found this wonderful article just a week ago. It explains, it outlines all the reasons why generative design is doomed to fail, basically.

07:59 - So we won’t have generative buildings in the future or generative anything. Because people are not just, they just don’t like that. It just seems very strange and uncanny. And here are some takeaways from our process. Quantity doesn’t substitute for quality, and becoming a curator is actually very dangerous, because curators are biased. They’re human beings. So when I start curating those “good” ones, they all look the same, basically. And they weren’t diverse or different at all. So here is the process of fixing our mistakes. First of all, we switched to manual generation. We still had a generator, but now you can work it all with your mouse, basically. And it was like a big increase in quality, as you can see.

08:49 - Then we started to do some more playtests, and we discovered that people actually liked repeated characters more. And every character shouldn’t be different. They like forming these in-game bonds. They enjoyed the predictability of these patterns. We engaged the community into the design. We asked them: How can we make the generator better and how can we generate more diverse characters? And it was really cool, because people started to design characters that looked like them. And we ended up with such widely different creative ways to do it. This is before and after. So you can see they helped tremendously.

09:31 - The last step that we attempted in fixing our mistakes was adding a MIDI controller. This process. To make it more fun, more accessible, and the best part of it – that you can actually do it as if you play music, and you can do it together with another person. So you can collaborate. This is realtime generation basically. In terms of time, it takes you maybe three or four minutes to make a character. It was still very very fast, and we had not thousands but 200 of them. So this is the slide with the tools and resources, if you want to start it.

10:08 - I bet you all have wonderful programming skills. And you know you can utilize them in Houdini. You can program your art and it will be beautiful. Most of the tools are free, except Houdini. Houdini is also free for non-commercial use, but for commercial use, you can buy it for, I think less than $300. So my takeaway is computers are cool and exciting, but once creative, nice, and warm people work together When creative people work together with computers, it’s even better. So the last one. This. Give me your cards. I will give you keys. I can give five. Thank you. (applause) .