# Animating water surface from .csv temporal xyz data

I am looking for a tool to create nice animations from the output of my numerical model. So far I have gridded xyz data points for both the surface elevation and the elevation of white-water above the surface. So two x,y,z .csv files for each time step. Each file would have around 600,000 points and depending on the frequency of outputs, up to 10,000 time-steps to animate.

I'm looking for a way to import these into blender, generate a surface and create a nice animation. In the end I'm aiming for realistic looking water. Is there a way to accomplish this in blender, or should I look for another application? Thanks!

• I'm not sure about your specific use case (.csv files might not be supported), but you can use other tools completely within Blender to get the result you are looking for most likely.
– VRM
May 11 '15 at 23:47
• you can write a script to read the csv and manipulate the mesh May 12 '15 at 0:53
• what program is used to generate the csv from the numerical model @Marcus ? May 12 '15 at 6:48
• The program is a Mike by DHI 2D Hydrodynamic model. The only outputs are into their proprietary format, from which I am able to extract raw data through the included Matlab and C#(.NET) toolboxes. I've just manually written my data to csv for ease of access. May 13 '15 at 0:13

There is this .csv import script: BA thread (which might or might not work for you)

This is related: Csv Import pointcloud into Blender

If your data format is really custom and nothing helps, you have 2 options:

• Export something standard which blender and other software understands (I recommend):

• .mdd Lightwave point cache file (load into MeshCache modifier)
• .pc2 point cache file (load into MeshCache modifier)
• .obj sequence imported as mesh shape-keys: BA thread
• Write a custom importer script that can interpret your custom .csv data.

• Blender API
• There are templates for import/export scripts in Text Editor
• You can see other scripts and how they work in \<blender version>\scripts\addons\ - also good to see how formats from option 1 work

You can grid the CSV files in external software, save the gridded files as elevation geotiff (16bits, for example).

on blender use addon import images as planes, to preserve ratio and UV map

subdivide the plane until desired resolution

do a displace modifier, by image sequence, selecting all other frames

adjust strength level for height (Z) desired.

If you need to preserve XYZ ratio, you need to convert the gridded data to OBJ or WRL and import them as animation sequence.

You can use VTBuilder, as an example, to perform those operations, as it is free: http://vterrain.org/Doc/VTBuilder/overview.html

• There is also a Blender addon called Point Cloud Skinner, that will create a mesh from points, and you might be interested to take a look: sourceforge.net/projects/pointcloudskin Oct 24 '16 at 14:55