diff --git a/terrain.c b/terrain.c index dda9409..0de32c1 100644 --- a/terrain.c +++ b/terrain.c @@ -76,8 +76,8 @@ #define TREETRUNKCOL 0xF950 #define TREEBOTTOM -0.333 #define TREETRUNKWIDTH 0.2 -#define REDFLOWERCOL 0xFF24 -#define YELLOWFLOWERCOL 0xFFF0 +#define REDFLOWERCOL 0xFF13 +#define YELLOWFLOWERCOL 0xFEE0 #define SEATRANS 0.75 #define CLOUDTRANSMIN 0.1 #define CLOUDTRANSMAX 0.2 @@ -189,30 +189,6 @@ uint16_t gen_terrain(struct vec3i pos, haloo3d_obj *model, // ns.seed = 0; ns.frequency = 0.02; ns.fractal_type = FNL_FRACTAL_NONE; - // for (int fi = 0; fi < 2; fi++) { - // // Pick a random place for a flower - // struct vec2 flowerpos = {.x = triedge[0].x + 0.8 * RANDF(), - // .y = triedge[0].y - 0.8 * RANDF()}; - // float y = calc_barycentric(flowerpos.v, heights, triedge, 2); - // if (y > 0.2 * fi && y < 0.2 * (fi + 1)) { - // float nlayer = - // fnlGetNoise2D(&ns, noisex + flowerpos.x, noisey + flowerpos.y); - // float scale = 0.04; - // float vertscale = scale * (1 - 0.5 * RANDF()); // * CHUNKSCALE * 4; - // if (RANDF() < -nlayer) { - // haloo3d_obj_addobj( - // &nl_model, flowers[fi], - // (struct vec3){ - // .x = flowerpos.x, .y = y + vertscale * 0.5, .z = - // flowerpos.y}, - // (struct vec3)DEFAULTLOOK, - // //(struct vec3){.x = -sin(MPI * 0.25), .y = 0, .z = -cos(MPI * - // // 0.25)}, - // (struct vec3)DEFAULTUP, - // (struct vec3){.x = scale, .y = vertscale, .z = scale}); - // } - // } - // } for (int t = 0; t < MAXTREEPERCELL; t++) { // We know that the first vec in the first triangle is bl, which is our // base to start generating trees @@ -235,12 +211,12 @@ uint16_t gen_terrain(struct vec3i pos, haloo3d_obj *model, .x = treepos.x, .y = y + scale * height, .z = treepos.y}, (struct vec3)DEFAULTLOOK, (struct vec3)DEFAULTUP, (struct vec3){.x = scale, .y = scale * height, .z = scale}); - } else if ((rand() & 1) && y < 0.4 && y > 0 && RANDF() < -nlayer) { + } else if ((rand() & 3) == 0 && y < 0.4 && y > 0 && RANDF() < -nlayer) { // if (y > 0.2 * fi && y < 0.2 * (fi + 1)) { float scale = 0.04; float vertscale = scale * (1 - 0.5 * RANDF()); // * CHUNKSCALE * 4; haloo3d_obj_addobj( - &nl_model, flowers[y < 0.2], + &nl_model, flowers[RANDF() * 0.4 > y], (struct vec3){ .x = treepos.x, .y = y + vertscale * 0.5, .z = treepos.y}, (struct vec3)DEFAULTLOOK,