Git Product home page Git Product logo

Comments (10)

ykhedar avatar ykhedar commented on August 10, 2024

Upon further digging into the source of the plugin, i found that the following function/option give the functionality i am seeking.

Bake Option

Am I right about this and if yes does the sidefx team has it already planned to release this in a future release. Also if some pointers to add this myself would be really appreciated. Thanks again.

from houdiniengineforunreal-v2.

ykhedar avatar ykhedar commented on August 10, 2024

I have tried the following options until now:

  1. unreal_split_instances: Added this as a detail attribute. This creates Split Instancers but when I bake to actors, I see only these instancers in the world outline. I was able to see the individual static mesh actor in the detail view of the HDA asset.
  2. unreal_split_attr: Tried adding this both as detail attribute and also as point attribute and then specified a new attribute "unreal_id" to create a unique id for the points. I hoped that if all houdini objects have unique id, a mesh instansiater will not be created and instead i will get only the static mesh actor directly. But this did not happen. In fact I did not see any change w.r.t the option 1.

I tried this option because in the Wiki it was mentioned that:

Instancers Components are only created if the number of instances exceeds one. If an instance only has one instance, a StaticMeshComponent is created instead. This is especially useful if using packed primitives to split geometry.

and

Attribute and packed primitives instancers can now be split using attribute values. The name of the attribute used to split the instancers can be set via the "unreal_split_attr" attribute (string). The specified attributes values will then be used to create multiple instancers instead of one. ie: setting the "unreal_split_attr value" to "tile" will create a separate instancer for each value of the "tile" attribute.

So i thought if I do this then i will have unique instances and no instancer would be created. Clearly I am doing some mistake but not able to figure it out.

So still waiting for a working solution.

from houdiniengineforunreal-v2.

dpernuit avatar dpernuit commented on August 10, 2024

Hi,

It all depends on how your HDA is setup.

If when processing the OSM data, the building geometry you generate are just merged together in the HDA output, then the result will be one mesh with everything, as that is what merging geos is for.

If you want to separate the buildings, then I'd recommend packing them separately into individual packed primitives.
This will create "one instance instancers", that the plugin will interpret as separate Static Mesh Components.

Baking the HDA will then result in individual Static Mesh Actors.

The unreal_split_instances and unreal_split_attr attributes are used when you're actually instancing meshes in your HDA, ie: instancing building meshes (from Unreal) via the HDA.

from houdiniengineforunreal-v2.

ykhedar avatar ykhedar commented on August 10, 2024

Hi @dpernuit , Thanks for your tip. I was able to get this to work by using the Pack node before merge node. The names of all these meshes so generated is generic in nature. It is of the form "$hda_asset_name_instancer_0_*". I tried adding the "unreal_generated_mesh_name" and "unreal_bake_name" to override this generic name. But it seems to have no effect. Could you please point me to the solution. Thanks again. :)

from houdiniengineforunreal-v2.

ykhedar avatar ykhedar commented on August 10, 2024

I also tried using the "unreal_output_name" and it changes the name of the meshes in the Houdini Outputs dialog but not in the World Outliner.

from houdiniengineforunreal-v2.

faxcorp avatar faxcorp commented on August 10, 2024

@ykhedar Hello, have you ever solved this?

from houdiniengineforunreal-v2.

mchataway avatar mchataway commented on August 10, 2024

Hi there, I am experiencing the same issue, in that the "unreal_output_name" and "unreal_bake_folder" attributes don't seem to be being respected at all. I've tried every combination of setting those attributes on the prims and at the detail level.
Baked meshes always go into HoudiniEngine/Bake folder, and are always named something generic after the name of the HDA type.

If anyone has some insight into this or know how's to solve it, I'm all ears!

from houdiniengineforunreal-v2.

faxcorp avatar faxcorp commented on August 10, 2024

For me, the issue was solved with an update of a plugin. Anyways, try my HDA, for me it works 100% of the time now. Its gonna add attributes for UE
https://github.com/faxcorp/FreeHDAs/blob/main/sop_F4X203.dev.Unreal_name_connected_pieces_set_attributes.1.0.hdalc

from houdiniengineforunreal-v2.

mchataway avatar mchataway commented on August 10, 2024

Thanks @faxcorp , I've got it working now after looking closely at your HDA!
I think the problem I was having, is that I was setting some unreal_* attrs at the detail level, and some at the prim level.
By just making all of my unreal_* attrs at the prim level it seems to be working now :)
Thanks!

from houdiniengineforunreal-v2.

faxcorp avatar faxcorp commented on August 10, 2024

from houdiniengineforunreal-v2.

Related Issues (20)

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.