Write in a n exiting Datatable

   Views 816   Replies 1   Subscribers 2
User Avatar
Member
4 posts
Joined: Oct. 2018
Offline
Hi,

I’m trying to limit my use of JSON for round trips between Houdini > UE > Houdini.
I’ve validated the Datatable output, which will allow me to work in 90% of my cases, so that's great.

My issue: I can’t write to an existing Datatable.

My test prototype: a struct called "primitive_attributes", and a datatable called "primitives_data".
If I don’t specify a Datatable object and just provide a path, it works fine, but I don’t have control over the name of the datatable (s@unreal_object_name doesn’t work).

If I try to use an existing object, the engine tries to create a Datatable in a directory that doesn’t exist (screenshot of the error attached).

// Example of ID for each point
int id = i@id;  

// Define the structure of the DataTable row
s@unreal_data_table_rowstruct = "/Script/Engine.UserDefinedStruct'/vincent_sandbox/datatable_tests/primitive_attributes.primitive_attributes'";

// Format the ID as a string for the DataTable row name
s@unreal_data_table_rowname = sprintf("%d", id);

// Specify the DataTable path
s@unreal_object_path = "/Script/Engine.DataTable'/vincent_sandbox/datatable_tests/primitives_data.primitives_data'";  // Desired location without the .osm_data suffix

// Specify the name of the DataTable
// s@unreal_object_name = "osm_data"; // Never works.

I've tried manipulating the path to point to the correct location, but when I get it right, it still tries to create a DataTable with an uncontrolled name.
I’m in a Point Wrangler, I tried using primitive, but nothing happens. (The documentation doesn't specify the type to use)

What am I missing?
Doc : https://www.sidefx.com/docs/houdini/unreal/outputs.html [www.sidefx.com]

Attachments:
UnrealEditor_cTrWzx9cVX.png (13.3 KB)
UnrealEditor_pfZjurafVn.png (11.3 KB)

User Avatar
Member
40 posts
Joined: March 2014
Online
Hey,

I just read through the documentation, are you using the right path?
If you right-click on your DT asset in the content browser in Unreal and select "Copy object path" you will get the right path (then just remove the name of the asset of course). I see you have the path from "copy reference", both those work in my experience when placing instances but maybe it expects a path without the /Script/ for this?

From the documentation:
"The data table will be saved at the string specified by the unreal_object_path attribute. The string at the first point will be taken. This path should be a valid Unreal path (where /Game represents the Content folder). "
https://www.sidefx.com/docs/houdini/unreal/outputs.html#data-tables [www.sidefx.com]

Just a thought!
Edited by stinzen - Feb. 6, 2025 14:29:16
  • Quick Links