80’s Vending Machine - Creating a highly-detailed, life-like prop

Grab a snack and join us for this tasty article with Jonjo Hemmens as he walks us through the creation process for his 80’s Vending Machine. This article is packed full of everything you need to know when creating realistic props. From using reference and feedback to create hyper-realistic textures, to creating a small presentation scene to show off your props, this is a must-read for any Prop Artist.

Intro

I’m Jonjo Hemmens, an Environment Artist currently working at Rocksteady Studios. I graduated from Falmouth University in the summer of 2018, and have previously worked at Antimatter Games and Creative Assembly. I’ve been working on learning all I can about the different components and facets of environment art production. The 80’s Vending Machine, 80’s Refrigerator, and Old TV have all been part of my journey to better understand asset and prop production.

For this asset I really wanted to focus on texturing almost exclusively. A goal for this project was to create textures that would stand up against photoscans and not look too out of place. I wanted to learn more about art theory and about rendering in Marmoset. As I’ve done with my previous assets, I decided to create a prop that doesn’t have very complex shapes, but lots of different surfaces and details to really give me the freedom to focus on the textures.

The Vending Machine is the last in my series of 80’s props (for now) and in this article I’ll share some of my processes and what I’ve learned along the way. Hopefully you can learn something from it. Or if you wanna just skip this article and get your hands on some treats, you can find all of the confectionery inside the machine for free on my Artstation store.

Texturing A Realistic Prop

Here are some examples of the roughness channels for the glass panel (left) and for the side of the machine (right)

I spent a lot of time refining the roughness to properly recreate the materials from real life reference, while also creating some interesting surfaces and details for the lighting to interact with.

As you can see in the image above, I went pretty nuts with the roughness for the glass when you compare it to the sides of the machine. There are smears all over, lots of high contrast details and scratches, very little hand painting, and a lot of different alphas and grunges splattered all over. I did this because the glass is almost completely transparent, so those details really needed to have high contrast to have any chance of catching the light. The most important effect I employed was to increase the roughness and drop the opacity around the edges, which creates a less transparent hazy border which highlights the edges of the glass so it doesn’t get lost at most angles.

The side and back of the machines presented some very different challenges. Vending machines have such a pretty much entirely flat and cuboid body, with very few 3D details to draw the viewer's attention. I had to be really careful not to apply too many repetitive or high contrast details, so instead I focused on softer details around the edges of the machine, leaving the centre to be the least dirty / damaged. The side of the machine has much less contrast, and although the details are just as numerous in places.

Rear shot of the vending machine

If you zoom in on the shot of the rear of the machine, you can see a lot of that variation. Although this is one of the least interesting shots, it does highlight the majority of the roughness and albedo work I did for the body. Most of the high contrast detail on the rear comes from the metalness information from the exposed metal and from the albedo, but even with subtle roughness changes, the effect can be pretty substantial if you look at the highlight on the side of the machine in this image.

Reference of damaged and dirty vending machine bodies

I would suggest trying to find plenty of reference of your assets in clean and in damaged states to inform your roughness.I learned a lot about how vending machines get damaged and what kind of dirt they accumulate from these two images, and I feel like it helped me to mostly avoid the “generic” dirt and edge scratching you commonly see with assets textured in Substance. The water droplets and metal scratches I observed in these images did a lot to help me sell the age and life of the vending machine.

Broken Glass Effect

To create the broken glass effect, I made use of some of the broken glass images I found on Textures.com.

Screenshot the Glass Crack selection at Textures.com

I brought some of these images into Photoshop and created some alphas that I could use in Painter as masks for my material. The material was pretty basic, it had a really high roughness and opacity value to contrast against the transparent glass, and a little bit of negative height information to push the illusion of depth. It was a fairly simple set up.

Although the textures looked good, I wanted to provide even more depth to the effect. I had done something similar on a much older project where I stacked planes ontop of eachother to fake depth. The asset looks a little dated in the example below, but the workflow is pretty much exactly the same. Although stacked transparent planes create quad overdraw, it’s less expensive (and less time consuming) than actually modelling the crack details. This effect is limited because it doesn’t hold up at certain angles. If you were to observe it from the sides, the asset would be completely hidden, because there is no 3D geometry, just flat planes. But for something like this set of keys which is down on a desk, and couldn’t be observed by a player at that angle. It also works nicely for the vending machine glass which has it’s edge hidden by the machine frame.

