Time |
Nick |
Message |
00:13 |
|
TriBlade9 joined #minetest-dev |
00:31 |
|
DFeniks joined #minetest-dev |
00:49 |
|
vitaminx joined #minetest-dev |
00:53 |
vitaminx |
hi all |
00:53 |
vitaminx |
i'm looking for a method to get the window dimensions of a client but i can't find it in the docu |
00:53 |
vitaminx |
any idea? |
00:56 |
vitaminx |
my gut feeling tells me it should maybe be in minetest.get_player_information(playername) |
00:56 |
vitaminx |
but it's not there |
00:56 |
hmmmm |
why would you need to know that kind of information? |
00:57 |
vitaminx |
i'm trying to improve unified_inventory mod, which shows the currently selected node name above the health bar |
00:58 |
hmmmm |
you're supposed to use relative positioning for everything |
00:59 |
VanessaE |
hmmmm: the default hotbar HUD overlaps the health bar if the hotbar takes up two rows, as in dreambuilder, ever since that whole formspec scaling mishegas started |
00:59 |
vitaminx |
yes, but there's an annoying thing that the hud scales to 200% when you increase the window over a certain size |
00:59 |
VanessaE |
maybe he has thge same problem |
00:59 |
VanessaE |
yep, he does |
01:00 |
vitaminx |
so my plan is to detect when the hud scales and shift the text accordingly |
01:00 |
vitaminx |
in theory :P |
01:01 |
vitaminx |
Hi VanessaE, your mods are awesome :) |
01:01 |
VanessaE |
thanks |
01:01 |
hmmmm |
agh |
01:02 |
hmmmm |
modders are trying their hardest to work around a completely fubar system |
01:02 |
hmmmm |
this is agonizing to watch :( |
01:03 |
vitaminx |
seems harder than i thought it will be :( :P |
01:07 |
|
TriBlade9 joined #minetest-dev |
01:12 |
|
deltib joined #minetest-dev |
01:14 |
|
est31 joined #minetest-dev |
01:15 |
|
est31 joined #minetest-dev |
01:58 |
|
compunerd joined #minetest-dev |
02:46 |
|
Zeno` joined #minetest-dev |
03:05 |
|
younishd joined #minetest-dev |
03:22 |
|
VanessaE joined #minetest-dev |
03:35 |
est31 |
why doesn't MT doesnt enable leveldb and gettext by default |
03:36 |
est31 |
not including first is bad for speed latter anglo-centric |
03:38 |
Zeno` |
hmmmm, didn't we discuss -O0 vs. -O1 a few weeks ago? |
03:38 |
hmmmm |
we did |
03:38 |
Zeno` |
hmmmm, I thought we decided that -O0 was ok. Did I misunderstand? |
03:39 |
hmmmm |
I hate what -O1 does to debug symbols but it's necessary when doing general development work |
03:39 |
hmmmm |
https://github.com/minetest/minetest/commit/e36681101efdfec3ed9cf9d70f7c5296c4124cd6 in any case, there's this now |
03:39 |
hmmmm |
*you* may continue using Debug |
03:39 |
hmmmm |
I'm going to use SemiDebug |
03:39 |
Zeno` |
hmm. Can cmake support ... I was just about to ask that |
03:40 |
hmmmm |
yes, you can define custom build modes |
03:40 |
hmmmm |
the MSVC flags get set later on in that file, before you ask |
03:40 |
est31 |
I mean leveldb include is no must-have. its a can-have, when its there include it. same with gettext and luajit. |
03:40 |
Zeno` |
nope, I wasn't going to ask that. Was still reading :) |
03:41 |
Zeno` |
I like that |
03:41 |
hmmmm |
est31, sqlite3 is the conservative option |
03:41 |
hmmmm |
and it's bundled in our source tree |
03:42 |
hmmmm |
gettext is an additional dependency... dependencies shouldn't be forced onto people when they're unnecessary |
03:42 |
est31 |
yea but that whats cmake for: if there and not disabled -> use else dont use |
03:43 |
hmmmm |
that would be good behavior |
03:43 |
est31 |
and not current behaviour: if enabled -> use else dont use |
03:43 |
hmmmm |
would you be willing to code that? |
03:43 |
hmmmm |
what is this: https://github.com/minetest/minetest/blob/master/src/environment.h#L436 |
03:43 |
est31 |
if you merge it. i still have a pending PR and it wasn't that intrusive |
03:44 |
hmmmm |
maybe I'm ignorant, but I don't understand the purpose of having an empty struct in a union |
03:45 |
est31 |
#2073 and #2105 are still open. |
03:45 |
ShadowBot |
https://github.com/minetest/minetest/issues/2073 -- Simplify Readme build steps by est31 |
03:45 |
ShadowBot |
https://github.com/minetest/minetest/issues/2105 -- Update german translation by est31 |
03:45 |
hmmmm |
a lot of other people seem to have discussion about the first one |
03:45 |
hmmmm |
i dunno, what do those guys say |
03:45 |
hmmmm |
i'm going to keep myself out of it |
03:45 |
Zeno` |
I have no idea what that is in ClientEnvEvent for |
03:46 |
est31 |
If I code the change when will you merge it |
03:47 |
hmmmm |
sure, i will |
04:11 |
vitaminx |
bye |
04:17 |
Brains |
win 13 |
04:17 |
VanessaE |
lose 12 |
04:18 |
Brains |
I'm still ahead by one! WOO! |
04:18 |
VanessaE |
damn. :( |
04:18 |
* VanessaE |
rolls another d20 |
04:18 |
VanessaE |
:) |
04:19 |
* Brains |
has been playing Star Wars: Edge of Empire with its funky collection of dice recently. And they said THAC0 was difficult to remember... |
04:26 |
|
paramat joined #minetest-dev |
04:29 |
hmmmm |
https://github.com/kwolekr/minetest/commit/38bd9e93a252cb2dd5ace6b0132514edff38b504 |
04:30 |
hmmmm |
any objections? |
04:30 |
VanessaE |
wait a bit for zeno to return |
04:30 |
VanessaE |
(he's offline due to storms in his area, should be back shortly) |
04:30 |
paramat |
hi hmmmm, #2142 is ready for review/merge |
04:31 |
ShadowBot |
https://github.com/minetest/minetest/issues/2142 -- Mgv5: Various improvements, bugfix, uneasiness, speed increase by paramat |
04:31 |
VanessaE |
you know how he feels about compiler warnings :) |
04:48 |
|
chchjesus joined #minetest-dev |
04:54 |
|
Zeno` joined #minetest-dev |
04:55 |
paramat |
thanks! |
05:21 |
kaeza |
https://github.com/minetest/minetest/blob/master/doc/lua_api.txt#L1812 --> http://xkcd.com/859/ |
05:21 |
VanessaE |
haha |
05:35 |
|
selat joined #minetest-dev |
05:37 |
|
paramat left #minetest-dev |
05:59 |
TriBlade9 |
Wewp |
06:12 |
TriBlade9 |
This will break all existing colorize operations |
06:15 |
TriBlade9 |
Uggh, how does one word this? |
06:15 |
VanessaE |
"If you use [colorize, you're fucked" ? |
06:15 |
VanessaE |
;) |
06:19 |
TriBlade9 |
Yep :3 |
06:19 |
TriBlade9 |
Until you tack :255 on the end of it |
06:20 |
VanessaE |
oh sure, ruin the joke :P |
06:21 |
TriBlade9 |
What? |
06:22 |
TriBlade9 |
Oops |
06:22 |
TriBlade9 |
https://github.com/minetest/minetest/pull/2153 |
06:22 |
TriBlade9 |
#2153 |
06:22 |
ShadowBot |
https://github.com/minetest/minetest/issues/2153 -- Fix colorize using the color alpha literally and as the ratio to interpolate the colors with. by TriBlade9 |
06:22 |
TriBlade9 |
There we go |
06:22 |
TriBlade9 |
Oh darn, forgot to switch it to a s32 |
06:30 |
hmmmm |
why does compatibility need to be broken, I don't understand |
06:31 |
hmmmm |
if the :thing isn't there, why not interpret the alpha as the blend ratio |
06:36 |
|
kaeza joined #minetest-dev |
06:37 |
TriBlade9 |
hmmmm We already discussed that. It's fine if you want to do that |
06:38 |
Zeno` |
:thing cannot be optional? |
06:38 |
TriBlade9 |
Zeno` It can be -_- |
06:38 |
TriBlade9 |
If it's not there then we can just use the alpha, no biggie |
06:38 |
TriBlade9 |
Want me to write that up? |
06:39 |
Zeno` |
I think so... |
06:39 |
TriBlade9 |
Okay |
06:39 |
|
Hunterz joined #minetest-dev |
06:46 |
TriBlade9 |
comitting, working as expected |
06:48 |
TriBlade9 |
However, backwards-compatibility for broken code is probably not something we want to keep for long |
06:50 |
hmmmm |
So guys |
06:50 |
TriBlade9 |
Done, committed |
06:50 |
hmmmm |
I have a better idea on how to make fast settings |
06:50 |
TriBlade9 |
Oh? |
06:50 |
hmmmm |
up to this point it's like everybody who wants to minimize the overhead of their settings makes up their own mechanisms |
06:51 |
hmmmm |
why can't we have Settings have two settings trees, one an array with O(1) lookup time, and the other the typical string map |
06:51 |
hmmmm |
if the setting being read maps to one of the "special core use" settings, it'll get added to the vector |
06:53 |
|
Kalabasa joined #minetest-dev |
06:53 |
TriBlade9 |
Huh |
06:53 |
TriBlade9 |
No idea what that means <3 |
06:53 |
TriBlade9 |
Sounds good though |
06:54 |
Zeno` |
sounds pretty much exactly what I began to implement lol |
06:54 |
Zeno` |
anyway, bbl |
06:55 |
TriBlade9 |
Bai |
06:56 |
hmmmm |
i remember that |
06:57 |
hmmmm |
it had all sorts of funky callbacks and a big update function' |
06:57 |
hmmmm |
this is not the same at all |
06:58 |
hmmmm |
it's a simple enum CoreSettings { CSET_FAST_MOVE, CSET_KEYMAP_THING, ...} g_settings->getU16(CSET_FAST_MOVE); <--- lock-free, wait free, O(1) lookup, zero string processing |
06:58 |
hmmmm |
just a return a value from an array |
06:59 |
hmmmm |
std::map<const char *, CoreSettings> g_core_settings; on initialize, g_core_settings.insert("fast_move", CSET_FAST_MOVE); ... |
06:59 |
hmmmm |
then on loading |
07:01 |
hmmmm |
std::map<const char *, CoreSettings>::iterator it = g_core_settings.find(settings_name); if (it != g_core_settings.end()) { set(it->second, settings_value); } else { set(settings_name, settings_value); } ... |
07:01 |
hmmmm |
so simple |
07:01 |
hmmmm |
there i just wrote it |
07:01 |
hmmmm |
now add it to minetest |
07:01 |
hmmmm |
well the key trick to all this is making the accesses atomic. for obvious reasons no strings allowed |
07:02 |
hmmmm |
it would be centralized, generalized, as fast as the keycache map, and it can replace every other instance where we cache settings |
07:02 |
hmmmm |
like for example in the EmergeManager there's mapgen debug info settings cached |
07:06 |
|
grondilu joined #minetest-dev |
07:06 |
grondilu |
I often get "Irrlicht log: Could not open file of texture: character.png", yet this file does exist. It's in ./games/minetest_game/mods/default/models/character.png |
07:07 |
hmmmm |
that sucks. |
07:17 |
grondilu |
notice though that I see myself in 3rd person view, so either the file is actually found, or an alternate one is found somewhere else. |
07:18 |
hmmmm |
i've noticed that error message before... it never affected me |
07:21 |
|
ImQ009 joined #minetest-dev |
07:36 |
|
jin_xi joined #minetest-dev |
08:12 |
|
gregorycu joined #minetest-dev |
08:34 |
|
nrzkt joined #minetest-dev |
08:37 |
hmmmm |
:( |
08:37 |
hmmmm |
that transparency sorting issue got me down |
08:38 |
hmmmm |
my light source halo effect texture fights with water nodes |
08:38 |
VanessaE |
oh it gets worse. |
08:39 |
VanessaE |
try making a meshnode partly translucent, especially something with lots of narrow, long polys |
08:39 |
VanessaE |
it makes a bloody mess of it :) |
08:40 |
VanessaE |
(I discovered it accidentally while modelling the wine bottles in homedecor) |
08:40 |
VanessaE |
-l |
08:43 |
hmmmm |
i refuse to believe this is still a problem 11 years later |
08:44 |
VanessaE |
in minetest it is.. but 11 years? |
08:44 |
hmmmm |
it was first reported on the irrlicht forums back in 2004 |
08:44 |
VanessaE |
ah |
08:44 |
hmmmm |
here's a bug report 5 years later: http://sourceforge.net/p/irrlicht/bugs/262/ |
08:44 |
VanessaE |
christ in a cartoon. |
08:44 |
hmmmm |
I mean |
08:44 |
hmmmm |
there are people who work on irrlicht, I think... right? |
08:44 |
VanessaE |
in theory there are |
08:44 |
hmmmm |
give me one good reason why we don't dump this for urho3d right now |
08:44 |
VanessaE |
there IS a 1.9 version out there somewehre |
08:45 |
VanessaE |
but honestly, there is only ONE reason I can give you:" |
08:45 |
VanessaE |
inertia. |
08:45 |
hmmmm |
you can't do jack shit with irrlicht |
08:45 |
VanessaE |
(whether the new target is urho3d or OGRE or something else) |
08:45 |
hmmmm |
you can't have inertia without velocity |
08:45 |
VanessaE |
this is true |
08:45 |
VanessaE |
but there IS some velocity here |
08:45 |
hmmmm |
where |
08:45 |
VanessaE |
well |
08:46 |
hmmmm |
I am so pissed off |
08:46 |
nrzkt |
@hmmmm, in 2014 X11 solved a bug present since 20 years, be patient |
08:46 |
hmmmm |
oh okay |
08:46 |
VanessaE |
minetest development has actually been picking up steam lately hasn't it? |
08:46 |
hmmmm |
:\ |
08:46 |
hmmmm |
VanessaE, yes, but development on graphics has not |
08:46 |
VanessaE |
true. |
08:47 |
VanessaE |
I'm just saying that switching to another graphics engine is bound to introduce tons of headaches for a while |
08:47 |
|
kilbith joined #minetest-dev |
08:48 |
nrzkt |
i think it's not a good idea to change engine now. Before minetest must resolve design problems |
08:49 |
gregorycu |
There are things we can do to prepare for an engine change |
08:49 |
VanessaE |
with as many other areas as I've heard described here as in need of attention, I think it would add too much workload. better would be the idea of abstracting the connection between minetest and irrlicht -- I don't remember who suggested that -- and then |
08:49 |
VanessaE |
yeah exactly, gregorycu. |
08:50 |
VanessaE |
*prepare* for it now, but don't actually do it until other areas of the engine are less.. what's the word? |
08:50 |
gregorycu |
retarded |
08:50 |
* VanessaE |
waits for hmmmm's adjective |
08:50 |
gregorycu |
Probably be the same one |
08:50 |
gregorycu |
VanessaE, have you worked on many mods? |
08:50 |
VanessaE |
I have, yes |
08:53 |
hmmmm |
welp |
08:53 |
hmmmm |
I did the best I could |
08:55 |
gregorycu |
There are two types of projects |
08:55 |
VanessaE |
hmmmm: allegedly, minetest can be convinced to do all the z-sorting stuff on its own but ... well I guess it's a royal pain in the ass. |
08:55 |
gregorycu |
Half-completed ones with perfect design and code, and completed ones with sub-standard design and code |
08:55 |
hmmmm |
well I know how to do that for nodes |
08:55 |
hmmmm |
http://i.imgur.com/M82MvF6.png cool effect, right? |
08:55 |
hmmmm |
http://i.imgur.com/KfojoxV.png |
08:56 |
VanessaE |
OOOOOOOOOOOOOO |
08:56 |
VanessaE |
I like that |
08:56 |
hmmmm |
the size obviously needs to be adjusted but it looks perfect above water |
08:56 |
VanessaE |
tone it down a bit for those torches but you got something there |
08:57 |
VanessaE |
(the first screenshot with the round inner edge of the halo looks better) |
08:57 |
hmmmm |
lol. |
08:57 |
hmmmm |
the second screenshot is showing how transparency sorting messes it up |
08:57 |
VanessaE |
ah |
08:57 |
VanessaE |
go figure :D |
08:57 |
gregorycu |
What is it? An image? |
08:57 |
hmmmm |
er wait |
08:57 |
hmmmm |
in that second screenshot it's not exactly the transparency sorting |
08:58 |
hmmmm |
it's just being occluded by the water which it shouldn't be since it's a transparent face |
08:58 |
hmmmm |
see, like i don't know how to fix that. |
08:58 |
hmmmm |
i'm not that gud with computers |
08:58 |
VanessaE |
hmmmm: homedecor's doors do that too |
08:59 |
VanessaE |
(one of them has frosted glass, and I didn't bother to turn the alpha property off on the others, so they all exhibit the glitch) |
09:00 |
hmmmm |
night gusy |
09:00 |
hmmmm |
guys |
09:00 |
VanessaE |
night |
09:01 |
* hmmmm |
& |
09:03 |
|
MinetestForFun joined #minetest-dev |
09:05 |
kilbith |
ugh, looks like a white sliced pineapple in that screenie.. |
09:05 |
VanessaE |
haha |
09:05 |
VanessaE |
well it's just a test image |
09:05 |
VanessaE |
I can see exactly what he's trying to accomplish with it though |
09:06 |
kilbith |
$ whereis RBA |
09:06 |
kilbith |
needed ! |
09:06 |
VanessaE |
his job keeps him super-busy lately |
09:06 |
kilbith |
:( |
09:07 |
jin_xi |
one thing im wondering about everytime i see it is the weird smoke puff entities make when destroyed. should be replaced by a particle effect |
09:07 |
jin_xi |
or removed, looks like shit |
09:08 |
VanessaE |
probably so, yeah |
09:08 |
VanessaE |
even a better texture helps though |
09:08 |
VanessaE |
(HDX supplies an image drawn from actual smoke) |
09:09 |
|
cib0 joined #minetest-dev |
09:15 |
|
selat joined #minetest-dev |
09:31 |
gregorycu |
We have exactly 100 open bugs |
09:46 |
|
T4im joined #minetest-dev |
09:58 |
|
TriBlade9 joined #minetest-dev |
10:00 |
gregorycu |
We should have a bug-squashing month |
10:00 |
gregorycu |
Where we all just do bug fixes |
10:00 |
TriBlade9 |
^^ |
10:01 |
|
FR^2 joined #minetest-dev |
10:02 |
nrzkt |
it's a good idea |
10:11 |
gregorycu |
Maybe with a prize or something :) |
10:11 |
|
Player_2 joined #minetest-dev |
10:11 |
gregorycu |
For whoever squashes the most bugs? |
10:24 |
|
cib0 joined #minetest-dev |
10:30 |
|
Zeno` joined #minetest-dev |
10:34 |
gregorycu |
Just in time |
10:35 |
gregorycu |
#2156 |
10:35 |
ShadowBot |
https://github.com/minetest/minetest/issues/2156 -- Optimise MapBlockMesh functions by gregorycu |
10:36 |
|
Amaz joined #minetest-dev |
10:36 |
Zeno` |
gregorycu, at a glance it seems good. I doubt I can merge tonight though (maybe later). I'm just so tired |
10:36 |
Zeno` |
cannot think properly |
10:36 |
gregorycu |
I was tired when I got up today |
10:36 |
gregorycu |
So I called in sick to work |
10:36 |
gregorycu |
lololol |
10:37 |
gregorycu |
All good, I only just finished that |
10:37 |
Zeno` |
I dunno... maybe I have sleeping sickness or malaria or something |
10:37 |
Zeno` |
been tired for about a week now |
10:37 |
Zeno` |
for no apparent reason |
10:37 |
gregorycu |
I actually think I can drastically improve the performance, but it's a bigger change, I'd prefer to get this through first |
10:38 |
Zeno` |
where is the performance coming from in 2156? |
10:38 |
Zeno` |
pre-allocating size and.. |
10:39 |
Zeno` |
voxel.cpp line 624... what is that? |
10:39 |
Zeno` |
oh I see |
10:39 |
Zeno` |
hmm |
10:40 |
gregorycu |
The thing is |
10:40 |
gregorycu |
This code takes a VoxelManipulator, which can grow to accommodate |
10:40 |
gregorycu |
However, the code does not need to actually grow thing this |
10:40 |
gregorycu |
thing |
10:41 |
gregorycu |
So, you pay a performance cost for that feature, which is not used |
10:41 |
gregorycu |
I want to get this fixed up in a different PR, and basically have a StaticVoxelManipulator |
10:44 |
gregorycu |
Off to cook dinner, bbiaw |
11:02 |
|
crazyR joined #minetest-dev |
11:11 |
|
iqualfragile joined #minetest-dev |
11:20 |
|
crazyR_ joined #minetest-dev |
11:52 |
|
iqualfragile joined #minetest-dev |
11:55 |
gregorycu |
I am back, and unlike Zeno`, ready for more |
12:35 |
Zeno` |
this code makes my head explode sometimes :( |
12:46 |
|
Kalabasa joined #minetest-dev |
12:50 |
|
SudoAptGetPlay joined #minetest-dev |
12:55 |
gregorycu |
What code are you looking at, by the way? |
12:56 |
Zeno` |
if(m_sneak_node_exists && |
12:56 |
Zeno` |
nodemgr->get(map->getNodeNoEx(m_old_node_below)).name == "air" && |
12:56 |
Zeno` |
m_old_node_below_type != "air") |
12:57 |
Zeno` |
it seriously does my head in |
12:57 |
kahrl |
lol, that's an efficient way to check for CONTENT_AIR |
12:58 |
gregorycu |
Oh dear |
12:58 |
gregorycu |
Are you fixing some of the sneak bugs? |
13:02 |
gregorycu |
Let's see how hard this crashes |
13:03 |
gregorycu |
It didn't crash.. |
13:06 |
Zeno` |
nah, not sneak bugs :( |
13:07 |
|
PilzAdam joined #minetest-dev |
13:10 |
|
TriBlade9 joined #minetest-dev |
13:20 |
gregorycu |
35% faster |
13:21 |
|
cib0 joined #minetest-dev |
13:21 |
|
proller joined #minetest-dev |
13:27 |
|
twoelk joined #minetest-dev |
13:28 |
* Zeno` |
gives up |
13:30 |
gregorycu |
What are you working on? |
13:34 |
TriBlade9 |
Hey Zeno`, Why conver the s32's to ints? |
13:35 |
Zeno` |
the range of valid values is -1 to 255? |
13:35 |
Zeno` |
I dunno... I'd just rather use standard types for cases like that |
13:36 |
TriBlade9 |
I suspect there would be narrowing conversion issues then |
13:36 |
Zeno` |
narrowing issues how? |
13:36 |
TriBlade9 |
s32 to int? |
13:37 |
TriBlade9 |
Meh |
13:37 |
TriBlade9 |
IDK, I don't speak C++ natively |
13:37 |
Zeno` |
but it's already limited to -1 to 255 |
13:37 |
gregorycu |
-1 to 255 |
13:37 |
TriBlade9 |
Okay, I'll try it before commenting anymore |
13:37 |
gregorycu |
Strange range |
13:38 |
Zeno` |
-1 is an "error value" |
13:38 |
TriBlade9 |
Yeah |
13:38 |
TriBlade9 |
Probably not the best way to go about it, but whatevz |
13:38 |
Zeno` |
well, maybe. There are no narrowing issues though :p |
13:38 |
TriBlade9 |
There's a lot more issues with the coloring/texture generating btw |
13:38 |
TriBlade9 |
I was playing with it for quite awhile. That thing is crazy |
13:39 |
nrzkt |
Zeno` please use a normalize way, use s32 instead of int... don't use different types (yes i know s32 = int) |
13:39 |
TriBlade9 |
o3o |
13:39 |
Zeno` |
nrzkt, rubbish |
13:39 |
Zeno` |
not in this case |
13:39 |
TriBlade9 |
Fight! Fight! Fight! Fight! Fight! |
13:39 |
Zeno` |
it does not need to be s32 |
13:39 |
gregorycu |
I have 2c and I can't see the code to comment on |
13:39 |
TriBlade9 |
Heck, if it didn't need the -1, it could be a byte |
13:40 |
Zeno` |
if int is appropriate, use int |
13:40 |
TriBlade9 |
Wait |
13:40 |
nrzkt |
Zero, use short int instead then |
13:40 |
nrzkt |
not int |
13:40 |
nrzkt |
s16 |
13:40 |
TriBlade9 |
Come to think of it, what would the point of a 0 value be in the modifier? |
13:40 |
gregorycu |
Where is the code? |
13:40 |
Zeno` |
no, because int is the preferred "default" choice |
13:40 |
TriBlade9 |
It literally means to do nothing |
13:41 |
Zeno` |
s16 is not even a standard type |
13:41 |
nrzkt |
no, but it's used everywhere |
13:41 |
Zeno` |
is there a reason why it must be 16 bits (minimum)? |
13:42 |
Zeno` |
if not, use int |
13:42 |
nrzkt |
less memory used ? |
13:42 |
Zeno` |
no, the compiler will convert most shorts to int anyway |
13:42 |
Zeno` |
unless they're global |
13:42 |
TriBlade9 |
-.- |
13:42 |
gregorycu |
Is this int stored in a structure? |
13:42 |
TriBlade9 |
FFS guys, it's a tiny commit. Does it matter that much? |
13:42 |
TriBlade9 |
No gregory |
13:43 |
gregorycu |
In that case |
13:43 |
gregorycu |
int_fast8_t is the correct answer |
13:43 |
Zeno` |
lol |
13:43 |
Zeno` |
not it's not because that has a range of 256 distinct values :P |
13:43 |
Zeno` |
the requirement for the function in question is 257 distinct values |
13:43 |
nrzkt |
-1 -> 255 = 257 values |
13:44 |
gregorycu |
From the standard: "The typedef name int_fastN_t designates the fastest signed integer type with a width of at least N." |
13:44 |
TriBlade9 |
We could probably do 0-255, since 0 would be totally useless anyways |
13:44 |
gregorycu |
Anyway, as someone said, let's move on |
13:45 |
TriBlade9 |
Sooo |
13:45 |
TriBlade9 |
Uhh |
13:45 |
TriBlade9 |
What should I do? |
13:45 |
gregorycu |
Dance |
13:46 |
TriBlade9 |
But which dance?! |
13:46 |
gregorycu |
Whatever you want, dance like nobody is watching |
13:46 |
TriBlade9 |
No need for a *like* |
13:46 |
TriBlade9 |
replace it with a "'cause" |
13:46 |
TriBlade9 |
s/like/cause |
13:51 |
gregorycu |
I'm watching |
13:52 |
Zeno` |
I don't think I'll finish MapBlock::getNode/getNodeNoEx/etc |
13:52 |
Zeno` |
too many changes |
13:53 |
gregorycu |
It's funny, I've been looking at that stuff |
13:53 |
Zeno` |
All this because exceptions were originally used instead of if() else :( |
13:54 |
Zeno` |
I'll fix one more file. If I still get errors I cbf |
13:54 |
Zeno` |
already modified 18 files |
13:55 |
gregorycu |
I made a StaticVoxelManipulator |
13:56 |
gregorycu |
It's what you use when you know the point exists in the area |
13:56 |
gregorycu |
It doesn't use contains, or addArea |
13:57 |
gregorycu |
addArea is now 0.73% inclusive |
14:02 |
gregorycu |
On the negative side, I introduced a bug |
14:03 |
TriBlade9 |
No biggy |
14:05 |
|
crazyR joined #minetest-dev |
14:07 |
kilbith |
PilzAdam, "Mese is not "alien stuff" wat ? |
14:09 |
PilzAdam |
are you going to say anything else or is "wat" your only reaction? |
14:09 |
kilbith |
yes, Mese has historically alien origins |
14:11 |
PilzAdam |
{{citation_needed}} |
14:12 |
kilbith |
seriously, latin letters on alien block, wtf |
14:13 |
PilzAdam |
kilbith, why do you believe that it has alien origins? |
14:13 |
PilzAdam |
have you made it up yourself or someone else? |
14:14 |
kilbith |
because c55 has stated that |
14:14 |
PilzAdam |
where? |
14:16 |
Zeno` |
he stated that it was a joke between early developers |
14:16 |
Zeno` |
based upon the Finnish pronunciation of mese |
14:17 |
Kray |
mese is like an 8 years old joke on certain finnish irc channel |
14:18 |
kilbith |
http://irc.minetest.ru/minetest/2014-07-26#i_3834457 |
14:18 |
kilbith |
i continue asking to google |
14:19 |
kilbith |
Mese as alien stuff is in the popular culture here anyway |
14:19 |
PilzAdam |
and gold is butter in MC's popular culture |
14:19 |
PilzAdam |
doesn't mean that Mojang changes the gold texture to look more like butter |
14:26 |
nrzkt |
xD |
14:28 |
|
shadowzone joined #minetest-dev |
14:30 |
kilbith |
PilzAdam: according to google images, cotton plants & wheat are realistic |
14:32 |
|
shadowzone joined #minetest-dev |
14:33 |
|
shadowzone joined #minetest-dev |
14:36 |
kilbith |
cotton plant is inherently (looking) dry at its final stage |
14:36 |
|
zat joined #minetest-dev |
14:38 |
|
proller joined #minetest-dev |
14:39 |
|
leat joined #minetest-dev |
14:41 |
|
leat1 joined #minetest-dev |
14:43 |
Zeno` |
where is RealBadAngel? |
14:43 |
sfan5 |
not here |
14:43 |
Zeno` |
apparently not |
14:53 |
|
NakedFury joined #minetest-dev |
14:55 |
|
cib0 joined #minetest-dev |
15:06 |
|
cib0 joined #minetest-dev |
15:21 |
|
proller joined #minetest-dev |
15:22 |
shadowzone |
Zeno`, you timed out on Inchra |
15:27 |
|
leat1 joined #minetest-dev |
15:35 |
|
vitaminx joined #minetest-dev |
15:36 |
|
Kalabasa joined #minetest-dev |
15:36 |
vitaminx |
hi everyone, I have a couple of questions about running a minetest-server |
15:36 |
vitaminx |
first of all, some posts in the forum claim that the server is multithreaded |
15:37 |
PilzAdam |
vitaminx, this topic is better suited for #minetest |
15:37 |
vitaminx |
however, the server doesn't seem to take advantage of a second CPU core, when there's heavy load on the CPU its always only one core that peaks, the other stays idle |
15:37 |
vitaminx |
ok |
15:37 |
shadowzone |
vitaminx, maybe you should ask on #minetest |
15:38 |
vitaminx |
i'll do |
15:38 |
vitaminx |
see ya |
15:38 |
|
vitaminx left #minetest-dev |
15:44 |
|
SopaXorzTaker joined #minetest-dev |
15:54 |
|
CraigyDavi joined #minetest-dev |
16:12 |
|
roniz joined #minetest-dev |
16:20 |
|
ImQ009 joined #minetest-dev |
16:33 |
|
leat1 joined #minetest-dev |
16:34 |
|
shadowzone joined #minetest-dev |
16:37 |
|
gregorycu joined #minetest-dev |
16:37 |
gregorycu |
Guess who can't sleep |
16:39 |
gregorycu |
The answer is me |
16:40 |
|
Calinou joined #minetest-dev |
16:40 |
shadowzone |
random |
16:41 |
gregorycu |
Yeah, it's 3:40am and all I could think of is a way to make minetest faster |
16:43 |
gregorycu |
So I thought I'd might as well try it |
16:49 |
|
leat1 joined #minetest-dev |
16:58 |
|
Krock joined #minetest-dev |
17:06 |
|
exio4 joined #minetest-dev |
17:07 |
|
n4x joined #minetest-dev |
17:08 |
|
CraigyDavi joined #minetest-dev |
17:16 |
|
CraigyDavi joined #minetest-dev |
17:18 |
|
SopaXorzTaker joined #minetest-dev |
17:19 |
|
hmmmm joined #minetest-dev |
17:21 |
|
Hunterz joined #minetest-dev |
17:26 |
|
roniz joined #minetest-dev |
17:33 |
|
sapier joined #minetest-dev |
17:34 |
sapier |
hmmmm most agonizing thing about those modder workarounds is that they stop us from fixing the broken system |
17:35 |
hmmmm |
serenity now... insanity later |
17:35 |
shadowzone |
hmmmm, so enjoy it while a got it. |
17:35 |
shadowzone |
*ya |
17:35 |
hmmmm |
i keep reminding myself that these problems are motivation for getting client side scripting in |
17:36 |
hmmmm |
it will be a real boon for formspecs |
17:36 |
sapier |
hmmmm OTTO or ZEUS? |
17:36 |
hmmmm |
I thought we agreed on ZEUS |
17:36 |
sapier |
did we ? ZEUS was the client side only thingy without any connection to server |
17:36 |
hmmmm |
oh, then OTTO |
17:37 |
hmmmm |
i thought it was the opposite |
17:37 |
sapier |
hmm guess the names still aren't stupid enough to get remembered |
17:37 |
hmmmm |
so |
17:37 |
hmmmm |
why don't we swap out lua for javascript |
17:38 |
hmmmm |
and swap out the formspec language for html |
17:38 |
hmmmm |
minetest will just be a glorified web browser |
17:38 |
Calinou |
otto/zeus? |
17:38 |
hmmmm |
swap out irrlicht for webgl |
17:38 |
hmmmm |
minetest will be web 2.0 |
17:38 |
sapier |
btw that dual line inventory was a workaround for extra small android screens I added ... I fear this wasn't smartest idea I ever had |
17:38 |
Calinou |
Web 3.0, even! |
17:39 |
sapier |
hmmmm sounds like rewriting would be better in this situation |
17:39 |
sapier |
of course you'd have to replace harddisk by dropbox too |
17:41 |
hmmmm |
btw what happened to 0.4.12? |
17:41 |
sapier |
https://github.com/minetest/minetest/pull/2132 could someone please comment on this? especially button icons as well as location of those buttons. I'd like to merge it and at best the positions and icons are right from the beginning |
17:41 |
sapier |
hmmmm imho to much code fluctuation atm to do a release |
17:42 |
hmmmm |
hmm |
17:43 |
hmmmm |
sapier, btw, i checked and sqlite doesn't produce an error if you try to delete a row without it existing |
17:43 |
hmmmm |
i'm wondering if that additional SELECT statement before the delete on android makes block saving any slower |
17:43 |
|
SopaXorzTaker joined #minetest-dev |
17:43 |
hmmmm |
(probably not because cache) |
17:44 |
sapier |
I don't know the only thing I remember about sqlite on android was replace not working correct |
17:47 |
|
y joined #minetest-dev |
17:48 |
|
exio4 joined #minetest-dev |
18:01 |
|
leat1 joined #minetest-dev |
18:07 |
jin_xi |
sapier: do you have any specific 'modder workarounds' in mind? |
18:08 |
sapier |
all of those things working around gui and formspec limitations, but not a single thing no |
18:19 |
jin_xi |
idk but it seems to me that if a good fix/alternative is in place mods will be updated/replaced |
18:22 |
|
cib0 joined #minetest-dev |
18:23 |
sapier |
jin_xi: in theory yes in practice no |
18:26 |
jin_xi |
cant blame modders to only check every decade if a fix is in place yet... ;) |
18:34 |
|
Calinou joined #minetest-dev |
18:38 |
|
Megaf_ joined #minetest-dev |
18:46 |
|
roniz_ joined #minetest-dev |
19:09 |
|
Garmine joined #minetest-dev |
19:46 |
|
younishd joined #minetest-dev |
19:54 |
|
leat1 joined #minetest-dev |
20:06 |
|
proller joined #minetest-dev |
20:09 |
|
Megal_ joined #minetest-dev |
20:14 |
T4im |
while I can't see an angle atm. to abuse this, you still might want to check #2159 for security implications |
20:14 |
ShadowBot |
https://github.com/minetest/minetest/issues/2159 -- minetest executes locally installed mods when connecting to a server under certain circumstances |
20:17 |
|
roniz__ joined #minetest-dev |
20:18 |
T4im |
or rather, no angle that wouldn't have an easier solution, hehe |
20:18 |
T4im |
guess if one would be distributing the fitting mod you could force execution, but then again, if you get a malicious mod distributed its probably too late anyway |
20:18 |
|
SudoAptGetPlay joined #minetest-dev |
20:19 |
sapier |
what? |
20:19 |
|
hintss joined #minetest-dev |
20:20 |
T4im |
sapier: "enable_local_map_saving = true" executes locally installed mods when connecting to a remote server, provided these mods are being configured for the local copy of said server |
20:21 |
sapier |
sounds really strange |
20:22 |
|
cib_ joined #minetest-dev |
20:22 |
T4im |
stranger as #2024? it appears there's some sort of statekeeping going wrong… minetest forgetting if it connects locally, remotely or loopback |
20:22 |
ShadowBot |
https://github.com/minetest/minetest/issues/2024 -- Local map saving runs on locally started server, overwriting another world. |
20:23 |
T4im |
at least for the local save feature |
20:39 |
|
roniz joined #minetest-dev |
20:42 |
|
shadowzone joined #minetest-dev |
20:44 |
sapier |
kahrl PilzAdam ShadowNinja hmmmm sfan5 what do you guys think about adding some sort of lan server browser? I'd like to support android bluetooth gaming by some time and there we'd need automatic local server discovery anyway. |
20:45 |
sfan5 |
sapier: sounds good |
20:46 |
sfan5 |
sapier: also here is some work on bluetooth https://github.com/sfan5/minetest/tree/bluetooth |
20:47 |
sapier |
interesting so there's even native bluetooth support? |
20:47 |
sfan5 |
uh |
20:47 |
sfan5 |
bluetooth is a feature of the linux kernel |
20:47 |
sfan5 |
ofc there is supprot |
20:47 |
sfan5 |
support* |
20:48 |
sapier |
I see so no android special feature but direct kernel functions |
20:49 |
sapier |
well the good thing is we could even get bluetooth interoperability on pc too |
20:49 |
sfan5 |
the only android-specific addition to that would be to detect whether bluetooth is enable |
20:49 |
sfan5 |
+d |
20:50 |
sfan5 |
bluetooth is also presents interesting problems |
20:50 |
sfan5 |
rfcomm functions like tcp |
20:50 |
sfan5 |
but minetest uses udp |
20:50 |
sapier |
well as I already moved minetest to tcp in an experimental branch I guess I can handle this too |
20:50 |
sfan5 |
-> on creating of socket program does not know whether it is a server socket or client socker |
20:50 |
sfan5 |
socket* |
20:51 |
sfan5 |
but my code already contains something that should solve this w/o making any speicific code changes to socket binding itself |
20:51 |
sapier |
I used a mixed mode protocol maybe using a tcp only version would solve even more issues |
20:52 |
sapier |
we wouldn't have to think about using enet or some other protocol if we could use tcp too |
20:52 |
sapier |
but that's pure guessing right now |
20:53 |
sapier |
sfan5 are you actively working on that code right now? because for me it'd be a sparetime thingy not beeing done that fast |
20:54 |
sfan5 |
sapier: no, it was just something that i wrote because i had the exact same idea you had |
20:54 |
sfan5 |
sapier: "Last commit: May 2014" |
20:57 |
sapier |
ok :-) |
20:57 |
sapier |
I guess it's your idea I just remembered it as android support becomes more and more complete |
21:38 |
|
Amaz joined #minetest-dev |
21:46 |
|
leat1 joined #minetest-dev |
21:50 |
|
leat2 joined #minetest-dev |
21:52 |
|
MichaelRpdx joined #minetest-dev |
22:08 |
hmmmm |
does anybody understand what enable_img.png and disable_img.png are? |
22:09 |
sfan5 |
looks like it used for wield item shaders |
22:09 |
sfan5 |
although that code if #if 0'd out temporarily |
22:09 |
sfan5 |
wieldmesh.cpp:367-382 |
22:09 |
VanessaE |
oh wait |
22:09 |
VanessaE |
I remember that now |
22:10 |
VanessaE |
that's to pass booleans into the shaders. |
22:10 |
hmmmm |
sfan5, yes, i know that. that's not understanding what they are. |
22:10 |
sfan5 |
<VanessaE> that's to pass booleans into the shaders. |
22:10 |
sfan5 |
wait what |
22:10 |
VanessaE |
yeah. |
22:10 |
VanessaE |
or it was at one time. |
22:10 |
sfan5 |
isn't there an irrlicht interface for that |
22:10 |
hmmmm |
what's wrong with setting a global in the shaders |
22:10 |
VanessaE |
not in minetest, or not that RBA was able to use |
22:10 |
hmmmm |
normalmap_enabled |
22:11 |
VanessaE |
idk, something to do with actually getting the data from C++ space into glsl space |
22:11 |
hmmmm |
that's just so stupid |
22:11 |
hmmmm |
i can't help but wonder how much having those effect performance |
22:13 |
gregorycu |
lol |
22:13 |
gregorycu |
It's funny you should mention this |
22:13 |
gregorycu |
Because if you're wondering what I think you're wondering about, you need not wonder |
22:15 |
gregorycu |
No, you're talking about a different setting |
22:15 |
gregorycu |
However, I can tell you that checking settings consumes about 8% of the render loop |
22:15 |
gregorycu |
Or rather, the main thread |
22:15 |
hmmmm |
yeah :( |
22:15 |
hmmmm |
"oh don't worry about performance, it'sok" |
22:16 |
VanessaE |
actually, at the time, performance was a pretty big problem, but an even bigger problem was compatibility |
22:16 |
VanessaE |
at first he tried some kind of overlay |
22:16 |
VanessaE |
but turned out some drivers barfed on that |
22:16 |
gregorycu |
From my perspective, every little performance gain gives us a little extra scope to make performance impacting changes down the line |
22:16 |
VanessaE |
gregorycu: +1 |
22:16 |
hmmmm |
vanessae: you still talking about the thing I brought up? |
22:16 |
VanessaE |
hmmmm: yes. |
22:17 |
VanessaE |
but I'm done. |
22:17 |
hmmmm |
my guess was that there was a limited number of globals in shaders |
22:17 |
gregorycu |
Ok, time for the big test |
22:17 |
hmmmm |
did do you remember somebody saying something like that around that time |
22:17 |
sfan5 |
can't you just make one u16 flags; and use flags & 0x1, flags & 0x2 ... |
22:18 |
hmmmm |
yeah you could. |
22:18 |
hmmmm |
but booleans are more user friendly! |
22:18 |
gregorycu |
Buffer overrun |
22:18 |
hmmmm |
booleans! textual strings! i love wasting space and hurting performance! |
22:18 |
hmmmm |
BUT USER FRIENDLY |
22:18 |
gregorycu |
Setting is actually on my hit list |
22:18 |
hmmmm |
IT'S 2015 |
22:18 |
gregorycu |
Settings |
22:18 |
gregorycu |
I have a hit list |
22:18 |
hmmmm |
gregorycu, don't bother |
22:18 |
gregorycu |
Why don't bother? |
22:18 |
hmmmm |
I'm going to get that once and for all |
22:19 |
sfan5 |
hmmmm: since when do we care about shader code being user-friendly? |
22:19 |
hmmmm |
sfan5, it's called sarcasm~ |
22:20 |
sfan5 |
i know |
22:20 |
hmmmm |
anywayw |
22:20 |
|
leat2 joined #minetest-dev |
22:20 |
hmmmm |
when RBA comes around I'm going to ask him about it |
22:20 |
sfan5 |
sure you don't want to yell at him instead |
22:20 |
sfan5 |
? |
22:21 |
hmmmm |
no i'm not doubting his judgement here |
22:21 |
hmmmm |
it's just that there's knowledge lost |
22:21 |
hmmmm |
i recall there being a big incompatibility with ATI cards and i'm wondering if this was put in place because of it |
22:22 |
|
acerspyro joined #minetest-dev |
22:23 |
sfan5 |
having checks all over the code sucks, but maybe we should consider not using hacks when there is a newer card/driver (that works the way it is supposed to) |
22:23 |
VanessaE |
hmmmm: that was the water shader. it still doesn't work entirely correct :P |
22:23 |
acerspyro |
lol |
22:23 |
hmmmm |
totally agreed |
22:23 |
sfan5 |
(runtime-detection basically) |
22:23 |
VanessaE |
(which is why it never went in, I guess) |
22:23 |
hmmmm |
this is what basically every other game ever does. |
22:23 |
acerspyro |
Are we focusing on open drivers or closed drivers? |
22:23 |
sfan5 |
all drivers |
22:23 |
hmmmm |
minetest is such an outlier because it's now being written by people with absolutely zero graphics knowledge |
22:24 |
acerspyro |
lol |
22:24 |
acerspyro |
dat alpha bugginess, tho. |
22:33 |
gregorycu |
The good news is it's the type of game where graphics isn't #1 priority |
22:33 |
VanessaE |
graphics are a priority though, if your game looks like shit, people won't play it |
22:34 |
acerspyro |
^ |
22:34 |
acerspyro |
Am I the only one who sees bugginess in semi-transparent blocks? |
22:34 |
gregorycu |
What about minecraft? |
22:35 |
VanessaE |
minecraft has commercial support behind it |
22:35 |
gregorycu |
lol |
22:35 |
VanessaE |
and quite frankly, it looks a lot better than minetest in some ways, from the videos I've seen |
22:35 |
gregorycu |
commercial support? |
22:36 |
VanessaE |
well I mean it IS a commercial product of course |
22:36 |
|
proller joined #minetest-dev |
22:36 |
VanessaE |
as in, it has pros working on it, and paid to do it. |
22:36 |
gregorycu |
That's debatable |
22:36 |
gregorycu |
The pros bit |
22:37 |
gregorycu |
But initially it was a one-man thing |
22:37 |
VanessaE |
was. |
22:37 |
gregorycu |
And it gained traction |
22:37 |
VanessaE |
now it's, what, a 2 billion dollar enterprise? |
22:37 |
Vexyl |
notch had worked professionally on games before minecraft |
22:37 |
gregorycu |
Notch is a hack |
22:37 |
gregorycu |
That's well-known |
22:37 |
Vexyl |
so I guess you're arguing over plural vs. singular |
22:38 |
Vexyl |
hater:P |
22:39 |
VanessaE |
my point is, if you got money, you can hire good programmers. |
22:39 |
VanessaE |
does Mojang hire good programmers? that's up to someone else to decide. |
22:39 |
gregorycu |
We are good programmers |
22:39 |
gregorycu |
Well, i am |
22:39 |
VanessaE |
yes, we are. |
22:39 |
VanessaE |
but there aren't enough of us. |
22:39 |
acerspyro |
lol |
22:39 |
gregorycu |
My day job is several cuts above working in a game dev studio |
22:40 |
jin_xi |
imho there are more pressing issues, like borked attachment system and no pitch for entities and such. i want to crush griefers with a drawbridge ffs |
22:40 |
jin_xi |
more pressing than graphics |
22:40 |
gregorycu |
Many hands can work in many places |
22:40 |
gregorycu |
Just gotta make sure they're the right places |
22:40 |
acerspyro |
jin_xi: should be included in "fixing graphics" |
22:42 |
sapier |
talking about many hands, here are quite a lot of ppl talking about what to improve who's actually willing to do the work? |
22:42 |
gregorycu |
Well, I'm working right now |
22:42 |
* jin_xi |
is not able to |
22:42 |
gregorycu |
On boring shit like performance |
22:42 |
gregorycu |
What are you doing? |
22:43 |
VanessaE |
I've been focusing my efforts on meshes in mods which I have commit access to, since it's about the best use of my time |
22:43 |
sapier |
trying to match all those pieces different ppl provide ;-) |
22:43 |
gregorycu |
In fact, I took the day off work because I have some stuff i want to try that was bugging me last night |
22:43 |
gregorycu |
So nothing? |
22:43 |
hmmmm |
looked at the shaders |
22:43 |
VanessaE |
hmmmm: and you're still sane? |
22:43 |
hmmmm |
no, enable_img.png and disable_img.png are not in place of globals |
22:44 |
hmmmm |
they're just information if the normalmap EXISTS for THAT PARTICULAR TEXTURE |
22:44 |
hmmmm |
hrmm |
22:44 |
sapier |
well gregorycu if you believe writing code is the most complex thing in minetest we don't need to continue discussing ;-P |
22:44 |
hmmmm |
but I think I have a better idea |
22:44 |
gregorycu |
Good, I have work to do |
22:44 |
VanessaE |
hmmmm: that's weird, I distinctly remember them being used for passing bools |
22:44 |
* VanessaE |
shrugs |
22:44 |
hmmmm |
normalmaps' alpha channel isn't relevant, right? |
22:44 |
VanessaE |
it is. |
22:44 |
hmmmm |
it is used for passing bools |
22:44 |
VanessaE |
it's used for parallax mapping |
22:45 |
hmmmm |
oh.... |
22:45 |
* hmmmm |
goes and hides |
22:46 |
hmmmm |
it's just that I don't like the idea of uploading an entire texture for some sort of shader hack to say y/n when shading a particular material |
22:46 |
hmmmm |
what do professional game developers do for this |
22:47 |
hmmmm |
btw it's not like I identified this as a significant bottleneck, it's just something that bothers me because... well, look at it |
22:47 |
hmmmm |
it's everywhere and it's pukeish |
22:48 |
VanessaE |
I'm pretty sure they write a whole hell of a lot of decision-making code that gets passed on to a preprocessor to turn it into glsl or hlsl. |
22:48 |
hmmmm |
the decision making shouldn't be put into the shaders itself |
22:48 |
VanessaE |
no, it shouldn't. |
22:48 |
hmmmm |
it should be separated into multiple shaders |
22:48 |
VanessaE |
so, in other words, it should be done like I just suggested. |
22:49 |
VanessaE |
:) |
22:49 |
hmmmm |
so like |
22:49 |
hmmmm |
this shader uses the 2nd texture layer for decision making on what math to perform on that material |
22:50 |
hmmmm |
if a normalmap is all (0,0,0,0), then doesn't performing the math yield the same result as if it were not normal mapped at all? |
22:50 |
hmmmm |
forgive me ignorance |
22:50 |
VanessaE |
I remember RBA having problems using those layers. too many (even as many as three) and the GPU or driver (we weren't sure which) barfs |
22:51 |
hmmmm |
the policy should be that if a normal map doesn't exist for a certain material, the normal map should be the default one that doesn't add any depth |
22:51 |
VanessaE |
(mostly that came down to opengl versioning) |
22:51 |
hmmmm |
right |
22:51 |
hmmmm |
another thing about the layers |
22:51 |
hmmmm |
the third layer should be used for lightmaps |
22:51 |
hmmmm |
except we're in a unique position to not need lightmaps |
22:52 |
hmmmm |
because we have verticies at regular positions, we can get away with complete vertex lighting. the same can't be said for other games |
22:52 |
hmmmm |
(and no, we can't do mesh welding because it's too slow) |
22:54 |
|
Acerspyro joined #minetest-dev |
22:55 |
VanessaE |
also, |
22:56 |
VanessaE |
RBA was convinced at the time that separating the shaders into different components would come with a performance penalty |
22:56 |
hmmmm |
it may or may not be true |
22:56 |
hmmmm |
i'd profile it |
22:56 |
VanessaE |
I don't think the idea of any kind of preprocessing step had really come up though |
22:57 |
Acerspyro |
ik how we can be different to Minecraft. |
22:57 |
Acerspyro |
Seeing your own body. |
22:57 |
Acerspyro |
plz? :D |
22:57 |
VanessaE |
as it stands, the only reason I turn shaders on at all is to get around the alpha sorting problem, and that's of course limited. |
22:58 |
Acerspyro |
VanessaE: alpha sorting issue should not require shaders |
22:58 |
VanessaE |
Acerspyro: it doesn't, per se, but it works better with them than without (I don't personally know why) |
22:58 |
Acerspyro |
It's still an issue... |
22:59 |
VanessaE |
hmmmm: you know, the more I think about it, the more I wonder if my argument earlier of "inertia" is enough reason. |
23:00 |
|
sapier left #minetest-dev |
23:01 |
VanessaE |
how much work would it be? |
23:01 |
hmmmm |
hm |
23:01 |
hmmmm |
what, splitting the shaders? |
23:01 |
hmmmm |
probably not much |
23:02 |
hmmmm |
i'm not too too interested in that yet though |
23:02 |
VanessaE |
no, ditching irrlicht in favor of...something else entirely. |
23:02 |
hmmmm |
it depends on how similar the interface is |
23:03 |
Acerspyro |
VanessaE: I am for it |
23:03 |
hmmmm |
my opinion is that it's labor intensive and tedious, but not particularily difficult |
23:03 |
hmmmm |
Acerspyro: I don't mean to be rude, but have you talked about coding at all? |
23:03 |
Acerspyro |
hmmmm: A bit |
23:03 |
hmmmm |
Acerspyro: This is a no-BS serious discussion channel |
23:03 |
Acerspyro |
I am aware |
23:04 |
gregorycu |
Acerspyro: I'm also sick of your bullshit |
23:04 |
gregorycu |
You're such a bullshitter and it's annoying me |
23:04 |
gregorycu |
Fucking bullshitter |
23:04 |
hmmmm |
lol. |
23:05 |
hmmmm |
i don't know if it's intentional or not, but gregorycu always has a light tone |
23:05 |
gregorycu |
It's intentional :) |
23:05 |
hmmmm |
are you ever angry? |
23:05 |
VanessaE |
heh |
23:05 |
Acerspyro |
lol |
23:06 |
gregorycu |
Do I ever get angry |
23:06 |
gregorycu |
No, not really |
23:06 |
gregorycu |
Only at politics |
23:07 |
hmmmm |
heh. |
23:07 |
hmmmm |
in any case, i'd like to profile the shaders a bit and see if we can't improve there. they don't do much right now so they should, theoretically, be very lightweight |
23:08 |
hmmmm |
the problem is i don't know how to do this |
23:09 |
|
TriBlade9 joined #minetest-dev |
23:09 |
VanessaE |
for me, even basic shaders (as in, no effects, just "Shaders") imposes a significant penalty |
23:09 |
hmmmm |
:( |
23:10 |
hmmmm |
you have an ATI card if i recall |
23:10 |
VanessaE |
(45 fps @ 240 without, versus 42 fps @ 150 with) |
23:10 |
VanessaE |
and that's on a nearly empty minetest_game test world. and yeah, an AMD R9 280X. |
23:10 |
hmmmm |
that's a pretty beefy gpu |
23:10 |
VanessaE |
yep |
23:10 |
hmmmm |
but you also have beefy textures |
23:10 |
VanessaE |
no |
23:10 |
hmmmm |
like 512 px? |
23:10 |
VanessaE |
default textures. |
23:10 |
hmmmm |
i thought |
23:10 |
hmmmm |
alright that's terrible i'm sorry |
23:11 |
VanessaE |
I don't use HDX most of the time anymore, minetest just can't hack it these days :( |
23:11 |
hmmmm |
what do you mean by 'these days' |
23:11 |
VanessaE |
well there was a time not so long ago where I could expect this scene here to give similar performance with HDX as what I'm getting with default textures now |
23:12 |
hmmmm |
do you mind bisecting until you find where it started going to shit? |
23:12 |
VanessaE |
but I can't tell you how long ago it was, or what changed, or if I'm even right |
23:12 |
hmmmm |
performance is no joke here at Minetest Inc |
23:12 |
VanessaE |
so for now I've just stopped using HDX and shaders. |
23:12 |
hmmmm |
okay |
23:13 |
VanessaE |
could be drivers, could be X, could be minetest, idk. |
23:13 |
hmmmm |
well go back to something really old |
23:13 |
hmmmm |
where you absolutely know it worked |
23:13 |
hmmmm |
it worked in 0.4.8, right? |
23:13 |
VanessaE |
that would be around 0.4.2-ish |
23:13 |
hmmmm |
even so |
23:13 |
hmmmm |
0.4.2 |
23:13 |
hmmmm |
record performance characteristics with and without shaders |
23:14 |
hmmmm |
then try out the middle between 0.4.2 and current HEAD |
23:14 |
hmmmm |
etc. |
23:14 |
hmmmm |
if 0.4.2 is just as slow we know it's a driver issue and we can't do much about that |
23:17 |
VanessaE |
lemme see what I can come up with |
23:17 |
VanessaE |
now mind you, zeno has made many improvements that have helped, |
23:18 |
hmmmm |
those have nothing to do with the graphics side though |
23:18 |
VanessaE |
but where he gets say 60 fps 100m view, I would get say a third to one half of that on the same scene |
23:18 |
OldCoder |
<OldCoder> - drawtype = "glasslike_framed_optional", |
23:18 |
OldCoder |
<OldCoder> + drawtype = "glasslike_framed", |
23:18 |
OldCoder |
<OldCoder> compunerd recommends this patch to default/nodes.lua |
23:19 |
OldCoder |
Are changes to default part of #minetest-dev or just for #minetest ? |
23:19 |
VanessaE |
0.4.2 is doing 62 fps at 160m view (default). minimal game, similar scenery to what I had visible in current. |
23:19 |
OldCoder |
VanessaE, Hi BTW |
23:19 |
VanessaE |
hey. |
23:20 |
VanessaE |
default textures, mind you. |
23:20 |
hmmmm |
wait, first of all, max_fps and wanted_fps are set to some far off number, right? |
23:20 |
hmmmm |
like 500 |
23:20 |
hmmmm |
second, is that with or without shaders? also it'd be nice to try with both |
23:20 |
VanessaE |
hmmmm: default settings, whatever they are, in all cases. |
23:21 |
VanessaE |
0.4.2 doesn't appear to support shaders. |
23:21 |
hmmmm |
ahh ok |
23:21 |
hmmmm |
in any case |
23:21 |
VanessaE |
however the speed I got there is clearly faster than I get now, without |
23:21 |
hmmmm |
fps_max is 60 by default |
23:21 |
hmmmm |
I want to have a more solid comparison of how much we're losing though |
23:21 |
hmmmm |
numbers, man. numbers. |
23:21 |
VanessaE |
wait, no, current is slightly faster were it not capping |
23:22 |
VanessaE |
ok hold a bit |
23:22 |
hmmmm |
yeah change both to 600 |
23:22 |
hmmmm |
wanted_fps and max_fps |
23:22 |
hmmmm |
no, wanted_fps and fps_max |
23:23 |
hmmmm |
forget about consistency~ |
23:23 |
jin_xi |
VanessaE: your numbers are terrible, i find it hard to believe! for me mt has really gained speed recently |
23:24 |
hmmmm |
if the numbers drop for anybody that's cause for concern |
23:24 |
hmmmm |
we can't let one driver slip in terms of performance for the benefit of others |
23:24 |
* VanessaE |
waits for the range tuner in 0.4.2 to count up.... |
23:24 |
hmmmm |
yeah, that's been broken for a while hasn't it |
23:24 |
VanessaE |
it's at a solid 62, so vsync must be limiting it |
23:24 |
hmmmm |
is vsync enabled? |
23:24 |
VanessaE |
not in minetest it ain't, and I'm certain it's turned off in my driver as well |
23:25 |
VanessaE |
62160m in 0.4.2 now, and it seems to want to stop there. lemme see if I can drive it up |
23:26 |
VanessaE |
how about 28 fps at 445 meters? |
23:26 |
hmmmm |
yup |
23:26 |
hmmmm |
okay |
23:26 |
hmmmm |
try 0.4.6 now |
23:27 |
VanessaE |
compiling (insert relevant xkcd here) |
23:27 |
jin_xi |
swordfight? |
23:27 |
VanessaE |
jin_xi: that's the one. |
23:28 |
VanessaE |
just to remind, I'm doing these tests with minimal, similar terrain as on git HEAD, default textures |
23:29 |
VanessaE |
no shaders (where available) |
23:29 |
hmmmm |
i can't help but have this mental bias that whenever i make a commit i think, "yes, this is the freshest, newest, best minetest yet" |
23:29 |
hmmmm |
but that's obviously not the case |
23:30 |
VanessaE |
I'll tell you one thing, the minimal mapgen is fucking QUICK |
23:30 |
VanessaE |
ok, 23 fps @ 445 |
23:31 |
|
kaeza joined #minetest-dev |
23:34 |
hmmmm |
atill no shaders? |
23:34 |
hmmmm |
still |
23:34 |
VanessaE |
didn't turn them on for that test, I wanted the numbers' source to be consistent. |
23:36 |
VanessaE |
minetest_classic is an interesting result. it settles at ~42 fps @ 99m. |
23:36 |
gregorycu |
Urgh |
23:37 |
gregorycu |
What's 99m ? |
23:37 |
VanessaE |
view range |
23:37 |
gregorycu |
ok |
23:37 |
gregorycu |
99 million? |
23:37 |
VanessaE |
hm, after a while it stepped up to 38 @ 108, and that's meters silly :P |
23:38 |
VanessaE |
oh wait a sec, hmmmm that 0.4.6 result had shaders turned on. |
23:38 |
VanessaE |
I didn't notice. |
23:38 |
|
proller joined #minetest-dev |
23:39 |
VanessaE |
lemme retest without. |
23:43 |
VanessaE |
meh, this is impossible to get consistent tests because of how long it takes to get enough terrain loaded to actually force the view range to go long |
23:44 |
gregorycu |
I'm fixing the mesh thread now |
23:45 |
VanessaE |
in 0.4.6, 44 fps @ 146m, no shaders, with tree-laden terrain all the out to the fog limit |
23:45 |
VanessaE |
lemme test again with 0.4.2 |
23:46 |
VanessaE |
all the way out* |
23:50 |
VanessaE |
ok, with 0.4.2, no shader support, 62 fps @ 118m |
23:50 |
VanessaE |
same map and view as the 0.4.6 test |
23:51 |
VanessaE |
so that's 6424 foo-ops/sec versus 7552 ;) |
23:56 |
VanessaE |
current dev, 61 fps @ 199m, so it's definitely fastest there |
23:57 |
VanessaE |
so maybe it's just the behavior of the view range tuner that makes it feel slower? |