Log into your account to keep track of your progress. You can work through the lessons without logging in but your progress will be lost when you refresh the page.

TOTAL DURATION: 3h 56m 13s

Project Pegasus features a detailed open-world environment, with open grassland, woods, and crisscrossed with dearth paths. In these lessons, you’ll learn how to add realistic detail to a landscape using materials from the Megascans library how to place procedural paths and scatter woodland trees. You’ll also learn the principles behind the Unreal landscape material.

For a closer look at the Unreal material and some of the Digital Assets created for Project Pegasus check out the Material and Technical Deep Dive lessons.

CREATED BY

GEORGE HULM

Developing Natsura, a revolutionary new plant growth simulation framework that blends art and science to solve production workflows for commercial studios and artists, and provides new avenues for botanists to explore plant shaping behaviours.

More from George Hulm

COMMENTS

  • kukucck 1 year ago  | 

    Is that work with Unity?

  • GeorgeHulm 1 year ago  | 

    A large part of this series takes place in Unreal Engine but the general tools and approach are game-engine agnostic :)

  • George Rolfe 1 year ago  | 

    It seems a lot of the files used in these lessons are missing in the download.

    • GeorgeHulm 1 year ago  | 

      Hi, sorry for the delaying in responding. Please could you clarify which files are missing? Thanks!

      • nbaadam2021 11 months, 2 weeks ago  | 

        The files are made by unreal engine 5.3, and its not possibile to use them on UE 5, 5.1, 5.2 because Epic Games dosent let you downgrade Uassets. is it possibile to get at least the material in the oldest format soo can be used from all the unreal engine 5 versions?

        • newkinostudio 8 months, 3 weeks ago  | 

          This ^^^ It seems like we have to use 5.3

  • prerrro 1 year ago  | 

    I had 1 error in one of the hdas in the last houdini 20 version
    opdef:/Sop/PE_heightfield_paths::2.0?ViewerStateInstall (1): Unknown command: __import__

    • tindoynilo 1 year ago  | 

      what did you do regarding this issue?
      + I can't make [PE_Heightfield layers to ID] to work in the part 6 of the tutorial, it is only black

      • mosesthecgartist 9 months ago  | 

        same issue. have you fixed this issue?

        • xfdang 8 months ago  | 

          In my case it only happend in the first layer, because its index is 0 and corresponding id value is 0 no matter how many layers you have out there. For example you have 3 layers Rock(0), Grass(1), Sand(2), say we are using a 8bit int, so their id value will be 0, 1/255.0, 2/255.0, the Rock layer will be missing because the default value is also 0, override 0 witn 0 make no sense.
          I fixed it by modifying [volumewrangle1] node of [PE_Heightfield layers to ID], add 1 offset to the index variable(line 2 form "int index = chi("index") ;" to "int index = chi("index") + 1;"). It still has some issue and may need change some following nodes but at least the output image seems correct.
          Hope George can fix it in a better way.

  • Bojay 1 year ago  | 

    Really awesome tutorial with very nice optimization in mind. I learned a lot and will definitely utilize the technique in my own open world project.

    It would be great if we can learn more about the Houdini 20 spline feature and what it's capable of in Unreal!

  • i_love_fx 1 year ago  | 

    Thank you for sharing this project and all the lessons. Looking forward to learn a lot from them.

  • mac3designer 1 year ago  | 

    For me too opdef:/Sop/PE_heightfield_paths::2.0?ViewerStateInstall (1): Comando desconhecido: __import__

    • prerrro 1 year ago  | 

      I think we can open the hda and find the problem with that import method.

      But I have another blocker, the color shader in unreal 5.3 is not working at all, it keeps that squares textures and never shows the masks ;<, I will continue checking what is happening here, anybody have the same problem ?

      • mac3designer 1 year ago  | 

        It's because if you follow the package setup, and change the other project name, some assets will cause this error, after only downloading the project files and using Unreal, and Houdini, this doesn't happen, I believe the good practice is to remove/pegasus in assets and use dynamic paths and save the digital assets for use in any package project, but this is only a lessons to learn about pipeline for create worlds don't for create from scratch, but good idea is share the files per modules, for don't give the user lost in the tutorial :D.

        • 9757020 8 months ago  | 

          Hello, I have also encountered the same problem, which has not been solved yet. How does this method you mentioned operate? I don't understand houdini at all

  • mac3designer 1 year ago  | 

    Why don't share the project files used in the videos?

    • GeorgeHulm 1 year ago  | 

      Which project files are missing?

      • jmwalther91 1 year ago  | 

        the hip files are missing

  • zakkatara 1 year ago  | 

    Amazing series. I found though that when adding 7 or more id layers they break and some bits are not selectable in the material layers, defaulting to the background material. Anyone else come across this and found a way to fix?

    • jmtcgi 1 year ago  | 

      @zakkatara To use more than 7 layers you have to switch from Round to Ceil inside the "MLB_PE_Landscape". You can find it at the "correct bit" section

      • asbird2009 11 months, 3 weeks ago  | 

        I needed to switch from round to ceil for 7 layers, but then I added an 8th layer and had to switch back to round.

  • GeorgeHulm 1 year ago  | 

    The default settings on the material instance have been updated and the project files have been re-uploaded.

    I'm sorry about the problems everyone!

    A couple of important notes on things poorly explained in the series:

    - The "number of idmap layers" parameter must be set to the number of layers encoded to the idmap.
    -The "bit" must be selected in the blend asset
    -The "texture atlas index" is selected in the layer asset.
    - The material assumes a terrain of resolution 2017, otherwise, users will need to modify the resolution and terrain size parameter to compensate.

    • prerrro 1 year ago  | 

      Thank you !!! Awesome tutorial indeed, I'v already started to learn material layers :) but this shader is incredible, again, thank you very much!

  • GeorgeHulm 1 year ago  | 

    It seems my latest update introduced a new problem. You need to make sure that you change the compression setting of the "TA_Masks" and "TA_Normals", to be "masks" and "normal" respectively.

    • prerrro 1 year ago  | 

      I have the last files version, just check and both files have the correct compresion.

  • mac3designer 1 year ago  | 

    Great, now works everything.

  • mac3designer 1 year ago  | 

    Postprocessing don't works

  • Agence-premiers-degres 1 year ago  | 

    Thank you so much,
    I hope the pegasus team will keep going with such nice tutorials. You are fantastic.
    <3

  • Agence-premiers-degres 1 year ago  | 

    Now I come with my own issues sadly aha, I've processed all along and now I found myself a bit stuck as the master material landscape provides a bug that a TextureSample is missing input. Can't figure out alone what should be sourced in. Atm the material seems not usable to me.
    Also tried to reimport files (materials content folder)

    Here is a screen of the issue :

    https://i.gyazo.com/398a58979e43276cdc0b809ec7d11741.png

    The only thing that I've changed during the tutorials was the name of the envVar Pegasus projects to fit mine, Overwrited where it was needed ofc.

    Am I doing smthng wrong ?

    Still, great tutorials, thanks for everything !

    • Agence-premiers-degres 1 year ago  | 

      Also, my landscape is not splitting in multiple planes after baking, it keeps being one big stack.
      https://i.gyazo.com/9e432cfb5b0ea7854e029bd59ea86886.png

      Yet did it twice can't figure out where I m doing wrong :)
      using houdini 20 + UE 5.3.2

      • Agence-premiers-degres 1 year ago  | 

        Well I've retried everything and as mac3designer said, all issues were coming from the fact that I wasn't using your uproject and all folders as native project.
        My bad :)

      • martinezdavid888 9 months ago  | 

        Use World Partition or open world level. This will give you multiple tiles for one landscape - aka Proxy Streaming Tiles.

      • martinezdavid888 9 months ago  | 

        Use open world map to get multiple tiles.

  • mac3designer 1 year ago  | 

    Some trees it's floating, https://i.imgur.com/dBZDhfA.png

    • Bojay 1 year ago  | 

      I have the same issue, that's because the landscape size issue. I set heightfield in Houdini 4000 x 4000 with resolution 4336 x 4336.

      The resolution 4334 is due to Unreal, it set its Landscape to a specific size.

      And because of this (4000 vs 4336), Houdini Engine has to use the scale in Unreal to match the size. So my scale in the Landscape was not a even number.
      And that's the reason why it causes the position offset (slightly offset from houdini).

      To solve this, just make sure the size is the same as the resolution, or can be evenly scaled. In my case I changed the 4000 size to 4336 and the scale in Unreal become 100 for both x and y. And it works.

    • papamadoo 12 months ago  | 

      I had the same problem, Since they didnt use it in the video I didnt care at first, but there is different specific value for the landcape optimisation in both unreal/unity.
      I made some test because I had also the 100x 100y on axis, so this bound to the resolution specificly. I try the 256 to 2048 got the offset. But when I switched to the Recommended Landscape size https://docs.unrealengine.com/5.0/en-US/landscape-technical-guide-in-unreal-engine/. I got no more offset and the resolution is the same as houdini.

      • miditato_r 11 months ago  | 

        I did the correct resolution (2017x2017 ) but the trees are still misaligned... very disappointed (

        • Vic_Mcc 10 months, 1 week ago  | 

          I'm facing the same problem :/

  • Olivier_f 1 year ago  | 

    hello,
    On the video 7 | Material Setup, starting from 2 minutes 29 seconds, you talk about overwriting the cache at 2 minutes 30 seconds, saying "if you remember." However, I don't see which part of the tutorial you are referring to at that moment. As a result, I'm currently stuck, and I don't understand where I missed the part that imports the base heightfield into Unreal.
    Thanks for your help.

    • GeorgeHulm 1 year ago  | 

      Why, right at the start! Check out part 2: pipeline

  • Agence-premiers-degres 1 year ago  | 

    Hey, sorry I m back with another issue, the HF path tells me that the roll_across node is kinda empty (not full definition installed)
    But now I'm working inside the demo project package folder, did I miss something ?

    https://i.gyazo.com/a3aa4b3114cb4d0606b9c90b2bd09646.png
    https://i.gyazo.com/91333c0c563b8afc5dc104a022089504.png

    • Agence-premiers-degres 1 year ago  | 

      For now I've bypass the issue using convert hf + ray nodes

      • chemlancer 10 months, 1 week ago  | 

        Hi,
        Did you get the reason and how to correct this? I am having similar issue

  • mac3designer 1 year ago  | 

    I will see the idmap lessons, by who is correct?

    bit=0
    material selection=0

    or

    bit=0
    material selection=1

    because I found in the code in layers for id, and has numberkeys-1 and texture atlas layer return ever 6, but we have 7 now, but never change the number of layers in the field, and I my case, don't works grass inside of moss layer, I try any combinations of bit and material select, remove everything, but don't works.

    • rcyl4 8 months, 4 weeks ago  | 

      I think it is caused by Houdini writing the idmap starting from 1, and reading the idmap in Unreal starting from zero. So we need to subtract one

  • leKryuk 1 year ago  | 

    Hello,

    I've identified an issue with the PE_Load_Landscape node related to reloading or updating "Pegasus_Landscape_Layer_2_Manual_Edits.bgeo.sc" files. My Houdini version is 20.0.547.

    Here's how it currently functions:

    1. In the parameter interface of the PE_Load_Landscape node, you set the Directory to your landscape files.
    2. You load files from this directory.

    The problem arises when updating existing files with new information. For instance, if you modify your procedural details on the landscape, overwriting the "Pegasus_Landscape_Layer_2_Manual_Edits.bgeo.sc" file, pressing the "Reload" / "Reload Geometry" button in Houdini or Unreal doesn't result in any changes.

    The root cause of this issue lies in the PE_Load_Landscape node, which employs three "File" nodes for loading three landscape files: Source, Manual Edits, and Procedural Details. The problem is that the "Reload" / "Reload Geometry" buttons only work for "file3," which is responsible for reloading the Source landscape file.

    To resolve this, we need to update the functionality of the PE_Load_Landscape node to ensure that the "Reload" / "Reload Geometry" buttons also work for the "file2" and "file4" nodes, responsible for Manual Edits and Procedural Details, respectively. This will ensure that changes made to these files are reflected when reloading in Houdini or Unreal.

    Let me know if you have any questions or if further clarification is needed.

    • Igrom 9 months, 1 week ago  | 

      What solution did you find, I am also facing the same problem with updating the landscape. Only changing the node allows to update the information, but the "Reload" button does not work as you described above.

  • SSFranch 1 year ago  | 

    Hello!

    HD settings for Houdini have appeared in this chapter. Disabling layers and colors. There were no such settings in the video how to create them

  • SSFranch 1 year ago  | 

    it is also unclear how to make a PE_heightfild_material node

  • tindoynilo 12 months ago  | 

    PE_heightfield_paths: Post processing doesn't seem to work,

  • 83X5T 12 months ago  | 

    I know this is a newby question, but how do you set up your vieport lighting like that. Mine looks dull. Thx

    • asbird2009 12 months ago  | 

      I don't know if this will help what you're referring to, but I was having bad visuals as well. Mine seemed very dark. I saw in one of the videos he went out of the geometry node and had some light nodes labeled sunlight. I couldn't get that to work.
      I ended up changing the lights settings by pressing 'D' and going to the Lights tab. In the Headlight section I increased the Intensity and it seemed to brighten everything up.

      Hope this helps.

      • 83X5T 12 months ago  | 

        Thank you! I didn't know he had lights set up.
        Will try that, because with D and Light I don't see much of an improvement.

  • sevenfa7 12 months ago  | 

    I've been trying to fix the geometry displaying on low vertexes. What's the problem? https://prnt.sc/NhfvPXtVg9pH

    Tried to:

    -- Build everything
    -- Disable Nanite
    -- Play with lightning

  • frostwizard4 12 months ago  | 

    In Lesson 6, the Layers to ID node is broken. It fails on line 8 of the menu parameter node definition for "id_layer", `dict = geo.dictAttribValue("id")`. It cannot find the parameter called "id" even though that parameter exists.

    • frostwizard4 12 months ago  | 

      Interestingly, this error disappears if I reimport the package. The new problem is it appears black on the landscape instead of showing the mask. The project files do the same.

      • astarte_industries 11 months, 1 week ago  | 

        I am having the same issue both with my own copy of the HDAs and the original HDAs. I'm on version 20.0.506

      • TravisFX 10 months, 3 weeks ago  | 

        Yep, same issue. Did anyone figure this out?

    • laihinchun 6 days, 11 hours ago  | 

      Same here. It renders the node broken and unusable.

      Here's the following error:

      Error running Python menu script in parameter,
      Texture Atlas Layer (/obj/geo1/PE_Heightfield_Layers_to_ID5/id_layer):
      Traceback (most recent call last):
      File "/obj/geo1/PE_Heightfield_Layers_to_ID5/id_layer", line 8, in expression
      File "C:\PROGRA~1/SIDEEF~1/HOUDIN~1.370/houdini/python3.10libs\hou.py", line 42195, in dictAttribValue
      return _hou.Geometry_dictAttribValue(self, *args)
      hou.OperationFailed: The attempted operation failed.
      No attribute with this name exists

  • unreal-universe 12 months ago  | 

    MI_Landscape_Instance is empty, no parameters.

    • unreal-universe 12 months ago  | 

      just recreate, it's solved.

      • unreal-universe 11 months, 4 weeks ago  | 

        Well, I think M_Pegasus_Landscape_Master material is not complete, so MI_Landscape_Instance still lack some parameters.

        • unreal-universe 11 months, 2 weeks ago  | 

          Finally, the unreal assets need 'Migrate' instead of Ctrl+C, Ctrl+v...

  • Daniel_Bobrowski 11 months, 4 weeks ago  | 

    Hi, I've completed part 7 and have two questions:

    Is it possible to use ID masks as a base for blend layers in Unreal Landscape? I would like the option to paint my landscape in Unreal on top of a predefined bake from Houdini.

    There is no information about how the manual landscape was created. I assume it is just a flat heightfield? This becomes relevant when I try to flatten my landscape inside Unreal. I find it challenging because the procedural and source layers still contribute to hills. Have I missed something? Should it work this way?

  • Josh Short 11 months, 1 week ago  | 

    Did you have any luck packaging the Unreal project with the Nanite landscape? It doesn't work for me - no tessellation and lots of weird scaling triangles with gaps. Working fine in the editor!

  • SarahB 11 months, 1 week ago  | 

    Hi,
    if I want to import my file cache files of my terrain into UE like described in section 2 (pipeline overview) it does not find my bgeo.sc file. They show up in my file explorer but not if I search in the >load landscape node inside of neither unreal nor Houdini.

    Does that mean I can only use the Pegasus file cache terrain and not the one I created throughout Ian's previous tutorial (my landscape HDA file cache) or am I missing something? (loading my asset into UE just like Ian did in his last section of landscape creation worked fine)

    I have bypassed this problem with importing my own file cache files inside of Houdini and went on until section 7, but it seems like it is rather important to use >load landscape in terms of communication between UE and Houdini.

    Would love to hear your suggestions, thank you!!

  • Asgyria 11 months, 1 week ago  | 

    After I check Nanite landscape (last lesson) - the landscape material stops to work. It visualizes just one layer (for some reason -3rd, the sand) over the whole landscape.
    After unchecking Nanite - everything becomes good.
    I've done everything shown in the video - changer .ini and build data. Any ideas on how to fix it?

  • jaroslav.holy 11 months, 1 week ago  | 

    Great tutorial. I've learned a lot.
    You decision was to not feature rivers and water bodies. That's a shame because rivers and lakes make such a big difference in landscape and the erosion tool does amazing job simulating those rivers and lakes. I am trying to figure out how to export those rivers to game engine but I can't figure it out. Could you point me in the right direction please.

    I managed to carve river bed using water mask and some scripting and now I am trying to convert original water layer to mesh but it's difficult to smooth it out and fit it into the riverbed heightfield. I appreciate any advice.

  • miditato_r 11 months ago  | 

    Thank you very much for the lessons, it was very interesting.
    I got to the material in Unreal and that's it. Breaking down into ID layers doesn't work for me and the material is too complex to understand what's going on (

  • TravisFX 10 months, 3 weeks ago  | 

    I'm going through the Landscape Workflow 6 | IDmap Workflow video, and I'm getting this error with the "PE_heightield_idmap_layers" node.

    Traceback (most recent call last):
    File "Sop/PE_heightield_idmap_layers, PythonModule", line 1, in <module>
    KeyError: 'node'

    Any ideas?

  • kirstrazhnikov 10 months, 3 weeks ago  | 

    Hi friends!
    Huge Thank you for the amazing tutorials! Here is an endless knowledge base on how to work with landscapes

    One issue I found in project files: PE_rolldown_heightfeild is Embedded

    Thank you!

    • chemlancer 10 months, 1 week ago  | 

      Hi,
      Did you get the reason and how to correct this? I am having similar issue.

  • Chencc 10 months, 2 weeks ago  | 

    Hello, On the video 7 | Material Setup, the steps in 13 minutes, I can't Reload the unreal engine HDA new Layer3 as a result, the log is as follows

    • Chencc 10 months, 2 weeks ago  | 

      Cook Results:
      Cook succeeded.

      Cook State:
      Ready - Evaluating python (press Esc to cancel)


      ===================================
      Node Errors, Warnings, and Messages
      ===================================

      /obj/PE_Load_Landscape_2/PE_Load_Landscape1/file5:
      Error: Unable to read file "\SourceContent\Pegasus\Landscape\Metadata$OS.bgeo.sc".
      GeometryIO[hjson]: Unable to open file '\SourceContent\Pegasus\Landscape\Metadata$OS.bgeo.sc'
      GeometryIO[hclassic]: Unable to open file '\SourceContent\Pegasus\Landscape\Metadata$OS.bgeo.sc'

      /obj/PE_Load_Landscape_2/PE_Load_Landscape1/attribdelete2/attribute1:
      Warning: Invalid attribute specification: "no match for * ^P".
      Invalid attribute specification: "no match for * ^name".

      /obj/PE_Load_Landscape_2/PE_Load_Landscape1/attribdelete3/attribute1:
      Warning: Invalid attribute specification: "no match for * ^P".
      Invalid attribute specification: "no match for * ^name".

    • Chencc 10 months, 2 weeks ago  | 

      Cook Results:
      Cook succeeded.

      Cook State:
      Ready


      ===================================
      Node Errors, Warnings, and Messages
      ===================================

      /obj/PE_Load_Landscape_2/PE_Load_Landscape1/file4:
      Warning: Unable to read file "/SourceContent/Pegasus/Landscape/Landscape Heightfield Layers/Pegasus_Landscape_Layer_3_Procedural_Detail.bgeo.sc".
      GeometryIO[hjson]: Unable to open file '/SourceContent/Pegasus/Landscape/Landscape Heightfield Layers/Pegasus_Landscape_Layer_3_Procedural_Detail.bgeo.sc'
      GeometryIO[hclassic]: Unable to open file '/SourceContent/Pegasus/Landscape/Landscape Heightfield Layers/Pegasus_Landscape_Layer_3_Procedural_Detail.bgeo.sc'

      /obj/PE_Load_Landscape_2/PE_Load_Landscape1/file5:
      Error: Unable to read file "\SourceContent\Pegasus\Landscape\Metadata$OS.bgeo.sc".
      GeometryIO[hjson]: Unable to open file '\SourceContent\Pegasus\Landscape\Metadata$OS.bgeo.sc'
      GeometryIO[hclassic]: Unable to open file '\SourceContent\Pegasus\Landscape\Metadata$OS.bgeo.sc'

      /obj/PE_Load_Landscape_2/PE_Load_Landscape1/attribdelete3/attribute1:
      Warning: Invalid attribute specification: "no match for * ^P".
      Invalid attribute specification: "no match for * ^name".

  • rcyl4 10 months, 1 week ago  | 

    Can the houdini version using the project file be 19.605? I can't load the project correctly on this version. The package has been reset

    • rcyl4 9 months, 3 weeks ago  | 

      The package file content provided by the project file is different from that referenced in the project, resolved

  • KosITGaming 10 months ago  | 

    Hello, i believe PE_Rolldown_Heightfield is missing in latest files.

  • andylisk 9 months, 4 weeks ago  | 

    Hi, I've been using the pe_advect_heightfield_points in my environment and found that when rolling the points towards the assigned mask the points start to float. After doing some light digging into the subnetwork of the node I noticed the 2 point wrangle notes that does the advecting(attribwrangle1 + attribwrangle3) only modifies @P.x and @P.z, there is no Y component mentioned anywhere in the code. I'm highly suspecting that is the cause of the floating. Just thought I'd let you know.

    For now I have linked a ray node immediately after the pe_advect_heightfield_points with my working heightfield assigned to the second input and that sticks the points back to the ground.

  • wwjdrapper 9 months, 3 weeks ago  | 

    I have the same error with the "PE Rolldown Heightfield" node in the "PE_heightfield_paths" node as others.
    I checked the contents and it is empty.
    There is no "PE Rolldown Heightfield" HDA in the downloaded otl folder.

  • Igrom 9 months, 3 weeks ago  | 

    Need a more detailed lesson on the toolkit, how it works inside, a lot of people have problems, especially if a person tries to use your tool in their project.

  • DevoStevo 9 months, 2 weeks ago  | 

    Is there any way to use the SourceContent "M_Pegasus_Landscape_Master.uasset" & "MI_Landscape_Instance.uasset" in UE if you created your own project & didn't use the project folders in UE?

  • DevoStevo 9 months, 2 weeks ago  | 

    Also, it would be really good to fix the sop_PE_heightfield_paths.2.0.hda so it didn't give the following message every time you open Houdini!!!
    "opdef:/Sop/PE_heightfield_paths::2.0?ViewerStateInstall (1): Unknown command: __import__".
    I had a play with it & managed to make a path on my terrain...eventually...lol.

  • Igrom 9 months, 2 weeks ago  | 

    I have a question - what should be in the metadata, I have it empty and that's why I get an error in PE_Load_Landscape.

  • Igrom 9 months, 2 weeks ago  | 

    If I use mode Create New in UE5, everything is displayed, but if I change the mode to Update Existing the landscape disappears, including in the outliner.
    Can you tell me what could be the problem?

  • Igrom 9 months, 2 weeks ago  | 

    Cook Results:
    Cook succeeded.

    Cook State:
    Ready


    ===================================
    Node Errors, Warnings, and Messages
    ===================================

    /obj/PE_Load_Landscape_2/PE_Load_Landscape1/attribdelete1/attribute1:
    Warning: Invalid attribute specification: "no match for * ^P".
    Invalid attribute specification: "no match for * ^name".

    /obj/PE_Load_Landscape_2/PE_Load_Landscape1/attribdelete2/attribute1:
    Warning: Invalid attribute specification: "no match for * ^P".
    Invalid attribute specification: "no match for * ^name".

  • Igrom 9 months, 1 week ago  | 

    I am on the 6th video. I have connected ID map Layers and the mask is displayed only on a small central part of the landscape, but not on the whole area. How do I change the size?

  • rcyl4 9 months ago  | 

    I reproduced parts of it and ran into the following issues. The idmap in Houdini cannot be generated; road nodes are missing; the material in Unreal cannot correctly identify the idmap texture. I'm working on getting around these errors and hope someone can help.

    • rcyl4 8 months, 4 weeks ago  | 

      Set num IDmap layers to 255 and read successfully.

  • newkinostudio 8 months, 3 weeks ago  | 

    I can't seem to find load landscape in Unreal 5.2?

  • dca35bf30b6548c0 8 months, 3 weeks ago  | 

    Hello, I would like to ask why the color and terrain are misaligned when applying materials.

  • Galleryworm 8 months, 2 weeks ago  | 

    silly little question regarding the toolkit: If you want to start fresh with your own terrain and unique project name in unreal/houdini what is the best way to go about that without breaking everything? Is it just a matter of changing the project env variable?

    • andrea_maggiolo 5 months, 3 weeks ago  | 

      Yes I did it!

  • KosukeFuruhashi 8 months ago  | 

    Do you have any plans to distribute a completed project. That is because some missing on the tutorials. Thank you

  • lyon.liang12 7 months, 4 weeks ago  | 

    for the project file "PegasusDemo.json", it lacks "PEGASUSPROJECT" definition. Without this env variable, PE_Load_Landscape will report error because it use this path: $PEGASUSPROJECT/SourceContent

  • Neonzone 7 months ago  | 

    Hello, thank you for these awesome tutorials! - one question: where do I find the video for the creation of the unreal_load_landscape and unreal_cache_landscape nodes? thank you!

    • TacitusD 1 month, 2 weeks ago  | 

      +1

      I would really enjoy seeing how these were built. After poking around in them I am a little curious how the variables are being used for the names and what they could do if they were a little more generic.

  • andrea_maggiolo 5 months, 3 weeks ago  | 

    Hello,
    I was testing the scattering tools for foliage and other assets and the load bgeo (both Houdini Engine and PE) crashed Unreal with this error:
    "Assertion failed: InstancingRandomSeed != 0 [File:D:\build\++UE5\Sync\Engine\Source\Runtime\Engine\Private\InstancedStaticMesh.cpp] [Line: 2250]"
    I looked around and found no solution so far...
    Using UE 5.4
    Anyone had the same issue?
    Thanks!

    • Paragyn 5 months, 1 week ago  | 

      Preload the meshes you are using into Unreal's memory by either dropping them onto the landscape temporarily or fully open them in a viewer. Seems that processing the meshes not yet in memory breaks UE. At least, that's what fixed it for me.

  • xujiaying595 5 months, 2 weeks ago  | 

    I'm learning Landscape Workflow 4 | Heightfield Materials Workflow, after adding a colour map using the PE_heightfield_material node, only greyscale images are shown in the view, and I'm using the file node to read the colour map directly in colour, and I'm not sure where the The Preview item is Colour.

  • Paragyn 5 months, 1 week ago  | 

    These are fantastic tutorials and I'm grateful they are available. At a glance, Houdini offers so many workflow optimizations and ability to easily iterate, I'm really excited to try it all out.

    I am finding (primarily as I arrive at this tutorial) that following along through the different tutorials in this series to be.. well.. a mess; duplicates everywhere, and many hda loading errors that result in an inability to follow along. (due to inexperience, I'm sure).

    I'm now to the point that I'm going to have to uninstall Houdini, delete all the files and folders I've created following along, and reinstalling fresh. Is the somewhere I can get more information on how the Houdini workflow file system is intended to work? Like, WHEN hda's load, WHY they load, and the DIFFERENT ways to handle global vs project level?

    I watched the workflow tutorial, but it doesn't really go into NOT using your system drive and/or a single default location when dealing with - more specifically, - hdas, projects, and hip files; which made this exponentially more difficult for me.

    I went looking for - but didn't find - just one download for this series that would contain all of the files needed for the series instead of the bits and pieces that we get from each tutorial that are seemingly inconsistent? I was hoping this might solve most of these issues so I could complete the series and make a determination. Does such a thing exist?

    Thanks for any input/feedback/assistance!

  • Paragyn 5 months, 1 week ago  | 

    FYI (someone may have already mentioned this and I missed it): Enabling the grass in lesson 13 does not work with the "updated" files. The only way you'll see the grass is up the layers bit by 1 in the landscape material; which ofc breaks the textures.

    A note on the Woodland Advect points - these procedures push the trees back into the scree, I had to add the scree layer into the last advect's mask to "mostly" stop it. I also had to add in a snap_to_terrain attribute wrangle after the last advect (Thanks to Indie-Pixel for sharing this!) because there were a lot of points floating and under the landscape (no idea why, still learning). This additionally fixed a lot of the "floating" trees, but not all.

    The attribute_wrangle:
    vector samplepos = set(@P.x, 0, @P.z);
    int primid = nametoprim(1, "height");

    float height = volumesample(1, primid, samplepos);
    @P.y = height;

    The implementation of the "woodlands" is great for learning to create scatters, UE texture import masks, and splat maps, but much of the way it's done here, doesn't work very well with UE (a lot needs updated). Moreover if your not using tessellation you might use VTs instead - save even more shader complexity.

    A possible "floating asset" solution is just just create reference actors for UE and let UE spawn and place assets on location references and on-the-ground properly - some trees, for instance, still float off the ground even after the snap_to_terrain, probably because of the 200% UE scaling but idk.

    Hope that helps!

  • chenwanwan13 3 months ago  | 

    After I loaded the landscape in UE and switched the mode to updating exist, the landscape disappear in the viewport and the hda started loading again, and it finally loaded an empty landscape. QAQ

  • KieranLatham 2 months ago  | 

    It appears that PE Rolldown Heightfield uses an "embedded" definition and not a dedicated OTL/HDA so Post Processing the paths to snap them to terrain won't work unless you find a work around such as raycasting. Any chance of getting this updated?

    • cocopops69 3 weeks, 3 days ago  | 

      Im having the same issue with PE Rolldown Heightfield , seems to be missing

  • Bradley Newman 2 months ago  | 

    Will this be integrated with the Unity plugin?

Please log in to leave a comment.