From fb639f96c334a4dea43b5b2dd2ee156fc2d08def Mon Sep 17 00:00:00 2001 From: onezplpl Date: Wed, 17 Jul 2024 20:17:49 -0400 Subject: [PATCH] more complex generation --- cubes.h | 2 +- noise.c | 9 ++++++--- noise.h | 5 ----- test.png | Bin 1095 -> 7509 bytes 4 files changed, 7 insertions(+), 9 deletions(-) diff --git a/cubes.h b/cubes.h index 4242247..4241531 100644 --- a/cubes.h +++ b/cubes.h @@ -6,7 +6,7 @@ #define CHUNK_RADIUS_H 4 // 8 #define CHUNK_RADIUS_V 4 // 4 -#define TEXT_GAP_H 1 / 3.0 +#define TEXT_GAP_H 1 / 6.0 #define TEXT_GAP_V 1 / 6.0 #define CHUNK_DIAMETER_H (CHUNK_RADIUS_H * 2 + 1) diff --git a/noise.c b/noise.c index 7a271d0..1e0c3a7 100644 --- a/noise.c +++ b/noise.c @@ -61,12 +61,15 @@ struct chunk noise_chunk(struct chunk chunk, int x, int y, int z) { int z3 = z2 + z * CHUNK_LENGTH; double hp = noise_perlin(x3, z3, 128.0, default_seed); hp = ((hp > 0.0) ? -1.0 : 1.0) * (pow(fabs(hp), 0.7)); - hp *= 32.0; - int h = hp + 32; + hp *= 128.0; + int h = hp + 64; for (int y2 = 0; y2 < CHUNK_LENGTH; y2++) { int y3 = y2 + y * CHUNK_LENGTH; - chunk.blocks[c] = (y3 < h) ? (((int)((hp + 64.0) * 2.98) % 3) + 1) : 0; + chunk.blocks[c] = 0; + if (y3 < h) chunk.blocks[c] = 4; + if (y3 < h - 1) chunk.blocks[c] = 5; + if (y3 < h - 2) chunk.blocks[c] = 6; c++; } } diff --git a/noise.h b/noise.h index e3beb15..5e12347 100644 --- a/noise.h +++ b/noise.h @@ -3,10 +3,5 @@ #define V_NOISE_H #include "cubes.h" #include -double noise_interpolate(double a0, double a1, double w); -int noise_hash(int a, int b); -struct v2f noise_perlin_grad(int x, int y, int seed); -double noise_perlin_dot(double ix, double iy, double x, double y, int seed); -double noise_perlin(double x, double y, double s, int seed); struct chunk noise_chunk(struct chunk chunk, int x, int y, int z); #endif \ No newline at end of file diff --git a/test.png b/test.png index a53d88b653a08cd97f7078ea0398d89f70496d0f..a6a41c895738ae8a712d174abb2ccc778aa0aca6 100644 GIT binary patch literal 7509 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�<}3_)%a)>g-&D}{d7W&AICA9N za{jrh4VCw|fZ*X!TRK89rry`Fu#kB4`FLk! zQWE-cNhxPCfu!l4Tr^A_MBS-<)is4^WRb3Q?3J+m-cw!S48B|M*U#Z*buP1k<>0x#fa-} zJsFbo%^8W%*Wma1pZA_Nt`AO3gvu(vx-{-WRN8W*{>?dFH25O1eC~zo$;N!oPqt|T zbHXrmrdg`W%<-dH$88oVidOGK2#V);)q2WQt&_smzwOm{rl6l&S-JoDuHliRb>xP9 z2wamB3FYZ$^YnsbQRY4)QS%*_9@aoQR2}RW_O!SPYf~aFbf2PWjLdKn@vIrp-9XRc znve32hx98@e`F8NP##3z$eI;^0m&B&JvWqGVCWI=7TQ@v->00#NJRiw}K3Fr^GbNRQrvMImlX^_8br z&s!-=ltwHf-jATxfIjryy34)>cYJSXh|zZ==c`+49awk4|jPlf0bih$%dy^n7Z&h2+Q@twyi_pDeYn#cAQqt62m!W6F2dUY9dg_>S+Uu+!*PwTh6|xJ}$*sNMPR_{gP%i zp8+uE4Jy|t02`VrvQ~{r&U8iTM6qtFc zDdjjD*7sP~*~-o}GdJuwt|AF*v#xck$nQ!W+`cnt2cl%>Q45F1+d>3jH=oPz7#-sT zJ<7<+Yk4~MfT%J$<~NeBhQAWFY}W6{i`I)0g~`gN4b(0Q`D4S^!elqgJ*tI7eqBU- z2!5a=pDX2)zFMtRsUPi9`l`J!y|yzu`-;^5F%AP$%X8fuA_dDx>ilhw-?(8M{ZtB6>Ipttwc{Q6 zS%iVN+%yPD8vr|fsmu+mfp~a&9$H7bMKNCu=$kgRDjT@#wH(wJzYDKp!$RjGj8vs0 zmLXRf8M8e7%ti)5NpUnqc=1#)sjc^GM06;rP5D$P$szkV@R0WwaQa#azhvEUK!OBU z^gSZHIC9uHR3fG$P5tSEORdnOCW_{$-_H%s@T5W#UuS7wI8G^0)6Mgq6mh&{MC`Xj zlGL79&4_%ig#S29cRr4H-Yc5ppQ6bb9{(qRrz-UaZH-62h`zj?#fI^2`^2S~l#em8 z@md`s1EFsmP>&v>RPFhX)}H75<)fjtYf?qz+d4b1?Bdzk*{yC=Y&_l24(`e_BxR_p zKw#dy?9sTjLTh8E!z%DAMK1um^|JBJnCR|tbF}OecNF$bXQyEH=xtFpLbl#fe33HP z?&pWuY4kqXnG�k@Wt-MZfL@&Gi1Jsj8Z**LNPbRjCP*<7Fqb4_k!y%%2^FFukT4 z?l9Ux@nGhheU8DQ`2ny=Wg^rTEss7CAqhjjYQ@b&C)Plm=jZ0u!#3=y<_uDrJzDha zc5NHd*sDl#HSDX0sEENFI$K*e>ceG4cZ3zZmMiWqEZsFUk|ne@(8Rd1Lyo%qMZfl! z8s!+l*EB*p8UrfUI$f09JTyKrIw~!1r0(_JxzMHGG0*R=FzNj#KTJ$^WaR$0V2dzg zuDZ!V)G?;{feAtDez4!tqGNy%;NUT6{=_IyF{N0R=XgenZ^3aUPBWFcS(rOzW$qty zPHoO>9-U)s&KujZ4&V3a(e~v{y7PkK!)m=7X$A_pN??(`bMu0B6c`Yi0}>&tnL`2d z5n@zL1;hBij`%3r~k9~>7To;D{bv2hX((!r00%F9NZpItav&V&j zVUK=;9DDv>4jc}55F>DX`gemI6{VDry@#5nqYJzQuY1kMOx_(T5tD?;Zhzdg6!Rf? zXZ7?8(?PI8#=Ia{HfI!KVPQeO-*duBnO%Ne literal 1095 zcmeAS@N?(olHy`uVBq!ia0vp^20)y^!3HFwdp;HbDb50q$YKTtJ!KGPtXOJa#=yY* z)6>NT^EbDuICi#5T`?>$B|EY2Ae_1lCVV;lBVgGwUUzVv@R0Ipj zn5+Jij@)+5o8@6Y@7CCUZ-t?Tnv5eR6 zI24^c8Uq{!lR@mucZdn0c<e%{{2Old|*y!vonRhl#>mD#n?cHil z+x-wc#d+jh?d^Y$Upu@~^ATHpl2O z_s!p^|8U2C>0|#t^u$lR`1`#REmqmYwb1ZImF<1@UF!_0 z{{Pt5+IM{MtSvxS?7r)FG`j5NpS!@+cKkY{N%8tz+wukP`<@gpc+V$N-2e?6NQT(5 zWK#DMXb2qzX9Yue2xZjZOlfPJGI(~y$^Y^EBd-!^DgAEAp$ov0fx*+&&t;ucLK6VH C(*YC!