In today's news post, we will be featuring the development of seasonal vegetation for the CryENGINE 3 SDK, which is being developed by CryDev user: Mr.Guybrush II
states that he has been working with the CryENGINE since the PreSDK days of CryENGINE 2 and was a founder of Exodus
; a Fantasy Mod developed back in 2007/2008. Mr.Guybrush II
also states that he first started modding on Counterstrike, then moved to Neverwinter Nights, Battlefield and finally to CryENGINE. He is also experienced with 3ds Max and he's been using Mudbox for the past two years.
- Blog Entry #1 - Grass Objects
Step 1: Mr.Guybrush II states that the workflow for making his grass is a little time consuming initially. You start off by making a simple grass blade (he made 3 height variations). You then draw some splines to create different blade shapes and by applying a pathdeform you can make realistic looking highpoly grass blades pretty fast. The end result being top left in the above image.
Step 2: Next he arranged the grass blades into an arrangement that would work for a flat texture. Now the way he designed the grass was to maximize its use is to allow the grass to have several unwrap layouts. Image 2 for example can be broken down into 3 grass objects, or it can use the entire grass texture as 1 longer plane. This allows him to use this grass sheet for grass patches but also small grass shrubs.
Step 3: The final step in 3ds is to add color gradients to each blade. He made 6 materials of different hues and colors, this reduces the workflow steps in photoshop and produces a more accurate diffuse bake. The mesh you see there is his dead grass variation, but he made several variations types allowing for more flexibility for the mapper. He bakes the Diffuse, Normal and AO at 2048 and throws them into photoshop.
Step 4: The final step in photoshop is to desaturate the colors and tweak the texture. He added a very subtle light/darkness to the texture and some dirt effect if required. He repeats the above 4 steps and fills a 1024 texture sheet with different heights and colors of grass.
Here's how the textures look in-game. To allow for better visuals he created 2 materials and then duplicated the grass objects twice and applied a material to each. So he made a green grass and a grey grass version. These materials can be tweaked depending on the environment/season etc so it allows plenty of variety for the modder.
- Blog Entry #2 - Grass Terrain Texture
Below are the steps he took to create the grass from 3DS Max to the sandbox editor.
Step 1: Having spent the time to make the high poly grass for his objects, he simply took the grass tufts he made and produced a few more variations. This would allow him to create a grass patch that he would then use to form the actual texture.
Step 2: He then moved the grass tufts around to form a dense patch of grass, this took a bit of time as he wanted to ensure that the AO/Normal would bake accurately so he made sure that no grass blades passed through one another.
Step 3: Using a square plane as a base, he carefully moved the grass blades around the perimeter of the plane, copying the grass to the parallel side of the plane ensuring that when baked the grass would tile. A handy tip is to place one grass object in one corner, then instance that grass to each corner. Once that's done is just a case of filling in the left/top of the plane and instancing to the right/bottom.
Step 4: With the frame done, he then filled in the center of the plane with more grass, he tried to vary it as much as possible with different scales and rotation directions. Once its finished he then made sure to bake the grass from above, producing an AO/Diffuse/Normal and Heightmap. He also advices to add a dirt texture to the plane as then you don't need to texture the dirt in photoshop, its been done for you.
Here's how the bakes turned out. CryENGINE 3 requires all terrain textures to be very desaturated to allow for the terrain layer color to project through.
And finally here's how the finished texture looks in-game alongside a custom dirt texture.
Below is a quick shot he threw together with assets from Blog #1 and #2 in the same scene with a river tree (from Crysis).
Mr.Guybrush II states that thanks to CryMono and new CE enhancements it has become possible to include seasons into CryENGINE.
Seasonal vegetation will allow modders the choice to customize their vegetation to suit the environments setting. With simple material adjustments the modder can change the vegetation to any season he requires. However, this vegetation will also evolve in real-time allowing the player to witness the vegetation changing through all 4 seasons.
Below is a video demonstration to show how the leaves react in Spring/Autumn:
That's all for today's news post, make sure to check Mr.Guybrush II's forum thread
here on CryDev for all the latest updates for Seasonal Vegetation!