From 1c962efa0a383bbbe4370cafe22c825c895065dc Mon Sep 17 00:00:00 2001 From: Elias Fleckenstein Date: Fri, 14 Aug 2020 14:15:04 +0200 Subject: [PATCH] Trees; Random Seed --- modules/Client/src/graphics.lua | 2 +- modules/Client/src/init.lua | 3 + modules/Game/ressources/dirt.png | Bin 676 -> 266 bytes modules/Game/ressources/grass.png | Bin 0 -> 2474 bytes modules/Game/ressources/leaves.png | Bin 0 -> 658 bytes modules/Game/ressources/old/dirt.png | Bin 0 -> 676 bytes modules/Game/ressources/old/grass.png | Bin 0 -> 5960 bytes modules/Game/ressources/old/leaves.png | Bin 0 -> 979 bytes modules/Game/ressources/old/stone.png | Bin 0 -> 528 bytes modules/Game/ressources/old/tree.png | Bin 0 -> 1704 bytes modules/Game/ressources/stone.png | Bin 528 -> 223 bytes modules/Game/ressources/tree.png | Bin 0 -> 528 bytes modules/Game/src/init.lua | 21 +++++- modules/MapGen/src/init.lua | 85 ++++++++++++++++++++++--- modules/RenderEngine/src/mesh.lua | 5 +- 15 files changed, 103 insertions(+), 13 deletions(-) create mode 100644 modules/Game/ressources/grass.png create mode 100644 modules/Game/ressources/leaves.png create mode 100644 modules/Game/ressources/old/dirt.png create mode 100644 modules/Game/ressources/old/grass.png create mode 100644 modules/Game/ressources/old/leaves.png create mode 100644 modules/Game/ressources/old/stone.png create mode 100644 modules/Game/ressources/old/tree.png create mode 100644 modules/Game/ressources/tree.png diff --git a/modules/Client/src/graphics.lua b/modules/Client/src/graphics.lua index 9f41267..a56074b 100644 --- a/modules/Client/src/graphics.lua +++ b/modules/Client/src/graphics.lua @@ -10,7 +10,7 @@ function graphics:init() RenderEngine.mesh_effect_grow_time = 0.25 RenderEngine.mesh_effect_flyin_time = 0.5 RenderEngine.mesh_effect_flyin_offset = 20 - --RenderEngine.mesh_effect_rotate_speed = + RenderEngine.mesh_effect_rotate_speed = 1 RenderEngine:set_wireframe(false) diff --git a/modules/Client/src/init.lua b/modules/Client/src/init.lua index 067b041..c368a2d 100644 --- a/modules/Client/src/init.lua +++ b/modules/Client/src/init.lua @@ -13,3 +13,6 @@ Dragonblocks:add_task(function() coroutine.yield("FPS:" .. math.floor(Dragonblocks.tps or 0)) until false end) + + +RenderEngine:render_loop(true) diff --git a/modules/Game/ressources/dirt.png b/modules/Game/ressources/dirt.png index 5cc6e8639556cfa826aa5e5079ff318de48de4ff..617d353e0d67a14a2952b2a98375eb8a50b97d79 100644 GIT binary patch delta 238 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 literal 0 HcmV?d00001 diff --git a/modules/Game/ressources/leaves.png b/modules/Game/ressources/leaves.png new file mode 100644 index 0000000000000000000000000000000000000000..33ac47393429bb734e686c5ace68a3bec5f1f6bf GIT binary patch literal 658 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJOS+@4BLl<6e(pbstU$g(vPY0F z14ES>14Ba#1H&(%P{RubhEf9thF1v;3|2E37{m+a>xxXMiI&i z=3|||2F85frtzLRx^_=Ez3GG8`zeZab4qIq4Das z{dCRpwDfQ1-`Sq-c%jCY*X$wCRjW2(~ON7Rjv~|43Ez2iYYqvko&W5S)%iu&2dhRf%b~uxeGV* z&a^L8d2c&?;ektBvF&rM|MDw)@;fV3tjYxXNwvf^q9i4;B-JXpC>2OC7#SED=o*;m z8kmL{8d(`xTA7$?8yHy`7@YH%FOH%iH$NpatrE9}{i5otff^V*UHx3vIVCg!06Rj? Ak^lez literal 0 HcmV?d00001 diff --git a/modules/Game/ressources/old/dirt.png b/modules/Game/ressources/old/dirt.png new file mode 100644 index 0000000000000000000000000000000000000000..5cc6e8639556cfa826aa5e5079ff318de48de4ff GIT binary patch literal 676 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 C&;dFC literal 0 HcmV?d00001 diff --git a/modules/Game/ressources/old/leaves.png b/modules/Game/ressources/old/leaves.png new file mode 100644 index 0000000000000000000000000000000000000000..02b6cf03afb1d602cea9b94340806c43983e5ebf GIT binary patch literal 979 zcmV;^11$WBP) zaB^>EX>4U6ba`-PAZ2)IW&i+q+U=H0lH4E+hWDHzM?exn;y64^Rc?^u=f{mbJ(Ec) zsbrBwn=)X5C81ApcR0R%o#6{Ej+8@E^IUR{xKc@lD<&QvS3P@*>FoDIye9AD;a-5+ zC>Z7O=y}Tz$Qk>2%lp<-A=f8G<=6}D{X*S}*tdbp;x;7oFc7!mP`4uCZ8<%j+v8X< z7q{ml^u2%X^)n2(!|IY4XU${@ed1`A3+B!-8R9mUqqB2a?`hkLK0JqOE5j!~ge0Q( z<)J+8irdi>)^Q*yn8Px9l^uQ1;t&ne!6*RMPem+Kq(JEZrFejHB&ihc;QO+6mwH2-Nt&C>4 zHTnwnY6ZLokYo+5Qy~V%Nr?tknsl6Frw$hrA8Z(zI}7yyp#w(YE(>m2jV2o~ z4`65MNC$zGZ(ry%TTXMG9EJyZKz0z6Axr+Qh2PmU=PD?o=y$B(7q3c#7mFNGh=gq* zLURXI&j4TTO9SvXrMKjg6SQEXVtf=Z+1LsYB6y&1h6Ds+CQ-^1 zjX4+*0_gx$;W|s=1}vn?15R=h$$*0@fNi{EbZ%wkhZrA1fKbT+<>#vq0V^d%{#bJ4 zP*u^Ss##54i`Fc8RanlJ*B7;#STeP2W^To5aPj2o+0EUH*TO~c#npm(EM7{f6-FyG zSG--Zq1MJtT58&Iv*xX|+BtOTscX;Oy7$uS;2{HbJo2#Nql|jcfmAxup+`RK@S_}c zBGsnMGUEiubf8Ue|BtCu8{8!k>;WMK47!MK47!MK47!MgO~^iGL3zdv3=uCgi;tIa0000PbVXQnLvL+uWo~o;Lvm$dbY)~9cWHEJAV*0}P*;Ht7XSbN z9Z5t%R5;6He zSad^gZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{00DSOL_t(I%Vm>Mk{mGzL!V?% zZnmk){V$W+HYgu<_e^E|<1z*WNa)Y+uYiE?+!CbE`~4fhpMHobo9@uvaJwrz58Gx7 zdvKpS1rn14Sqw}P(8hou>8W9@0zzkpTf5NN+2|dxjcwA6#~|G&L9j&vzvdu_bkiMX z!$$2zRj4W?QC0jr;p$Ug_B~TY5YxMb&ixsL-W5pCPysv!vYD0$!V;0OV6BC?0O zC+N%tfNr{*Ip*ZL7OOUD*htl(YGHeqY5_jzrmA@jGrzBkac7OdA{{&j)}A&JLr{1B zT?`vZ%po6UIRXlm=K4OvBuHl6KETVSx>;4sImc<~t+k10Tbb@8XUV$lrJq`h3UDpo*TiQvqcVML+PW}O9j|S#d S1&MJ00000 zaB^>EX>4U6ba`-PAZ2)IW&i+q+O1bxlH@21{O1&N1SDSKI2cUC-e8YE$S=Ct=>bY!uJ=;&^|N=0+^j!SXmA85$1s+*qZ#k>Tmtj^|^9rG1p} z8bY4-b-wR3;HTQfn!w(93Kmz(Is_jv7S=X^x6**t%(1O=$K2@ltd=PQ6Q72R##I_Z zGkys_!IkhH0hx%g#o4ZYAcb12big<+UcW!SL#`I|DfyeEdqiK%zbLIbq3eaYDdhM4 z<2<=*UcE}%b$jvb{r3DeUyki!E2oxxwHB%M9ML7~5wf2_tx)<1c1L5Yukttpeojjx zyPXlIpd>Q#s36G>oS7mqWUOSVP@+m_zh}yTX!+!TJ9B13Sz%HjM&xXoxJ_6~l>=lh zkey9NIvC9I#zNg~?CvrN92XLW>>zB0Ect(@`V*sCTR{G90a?g7E&$2a7!Pq!1@MhEfx0O>9@A)q5W*R+On^2hM2KarL;eIS z$f4wnv(7p1f)f{A^2WCc^FH|2QByF%1{Zt?K|%~ki4iMKyaW-6k|IZgj_V@oF-nXv zB{)skIbn5zK}rW7=CFr5{1Fa0;*m0|Y_iQR`y8_5m{Z|m3hKD{5{i^q(n%*$>9nUi z{TWU<pjiqLVo)?E% z1g)hn%{sU~!1tzakCtS|Ktv5|^ygu$C5(YI(&v_IO1t}dUHSm+Mb&Q2B*(yu*13%8 zGMcY6moEWXHI4PS)3QNY4M0e}z2OMoYIZZ!6%ImH1M@Aw%jABaEXid#K;bL0vDAh4 zZu0_jVX<4dG*PNOGjRJw#761&;=O3wuEn^hR~F@3GzU;@#*%0yjlNN4`areZS*vs$ z{Jz+%)l`PMn#~ewB~>0Afxt(0$f9<=xjfuS_bVloEJkJIRzwS#T;NMGkyL(>u4P0c$a>Xnj*&$6oJRwS}HvMUvoTS4u# zyVmFXj*)k{-EpZbgWAM)_6@uJ{**hfsiVHmohuIS7Ki0d-Cm>~Bwjt@QNf#Dw~Fx6 zM2(#{^q?VoLe zA4oSl>&;3PrSG;^7MAzE_6g3FUuq^;e)iC>wYsCxZm9MFO}2M|XT4kf_&N@X6*>UR@YPUXmd`a9RVRpY<`)$Fiy3rxt1>)UQtd{^dtqGz=){OeH=i~0=;Zq$7|cR!E- z000JJOGiWiEC5*m74yP~t^fc432;bRa{vG?BLDy{BLR4&KXw2B00(qQO+^Rf2n-P{ zFSMhW{Qv*}8FWQhbVF}#ZDnqB07G(RVRU6=Aa`kWXdp*PO;A^X4i^9b0P#sgK~y-) zeUn*o#2^erpM;Z-oFV7P{m(UH)APY5Fb-8ND5=$IEw;bkADIEbb;0)mIJ{o)b-;Oo zJ0yoo1(yYf!}|m`2d@O}1~5Q?EjCo{_BjdwACaCaX$t6gtoU3TU(D#M!AeOjvEQOJ z%2AYVrAGh?s@+BmQ#nA+0hDKdd(H}d!gQu?tLS7yg-1#)w0#1aOUYH$`vS*?!)%PI zk1)#COqi_YvU_v39bO10%#=+7tEc(0EZ>^FH7~0)H*c8Cz+0eM-9$Duhow>u>IB|q yopY#1&$7)cK^&vR^U?m@6-4{>-;bfYFaaN4SzLb)P4*jj5xYi<9lyvPqs(8jXja5HyZuOj|2SN>t~@jQ^U<1C+9SzRy#Se$%^ x-A(*5|4$D|Wx7eIiq|nZD~AF%^Xd_~!apudcQEXJ=B5Au002ovPDHLkV1ktWUIG9B delta 502 zcmV<{98FWQhbVF}#ZDnqB07G(RVRU6=Aa`kWXdp*PO;A^X z4i^9b0eDG7K~y-)Ws^~o95Dz(pJY#NwyDbfFO%9fC?9tBOn+tl<1z*WNa)Y+uYiE? z+!CbE`~4fhpMHobo9@uvaJwrz58Gx7dvKpS1rn14Sqw}P(8hou>8W9@0zzkpTf5NN z+2|dxjcwA6#~|G&L9j&vzvdu_bkiMX!$$2zRj4W?QC0jr;p$Ug_B~TY5YxMb&ixsL z-W5pCPysv!vVWPD2*MJPv0$x*wZpGdQ77ok1%Ph4n>ps>x)!T8YS>8Cp=x1!mudk% z=%%W94Ku&5i*aX-z#<(y2iBf85<^gT|6L3lNz5T1W;p^1mFD_B!z4&%-9Es}rn*^G z%sIzt>8-ViXypjVAIf0byO&4*^@+Nwjxhr5;ZH0cDQ{=2ZoWaR2}S07*qoM6N<$g2GSPzW@LL diff --git a/modules/Game/ressources/tree.png b/modules/Game/ressources/tree.png new file mode 100644 index 0000000000000000000000000000000000000000..914cb5fbc10515e052d18d78edcadb200f5b5d39 GIT binary patch literal 528 zcmV+r0`L8aP)q z*G@x03`F-Y=w0Li0x3Wmgp$w`dJRZCgx-4(;u8?Pi%&H=M!w?VYByecW;}LWf7~aV z(=DA0T`i~LNXvPX9Fsm-Jms0{<$6Za%eLhsry?ba}`Mxvyt=< z8z6i?OT= 0 then + for y = dirt_start, dirt_end, -1 do + chunk:add_block(glm.vec3(x, y, z), dirt) end end + if stone_start >= 0 then + for y = stone_start, stone_end, -1 do + chunk:add_block(glm.vec3(x, y, z), stone) + end + end + end + end +end + +local tree_blocks = { + glm.vec3( 0, 0, 0), + glm.vec3( 0, 1, 0), + glm.vec3(-1, 2, -1), + glm.vec3(-1, 2, 0), + glm.vec3(-1, 2, 1), + glm.vec3( 0, 2, -1), + glm.vec3( 0, 2, 0), + glm.vec3( 0, 2, 1), + glm.vec3( 1, 2, -1), + glm.vec3( 1, 2, 0), + glm.vec3( 1, 2, 1), + glm.vec3(-1, 3, -1), + glm.vec3(-1, 3, 0), + glm.vec3(-1, 3, 1), + glm.vec3( 0, 3, -1), + glm.vec3( 0, 3, 0), + glm.vec3( 0, 3, 1), + glm.vec3( 1, 3, -1), + glm.vec3( 1, 3, 0), + glm.vec3( 1, 3, 1), + glm.vec3(-1, 4, -1), + glm.vec3(-1, 4, 0), + glm.vec3(-1, 4, 1), + glm.vec3( 0, 4, -1), + glm.vec3( 0, 4, 0), + glm.vec3( 0, 4, 1), + glm.vec3( 1, 4, -1), + glm.vec3( 1, 4, 0), + glm.vec3( 1, 4, 1), +} + +function MapGen:add_tree(chunk, tree_pos) + for i, p in ipairs(tree_blocks) do + local block = leaves + if i < 3 then + block = tree + end + local pos = tree_pos + p + if chunk:get_pos_hash(pos) then + chunk:add_block(pos, block) end end end diff --git a/modules/RenderEngine/src/mesh.lua b/modules/RenderEngine/src/mesh.lua index 94c2a57..3ebb4e5 100644 --- a/modules/RenderEngine/src/mesh.lua +++ b/modules/RenderEngine/src/mesh.lua @@ -67,7 +67,7 @@ function Mesh:apply_vertices(vertices) end function Mesh:render(dtime) - local pos, size = self.pos, self.size + local pos, size, rotation = self.pos, self.size, 0 if self.effect then if self.effect_lasts then @@ -86,6 +86,8 @@ function Mesh:render(dtime) size = size * math.pow(1 - self.effect_lasts / RenderEngine.mesh_effect_grow_time, 1) elseif self.effect == Mesh.EFFECT_FLYIN then pos = pos - glm.vec3(0, RenderEngine.mesh_effect_flyin_offset * self.effect_lasts / RenderEngine.mesh_effect_flyin_time, 0) + elseif self.effect == Mesh.EFFECT_ROTATE then + rotation = glfw.get_time() * RenderEngine.mesh_effect_rotate_speed * math.pi * 2 end end @@ -93,6 +95,7 @@ function Mesh:render(dtime) local model_matrix = 1 * glm.translate(pos) + * glm.rotate(rotation, glm.vec3(0, 1, 0)) * glm.scale(size) gl.uniform_matrix4f(gl.get_uniform_location(RenderEngine.shaders, "model"), true, model_matrix) -- 2.44.0