Stanislav Mikhailov did a breakdown of his mind-blowing procedural architectural facade made 99% in Substance Designer and talked about the advantages of the procedural materials like this.

斯坦尼斯拉夫·米哈伊洛夫(Stanislav Mikhailov)将对Substance Designer中那令人惊叹的程序化建筑立面结构的制作过程进行细致的分解,并谈到了这种程序化材质的优点。

SubstanceDesigner - 建筑材质创建全流程-CG编年史

Introduction | 简介

Hi everyone. My name is Stanislav Mikhailov or just Stas.

大家好!我是斯坦尼斯拉夫·米哈伊洛夫(Stanislav Mikhailov )。

I am 29, I live in Minsk, the capital of Belarus. I have been working in gamedev for a little more than a year.  Let me tell you some details about how I got into it.


I was keen on video games, movie VFX and drawing ever since school days. If my remember it correctly, it was my cousin who showed me one of the first versions of 3ds Max. The idea of making CG sparked my interest in the blink of an eye. These years I had no idea about the amount of educational materials we would have today. You know, once I had to make a few exactly the same flying ships from primitives because I didn’t know that I could just copy them. Now I feel like it was ages ago.

从学生时代起,我就非常喜爱电子游戏、电影特效和绘画。如果没记错的话,最初,是我的一位堂兄,向我展示了3Ds Max的早期版本。从那一刻起,我就对CG设计产生了非常浓厚的兴趣。在网络发达的今天,你或许可以轻而易举的获取到非常多的学习资料,但是在我们那个年代,这些技术往往都需要靠自已一点一点的反复摸索和尝试,甚至记得有一次,为了能够得到一些完全相同的飞船模型,我竟然呆呆的将它们重复的做上了好几遍!因为当时的我,根本就不知道,我可以通过“复制”命令来立刻得到它们。现在看来,这似乎都是很久以前的事情了。

Long story short, after school I enrolled at a university to study architecture. I had been learning a composition, coloristics, history of arts, academic drawing, classical sculpture and so on. All this knowledge really help me today. After the university, I worked as an architect for 4 years and devoted more and more time for an Arch Viz. Also, I was looking for a job in gamedev but my portfolio was not strong enough.  Only after 4 years of practice I was lucky enough to get through the job interview at DoorZ where I have been working up to now.

长话短说,在毕业后,我进入了一所大学学习建筑。同时,我也一直在学习有关作曲、色彩学、艺术史、学术绘画、古典雕塑等方面的知识。这些知识,对于我今天所做的事情来说,的确起到了很大的帮助。大学毕业后,我还曾经做过4年的建筑设计师,并且投入了大量的时间在高端建筑设计(Arch Viz)上。同时,我还在GameDev找到了一份工作,但那时,我的作品集并没有太多出彩的地方。再到后来,经过了4年的工作经验积累,我非常幸运地通过了DoorZ的工作面试。

SubstanceDesigner - 建筑材质创建全流程-CG编年史

Right now I am working on a project Naked Sun, it is a VR shooter available on Steam. When I was appointed to that project, I had to upgrade my skills really quickly because my duties were not only making an environment but also characters and weapons. I was involved in the creation of weapon modifications (you can find these artworks in my ArtStation portfolio). Among the project’s features were open spaces, quick progress and fast-paced action scenes. VR required a lot of restrictions and we had to invent a lot of tricks for a performance optimization. One more thing I want to add is that being surrounded by colleagues and game development atmosphere, I felt that my level had been growing really quickly after I found my way into the industry.

目前,我正参与一个叫做《Naked Sun》的游戏项目制作,这是一款VR射击类型的游戏,将来会在Steam上发布。当我最初被指派参与到这个项目的时候,我很清楚,我必须快速的提升自已的制作技能才行,因为当时我的职责,已经不仅仅只局限与创造一个场景环境,我还将会参与到包括角色和武器的制作当中(你可以在我的ArtStation作品集中找到这些作品)。这个项目的特点是开放的空间,快速的进程和快节奏的场景迭代。要知道,VR项目在开发过程中会有很多的性能限制,所以我们有时不得不为了性能的优化,去发明很多的小技巧。在此,我还想补充的一点是,在我的同事和游戏开发环境氛围的包围下,我觉得我的专业水平在进入游戏行业后,增长变得非常的快速。

