Git Product home page Git Product logo

houdiniengineforunity's People

Contributors

andys-sidefx avatar antu3199-sidefx avatar brdna avatar derrickmoser avatar dpernuit avatar juliasfx avatar rajatg-sidefx avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

houdiniengineforunity's Issues

The register input interface priority work correct?

The blow code:

for (int i = numInterfaces - 1; i >= 0; i--) { if (_inputInterfaces[i] != null && _inputInterfaces[i].Priority <= inputInterface.Priority) { _inputInterfaces.Add(inputInterface); //Debug.LogFormat("Registered {0} at {1}. Total of {2}", inputInterface.GetType(), i, _inputInterfaces.Count); break; } }

The inputInterface seems always added into the last but add to the index i?

HDRP Terrain Detail

The new HDRP pipeline currently only seems to support instance meshes for terrain details. The following needs to be added to HEU_TerrainUtility.ApplyDetailLayers():

#if UNITY_2021_2_OR_NEWER
            if( detailPrototype.usePrototypeMesh )
                detailPrototype.useInstancing = true;
#endif

There's also a new property on detail prototypes that will need to be added to HEU_DetailPrototype

        // Summary:
        //     Controls how far away detail objects are from the edge of the hole area.
        public float holeEdgePadding { get; set; }

"Generate Mesh Using Points" always has wrong uv sets

Hi,

I just find and fix a problem when "Generate Mesh Using Points", it will not copy the correct uv since the code miss checking the _uvsAttr.Length.

Here is the bug line:

if (geoCache._uvsAttrInfo[u].exists && geoCache._uvsAttrInfo[u].owner == HAPI_AttributeOwner.HAPI_ATTROWNER_POINT && positionIndex < geoCache._uvsAttr.Length)

just change the code from:

for (int u = 0; u < HEU_Defines.HAPI_MAX_UVS; ++u)
{
  if (... && positionIndex < geoCache._uvsAttr.Length)

to

for (int u = 0; u < HEU_Defines.HAPI_MAX_UVS; ++u)
{
  if (... && positionIndex < geoCache._uvsAttr[u].Length)

will fix the problem.

Warning on Unity 2019.2

When used in Unity 2019.2 the compiler report the following warning:

Assets\Plugins\HoudiniEngineUnity\Scripts\Utility\HEU_TerrainUtility.cs(228,6): warning CS0618: 'Terrain.materialType' is obsolete: 'Property materialType is not used any more. Set materialTemplate directly.'

"Sync Viewport" not working.

I just started messing around with Houdini Engine for Unity, so I could be missing something, but as much as I try I can't get viewport sync to work. Connection between Houdini and Unity seems to work otherwise correctly. The only reaction to the feature I've managed is, with a newly opened Unity window, turning on "Sync Viewport", does teleport the camera in Unity once, although to an incorrect (non-matching) location. Turning the feature on or off afterwards doesn't yield any response. The checkbox does sync correctly (checking or unchecking) on both Unity and Houdini.

Unity 2022.3.5f1
Unity Engine 5.0.0
Houdini 19.5.303

Typo in HEU_Parameters causing null reference exception ?

Hello

Is it intended that a for loop in SetStringParameterValues() loops IntValues[]'s length times ? I understand that a string parameter should indeed have its IntValues[] remaining null, hence failing.
Is it a typo or am I missing something ?

NullReferenceException: Object reference not set to an instance of an object
HoudiniEngineUnity.HEU_Parameters.SetStringParameterValues (System.String parameterName, System.String[] values, System.Boolean bRecookAsset) (at C:/klang/plastics/seed-art/art_source/tools/houdini/HEngine/HEUnity_pkg_SideFX/Scripts/Parameters/HEU_Parameters.cs:792)

"Bake Update" leaves empty mesh files

When hitting "Bake Update" it creates a new folder called " 1" (or 2, 3, 4 ...) that contains the new mesh, material and textures. The previous version gets cleared out, apart from an empty "_meshes" file.

Is there a reason for why that file is still in there?

image

Tweaking parameters is very slow in editor

Hi,
my digital asset works very fast in Houdini (very basic geometry but a lot of parameters) but in editor there is a 5 sec delay. Is there any chance to optimize asset or unity plugin settings to speed it up?
Thanks!

Remove reliance on Resources

It is recommended not to use the Resources folder.

I've moved the Editor resources to a ScriptableSingleton and use the full path to the terrain splat texture in the plugin settings: Assets/3rdParty/HoudiniEngineUnity/Textures/heu_terrain_default_splat.pngsplat.png

Need support Vector4 for uv attribute

public List<Vector2> _UVs = new List<Vector2>(); public List<Vector2> _UV2s = new List<Vector2>(); public List<Vector2> _UV3s = new List<Vector2>();
(Code from HEU_MeshData.cs)

Currently, the uv attribute will convert to Vector2 type in Houdini Engine Unity. But in some cases, especially VFX stuffs, it is quite useful to store some more information in uv.2, uv.3.
I change some code in the source file of Houdini Engine Unity code and it works well. I think uv attribute shouldn't be limited in Vector2 only.

And now Unity support mostly 8 uv channels in one mesh, I think it should be concerned, too.

PDG problems with H20 plugin

I am getting errors from the HEU_Geo Sync Log window after trying to cook a TOP network with PDG Asset Link. Traced it to this line of code here in HEU_ThreadedTaskLoadGeo.cs

Tested with just generating and output simple boxes with PDG.

AppendLog(HEU_LoadData.LoadStatus.ERROR, string.Format("Unable to get display node of file geo node."));

Uninstall and tried it with version 19.5 of the plugin and it works fine.

Install on Linux

Did anyone ever manage to install and make it work on Linux, Ubuntu specifically?

I am following all of the installation steps, but can not make it work. Neither I can see errors, cause all I got is this from error info:

image

Where should I install the license?

I got the error below and I applied a license. Where should I install the license so that the error can be fixed?

Loading Asset Library From File : HAPI Error: No Valid Licenses Found

  • HAPI_LICENSE_MODE unset or is set to 'default' meaning Houdini Engine will first try to acquire a Houdini Engine license and if one is not found it will try to acquire an interactive Houdini license (Houdini Core then Houdini FX).
  • No Houdini Engine Indie license found.
  • No Houdini Engine license found.
  • No Houdini license.
  • Found a Houdini FX (Houdini Master) license but it is not the required commercial variant.
  • No Houdini Indie license.
    If session is invalid, try restarting Unity.

terrain data saved inapproperately when split the terrain

when I split the terrain, all the terrain data saved to the same path in unity, and the cooked result shows wrong in unity scene.
I read the code and found something may wrong here.

In HEU_GeoSync the function GenerateTerrain,

string assetPathName = "TerrainData" + HEU_Defines.HEU_EXT_ASSET;
HEU_AssetDatabase.CreateObjectInAssetCacheFolder(terrain.terrainData, outputTerrainpath, null, assetPathName, typeof(TerrainData));

HEU_Asset updating prefab with single output will result in missing mesh when placed in scene.

HEU_Asset updating prefab with single output will result in missing mesh when placed in scene, but when opening the prefab, the mesh reference will still be there.
The missing mesh isn't seen as an override on the prefab in scene either.
Only when removing the mesh from the prefab (set to none/null) will the prefab rebuild/update properly.

This only happens when the build prefab has no child objects (and the mesh output is on the root of the prefab)

HEU_InputNode serialization of prefab child/ sub gameobjects in scene breaking when child/sub objects have the same name

HEU_InputNode serialization of prefab child/ sub gameobjects in scene breaking when child/sub objects have the same name.

So say we have a 2 different prefabs, say, obj1 and obj2, both with children called ,say, 'mychildgameobject', and we reference those child objects in a HEU_Asset inputs, Houdini will break serialization when rebuilding the hda/otl.
Now both inputs will both reference only one of the child objects in both inputs, thus loosing reference to one of the game objects.

This is a major bug that breaks many of our levels when rebuilding.

I'ts like HEU_Inputs serialize input objects by name, rather than prefab/assetdatabase guid refence.

Transform position not right while cook pdg

unity 2018.4.3
houdini 17.5.325

i use pdg topnetwork for terrain create
the top referenced some hda(for mark roads and areas)

then when i start cook, the hda's transform often at wrong place(the hda's shape is right)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.