Minetest logo

IRC log for #minetest-dev, 2015-07-07

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

All times shown according to UTC.

Time Nick Message
00:07 est31 ok next idea
00:07 est31 what about adding a medium-complicated category?
00:08 est31 where only one (additional) dev has to agree
00:08 est31 larger stuff still needs two (additional) devs
00:08 est31 this is to end the "three devs to merge a pr" debate
00:09 est31 not for the "trivial" vs "non-trivial" debate
00:10 est31 because here I really think it should be relative from the dev. If you know that dev knows alot about a topic, and you trust them, they should be abled to push commits there faster.
00:12 est31 most of my "pushing in 5 minutes" commits had functional content, I still regard them as trivial.
00:14 est31 but yea, lets do pr testing tomorrow
00:15 est31 also I suggest to not discuss too old PRs, they are already over-discussed, lets start with those which haven't been looked at, then look at the medium old ones, like the logging or threading cleanup.
00:16 kaeza joined #minetest-dev
00:18 est31 hmmmm, has anybody "extensively reviewed" the pr already, to your knowledge? -->> https://github.com/minetest/minetest/pull/2613#issuecomment-91109955
00:19 est31 I agree, one shouldn't rush things, but letting changes rot because one is too lazy to review them isn't motivating either.
00:19 chchjesus joined #minetest-dev
00:20 est31 like me, i am lazy.
00:21 kaeza I couldn't find the relevant code. What are the valid characters for player names? [A-Za-z0-9_] or are there more?
00:22 est31 its either in server.cpp or serverpackethandler.cpp
00:22 est31 perhaps networkprotocol.h
00:22 kaeza not in netproto.h
00:22 kaeza lemme check the others
00:23 kaeza ah PLAYERNAME_ALLOWED_CHARS
00:23 kaeza so [A-Za-z0-9_-], thank you est31
00:24 est31 I think we should reserve characters for future use
00:24 est31 like @ or #
00:24 est31 kaeza, what has been your usecase?
00:25 kaeza est31, capturing user names in an on_chat callback (to store things like notifications, etc)
00:26 kaeza e.g. when an user pings another one in messages
00:26 est31 ah I see, nice.
00:27 est31 makes sense to pre-filter here
00:30 diemartin joined #minetest-dev
00:31 est31 ok bye gotta read about lock less data structures
00:41 est31 joined #minetest-dev
00:42 est31 yea if you have compare-and-swap, you don't need locks anymore.
00:43 est31 are they more performant than locks?
00:43 est31 I mean atomic variables
00:44 kaeza joined #minetest-dev
00:44 est31 locks are said to require alot of time
01:24 RealBadAngel joined #minetest-dev
01:32 Wuzzy joined #minetest-dev
01:48 kahrl_ joined #minetest-dev
01:51 sloantothebone joined #minetest-dev
02:00 RealBadAngel hi
02:00 RealBadAngel whats up?
02:18 RealBadAngel looks like i found accidentaly a bug
02:19 RealBadAngel https://github.com/minetest/minetest/blob/master/src/nodedef.cpp#L132 vs https://github.com/minetest/minetest/blob/master/src/nodedef.cpp#L144
02:45 paramat joined #minetest-dev
02:51 paramat hmmmm, i updated #2890 based on your input, also changed a few 'int's to 's16's
02:51 ShadowBot https://github.com/minetest/minetest/issues/2890 -- Mgv7: Auto-set lowest mountain generation level by paramat
02:53 est31 joined #minetest-dev
02:54 est31 RealBadAngel, thats no bug
02:54 est31 once it checks protocol_version, the other time it checks version
02:54 est31 version is set to 1 only if protocol_version is >= 17
02:54 est31 look at line 123
02:54 est31 and 138
02:55 RealBadAngel kinda misleading
02:55 est31 yea
02:56 RealBadAngel i need to bump protocol version what im supposed to do in deserialize?
02:56 est31 interesting however how this problem was solved before the days of the client knowing the deployed protocol version.
02:56 est31 what do you want to do?
02:57 RealBadAngel if i will rely on 1 this will not mean im reading 26 only
02:57 RealBadAngel fuck this is not right
02:57 RealBadAngel serialize writes actual protocol version
02:58 RealBadAngel and deserialize read it
02:58 est31 no
02:58 RealBadAngel this check is not right
02:58 RealBadAngel ooops
02:58 est31 it writes "tiledef serialisation version"
02:58 RealBadAngel youre right
02:58 est31 which is 1 for protocol 17 and above
02:58 est31 and 0 otherwise
02:58 est31 I suggest you can do it like there
02:59 est31 add a if(protocol_version >= 26) writeu8(os, 2);
02:59 est31 then make the if to an elseif
02:59 est31 (the other if)
02:59 RealBadAngel i see
02:59 est31 and in deserialize make a similar check if (version >= 2)
03:00 est31 protocol 26 isn't there yet, but will come with the new utf-8 based chat
03:01 RealBadAngel http://pastie.org/10276750
03:01 est31 yup
03:01 RealBadAngel whatever utf or tiledef changes, we will bump it
03:02 est31 yea, but lets bump it once, not twice
03:02 est31 so the first pr that doesnt merge, shouldn't bump
03:02 est31 s/doesnt merge/gets merged/
03:03 RealBadAngel im pretty done with the PR, at least with c++ changes
03:03 RealBadAngel later today i will just apply new flags to shaders
03:05 RealBadAngel est31, have you saw code i made for sending flags to shaders?
03:06 RealBadAngel http://pastie.org/10276757
03:08 RealBadAngel neat, isnt it? :)
03:10 paramat left #minetest-dev
03:12 est31 RealBadAngel, why do we have lines 13 to 17?
03:13 est31 ah I see
03:13 est31 ok
03:13 est31 yea really hacky
03:13 est31 but I guess there is no other way
03:13 RealBadAngel yup, thats the only way
03:13 est31 RealBadAngel, can we pass colors to shaders?
03:14 RealBadAngel what do you mean?
03:14 est31 without a texture
03:14 est31 well, one could encode 3 bits inside an 8 bit color value too
03:15 est31 but this method is ok too
03:15 RealBadAngel that would work but will be an overkill too
03:16 RealBadAngel remember that each bit more makes more textures
03:16 est31 yea but you have a maximum with the number of tiles
03:16 RealBadAngel for sending 8 bits we would need 256 textures
03:16 RealBadAngel theres a better way
03:17 RealBadAngel we can attach next uniform sampler with a color texture
03:17 est31 whats an uniform sampler?
03:17 RealBadAngel texture slot in shader
03:17 RealBadAngel im using now 3 out of 4
03:18 RealBadAngel 4th could be used to colorize the output texture
03:18 est31 well, your descision, both is ok to me
03:18 est31 additional note: document your protocol change in network/networkprotocol.h
03:19 RealBadAngel already did
03:19 est31 ok then
03:19 RealBadAngel i can easily introduce nodes painting but this will work ONLY with shaders
03:19 RealBadAngel no way to do that without them
03:19 est31 ?
03:20 est31 "nodes painting?"
03:20 RealBadAngel grass for example, depending on biome
03:20 RealBadAngel or anythin
03:21 RealBadAngel thats what sending a color to shaders means for me :)
03:21 est31 ah I see
03:22 hmmmm est31:  no, not to my knowledge
03:22 hmmmm I looked at it and it seems fine, except WTH is up with the change from .h to .hpp?
03:23 hmmmm seems kind of random
03:23 est31 he changed it back
03:23 est31 read on
03:24 est31 (and made it a separate commit)
03:25 hmmmm I am looking at 2613
03:26 est31 ah
03:26 RealBadAngel est31, and what you had in mind when asked if we can send there a color?
03:26 est31 RealBadAngel, we can encode the bits inside the color
03:27 est31 hmmmm, ah I see, I had the logging pr in mind. there he changed it back and said we can decide later on whether to switch to hpp or not, I guess if you ask him he will change it on 2613 too.
03:28 RealBadAngel est31, if we could send a color this way, texture trick wont be needed
03:28 est31 I like .h more than .hpp. Its shorter, there is no technical reason for .h
03:28 hmmmm yeah i like .h more too
03:28 hmmmm it also seems to be the norm for other C++ projects
03:31 hmmmm anyway I need to take a better look at the actual code
03:31 RealBadAngel sloantothebone> I tried cinematic mode and it didnt work
03:31 RealBadAngel somebody knows what cinematic mode actually does?
03:31 hmmmm it seems like most of it was copied over from jthread
03:33 sloantothebone Its supposed to make the player turn more smoothly
03:33 sloantothebone I guess it could also make him move more smoothly in fly mode
03:33 hmmmm anyway
03:33 hmmmm 2613 has a +1 from me
03:34 hmmmm it looks fine
03:34 sloantothebone Like you move the mouse and it slowly slides
03:34 sloantothebone I think minecraft has a cinematic mode
03:34 hmmmm I wonder if ShadowNinja made any functional changes from the original JThread thread starting synchronization
03:38 RealBadAngel omfg, i coded changes to like 10+ files over a few hours, it has compiled without a single warning and works
03:39 RealBadAngel happened for the very first time for me lol
03:40 Warr1024 I once wrote over 10,000 lines with only a missing semicolon.
03:41 Warr1024 Spemt like 4 hours looking for the bug that didn't exist.
03:42 RealBadAngel :)
03:42 Warr1024 Learned my lesson after that; now I make sure to have at least one bug on each screenful.
03:43 Warr1024 A good De Morgan's law screw-up in a semi-complicated if statement is a good way to get your mandayory bug over with.
03:45 Warr1024 also, it is damn hard to type with an on-screen keyboard, let alone code.
03:45 est31 true
03:45 est31 android: the only place where I dont like the shell
03:46 est31 (note: windows is no exception, it simply has nothing you can call shell)
03:46 Warr1024 I'm just conectbotted into my irssi session
03:46 Warr1024 Windows is supposed to have that powershell, but I've never messed with it.
03:47 est31 yea like me
03:48 Warr1024 I thought about using an IRC bouncer once upon a time, but irssi+sshd made it moot.
03:48 Warr1024 Nice to see you bskc, btw, RealBadAngel.  Been back long?
03:49 Warr1024 IIRC someone mentioned FXAA and it made me think it might be something you might be interested in :-)
03:55 sloantothebone_ joined #minetest-dev
04:06 est31 joined #minetest-dev
04:52 est31 joined #minetest-dev
04:53 est31 so, the next utf related pr is out
04:53 est31 hopefully the last one
04:54 est31 please note, all PRs are about different issues, one proposes network changes, one is a must have bug fix, one is just a big s///g except for one function addition.
04:55 est31 I tend to keep PRs close to the issues they are meant for, not just one "make everything great" PR
04:55 est31 with multiple different commits, you also have more informations when you have bisected an issue
04:56 est31 you wont have to scroll through hundreds of lines of unrelated changes.
04:59 hmmmm what policy do you guys like to use for constructors that could fail
04:59 hmmmm a). don't make constructors that fail, instead, move initialization into a separate function
05:00 hmmmm b). throw a fatal exception in the constructor on initialization failure
05:00 hmmmm c). save the errors from the ctor, but fail in methods that are able to fail
05:00 hmmmm ??
05:33 RealBadAngel joined #minetest-dev
05:47 Hunterz joined #minetest-dev
06:04 blaise hey, does the survival modpack that kaeza made work with the armor_3D mod?
06:04 blaise and HUD ?
06:04 blaise oops, wrong chan
06:18 nrzkt joined #minetest-dev
06:34 jin_xi joined #minetest-dev
06:53 OldCoder joined #minetest-dev
07:05 julienrat joined #minetest-dev
07:08 julienrat left #minetest-dev
07:10 Darcidride joined #minetest-dev
07:13 Darcidride_ joined #minetest-dev
07:44 Krock joined #minetest-dev
08:00 Yepoleb_ joined #minetest-dev
08:17 RealBadAngel joined #minetest-dev
08:28 rubenwardy joined #minetest-dev
08:44 Amaz joined #minetest-dev
08:48 Calinou joined #minetest-dev
09:27 cib0 joined #minetest-dev
09:35 jin_xi joined #minetest-dev
09:55 hmmmm joined #minetest-dev
10:00 VanessaE joined #minetest-dev
10:34 cib0 joined #minetest-dev
10:44 qwertie joined #minetest-dev
10:46 sloantothebone_ joined #minetest-dev
11:01 cib0 joined #minetest-dev
11:03 qwertie joined #minetest-dev
11:15 proller joined #minetest-dev
11:31 sloantothebone joined #minetest-dev
11:32 sloantothebone joined #minetest-dev
11:32 sloantothebone joined #minetest-dev
11:33 sloantothebone joined #minetest-dev
11:34 sloantothebone joined #minetest-dev
11:35 sloantothebone joined #minetest-dev
11:36 sloantothebone joined #minetest-dev
12:22 qwertie left #minetest-dev
12:23 diemartin joined #minetest-dev
12:27 RealBadAngel joined #minetest-dev
13:03 est31 joined #minetest-dev
13:41 qwertie joined #minetest-dev
14:08 bb94 joined #minetest-dev
14:17 est31 joined #minetest-dev
14:18 est31 hmmmm, I think we shouldn't have too rich constructors.
14:18 est31 they are just another form of overloading
14:18 est31 they should put some default values, no "real" work
14:19 est31 also, whats the problem? is it as bad as with destructors, where throwing an exception when you unroll a stack for another exception is fatal?
15:01 nrzkt https://github.com/minetest/minetest/pull/2889 => Ok for me
15:02 nrzkt will pushing it
15:05 rubenwardy You're supposed to give 15 minutes notice of merging :P
15:05 est31 he's network maintainer
15:05 est31 maintainers can push when they want, no?
15:05 est31 as long as they inform.
15:06 rubenwardy Ok
15:06 nrzkt sorry for the identity, forget to fix it, i used my real identity because of a global git config at work :)
15:07 est31 my "pushing in 5 minutes" was always triviality rule
15:07 nrzkt in fact nobody said HEY i push with you
15:07 est31 I hate this pushing bureocracy
15:07 nrzkt then no conflict :p
15:08 nrzkt the push prevention on IRC permit to don't have merge conflict :)
15:08 nrzkt then i should go, have a nice day
15:13 cib0 joined #minetest-dev
15:15 est31 hrmm I wonder if I do lua_toboolean, do I also need to do lua_pop for getting the next argument?
15:23 RealBadAngel hi guys
15:24 RealBadAngel hmmmm, you have said lately that you have found reason for slowdown, can you say anything more?
15:27 RealBadAngel est31, me too. this is DEVELOPMENT of a game, no one should expect such branch being stable
15:28 RealBadAngel our problem is that we work in async mode with mt game
15:28 RealBadAngel so whatever comes into the engine is used in mt_game
15:29 RealBadAngel imho game should be frozen  for engine stable
15:29 est31 ?
15:30 RealBadAngel est31, i started with reply to <est31> I hate this pushing bureocracy
15:31 est31 aha
15:31 est31 yea
15:31 RealBadAngel code to be perfected has to be a) written b) tested widely
15:31 est31 what do you mean with freezing game for stable engine? only use features of the last stable engine?
15:32 RealBadAngel dev branch of the engine is for testing
15:32 RealBadAngel yes
15:32 est31 so we should only use features of 0.4.12??
15:32 est31 or of that second, stable branch
15:32 RealBadAngel both should be frozen
15:32 RealBadAngel at the same level
15:32 est31 ah I see
15:33 RealBadAngel that would save us stupid reports, hey this is not working or that fails
15:34 RealBadAngel and on the other hand could push us with more frequent stable releases
15:34 est31 well, we would still get the reports
15:34 est31 but we get them earlier
15:34 RealBadAngel for example, if we will fix some urgent issue
15:35 RealBadAngel we push 0.4.12.1
15:35 est31 and can make a "merge into stable" descision more funded
15:35 est31 eww
15:35 RealBadAngel thats what others do
15:35 est31 you know that usually the third part of a version is used for that?
15:35 Calinou 0.4.12.1 is overversioning, don't do the same mistake Freeminer did
15:35 Calinou we really should use semver
15:36 RealBadAngel just an idea
15:36 RealBadAngel we can rush with numbers as firefox does ;)
15:36 RealBadAngel idea stays the same
15:39 RealBadAngel anyway, its just a sidenote, im not coding such stuff
15:39 RealBadAngel im just a guy who makes candies ;)
15:42 exio4 at least you don't have a white van
15:54 rom1504 joined #minetest-dev
16:12 RealBadAngel white vans are bad?
16:12 RealBadAngel lookin at the temperature outside they should be way better than black ones
16:15 jbb_ joined #minetest-dev
16:24 Krock RealBadAngel, vans made of carbon night me better than the regular ones.
16:25 est31 joined #minetest-dev
16:25 Krock a tree can help too
16:32 hmmmm RealBadAngel:  I haven't done anything with regards to the slowdown yet
16:33 est31 ok, next lua api question
16:33 est31 I want a method with a variable number of arguments
16:34 hmmmm RealBadAngel:  code does not have to be perfected to get into master, far from it.  i.e. the minimap uses an incredibly inefficient mapping algorithm
16:34 hmmmm but yet it somehow got in
16:34 est31 can I simply do lua_isboolean(L, ARG_NUM + 1); and assume its an argument
16:34 est31 or do I need special checking?
16:34 hmmmm you can do that
16:35 est31 great
16:35 hmmmm but i recommend making the extra argument into a table and extracting the optional arguments from the table
16:35 est31 why?
16:35 hmmmm otherwise you wind up with incredibly inflexible APIs
16:35 hmmmm look at some voxelmanip functions, or create_schematic
16:35 est31 makes sense
16:35 hmmmm i didn't know at the time how bad it would be to keep adding on optional parameters
16:36 hmmmm and now it has to stay that way for reverse compatibility..
16:36 est31 even for a function thats called on every on_globalstep, for every player?
16:36 hmmmm just make the function the way you think it should be, and gather feedback from that
16:36 hmmmm take the union of all the best advice
16:37 hmmmm and if it turns out you did screw up, that's okay, the reverse compatibility requirement does not apply to APIs introduced in development versions
16:38 hmmmm but as soon as 0.4.13 is released... now you're stuck with that interface
16:38 est31 I'll make a table and use getboolfield()
16:44 twoelk joined #minetest-dev
16:53 Hunterz joined #minetest-dev
16:54 Robert_Zenz joined #minetest-dev
17:16 twoelk joined #minetest-dev
17:36 Anchakor joined #minetest-dev
17:50 RealBadAngel joined #minetest-dev
17:53 cib0 joined #minetest-dev
18:03 diemartin joined #minetest-dev
18:16 sloantothebone joined #minetest-dev
18:26 Niebieski joined #minetest-dev
18:33 MinetestForFun joined #minetest-dev
18:33 RealBadAngel kahrl_, here?
18:45 RealBadAngel hmmm, Calinou, sfan5, Tesseract https://imgrush.com/FXqdrac34rQ3.png
18:45 err404 joined #minetest-dev
18:45 RealBadAngel can you see whats different with this screenshot?
18:45 sfan5 the water on the minimap looks very blue
18:46 RealBadAngel its dreambuilder water, but thats not the point ;)
18:46 RealBadAngel i just gained in this very scene double fps
18:46 RealBadAngel with a simple trick
18:47 RealBadAngel just wanted to know if any can say what i did ;)
18:47 Calinou yes the water should be darkened
18:47 Calinou or add transparency support :)
18:48 Calinou you switched leaves to glasslike, RealBadAngel?
18:48 Calinou seems unlikely
18:48 RealBadAngel bingo
18:48 RealBadAngel leaves are glasslike in this screenshot
18:49 RealBadAngel trees seems a bit lighter because of it, but performance gain is massive
18:51 RealBadAngel that could be the middle option between fancy and solid leaves
18:53 hmmmm what's the difference between glasslike and allfaces?
18:53 RealBadAngel less vertices
18:54 hmmmm allfaces calls makeCuboid and then GLASSLIKE seems to construct its own cuboid
18:54 RealBadAngel and less visible faces
18:54 RealBadAngel inside of the cube is visible in allfaces
18:54 hmmmm ahh
18:54 hmmmm actually wtf
18:55 hmmmm unless I'm misunderstanding something it seems like makeCuboid overdraws a cube
18:55 RealBadAngel comment out whole NDT_ALLFACES and put the case for it next to NDT_GLASSLIKE
18:56 RealBadAngel content_mapblock.cpp
18:56 hmmmm in any case makeCuboid looks like incredibly sloppy code
18:57 RealBadAngel all the drawtypes that use cuboid code are like that
18:58 RealBadAngel thats one of the reasons native meshes are faster
18:59 hmmmm unless I'm mistaken, both makeCuboid and NDT_GLASSLIKE append 24 verticies and 36 indicies
18:59 RealBadAngel stairs mesh is 2-3 times faster than nodebox version (measured before i merged conversion on startup)
18:59 selat joined #minetest-dev
19:00 RealBadAngel youre right
19:00 RealBadAngel but thats not the problem when rendering
19:00 hmmmm you said the performance gain is due to less verticies
19:00 RealBadAngel yes, engine is culling not visible one
19:01 RealBadAngel ones
19:01 RealBadAngel and inside faces are not drawn
19:02 RealBadAngel just apply those changes, start a world with lotsa leaves (moretrees can be of help) and see the difference
19:03 RealBadAngel this definitely should go in as menu option
19:04 RealBadAngel propably even as default setting
19:08 RealBadAngel also i need to check if using cube object instead of cuboid code could be faster
19:13 paramat joined #minetest-dev
19:14 paramat i support glasslike leaves, allfaces seems overkill to me and has long caused performance drop
19:16 paramat also, mgv7 biomes will have large thick forests with tall trees, even mgv6 now has big jungles as default
19:20 paramat i've actually never used fancy leaves due to it's excessive drawing of internal faces
19:21 paramat however, glasslike leaves might look a little too transparent for my taste, especially appletrees
19:23 Amaz joined #minetest-dev
19:26 hmmmm cuboids share unnecessary geometry
19:27 hmmmm if only mapblock meshes didn't update every 5 seconds we could perform mesh welding and save on some redundant vertices
19:27 hmmmm :( mesh welding is really slow
19:29 hmmmm in any case I have a feeling we're doing a lot of overdrawing which is also another cause for lame fps
19:29 hmmmm has anybody ever played Terasology?  I tried it out and I noticed you can toggle between different visual modes which makes for easy debugging, i think we should have something like that
19:30 hmmmm easy graphics debugging*
19:31 Hunterz joined #minetest-dev
19:31 hmmmm less talk more code
19:31 sloantothebone Why doesnt cinematic mode work in minetest? it says its enabled but it doesnt work
19:31 hmmmm probably because it's broken like everything else
19:32 sloantothebone k
19:32 sloantothebone :/
19:32 diemartin huh? WFM
19:32 sloantothebone I'll update minetest and see what happens
19:32 hmmmm none of us here are familiar with cinematic mode and how it's supposed to work
19:32 hmmmm it'd probably be a better idea to contact the original author
19:32 diemartin assuming you mean the smoother camera rotation or whatever
19:33 diemartin or is there more to it?
19:33 hmmmm which looks like rubenwardy
19:33 hmmmm diemartin:  I have absolutely no idea
19:33 sloantothebone Well, I recently tried it in minecraft, and when I moved my mouse the camera would slowly accelerate and then decelerate towards the target
19:34 diemartin sloantothebone, works that way for me
19:35 diemartin but maybe the effect could be a bit slower (or configurable)
19:35 rubenwardy joined #minetest-dev
19:35 sloantothebone Ok upgrading minetest
19:35 rubenwardy It smooths the camera rotation. It should be enabled using f8
19:36 sloantothebone How do u configure it
19:36 paramat works for me, it's fairly subtle though
19:36 cib0 joined #minetest-dev
19:36 sloantothebone subtle?
19:37 sloantothebone is it noticable?
19:37 paramat yes noticeable
19:37 rubenwardy increase cinematic_camera_smoothing if you want more of an effect
19:37 Calinou it is FPS dependent
19:37 Calinou if you have very high FPS the effect will be weaker
19:37 Calinou we made the effect much weaker than Minecraft's by default
19:38 paramat short sharp mouse movements help to show it's effect
19:38 rubenwardy I tested it on 10 fps and 60 fps and it looked similar in effect
19:38 rubenwardy I can't get 100+ fps
19:38 sloantothebone Well the ammount of acceleration should be adjustable
19:38 rubenwardy anyway, gtg, will read logs
19:39 rubenwardy sloantothebone: cinematic_camera_smoothing
19:39 rubenwardy in minetest.conf
19:39 rubenwardy see minetest.conf.example
19:39 sloantothebone Isnt that a bool setting?
19:39 hmmmm it seems to work for me
19:39 rubenwardy https://github.com/minetest/minetest/blob/master/minetest.conf.example#L137
19:39 rubenwardy sloantothebone: that's cinematic_mode
19:40 rubenwardy see this whole section: https://github.com/minetest/minetest/blob/master/minetest.conf.example#L131-L137
19:40 hmmmm RealBadAngel:  why is a new MapBlockMesh allocated every time the pointer goes onto a different node
19:42 RealBadAngel hmmm, thats how its done. selection and crack nodes should become separate scene nodes to avoid that
19:42 hmmmm no, no, not cracking on nodes
19:42 hmmmm I'm asking about the simple act of *moving the pointer*
19:43 RealBadAngel will take a closer look, gimme a few minutes
19:43 sloantothebone So are you gonna add twitch tv integration too? lol
19:43 RealBadAngel paramat, you can make it look more dense with different textures
19:44 paramat yeah
19:45 RealBadAngel hmmmm, also theres another aspect of glasslike, only border faces of the area are drawn
19:45 sloantothebone If you're talking to me say my name
19:45 RealBadAngel node inside buch of leaves is not displayed at all
19:45 sloantothebone and I suggest you add recordmydesktop integration
19:46 RealBadAngel paramat, https://imgrush.com/ojUvQCurqVKH compare willow and the default tree for example
19:48 paramat yes, with the current leaves texture appletree forests possibly look too 'light'
19:48 paramat less gaps in the texture might help
19:51 paramat but then the gaps are there to make visible the effect of fancy leaves internal faces
19:51 est31 joined #minetest-dev
19:51 Robert_Zenz joined #minetest-dev
19:56 sloantothebone Calinou says recordmydesktop is obsolete
19:58 paramat eh? new style leaves are true by default, i think it should be false, especially now we have big jungles in mgv6
19:58 hmmmm might not be necessary if glasslike really works that well
19:59 paramat yeah glasslike as default would also be preferable
20:05 paramat the default was for a time when we only had mgv6 with a few small appletrees and disabled jungles
20:10 err404 joined #minetest-dev
20:16 H-H-H joined #minetest-dev
20:19 Calinou no, we should keep new style leaves on by default
20:19 Calinou Minecraft has fancy trees enabled by default too
20:19 Calinou and opaque leaves are plain ugly
20:21 RealBadAngel Calinou thats because of wrong textures
20:21 RealBadAngel have you seen the ones ive proposed to use?
20:22 Calinou by the way, Carbone used to use glasslike jungle leaves
20:22 Calinou it didn't look that good
20:22 RealBadAngel https://imgrush.com/yhDRWJZHz_hc
20:23 RealBadAngel and when speaking of textures: https://imgrush.com/ezvxyP09xAIp.png vs https://imgrush.com/FoYpSUN9P7sV.png
20:24 RealBadAngel the altered ice texture is made out of old one using "make seamless" in gimp
20:40 Calinou I like it more
20:40 Calinou merge please :D
21:08 paramat i might bisect our mysterious memory leak. i really notice it when working on mapgen and generating map by flying fast: 0.6GB per minute
21:33 hmmmm paramat, did you try turning off mods
21:34 paramat this was with no mods enabled
21:34 hmmmm hmmmm....
21:34 hmmmm oh my, what if I did cause a memory leak
21:34 hmmmm i don't think i've ever been responsible for a memory leak in minetest before
21:35 paramat i'll open another issue on this with my findings, then bisect
21:35 hmmmm if I were you I'd look carefully at these commits https://github.com/minetest/minetest/commits/master/src/noise.cpp
21:36 hmmmm that's really the only memory management that the mapgen does
21:36 paramat okay
21:37 sloantothebone joined #minetest-dev
21:38 sloantothebone joined #minetest-dev
21:47 hmmmm what do you guys think about @#2849
21:47 paramat hmmmm i agree with your suggestions for #2890 and have now updated again. also, mountain noises are now calculated in generateMountainTerrain. will push later
21:47 ShadowBot https://github.com/minetest/minetest/issues/2890 -- Mgv7: Auto-set lowest mountain generation level by paramat
21:48 hmmmm ah okay, cool
21:57 est31 #2849
21:57 ShadowBot https://github.com/minetest/minetest/issues/2849 -- Add antialiasing UI setting by mark7
21:58 paramat i've never used antialias, not sure how useful it is. if it is very useful i have nothing against the PR
21:59 est31 that isnt even indented with tabs
21:59 hmmmm ahh good catch
22:00 hmmmm thanks
22:00 RealBadAngel #2892
22:00 ShadowBot https://github.com/minetest/minetest/issues/2892 -- Add new leaves style - simple (glasslike drawtype) by RealBadAngel
22:00 RealBadAngel can you guys test it?
22:01 hmmmm that's going to conflict with this commit
22:01 hmmmm yea i'll try it out in a bit
22:01 hmmmm hold on
22:01 RealBadAngel ok
22:01 est31 yea it does conflict
22:02 RealBadAngel i can rebase if the other goes in first
22:02 RealBadAngel thats not a problem
22:03 est31 yea
22:08 RealBadAngel hmmmm, build a cube out of leaves 3x3x3 nodes - allfaces will draw 162 faces, glasslike 27
22:08 RealBadAngel now you should get exact picture of the gain
22:10 RealBadAngel to make it even more dramatic: typical oak from moretrees has circa 2k of leaves nodes - thats 324000 versus 54000 faces
22:10 MinetestForFun joined #minetest-dev
22:11 VanessaE confirmed RBA's pull, works fine for me, but I see no appreciable performance difference between "simple" and "fancy".
22:12 RealBadAngel im testing it now too
22:15 VanessaE hmmmm: seriously, about the overdrawing?
22:15 VanessaE (saw in the logs earlier)
22:18 RealBadAngel ok, found a scene with lotsa leaves:
22:19 RealBadAngel 44 fps opaque, 40 simple, 37 fancy
22:20 VanessaE what is it that's pushing my CPU to 100% (of one core) in our test scene??
22:20 VanessaE I think this is a big part of the FPS difference.
22:20 VanessaE VBOs might help here but won't be the be-all, end-all I think
22:21 RealBadAngel btw, view distance is increasing automatically
22:21 VanessaE For reference:  the test scene is Full dreambuilder game, mg v6, seed = 5131391305046360830 , coords +40,+2,-121 looking East (270 degrees yaw)
22:21 VanessaE (for the others here, not RBA :) )
22:21 RealBadAngel 162m for fancy, 178 for simple, 191 for opaque
22:22 RealBadAngel so not only higher the fps but distance too
22:22 hmmmm VanessaE:  Not just due to occlusion culling
22:23 hmmmm did I ever post that article on Minecraft PE caves?
22:23 VanessaE yes
22:23 hmmmm yeah
22:23 hmmmm caves might be drawn when they don't need to be
22:23 VanessaE I've seen it, and I seem to recall someone was gonna try to implement that in minetest
22:23 hmmmm yeah but how do we know we're overdrawing caves :p
22:23 VanessaE idk
22:23 hmmmm investigate first, then implement
22:24 VanessaE I remember someone here said they finally tried that looking-at-a-wall test and found it rather lacking
22:24 VanessaE I mean just recently that is
22:24 VanessaE hardly a case for drawing caves, but surely an occlusion culling issue anyway
22:25 RealBadAngel https://imgrush.com/STb0eyiLqOY- vs https://imgrush.com/kVG2NR1fVhQE
22:25 VanessaE ^^^^^^ that's the plantlife test world, not the one I just gave a seed + coords for
22:25 proller joined #minetest-dev
22:26 hmmmm I think I have an idea on how to debug occlusion culling
22:26 VanessaE RealBadAngel: so only a gain of 6 fps for you (for the same view range)
22:26 RealBadAngel range is higher
22:26 VanessaE well 7 meters further
22:26 VanessaE which is a rounding error in the view range tuner.
22:26 hmmmm maybe there can be a "freeze blocks drawn" where you're viewing a screen, hit a button, and then only the blocks that were being rendered in that frame get rendered all the time until you resume
22:26 RealBadAngel could be
22:27 RealBadAngel but 6 frames is 13%
22:27 RealBadAngel and thats a lot
22:28 VanessaE yes
22:28 VanessaE but it ain't "double" like you thought :)
22:43 VanessaE RealBadAngel: you got some idea how to make that VBO idea usable (in practice I mean, i.e. no mem leaks) ?
22:45 troller joined #minetest-dev
22:51 RealBadAngel well, even 13% is good
22:51 VanessaE yes indeed
22:51 VanessaE not to downplay it :)
22:52 RealBadAngel need to check something
23:02 paramat personally i find glasslike leaves not dense enough and look worse than opaque. not really opposed though, just neutral, others may like it
23:04 VanessaE paramat: perhaps, but it's a trivial change
23:04 VanessaE seems like RBA could just merge it at this point.
23:10 kahrl_ yay :) https://hosted.weblate.org/projects/minetest/minetest/
23:12 VanessaE weblate is back?
23:15 RealBadAngel good :)
23:16 RealBadAngel kahrl, whats your opinion on new leaves?
23:16 kahrl like paramat - too sparse
23:16 kahrl but I'm fine with it offered as an option
23:17 RealBadAngel its really useable with moretrees
23:17 RealBadAngel btw, can you check fps gain for you?
23:18 paramat the PR would make it the default, i'm now not sure about that. perhaps fancy should remain the default
23:19 paramat i would prefer opaque the default, but that seems unpopular =)
23:19 kahrl atm I don't have a world with a spot that's consistently below 60 fps :P
23:20 kahrl and my video driver limits fps to that
23:20 RealBadAngel get dreambuilder
23:20 RealBadAngel or moretrees alone
23:21 RealBadAngel about default setting, we have picked simple for the reason it offers middle quality and speed
23:22 RealBadAngel new users will get better fps out of the box
23:22 paramat yes that makes sense, but it looks worse, doesn't make a good first impression
23:23 RealBadAngel when you are comparing two screenshots
23:23 kahrl a new user won't be using moretrees right off the bat, I think
23:23 VanessaE paramat: but if you have no baseline to compare against, what is "worse"?
23:23 kahrl so we can afford fancy trees
23:23 VanessaE kahrl: you'd be surprised!
23:23 RealBadAngel when i linked the first screenshots folks havent even noticed what was changed
23:24 RealBadAngel kahrl, even default jungles are slowing down rendering
23:24 RealBadAngel <RealBadAngel> hmmmm, build a cube out of leaves 3x3x3 nodes - allfaces will draw 162 faces, glasslike 27
23:25 RealBadAngel so whos for simple and whos for fancy as default?
23:26 paramat ideally i would prefer opaque default and think it necessary for some users, but perhaps we should impress players at first with fancy
23:26 RealBadAngel kahrl youre for fancy too?
23:27 RealBadAngel hmmmm, est31, Tesseract ?
23:27 RealBadAngel me and VE are for simple
23:28 kahrl well crap, I discovered an unrelated bug while making the dreambuilder world
23:28 VanessaE uh oh
23:28 * VanessaE hides
23:29 kahrl deleted my minetest.conf, launched the main menu, clicked the dreambuilder button and got https://gist.github.com/kahrl/3fc56e64809ab009ce84
23:29 VanessaE I thought that was already fixed?
23:29 VanessaE hm
23:29 kahrl I just pulled
23:29 * VanessaE shrugs :)
23:29 VanessaE <insert sfan5's favorite emoji here>
23:30 kilbith joined #minetest-dev
23:31 paramat will push #2890 when checks finish
23:31 ShadowBot https://github.com/minetest/minetest/issues/2890 -- Mgv7: Auto-set lowest mountain generation level by paramat
23:41 asl97 joined #minetest-dev
23:46 RealBadAngel ha!, i do have an idea how to make simple leaves more dense while even displaying less nodes
23:46 paramat now pushing 2890
23:48 RealBadAngel simply, when all the neighbours are of the same kind, dont add the node to meshcollector
23:48 VanessaE RealBadAngel: so, what I said before but even more extreme :)
23:48 RealBadAngel this way we will get visible faces in the middle
23:49 VanessaE you sure that won't add faces?
23:49 asl97 RealBadAngel: you mean something like rendering all 6 faces of the outer parts of the tree/leaves?
23:49 VanessaE I'd have thought the regular hidden-face culling would delete the nodes in the middle anyway
23:49 RealBadAngel you can test it with glass
23:50 RealBadAngel make the hollow cube 3x3x3
23:50 RealBadAngel with air in center
23:51 RealBadAngel nah, nvm, it looks ugly ;)
23:52 VanessaE lol
23:52 VanessaE FAIl :)
23:52 paramat complete
23:53 RealBadAngel btw, https://github.com/minetest/minetest_game/pull/551
23:53 RealBadAngel why this is not merged yet?
23:54 paramat that should be merged yes, waiting for another mtgame team +1 i guess
23:56 paramat since it's a nodebox thing, not a new feature, perhaps sfan5's +1 is enough though
23:57 asl97 couldn't rendering all 6 faces of nodes with any expose part and none of the non-expose node work?  that would make it more dense but still render with lesser face.
23:57 paramat anyway if i see another mtgame team member around i'll try to get 551 merged
23:58 RealBadAngel paramat, its a mesh thing ;)
23:59 paramat heh indeed
23:59 Sokomine joined #minetest-dev

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