Example of 1bit alpha plane stacking

Finally, to create a convincing glass material in Marmoset, I followed Ognyan Zahariev’s free Gumroad tutorial. The effect is really quick to set up, and produces a great effect.

Benefits of Creating a Small Scene For Your Prop

As I mentioned earlier, one of my texturing goals is to be able to create realistic assets that can blend in with real world scans without looking out of place. The best way for me to test this was to create a little diorama with some Megascans assets to see how it held up, so I created a little 7/11 rear / side where I thought you might find such a machine. As an environmental artist, I get pretty restless just focusing on a single asset and it can be a little disheartening to not see your asset anywhere but a blank marmoset file, so I really enjoyed having the opportunity to create a little scene.

This gave me some freedom to experiment with different lighting scenarios like a night time and day time shot that would test the albedo and roughness of my asset nicely against the scans. I was most pleased with the morning light shot as I feel the asset really feels like it fits in this back alley, and doesn’t look too out of place next to all the photos scanned assets.

Vending Machine exterior shot with morning lighting

Over the past couple of props I’ve created, people have always commented on the fact that the machine is turned on despite being unplugged. I’ve found this to be really interesting, because they will never comment on the fact that an asset is floating in the middle of the air in a blank Marmoset / Unreal scene. Because of this little curiosity, I decided to make sure the plug socket was running in the direction of a plug inside the store, just to satisfy that little itch people had.

Using Reference and Hitting Material and Modelling Goals

Over the past couple of years, I’ve become fairly comfortable with hard surface modelling. I’m no expert, but I can handle most stuff that gets sent anywhere near an Environment Artist, so I wanted to try something a little more organic, but still manmade for this piece. The majority of the assets, including the vending machine are fairly primitive. They are either cuboid shapes or cylindrical shapes with very little variety.

The only real modelling challenge for this project was creating crisp packets which have some crazy folds that I didn’t know how to tackle in Maya or ZBrush. Crisp packets have a very distinct folds and creases from their material which is a metallised plastic, which would make it quite obvious if I hadn’t recreated them accurately. I decided to try Marvelous Designer as I’d had some experience creating folded materials in that for a few different projects, and I knew I could get some results pretty close to what I was looking for relatively quickly.

I created a very basic blob in ZBrush that roughly resembled the interior of a crisp packet. I only focused on primary and secondary forms, as tertiary detail would mess with the simulation and could just be added in ZBrush later. The pattern for the packet is very simple, it’s a main packet with a sealed top and bottom with some inflated creases.

Crisp Packet Simulation in Marvelous Designer

I applied a rigid preset material and gently altered the settings until I found something that looked close enough to my references, then I refined some of those details using the pinch and trim brushes in Zbrush. Working in Marvelous designer first gave me a lot of control over iteration and I ended up creating two different packets because of the time I’d saved, giving me some extra variety in the packet shapes.

I created a basic low poly for the mesh in Maya using quad draw, cut the crisp packet down the middle for my UV’s and brought them into Painter for baking and texturing. I started with my base material which was a low roughness plastic with some slight roughness and colour variation, aluminium scratches and seams on the back, and some simple colour layers.

 

An example of one of the alphas I used, I created about 190 for this project alone!

 

I then left Substance Painter, and spent a few hours in Photoshop for each packet breaking down designs and information from reference to create alphas that I could detail the packet with. I created tonnes of alphas for different brands, nutritional information, buzzwords and barcodes, all to be brought into Substance Painter to stamp onto the soda cans and crisps. Although Substance has a variety of tools, it’s likely that for certain texturing projects you’ll have to spend time creating resources outside of the program for you to use.

If you want to see how I went about applying these Alphas or creating my base materials, check out my free Substance files on my Artstation store.

 

Kneebreaker Dom Crisp Packet

 

The Kneebreaker Dom Crisps are hands down my favourite of the whole machine. It’s a reference to the boxing gloves made by Dom Marriott and also to the frequency in which he has dislocated his knee doing martial arts since I’ve known him. As a Character Artist who specialises in clothing, he knows a lot about folds and creases. He gave me a lot of feedback on these crisp packets and helped me with my scene set up in Marvelous Designer.