My story has a lot of twists but the main idea I want to share with you is that the way into gamedev is not always straight and easy. If now you are working at a bank or a shop, you are over 30, and not in the industry yet – don’t give up. Provided with all that available courses and tutorials, if you try hard you can get a desirable job pretty quickly.


SubstanceDesigner - 建筑材质创建全流程-CG编年史

Architectural Facades: Why Substance Designer? | 建筑立面:为什么要使用Substance Designer?

For me creation of complicated architectural facades in Substance Designer is a kind of a study. I have never used facades made in Substance Designer only. Usually, facades in games are a combination of geometry, seamless materials, decals, and floaters. The last ones add a variety and hide noticeable tiling. I believe that complicated facades made completely in Substance Designer demonstrate a high level of your skills and will look great in your portfolio. Most viewers (among them could be your potential employers) will be more impressed by a facade made with Substance Designer then the same model made in 3ds Max, BlenderModo or Maya. A Substance Designer sign on the preview of your artwork always attracts the attention of ArtStation visitors.

对我来说,尝试在Substance Designer中创造复杂的建筑立面,更像是一种学习修行的过程。事实上,在此之前我从来没有这样去做过,游戏中的建筑立面,通常主要是由各种几何体模型、无缝材质贴图、贴花和飞窗等拼接组合而成的。飞窗可以为建筑添加一些结构轮廓层面上的丰富变化,并且还可以弱化或隐藏由贴图平铺产生的非常明显的纹理连续痕迹。我相信,完全在Substance Designer中去实现这些非常复杂的建筑结构细节,将可以成为展示你制作水平的最好证明,你的作品集也将会因此而增色不少。因为相比那些使用3ds Max、Blender、Modo或Maya等传统三维软件制作出的相同模型作品而言,完全依靠Substance Designer来完成的模型作品,往往更会使大多数ArtStation上的浏览者(其中可能包括你的潜在客户)印象深刻,因为在ArtStation上,一个带有Substance Desinger水印标志的艺术作品,总能吸引浏览者们的注意。

SubstanceDesigner - 建筑材质创建全流程-CG编年史

Using facades made in Substance Designer has strong technical advantages. Substance files allow you to control necessary parameters directly in a game engine. Bind parameters to the code and get impressive results at generativity and randomness. If you need to create 50 different houses with a variety of tiles (e.g. with graffitis in random places), you can use Substance to create an advanced facades generator and do it with the code. If we also involve in the process a Houdini specialist to create a geometry generator and merge it with ours (for facades, hardwood, roof tiles or something else) we will get a completely generative solution for architectural objects in games. The trend towards facades creation in Substance Designer appeared when new tools met with the old demand. Nowadays this approach is a must-have for large projects. If you do everything manually, an urgent task to change windows’ color, roof tiles or make a house two floors lower will utterly ruin your deadlines. This is unacceptable!


使用Substance Designer制作建筑立面具有很强的技术优势。Substance文件允许你直接在游戏引擎中控制必要的参数。并且可以将这些参数绑定到代码中来进行控制,同时,在自动生成和随机性方面,它的表现都令人印象深刻。比如,如果你需要使用不同的平铺材质,来创建50个不同的房子(例如在随机的地方使用涂鸦),你就可以使用Substance来创建一个高级智能的平铺材质生成器,然后通过暴露参数,对生成结果进行控制。如果我们也能让一位资深的 Houdini 设计师参与到一个几何生成器的过程中,并将其与我们的平铺生成器合并(用于立面、硬木、屋顶瓷砖或其他),我们便能在游戏中,为建筑对象创建一套完整的生成解决方案。在Substance Designer中,随着新工具的出现和旧需求的满足,出现了模型立面创作的趋势。现在,这种模式对于大型项目来说是必须的。如果一切都还要靠手工来完成,那么,仅仅一项简单的修改操作,如改变窗户颜色、屋顶瓦片,或都诸如让建筑墙面再低一些的紧急任务,将会彻底占用完你的最后制作期限。这绝对是我们无法接受的!

