Environment artist Jan Tverdik gave some tips on creating simple and beautiful 3d scenes. Introduction My name is Jan Tverdik and I´m a
Environment artist Jan Tverdik gave some tips on creating simple and beautiful 3d scenes.
My name is Jan Tverdik and I´m a 3D Environment Artist from Heidelberg and currently living in Frankfurt am Main, Germany. I’ve studied 3D Game Art & Animation at the Games Academy, where I early felt in love with game environments. After that I took the “Environment Creation for games” course at Future Poly. I have worked on some smaller projects and am working now to take a step into a bigger studio.
Feel free to check out my portfolio page.
I have generally built this nature scenes to practice efficient creation of foliage and to get a better look at the lightning in the CryEngine. Since there are these great new features like Voxel-Based Global Illumination and Volumetric Fog I felt the urge to build a complete scene with it.
I gathered a lot of reference material of beautiful landscapes and vegetation and started to create my asset libraries. All the assets finally ended up in a test environment where I was able to test their functions and plan the proper scenes. The more I tried out things and read in CryEngine’s documentation ( which is improving a lot ), the better everything went together. Also the efficient workflow between 3ds Max and CryEngine has proved one’s worth since I always was able to go some steps back and fix issues, change or iterate something that was needed for the scene and see the result immediately within a click in engine.
Especially for a nature environment it´s important to get a lot of variation of your assets. I made several types of every set of assets ( rocks, grass, flowers, trees ) to test them out, not everything was used or worked out as intended, therefore it was very important for me to test in engine as soon as possible.
Everything I made was created the common way, there was nothing fanzy. For the rocks I made some basemeshes in 3ds Max to get my volumes and silhouettes fast into Zbrush. From there I used DynaMesh and sculpted everything exept for very small detail, because for that I created a tiling detail map that takes care of it in the engine.
The Retopology was made in combination with the Dezimation Master and manually fixing in 3ds Max. After that I baked all the needed maps in xNormal and created a Smartmaterial in Substance Painter for consistent texturing for all the rocks. They all had their different purposes and usages for the composition and the feel of the scenes.
For good Normal Maps and Alpha Masks for the foliage I also used the common workflow of baking highpoly elements onto a texture plane. Therefore I modeled everything in 3dsMax and took some of them into Zbrush for small details like veines et cetera. After baking and building the lowpoly objects I collected all the assets in one master scene in 3ds Max for exporting into CryEngine. I finally made several versions of the same assets with different bending and arrangement for variety.
The trees are made with splines in combination with the Loft Compound Object to have always the flexibility in modeling and changing the shapes for other variants of the tree. Also the UV´s are done very fast due to the fact that all you have to do is to scale them properly. You also always have great deformations options available which you can use to change the scale, twist and so on.
After baking the branches onto planes I stuck them together to get different kinds of branches, from small to medium-sized. From there I took instances and placed everything together until I was happy with my treetop. I can´t emphasize enough the importance of keeping the instances active while working throughout the project since you are able to always only edit the main branche without replacing every branche on the tree ifself. For better shading I also used the NormalThief script to apply custom normals.
It was important to make a tree that could be used from all different angles to prevent repetition when there are a lot of them placed in the scene.
For more variation I used a tileable bark material ( created in Zbrush and Substance Designer) and a moss material as blendlayer. This allowed me to blend between these two materials via Vertex Alpha painting in 3dsMax.
All the ground materials are procedural and made in Substance Designer. It was important to stay in similar color palettes, not to have completely diverse shapes and good heightmaps for good texture blending on the terrain. Be it for checking your texture values or the overall coloring, the different render modes in the engine were very useful.
Could you talk about the way you’re working with materials in Cryengine? Do you need to do some additional importing and fixing? Does everything work right from the very beginning?
Of course it takes some time to get used to the engine, the specific little settings and console commands, but Crytek is now releasing way more up-to-date tutorials than previously. And even if it’s faster to get the hang of Unity and Unreal, I still prefer the performance of the CryEngine.
However I really would like to have Substance integration. Although you have some freedom to tweak your materials in the material editor, the separate exporter with it’s unique compression method is slowing down your workflow sometimes if you are not texturing in Photoshop in general.
Yes, one of the biggest strengths of CryEngine is the realtime lightning which safes you a lot of time since you don’t have to bother about lightmaps.
For the desired degree of realism the scenes had to go through many iterations. There was a lot of tweaking and experimenting with the settings and parameters. Thankfully there is the option to safe the lightning settings into a file, therefore you are not scared to change something dramatically and it gives you the freedom to experiment.
In any case it was very helpful to let the scene rest for some time to be able to get a fresh eye for it and ask Sebastian Schröder, a good friend and colleague of mine, for honestly feedback. I’m very thankful to him, he is a mastermind and great tutor.
Overall I haven’t done something else either than experimenting and tweaking the parameters until it felt right and I was happy with it. This took some time of the project, but because it was my aim to learn more about lightning, I’m happy how it turned out in the end.
For me it was always helpful to have a up-to-date workflow with useful plugins and scripts, everything that safes you time is good for your project. It gives you more time to focus on the important stuff. Also very valuable is to stay organized with all your folders and naming conventions, make backups of your scenes and settings frequently.
Don’t get lost in details, find some fixed focus points – I was able to safe up to 12 fixed camera positions in my scene within CryEngine. From there I worked on the composition, which is more easy than having a complete scene with no focused areas. This way I was able to concentrate on building and polishing the scenes towards these areas.
Know your tools and engine-specific features. For example CryEngine’s flowgraph, which safed me a lot of time, without it I would have had to put in every console command every time again when opening the engine.
Take the time for gathering the correct reference materials. Don’t overwhelm yourself by collecting everything you can find, filter what you really need and what really will help you.