Home 3D Art Showcase & Critiques

Forest Environment - Unreal Engine 4

1
polycounter lvl 3
Offline / Send Message
Oskar Selin polycounter lvl 3
Final Screenshots (see post on page 3)
(Many of the image-link in this post are broken, have a look at my website for a complete breakdown of the scene)
http://oskarselin.com/forest.html









(original post)
Project Overview

Hello fellow polycount users! In this thread I will share my progress on a forest scene I’m currently working on. If you have feedback please keep it constructive so I can learn something from it!
I will try to answer questions as best I can and will provide breakdowns if you guys are interested. As stated further down this is a personal project so expect some delays between new content-posts.

I will also post the same info on my website:
http://oskarselin.com/forest.html

Project Goals

- This is a personal project without a time limit. Instead of rushing things I will take my time and do everything properly. No shortcuts. (ex sculpting a custom texture in Zbrush instead of using photo-generated textures)
- Research and experiment to find the best method to complete a task.
- Building an epic scale landscape optimised and working in a game-engine.
- Exposing the project early on to other people to receive feedback throughout the entire process.

Planning and Priority

Prio list (high to low)

- Find references for meshes and textures (ex oakleaf, forest leaf-floor)
- Make Pure-ref reference documents for each object listed in Forest Summary
- Build the world in World Machine
- Import the world as a landscape to Unreal Engine 4.7
- Make all the tileable ground textures (ex grass, dirt, leaf-floor)
- Paint the textures on the landscape
- Post on polycount, website and email contacts for feedback
- Make a custom skybox
- Create the rest of the assets
- Block out the world with the meshes
- Place Cameras
- Make a Matinee
- Set the mood with post effects & lighting


Objects, textures & Shaders:

Landscape
Build the World Height-Map in World Machine.

Trees & textures
Birch, Maple & Oak Trees in Speedtree
Leaves
Bark

Ground textures
Forest-dirt-floor
Grass-floor
Leaf-floor

Ground foliage & meshes
Grass
Bushes/Shrubbery
Ivy
Flowers
Other unique plants
Mushrooms
Stump
Toppled Tree
Big Rocks
Small Rocks

Vertex-paint shaders
Bark shader with Bark, Mossy Bark, Variation Bark
Landscape shader blending textures with Height-map

Other things
VFX with falling leaves
Parts of forest under water
Different post-process effects and color schemes to create various moods
Vary the color of objects with a texture using world position