I think it’s really important to share your work with artists outside of your specialism. In this case, it provided me with some great feedback on material folding, something which I usually don’t have to consider in my specialism. Some of the best feedback I’ve received on lighting and presentation has been from Rick Greeve, a weapons artist with a really great eye for presentation. Try posting your work outside of your normal circles every now and then, it can be a really good exercise.

Texturing To Match Hyper-Realism

Throughout the project, I studied a tonne of different vending machine bodies all in different conditions. When studying materials, it’s important to not just observe it as colour, but to also try to match the roughness values as closely as possible. By paying attention to how lighting bounces off the materials in your reference, you can slowly dial in the roughness and colour in Substance Painter to get it looking as close as possible. I thoroughly recommend getting your model into Marmoset, Unreal, or whatever software you’ll be making your final renders in so you can frequently check how your materials respond to lighting.

 

Vending Machine Reference Board

 

Keep coming back to your reference even when you’re doing your final passes, you never know what material you might not have captured properly, or a detail that you could add that would fit really nicely and help balance out an area lacking interest.

There were plenty of interesting materials for me to recreate with this project, such as; glass, painted metal, hard plastic, metal, and plastic glass displays. Although the overall shape of the machine is super basic, it gave me a lot of incentive to focus on the texturing and the materials. I would definitely suggest for artists to work on assets that have interesting materials and roughness variation, or assets that allow you to focus on just that without being bogged down with super complex geometry. Obviously if you can do both, that’s great, but focusing on just one part is also great to help focus your learning specifically on texturing without getting exhausted while modelling.

Texturing Process

I feel like I don’t have a tonne to share on my process that isn’t already covered by Jason Ord in his Artstation Learning Tutorial. If you have a basic understanding of Substance already, I would suggest you all check this out if you have Artstation Plus or Pro as it can teach you a lot more than I ever could. As I’ve linked at the top of the article, my snack files can be grabbed from my Artstation store. Jason has also released his source files for the drill project, so check that out too.

Marmoset Scene

The Marmoset scene is nothing special, it’s subdivided planes with enough geometry to give the Megascans materials something to displace. I added a couple of extra assets that I was hoping to include if I were to do a cinematic, although the scene lags my computer a bit and doing a video render didn’t turn out to be possible in the end.

Screenshot of the Marmoset scene

For rendering, I use the ACES tone mapping settings as I like its default contrast and saturation values. Once I’m done with test renders and I move onto final renders, I’ll work with the highest possible settings I can use in Marmoset. I’ll spend a while playing with global illumination and ambient occlusion dialing them into a nice place. I don’t add much sharpness or vignette in Marmoset because the viewport doesn’t always give you a good idea of how these will look in your final renders. This can be annoying if you have to re-render with every sharpness or vignette tweak. I recommend doing all final adjustments in Photoshop as you can achieve a much cleaner result, faster.

I experimented with lots of different materials and colours for the diorama backdrop to get an idea of what worked best with the vending machine. It could have gone in some crazy directions at this point, but it was a tonne of fun just to experiment. Some drew a little too much attention away from the machine, and some colours didn’t compliment the machine too well, but I still like a lot of these shots for something other than presenting an asset.

Different colour and material variations for final renders

Balancing Detail

Over the past year, I’ve been trying to apply more art and design fundamentals to my work. When it comes to detail, I’ve been very fixed on following the 70/30 rule. The concept for this rule is that you should try to have 30 percent noisy detail to 70 percent rest space. This creates a nice ratio for your eyes, giving you just enough interesting detail for you to study, and a nice amount of rest space for your eyes to move between the pieces of detail. Too much detail and the asset becomes noisy, too little and it becomes boring, but 70/30 seems to work very well for this.

Alternate shot of the Vending Machine

I tried to apply this rule in as many ways as I could. For example, the cable and coins resting on top of the machine provide a nice 30 / 70 split between the detail and rest. The coins and the cable provide the 30 split of noise, leaving the dusty surface relatively clean, giving space for the eyes to rest. Another example of this rule would be to compare the surface of the top of the machine to one of the sides. In this case, the dusty surface on the top is the 30 split of noise, whereas the sides are relatively clean and unlit, providing a nice balance. Something that I observed after I finished the project is that in the main shots, there is almost a 30 colour to 70 grayscale split which is also pretty pleasing.

The Soda Cans

