00:18 <+bridge> [ddnet] https://tenor.com/view/oh-my-gif-25288613 01:01 <+bridge> [ddnet] @c0d3d3v do you have some time to devote to me that I want to set vscode well? 01:03 <+bridge> [ddnet] who use vscode for dev ddnet client? 01:42 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/964309645055393852/unknown.png 02:01 <+bridge> [ddnet] Solution: gdb not installed lol 04:46 <+bridge> [ddnet] <ᶰ°Konͧsti> Is it possible to restore the last save i used on my lan Server? I accidently turned on super which would break all the switches etc 04:48 <+bridge> [ddnet] <ᶰ°Konͧsti> And i cant just restart the map, the testrun is almost at 4h :monkaS: 08:52 <+bridge> [ddnet] Maybe we print it out on black console window or in the logfile if you have one activated. Otherwise a backup of the ddnet-scores sqlite file 09:22 <+ChillerDragon> Wait so you can not cheat on maps with switchers without breaking them? 10:18 <+bridge> [ddnet] ```C 10:18 <+bridge> [ddnet] pFont->m_TextureData[0] = new unsigned char[pFont->m_CurTextureDimensions[0] * pFont->m_CurTextureDimensions[0]]; 10:18 <+bridge> [ddnet] void *pTmpTextData = malloc(NewTextureSize); 10:18 <+bridge> [ddnet] mem_copy(pTmpTextData, aTextureData[0], NewTextureSize); 10:18 <+bridge> [ddnet] ```What happens if one allocates memory to a local scoped pointer then memcopy to another variable.Also I do not understand how this code is not allocating twice or freeing. Im really confused 10:18 <+bridge> [ddnet] https://github.com/ChillerDragon/ddnet/blob/e54da1b396c1f6c11d9f7b01bdc375eac7fa7fcc/src/engine/client/text.cpp#L723 10:18 <+bridge> [ddnet] https://github.com/ChillerDragon/ddnet/blob/e54da1b396c1f6c11d9f7b01bdc375eac7fa7fcc/src/engine/client/text.cpp#L325 10:20 <+bridge> [ddnet] ? XD 10:21 <+bridge> [ddnet] the graphics instance deletes the pointer in the backend 10:21 <+bridge> [ddnet] its just for uploading to the GPU 10:21 <+bridge> [ddnet] but isnt it doing new and then malloc on the same var ? 10:22 <+bridge> [ddnet] malloc is for backend 10:22 <+bridge> [ddnet] new is for local data 10:22 <+bridge> [ddnet] i dont get shit 10:22 <+bridge> [ddnet] but you saying that the backend deletes the pointer is very helpful alr 10:22 <+bridge> [ddnet] is that in ddnet code? 10:22 <+bridge> [ddnet] mem_copy(pTmpTextData, aTextureData[0], NewTextureSize); 10:22 <+bridge> [ddnet] mem_copy(pTmpTextData, aTextureData[0], NewTextureSize); 10:22 <+bridge> [ddnet] mem_copy(pTmpTextData, aTextureData[0], NewTextureSize); 10:22 <+bridge> [ddnet] mem_copy(pTmpTextData, aTextureData[0], NewTextureSize); 10:22 <+bridge> [ddnet] mem_copy(pTmpTextData, aTextureData[0], NewTextureSize); 10:22 <+bridge> [ddnet] yes 10:22 <+bridge> [ddnet] new is local 10:22 <+bridge> [ddnet] and copied to the malloc data 10:22 <+bridge> [ddnet] and malloc is used for backend 10:23 <+bridge> [ddnet] what does local even mean 10:23 <+bridge> [ddnet] yes its ddnet code 10:23 <+bridge> [ddnet] do you have some url 10:23 <+bridge> [ddnet] its not sent to GPU 10:23 <+bridge> [ddnet] or func 10:23 <+bridge> [ddnet] its just to prepare the texture if the font texture resizes 10:23 <+bridge> [ddnet] so it can reupload the whole texture at once 10:24 <+bridge> [ddnet] So where in the code does it get freed? 10:24 <+bridge> [ddnet] imagine it like this: 10:24 <+bridge> [ddnet] 10:24 <+bridge> [ddnet] u have font texture 10:24 <+bridge> [ddnet] 10:24 <+bridge> [ddnet] u add a "A" to it 10:25 <+bridge> [ddnet] 10:25 <+bridge> [ddnet] you want to keep the A for yourself, so if a "B" is added you still have the "A" (even if B increases the font texture) 10:25 <+bridge> [ddnet] 10:25 <+bridge> [ddnet] 10:25 <+bridge> [ddnet] 10:25 <+bridge> [ddnet] but the GPU generally deletes texture data and it also wouldnbt be thread safe to write to data that you reading from in the GPU thread 10:25 <+bridge> [ddnet] so you need to allocate temporary storage 10:26 <+bridge> [ddnet] so if i dont use a GPU i have a memory leak? 10:26 <+bridge> [ddnet] yes 10:26 <+bridge> [ddnet] i told ya like 5 times implement a null backend 10:26 <+bridge> [ddnet] its 1000 times cleaner 10:26 <+bridge> [ddnet] that your weird graphics null 10:27 <+bridge> [ddnet] null backend like next to opengl or what 10:27 <+bridge> [ddnet] that annoys me every 5 days i change something in the header files xD 10:27 <+bridge> [ddnet] yes 10:27 <+bridge> [ddnet] yea i noticed 10:27 <+bridge> [ddnet] a backend that just doesnt use a GPU 10:27 <+bridge> [ddnet] thanks for maintaining that 10:27 <+bridge> [ddnet] yea sounds hackerman 10:27 <+bridge> [ddnet] but also hard 10:27 <+bridge> [ddnet] not really 10:27 <+bridge> [ddnet] bcs u can act like a opengl 1.x backend 10:27 <+bridge> [ddnet] but even a opengl 3.3 backend should be ez 10:28 <+bridge> [ddnet] bcs it has no logic 10:28 <+bridge> [ddnet] it just has to make sure to delete pointers 10:28 <+bridge> [ddnet] rest basically doesnt matter 10:28 <+bridge> [ddnet] yea sounds cool 10:28 <+bridge> [ddnet] and you say its easier maintaince 10:28 <+bridge> [ddnet] yeah i think so 10:28 <+bridge> [ddnet] opengl 1.x backend barely ever changed 10:28 <+bridge> [ddnet] yea wont happen today 11:16 <+bridge> [ddnet] <ᶰ°Konͧsti> Its printed in terminal but i got no clue how to use that output 11:16 <+bridge> [ddnet] <ᶰ°Konͧsti> no, once u use super it will reset all switches. Pretty annoying 12:03 <+bridge> [ddnet] have you fixed it? I do not use windows so you have to look it up on the web. Vscode community is big, so you will find out quickly how to compile c++ 12:06 <+bridge> [ddnet] only if you are alone in a team 12:06 <+bridge> [ddnet] add a dummy to your team 12:06 <+bridge> [ddnet] <ᶰ°Konͧsti> Funny... Its a solo map 12:06 <+bridge> [ddnet] xD use hacks 12:07 <+bridge> [ddnet] or unsolo the server 12:07 <+bridge> [ddnet] <ᶰ°Konͧsti> just fix it :pepe: 12:07 <+bridge> [ddnet] its because the team is empty then the server thinks you join a new team 12:08 <+bridge> [ddnet] if you unsolo the server it would work with a dummy 12:09 <+bridge> [ddnet] or we would have to reserve the team only for you if you super 12:09 <+bridge> [ddnet] we would have to lock that team anyway, because new players would use your team o.O 12:09 <+bridge> [ddnet] <ᶰ°Konͧsti> Its testing, i dont see a problem with that 12:11 <+bridge> [ddnet] and when would the reservation end? 12:12 <+bridge> [ddnet] and would it only be for solo server or also for team server 12:13 <+bridge> [ddnet] <ᶰ°Konͧsti> Why would u be alone in a team on a non solo server :troll: 12:24 <+bridge> [ddnet] so the reservation would end as soon as you unsuper or disconnect? 12:38 <+bridge> [ddnet] Will DDNet update to 0.7 future? 12:38 <+bridge> [ddnet] why would we xD What do you miss from 0.7 features? 12:40 <+bridge> [ddnet] all cool features are actually quality of life stuff by robyte 😄 12:40 <+bridge> [ddnet] Its not impossible. We already have most of the translation layers, we just would need to invert them. but its also not necessary. 12:41 <+bridge> [ddnet] robyte could also implement them for us in our client xD 12:41 <+bridge> [ddnet] oy could also just make robyte maintainer and not care about teeworlds anymore 12:41 <+bridge> [ddnet] and make vanilla mod friendly 12:41 <+bridge> [ddnet] ^^ 12:41 <+bridge> [ddnet] and great again 12:41 <+bridge> [ddnet] xd 13:06 <+ChillerDragon> @c0d3d3v havent played ctf in years thats what i miss 13:07 <+ChillerDragon> also having one united community makes sense. We currently have two playerbases that can not really share all servers 13:14 <+bridge> [ddnet] Mh yes Its anoying that 0.7 players can join owr server, but not the other way arround. the question is, should we also add a translation layer in the client so you can also join 0.7 server xD because there will always be 0.6 servers out there? 13:15 <+bridge> [ddnet] sorry I did not notice that I had german text in the screenshot xD But since the errors are in german and only vs-code IDE stuff (problems) are in german its not that bad. 13:16 <+bridge> [ddnet] sorry I did not notice that I had german text in the screenshot xD But since the errors are in english and only vs-code IDE stuff (problems) are in german its not that bad. 13:16 <+bridge> [ddnet] <ᶰ°Konͧsti> Yes 13:17 <+bridge> [ddnet] sorry I did not notice that I had german text in the screenshot xD But since the errors are in english and only vs-code IDE stuff (and some linter problems) are in german its not that bad. 13:21 <+bridge> [ddnet] but are there really ctf players xD 13:21 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/964485516491890738/unknown.png 13:21 <+bridge> [ddnet] I think ctf is more like a lan party thing 13:34 <+bridge> [ddnet] you would probalby need a notification system "found a ctf player online, now, run to have a nice 1vs1 ctf game" 13:35 <+bridge> [ddnet] 97 servers xD for a hand full players 13:38 <+bridge> [ddnet] also, my friends.. 13:38 <+bridge> [ddnet] There is no need for a translation layer just upgrade to 0.7 is fine there is already bridge degrees 13:38 <+bridge> [ddnet] Severe 13:39 <+bridge> [ddnet] yeah 13:39 <+bridge> [ddnet] chillernobo 13:39 <+bridge> [ddnet] and what about the other 0.6 servers? 13:39 <+bridge> [ddnet] ictf 13:39 <+bridge> [ddnet] icity and so on 13:39 <+bridge> [ddnet] City is Bridge 13:40 <+bridge> [ddnet] kog 13:40 <+bridge> [ddnet] ictf already on 0.7 13:40 <+bridge> [ddnet] Ictf Players are mostly 0.7 anyways 13:40 <+bridge> [ddnet] Kog is bridges 13:40 <+bridge> [ddnet] kog already on 0.7 13:40 <+bridge> [ddnet] kog already on 0.6<->0.7 13:40 <+bridge> [ddnet] This discussion is useless. It’s not a design decision. It’s only about developer time 13:40 <+bridge> [ddnet] bridge servers usually have bad 0.7 support 13:41 <+bridge> [ddnet] mh if ddnet would switch to 0.7 all others would probably too, because we have all the users 13:41 <+bridge> [ddnet] There is not a single relevant server in 0.6 13:42 <+bridge> [ddnet] what about DDNet-PvP? 13:42 <+bridge> [ddnet] iCTF, iTDM, iDM, gCTF, gTDM, gDM, Catch, zCatch. 13:42 <+bridge> [ddnet] They all on it. 13:42 <+bridge> [ddnet] Yes 13:42 <+bridge> [ddnet] Maybe catch not 13:42 <+bridge> [ddnet] But that will come with time 13:42 <+bridge> [ddnet] TsFreddie forgot to add it 13:42 <+bridge> [ddnet] Also no bomb 13:42 <+bridge> [ddnet] Or ball 13:43 <+bridge> [ddnet] but it already on gamemodes.h 13:43 <+bridge> [ddnet] If it had players it had severs 13:44 <+bridge> [ddnet] I think 0.7 should be the next step, not the last step 13:44 <+bridge> [ddnet] ?? 13:44 <+bridge> [ddnet] then get started with it if you have time xD 13:50 <+bridge> [ddnet] U 13:50 <+bridge> [ddnet] its actually not that hard adding 0.7 support to ddnet client 13:51 <+bridge> [ddnet] F-Client 13:51 <+bridge> [ddnet] Then go 13:51 <+bridge> [ddnet] gu 13:51 <+bridge> [ddnet] guess what, nobody play on 0.7 14:11 <+bridge> [ddnet] sad 14:12 <+bridge> [ddnet] https://www.bleepingcomputer.com/news/security/google-chrome-emergency-update-fixes-zero-day-used-in-attacks/ 14:13 <+bridge> [ddnet] Anyone here got opinions on typed vs untyped programming languages or do you know some place where I can find a good read about this? I'm not sure how come both typed and untyped languages are still used. 14:16 <+bridge> [ddnet] chillerdragon: idk which city you're talking about, probably iF|City but it's not bridged. Bombay too 14:17 <+bridge> [ddnet] i was on linux 14:17 <+bridge> [ddnet] im trying to create a dual boot station 14:17 <+bridge> [ddnet] i want kali linux :p 14:23 <+bridge> [ddnet] my opinion is that, the more strongly typed the better 14:23 <+bridge> [ddnet] it allows you to reduce bugs at compile time rather than runtime 14:28 <+bridge> [ddnet] can anyone give me a tip of how should i reduce my gfx mem usage? i only have around 20 assets and 60 teeskins, but nothing i did reduced it, so i constantly crash whenever i try to change assets or do anything basically, alot of random crashes 14:29 <+bridge> [ddnet] when i try to install laki from the offical website 😠 14:29 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/964502605646675978/unknown.png 14:29 <+bridge> [ddnet] operation failed incomplete file 14:39 <+bridge> [ddnet] Untyped languages make programming very accessible, and very quick, that's why they still exist 14:42 <+bridge> [ddnet] WHY 14:42 <+bridge> [ddnet] #4391 14:42 <+bridge> [ddnet] https://github.com/ddnet/ddnet/pull/4391 14:42 <+bridge> [ddnet] #4365 14:42 <+bridge> [ddnet] https://github.com/ddnet/ddnet/issues/4365 14:55 <+bridge> [ddnet] <5. blocker> chillerdragon 15:00 <+ChillerDragon> da? 15:00 <+ChillerDragon> doesnt ifcity have 0.7 servers? 15:01 <+ChillerDragon> yea but bombay is a trol server 15:02 <+bridge> [ddnet] the 0.7 server is not the official iF|City 15:03 <+bridge> [ddnet] the official 0.7 iF|City is down & is not bridged, it's a 0.7 only version 15:53 <+ChillerDragon> oh i see 15:53 <+ChillerDragon> f city 18:05 <+bridge> [ddnet] are you on latest master? 18:05 <+bridge> [ddnet] yes 18:05 <+bridge> [ddnet] im on nightly 18:06 <+bridge> [ddnet] do you want to try implementing the 0.7 protokol in our client or you want to wait till I do it? 18:07 <+bridge> [ddnet] if you send me your assets folder I test out if it works for me. I also have a weak CPU 18:07 <+bridge> [ddnet] sure, you only need assets, or downloadedskins/maps/ smth else too? 18:13 <+bridge> [ddnet] assets tab only loads things from assets folder, and you said it crashes if you open this tab. So I would only try this first 18:13 <+bridge> [ddnet] assets tab only loads things from assets folder, and you said it crashes if you open this tab. So I would only try this first @bencie 18:14 <+bridge> [ddnet] but you can send all if you want 😄 18:16 <+bridge> [ddnet] does it work if you just rename your teeowrlds folder to teeworlds_backup ? 18:17 <+bridge> [ddnet] rename %appdata%\teeworlds folder to teeworlds_backup? 18:18 <+bridge> [ddnet] we could also unload the images that get loaded into gfx after closing assets tab, but then we would have to laod them every time you open the tab. Or we can also only load the images visible in the tab and lazy load on scrolling 18:19 <+bridge> [ddnet] %appdata%\teeworlds to %appdata%\teeworlds_backup 18:19 <+bridge> [ddnet] just en empty normal folder 😄 18:20 <+bridge> [ddnet] no it completely went down with that foldero ff 18:20 <+bridge> [ddnet] 0.2 gb tex, 0 for all others 18:20 <+bridge> [ddnet] 0.2 gb tex, 0kb for all others 18:20 <+bridge> [ddnet] no it completely went down with that folder renamed 18:21 <+bridge> [ddnet] and before? 18:21 <+bridge> [ddnet] is there any high res one? 18:22 <+bridge> [ddnet] high res always kills your VRAM 18:22 <+bridge> [ddnet] before 1.5gb tex and cant remember other 3 18:22 <+bridge> [ddnet] yes there are 18:22 <+bridge> [ddnet] like 18:22 <+bridge> [ddnet] 10-15 highres skins 18:22 <+bridge> [ddnet] yeah better dont use them 18:22 <+bridge> [ddnet] okay ^^ 18:22 <+bridge> [ddnet] ill try 18:23 <+bridge> [ddnet] if you only on full hd 256x128 should be ok 18:23 <+bridge> [ddnet] 18:23 <+bridge> [ddnet] 1024x512 is really max u should ever encounter 18:23 <+bridge> [ddnet] anything above is for 16k screens 18:23 <+bridge> [ddnet] i had 4k skins 18:23 <+bridge> [ddnet] :monkaLaugh: 18:24 <+bridge> [ddnet] xd 18:24 <+bridge> [ddnet] lemme try to sort all of them out 18:24 <+bridge> [ddnet] lol first time I see that there is a color square if you have debug on ^^ 18:24 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/964561813402431518/unknown.png 18:26 <+bridge> [ddnet] that was it 18:26 <+bridge> [ddnet] thanks guys 18:26 <+bridge> [ddnet] its way way down now 18:27 <+bridge> [ddnet] i still have 1.5gb for buff tho 18:28 <+bridge> [ddnet] buffer is mostly map data 18:28 <+bridge> [ddnet] maybe menu background if u use that 18:28 <+bridge> [ddnet] default one 18:28 <+bridge> [ddnet] or are u on one of the mega maps rn? 18:28 <+bridge> [ddnet] artic frost or whatever 18:28 <+bridge> [ddnet] nah im in server browser 18:29 <+bridge> [ddnet] so I was kinda right 18:29 <+bridge> [ddnet] yea kinda, but it wasn't cuz of the download skins 18:29 <+bridge> [ddnet] server browser but after joining a map? 18:29 <+bridge> [ddnet] ye, but still about 4k skins xD 18:29 <+bridge> [ddnet] yes haha 18:29 <+bridge> [ddnet] im not in any servers 18:30 <+bridge> [ddnet] 4k skins are really alot 18:30 <+bridge> [ddnet] 18:30 <+bridge> [ddnet] see it like this 18:30 <+bridge> [ddnet] 18:30 <+bridge> [ddnet] if you launch the 4k skin completly fullscreen on your 4k monitor, it would fill every single pixel 18:30 <+bridge> [ddnet] and only in width 18:30 <+bridge> [ddnet] since most have 16:9 aspect ratios 18:30 <+bridge> [ddnet] for me it stays 0 even on arctic forest 18:30 <+bridge> [ddnet] it only shows it in vulkan 18:31 <+bridge> [ddnet] try changing the menu background and reload the client 18:31 <+bridge> [ddnet] or did you missread maybe? 18:31 <+bridge> [ddnet] 1.5mb maybe? 18:32 <+bridge> [ddnet] yes 500000k on arctic and does not unload in server browser 18:32 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/964563804702769212/unknown.png 18:32 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/964563808217595974/unknown.png 18:32 <+bridge> [ddnet] next map only adds to it 18:32 <+bridge> [ddnet] after clean client start? wtf 18:32 <+bridge> [ddnet] mh no I was wrong 18:32 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/964563979995332658/unknown.png 18:32 <+bridge> [ddnet] next map unloads it 18:32 <+bridge> [ddnet] this is after restart 18:33 <+bridge> [ddnet] lol 18:33 <+bridge> [ddnet] wtf is it loading xD 18:34 <+bridge> [ddnet] let me check if it reads uninitialized values 18:34 <+bridge> [ddnet] ok no its 0 initialized 18:35 <+bridge> [ddnet] can you try with teeworlds_backup ? 18:35 <+bridge> [ddnet] and see if a clean config loads less 18:35 <+bridge> [ddnet] ok i got it actually.. there was a huge text file named consolelog.txt, moving that out cleared it out 18:35 <+bridge> [ddnet] cuz i save all my console outputs to that file 18:36 <+bridge> [ddnet] ok nvm 18:36 <+bridge> [ddnet] actually 18:36 <+bridge> [ddnet] didnt change shit 18:36 <+bridge> [ddnet] would be really weird 18:36 <+bridge> [ddnet] try a clean config 18:36 <+bridge> [ddnet] i wonder if thats caused by your settings really 18:36 <+bridge> [ddnet] buff should only be affected by buffered stuff 18:36 <+bridge> [ddnet] 18:36 <+bridge> [ddnet] so maybe displayed text, displayed quads or tile layers 18:40 <+bridge> [ddnet] give me a min 18:43 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/964566733060993034/unknown.png 18:44 <+bridge> [ddnet] with clean appdata folder 18:44 <+bridge> [ddnet] enable vulkan 18:44 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/964566991040036954/unknown.png 18:45 <+bridge> [ddnet] ok much smaller and more ledit 18:45 <+bridge> [ddnet] is it just the config? 18:45 <+bridge> [ddnet] or anything else 18:45 <+bridge> [ddnet] if just config, just send it to me pm 18:46 <+bridge> [ddnet] this is with default config 18:46 <+bridge> [ddnet] but with normal config dir? 18:46 <+bridge> [ddnet] just config itself changed? 18:47 <+bridge> [ddnet] no this is with everything removed from %appdata%\teeworlds since i renamed that folder 18:49 <+bridge> [ddnet] ok maybe just copy your old config and see if thats enough, even tho it doesnt really make sense in my brain xd 18:49 <+bridge> [ddnet] settings_ddnet config? 18:50 <+bridge> [ddnet] yes 18:50 <+bridge> [ddnet] kk 18:50 <+bridge> [ddnet] same as before 18:51 <+bridge> [ddnet] so its some files 18:52 <+bridge> [ddnet] really weird, do you use a entities background map?` 18:52 <+bridge> [ddnet] yes, the mapfile is 1mb 18:52 <+bridge> [ddnet] oh thats quite a lot 18:52 <+bridge> [ddnet] maybe its thast 18:53 <+bridge> [ddnet] seems like it is 18:53 <+bridge> [ddnet] i moved that map out of maps folder 18:53 <+bridge> [ddnet] with my old teeworlds folder 18:54 <+bridge> [ddnet] 300mb tex, 24mb buff 18:56 <+bridge> [ddnet] rip 😄 18:56 <+bridge> [ddnet] maybe remove the tile layers that are bigger than 1k tiles 18:56 <+bridge> [ddnet] ill try 18:56 <+bridge> [ddnet] since it only loads the background from the map anyway 19:03 <+bridge> [ddnet] 1.5g still with only quads 19:03 <+bridge> [ddnet] 861kb filesize rn 19:05 <+bridge> [ddnet] ram is there to be used 19:05 <+bridge> [ddnet] :GIGACHAD: 19:06 <+bridge> [ddnet] there must be some layer that huge 19:06 <+bridge> [ddnet] gamelayer or whatever 19:06 <+bridge> [ddnet] i deleted all tiles from game layer, but quad layer is huge with just a repeating pattern 19:06 <+bridge> [ddnet] its not about tiles 19:07 <+bridge> [ddnet] its about the size 19:07 <+bridge> [ddnet] width & height 19:07 <+bridge> [ddnet] ah yeah i just noticed 19:07 <+bridge> [ddnet] 2 layers 5k x 3k 19:07 <+bridge> [ddnet] remove those and it should shrink 19:11 <+bridge> [ddnet] yea, thanks jupstar <3 22:26 <+bridge> [ddnet] @Not Keks the map view website uses opengl, right? My main problem rn is that when using webgl with the wgpu library it doesn't offer me a linear color space, because webgl is srgb-only apparently. do you know how the map viewer solves this? 22:40 <+bridge> [ddnet] if you do callvote option "name of option" then the second argument isn't an id 22:53 <+bridge> [ddnet] it uses webgl2 with a translation layer from GLES3 22:53 <+bridge> [ddnet] 22:53 <+bridge> [ddnet] it simply garantuees it i guess 22:53 <+bridge> [ddnet] 22:53 <+bridge> [ddnet] 22:53 <+bridge> [ddnet] can you list all available modes? 22:56 <+bridge> [ddnet] the list of available formats for the surface is quite short, only `Rgba8UnormSrgb`. although tbf the webgl backend has only second-class support and made by one person iirc 22:57 <+bridge> [ddnet] but that sounds correct 22:57 <+bridge> [ddnet] forget about linear and non linear 22:57 <+bridge> [ddnet] its actually about UNORM 22:57 <+bridge> [ddnet] vs SRGB 22:57 <+bridge> [ddnet] UNORM = the dev has to care 22:57 <+bridge> [ddnet] SRGB = give me some fancy curved color 22:58 <+bridge> [ddnet] u need unorn 22:58 <+bridge> [ddnet] u need unorm 22:58 <+bridge> [ddnet] oh, I didn't know 22:58 <+bridge> [ddnet] no, I only knew about that srgb scaling that is basically ^2.2 22:58 <+bridge> [ddnet] for rgb, not a 22:59 <+bridge> [ddnet] https://camo.githubusercontent.com/bdfd0d849b9bbeb0faa5a8e806e22bee91f3d0f5185959c2483caa68c5080547/687474703a2f2f692e696d6775722e636f6d2f5563346e394f4f2e706e67 22:59 <+bridge> [ddnet] https://camo.githubusercontent.com/0484adde06e79ab59e459cd3edfd7b8dd8e49bb6ac766dd223775c020657b05c/687474703a2f2f692e696d6775722e636f6d2f3375574379676c2e706e67 23:00 <+bridge> [ddnet] this is basically the difference 23:01 <+bridge> [ddnet] since we dont do math with the textures and our textures are just plain colors, we need unorm 23:01 <+bridge> [ddnet] else the backend would expect smth like in the curve 23:03 <+bridge> [ddnet] hm, let me check if I can use `Bgra8Unorm` and `Bgra8UnormSrgb` changeably on native 23:04 <+bridge> [ddnet] maybe one specifies the color space 23:04 <+bridge> [ddnet] its a bit confusing but there is a color format and a color space 23:05 <+bridge> [ddnet] > The texture format of the swap chain. The only formats that are guaranteed are Bgra8Unorm and Bgra8UnormSrgb 23:05 <+bridge> [ddnet] thats the textureformat that is more restrictive on webgl (relevant issue: https://github.com/gfx-rs/wgpu/issues/1925) 23:06 <+bridge> [ddnet] Bgra8Unorm 23:06 <+bridge> [ddnet] Blue, green, red, and alpha channels. 8 bit integer per channel. [0, 255] converted to/from float [0, 1] in shader. 23:06 <+bridge> [ddnet] 23:06 <+bridge> [ddnet] Bgra8UnormSrgb 23:06 <+bridge> [ddnet] Blue, green, red, and alpha channels. 8 bit integer per channel. Srgb-color [0, 255] converted to/from linear-color float [0, 1] in shader. 23:07 <+bridge> [ddnet] MHHH 23:07 <+bridge> [ddnet] do they mean fragment shader? 23:07 <+bridge> [ddnet] its quite possible the presentation engine wants SRGB 23:07 <+bridge> [ddnet] i'd test the first tho 23:07 <+bridge> [ddnet] sounds more reasonable 23:07 <+bridge> [ddnet] 23:07 <+bridge> [ddnet] 23:08 <+bridge> [ddnet] in vulkan its a bit different 23:08 <+bridge> [ddnet] 23:08 <+bridge> [ddnet] you specify the color space explictly 23:08 <+bridge> [ddnet] kinda makes more sense 23:08 <+bridge> [ddnet] the first one is the one I use on native, there it looks exactly correct (maybe you remember that I needed your help to realize that I needed to specify that texture format to not use srgb ^^) 23:09 <+bridge> [ddnet] so that works, then use it xD 23:09 <+bridge> [ddnet] aah yeah, but its not available on webgl 23:09 <+bridge> [ddnet] ah ok 23:09 <+bridge> [ddnet] :/ 23:10 <+bridge> [ddnet] so wait 23:10 <+bridge> [ddnet] webgl over webgpu? 23:10 <+bridge> [ddnet] or native webgl 23:10 <+bridge> [ddnet] it compiles to native webgl, not webgpu 23:10 <+bridge> [ddnet] but you use this gpu.rs thing? 23:10 <+bridge> [ddnet] yes 23:11 <+bridge> [ddnet] https://crates.io/crates/wgpu 23:11 <+bridge> [ddnet] then i'd use Rg8Unorm i think 23:11 <+bridge> [ddnet] for textures it only makes sense to use RGB anyway 23:11 <+bridge> [ddnet] the framebuffer is not in your hand on opengl normally anyway 23:12 <+bridge> [ddnet] rgba* 23:12 <+bridge> [ddnet] Rgba8Unorm 23:12 <+bridge> [ddnet] its a webgpu crate, allows you to run it on vulkan, dx12, metal, webgpu, but also dx11 and gl as secondary-class support https://docs.rs/wgpu/latest/wgpu/struct.Backends.html 23:12 <+bridge> [ddnet] do you have a screenshot? 23:13 <+bridge> [ddnet] of a rendered example? 23:13 <+bridge> [ddnet] yeah 23:13 <+bridge> [ddnet] sec 23:14 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/964634784368295956/unknown.png 23:14 <+bridge> [ddnet] ok thats with Srgb? 23:14 <+bridge> [ddnet] yes 23:14 <+bridge> [ddnet] rendered on a website with webgl 23:14 <+bridge> [ddnet] and without it wont start? 23:14 <+bridge> [ddnet] yes 23:14 <+bridge> [ddnet] Rgba8Unorm 23:14 <+bridge> [ddnet] 23:14 <+bridge> [ddnet] would make more sense i think 23:15 <+bridge> [ddnet] i never seen an native opengl driver not using RGBA 23:15 <+bridge> [ddnet] ok the guy in the issue says only srgb is supported 23:15 <+bridge> [ddnet] I think it differentiates between opengl on native and webgl (I think I use the term 'native' too much and in wrong contexts sometimes) 23:17 <+bridge> [ddnet] hm alternatively I just let the way it is and wait until webgpu is stabilized, will probably only take a few years or so ^^ 23:17 <+bridge> [ddnet] but what does it say when u just use Rgba8Unorm 23:17 <+bridge> [ddnet] does it say error? 23:18 <+bridge> [ddnet] sec 23:21 <+bridge> [ddnet] uh, broke my setup before, it'll take another min 23:23 <+bridge> [ddnet] my native opengl driver uses rgba 23:23 <+bridge> [ddnet] 23:23 <+bridge> [ddnet] my native vulkan driver only allows bgra 23:23 <+bridge> [ddnet] 23:23 <+bridge> [ddnet] and i know that the android phones i tested also used rgba for vulkan only 23:23 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/964637133325365258/unknown.png 23:24 <+bridge> [ddnet] (its even just RGB) not even RGBA 23:24 <+bridge> [ddnet] so i dunno what webgl allows but honestly opengl normally isnt designed that you should know about the surface 23:24 <+bridge> [ddnet] (at least basic opengl not) 23:25 <+bridge> [ddnet] ah got it, its quite plain here `Error in Surface::configure: requested format Rgba8Unorm is not in list of supported formats: [Rgba8UnormSrgb]` 23:25 <+bridge> [ddnet] https://developer.mozilla.org/en-US/docs/Web/API/EXT_sRGB 23:25 <+bridge> [ddnet] 23:25 <+bridge> [ddnet] mozilla says its just an extension 23:26 <+bridge> [ddnet] they should add like an "default" surface format or smth xd 23:26 <+bridge> [ddnet] ok i wonder if thats really a webgl limitation 23:26 <+bridge> [ddnet] or if the rust impl just disallows it 23:28 <+bridge> [ddnet] i dunno are there any webgl tools in chrome or firefox? xd 23:28 <+bridge> [ddnet] would really help 23:28 <+bridge> [ddnet] then i could just look in the ddnet web client 23:28 <+bridge> [ddnet] hm the pull request adding the backend doesn't talk about that much either https://github.com/gfx-rs/wgpu/pull/1686 23:29 <+bridge> [ddnet] https://github.com/cookstown/ddnet/compare/master..cookstown:feature-soundpack, all i've done so far 23:29 <+bridge> [ddnet] hm what do they mean by "Fix lack of sRGB conversion" 23:40 <+bridge> [ddnet] IMPLEMENTATION_COLOR_READ_FORMAT: RGBA 23:40 <+bridge> [ddnet] IMPLEMENTATION_COLOR_READ_TYPE: UNSIGNED_BYTE 23:40 <+bridge> [ddnet] 23:40 <+bridge> [ddnet] my firefox uses RGBA uint8 23:40 <+bridge> [ddnet] for the ddnet web client 23:40 <+bridge> [ddnet] but it doesnt mention srgb 23:41 <+bridge> [ddnet] huh, so probably a limitation with the rust implementation for the backend? 23:41 <+bridge> [ddnet] honestly dunno, i will just give you the full output 23:41 <+bridge> [ddnet] maybe it helps u 23:41 <+bridge> [ddnet] 👍 23:42 <+bridge> [ddnet] i used this btw 23:42 <+bridge> [ddnet] https://addons.mozilla.org/en-US/firefox/addon/spector-js/ 23:43 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/964642128628166696/result.html 23:43 <+bridge> [ddnet] if you want to compare yourself 23:43 <+bridge> [ddnet] https://aliveclan.de/ddnettest/load_map.html 23:43 <+bridge> [ddnet] 23:43 <+bridge> [ddnet] just load a map here 23:44 <+bridge> [ddnet] i gotta sleep now, night 😄 23:44 <+bridge> [ddnet] good night :) 23:45 <+bridge> [ddnet] and thanks a lot!