Thea Proxies Workflow

Hello all.

I am working with Thea proxies for a long time now and am wondering if my workflow could be improved…

What I usually do:

  1. EXPORT FROM 3DSMAX:
    Open the model in 3dsmax and convert the materials (usually Vray or Corona) to standard (delete the double-sided, falloff, color correction nodes mainly, often simplifying the shaders).

Export as FBX (this creates a material maps hierarchy that is most faithful as the FBX provided by commercial models libraries tend to lose the link to the bitmaps and the models lose the UVW or render white)

  1. SKETCHUP/TRANSMUTR:
    Import the FBX via Transmutr (usually Y up and CM as units), with the option to generate a Thea proxy of course (.mod.thea).

Here I don’t mind the .skp generated by Transmutr.

  1. SKETCHUP/THEA:
    Open the generated Thea proxy (.mod.thea) via the Thea Tools’ “Open or Edit a Thea model” command and tweak the materials (if the default thea materials generated by Transmutr doesn’t give complete satisfaction, that is).

I usually do this to be able to save my materials. As the models in a library often contain several variants of a plant - for instance - and it’s convenient to be able to drag and drop pre-edited materials from Thea’s material browser.

Then for the other variants of the same plant, I just swap the materials. Then I save the .mod.thea.

Open the Thea Browser and drop the newly edited .mod.thea in sketchup’s viewport.

In a frontal view, zoom extent on the mesh and render the view with alpha render element on.
Save the image as PNG. This will be used as a billboard.

  1. PHOTOSHOP (or Gimp):
    open the PNG and trim the image to crop only transparent pixels. overwrite the PNG

  2. SKETCHUP
    draw a rectangle on the front face of the bounding box and import the PNG as texture on it, scale to fit the face. the transparency of the PNG makes a perfect billboard.
    Make sure to paint both faces identically (the backface and frontface).

Move the face to the origin (I used to make it “face to the camera” but now I prefer avoid it to be able to see the orientation better when skattering).

Select All (the billboard face plus the Thea proxy bounding box) and make a component with the name of the proxy and .mod added.
Use TIG’s Originate Components Axes to make sure that the compo’s axis are correctly centered.

Use a frontal view, zoom extent again and save the component in the same folder as the .mod.thea

END


Now I know this is a lot of work, and could be streamlined if I knew how to code…

For instance, I’d like Transmutr to be able to affect materials of an imported model from a folder containing identically named materials (.mat.thea).
Previously I used Thea Studio but now it’s not Thea v2 compatible anymore. Perhaps the Studio version allows for these features?

It would be handy if Transmutr was able to render the billboard itself (as was proposed in the roadmap earlier) of course, but this would need a direct connexion to the renderer and I understood that Altair doesn’t provide the SDK for this kind of purposes.
SKP outputs generally aren’t as explicit as the colors often differ from the SKP and THEA and one of my aims is to use the thumbnails to get a sense of color information.

Thanks for reading :wink:

2 Likes

This is already on our todo list.
If you are curious, it was discussed here: https://thearender.com/forum/viewtopic.php?p=184360#p184360
I have no ETA for this feature, though.

Transmutr Studio? Not directly, but if you were into scripting, the Command-Line Interface could prove useful.

Indeed, we don’t have access to a Thea SDK. The feature we are planning will generate the billboard, but not from SketchUp. It will either use the WebGL preview in the Transmutr UI, or a very simple renderer (but it will likely support only diffuse and opacity, so it might not match the Thea render look).

1 Like

Merci beaucoup Thomas!

1 Like

I would like to have an option in Thea to generate billboards automatically, but this still will have to wait.

2 Likes

This would be great indeed! Thanks Tomasz.

BTW it would be great to include in Transmutr the possibility to generate a low poly textured skp as a proxy .mod.skp next to the .mod.thea. (mostly for people)

I do it manually by decimating the fbx/obj mesh to around 8-15k faces in Transmutr or in 3dsmax (which adds a step in the worflow) but it’s way more explicit in my SKP models than having just pointclouds or bounding boxes to play with.

This way, I can check visually if my sitting people are correctly placed on the chairs, staircases, etc. without having to render each time.

You can already do that.

  • Set the “Mesh Simplification” slider to 95% or whatever you want.
  • Enable “Export as Thea Proxy”
  • Set “Placeholder” to “Simplified geometry”

The .mod.thea will be full geometry, but the placeholder will be simplified and textured.

1 Like

OK, I’ve tried that.
It half-works. I can indeed generate a decimated lowpoly skp, which renders as full geometry in Thea.
But in thea browser, I see no skp thumbnail attached to the thea proxy.
thea test

And there are a redundancy (the skp and the mod.thea, side by side whereas with my workflow I only see one occurency, the mod.thea with 2 thumbnails - the skp thumbail embedded within the thea thumbnail).

How can I solve this? I’d like Transmutr to automatically save the lowpoly skp with “.mod.skp” as file extension, so that thea browser recognize it as a “cart” proxy skp along the mod.thea …
When I add “mod” to the filename manually, the mod.thea gets renamed too, which gives mod.mod.thea file extension and therefore the saved mod.skp doesn’t get recognized as the proxy of mod.mod.thea file. I know, complicated… :smiley:
When I manually remove the “mod.” from the mod.mod.thea filename, the mod.skp gets correctly recognized as a proxy. But its thumbnail is black.

thea test 2

One thing I noticed too, is that the generated low poly skp is barely light in terms of filesize… In my example, the mod.thea weighs 4.7Mb and the skp weighs 7.8Mb. This is because the diffuse map texture is embedded within the skp and the diffuse is a 8k jpg, weighing 6Mb alone. My own lowpoly proxy skp files weigh between 0.3 and 2Mb. This is because I use a resized version of the diffuse map that is used for rendering purposes.

So in my whishlist, could Transmutr also resize the embedded diffuse map when saving the proxy low-poly skp file? Usually diffuse maps for 3d people are between 2k and 8k. 8k is overkill for my usage so I generally tend to resize manually to 2k or 4k before affecting them to their slots (diffuse, roughness and normal)… But for the proxy skp, I use a 512x512 or 1k version. This way, it could generate lighter proxy skp, both in terms of geometry complexity and texture size. Possible?

BTW this is how I sort my thea plant proxies (always evolving library):


Note that this is an old skp file, nowadays I’ve split the file between bushes, waterplants, trees, vines, flowers, etc. because there was no interest to have them all in the same file anymore…
Anyway, I need my thumbnails to be very low res, otherwise my skp memory footprint will explode. It would be great to be able to have very small ones( or be able to setup custom sizes)…

1 Like

Thomas, is it possible to include, in the Materials section of Transmutr, a slider for Roughness?
It seems that the actual Relection slider translates in a mix of Roughness and Reflectance in Thea.
I often use Falloff procedural in the reflectance slot as well. If possible, could you include this option too?

Another suggestion,
Could it be possible to configure some presets as buttons, next to the Load ans Save Icons? It would be simpler to access them.

Yes this is planned for a future version.

I guess we could have a button to load the last preset, or a pre-defined one.
We have planned to add an option for a default preset (Transmutr would open with this preset already loaded), would it be enough?

A default (customizable) preset is fine, as a ‘by default load the last used preset’ option could be nice too. It would avoid having to select the preset button each time, indeed.

1 Like