Good morning,

Hope this is not a stupid question, I am very new to Blender. So, my setup is:

  • 3d env built from iPad photogrammetry

  • we insert some lasers (a simple cylinder with emission node)

  • we control the lasers using QLC+ --> artnet --> BlenderDMX and a python expression that modulates the emission color for every laser from a separate dmx channel.

We would now love to be able to store the dmx animation directly in blender as keyframes in order to export the animation and put it back on the iPad for AR simulation. Is there any way to record the driver data in real time?

  • Pennomi@lemmy.world
    link
    fedilink
    arrow-up
    1
    ·
    2 months ago

    That’s a pretty niche use case so I can’t be of specific help, but it sounds like a job for Python scripting. Assuming you have the same number of lasers all the time, you can set the animation keyframes on your cylinders to have the correct position/rotation/scale as your data comes in. Keyframe animation should export easily to USDZ for use in AR.

    Again I don’t know much about your specific setup but this is the direction I’d look.

    • TDSOJohn@lemmy.worldOP
      link
      fedilink
      arrow-up
      2
      ·
      2 months ago

      First of all thank you for your answer! What I meant with animation is the light color modulation itself, so I would basically need to listen to incoming driver data and record it to play it afterwards as an animation (yes, we would export to usdz in order to import in reality composer).

      • Pennomi@lemmy.world
        link
        fedilink
        arrow-up
        1
        ·
        2 months ago

        I do not believe that USDZ supports features that allow you to modify the color of the object or do any kind of driver-based logic. (It certainly did not two years ago, when I was in the AR industry). Blender can do it, but Reality Composer probably can’t.

        There are only three possible paths I think might be viable.

        1. If USDZ supports UV animation (unlikely?), you could use the driver to animate the UV coordinates of the cylinders across a rainbow gradient, based on what wavelength of light you need.
        2. If you have a small number of colors, you can have redundant cylinders for each color, and show/hide them in the animation to fake the color change.
        3. In Reality Composer, set up some hooks that swap the materials of the cylinders based on various triggers. I think you can use a timer as a trigger. This is a very manual process and would be an absolute nightmare.
        • TDSOJohn@lemmy.worldOP
          link
          fedilink
          arrow-up
          2
          ·
          2 months ago

          Thanks for the detailed explanation, not the answer I hoped for but definitely the answer I needed! Will look into all 3 options, thanks again!