The most important feature of Substance Designer is not even the ability to create patterns, cloth materials, believable scratches, and dust. For me, it is a wide range of tools for height maps creation.

Substance Designer这款软件最重要的特点,甚至不是创造图案、布料、划痕和灰尘等细节的能力。对我来说,它更像是一款专门用来创建高度图的普遍工具。

SubstanceDesigner - 建筑材质创建全流程-CG编年史

You can literally sculpt volumetric structures. Look at the artworks by Daniel Thiger, he makes both photorealistic stones and organic surfaces and generators for car wheels, wrist watches, swords and medals. The possibilities of the procedural materials in Substance are endless.

你可以使用它直接雕刻体积结构。看看丹尼尔·泰格尔(Daniel Thiger)的作品,在他的作品集中,有逼真的石头,有机的表面,还为汽车车轮、手表、刀剑和勋章制作了生成器。用Substance制作的Procedural材质拥有的可能性是无限的。

SubstanceDesigner - 建筑材质创建全流程-CG编年史

I forgot to mention that I have been seriously learning Substance Designer for about a month. I began with free YouTube lessons, got a general understanding and became familiar with the interface. Next step was Daniel Thiger’s lessons. In his short videos he shares really cool tricks and techniques, most of them are exactly on the creation of complicated height maps: how to transform a gradient to the editable false profile, how to randomly distribute blocks of columns, grow grass around stones, create realistic cracks and damaged edges of plates. All of that and many other things I picked up from his lessons.

我忘了说,我认真学习Substance Designer已经有一个月了。我从免费的YouTube课程开始,对它有了一个大致的了解,并且熟悉了它的界面。接下来是丹尼尔·泰格尔的课程。在他短暂的视频中,展现了非常多很酷的制作技巧,大部分都是在演示如何云创建复杂的高度图细节,比如,如何把一个渐变图转换为可编辑的假轮廓,如何随机分配石头,在石头周围种草,创造真实的裂缝和地板破损的边缘。我从他的课上学到了很多东西。

The Production | 制作

I did not make any blockouts for this project. Once I met an artwork by Enrico Tammekänd on Facebook I felt as if I needed a similar presentation to demonstrate the skills obtained at Daniel Thiger’s lessons. I drew the main blocks and architectural elements on paper, the first version didn’t have upper windows and many current details. Then I decided to add to the project an Ionic column. Frankly speaking, that was the object I began with. When I was making it, I figured out how the full facade would look like.

我没有为这个案例做任何的删减。有一次,我在Facebook上看到恩里科·塔梅克(Enrico Tammekand)的一幅作品,我觉得自己好像也需做一个类似的作品,来展示我在丹尼尔·泰格尔(Daniel Thiger)课堂上所获得的技能。我先是在纸上画出了主要的模块和建筑元素,第一个版本没有上方的飞窗和许多当前的细节。然后我决定给这个项目添加一个爱奥尼亚圆柱。坦白地说,这就是我开始的目标。当我真正在做的时候,我才渐渐弄清楚了整个正面的样子。

SubstanceDesigner - 建筑材质创建全流程-CG编年史
SubstanceDesigner - 建筑材质创建全流程-CG编年史
SubstanceDesigner - 建筑材质创建全流程-CG编年史
SubstanceDesigner - 建筑材质创建全流程-CG编年史

Then I made a part of the graph responsible for the facade’s structure. It consisted of placeholders that showed how deeply each element will be embossed and where it will be placed. After that I had to make lower windows (I sketched them on the reverse side of a shop receipt), upper windows, roof tiles and attach these elements as placeholders. It may be said that it was an iterative process: many elements were changed during the work.


When I proceeded to the presentation in Marmoset, I was initially going to set the facade on a platform but after a few experiments, I assigned the material to a two-storied cylinder. The result impressed me, so I decided to opt for it.


The Nodes | 节点

Now about the nodes I used. For the cap of the column, I downloaded Spiral Generator.


SubstanceDesigner - 建筑材质创建全流程-CG编年史

