GollyGang / ready

A cross-platform implementation of various reaction-diffusion systems and PDEs.
GNU General Public License v3.0
755 stars 60 forks source link

Added AbstractRD::GetData() to return the float values for a chemical #126

Closed timhutton closed 3 years ago

timhutton commented 3 years ago

This closes #97

@danwills - I presume there wasn't a need to interact with OpenCL in the way this previously worked?

I see that rdy outputs the float values to stdout. Is this for getting the data into Houdini? There must be a faster way than parsing a long string - can Houdini provide a float pointer for writing into, for example?

danwills commented 3 years ago

Yeah the plugin currently works avoiding any binary linkage.. that's why it's going via text.. indeed my first implementation was terribly slow, but I found some ways to make it better (can initialise all voxels from a string or list, and it's not too terrible).

Eventually maybe it would be good to swap to something binary.. maybe pfm (a float extension to ppm) but there's not any burning hurry for that. Guess there's possibilities for sending binary data through the pipe (stdout) too

danwills commented 3 years ago

oops wasn't quite done there..

Just wanted to also confirm that there's no need for GetData to work for Houdini interop reasons. Rdy is only used at import time and is not used at all while the sim is running.