Setting up a volumetric LED mapper but unsure how to optimize for higher/ stable FPS

Sorry if this is a typical beginners blind spot, but I’m setting up a network for a rather large LED rig (on photo before we decided to switch to TD). I think I’ve got a working network, (OSC from Reaper will replace the LFOs), but would like to add more group SOPs and worried my current FPS of about 40 will drop to something unworkable. Is there a way of splitting this network over 2 TD instances, or any other blinding obvious ways of optimizing the network I’m missing? Any help would be a-ma-zing
MIAMI REAL2.toe (373.0 KB)

hey @merijnroyaards,

looks like you want to map ~25.000 leds, for fast performance this can be done in TOPs on the GPU.
I roughly converted the gist of your example to use pointclouds using the pointField component found in the Palette , it runs at steady 60 fps on my laptop and you can add many more bounding boxes/planes/points without the framerate dropping.
As an extra example how to use the pointField COMP I added a rotating bounding box adding blue lights to the sphere.

The pointField component outputs a weight per point in the alpha channel, and this can be used to control size or color or whatever.
see many more examples here: https://derivative.ca/community-post/asset/point-field-comp/63627
Hope it helps you further on your path, don’t hesitate to ask if you don’t see what’s going on, looks like a cool project to cooperate on!

cheers, idzard
MIAMI REAL pointcloud.5.toe (376.1 KB)

Ah, this is so cool! Thanks so much, I was at a complete loss as to how to move that part to the GPU, but this is really great!.I have to say, I need to spend a lot of time trying to understand exactly what’s happening inside the Pointfield comp, so may well ask to pick your brain again, but this made me punch the air, and really feels like a milestone to the project, so thanks massively, and will post how things progress, super grateful!

1 Like

Screengrab of LED mapping for our sphere to some spatialized Burial tracks, next challenge is to get TD to talk to the physical rig correctly, but thanks so much @nettoyeur , you really broke this open completely, still reeling from all that is possible, and clearly just scratching TD’s surface here!

1 Like

looking good Merijn, well done! Sounds like you’re already on a roll, ping me if you need more help

Thanks @nettoyeur!, well, while there’s a lot to figure out still in terms of getting the most out of the PointField comp possibilities, there is a more practical question that I won’t know will be an issue until we start to plug in the physical rig but… And I’m sorry if the following is unclear or totally obvious. The LED rig is 212 strips of 120 pixels around the same number of tubes, and some of the tubes have the strip starting at the bottom, others at the top. To take account of this, I’ve rebuilt the SOP feeding into the Pointfield from a DAT list with the correct number order, but of course once it’s converted to a TOP, the total number count changes, (because it has to fit in a square) which I then trimmed back to the right total amount when converting to CHOPs (with a TRIM CHOP) to send to DMX. But would this conversion to TOP, then CHOP with trimming, have completely undone the initial number order? And if so, is there a way of solving that. And then lastly, once converted to CHOPs, I’m using a pattern/ lookup table combo to send out 510 values per universe sequentially, but even though I think that’s the correct way of doing it, (taking my cue here from the LED mapping tutorial by Ben Voigt, and Markus Heckmann) I won’t know until we try next week at Miami Loveburn… I’ve attached the network, but of course the OSC won’t do anything, and there are some movie assets that are referenced rather than embedded, so will be broken. If helpful can make a version that fixes all that to attach
BURIAL 1.125.toe (1.2 MB)