Data Array-Basics...Anyone ?
RIL last edited by Woland
Hi everyone ! I thought it would be interesting to understand the basic principles of the Data array actor, possible uses etc ... And a practical example within a patch, so serve as a push and take us from the dark side ha ha. Anyone who want share some light? Thanks a lot !
bonemap last edited by bonemap
The basics are covered in the Isadora 3 Manual (page 334). There were some improvements to the way the Data array works in Isadora 3. So a Classic Data Array is now deprecated (Isadora 2).
I have used the Data Array many times for more complex patches. It is difficult to represent its functionality in a ‘give away’ patch because one of its great attributes is being able to read and write data to and from an external file. And the complexity of implementing the data array for large data sets is not something easily shared, due to the specificity of a particular patch development. In other words, unfortunately I don’t have a patch using the new Data Array that is suitable for ‘demonstration’ purposes. That is over to someone else.
One example of my more recent experiments with the Data Array has been using point cloud data. Getting data from a third party 3D software that converts 3D vertices to a numerical matrix of x,y,z coordinates exported to a text file. Using Isadora3 Data Array to read these coordinates into a patch and connect to 3D Model Particles. This provides the functionality to create particle systems whose overall shape is representative of the associated point cloud geometry. If I had not found this method I would probably have migrated current projects over to Touch Designer software by now.
In another use case I have configured a patch around the Isadora3 Data Array that captures skeleton tracking data to external files that are auto generated. By incrementing a naming convention the module will create a series of unique external files. Using the Data Array ‘write’ function I have been able to capture the x,y,z coordinates of 44 skeleton joints at 30 x per second derived through depth camera and the OpenNi Beta plugin paired with the Skeleton Decodor. This has worked flawlessly for short bursts of movement of 10 - 15 seconds. The Data Array has allowed the tracking data to be read back into the patch to reproduce the original movement. This results in a capture and playback tool for the OpenNi skeleton in Isadora3.
So for me the Data Array is a significant and highly valued enabler in the Isadora toolbox. You are right to seek examples and ideas around the Data Array. It has taken me many years of trial and error to achieve any useful capacity to implement the module. To be at a point where an understanding of the Data Array enables a vision of how Isadora can be extended for a specific function or task only comes from investing in its use.
RIL last edited by
@bonemap Thank you for your detailed response! I understand your point about the difficulty of sharing examples or creating them. In any case, the personal examples you have told me help me to understand better. I will investigate the manual to have a more complete picture.