Railway Lantern

Prop Breakdown

Alexander Chertkov


Alexander Chertkov

Hard-Surface Artist


Hi everyone! My name is Alexander, and I am 24 years old. I am from Moscow, Russia.

I am currently at the job search stage. I started my journey in 3D when I was in my third year at University.
First, I took courses where I got the basics, and then I made a portfolio, simultaneously learning new techniques and skills on YouTube and other platforms.


My new project is called “Soviet Railway Lantern”.

This is an old Soviet railway lamp from the 1970s. It is intended for railway transport workers who, at night, give railway light signals and inspect rolling stock.
The purpose of this work was to showcase new skills and abilities, particularly the ability to work with rust, wood, and metal.


  • Maya (modeling and UV)
  • ZBrush (adding dents, bends, welds)
  • PureRef (references)
  • Photoshop (creating alphas)
  • Marmoset (baking, rendering)
  • Substance Painter (texturing)


The first step is to find references. For this, I use PureRef. I usually search for references in the standard browser, Pinterest, and YouTube.

I highly recommend searching for references on YouTube because sometimes it is not always possible to find the necessary details/angles from ordinary photos.

So, I reviewed the video several times to get the references I need. I also advise paying attention to other people’s work to understand their strengths and try to implement them in your project.


High Poly Modelling

I create High Poly in Maya using a regular SubD workflow.

After creating High Poly, I check it for artifacts to avoid problems in ZBrush in the future. To find errors and fix them in Maya, I use “Cleanup”.

After finishing High Poly, I import it into ZBrush.

There I add dents and bends using a “Move” brush or other similar ones. Also, since my object is multi-component, I divide it into several subtools to make sculpting easier.

For this model, I decided to sculpt only the outer part of the lamp and the weld on the battery.

After completing High Poly in ZBrush, I optimize it using Decimation Master. Then I import the resulting High Poly from ZBrush back into Maya.

Low Poly Modelling

I create Low Poly by optimizing High Poly, which was before the use of “Smooth”. Since this work is for a portfolio, I didn’t pay much attention to optimizing Low Poly.


ZBrush High Poly differs in some details from the usual High Poly made at the very beginning of the Maya program.

So, for Low Poly, I just moved the geometry to coincide with the High Poly from ZBrush. You can also use “Quad Draw” in Maya, which is more convenient for some.



I always create UVs in Maya, as I think there are enough tools there. In this case, I have two texture sets, one 4K (for the main outer part) and one 2K (for the inner part).

To lay the UV shells well, I align each shell, and if it is a cylinder, I make a seam where it will not be visible on the model. Then I lay out the shell in a strip, after which it is aligned.

Maya often stacks the shells, leaving empty space. In such cases, I manually remove some of the shells, scale them, and then stack the remaining shells usually on top.

There is a small tutorial attached below in case some shells cannot be laid out in a strip.


I use Marmoset to bake the maps, commonly using the “Multiple Texture Sets” workflow.

I split my model into several bake groups to have more control over baking the maps. Splitting into Bake Groups is convenient because each group can configure its own Cage.

This helps to get rid of errors or reduce their number, thus reducing the time spent in Photoshop.


As a tip for working with Marmoset, you can use the “Fast Loader” if you have a multi-component model.

This is necessary for the automatic import of Low Poly and High Poly.


For maps, I usually bake Normal Map and AO in Marmoset, and bake the rest of the maps in Substance Painter.

At the texturing stage, 80% of the work consisted of texturing metal and rust.


For convenience, I sometimes duplicate an asset or part of it in Maya so that it would be easier to texture it in Substance Painter later.


The key to texturing rust was the use of Anchor Point. Almost the entire rust creation process was built using Anchor Point, as this feature allows you to reference a previously created mask.

Thanks to this, I created peeling, cracks, leaks, and other details.

The screenshot shows how Anchor Point and other filters, such as Blur Slope, Warp, Sharpen, work.

From the advice, I can say that it is necessary to set the Specular quality value to at least High.

For example, using the Low value, you will get a completely different Roughness when you export the model from Substance Painter.

Rendering I have created several variations of the model to render it. For a more readable shape of the models and its details, I recommend reducing the Field Of View.

In my case, I used 15 degrees.


For lighting, I recommend using studio presets, such as Studio Soft.


In my work, I used three lighting sources: ambient light, Key Light, and Rim Light. You can choose the color of the light according to your taste, but I advise using a color closer to white.


I would also recommend increasing the diameter of the lighting, which will make your shadows softer and more pleasant, and it will also hide some sharp shapes of your model.

All renders were created using ACES tone mapper.


In the end, you can play with the Post Effects settings in your camera.


Summing up, I am extremely grateful to everyone who has read this article. I hope you found something useful in it.
Many thanks to Games Artist for giving me the opportunity to share my skills.

As for me, the main thing is to find an interesting prop that will inspire you, and you will certainly grow in your skills by working on it.

Thank you all so much for your attention and support; I appreciate it. Peace!