-vec3 sunPos = {0, 2, 2}, viewPos = {0, 0, 0}, lookPos = {0, 0, 1};
+Clouds cs;
+
+void calculateMetaballs() {
+ /* stepClouds(&cs); */
+ metaballs.clear();
+ for (int i = 0; i < 256; i++) {
+ float x = ((float)rand()/(float)(RAND_MAX) - 0.5) * 2;
+ float y = ((float)rand()/(float)(RAND_MAX) - 0.5) * 2;
+ float z = ((float)rand()/(float)(RAND_MAX) - 0.5) * 2;
+ float r = (float)rand()/(float)(RAND_MAX) * 1;
+ Metaball m = {{x,y,z}, r};
+ metaballs.push_back(m);
+ }
+ /* for (int i = 0; i < CLOUD_DIM; i++) { */
+ /* for (int j = 0; j < CLOUD_DIM; j++) { */
+ /* for (int k = 0; k < CLOUD_DIM; k++) { */
+ /* if (cs.cld[i][j][k]) { */
+ /* Metaball m = {{i / (float)CLOUD_DIM, j / (float)CLOUD_DIM, k / (float)CLOUD_DIM}, */
+ /* 1.f / (float)CLOUD_DIM }; */
+ /* m.pos = (m.pos * vec3(2)) - vec3(1); */
+ /* metaballs.push_back(m); */
+ /* } */
+ /* } */
+ /* } */
+ /* } */
+ fprintf(stderr, "num metaballs: %lu\n", metaballs.size());
+}
+
+vec3 sunPos = {0, 2, 2}, sunDir = {0, -1, -1};
+vec3 camPos = {0, 0, -5}, viewPos = {0, 0, 0};