Community
Arnold for Cinema 4D Forum
Rendering with Arnold in CINEMA 4D using the C4DtoA plug-in.
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Render Xgen hair in C4D via ASS?

26 REPLIES 26
Reply
Message 1 of 27
aaron_barreras
2060 Views, 26 Replies

Render Xgen hair in C4D via ASS?

We have a character that was created in Maya with Xgen hair. In trying to use ASS to export it, the results won't render in C4D, it just keeps saying "xgen_procedural is not installed". In the Arnold system panel I'm pointing the procedural search path to the MtoA folder ("Applications/solidangle/mtoa/2018/procedurals"), so I'm not sure what I'm missing. Any thoughts?

Tags (2)
Labels (2)
26 REPLIES 26
Message 2 of 27

It's not quite that simple. The xgen procedural has dependencies on other Maya libraries.

See here: https://arnoldsupport.com/2018/02/02/maxtoa-rendering-xgen-in-3ds-max/



// Stephen Blair
// Arnold Renderer Support
Message 3 of 27

Thanks for the link Stephen. Any hints on how to best achieve this on a Mac?

Message 4 of 27

Quick update, I tried to follow the steps in the link as best as possible (given that I'm on a Mac and using C4D), but it still doesn't work.

Using the terminal I added an environment variable for Path, pointing to the Maya install as indicated in the example (both the Maya/bin and Xgen/bin folders). Afterward, I put the path for the procedurals in the Arnold render settings just like the example. Restarted everything, and still get the same error, so clearly there's something amiss.

Message 5 of 27

Message 6 of 27

Thanks for the new link, Stephen! However, I still must be doing something wrong. Even following those steps, I'm getting the same error. I followed the instruction exactly, and ensured that the folder paths matched; this is a fresh install of Maya 2018.5 and a fresh install of both MtoA and C4DtoA, everything is in the default folders. Also, when I paste the path into the plugin field in Cinema, the console lists a bunch of errors immediately after. Anyway, not sure what I'm doing wrong, but attached is a screenshot showing the steps I took and the console errors. No doubt it's user error, but at this point I'm not sure what I'm doing wrong. Any insight would be greatly appreciated

3148-xgen-issue-screenshot.png

Message 7 of 27

Ignore the plugin ID messages. Those are coming from C4D

Sorry, there was copy-paste error in my blog post. "/MacOS" was missing from the "Maya.app/Contents" part. DYLD_LIBRARY_PATH should be set like this:

export DYLD_LIBRARY_PATH=/Applications/Autodesk/maya2018/plug-ins/xgen/lib:/Applications/Autodesk/maya2018/Maya.app/Contents/MacOS


// Stephen Blair
// Arnold Renderer Support
Message 8 of 27

Thanks again for the update, Stephen. I tried the new path, but I still get the exact same error. This is even after restarting and doing all the steps from scratch. I've double checked the env variables using the echo command, and it appears that they're correct. I've also made sure all the file paths to Maya and MtoA are correct. Any other thoughts of things I can do to troubleshoot this?

Message 9 of 27

What versions of C4DtoA and MtoA do you have?

In a terminal, with DYLD_LIBRARY_PATH set, run these commands to see whether kick can load the xgen procedural

cd /Applications/MAXON/CINEMA\ 4D\ R20/arnold/bin
./kick -v 4 -nodes -l /Applications/solidangle/mtoa/2018/procedurals


// Stephen Blair
// Arnold Renderer Support
Message 10 of 27

Thanks Stephen, here's the results from that command:

loading plugins from /Applications/solidangle/mtoa/2018/procedurals
| alembic_proc.dylib: alembic uses Arnold 5.2.2.1
| cryptomatte.dylib: cryptomatte uses Arnold 5.2.2.1
| cryptomatte.dylib: cryptomatte_filter uses Arnold 5.2.2.1
| cryptomatte.dylib: cryptomatte_manifest_driver uses Arnold 5.2.2.1
| mtoa_ParticleInstancer_proc.dylib: particleInstancer uses Arnold 5.2.2.1
| mtoa_ParticleVolume_proc.dylib: volume_particle uses Arnold 5.2.2.1
| mtoa_ParticleVolume_proc.dylib: implicit_particle uses Arnold 5.2.2.1
| xgen_procedural.dylib: xgen_procedural uses Arnold 5.2.2.1
| xgenSpline_procedural.dylib: xgenProcedural uses Arnold 5.2.2.1
implicit_particle shape (implicit)
particleInstancer shape (procedural)
volume_particle shape (volume)
xgenProcedural shape (procedural)
xgen_procedural shape (procedural)

loading plugins from .
none

Also, the machine I'm using for this is a Mac running Sierra, C4DtoA-2.4.5 on Cinema 20.030, and
MtoA-3.1.2.1 with Maya 2018.5.

The actual character asset I need to import is very heavy, so for now I'm testing the pipeline using just the XGen presets (calico) on a sphere exported as an Arnold standin. Is there something I'm doing wrong in the export process maybe?

test-a.ass

Message 11 of 27

kick was able to load xgen_procedural, so DYLD_LIBRARY_PATH is set correctly.

C4DtoA should be able to load it too.

In CINEMA 4D, set the Arnold log verbosity to Debug, and then Render to Picture Viewer. Check the Arnold log in the Console.



// Stephen Blair
// Arnold Renderer Support
Message 12 of 27

There's nothing wrong with the ass file.
But it does use some MtoA shaders, so you'll have to add the MtoA shaders folder to the Shader Search Path



// Stephen Blair
// Arnold Renderer Support
Message 13 of 27

Thanks again for the quick reply, Stephen! Here's the results from the console:

C4DtoA | 00:00:00 799MB | log started Fri Feb 1 12:48:40 2019
C4DtoA | 00:00:00 799MB | Arnold 5.2.2.1 [2dff6c07] darwin clang-5.0.0 oiio-2.1.0 osl-1.11.0 vdb-4.0.0 clm-1.0.3.513 rlm-12.4.2 2019/01/10 05:35:14
C4DtoA | 00:00:00 799MB | running on ryan-imac.local, pid=741
C4DtoA | 00:00:00 799MB | 1 x Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz (4 cores, 8 logical) with 32768MB
C4DtoA | 00:00:00 799MB | macOS 10.12.6 "Sierra", Darwin kernel 16.7.0
C4DtoA | 00:00:00 799MB | soft limit for open files raised from 10238 to 10238
C4DtoA | 00:00:00 799MB |
C4DtoA | 00:00:00 799MB | loading plugins from /Applications/MAXON/Cinema 4D R20/arnold/bin/../plugins ...
C4DtoA | 00:00:00 799MB | alembic_proc.dylib: alembic uses Arnold 5.2.2.1
C4DtoA | 00:00:00 799MB | [metadata] loading metadata file: /Applications/MAXON/Cinema 4D R20/arnold/bin/../plugins/alembic_proc.mtd
C4DtoA | 00:00:00 799MB | cryptomatte.dylib: cryptomatte uses Arnold 5.2.2.1
C4DtoA | 00:00:00 799MB | cryptomatte.dylib: cryptomatte_filter uses Arnold 5.2.2.1
C4DtoA | 00:00:00 799MB | cryptomatte.dylib: cryptomatte_manifest_driver uses Arnold 5.2.2.1
C4DtoA | 00:00:00 799MB | [metadata] loading metadata file: /Applications/MAXON/Cinema 4D R20/arnold/bin/../plugins/cryptomatte.mtd
C4DtoA | 00:00:00 799MB | loaded 4 plugins from 2 lib(s) in 0:00.00
C4DtoA | 00:00:00 799MB | loading plugins from /Applications/MAXON/Cinema 4D R20/plugins/C4DtoA/procedurals ...
C4DtoA | 00:00:00 799MB | volume_tfd.dylib: volume_tfd uses Arnold 5.2.2.1
C4DtoA | 00:00:00 799MB | [metadata] loading metadata file: /Applications/MAXON/Cinema 4D R20/plugins/C4DtoA/procedurals/volume_tfd.mtd
C4DtoA | 00:00:00 799MB | volume_voxel_field.dylib: volume_voxel_field uses Arnold 5.2.2.1
C4DtoA | 00:00:00 799MB | [metadata] loading metadata file: /Applications/MAXON/Cinema 4D R20/plugins/C4DtoA/procedurals/volume_voxel_field.mtd
C4DtoA | 00:00:00 799MB | loaded 2 plugins from 2 lib(s) in 0:00.01
C4DtoA | 00:00:00 799MB | loading plugins from /Applications/MAXON/Cinema 4D R20/plugins/C4DtoA/shaders ...
C4DtoA | 00:00:00 799MB | c4d_noise_shader.dylib: c4d_noise uses Arnold 5.2.2.1
C4DtoA | 00:00:00 799MB | c4dtoa_shaders.dylib: c4d_texture_tag uses Arnold 5.2.2.1
C4DtoA | 00:00:00 799MB | c4dtoa_shaders.dylib: c4d_texture_tag_rgba uses Arnold 5.2.2.1
C4DtoA | 00:00:00 799MB | c4dtoa_shaders.dylib: mesh_light_material uses Arnold 5.2.2.1
C4DtoA | 00:00:00 799MB | c4dtoa_shaders.dylib: normal_displacement uses Arnold 5.2.2.1
C4DtoA | 00:00:00 799MB | c4dtoa_shaders.dylib: vector_displacement uses Arnold 5.2.2.1
C4DtoA | 00:00:00 799MB | c4dtoa_shaders.dylib: c4d_vertex_map uses Arnold 5.2.2.1
C4DtoA | 00:00:00 799MB | c4dtoa_shaders.dylib: xparticles uses Arnold 5.2.2.1
C4DtoA | 00:00:00 799MB | c4dtoa_shaders.dylib: image_plane uses Arnold 5.2.2.1
C4DtoA | 00:00:00 799MB | c4dtoa_shaders.dylib: layer_color uses Arnold 5.2.2.1
C4DtoA | 00:00:00 799MB | c4dtoa_shaders.dylib: layer uses Arnold 5.2.2.1
C4DtoA | 00:00:00 799MB | c4dtoa_shaders.dylib: xp_gaseous uses Arnold 5.2.2.1
C4DtoA | 00:00:00 799MB | [metadata] loading metadata file: /Applications/MAXON/Cinema 4D R20/plugins/C4DtoA/shaders/c4dtoa_shaders.mtd
C4DtoA | 00:00:00 799MB | loaded 12 plugins from 2 lib(s) in 0:00.00
C4DtoA | 00:00:00 799MB | loading plugins from /Applications/solidangle/mtoa/2018/procedurals ...
C4DtoA | 00:00:00 799MB | mtoa_ParticleInstancer_proc.dylib: particleInstancer uses Arnold 5.2.2.1
C4DtoA | 00:00:00 799MB | mtoa_ParticleVolume_proc.dylib: volume_particle uses Arnold 5.2.2.1
C4DtoA | 00:00:00 799MB | mtoa_ParticleVolume_proc.dylib: implicit_particle uses Arnold 5.2.2.1
C4DtoA | 00:00:00 799MB WARNING| unable to load dynamic library /Applications/solidangle/mtoa/2018/procedurals/xgen_procedural.dylib:
C4DtoA | 00:00:00 799MB WARNING| unable to load dynamic library /Applications/solidangle/mtoa/2018/procedurals/xgenSpline_procedural.dylib:
C4DtoA | 00:00:00 799MB | loaded 3 plugins from 2 lib(s) in 0:00.01
C4DtoA | 00:00:00 799MB | [metadata] loading metadata file: /Applications/MAXON/Cinema 4D R20/plugins/C4DtoA/c4dtoa.mtd
C4DtoA | 00:00:00 799MB | [metadata] loading metadata file: /Applications/MAXON/Cinema 4D R20/plugins/C4DtoA/procedurals/volume_tfd.mtd
C4DtoA | 00:00:00 799MB | [metadata] loading metadata file: /Applications/MAXON/Cinema 4D R20/plugins/C4DtoA/procedurals/volume_voxel_field.mtd
C4DtoA | 00:00:00 799MB | [metadata] loading metadata file: /Applications/MAXON/Cinema 4D R20/plugins/C4DtoA/shaders/c4dtoa_shaders.mtd
C4DtoA | 00:00:00 800MB ERROR| [ass] line 43: node "xgen_procedural" is not installed

Message 14 of 27

If kick can load the xgen procedural, I don't see why C4DtoA cannot.

I'll try it on macOS too, just to confirm, after I fix my broken Maya install and licensing. I have kicked xgen ass files on macos before.



// Stephen Blair
// Arnold Renderer Support
Message 15 of 27

Worked for me, no problem. But with R19, I don't have R20 installed yet



// Stephen Blair
// Arnold Renderer Support
Message 16 of 27

Thanks for checking, Stephen. In the meantime, I tried this on another Mac, and still got the same error. I also tried in R19, with no luck. So, whatever I'm doing wrong, it's affecting multiple machines and multiple versions of Cinema.

Message 17 of 27

You are starting CINEMA 4D from the command line, right? From the same terminal where you set DYLD_LIBRARY_PATH ?



// Stephen Blair
// Arnold Renderer Support
Message 18 of 27

Hello Stephen, thanks again for the troubleshooting! Indeed, I am starting from the command line. What's odd, is that in looking through the log I posted, it seems to be accepting the mtoa particle plugins, but it's when it hits the xgen that it reports a warning:

C4DtoA | 00:00:00 799MB | loading plugins from /Applications/solidangle/mtoa/2018/procedurals ...
C4DtoA | 00:00:00 799MB | mtoa_ParticleInstancer_proc.dylib: particleInstancer uses Arnold 5.2.2.1
C4DtoA | 00:00:00 799MB | mtoa_ParticleVolume_proc.dylib: volume_particle uses Arnold 5.2.2.1
C4DtoA | 00:00:00 799MB | mtoa_ParticleVolume_proc.dylib: implicit_particle uses Arnold 5.2.2.1
C4DtoA | 00:00:00 799MB WARNING| unable to load dynamic library /Applications/solidangle/mtoa/2018/procedurals/xgen_procedural.dylib:
C4DtoA | 00:00:00 799MB WARNING| unable to load dynamic library

Both machines tested are using the freshest installs of MtoA and C4DtoA; Maya is also the latest (2018.5), and I've tried in both Cinema R19 and R20. The Macs are High Sierra, though I can try on a Mojave machine tomorrow if it helps. I'm not sure if it makes a difference, but the only other thing worth noting is that our Arnold's are floating and run through a license server, just in case that changes any of this.

I'll bring in my PC laptop this week as well and try rendering from it, just to see if I have more luck there.

Message 19 of 27

The mtoa particle procedurals don't have any extra dependencies, so they will always load.

The license doesn't matter.

So, it looks like some dependency is still missing when loading xgen_procedural from a running CINEMA 4D

In a Terminal, open two tabs:

  • In one tab, set DYLD_LIBRARY_PATH and start CINEMA 4D.
  • Load a scene that uses xgen
  • In the other tab, start dtruss:
    sudo dtruss -f -n CINEMA 2>~/dtruss.log
  • In CINEMA 4D, try to render
  • Go back to the terminal, and press CTRL+C to stop dtruss
  • Post the dtruss.log so we can check what's happening


// Stephen Blair
// Arnold Renderer Support
Message 20 of 27

Thanks for helping to troubleshoot this, Stephen. Though I'm still not ruling out something that I'm doing wrong.

Attached is the dtruss.log file.dtrusslog.zip

Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

Autodesk Design & Make Report