Also, I frequently used nodes Gradient and Curve to make all profiles (for the cornice and so on).


SubstanceDesigner - 建筑材质创建全流程-CG编年史

For the columns, I used Gradient to create an effect of an attached cylinder, 2D Transformation to mold a shape for a thin column, and Levels to get a proper bend. Directional Wrap was used to get a natural random displacement of the cornice and columns’ blocks.

对于柱子,我使用Gradient来创建一个附加圆柱的效果, 使用2D Transformation来塑造一个薄柱的形状,以及Levels来获得一个适当的弯曲。采用Directional Warp得到了檐板和柱块的自然随机位移。

SubstanceDesigner - 建筑材质创建全流程-CG编年史

The roof tiles were made with gradients. In fact, it is the same attached cylinder. I just used Tile Sampler to distribute tiles around the surface. Also, a very important role was played by Slope Blur: it helped to make ragged edges and chuckholes.

屋顶瓦片是用Gradient制成的。实际上,它是同一个圆柱体。我只是用Tile Sampler在表面分布瓦片。另外,Slope Blur也扮演了一个非常重要的角色:它帮助制作粗糙的边缘和卡凹陷。

SubstanceDesigner - 建筑材质创建全流程-CG编年史
SubstanceDesigner - 建筑材质创建全流程-CG编年史

These are the basic nodes I used. I think it’s right not to elaborate on them – you can find all the secrets and tricks in Daniel’s lessons.


As for the structure, all the elements of the graph are placed from specific to general. The first level (the deepest), is a separate cap of the column, its base, etc. The second level, the middle one, is the column’s assembly with some effects. The third (upper) level of the graph contains the elements of the middle level on their places with 2D Transform, Tile Sampler, and Mirror nodes.

在结构上,图中的所有元素都是按从特殊到一般的排列放置。第一层(最深的),是柱子的一个单独的帽,它的基础,等等。第二层,中间的,是柱子的装配与一些效果。图的第三(上)层包含中间层的元素,它们位于2D Transform、 Tile Sampler和Mirror节点所在的位置。

SubstanceDesigner - 建筑材质创建全流程-CG编年史

Windows Production  | 窗子制作

Here I will start with the curtains. I’ve mentioned everywhere that this project is 99% Substance Designer. By the last percent I meant the curtains. They were cut from the stock photos in Photoshop and added to the Emissive Map. I also had a node for a glass mask. I exported it from Substance to Photoshop as .png and made an Emissive Map from a few pictures of curtains. Initially, I set up the glow of the central part of the lower windows in Marmoset by increasing the glow intensity of the material. But it resulted in overexposed curtains, so I made them very dark in the Emissive Map to make them distinguishable.

我先从窗帘开始。我到处都提到这个项目是99%的Substance Designer。最后1%是指窗帘。它们是从Photoshop中的库存照片中剪下来的,并添加到EmissiveMap(自发光图)中。我还有一个节点用于玻璃Mask。我将它从Substance用PNG的格式导出到Photoshop 中,并用一些窗帘的图片制作了一张EmissiveMap。最初,我通过增加材料的发光强度来设置Marmoset下部窗户中央的发光。但这导致窗帘过度暴露,所以我把它们在辐射地图上画得很暗,以便区分开来。

SubstanceDesigner - 建筑材质创建全流程-CG编年史

I could easily do it in Substance but the graph I built was too heavy for my computer, so I didn’t want to add new elements.


As for the glass, I had a mask for it, so I used it to color the glass in blue inside the Base Map and to decrease grain. The only thing that needs to be mentioned is flares on windows. In Marmoset, if you render your projects without an environment and parallax on windows, the only way to show a glass material is a glossy flare from a light object. You can compare my images by yourself, some of them don’t have this effect.


SubstanceDesigner - 建筑材质创建全流程-CG编年史

The Level of Modularity | 模块化的层次

The structure of my project is fairly modular and to a certain extent generative. I can change profiles of all the elements, a height of the cornice, a number of its elements, scale roof tiles and change its slope, change a number of spiral turns on the cap, all colors, shape of big and small damages, and many other features. But as much as I’d like to, I can’t turn it into something like the Early Gothic facade.


