H18.0.566 / Unity 2019.4.0 HeightField Terrain won't cook ?
7781 11 2- smoluck
- Member
- 20 posts
- Joined: Feb. 2017
- Offline
Hi.
I've followed the tutorial on PDG by Kenny Lammers [www.sidefx.com] and i can't get the terrain to cook correctly.
Even if it cook fine in Houdini, it didn't in Unity 2019.4.0
Using H 18.0.566 and HEngine 3.3.14.
Any info on what's going on here ?
Also the Unity PDG Even Message field isn't giving any info on what is broken here. Really not helpful even it is supposed to give error feedback.
I've double checked the Path environment variable and everything looks fine.
The TOP is loading, but right after it's in the scene i got those errors.
The PDG Asset link fail to cook the last node that is as simple as it should.
I've also created a Unity Terrain material in order to feed it by default on terrain, but doesn't solve the issue.
Section 1 on Box Variation SOP HDA is working by the way.
hope you can help me.
best regards, Smoluck
I've followed the tutorial on PDG by Kenny Lammers [www.sidefx.com] and i can't get the terrain to cook correctly.
Even if it cook fine in Houdini, it didn't in Unity 2019.4.0
Using H 18.0.566 and HEngine 3.3.14.
Any info on what's going on here ?
Also the Unity PDG Even Message field isn't giving any info on what is broken here. Really not helpful even it is supposed to give error feedback.
I've double checked the Path environment variable and everything looks fine.
The TOP is loading, but right after it's in the scene i got those errors.
The PDG Asset link fail to cook the last node that is as simple as it should.
I've also created a Unity Terrain material in order to feed it by default on terrain, but doesn't solve the issue.
Section 1 on Box Variation SOP HDA is working by the way.
hope you can help me.
best regards, Smoluck
- smoluck
- Member
- 20 posts
- Joined: Feb. 2017
- Offline
i was making another type of terrain, regarding the HDA done in the tutorial. So it's hard to say.
what i'm sure about is that my HDA cook well in Houdini
i'm guessing i need to add something to the HF node before the end, like material attribute or something
i can share the main crop terrain HDA, but as you see it's not that complex.
i got the box variation hda to work
any sop hda works.
it's just related to terrain hda
even if i try to load the resulting bgeo from this HF Crop node, i can't see it. So i think it's related to material stuff . Unity can't render it basicly
–
Tested the files from the tutorial (section 3) in an empty Unity 2019.4.0 HDRP Project
and i can't manage to cook correctly the ip_level_Creation_TOP via the PDG Link.
At least this time i can read info in the PDG Event Messages.
what i'm sure about is that my HDA cook well in Houdini
i'm guessing i need to add something to the HF node before the end, like material attribute or something
i can share the main crop terrain HDA, but as you see it's not that complex.
i got the box variation hda to work
any sop hda works.
it's just related to terrain hda
even if i try to load the resulting bgeo from this HF Crop node, i can't see it. So i think it's related to material stuff . Unity can't render it basicly
–
Tested the files from the tutorial (section 3) in an empty Unity 2019.4.0 HDRP Project
and i can't manage to cook correctly the ip_level_Creation_TOP via the PDG Link.
At least this time i can read info in the PDG Event Messages.
HAPI_PDG_EVENT_COOK_WARNING - project_heightfield: Empty input file attribute when evaluating '/obj/ip_level_creation_top1/topnet1/project_heightfield/customfile2' with work item 'project_heightfield0'
- smoluck
- Member
- 20 posts
- Joined: Feb. 2017
- Offline
Hi again.
Ok so i investigate a bit more in this topic.
I decided to create a New Unity 2019.4.10 project in (HD Render Pipeline mode).
Then once the Project was ready, i've created the unity_houdini.env file
Write in it HEU_ENVPATH_JOB:/HOU to point at my Houdini project.
Then Imported the Houdini Engine package from 18.0.566 installation directory.
HoudiniEngineUnity.unitypackage
Once the package installed i've run the top menu –> HoudiniEngine –> Session –> Create –> Pipe Session
Then opened the HoudiniEngine –> Plugin Settings, to check the Environment variable to get loaded: unity_houdini.env
Finally i' ve tried to drag and drop the example HDA (TerrainGenerator.hda) included in HoudiniEngine, from Assets\Plugins\HoudiniEngineUnity\HDAs
But from here i can't see the output of it…. it was only visible if i convert it to Mesh via the parameter in HDA (with the missing pink material error).
so what's wrong here ?
Ok so i investigate a bit more in this topic.
I decided to create a New Unity 2019.4.10 project in (HD Render Pipeline mode).
Then once the Project was ready, i've created the unity_houdini.env file
Write in it HEU_ENVPATH_JOB:/HOU to point at my Houdini project.
Then Imported the Houdini Engine package from 18.0.566 installation directory.
HoudiniEngineUnity.unitypackage
Once the package installed i've run the top menu –> HoudiniEngine –> Session –> Create –> Pipe Session
Then opened the HoudiniEngine –> Plugin Settings, to check the Environment variable to get loaded: unity_houdini.env
Finally i' ve tried to drag and drop the example HDA (TerrainGenerator.hda) included in HoudiniEngine, from Assets\Plugins\HoudiniEngineUnity\HDAs
But from here i can't see the output of it…. it was only visible if i convert it to Mesh via the parameter in HDA (with the missing pink material error).
so what's wrong here ?
Edited by smoluck - Sept. 10, 2020 22:31:47
- smoluck
- Member
- 20 posts
- Joined: Feb. 2017
- Offline
Hi.
In the same unity Project i tried to load my Terrain TOP PDG,
but i can't get those HeighField visible as terrain in Unity , event if it cook well in unity as well as in Houdini….
The strange thing is that i have the cooked Geo file in the Working Directory as expected. but they seems to be not supported in Unity.
Even if they are about 60 Mb each…
WorkingDirectory/geo/HDAProcess_HF.HDAProcess_HF0.0.bgeo.sc
i really need some support on this.
please, help me.
In the same unity Project i tried to load my Terrain TOP PDG,
but i can't get those HeighField visible as terrain in Unity , event if it cook well in unity as well as in Houdini….
The strange thing is that i have the cooked Geo file in the Working Directory as expected. but they seems to be not supported in Unity.
Even if they are about 60 Mb each…
WorkingDirectory/geo/HDAProcess_HF.HDAProcess_HF0.0.bgeo.sc
i really need some support on this.
please, help me.
Edited by smoluck - Sept. 14, 2020 02:00:20
- smoluck
- Member
- 20 posts
- Joined: Feb. 2017
- Offline
now i don't have the terrain anymore but loads of error. one time on 4 i have the terrains.
Bgeo files are there but Unity can't interpret them as Terrains.
…..
Bgeo files are there but Unity can't interpret them as Terrains.
Expected HAPI_ATTROWNER_PRIM attribute owner for attribute unity_hf_terrainlayer_file but got HAPI_ATTROWNER_VERTEX! UnityEngine.Debug:LogWarningFormat(String, Object[]) HoudiniEngineUnity.HEU_GeneralUtility:GetAttributeStringValueSingle(HEU_SessionBase, Int32, Int32, String, HAPI_AttributeOwner) (at Assets/Plugins/HoudiniEngineUnity/Scripts/Utility/HEU_GeneralUtility.cs:1370) HoudiniEngineUnity.HEU_ThreadedTaskLoadGeo:GenerateTerrainBuffers(HEU_SessionBase, Int32, List`1, List`1, List`1&) (at Assets/Plugins/HoudiniEngineUnity/Scripts/Tasks/HEU_ThreadedTaskLoadGeo.cs:714) HoudiniEngineUnity.HEU_ThreadedTaskLoadGeo:LoadNodeBuffer(HEU_SessionBase, Int32, HEU_LoadObject) (at Assets/Plugins/HoudiniEngineUnity/Scripts/Tasks/HEU_ThreadedTaskLoadGeo.cs:317) HoudiniEngineUnity.HEU_ThreadedTaskLoadGeo:LoadObjectBuffers(HEU_SessionBase, HAPI_ObjectInfo&) (at Assets/Plugins/HoudiniEngineUnity/Scripts/Tasks/HEU_ThreadedTaskLoadGeo.cs:268) HoudiniEngineUnity.HEU_ThreadedTaskLoadGeo:DoWork() (at Assets/Plugins/HoudiniEngineUnity/Scripts/Tasks/HEU_ThreadedTaskLoadGeo.cs:200) HoudiniEngineUnity.HEU_ThreadedTask:Run() (at Assets/Plugins/HoudiniEngineUnity/Scripts/Tasks/HEU_ThreadedTask.cs:178) System.Threading.ThreadHelper:ThreadStart()
…..
- Alex Amos
- Member
- 28 posts
- Joined: June 2019
- Offline
- smoluck
- Member
- 20 posts
- Joined: Feb. 2017
- Offline
Alex Amos
Not being able to see the terrains in Unity could be that they don't have a material applied to them? and are therefore transparent?
Will get a look. But i'm sure i've set the Default terrain material via the Houdini Engine preferences.
btw. thanks for giving guide line.
Edited by smoluck - Sept. 21, 2020 04:18:33
- aboutvrp
- Member
- 7 posts
- Joined: April 2019
- Offline
臭鼬The same problem haunts me:/Alex Amos
Not being able to see the terrains in Unity could be that they don't have a material applied to them? and are therefore transparent?
Will get a look. But i'm sure i've set the Default terrain material via the Houdini Engine preferences.
btw. thanks for giving guide line.
- quickytools
- Member
- 21 posts
- Joined: April 2020
- Offline
Still occurring. I've submitted a bug report but didn't get a confirmation so am posting here for future reference.
Info
Unity: 2019.4.11f1
Plugin was built with:
Houdini: 18.5.351
Houdini Engine: 3.5.0
Current session is using:
Houdini: 18.5.351
Houdini Engine: 3.5.0
Houdini binaries: /Applications/Houdini/Houdini18.5.351/Frameworks/Houdini.framework/Versions/Current/Resources/bin
HEU: 2
License acquired: Houdini Engine Indie
#### Steps to reproduce
Create an HDA containing a heightfield in Houdini.
1. Heightfield. Change Size to 513,513.
2. Heightfield Noise. Use defaults.
3. Heightfield Copy Layer. Set Destination=“ground”.
4. Attribute Create. Set Group=“@name=height”, Name=“unity_material”, Class=Primitive, Type=String, String=“Assets/Materials/TerrainMaterial.mat”.
5. Attribute Create. Set Group=“@name=ground”, Name=“unity_hf_terrainlayer_file”, Class=Primitive, Type=String, String=“Assets/TerrainLayers/RockLayer.terrainlayer”.
6. Null. Set Display/Render.
7. Create HDA “simple_terrain”.
8. Load in Unity after importing the Houdini Engine unity package and creating/adding the expected files at the correct paths.
#### Actual vs expected behavior
Actual: Terrain Layer assigns a Terrain Layer “Assets/HoudiniEngineAssetCache/Working/simple_terrain/OUT_all/Terrain/Tile0/ground.terrainlayer” with Diffuse channel “Assets/Plugins/HoudiniEngineUnity/Resources/Textures/heu_terrain_default_splat.png”.
Expected: Specified Terrain Layer “Assets/TerrainLayers/RockLayer.terrainlayer” is used for the “ground” layer. Note: Reassigning the Diffuse channel to another texture does nothing.
Additional warning in Unity
—
Expected HAPI_ATTROWNER_PRIM attribute owner for attribute unity_hf_terrainlayer_file but got HAPI_ATTROWNER_VERTEX!
… (see attached terrainlayer-unity-warning.txt)
Info
Unity: 2019.4.11f1
Plugin was built with:
Houdini: 18.5.351
Houdini Engine: 3.5.0
Current session is using:
Houdini: 18.5.351
Houdini Engine: 3.5.0
Houdini binaries: /Applications/Houdini/Houdini18.5.351/Frameworks/Houdini.framework/Versions/Current/Resources/bin
HEU: 2
License acquired: Houdini Engine Indie
#### Steps to reproduce
Create an HDA containing a heightfield in Houdini.
1. Heightfield. Change Size to 513,513.
2. Heightfield Noise. Use defaults.
3. Heightfield Copy Layer. Set Destination=“ground”.
4. Attribute Create. Set Group=“@name=height”, Name=“unity_material”, Class=Primitive, Type=String, String=“Assets/Materials/TerrainMaterial.mat”.
5. Attribute Create. Set Group=“@name=ground”, Name=“unity_hf_terrainlayer_file”, Class=Primitive, Type=String, String=“Assets/TerrainLayers/RockLayer.terrainlayer”.
6. Null. Set Display/Render.
7. Create HDA “simple_terrain”.
8. Load in Unity after importing the Houdini Engine unity package and creating/adding the expected files at the correct paths.
#### Actual vs expected behavior
Actual: Terrain Layer assigns a Terrain Layer “Assets/HoudiniEngineAssetCache/Working/simple_terrain/OUT_all/Terrain/Tile0/ground.terrainlayer” with Diffuse channel “Assets/Plugins/HoudiniEngineUnity/Resources/Textures/heu_terrain_default_splat.png”.
Expected: Specified Terrain Layer “Assets/TerrainLayers/RockLayer.terrainlayer” is used for the “ground” layer. Note: Reassigning the Diffuse channel to another texture does nothing.
Additional warning in Unity
—
Expected HAPI_ATTROWNER_PRIM attribute owner for attribute unity_hf_terrainlayer_file but got HAPI_ATTROWNER_VERTEX!
… (see attached terrainlayer-unity-warning.txt)
Edited by quickytools - Oct. 29, 2020 12:14:59
- quickytools
- Member
- 21 posts
- Joined: April 2020
- Offline
Installed houdini-py3-18.5.443-macosx_x86_64_clang10.0_10.14.dmg today and this issue is fixed (likely previously). Terrains from HDA with heightfields have terrain layers configured correctly if set with the
unity_hf_terrainlayer_file
attribute. Don't forget to delete the previous HoudiniEngine plugin and import the newest one.
- smoluck
- Member
- 20 posts
- Joined: Feb. 2017
- Offline
- Daehuck Kim
- Member
- 5 posts
- Joined: Oct. 2013
- Offline
-
- Quick Links