logo80lv
Articlesclick_arrow
Research
Talentsclick_arrow
Events
Workshops
Aboutclick_arrow
profile_loginLogIn

Bringing Vintage Soviet Milk Can to Life in Blender

Boris Lozovoi spoke to us about how he recreated a vintage Soviet milk can in 3D as a texturing practice, sharing advice throughout the process.

Introduction

Hello everyone, my name is Boris Lozovoy, and I'm a 3D Artist. I started learning 3D a little over a year ago, and I continue to discover something new every day. Before that, I was creating advertising banners, and as a hobby, I drew in 2D. I was brought to 3D graphics by the desire to try something new for 2D drawing, for example, preparing blanks for 2D illustrations, and of course, my great love for video games.

I'm completely self-taught. It's good that you can find any necessary knowledge on the Internet; the main thing is to be able to search and structure the necessary information. At the moment, I am freelancing as a 3D Modeler and looking for my first AAA experience in game development, continuing to work on my portfolio.

The Vintage Soviet Milk Can Project

I set two main goals for this project: speed of work and quality of textures. I needed to choose an object with simple shapes but with a variety of materials. The idea of ​​a can fitted these parameters perfectly.

The can has several types of material:

  • Enameled surface;
  • Metal;
  • Wood;
  • Insulating tape.

Any project always starts with searching for references. I searched for any pictures on the topic of old dishes, looking for shapes, materials, chips, scratches, dirt, etc. I also found the exact dimensions of the real object. Advice for beginners, you always need more references, even if you think you have enough, it's better to find a little more. There is no such thing as too many references.

For the convenience of grouping images, you can use special programs, for example, PureRef.

Blockout

I started the work in Blender with a simple blocking. Following my references, I created the basic form of all the elements to get the necessary sizes and proportions.

The entire model was initially made for a non-destructive modeling method, using Bevel and Subdivision modifiers. In this way, I had already prepared for myself in advance the simplification of work with retopology and subsequent UV unwrapping, but more on that later.

High-Poly

Next, I made duplicates of my model to export to ZBrush. There I planned to add details and create tape on the handle. I started with the lid, added small dents along the edge and processed the joint of the lid and handle. Then I added dents to the neck of the can itself and the metal part of the handle, adding angularity and dents to it.

After that, I started working on the details of the wood. My main task in ZBrush when working with wood was to add deep cracks to make the material look old and worn. To recreate the attractive wrapping of the handle, I used masking on the wooden handle and then extracted. To add details to the tape, I also used basic ZBrush brushes: Standard, Smooth, Pinch, hPolish, etc. In most cases, I work with a standard set of brushes in ZBrush.

Retopology & UVs

After that, I went back to Blender. And here, since I had previously made the model under Subdiv, I only had to delete the modifiers, optimize the grid, and remove everything unnecessary that did not affect the overall shape of the silhouette. I did not set strong restrictions on polygons, since I wanted to achieve smooth shapes and good shading.

I made the low-poly version of the tape from a regular cylinder, adding the necessary proportions to repeat the silhouette of the tape. All the details will be transferred to the Normal map later.

It remained to place hard edges and seams. A simple rule: fewer seams. And if you need a seam in some place, try to hide it. On a hard edge, you always need to put seams, otherwise there will be trouble.

After all the necessary edges were marked, I transferred the model to RizomUV. In this program, I began to unfold and pack my model. Since almost the entire model consists of cylinders, almost everything was aligned using the automatic tools of this software; only a few islands had to be aligned manually due to the presence of internal cuts. Everything was unfolded to avoid strong stretches, but also to keep the maximum possible density on UV. Once all the shapes were unfolded and aligned, it was just a matter of reducing them to the same texel and packing them correctly.

Baking & Texturing

I baked the maps in Marmoset Toolbag. Everything is standard there, I set up Cage and baked all the maps that I needed in 4K resolution.

List of maps from bake:

  • Normal;
  • Normalobj;
  • Ambient Occlusion;
  • Curvature;
  • Height;
  • Position.

For texturing, I switched to Substance 3D Painter. First, I created separate folders for structuring. After that, I created each material layer by layer. Then, I simply followed the basic rules of layer hierarchy: texture variations, roughness, color, etc.

I also added a layer with a print. I found the print for the can on the Internet. This is a regular PSD image on a transparent background. I only needed to import it into the program and add it to an empty layer instead of color. After that, I placed it in the right place on the can and repeated it on the UV island. Various damages and scratches are applied to the main layers of materials. Both damage and dirt should always be applied to those places where they could occur in real life. For greater realism of damage, always look at references of things used in real life. As a cherry on the cake, a layer with the Sharpening filter is applied on top of all materials. Any layers should be varied, consist of several options, so that they are more interesting to look at; the main thing is not to "overdo it".

In the end, I had 3 textures unloaded:

  • Base color;
  • Normal map;
  • ORM (1 texture with 3 maps added to different RGB channels. Occlusion in the Red channel, Roughness in the Green channel, and Metallic in the Blue channel).

Rendering

For rendering, I went back to Blender. I added to the scene:

  • Low-poly model with ready textures;
  • Shadow catcher with simple tiled wood texture;
  • Standard 3-point lighting. Main light 17W, fill light 2W, backlight 740mW.

Result

The final model has the following parameters:

  • 6708 triangles;
  • 4K texture;
  • UV space 83%;
  • Texel density 96px/cm;
  • Total time spent on work: 25 hours.

Thank you to everyone who paid attention to me and my work.

Boris Lozovoi, 3D Artist

Interview conducted by Emma Collins

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