Replies

  • Oskar Selin
    Options
    Offline / Send Message
    Oskar Selin polycounter lvl 3
    World Machine landscape:
    a184ff50aa-World_Machine.png

    In unreal engine 4.7:
    e252efd5ba-landscape_unreal_engine.PNG
  • Oskar Selin
    Options
    Offline / Send Message
    Oskar Selin polycounter lvl 3
    Unreal Engine Height-Blend Shader with Tessellation

    Here is a landscape shader using heightmap output to generate blending between textures. In the example picture i use grass, leaves, small cliff and big cliff textures. The landscape is tessellated depending on camera distance using heightmaps to define the geometry. The small square landscape was created to test the shader on.


    b5a4d40ffb-Landscape_Height_Blend_Lit.png


    54369aede1-Landscape_Height_Blend_DetailLight.png


    e1c1ea73fa-Landscape_Height_Blend_plane.png


    Tessellation:
    fb8b4128e7-Landscape_Tessellation.png
  • Oskar Selin
    Options
    Offline / Send Message
    Oskar Selin polycounter lvl 3
    Leaves Texture

    I wanted to get a natural randomness to how the leaves were placed in my texture. First I tried with a scatter modifier in 3ds Max but that did not do the trick. Leaves cut through eachother and it was still visible that I had painted them out. So instead I modeled three leaves; birch, oak and maple. I applied a bend and twist modifier to make 20 unique leaves and also made 7 different color variations for each tree-type. I used MassFX to give each leaf a collission-box, gravity and mass. After baking the leaves and letting them settle on a plane I placed some strands of grass and a weed called ground-elder making sure nothing cut through another mesh. Diffuse rendered in 3ds Max, Height and Normal Zgrabbed from Zbrush.


    c22933257b-Leaf_Material.png


    aa0c4ec3b5-Leaf_3ds_max.png


    c2bad049e8-Leaf_collission.png
  • Oskar Selin
    Options
    Offline / Send Message
    Oskar Selin polycounter lvl 3
    Rock Texture

    Tileable rock texture sculpted & rendered in Zbrush, textured in Photoshop.


    f4a9a6260b-Rock_Material.png


    Zbrush sculpt with two different materials
    b29e5d09a5-rock_zbrush.PNG


    Grass Texture

    To make the grass i modeled a few strands of grass in 3ds Max then applied a Bend and a Twist modifier with randomized settings to generate more unique strands. Each strand got one of four unique grass textures applied. Then i placed them in bigger groups and placed those around a plane. To make the texture tileable i grouped all grass that overlapped the edge and copied them to the opposite side. I rendered the diffuse in 3ds Max and the Normal and Height in Zbrush.


    a3bcd2915c-Grass_Material.png


    e72ca9fd08-Grass.png
  • daniellooartist
    Options
    Offline / Send Message
    daniellooartist polycounter lvl 11
    Looks really nice. How did you make the ground? Is it a displacement map on a plane?
  • Oskar Selin
    Options
    Offline / Send Message
    Oskar Selin polycounter lvl 3
    Thank you! The ground is a landscape shader in unreal engine blending between four different materials (rock1, rock2, grass & leaf) with a height-map. Yeah, it is displacing the textures with height-map information using tessellation.
  • GC_Vos
    Options
    Offline / Send Message
    GC_Vos polycounter lvl 3
    (Mauro checking in from answerhub)

    Again, stunning work on everything you did here. I am still amazed by how good your rock looks...
  • fadox
    Options
    Offline / Send Message
    Sick rocks, and i love your max worflow (its inspiring ;) ) , the only flaw is the transparent leaves/grass where the materials blend.
  • Oskar Selin
    Options
    Offline / Send Message
    Oskar Selin polycounter lvl 3
    Hey Mauro! Thank you. Don't be afraid to point out stuff that I could improve also!

    Thanks fadox, it was alot of fun to play around with MassFX in 3ds! Yes you are right, I will see If I can improve the leaves-blend.
  • GC_Vos
    Options
    Offline / Send Message
    GC_Vos polycounter lvl 3
    The only suggestion I would have at this point would be to randomize the look of your grass mat. You could very easily break repetitiveness by offsetting, lerping and masking your textures a bunch of times. If you do this three or four times you end up with an almost patternless material.

    Screen%20Shot%2012-21-14%20at%2001.06%20AM%20001_zps0udrvwvx.png~original
  • Oskar Selin
    Options
    Offline / Send Message
    Oskar Selin polycounter lvl 3
    Good idea! Nice grass, no seams like you said. My texture has very visible grass strands though so if i mask it a couple of times the strands will probably "cut"? Maybe using world position color could be an alternative for my scene:

    (Picture from Ulrich Thümmlers website)
    pic01vz.jpg
  • JasonW
    Options
    Offline / Send Message
    The ground so far looks really good. Do you have any real life inspirational refence we can see, so we have an idea what your visual target is.
  • GC_Vos
    Options
    Offline / Send Message
    GC_Vos polycounter lvl 3
    Yeah, you're right, masking does come at the price of either fuzzy overlap or really harsh cuts depending on the mask you're using. It doesn't bother me as much as repetitiveness though (personal preference).

    World position coloring would be a very nice alternative yes. There's a very handy function that comes with the UE version of Speedtree. It's normally used to add color variation to foliage, but I might actually try to hook it up to some materials. Also one might try to lerp the same textures without coord offsets but add some variety to the textures themselves.

    That grass you posted looks really good btw, is that using bump offsets/parallax?
  • Oskar Selin
    Options
    Offline / Send Message
    Oskar Selin polycounter lvl 3
    @JasonW
    Thank you Jason! I have used lots of reference pictures for each texture I made. I could put together a big moodboard with some refs i have used and some for the overall feel of the forest. I am aiming for realism but I know some of the textures are looking a bit cartoony. If you figure out what's off please tell me!

    @Mauro
    I think it worked really good with your texture though!

    I think it's the windshader making the grass sway making it shaped like that. Here is the thread if you are interested:

    https://forums.unrealengine.com/showthread.php?3268-Nature-Environment-in-UE4&p=65111&viewfull=1#post65111
  • Oskar Selin
    Options
    Offline / Send Message
    Oskar Selin polycounter lvl 3
    Here are two new ground textures. Breakdown of how i made them will be posted later. When I set these up with the landscape shader I will do some tweaking and then move on. If I get some feedback on the ground textures or shader I will correct that also.

    Moss Texture

    I did the moss in 3ds Max using a Hair and Fur modifier. 100 000 strands with some size and length variation were generated. Rendered textures in Zbrush and did the editing in Photoshop. Picture from 3ds Max viewport.
    ebc4c70064-moss_UE_render.PNG


    57f348361b-moss_3ds_preview.PNG


    Dirt Texture

    I started by sculpting the mud in Zbrush. Then i used a scatter modifier in 3ds Max to randomply place five different rocks and pebbles, leaves, brances and bark about. I then reimported everything into Zbrush for render and finalized the textures in Photoshop.
    0e29aae407-Dirt_Material.PNG


    1cb779cf32-dirt_breakdown.PNG
  • Oskar Selin
    Options
    Offline / Send Message
    Oskar Selin polycounter lvl 3
    References
    As requested here are two of my reference mood boards. I have some more optimization to do for the landscape shader and then I will start on the grass. I'm grateful for any feedback!
    34a012477d-forest_references.png


    7b3b9ddd31-moodboard_for_publish.PNG


    I put out a camera for this shot and started painting out some mountains. I added a world position color texture to the grass also:
    26d3db9b42-UE_screenshot_01.PNG
  • Oskar Selin
    Options
    Offline / Send Message
    Oskar Selin polycounter lvl 3
    Hey I'm back with some new grassy screenshots from Unreal Engine! I can't decide if the landscape/camera shot is good enough, what do you guys think?
    feaff6d83f-UE_Landscape_update_02.png

    I have just started working on the grass. Here is a first look on the grass shader with the new subsurface lighting. (no light built in these screenshots)
    f83f9c3d4b-UE_Grass_Mesh.PNG


    ca148bf4a3-UE_Grass_Light.png
  • Mr Significant
    Options
    Offline / Send Message
    Mr Significant polycounter lvl 11
    Ok, I have some questions. About Shader for the terrain. Can you explain or show how you made it? Are you tessalating terrain overall, evenly ? Or its only where you have more complicated heightmap?
  • Oskar Selin
    Options
    Offline / Send Message
    Oskar Selin polycounter lvl 3
    Yes the landscape is tessellated evenly. Every material is using a height-map for tessellation. If you have'nt used tessellation before take a look here, not many nodes are needed:
    https://docs.unrealengine.com/latest/INT/Resources/ContentExamples/MaterialNodes/1_12/index.html
    You can also control the distance for when the tessellation should start and end:

    [ame="https://www.youtube.com/watch?v=D6zyUI33FqA"]https://www.youtube.com/watch?v=D6zyUI33FqA[/ame]


    I will do a thorough breakdown on the landscape shader later on so stay tuned!
  • Oskar Selin
    Options
    Offline / Send Message
    Oskar Selin polycounter lvl 3
    Made some tweaks to the leaf and dirt textures. Here are the new ones:


    7ab12ad41a-dirt_screenshot_03.PNG


    dcbdf271ad-Leaf_screenshot_02.PNG
  • Oskar Selin
    Options
    Offline / Send Message
    Oskar Selin polycounter lvl 3
    Hey guys! I have been busy with school assignments these last two weeks but here is another update on the forest landscape.

    Things I did since last update:
    - Rebaked the grass textures, made a new grass mesh and made a new subsurface texture.
    - I increased the normal strength for the tileable rock and added small surface noise to all rock normal.
    - Made a rock and textured it. I will redo the texture later on. The rock is placed around the scene.
    - I worked more on the composition of the shot with dark foreground, normal middle ground and light background. The rocks are also directing the viewer to look towards the middle of the scene where I plan to add a focal point-object/something.
    - I added a custom skybox with new cloud formations.


    223f881b6f-UP3_Landscape_picture.PNG


    f39803082f-UP3_Landscape_picture_02.PNG


    7f07b62278-UP3_Rock_a.PNG


    I’m planning on doing this next:
    1. More rocks + new rock texture
    2. Smaller foliage, bushes, flowers
    3. Trees
    4. Cloud VFX to cover some of the mountain peaks
  • Umbrafoxus
    Options
    Offline / Send Message
    Umbrafoxus polycounter lvl 3
    This is looking so good, love your process! Are you landscape layer painting the cliff material in or have you set it to blend by height/angle or masks?
  • EpicBeardMan
    Options
    Offline / Send Message
    EpicBeardMan polycounter lvl 8
    So far, it looks great. Won't say much since I will be waiting for further progress of your project.
    Cheers, and good luck!
  • Oskar Selin
    Options
    Offline / Send Message
    Oskar Selin polycounter lvl 3
    @Umbrafoxus
    Thank you! I am landscape layer painting it. If set by slope you´d get a hard edge/no nice mask blending, into other materials. I have painted it by hand but it is also possible to import a black and white image from World Machine or Photoshop.

    @EpicBeardMan
    Thanks! Please don´t hold back feedback even it´s small stuff! :) I have no issues with remaking/redoing assets.
  • mats effect
    Options
    Offline / Send Message
    Looks great so far the grass is looking pretty nice, but with some of the more distant grass you can clearly see empty spots though I know its a fine balance between getting grass to look right and still run at a good frame rate.

    I am actually really impressed with your landscape shader, the rocks on it look really nice. Same for the rock mesh's too.
  • Oskar Selin
    Options
    Offline / Send Message
    Oskar Selin polycounter lvl 3
    Thank you mats effect! I agree that the distant grass doesn't blend in too well. I actually got a suggestion on how to improve that. I will make a new grass mesh with more different shapes in it. Like thin tall planes or a curve like shape as well. Right now there are only three different rectangular planes in the grass mesh.
  • Oskar Selin
    Options
    Offline / Send Message
    Oskar Selin polycounter lvl 3
    Hello! I'm back with some rock meshes. I've been busy with other assignments this last week as well. I decided to throw away the first two other sculpts I made.

    1143e30ba3-rock_d_3.png


    b3ff126513-rock_d_4.png


    546815ce05-rock_c_1.png


    4d28b36bc7-rock_d_1.png


    65d1dd800d-rock_d_2.png



    b8b9ed9ac2-rock_c_2.PNG
  • Oskar Selin
    Options
    Offline / Send Message
    Oskar Selin polycounter lvl 3
    Hi,

    I have not had much freetime to work on this project lately. Here are a few meshes I have made since last update. Feedback is very much appreciated!


    c2b55f5a7f-fifth_update_10.png


    23cd0954bf-fifth_update.png


    88f88bc57d-fifth_update_02.png


    1db626f30d-fifth_update_06.png


    13a2cfbf25-fifth_update_09.png


    843f4c9346-fifth_update_04.png


    4946a98583-fifth_update_05.png


    3ec94f4dd1-fifth_update_03.png


    9182353d91-fifth_update_07.png


    2adb9ede27-fifth_update_08.png


    dfb0a2b17d-fifth_update_01.png
  • Mr Significant
    Options
    Offline / Send Message
    Mr Significant polycounter lvl 11
    I really like the assets, I really like the textures, but overall level looks very plain, very flat. Maybe its shading, maybe its lightning. Some more contrast maybe. Or add some clouds shadows. Keep going!
  • Oskar Selin
    Options
    Offline / Send Message
    Oskar Selin polycounter lvl 3
    Thanks Mr Significant I agree! I will try your suggestions and see what I can do to make it more interesting.
  • JustGarry
    Options
    Offline / Send Message
    JustGarry polycounter lvl 4
    The birch bark is too white for me I would tone it down a little, looking good though and the other bark is top notch.
  • Oskar Selin
    Options
    Offline / Send Message
    Oskar Selin polycounter lvl 3
    Thanks Garry! You mean that the birch bark should be darker? I will try that out!
  • Stavaas
    Options
    Offline / Send Message
    Stavaas polycounter lvl 3
    Hey man, this is great! Truly inspiring to look at!
  • BradMyers82
    Options
    Offline / Send Message
    BradMyers82 interpolator
    looks great so far!
  • urgaffel
    Options
    Offline / Send Message
    urgaffel polycounter lvl 17
    This looks really nice but the texel density on the trunk vs the branches on your leafy tree (http://oskarselin.com/onewebstatic/13a2cfbf25-fifth_update_09.png) is really noticeable. Maybe make some sort of transition or try to even them out a bit?
  • Oskar Selin
    Options
    Offline / Send Message
    Oskar Selin polycounter lvl 3
    @Staavas & Bras: Thanks alot!
    @Urgaffel: Thanks. Yes you are right! That is an easy fix since I made the tree in Speedtree.
  • Bruno Afonseca
    Looks great!
    I'd make the atmosphere a bit more blue and I'm missing some yellow or brown in the scene. Weird feedback I know but that's what my eyes are asking for
  • jonas-144
    Options
    Offline / Send Message
    jonas-144 polycounter lvl 6
    Awesome work!
    Very inspiring
  • Oskar Selin
    Options
    Offline / Send Message
    Oskar Selin polycounter lvl 3
    Looks great!
    I'd make the atmosphere a bit more blue and I'm missing some yellow or brown in the scene. Weird feedback I know but that's what my eyes are asking for

    Thanks Bruno! I think I understand what you mean. Could you perhaps do a quick paint over?
  • Oskar Selin
    Options
    Offline / Send Message
    Oskar Selin polycounter lvl 3
    jonas-144 wrote: »
    Awesome work!
    Very inspiring

    Thank you Jonas! If you spot anything that I can improve further, please tell me.
  • GRAT0R
    Options
    Offline / Send Message
    The bark texture looks spot on, what was the general process to make it?
  • Gadgets
    Options
    Offline / Send Message
    I really like your rock sculpts a lot and I think you did an awesome job hand painting the terrain without using masks.
  • Batou
    Options
    Offline / Send Message
    Batou polycounter lvl 4
    Damn looks good.
  • LaurentiuN
    Options
    Offline / Send Message
    LaurentiuN interpolator
    how many tris has a tree ? everything looks nice and smooth
  • Oskar Selin
    Options
    Offline / Send Message
    Oskar Selin polycounter lvl 3
    @Grator: Thanks! It's actually just a tiled photobased diffuse texture and a normal generated with Quixels NDO. I used the preset "full spectrum" and adjusted those settings. The whole process just took about one hour. I had hoped for some sculpting in Zbrush but it just wasn't needed.

    @Gadgets: Thank you! I'm not sure it's the best process. It takes more time but I get full control over the materials and how the textures blend together at the seams.

    @Batou: Thanks a lot!

    @s1dk: I'm glad you asked! I should probably add that info into each picture. Each tree has four LODs where the last one is a billboard. Here are the tri-count for the highest LOD which you see in the pictures above:
    Big maple tree: 27k tris
    Young maple tree: 5300 tris
    Birch tree: 4356
    The big maple tree is not actually used in the scene. The shape isn't that interesting and the tri-count is way to high compared to the other trees.
  • Staubkopf
    Options
    Offline / Send Message
    Staubkopf polycounter lvl 3
    This looks all very nice :)

    maybe you should create a 4 sided cloverleaf for someone to find ;) i heard it brings fortune lol
  • Mathew O
    Options
    Offline / Send Message
    Mathew O polycounter
    Great work man, I'm enjoying seeing your progress :)
  • Oskar Selin
    Options
    Offline / Send Message
    Oskar Selin polycounter lvl 3
    @Staubkopf: Thank you! Haha, good idea!

    @Mathew O: Thanks a lot!

    I finally found a couple of hours to continue on the scene. Big thanks to everyone who's commented and helped me improve this scene!

    Some minor changes i did today:
    - New sun-direction
    - Added Distance field shadows
    - Tweaked the fog
    - Darkened the bark as suggested by "JustGarry"

    Do you think the scene still looks flat? I'm having a hard time defining the fore, middle and background, making them distinguishable. I greatly appreciate feedback from a fresh set of eyes. I have been staring at this scene for too long.

    Latest screenshot:


    fd6928dd7f-sixth_update_landscape_01.png
  • Stavaas
    Options
    Offline / Send Message
    Stavaas polycounter lvl 3
    Looking very nice mate! What bothers me about it are the clouds in the background, they look very flat. Did you use a textured dome for them?
  • RashedAlmetrami
    Options
    Offline / Send Message
    RashedAlmetrami polycounter lvl 10
    Beautiful work, agree with the comment on the clouds though. I would suggest adding more contrast as most of it seems to be near-flat white.
1
Sign In or Register to comment.