IRC logs of Libera.Chat #BZFlag for Friday, 2024-02-23

*** FastLizard4 is now away: AWAY from keyboard00:09
bz-nextI'm thinking for the map viewer / editor it'd be nice to eventually integrate modeltool into it. As well as have a feature where you can collect assets from other maps (like an asset drawer)00:20
bz-nextit is so close to being a really full featured map editor... I just don't know if it's that worth sinking more time into00:24
bz-nextI am reminded of what I read about bzeditwin32 in the wiki where it was developed, nobody used it, then years later people started using it but development had long since stopped00:28
*** bz-next <bz-next!~bz-next@user/bz-next> has quit IRC (Quit: Leaving)02:32
*** bz-next <bz-next!~bz-next@user/bz-next> has joined #bzflag02:47
*** Juest <Juest!~Juest@user/Juest> has quit IRC (Ping timeout: 268 seconds)04:03
*** Juest <Juest!~Juest@user/Juest> has joined #bzflag04:11
*** FastLizard4 is back05:18
*** I_Died_Once <I_Died_Once!~I_Died_On@c-73-184-170-223.hsd1.ga.comcast.net> has quit IRC (Ping timeout: 260 seconds)05:22
*** FastLizard4 is now away: AWAY from keyboard05:44
AgathaOn Paradise_Valley, the leaves don't alpha-blend correctly over the water. I remember being told that bz solves this by actually sorting the geometry and blending back-to-front, but a quick fix would be to alpha-threshold in the shader instead.06:07
*** FastLizard4 is back06:34
*** FastLizard4 is now away: AWAY from keyboard07:07
bz-nextyeah, there is no sorting yet, I just try to cheat and render alpha-enabled stuff in a rough batch after opaque stuff. AFAIK alpha threshold is a binary transparent/not-transparent decision, and is usually enabled manually by map makers using the alphathresh material property08:43
bz-nextThe current setup does do alphathreshold, but only when the material asks it to08:44
bz-nextI had read that there are ways to try to handle alpha in the shader rather than sorting, and I'd like to give that a shot as well08:47
bz-nexton paradise valley, the trouble is that both the leaves and the water have alpha, so they're both part of the same batch job and might be drawn in the wrong order for alpha blending to work out right08:49
bz-nextin the worst case, having to process basically every tri per frame on the CPU, visibility test, and then sort, all just to have crappy 90s CGI alpha be perfect... it seems like such a bad deal, and implies adding a BSP for visibility testing too08:53
bz-nextit might be ultimately necessary but I really hope not, or that at least there's some way to cheat a bit08:55
bz-nextactually, re: your idea with alphathreshold, it might be enough in this case to just cheat and, if a material has a texture with an alpha channel, just set alphathreshold to a small nominal value08:57
*** Sgeo <Sgeo!~Sgeo@user/sgeo> has quit IRC (Read error: Connection reset by peer)08:57
bz-nextI've put through your suggestion for now. It helps a little bit to just clamp alpha threshold to minimum 10% for materials with texture alpha. (I'm sure that'll break something else, but I haven't seen it happen yet)09:08
bz-nextactually, it breaks some of louman's textures, so I'll revert for now... the reason it is so visible on paradise valley is because the leaf textures I think have an incompletely-erased alpha channel. The transparent regions aren't actually transparent, there's a non-zero alpha on most of the pixels, even though it doesn't look like it09:16
bz-nextsorta like if you went into photoshop and erased around the leaf with a soft brush, rather than selecting the leaf, inverting selection, and hard-deleting the background09:17
bz-nexthttps://stackoverflow.com/questions/23280692/opengl-es2-alpha-test-problems A similar discussion09:30
bz-nextapparently alpha thresholding kinda sucks performance wise and will probably end up emulated once the rendering pipeline gets more interesting09:35
bz-nexteventually I want to make it kinda generically multi-stage, where everything renders to textures internally and those textures can be wired up to other render passes09:36
bz-nextthe general hope is that: most bzflag maps/scenes are pretty simple geometry wise, even relatively fancy maps, so it should be possible to exploit multiple rendering passes to cheat and make things simpler architecturally, since each pass should be fast given the simplicity of the scene09:41
*** I_Died_Once <I_Died_Once!~I_Died_On@c-73-184-170-223.hsd1.ga.comcast.net> has joined #bzflag11:33
*** _I_Died_Once <_I_Died_Once!~I_Died_On@c-73-184-170-223.hsd1.ga.comcast.net> has joined #bzflag12:28
*** FastLizard4 is back12:29
*** I_Died_Once <I_Died_Once!~I_Died_On@c-73-184-170-223.hsd1.ga.comcast.net> has quit IRC (Ping timeout: 256 seconds)12:31
*** I_Died_Once <I_Died_Once!~I_Died_On@c-73-184-170-223.hsd1.ga.comcast.net> has joined #bzflag12:32
*** _I_Died_Once <_I_Died_Once!~I_Died_On@c-73-184-170-223.hsd1.ga.comcast.net> has quit IRC (Ping timeout: 260 seconds)12:32
*** FastLizard4 is now away: AWAY from keyboard13:08
*** FastLizard4 is back13:36
*** FastLizard4 is now away: AWAY from keyboard14:12
*** FastLizard4 is now away: GONE - Screen Detached and Disconnected from IRC (I'm probably asleep, at work, or doing something in real life)14:41
*** cods <cods!~fred@tuxee.net> has quit IRC (Ping timeout: 256 seconds)14:53
*** Sgeo <Sgeo!~Sgeo@user/sgeo> has joined #bzflag14:57
*** Sgeo <Sgeo!~Sgeo@user/sgeo> has quit IRC (Read error: Connection reset by peer)15:31
*** Sgeo <Sgeo!~Sgeo@user/sgeo> has joined #bzflag15:34
Juestblast007: sounds good to call for a devtest party on the forums?15:50
*** cods <cods!~fred@tuxee.net> has joined #bzflag16:03
blast007yeah16:43
blast007are you on the Discord channel too?  that might also be a good way to get people to help test16:44
bz-nextI'll gladly help break it, I wonder if the bug where it wouldn't run in my windows 10 vm is fixed, it'd just black screen and freeze16:45
bz-nextactually, I think the UI worked, it just wouldn't render. I could navigate to "quit" by memory and that worked OK16:46
Juestbz-next: sounds like your vm display driver sucks :)18:57
Juestusing vmware?18:57
Juestor kvm?18:57
Juestunless you passthrough a gpu, dont expect good performance out of 3d acceleration and such18:57
Juestyeah im on the discord server blast007 18:59
*** FastLizard4 is back19:24
*** FastLizard4 is now away: AWAY from keyboard20:33
bz-nextit's just a quick and dirty virtualbox vm21:10
Juestyeah virtualbox sucks at gaming21:29
Optic_DelusionI always tried to avoid using any transparency whatsoever that uses BZ's alpha channel math.  If i need transparency I use a transparent texture. Much, much better.21:54
Optic_Delusionthe only place I use alpha channel is on my billboards, where it goes from 100 percent opaque to 100 percent transparent.21:55
bz-nextafaik texture alpha goes through the same sort of stuff as setting an alpha color does. The geometry still has to be sorted per-frame for the blending to work out right21:57
bz-nextfor most maps, just rendering everything with alpha in a second pass is enough for stuff to work, but on paradise valley in particular, since the tree leaves have some non-zero alpha junk left in their "transparent" areas you get some pretty bad artifacts doing it that way21:58
bz-nextusing alpha threshold for the behavior you describe I think is the ideal way in current bzflag, since then there's no need for blending at all21:59
bz-nextpixels below the threshold just get discarded completely22:00
bz-nextI think the general solution to this is to use some sort of order-independent transparency algorithm in the shader and do a multi-pass render22:06
bz-nexthttps://casual-effects.blogspot.com/2015/03/implemented-weighted-blended-order.html Something like this maybe22:09
*** FastLizard4 is back22:50

Generated by irclog2html.py 2.17.3 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!