Creating ‘Cyberpunk Alley’ in Real-Time Engine

Brandon Woodsford did a little overview of the production of the Cyberpunk Alley, assembled in Unreal Engine 4.

Brandon Woodsford did a little overview of the production of the Cyberpunk Alley, assembled in Unreal Engine 4. Full overview of the production and some nice tips about asset creation process.

Introduction

Hello, my name is Brandon Woodsford and I am a Video Game Environment Artist. I am someone that has always had a passion for video games, whether that be playing them or bringing them to life. I was born and raised in British Columbia of Canada, and got my first taste for creating Game Environments in my high school. I recently just finished my demo reel at Think Training Centre, which specializes in CG art for film and games.

1 of 3
1 of 4

Cyberpunk Alley

The idea for my Cyberpunk Alley scene came from two people. The first is a good friend of mine that wanted me to go the cyberpunk route because he had a friend that never finished his cyberpunk environment, and thought that I could pull off. At the time I wasn’t sure if this was the route I wanted to go in, as I had a different theme in mind. I knew that I wanted to do something sci-fi or apocalyptic, but I wasn’t sure at the time.The second was my game environment teacher, and he told me that people find these kinds of scenes very appealing and that they notice them more. I enjoy this genre myself, and after thinking about what they had to say I decided to listen to them and give it a shot.

Production

I started by gathering a lot of reference for my scene. There were two major things that I knew I needed from the start. I needed to get the look of the buildings right since they’d be making up my whole scene, and I needed neon signs. I began looking at Blade Runner for the look of my walls, as that film is one that defines the cyberpunk genre. After doing some research I found that the buildings were based off of the ones in downtown LA. So I based my walls off of those two references. Once I had the base of the buildings placed in the street, I then started blocking out the places that the neon signs would go.  I wanted to make sure that the neon signs would be able to light my scene properly, but not conflict with each other as that would distract you from the scene overall. When I had those two building blocks blocked in, I was free to start working on everything else in my scene.

1 of 4

Modeling

 The way that I approached the modeling of everything was finding solid reference for each object (or as best as I could). I can’t stress about how important it is to find reference for creating assets. I would create a Pure Ref file, and fill it with all of the resources I found useful. When it came time to model, I would boot up Maya and start modeling in there.  There were a few exceptions that required ZBrush and Marvelous Designer to be used first, but for the most part everything started in Maya. I would import a man sizer (a rough human model that was the height of the average man) into my scene beside the object that I would be modeling. That way I could gauge if the size of the asset I was making was the appropriate size for what it was. I would start off with a primitive shape (such as a cube or plane), and then just go from there, adding edge loops or adding other shapes to it, until it eventually became what it needed to be.

1 of 2

Modularity

When I started my demo reel, I was adamant on making it very modular. That’s part of the reason why I decided to go the cyberpunk route. I looked at the concepts that I put together (a bunch of pictures that I photo bashed together in Photoshop), and thought about what would populate my scene the most. What I got from that was that I needed a lot of trash, neon signs, cables, some larger assets like ATMs and Telephone booths, and even more trash. Hahaha Of course the building walls and sidewalks were very important modular assets that made up most of scene too. In order to make them more reusable, I made sure that each of the assets didn’t look the same from every angle (that way I could rotate them and they would look different) and then add a layer of grunge that was appropriate to what I was texturing. As that was went along with the theme of my scene.

Neon lights

When creating my neon lights, I already had a colour scheme in mind. The concepts that I put together had bright cyan and pink signs. When I was blocking in the lights, I used those colours. As for the process of making them, I started by designing them in Substance Designer (with of course the help from references). Once I got the design of them, I exported the area where design would show up as an alpha so I could use it as an emissive mask in UE4. From there I built a shader in UE4, and plugged the maps from Substance Designer into it. Once the shader was set up with everything hooked up, I would then place a light beside the sign in my scene that best represented the overall colour that came off of the sign. That way it would give off more realistic reflections in my scene, and effect the objects that were surrounded by the sign.

Texturing

I had two specific processes for texturing assets. For the unique assets, I would start off modeling a low poly in Maya. I would then make a high poly of the model. The process of which one I would start off with would depend on what the asset was. If it was a simple asset such as a cable or wooden board from the Ramen Bar, I would base the high off of the low. As it didn’t require a very detailed high poly to bake down. If it was a more complex object, I would start off with making the high, and the optimize it into a low poly. Once the low poly was finished, I would then UV it Maya and make sure it matched the same texel density as my scene. For materials, I made up a library of what I needed in Substance Designer, such as metal, plastic, wood, etc. They would need to be basic (because all of the specific detail would come for Substance Painter). I would then bring my models into Substance Painter, bake the maps of the high to the low poly, apply the base materials from Substance Designer, and then add the custom detail and grunge that the asset needed. The detail would just come from layers added onto each other until I got the look that I was going for. I would add greens and blues that would barely be noticeable, as that would hint at water damage or mold.  It would be these small details that would make the textures more believable. As for the other assets that didn’t need custom detail or weren’t focused on, that’s where I would use my second method of making them. I would either just add a tileable material on them, or create a general trim sheet texture and line my UVs accordingly to them (still making sure that it was the same texel density as everything else).

1 of 4
1 of 3

Effects

There were a few effects that from the start, I knew I needed in my scene to bring it to life. I needed steam, rain, and some animated textures for the TV screens that would be appearing throughout my scene. I gathered real life pictures of steam and rain, as I wanted to know what the end product would look like. I watched a lot tutorials on how to make particles in Unreal, and then applied the knowledge that I gained from those tutorials and then started to improve on aspects as I saw needed. As for the television effects, I would use a image spreadsheet and set up a main shader in Unreal. I would plug the image spreadsheet into a node called ‘Flipbook’. Which would determine how many rows and columns that spreadsheet had, how fast it would play form beginning to end. I would then use a black and white alpha (plugged into a what essentially is a ‘Panner’ node) that controlled the amount flickering I wanted the image to have. That way it looked like that screens weren’t in perfect condition, and needed to be checked upon.

1 of 2

Brandon Woodsford, 3D Game Environment Student at Think Tank Training Centre

Interview conducted by Kirill Tokarev

Follow 80.lv on FacebookTwitter and Instagram

Join discussion

Comments 0

    You might also like

    We need your consent

    We use cookies on this website to make your browsing experience better. By using the site you agree to our use of cookies.Learn more