Trying to apply design rules in as many ways as I can has been one of the most integral parts in keeping detail and trying to create an aesthetically pleasing final result. You don’t have to rigidly stick to the rules too tightly either, but they do provide great guidelines for how to amend something that doesn’t look right. By self critiquing with these rules, you can tackle more and more issues before sending it off for crit.

How many texture sets is this prop using? How did you decide to break up each texture set?

The prop is using 6 sets, at between 4k and 2k resolution, which is more texture sets than you would see on an in-game asset. The body of the machine is split into two sets. One of them covers the exterior of the machine, and the other covers the interior and the glass. I decided to set it up in the case that I decided to create a cubemap interior for the vending machine interior in future, which would allow me to replace the glass, interior, and candy with a single new material.

The candy was split into 4 sheets, 2 for the crisps, 1 for the cans, and the last for the sweets. I had them split so I could present them at high res for my final shots, but ideally they would be placed in the same atlas for final game res, and mipped down. For the final presentation in Marmoset, I decided to crank up the textures to 4k. Despite the high texture res, it could still be used for realtime rendering if not for games.

Half of the Crisp Packets

Half of the Crisp Packets

Where are you still looking to grow as an artist? What new techniques or topics interest you?

I’m always looking to grow as an artist. Since I started my career in games, the desire to do this has only gotten stronger. I feel like I’ve reached a good place with my prop creation skills, and I’ve been focusing on creating foliage and organics. Learning Speedtree and improving my understanding of Substance Designer and ZBrush are all planned for the future.

Feedback

I usually seek feedback from colleagues and friends in the industry who have a good critical eye. I’ve found that the best feedback comes from those who are unafraid to pick out any flaw in your work, despite your feelings. Having an iron skin and treating your art as a separation from yourself is a good practice as it allows you to really push elements that aren’t good enough further. It can still sting from time to time, but building upon your failures is the only way to get it to a quality you’re happy with and for you to really learn from the process.

Feedback from Ben Keeling

One of the best pieces of feedback I received on this project was from my colleague and friend, Ben Keeling. He pointed out a lot of the flaws where I had been lazy or had applied too many noisy details on the wider surfaces. He didn’t just point out flaws, but he suggested new details for me to add such as more specific one off damage, some more details around the plug socket on the rear of the machine.

He also gave me some suggestions that I didn’t end up taking on board. For example, the suggestion to add the branding on the top and bottom of the machine didn’t exactly sit right with me because it went against my ref, and I only found examples of it on drinks machines rather than snack machines. There were also suggestions to add POM to the bolts that I wasn’t sure was possible to achieve in Marmoset, and might not be possible.

It’s just as important to study the feedback others give you, to understand why or why you might not apply the feedback, and to have good reasons for doing both. Mindlessly applying feedback removes your involvement, and it can detach you from a feeling of ownership which is necessary to keep up your motivation. Take the time to analyse every bit of feedback you get and know why you’re applying it, it’ll help you learn and avoid those mistakes in future.

An early test render of the soda cans in a mostly untextured machine

I don’t frequent game art Discords as much as I should, but I occasionally post my work in the 3D Fast Track Discord which has provided me with some of the best feedback on this particular project. The community gave me some great feedback that pushed me so much further on this piece, and I have them to thank for making the finished piece more cohesive and interesting.

One of my favourite pieces of feedback came from Francois Hurtubise whose work I’ve admired for a few years now. He suggested that I organise the candy in the machine by colour. Previously the organisation had been chaotic and I hadn’t really put any thought into it. The layout was chaotic, highly distracting, and left no space for rest in the noisiest area of the machine. After amending this issue, the improvement was massive and taught me a lot about how just the organisation of details and colours within a piece can be incredibly important. Here’s a quick example of a before and after of all the feedback listed in this section.

 

Before and after feedback comparison

 

At a glance, it might not look like a tonne of things have changed, until you start noticing more of the smaller details. By this point I was only really working on the final 10 percent as most of the elements were there, but these two rounds of feedback gave me some of the most substantial quality jumps for the whole project.

Outro

That's about all I have for you on this project, I hope that you’ve learned something or at the very least been entertained by the pretty pictures. If you have any questions about the project, send me a message on Artstation and I’ll do my best to help.

Keep an eye out for some trees, ferns, plants and all things organic! I’m trying to post more progress updates on my Artstation Blogs but the best place to see regular updates from me is on my Instagram, I always put up WIPs on my story!

Thanks for reading,

Jonjo

Artstation

Instagram

Twitter