SubstanceDesigner - 建筑材质创建全流程-CG编年史

I have learned some interesting approaches to the facades creation and I can use them to reach the final result on a proper level. But, as I have already mentioned before, I have been using Substance Designer not for a long time and in my graphs I had to use some tricks and a “duct tape” . I am sure that elegance, reusability, and optimization will come to me with practice.

我学习了一些有趣的方法来创造立面,我可以使用它们在适当的水平上达到最终的结果。但是,正如我之前已经提到的,我使用Substance Designer的时间并不长,在我的图表中,我不得不使用一些技巧和“管道胶带”。我确信,优雅、可重用性和优化将随着实践而到来。

Can the Material Be Used in the Game Production? | 这些材料可以用于游戏制作吗?

It is also possible to use this material in games. For example, if it is an interior with a window facing the street, we can use this facade for a nearby house. If the windows are narrow and we can’t see facade’s borders, it is possible to use a parallax material to imitate the depth.


The second option is to use height maps to emboss geometry in 3D software and then make some simple geometry above the embossed one or above the retopology. In that case, we will need to assign our material to a planar UV projection without a height map.


Recommendations | 建议

If you are new to Substance Designer, I can recommend you to watch any free courses for beginners covering interface and philosophy of substance materials. There is no point to go into the details, it should be an introductory tutorial. Opt for a well-structured course than for some separate lessons on different topics. The course below was the first I watched.

如果你是新的Substance Designer,我可以推荐你观看任何免费的课程,为初学者涵盖界面和Substance材质的哲学。没有必要去深入细节,它应该是一个介绍性的教程。选择一门结构良好的课程,而不是一些关于不同主题的单独课程。下面的课程是我第一次看。

Don’t get down to the large projects, they require too much time and effort. If you are going to bridge the skill gaps along the way, there is a big chance that you will not find the necessary information at once and won’t bring your project to an end. The worst thing is that you will waste your time and there will be nothing to add to your portfolio.


Don’t polish some large ideal project, as you will level up faster on a few small projects instead. I want to pay a special attention to that idea. I believe that the right solution is to work on the projects which will show your skills obtained on some course. Be realistic and do something within your strength, something you will definitely be able to finish. If you don’t finish projects and just do some experiments with nodes, you will run out of gas pretty quickly. You must create many small projects on the way to the big ones. If you do nothing except learning, your brain gets bored. Where are the likes, attention, subscribers, and friends’ compliments? Why on earth am I doing all of that? Support your zest for learning by showing your finished artworks to the audience.



SubstanceDesigner - 建筑材质创建全流程-CG编年史

When you are familiar with the basics, I would advise you to finish a more specific course. Don’t consider this interview as Daniel Thiger’s courses advertising, but I want to recommend him again. He gives a lot of comprehensive information within a very short time. Recently he’s finished the fourth part of the Substance Designer fundamentals. It will also be helpful to read threads on the Allegorithmic forum. Another method is an in-depth study of the graphs made by other authors who share them on ArtStation.

当你熟悉了基础知识,我建议你完成一个更具体的课程。不要认为这次采访是丹尼尔·泰格尔的课程广告,但我想再次推荐他。他在很短的时间内提供了很多全面的信息。最近他完成了Substance Designer Fundamentals的第四部分。这也将有助于阅读关于寓言论坛的线程。另一种方法是深入研究其他作者在ArtStation上分享的图表。

There’s one more step in studying SD that I’d call focusing on a specific topic. When you feel confident and learn general techniques to be able to make a passable hardwood floor, architecture, stones, etc., it will be the right time to go deeper into more narrow topics and concentrate on the lessons about, for example, sci-fi or metal (even narrower). Learn only the chosen topic for a few weeks to push the boundaries of your next project.


SubstanceDesigner - 建筑材质创建全流程-CG编年史

Conclusion | 总结

So, this it it. I hope someone will find this article helpful. This is my first interview with Thanks to the team for giving me this opportunity.


Stanislav Mikhailov, 3D Artist


Interview conducted by Kirill Tokarev

Kirill Tokarev进行的采访