Time Nick Message 01:31 Zeno` kahrl, what's the issue with wield item? 01:32 kahrl since the the_game refactoring, Camera::wield is called every frame 01:32 kahrl that's because update_wielded_item_trigger is now set to true every frame 01:34 Zeno` yes I see 01:34 Zeno` hmm 01:35 kahrl but it doesn't really matter 01:35 kahrl Camera::wield is quite fast if nothing changed 01:36 kahrl (I only noticed it when I changed it, because the version I made wasn't that fast) 01:36 Zeno` I'll make a note anyway 01:36 Zeno` for another day 01:37 Zeno` well if nothing has changed it's simply an extra function call 01:37 Zeno` probably quicker to get rid of the conditionals in game.cpp and just always call it heh 01:37 kahrl yep 01:38 kahrl although Camera::wield doesn't _immediately_ bail out, instead it calls into IItemDefManager and so on and does some comparisons 01:39 kahrl the newest version in my wieldnodemesh branch (not online yet) bails out immediately 01:41 Zeno` ok, so I don't forget I'll remove the conditions in game.cpp in my branch where I've renamed the class for hmmm and wait 01:43 Zeno` the branch that I seem to have lost 01:46 Zeno` oh, I just stashed them 01:49 Zeno` actually I don't like that. I'll wait to see what you do 01:51 kahrl why don't you like it? 01:54 Zeno` I don't like what I was about to do :) 01:54 Zeno` sometimes I talk out aloud 01:54 Zeno` removing the conditionals is fine 01:54 kahrl oh ok :) 01:58 Zeno` lol I can't see any difference when I add a TimeTaker 02:06 hmmmm are you using the appropriate precision? 02:15 Zeno` hmmmm, of course 02:16 Zeno` The must logically be a difference but unless I do fancy stats I can't see it 02:16 Zeno` Their* 02:17 Zeno` Geez, I need sleep 02:17 Zeno` There* grr 02:38 hmmmm what precision were you using? 02:41 Zeno` micro 02:41 hmmmm try nano 02:41 Zeno` ok 02:50 Zeno` yes, I can see the difference there 02:58 hmmmm how much of a difference is there 02:58 hmmmm ?? 03:09 Zeno` didn't keep it... about 1000ns 03:09 Zeno` I've put the flag back 03:10 Zeno` actually I can scroll up in bash... about 1500-2000ns 03:32 hmmmm might not seem like much to you but that's actually a lot of time 03:32 hmmmm do you realize how much computation can get done in 1500ns? 03:33 Zeno` yep, which is why I added it all back (properly) 03:34 hmmmm to put it into perspective, on a core i7 you could access the main memory in 60ns 03:35 hmmmm an L1 cache hit is like 0.5ns 03:36 hmmmm http://software.intel.com/sites/products/collateral/hpc/vtune/performance_analysis_guide.pdf 03:49 Zeno` interesting paper 03:52 Zeno` https://github.com/Zeno-/minetest/commit/0ba05f7ec6ffbd118fec4be6938f415966a06afd#diff-18513665750ef5adf42b5ec29e14162eR3647 04:34 hmmmm hmm 04:34 hmmmm thinking of a way i could modify the midpoint circle algorithm to create bumps 04:35 Zeno` ages (and ages) ago I modified Bresenham's LDA to rotate textures 05:08 hmmmm lol 05:08 hmmmm http://s8.postimg.org/fzv9iyl7p/map_seed_2694506163359195447.png 05:08 hmmmm 1d perlin noise! 05:10 hmmmm http://s29.postimg.org/7fd3beeif/map_seed_6871815380124517720.png 05:11 hmmmm outline of ORE_CLAYLIKE! 05:12 hmmmm http://s12.postimg.org/col7r8kz1/map_seed_6871815380124517720.png 05:12 hmmmm problem with my algorithm^ 05:12 hmmmm fauk 05:26 Zeno` looks nice though :) 05:29 hmmmm i fixed it by recording the original absolute radius, then 7/8ths of the way i begin linearily interpolating the calculated radius with the original radius 05:30 hmmmm excuse the sloppy code: http://fpaste.org/147350/14149925/ 05:35 hmmmm another way i could get the blob thing is to take a circle of 2d perlin noise and do a cutoff 05:36 hmmmm boy that would've been a whole lot easier 05:43 Zeno` shaved about 9000-10000ns off main run loop (client) 05:48 hmmmm sweet 06:41 Zeno` kahrl, 1795 ok? 06:41 Zeno` #1795 06:41 ShadowBot https://github.com/minetest/minetest/issues/1795 -- Address issues related to refactoring the_game by Zeno- 06:55 kahrl Zeno`: looks good 06:56 Zeno` IF you can merge that'd be great; I've made changes to how keyboard handling works and it depends on that PR :) 06:56 Zeno` e.g. 14:06:35: INFO[main]: Update player control took 4360ns <--before after-->14:34:21: INFO[main]: update player control took 401ns 06:57 kahrl well I need another dev to agree 06:57 Zeno` yes ok :) 06:57 Zeno` cheers 06:58 Zeno` you could always call client "startup" haha 06:58 kahrl :D 07:32 hmmmm yeah looks good 07:53 Zeno` kahrl, I'll make a branch on my on repo tonight and memo you to look 07:53 Zeno` oh, hmmm has given thumbs up as well :) 07:56 Zeno` I need to make isAnyKeyDown() and wasAnyKeyDown() functions... maybe tomorrow 09:40 Zeno` any core devs here? 11:25 Zeno` celeron55, can you look at #1795 please? I'd like it merged mainly because of the performance regression (even though it's very small) 11:25 ShadowBot https://github.com/minetest/minetest/issues/1795 -- Address issues related to refactoring the_game by Zeno- 11:26 Zeno` hmmmm and kahrl are ok with it 11:28 Zeno` If it wasn't for performance improvement in other places it would have been not so small 12:47 kilbith Zeno` : when you're changing the keys trough the in-game formspec, you can't go back to the pause menu when you push 'Esc'; you're forced to click on 'cancel' or 'save' and it close radically the pause menu instead of go back to the main pause menu. 12:47 kilbith through* 12:48 kilbith enough clear ? 12:51 Zeno` yes I am aware of that issue 12:52 Zeno` I asked ShadowNinja if it was intended behaviour or not, and it's probably not intended 12:52 Zeno` I've been meaning to look at it since I asked SN... just haven't got there 12:52 Zeno` Can you open an issue? 12:53 kilbith yes 12:53 Zeno` thanks (I'm just being lazy heh) 12:55 Zeno` well I'm not really... it's just that I'm almost asleep 15:44 kahrl https://github.com/minetest/minetest/pull/1799 15:45 kahrl #1799 15:45 ShadowBot https://github.com/minetest/minetest/issues/1799 -- Implement WieldMeshSceneNode which improves wield mesh rendering by kahrl 15:45 kahrl there we go :) 15:46 kahrl this is still kinda WIP but testing would be appreciated anyway 15:46 Zeno` wow 15:46 Zeno` does this improve performance? 15:47 kahrl I haven't measured yet 15:47 Zeno` It certainly looks good 15:50 Zeno` What's "was_under_zero"? 15:52 kahrl that's whether the wield change timer was < 0 15:53 kahrl that timer runs from -0.125 to 0.125, when it passes 0 the wield mesh is changed 15:54 Zeno` oh I see (I think) 15:55 Zeno` before dtime... yeah that makes sense 15:56 Zeno` Just scrolling through.... I like it 16:04 * kahrl loads up dreambuilder with all_vanessae texture pack and preload_item_visuals... see you in a few hours ;) 16:11 Zeno` hours? 16:12 kahrl ok, not quite *that* bad :P 16:12 kahrl just finished 16:12 Zeno` :D 16:12 kahrl https://gist.github.com/kahrl/9e0a75d07c9bba3dafe0 16:17 hmmmm has anyone ever thought of optimizing meshes that are generated? 16:17 hmmmm merging redundant verticies in particular 16:17 VanessaE "all_vanessae"? you mean HDX or something? :P 16:17 Zeno` nah I think he downloaded "you" 16:17 kahrl yeah... that's what the directory is called on my disk ;) 16:17 kahrl Zeno`: lol 16:17 VanessaE haha 16:18 VanessaE Zeno`: omg, there's another copy of me floating around? the world will never know what hit it ;) 16:18 Zeno` VanessaE, cheese doodles 16:18 VanessaE all out 16:18 VanessaE but I have string cheese! 16:18 VanessaE :) 16:21 kahrl hmmmm: you mean running IMeshManipulator::createMeshWelded() on them? could be worth trying 16:21 hmmmm holy over-80-columns 16:22 hmmmm mapblock_mesh.cpp:1445 16:22 hmmmm that doesn't stick out or anything 16:23 hmmmm kahrl, see the thing is, I don't know if the rendering speedup would be worth the extra time spent generating meshes 16:23 hmmmm for what it's worth, minecraft doesn't weld their meshes 16:27 kahrl I wonder if there's a simple way to weld a mesh in-place rather than copying it 16:27 kahrl can't find one 16:28 kahrl ah okay, irrlicht just does the straightforward thing and checks every pair of vertices (quadratic time) 16:29 kahrl that should be easy to reimplement in MeshCollector::append, but doesn't sound too great 16:29 hmmmm *is* there a clever algorithm to mesh welding? 16:30 kahrl maybe something something octrees something something 16:31 VanessaE kahrl isn't too far off. 16:31 VanessaE blender's decimate filter does something like that 16:32 hmmmm using a data structure like that is a pretty heavyweight solution 16:32 hmmmm i'd rather not.. 16:39 kahrl http://adtsai.blogspot.de/2008/04/optimising-vertex-welder-adventures.html 21:10 kilbith sfan5 : what about #1732 ? 21:10 ShadowBot https://github.com/minetest/minetest/issues/1732 -- Add (optional) client-side saving of server map to disk by sfan5 21:40 RealBadAngel hi 21:47 kahrl hi RBA 21:47 RealBadAngel whats up? 21:48 kahrl got the wieldmesh node stuff to a usable state today: #1799 21:48 ShadowBot https://github.com/minetest/minetest/issues/1799 -- Implement WieldMeshSceneNode which improves wield mesh rendering by kahrl 21:50 kahrl other than that I didn't get much accomplished today, too lazy :P 21:56 RealBadAngel seems ok 21:56 RealBadAngel one thing, for tiles im used to count meshbuffers, here i can see getMaterialCount() 21:57 kahrl basically the same in this case 21:57 RealBadAngel propably yes 21:57 kahrl it's just that IMesh uses getMeshBufferCount() and IMeshSceneNode uses getMaterialCount() 21:58 kahrl WieldMeshSceneNode is using a child IMeshSceneNode 21:58 RealBadAngel while your at it, there was an issue about wielded, about clipping bigger models 21:58 RealBadAngel have you saw it? 21:58 kahrl yeah I fixed that 21:59 RealBadAngel good 21:59 jin_xi for BFG 21:59 kahrl I changed the far value 100 to 1000 (so the numerical precision of the Z buffer will be similar to the main scene manager) 22:01 RealBadAngel im coding now the highlighted and cracked node (in separate scene node) 22:01 kahrl nice 22:02 kahrl btw, about the problem with npot2 textures. Should I care about them? 22:03 RealBadAngel whats the problem with them? 22:03 RealBadAngel scale? 22:04 RealBadAngel but in fact everybody knows what sizes textures should be anyway 22:04 kahrl basically I'm treating them as if they were the next higher power of two resolution, which leads to artifacts 22:04 kahrl let me make a screenshot 22:05 RealBadAngel ok 22:07 kahrl RealBadAngel: http://imgur.com/VzYxpTY 22:07 kahrl that's a 15x15 texture on an 16x16 extrusion mesh 22:07 kahrl -an +a 22:08 RealBadAngel but everything works properly for po2 ? 22:08 kahrl yes 22:08 kahrl s/16x16/32x32/ actually 22:09 RealBadAngel so imho its ok, there are no 15x15 textures, there was once such texture in minetest game, and that was considered a bug 22:09 kahrl alright 22:10 kahrl if people complain about this problem I'll change the mesh selection routine so it renders e.g. a 15x15 texture on a 256x256 mesh or something like that 22:10 RealBadAngel easier to run scale image in gimp than do such gimmicks at runtime ;) 22:12 RealBadAngel btw i have an idea about highlighted and cracked 22:12 RealBadAngel atm im showing a bit bigger models to cover original 22:12 RealBadAngel what if mapblock mesh will actualy NOT display the cracked one at all? 22:13 kahrl wouldn't that mean you'd have to rebuild the mapblock mesh, the very thing you wanted to avoid? 22:13 iqualfragile_ who uses non po2 images? 22:14 RealBadAngel iqualfragile_, nobody 22:14 iqualfragile_ so what is the problem? 22:14 RealBadAngel kahrl, indeed, another idea landed in trash ;) 22:14 iqualfragile_ implement it like that, wait for bug report, ignore bug report 22:16 RealBadAngel or display something like "Warning! npot2 texture detected!" in errorstream to avoid bug reports :) 22:16 kahrl RealBadAngel: instead of making it bigger, you could play with polygon offset perhaps 22:17 iqualfragile_ can't we just drop some particles? 22:17 iqualfragile_ instead of a crack 22:23 RealBadAngel iqualfragile_, thats also my idea, i like highlighting + particles 22:26 RealBadAngel but many seems to just love cracks, so i guess it will be done with settings