Time Nick Message 07:48 RealBadAngel https://github.com/minetest/minetest/pull/1487 07:48 RealBadAngel ^^some changes to mapblock mesh 08:18 RealBadAngel celeron55, here? 09:17 celeron55 RealBadAngel: so whate's the benchmark? 09:17 celeron55 where's* 09:18 celeron55 (no, i don't know how i could write that so wrong) 09:19 celeron55 RealBadAngel: so where's the benchmark? <- i'll just repeat this to not sound so stupid 09:21 RealBadAngel we are tryin the code now 09:22 RealBadAngel definitely we can play with much larger view distances 09:22 VanessaE celeron55: I'm testing that pull now. I'd have to guess a 20% fps improvement with no visible regressions, at least on my R9 280X, with one exception - HavenNG's water is dark, almost black at close range (parallax mapping issue?), but default textures and HDX look fine. 09:23 RealBadAngel ahh, the water, i have to fix it 09:23 VanessaE what is the cause of the black water? 09:23 RealBadAngel forget that, its the issue with my normalmap 09:23 VanessaE ok 09:23 VanessaE so not your code. 09:26 VanessaE one thing I have noticed is that no matter how much improvement is done, there is an awful lot of work being done by the CPU to render the display, enough to peg one core at 100%, far more than I would expect should be needed even with a fairly simple scene and default textures with this badass GPU 09:26 VanessaE which in turn is limiting the fps/view range 09:27 VanessaE by "default textures" I should clarify: default textures, no shaders, no filters, no effects. 09:31 VanessaE the standard "acid test", looking north from the spawn on my Creative server: 32-37 fps (variable), 41m view range. default textures. 09:33 VanessaE it re-tuned itself slightly, 30-33 fps, 44.5m range. 09:33 VanessaE only 39 entities in the area, btw. 09:40 RealBadAngel celeron55, so whats your opinion on the code? 09:41 celeron55 well at least you totally bastardized TileSpec which was intended to be a very simple data structure that is fast to copy in all cases 09:42 celeron55 that is why i really want to see performance as objective numbers 09:43 RealBadAngel tilespec is the right place to hold all the data needed to display it 09:43 RealBadAngel and we dont really need to copy it 10:09 VanessaE RealBadAngel: got a glitch here... 10:10 VanessaE normalmaps for fenceposts are rotated 90 10:11 VanessaE 90 degrees* 10:12 VanessaE seems to affect anything using the fence drawtype. 10:12 VanessaE (if it has a normalmap in the texture pack) 10:17 RealBadAngel can you make a screenshot before and after? 10:27 VanessaE sure, gimme a few mins. 10:29 RealBadAngel that shouldnt happen at all, but maybe fences are using rotation modifiers, instead of rotating the vertices 10:32 VanessaE before (i.e. git HEAD): http://digitalaudioconcepts.com/vanessa/hobbies/minetest/screenshots/Screenshot%20-%2007152014%20-%2006%3a32%3a11%20AM.png 10:32 VanessaE after (with your patch): http://digitalaudioconcepts.com/vanessa/hobbies/minetest/screenshots/Screenshot%20-%2007152014%20-%2006%3a29%3a41%20AM.png 10:34 RealBadAngel yeah, the drawtype needs to be fixed 10:38 VanessaE celeron55: on a second look, I'd give RBA's code an estimate of 5% improvement, not 20%, at least when using HDX. this CPU core being zonked to 100% is definitely limiting fps at this point. gotta be. 10:39 VanessaE now that I'm back on mainline, the same scene gives me maybe a slightly lower fps with a similar view range as with his code 10:39 RealBadAngel propably you will notice bigger difference with real huge amount of different and animated nodes around 10:40 VanessaE in this scene, the only animation I can see is the result of shaders waving stuff around, and I think there's some flowing water off to one side, just off-camera. 10:41 VanessaE (it's the same scene you saw in those screenshots above, in fact) 10:41 RealBadAngel i mean animated textures, not geometry shaders 10:41 VanessaE (except I usually pitch up a bit) 10:41 VanessaE yes, I know. 10:41 VanessaE hence the mention of the flowing water. 12:14 sapier RealBadAngel: still our main code has to be optimized to regular case, optimizing a worst case scenario to run bad instead of not at all at cost of making 99% scenario run slow instead of good isn't an option 12:18 sapier Please keep this in mind on optimizing ;-) 14:25 VanessaE HAH! 14:25 VanessaE I FOUND an interesting glitch 14:26 VanessaE while on my Survival server, if I grab and drag the Minetest window, the window content flickers between the current scene and what looks like some area from near that server's spawn 14:26 VanessaE it also flickers between those two frames when the window gains/loses focus 14:27 VanessaE it's not reproducable though 17:52 sapier can someone explain to me why lua_isnil check doesn't work with luajit? 17:52 sapier maybe too with lua, haven't tried 17:54 kaeza sapier, you mean to check if no value was specified? 17:54 sapier yes 17:55 sapier I want optional parameters so I tried to check 17:55 sapier if(!lua_isnil(L, 3)) 17:55 sapier value = lua_tonumber(L, 3); 17:55 kaeza if (!lua_isnoneornil(L, i)) { /* value is nil */ } else if (lua_isnil(L, i)) { /* value not specified */ } 17:56 kaeza err no 17:56 kaeza in your case, probably just lua_isnumber() 17:56 sapier but I don't wanna set value to 0 ;-) 17:56 sapier it's preinitialized 17:57 sapier isnoneornil works ... but there are various locations within minetest where my variant is used ... wonder how much of those cause bugss 17:57 sapier -s 18:07 ShadowNinja sapier: In Lua unspecified arguments are nil, but in C there's a difference between none (not passed) and nil (passed as nil). 18:08 ShadowNinja Use isnumber or innone or innoneornil or type() == TNUMBER. 18:35 sapier https://github.com/minetest/minetest/pull/1489 18:35 sapier please check as I don't have a usecase for it 18:38 Calinou very nice 18:38 Calinou but, about mob movement… a mob may move several times in the same or a similar direction 18:38 Calinou so won't the mob stop every now and then? 18:52 sapier that's up to you if you set it prior time exceeds the mob wont stop 18:52 sapier if you don't set the additional parameters behaviour is as before 18:52 kaeza still, much better than entities drifting endlessly in one direction ;) 18:52 kaeza thanks sapier 18:53 sapier finetuning like adding a lua function "walk_to_pos" is for someone else ;-) 18:57 Krock ShadowNinja, It's not possible to convert 'std::vector<_Ty>' to 'const Json:n_value' #1480 19:31 ShadowNinja Krock: Hmmm, keep the loop then, but don't puch each item individually. 19:47 Krock meh. Can't figure out how to do that automatically. foreach loops do not exist in C++ 19:49 * Krock capitulates 19:49 Krock ShadowNinja ^ 19:50 LemonLake Krock: loop through 0 to the length of the array, item = array[i] 19:50 LemonLake (psuedo) 19:50 Krock and how to get the Key of that KeyValuePair-like variable? 19:51 Krock nvm 19:51 ShadowNinja Krock: for (const &item : container). But that's C++11. Anyway, there's already a loop doing that. 19:55 Krock ok. found something at c_content.cpp , let's see if that loop works 19:57 * Krock expects a test-compiling time of 10 minutes 20:05 VanessaE hmmmm: did you make any progress on your idea of doing one(three) irrlicht scene node per mapblock? 20:50 hmmmm honestly i haven't gotten to work on it 21:09 VanessaE ok, just wondered.