Minetest logo

IRC log for #minetest-dev, 2022-08-22

| Channels | #minetest-dev index | Today | | Google Search | Plaintext

All times shown according to UTC.

Time Nick Message
00:15 YuGiOhJCJ joined #minetest-dev
00:55 diceLibrarian joined #minetest-dev
01:01 fluxionary joined #minetest-dev
01:01 olliy joined #minetest-dev
04:00 MTDiscord joined #minetest-dev
04:50 calcul0n joined #minetest-dev
08:02 Fleckenstein joined #minetest-dev
08:25 appguru joined #minetest-dev
08:47 Fixer joined #minetest-dev
09:46 YuGiOhJCJ joined #minetest-dev
09:59 proller joined #minetest-dev
10:14 YuGiOhJCJ joined #minetest-dev
10:26 HuguesRoss joined #minetest-dev
10:34 Soni joined #minetest-dev
12:40 proller joined #minetest-dev
13:24 Desour joined #minetest-dev
13:24 proller joined #minetest-dev
15:32 Fleckenstein joined #minetest-dev
16:05 Alias joined #minetest-dev
16:10 appguru joined #minetest-dev
17:52 Fixer joined #minetest-dev
18:20 hmmmm joined #minetest-dev
18:20 hmmmm hi
18:20 MTDiscord <ROllerozxa> hmmmm hi
18:21 sfan5 o/
18:21 hmmmm is it okay if i just hang around you guys?  miss you a lot, but i don't think i'll be contributing any code
18:23 celeron55 well if you do it quietly enough, it's not off topic?
18:24 hmmmm indeed it wouldn't be.  can't believe you're still around, hi
18:25 celeron55 hi. of course i am. i'm like a glue stain on clothes
18:27 hmmmm i don't know.  i've still got some unfinished business with envlock, mapgen, and decorations.  i have gone through a lot, and i'm starting to get my life back together.  at some point i'd like to work on all this.
18:27 hmmmm is paramat == paradust?
18:29 rubenwardy No, Paramat left a year or so ago
18:29 kilbith hey hmmmm
18:29 kilbith good to see you
18:29 hmmmm hey kilbith, ruben
18:29 nrz hey welcome back ?
18:30 hmmmm lol nerzuel
18:30 kilbith have you seen the shadows and postprocessing?
18:30 MTDiscord <Jordach> you wouldn't believe it hmmmm but i've been working on a mapgen
18:30 hmmmm sorry about getting upset about the code cleanup PRs.  my main issue was that it killed the git history.  I guess we gotta start out fresh sometimes, huh?
18:30 hmmmm incredible
18:31 MTDiscord <Jordach> i also found our "perlin" isn't reference "perlin"
18:31 MTDiscord <Jordach> and has some slowness issuies
18:31 hmmmm I doubt the mapgen I had in mind before I left is going to be compatible with LuaVoxelManip
18:31 kilbith hmmmm: https://www.youtube.com/watch?v=DsGd1X9RlOE
18:31 MTDiscord <Jordach> the C++ method is basically the same as a LuaVM
18:32 hmmmm yeah, we know, celeron set the precedent for using a shortcut to generate perlin noise a long time ago.  it's just so much more computationally efficient and doesn't hurt the results much.
18:33 MTDiscord <Jordach> it has a few problems, in that minetest's modified perlin has some bad issues
18:33 hmmmm the only way I could think of how to further optimize our perlin noise is by reusing already computed noise values in earlier iterations
18:33 hmmmm oh it does??  :(
18:33 MTDiscord <Jordach> it's slow for 3d noise
18:33 MTDiscord <Jordach> like 20ms slow for a standard 80x80x82 area
18:33 hmmmm just FYI, I didn't computationally change perlin noise from celeron's
18:34 MTDiscord <Jordach> it's not taking advantage of any compiler benefits even at -03
18:34 hmmmm uh oh
18:34 hmmmm one of the long stretch goals was to use AVX512 and NEON intrinsics
18:34 hmmmm I figured it at least had -O3 cpu optimizations
18:34 MTDiscord <Jordach> my mapgen is more akin to realistic terrain built on heightmap tech with 3d noise decorators
18:35 MTDiscord <Jordach> i profiled with TimeTaker and my current prototype runs about 50% faster than v7 or carpathian
18:35 hmmmm nice
18:35 hmmmm I'll have to take a look at some point
18:35 MTDiscord <Jordach> it's fast, provides realistic terrain
18:36 MTDiscord <Jordach> and is sized to realistic heights
18:36 MTDiscord <Jordach> meaning multiple kilometers of mountain
18:36 MTDiscord <Jordach> oceans aren't puddle sized either
18:36 hmmmm that's something I always was trying to achieve, but the large scale perlin noise meant that it would create boring landscapes
18:37 MTDiscord <Jordach> the trick is to mix multiple 2d noise scales
18:37 MTDiscord <Jordach> and use those as mini biomes
18:37 hmmmm if you added more iterations, it would encounter the same exact issues as if you just had smaller scale noise
18:37 MTDiscord <Jordach> hills, plains, mountains - ridge cuts
18:37 hmmmm yeah i've tried all that with v7...
18:37 MTDiscord <Jordach> basically multiple seeds at differing scales solves it well
18:37 hmmmm if it works, it works and I'm really happy
18:37 MTDiscord <Jordach> i've even experimented with pathfinding rivers
18:37 MTDiscord <Jordach> as in vertice based pathfindin g
18:38 hmmmm it's just that I figured the approach would need to become more procedural in nature
18:38 hmmmm like how minecraft does it
18:38 MTDiscord <Jordach> i throw a shitload of points onto a 2d plane then shrink wrap it
18:38 hmmmm top-down rather than bottom-up
18:38 MTDiscord <Jordach> via the getSpawnPos()
18:38 hmmmm nice, and there aren't any continuity issues?
18:38 MTDiscord <Jordach> nope
18:38 hmmmm incredible
18:38 MTDiscord <Jordach> the original version had some issues
18:38 hmmmm bravo :)
18:38 hmmmm no kidding :)
18:38 MTDiscord <Jordach> like getting stuck in infinite loops
18:39 hmmmm that's why the original rivers were carved using perlin noise
18:39 MTDiscord <Jordach> it also sucked due to it taking 20-30 seconds at start up
18:39 hmmmm oh, original version with yours
18:39 MTDiscord <Jordach> to pregenerate river paths
18:39 hmmmm are we still using v3s16?
18:39 MTDiscord <Jordach> yes
18:39 hmmmm hehe
18:39 MTDiscord <Jordach> i've built mine with v3s32
18:39 hmmmm yeah figures
18:39 MTDiscord <Jordach> so the moment that infinite world patch drops in my experimental mapgen works
18:40 MTDiscord <Jordach> it's also heightmap for a reason: farmesh
18:40 hmmmm if you were going to implement your own noise instead of use perlin.cpp, might as well do things the "right way" from scratch
18:40 MTDiscord <Jordach> i already did that
18:40 hmmmm right
18:40 MTDiscord <Jordach> ken's implementation has a few issues
18:40 MTDiscord <Jordach> like looping at certain points
18:40 hmmmm not familiar with ken.  is he new?
18:40 MTDiscord <Jordach> ken perlin
18:40 hmmmm oh
18:41 MTDiscord <Jordach> ie 1/64000 will have issues at 64001/64000 being the same as 1/64000
18:41 rubenwardy :D
18:41 MTDiscord <Jordach> meaning the mapgen loops
18:41 MTDiscord <Jordach> we really don't want that
18:41 MTDiscord <Jordach> ideally, it needs to be between 0-1
18:41 MTDiscord <Jordach> with something like f32 or even f64 precision
18:41 hmmmm sounds like I need to brush up on the state of the art before doing anything at all
18:42 MTDiscord <Jordach> https://github.com/Jordach/minetest/tree/mg_reverb go have a play with iot
18:42 hmmmm the mapgen enhancements that I was working on right before I left were to make multiple passes instead of generating a chunk in one go
18:42 MTDiscord <Jordach> requires a somewhat older irrlichtMT to get goinbg
18:42 MTDiscord <Jordach> sometime from march 2022 will compile it
18:42 hmmmm heh, still using irrlicht
18:42 hmmmm never moved to openscenegraph, I guess
18:43 rubenwardy we've forked Irrlicht and massively reduce its size
18:43 hmmmm nice
18:43 MTDiscord <Jordach> mg_reverb.cpp and it's header are where the secret sauce lies
18:43 hmmmm but you're still lacking a lot of stuff you get "for free" with a more professional 3d library
18:43 rubenwardy there's rumours of replacing it with bgfx/OpenGL/something else, but there have been for a long while
18:43 MTDiscord <GreenXenith> Maybe once the menu is done
18:43 hmmmm there's a reason why Build-A-World slapped the shit out of us in terms of graphics
18:44 rubenwardy forking Irrlicht has also allowed us to fix longstanding issues, such as with certain keyboard layouts and copy+paste
18:44 hmmmm they also had incredibly talented shader dudes
18:44 rubenwardy BAW was made by someone with a PhD in computer graphics
18:44 MTDiscord <Jordach> lemme see if i can find some recent screenshots of reverb
18:44 rubenwardy or masters
18:44 kilbith BAW is all about the graphics and that's it
18:44 hmmmm indeed, superficial, that's why I never truly considered it a threat
18:45 hmmmm I figured they might move on from fancy graphics but it seems not
18:45 hmmmm thanks guys.  I've gotta check this out a lot more later on.  I'm technically supposed to be at work right now heh
18:45 kilbith we have x2048 now, who is more talented than RBA :]
18:46 hmmmm heh whoa
18:46 MTDiscord <Jordach> https://cdn.discordapp.com/attachments/747163566800633906/1011345554929897542/unknown.png
18:46 kilbith (not too difficult tbhà
18:46 MTDiscord <Jordach> take a look hmmmm
18:46 hmmmm I work in MA as a researcher for a university now :)
18:46 hmmmm I am into cybersecurity far more than graphics or programming
18:46 MTDiscord <Jordach> yes those cliffs follow the natural heightmap and are 3d noise
18:46 hmmmm i still have a ton of unfinished business with minetest though!
18:47 hmmmm ook cya later!
18:48 kilbith see you
18:49 hmmmm just to make sure, our mapnodes are still 32 bit right?
18:50 hmmmm also, RIP RBA
18:50 hmmmm <3
18:52 MTDiscord <Jordach> yes
18:52 MTDiscord <Jordach> hmmmm, here's the original algo for my river path finder https://gist.github.com/Jordach/6d9f08aef70100b49507e05257ddb70e
18:52 MTDiscord <Jordach> i saved it in case i ever wanted to retry pathfinding over actual simulated erosion
18:53 hmmmm thanks!
18:53 MTDiscord <Jordach> i'm working on a new implementation that lets me infinitely tile it
18:53 MTDiscord <Jordach> and prevent merging of rivers because it's a very dumb algo
18:53 hmmmm I had this crazy idea on how to approach river generation
18:53 hmmmm probably not natural looking at all but
18:54 MTDiscord <Jordach> i also managed to optimise the generation of voxel data by using AABB like bounding boxes
18:54 hmmmm so you know how I considered changing the mapgen to a top-down approach where a low-res bitmap is generated for the entire world at creation time, storing the major procedurally generated (non-perlin) features?
18:54 MTDiscord <Jordach> to only generate rivers in the local area
18:54 MTDiscord <Jordach> there's a lua mapgen that does that
18:55 hmmmm i see
18:55 hmmmm well basically the map would consist of multiple "layers" of terrain detail
18:55 hmmmm the rivers would be perlin noise passed through a gradient function that I had optimized trying to create cliffs
18:55 MTDiscord <Jordach> cliffs still fucking bother me to this day
18:56 hmmmm in order to make some kind of edge detection
18:56 MTDiscord <Jordach> the easiest solution would to just test 2d clouds and just drop their heights
18:56 MTDiscord <Jordach> is it lazy, yes
18:56 MTDiscord <Jordach> does it produce a reasonable cliff face? also yes
19:15 sfan5 rubenwardy: you can produce a functioning android build
19:15 sfan5 but might be beetter
19:15 sfan5 but might be better to wait for 5.6.1*
19:15 sfan5 but we actually need to work on that...
19:56 Desour joined #minetest-dev
20:04 calcul0n_ joined #minetest-dev
20:29 YuGiOhJCJ joined #minetest-dev
20:36 proller joined #minetest-dev
22:08 Desour_ joined #minetest-dev
22:31 YuGiOhJCJ joined #minetest-dev
22:32 panwolfram joined #minetest-dev
22:44 YuGiOhJCJ joined #minetest-dev
22:55 YuGiOhJCJ joined #minetest-dev
23:26 AliasAlreadyTake joined #minetest-dev
23:54 cranezhou joined #minetest-dev

| Channels | #minetest-dev index | Today | | Google Search | Plaintext