Minetest logo

IRC log for #minetest-dev, 2020-07-05

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

All times shown according to UTC.

Time Nick Message
06:35 calcul0n joined #minetest-dev
07:41 erlehmann joined #minetest-dev
07:45 NetherEran joined #minetest-dev
08:00 ShadowNinja joined #minetest-dev
08:01 Wuzzy joined #minetest-dev
10:00 absurb joined #minetest-dev
10:51 _Zaizen_ joined #minetest-dev
11:10 Fixer joined #minetest-dev
11:46 Kimapr joined #minetest-dev
11:53 oil_boi joined #minetest-dev
12:53 hecks joined #minetest-dev
12:54 hecks do I need a mutex on meshes when using them? https://a.cockfile.com/K1R82X_aaaaaaa.jpg
12:54 hecks I don't do anything that could modify them
12:55 hecks just cloning and concating
12:55 hecks and then drawing the result
12:56 sfan5 depends which class "owns" the meshes I'd say
12:57 hecks MapBlockMesh
12:57 hecks clientmap seems to have no problem drawing them without worrying about this
12:58 hecks but I'm getting straight up memory corruption
12:58 sfan5 maybe the meshgen threads can modify them?
12:59 hecks actually
12:59 hecks I've got unrelated threads dying because of this, almost immediately
13:00 hecks but gdb can continue past that point
13:04 hecks there is a commented out mutex lock in the mesh gathering part of renderMap() but that mutex no longer exists
13:05 hecks ah there we go, occasionally this pops up in the trace:
13:05 hecks #8  0x00000000004941bb in MapBlockMesh::MapBlockMesh(MeshMakeData*, irr::core::vector3d<short>) ()
13:05 ShadowBot https://github.com/minetest/minetest/issues/8 -- Saplings + Growing Trees by MarkTraceur
13:05 hecks oops
13:06 hecks then another thread dies, this time it's emerge
13:37 celeron55 are you sure you're not using a pointer to something someone else in the same thread will delete?
13:38 celeron55 i wouldn't expect to stumble upon any locking issues as almost everything related to rendering is done in the main thread
13:38 celeron55 (due to irrlicht and old opengl, obviously)
13:42 celeron55 if it happens quickly, i would expect valgrind's memcheck to be useful
13:45 hecks hold on, I think I've got indexing issues due to c++ modulus not actually being modulus
13:46 hecks that may have trashed stacks
13:50 Guest88825 joined #minetest-dev
14:19 hecks The mesh pointers are being relocated every frame somehow...?
14:25 celeron55 well, the meshes can be re-generated for various reasons
14:25 celeron55 in which case the entire MapBlockMesh is replaced with a new one
14:26 hecks but every frame, on a completely featureless flat map?
14:26 hecks let me stop time as well
14:26 celeron55 yeah it happens to get the mapblock edges right
14:26 celeron55 as when a new one comes in it can affect the generation of its neighboring ones
14:27 celeron55 once there are no transfers going on there should be no mesh generation happening
14:28 hecks and yet the pointers keep coming
14:28 celeron55 as you can probably imagine there's a "tile wall" of sorts between each mapblock, which is affected by both mapblocks and is handled currently as being part of one of the mapblocks
14:29 hecks now the pointers keep repeating
14:29 hecks as if something was double buffered
14:31 hecks that's what it looks like:  190558256 to 206981200, 206981200 to 190558256, repeat
14:31 hecks this is an irrlicht object and who knows how it's being allocated
14:31 hecks but... pointers shouldn't be yanked from under anyone
14:33 hecks hmmmmm wait
14:33 hecks could those be tile layers
14:33 hecks no that's stupid
14:33 hecks but then again MapBlockMesh::m_mesh is an array
14:38 hecks it shuts up when I look at the sky or the ground
14:47 hecks aaaaaah, more indexing gremlins
14:47 hecks signed mapblock positions are a loaded gun
14:57 hecks ok, so curiously, the trivial case of 1x1x1 batches (no-op) works
16:07 Warr1024 joined #minetest-dev
16:22 Lunatrius joined #minetest-dev
16:42 Flitzpiepe joined #minetest-dev
17:03 oil_boi 1x1x1 mapblocks?
17:10 Seirdy joined #minetest-dev
17:12 hecks yes
17:12 hecks so I'm getting this stuff to finally draw, but it's still crashing
17:15 hecks and, oops, didn't set ehm_static
17:30 Kimapr joined #minetest-dev
17:31 hecks so now it draws and it draws FAST, without even frustum culling
17:31 hecks but why the segfaults
17:32 hecks must be std maps being lousy
17:32 hecks gdb is being very vague about where it's dying, how do I make it less vague?
17:34 Kimapr catchsegv?
17:35 hecks sigsegv
17:35 hecks but all it gives me is a function name, and it's not even consistent with that
17:36 hecks that, or it's dying in more than one place
17:40 NetherEran joined #minetest-dev
17:48 hecks okay, exciting; it stopped crashing
18:00 Krock what are we going to to about the jumping issues?
18:00 Krock sfan5, rubenwardy ?
18:00 Krock it's blocking the release and that must somehow be solved...
18:02 Krock from testing, the two PRs in combination provided acceptable results. yet not perfect, this could probably be turned in 5.4.0-dev?
18:02 Krock *tuned
18:05 hecks works https://a.uguu.se/LnWRE4D0wDQw_batched.jpg
18:05 hecks most of the batches have been trimmed, mesh drawing is now a pitiful 0.4ms
18:06 hecks now todo: trim the fat from that "preprocess" step, and fix the glitches
18:06 Krock deadbeef
18:06 erlehmann joined #minetest-dev
18:07 hecks had to give the dev exe a bogus hash to differentiate it from all the other minetest executables I have installed
18:26 sfan5 Krock: the fixes are not perfect? I didn't notice anything in that direction
18:30 pgimeno hecks: nice progress!
18:30 sfan5 in any case 5.3.0 is fine to release with both of those fixes IMO
18:39 Krock hmm, looks like it's luck based
18:39 Krock https://krock-works.uk.to/u/movement-2020-07-05_20.33.27.mp4 <-- master
18:40 Krock https://krock-works.uk.to/u/movement-2020-07-05_20.36.11.mp4 <-- 5.2.0-dev
18:40 Krock sorry for bad VPS
18:43 hecks it's framerate based
18:49 sfan5 I have a stable 60 fps here and zero issues fast-climbing
18:54 Krock sneak glitch no longer works?
18:54 Krock alright okay
18:56 Krock nvm. applies the object properties in the wrong place
19:30 hecks back to the other problem, why does mapblockmesh give me a new mesh every frame
19:31 hecks I'm just walking in circles or moving the camera, there's no animation going on, time is stopped
19:35 Krock are you sure that it's regenerated, and not just recycled? the cache hit should be next to 100%
19:37 Zughy joined #minetest-dev
20:02 hecks The pointer is different, that's all I know
20:02 hecks another curious thing: mesh making ms in the profiler is almost constant
20:02 hecks 2ms every frame even though this is a flat server with nothing to do
20:03 hecks so what that does is... it consumes the mesher queue
20:03 hecks updateBlock is what feeds it
20:09 hecks so this is triggered by handleCommand_BlockData
20:09 hecks by network?
20:10 hecks if I comment that call out, it doesn't do that any more
20:10 hecks and while I have to nudge mapblocks so that they appear, they're good now and framerate is in the triple digits
20:12 _Zaizen_ joined #minetest-dev
20:14 celeron55 the server is sending mapblocks to the client that it thinks have updated in some way
20:20 hecks but there's literally nothing to update...
20:20 hecks and
20:20 hecks I fired up 5.2
20:22 hecks this... doesn't look good https://a.uguu.se/biGdlksszRN1_mesherms.jpg
20:22 sfan5 9ms to generate a single mesh once?
20:23 hecks no, this is all mesher work for the frame
20:23 hecks but there's absolutely nothing for it to work on, and it's receiving packets for it too
20:23 hecks this is very very bad
20:24 hecks let's say I'm getting 100 FPS, 5ms drawtime for this trivial scene
20:24 hecks 4.9ms of that is the MESHER
20:24 hecks well okay, maybe not
20:24 hecks the skybox is also eating some
20:25 pmp-p joined #minetest-dev
20:25 Krock joined #minetest-dev
20:25 longerstaff13 joined #minetest-dev
20:25 nore joined #minetest-dev
20:25 celeron55 joined #minetest-dev
20:25 Shara joined #minetest-dev
20:29 _Zaizen_ joined #minetest-dev
20:29 Icedream joined #minetest-dev
20:29 cheapie joined #minetest-dev
20:29 ssieb joined #minetest-dev
20:31 sfan5 with devtest in a flat world I get exactly zero mapblock updates when not doing anything
20:31 JTE joined #minetest-dev
20:31 behalebabo joined #minetest-dev
20:31 EvergreenTree joined #minetest-dev
20:31 basxto joined #minetest-dev
20:31 rubenwardy joined #minetest-dev
20:31 Calinou joined #minetest-dev
20:31 Kray joined #minetest-dev
20:31 aldum joined #minetest-dev
20:32 tuedel joined #minetest-dev
20:32 sofar joined #minetest-dev
20:32 kb1000 joined #minetest-dev
20:32 rom1504 joined #minetest-dev
20:32 BakerPrime joined #minetest-dev
20:32 T4im joined #minetest-dev
20:33 T4im joined #minetest-dev
20:33 BakerPrime joined #minetest-dev
20:33 rom1504 joined #minetest-dev
20:33 kb1000 joined #minetest-dev
20:33 sofar joined #minetest-dev
20:33 tuedel joined #minetest-dev
20:33 aldum joined #minetest-dev
20:33 Kray joined #minetest-dev
20:33 Calinou joined #minetest-dev
20:33 rubenwardy joined #minetest-dev
20:33 basxto joined #minetest-dev
20:33 EvergreenTree joined #minetest-dev
20:33 behalebabo joined #minetest-dev
20:33 JTE joined #minetest-dev
20:33 ssieb joined #minetest-dev
20:33 cheapie joined #minetest-dev
20:33 Icedream joined #minetest-dev
20:33 _Zaizen_ joined #minetest-dev
20:33 Shara joined #minetest-dev
20:33 celeron55 joined #minetest-dev
20:33 nore joined #minetest-dev
20:33 longerstaff13 joined #minetest-dev
20:33 Krock joined #minetest-dev
20:33 pmp-p joined #minetest-dev
20:33 Zughy joined #minetest-dev
20:33 erlehmann joined #minetest-dev
20:33 Seirdy joined #minetest-dev
20:33 Flitzpiepe joined #minetest-dev
20:33 Lunatrius joined #minetest-dev
20:33 Warr1024 joined #minetest-dev
20:33 hecks joined #minetest-dev
20:33 oil_boi joined #minetest-dev
20:33 Wuzzy joined #minetest-dev
20:33 ShadowNinja joined #minetest-dev
20:33 calcul0n joined #minetest-dev
20:33 oiaohm joined #minetest-dev
20:33 olliy joined #minetest-dev
20:33 jomat joined #minetest-dev
20:33 Taoki joined #minetest-dev
20:33 jonadab joined #minetest-dev
20:33 Amaz joined #minetest-dev
20:33 el joined #minetest-dev
20:33 Foz joined #minetest-dev
20:33 MarwolTuk joined #minetest-dev
20:33 vesper joined #minetest-dev
20:33 Ritchie joined #minetest-dev
20:33 indiana joined #minetest-dev
20:33 pgimeno joined #minetest-dev
20:33 ircSparky joined #minetest-dev
20:33 Edgy1 joined #minetest-dev
20:33 ghoti joined #minetest-dev
20:33 clavi joined #minetest-dev
20:33 IcyDiamond joined #minetest-dev
20:33 dzho joined #minetest-dev
20:33 search_social joined #minetest-dev
20:33 madwizard joined #minetest-dev
20:33 ShadowBot joined #minetest-dev
20:33 Vadtec joined #minetest-dev
20:33 thePalindrome joined #minetest-dev
20:33 TC01 joined #minetest-dev
20:33 Sokomine joined #minetest-dev
20:33 sfan5 joined #minetest-dev
20:33 kevinsan joined #minetest-dev
20:33 Thomas-S_ joined #minetest-dev
20:33 xerox123 joined #minetest-dev
20:33 bigfoot547 joined #minetest-dev
20:33 Qiangong2[m] joined #minetest-dev
20:33 texmex joined #minetest-dev
20:33 Awkor[m] joined #minetest-dev
20:33 bodqhrohro joined #minetest-dev
20:33 nashimus joined #minetest-dev
20:34 hecks what about the mesher
20:34 Wuzzy joined #minetest-dev
20:34 vesper joined #minetest-dev
20:35 sfan5 can't find it in the profiler
20:35 hecks Client: Mesh making, are you sure it isn't there?
20:35 Lunatrius joined #minetest-dev
20:35 olliy joined #minetest-dev
20:35 jonadab joined #minetest-dev
20:35 Amaz joined #minetest-dev
20:35 indiana joined #minetest-dev
20:35 madwizard joined #minetest-dev
20:35 search_social joined #minetest-dev
20:35 dzho joined #minetest-dev
20:35 texmex joined #minetest-dev
20:35 xerox123 joined #minetest-dev
20:36 sfan5 oh it's there, but not showing any values
20:37 hecks same machine or dedicated server?
20:37 Zughy joined #minetest-dev
20:37 ghoti joined #minetest-dev
20:37 clavi joined #minetest-dev
20:37 vesper11 joined #minetest-dev
20:37 sfan5 singleplayer
20:38 Foz joined #minetest-dev
20:38 MarwolTuk joined #minetest-dev
20:38 pgimeno joined #minetest-dev
20:38 Edgy1 joined #minetest-dev
20:39 Zughy joined #minetest-dev
20:39 nashimus joined #minetest-dev
20:39 ircSparky joined #minetest-dev
20:39 Vadtec joined #minetest-dev
20:40 calcul0n joined #minetest-dev
20:40 jomat joined #minetest-dev
20:40 bodqhrohro joined #minetest-dev
20:40 bigfoot547 joined #minetest-dev
20:40 Thomas-S_ joined #minetest-dev
20:40 ShadowBot joined #minetest-dev
20:40 hecks something was up with the profiler print interval, now it's printing a more sane value
20:40 thePalindrome joined #minetest-dev
20:40 hecks but there's still mesher work unaccounted for
20:41 kevinsan joined #minetest-dev
20:41 IcyDiamond joined #minetest-dev
20:42 TC01 joined #minetest-dev
20:42 Sokomine joined #minetest-dev
20:42 sfan5 joined #minetest-dev
20:44 kb1000 joined #minetest-dev
20:45 hecks well okay, 5.2 is kind of normal with a truly minimal setup, with a send range of 1
20:47 hecks but I don't have my mesh comparer there to really verify it
20:47 hecks now the same setup in 5.3 still remakes meshes that have no business being remade
20:50 Lunatrius joined #minetest-dev
20:50 olliy joined #minetest-dev
20:50 jonadab joined #minetest-dev
20:50 Amaz joined #minetest-dev
20:50 indiana joined #minetest-dev
20:50 madwizard joined #minetest-dev
20:50 search_social joined #minetest-dev
20:50 dzho joined #minetest-dev
20:50 hecks block send distance of 1, stationary, flying
20:50 hecks *still* re-sending blocks
20:55 hecks only when I fly far enough above the map to not have any geometry within the send distance, that's when it stops
20:57 hecks currently trying to understand how blocks are picked for sending, and I can't find any "dirty" condition
20:58 texmex joined #minetest-dev
20:58 Qiangong2[m] joined #minetest-dev
20:58 Awkor[m] joined #minetest-dev
21:15 hecks okay so SetBlockNotSent is the dirty bit
22:19 appguru joined #minetest-dev
22:20 paramat joined #minetest-dev
22:21 paramat merging #10025
22:21 ShadowBot https://github.com/minetest/minetest/issues/10025 -- Apply camera smoothing to 'not touching_ground' stepheight by paramat
23:34 hecks joined #minetest-dev

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