Hi, my name is Emrecan Çubukçu, I live in Ankara. I own a small digital studio Kreatin Studios that currently makes AR and VR software, especially focused on education. I started my software career with process control systems, measurement, and device software for industrial plants. After Ph.D., while working on our 3D scanner software, my relationship with OpenGL deepened and my knowledge in 3D mesh operations, image processing, and computational geometry increased. I was interested in modeling as a hobby. It takes a lot of time, and I don’t have much patience. To me, realtime 3D procedural things always seemed the most enjoyable to deal with.
For 10 years I have been teaching 3D interactive presentation techniques to industrial designers and architects at the university. My class covers up the basics of lighting, color, animation, visual composition, photography, enough amount of coding knowledge, presentation techniques and staging. I learn a lot while I am teaching.
Pirate Island, Village, and Satellite Materials
My materials are evolving but it all started with the Island Material. In the Island Material which is my SD learning project, I’ve dealt with the relationships between mountains, rocks, water, shores and fake erosion and flora changing with slope. I was working on an animation for the motion simulator that we developed in Unity 3D and will be located in a science center. We needed farm textures for the flight scene. And I couldn’t find the textures I wanted. It took almost no time to create the material with SD. When I painted these very different textures on the unity terrain, it was exactly what I wanted. The idea of combining them to make a town and fields was born there.
Speaking about the Satellite Material, one day when I was looking out the window on the plane. I just wondered if this view could be done with SD. As a result, it would have been a different scale and realistic version of the village.
Even though I got excited by the idea of satellite view immediately, it took me one month to catch free time to work on it. I managed to spare 2 or 3 hours of a week and finalize it in 2 months. It still needs some revisions but I have to get back to my real job, so I have decided to share the first version and upgrade it later. So stay tuned 🙂
I used almost the same laws in the making process of all three materials, which are natures laws. First, I created the wild terrain before human settlements. Second, I completed a view of the wild nature with eroded mountains, hills, lakes, and rivers. I have concentrated on the vegetation in places where the slope is low and at the edges of the water. Then I used the standard cell node for roads. I’ve filtered the roads according to where the slope isn’t much. Thus, the roads passed through places that people would really prefer. Cities took place as heaps on the roads. A few odd houses are added on the side of the roads. The fields are planted in the empty plains. I have added parameters for urbanization, agricultural areas, and forest quantities. This allows the artist to play with the settings and get a swiss landscape, Southern European area or the Middle East view.
The biggest problem in creating materials is that they never finish. I am still not satisfied with the material that I shared so far. At some point, I always decide to finish because of lack of time and/or boredom. And there are tons of things to work on (improving erosion in the mountains, separation of main and intermediate roads, the structure of cities and variety of houses, problems in rivers, feeling of the forest ). There are still weeks of work 🙂
Adding the Presence of Life
Heightmap-based thinking is a very interesting process. It is a very fun puzzle to make life-indicating objects like houses or boats. In fact, it was very simple to add, but the “presence of life” effect is very strong. Those villagers needed those houses, lakes, farms, and boats of course!
Height maps of the houses and boats:
House generator graph included in the Village Material. These ones are just a couple of pixels in the final image, but they can be hi-res when they are given a chance:
As seen here, every object is just a composition of primitive geometric shapes. That’s basically it!
Using Substance Materials in Production
The materials can be used in 3D environments with different 3D software. Actually, it has quite an easy workflow. Just drag the textures on a suitable shader with tessellation onto a plane and let it come alive. It gives the best result when used in distant landscapes with just one plane. I believe they can be used in a scenario that is suitable for where the player will not get too close. At the end of the day, they are just materials. But, if you look very closely, the spell will be broken and the resolution problems will begin. It’s really comfortable for the artist to use the substance material in Unity and Unreal. The workflow already allows it.
Since it is not easy to find long-distance terrain textures for games of animation, these materials are perfect for prototyping these. They can be used in top-down flight games, arcade-type flight games, aircraft cinematics and animations that are not close to the ground.
SD is one of the favorite tools in my 20 years of 3D life. With high-resolution support, advanced export options and embedded erosion nodes, it can be a powerful alternative to terrain tools with its powerful fractal and Voronoi nodes. I definitely think that water and thermal erosion nodes are very important for creating natural terrain. If there were erosion nodes included, all my terrain would look very different. There are a limited amount of tutorials on SD and terrain. Vincent Gault‘s tutorial was the starting point for me. If I have time, I would have prepared terrain tutorials. As a piece of advice, SD should be studied and learned as a whole, and if you already understand SD nodes well, there is no difference between making a real rock and terrain.
As I always say, my learning algorithm is like that:
- Open the software, do reconnaissance. Try to create something, fail.
- Read the user manual and take notes (because I’m an engineer, the theoretical background is important!)
- Search for a written tutorial on Google. (I couldn’t find one, because written tutorials are species in danger of extinction, go to the next step.)
- Watch a tutorial on YouTube, fast forward, skip, skip, skip…
- Don’t understand anything; watch again for missed and critical parts of the tutorial.
- Analyze well-implemented examples, have an epiphany!
- Go to step one, until you are ok.