00:46 <+bridge> [ddnet] @Not Keks its this time of the month again! 00:46 <+bridge> [ddnet] I figured out that the colors were still a little of when rendering to a srgb surface. and this time, I really definitely finally finally fixed it forever! 00:47 <+bridge> [ddnet] so last time I was already quite close, where I simply converted the output of each fragment shader to srgb 00:48 <+bridge> [ddnet] however, while this worked for single colors and looked kinda fine on maps, it was off when alpha is used, sometimes only subtle though 00:49 <+bridge> [ddnet] the problem was simply that while each color is correct, alpha blending with srgb is simply not straight forward, maybe simply impossible 00:50 <+bridge> [ddnet] so now, I render everything to a texture and run an extra renderpass to convert rgb->srgb while rendering to the surface 00:50 <+bridge> [ddnet] (but only with a srgb surface, I skip that indirection for rgb surfaces) 01:14 <+bridge> [ddnet] hello guys 01:14 <+bridge> [ddnet] i want to put teeworlds 05 font in my ddnet client(nightly latest version) how do i do that 01:14 <+bridge> [ddnet] how do i make it? 01:15 <+bridge> [ddnet] 05 uses tfnt font file so i cant just replace ddnet's one with 05 04:07 <+bridge> [ddnet] @deen hope you can merge it before release 16.2, just realise i uploaded wrong translate file which have 1 translation error 07:19 <+bridge> [ddnet] ^^ very hard mystery solved 08:56 <+bridge> [ddnet] https://www.reddit.com/r/ProgrammerHumor/comments/vqrv2m/when_i_execute_my_sql_query_and_realize_i_forgot/ 12:06 <+bridge> [ddnet] https://hackaday.com/2022/07/04/need-a-linux-kernel-module-scratch-that/ 12:06 <+bridge> [ddnet] :sueur: 12:07 <+bridge> [ddnet] U can now teach ur boy to make kernel modules 12:22 <+bridge> [ddnet] I do 12:22 <+bridge> [ddnet] @Not Keks the one definition rule also applies to non-member `static` stuff? 12:36 <+bridge> [ddnet] I guess the only reason for this is if parts of a map can be done out of order. But skips would normally only lead to checkpoints with higher number but not with lower, then higher again. But if nobody has concerns about it I can implement it. 12:36 <+bridge> [ddnet] I guess the only reason for this is if parts of a map can be done out of order. But skips would normally only lead to checkpoints with higher number but not to lower, then higher again. But if nobody has concerns about it I can implement it. 12:41 <+bridge> [ddnet] That would also help, if mappers accidentally placed the checkpoints in wrong order. 12:41 <+bridge> [ddnet] that's probably mitigated by the testing process 12:41 <+bridge> [ddnet] but yes, I also see no concerns to allow checkpoints out of order 13:11 <+bridge> [ddnet] Does anyone know if pdfs can be encoded with anything else than utf8 13:15 <+bridge> [ddnet] Implementing a parser in rust with nom atm 13:29 <+bridge> [ddnet] wdym, utf8 encoding in pdfs? 13:29 <+bridge> [ddnet] the text parts? 13:30 <+bridge> [ddnet] the pdf objects themselves can be compressed and definitely aren't valid utf-8 anymore in that case 13:38 <+bridge> [ddnet] Only if u do jumbo builds 13:41 <+bridge> [ddnet] I mean the strings for example 13:41 <+bridge> [ddnet] Ik streams can be anything 13:45 <+bridge> [ddnet] haven't found a good source; it seems you can have encodings different from utf-8, I haven't found that you can actually use utf-8 13:45 <+bridge> [ddnet] "MacRomanEncoding", "WinAnsiEncoding" 14:34 <+bridge> [ddnet] sure 14:47 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/993498196850528316/unknown.png 14:48 <+bridge> [ddnet] > PDF supports one fundamental string object (see 7.3.4, "String Objects"). The string object shall be further 14:48 <+bridge> [ddnet] > qualified as a text string, a PDFDocEncoded string, ASCII string, or byte string. The further qualification reflects 14:48 <+bridge> [ddnet] > the encoding used to represent the characters or glyphs described by the string 14:48 <+bridge> [ddnet] all encodings should burn in hell and only utf8 exist thanks for coming to my ted talk 14:49 <+bridge> [ddnet] :Sadge: 15:11 <+bridge> [ddnet] Quickly delete it or someone will come tell you about the benefits of utf32 and how ram is cheap 15:25 <+bridge> [ddnet] The #server-bridge channel on my server contains over 5 million messages, and if I try to search anything in there, it wont show newer results than 06.06.2022 :D 15:25 <+bridge> [ddnet] It seems to be very broken, lol 15:27 <+bridge> [ddnet] Even without any filter, it does only show messages up to 06.06. 15:27 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/993508308352782487/unknown.png 18:15 <+bridge> [ddnet] the internet forgets 18:52 <+bridge> [ddnet] finally, something that i CAN do 18:53 <+bridge> [ddnet] xD 18:54 <+bridge> [ddnet] ive been using scratch since forever, so thats like, my only fluent coding language 19:07 <+bridge> [ddnet] Rule of Three, learned something new. Thanks for the fix. 19:11 <+bridge> [ddnet] Rule of Three, learned something new. Thanks for the fix. @Not Keks 20:53 <+bridge> [ddnet] is that Manuel Valls? 21:12 <+bridge> [ddnet] i gave up on making a pdf parser 21:12 <+bridge> [ddnet] too much work and too little time 21:13 <+bridge> [ddnet] but nom the library is rly gud 21:15 <+bridge> [ddnet] YES 21:22 <+bridge> [ddnet] utf8 & utf16 are best, #5490 & #4348 & #4111 & #3938 & #3331 & #3285 & #2742 & #2724 & #2534 & #1423 & #1396 & #231 agree 21:22 <+bridge> [ddnet] 21:22 <+bridge> [ddnet] sry for github spam, you can ban me now 21:22 <+bridge> [ddnet] nice github ignores 21:23 <+bridge> [ddnet] lets just force english only 21:23 <+bridge> [ddnet] and do no encoding 21:23 <+bridge> [ddnet] "no encoding" 21:23 <+bridge> [ddnet] you mean ascii 21:23 <+bridge> [ddnet] that's pretty widely supported, yes 21:23 <+bridge> [ddnet] My initial message actually had s/someone/jupstar/ 21:23 <+bridge> [ddnet] 😄 21:23 <+bridge> [ddnet] and I think those issues rather speak volumes to the bad encoding support of C/C++, not UTF-8 21:23 <+bridge> [ddnet] I know my audience 21:24 <+bridge> [ddnet] i only saw it bcs ryozuki talked about a PDF parser 21:24 <+bridge> [ddnet] well variable lengthed stuff simply sucks to deal with 21:25 <+bridge> [ddnet] utf-32 doesn't help you with that 21:25 <+bridge> [ddnet] you have combining accents etc. 21:25 <+bridge> [ddnet] yeah if you pro enough to respect it xD 21:25 <+bridge> [ddnet] we dont do it 21:25 <+bridge> [ddnet] But not using a billion tb of ram simply rocks 21:25 <+bridge> [ddnet] our game still works 21:25 <+bridge> [ddnet] I think you still need to atleast skip that 21:25 <+bridge> [ddnet] xDDD 21:26 <+bridge> [ddnet] not really 21:26 <+bridge> [ddnet] its one by one codepoints 21:26 <+bridge> [ddnet] what do you gain from that? 21:26 <+bridge> [ddnet] from what 21:26 <+bridge> [ddnet] having codepoints one by one in an array 21:26 <+bridge> [ddnet] its fixed length 21:27 <+bridge> [ddnet] you say that like it's some directly desirable goal 21:27 <+bridge> [ddnet] I don't see that 21:27 <+bridge> [ddnet] You can't even index into that properly either, no? Chopping utf32 at the end accidentally still breaks strings too 21:28 <+bridge> [ddnet] rust also cannot handle grapheme clusters, i dunno what we talk about rn 21:28 <+bridge> [ddnet] @Not Keks there's a grapheme clusters crate 21:28 <+bridge> [ddnet] but why also dont support it rn 21:28 <+bridge> [ddnet] yes, but why is utf-32 beneficial? 21:29 <+bridge> [ddnet] bcs u know the str length directly 21:29 <+bridge> [ddnet] u can access code points directly 21:29 <+bridge> [ddnet] string length doesn't exist, unless you specify what you mean by it 21:29 <+bridge> [ddnet] Do you? I think accents break that too 21:29 <+bridge> [ddnet] I don't know a single use case for 'direct code point access' 21:29 <+bridge> [ddnet] only grapheme clusters 21:29 <+bridge> [ddnet] we dont use them 21:30 <+bridge> [ddnet] the characters also exists as "normal" character 21:30 <+bridge> [ddnet] single code point 21:30 <+bridge> [ddnet] only those that were also present in legacy encodings 21:30 <+bridge> [ddnet] AFAIK 21:30 <+bridge> [ddnet] i mean if we want smiley support maybe 😄 21:31 <+bridge> [ddnet] but you haven't told us yet what access to 'number of codepoints' helps 21:31 <+bridge> [ddnet] ? 21:31 <+bridge> [ddnet] [9:28 PM] heinrich5991: yes, but why is utf-32 beneficial? 21:31 <+bridge> [ddnet] [9:29 PM] Jupstar: bcs u know the str length directly 21:31 <+bridge> [ddnet] [9:29 PM] Jupstar: u can access code points directly 21:31 <+bridge> [ddnet] yes 21:31 <+bridge> [ddnet] these don't sound like end goals, so what do they enable 21:31 <+bridge> [ddnet] performance ez 21:31 <+bridge> [ddnet] these don't sound like end goals, so what do they enable? 21:32 <+bridge> [ddnet] okay, tell me a thing where they enable more performance 21:32 <+bridge> [ddnet] u dont need to decode 21:32 <+bridge> [ddnet] just pass to freetype 21:32 <+bridge> [ddnet] you need to decode at some point. why is 'string rendering' a bad place for it? 21:32 <+bridge> [ddnet] freetype accepts utf32 codepoints 21:33 <+bridge> [ddnet] yes. you need to encode your string into utf32 at some point 21:33 <+bridge> [ddnet] why is 'string rendering' a bad place for that? 21:33 <+bridge> [ddnet] what do you want to encode?, our rendering still doesnt support multiple characters 21:34 <+bridge> [ddnet] you said you need to encode your string into utf32 to pass it to freetype 21:34 <+bridge> [ddnet] so at some point in the program that needs to happen 21:34 <+bridge> [ddnet] why is 'string rendering' a bad place for it? 21:34 <+bridge> [ddnet] well but we only support single codepoints and they fit into utf32 without encoding 21:34 <+bridge> [ddnet] have u seen utf32 code in our code? 21:34 <+bridge> [ddnet] we seem to be talking massively past each other 21:35 <+bridge> [ddnet] freetype accepts strings as utf-32, according to you, right? 21:35 <+bridge> [ddnet] yes and our utf8 decode results in exactly the same value 21:35 <+bridge> [ddnet] okay, so we need to perform the string conversion into utf-32 (that we currently also perform) at some point in our program 21:36 <+bridge> [ddnet] no 21:36 <+bridge> [ddnet] do we currently perform a string conversion into utf-32? 21:36 <+bridge> [ddnet] well only once at IO level 21:36 <+bridge> [ddnet] so yes 21:36 <+bridge> [ddnet] if we dont make the IO also use utf32 21:36 <+bridge> [ddnet] yeah but whats faster, once or every frame? 21:36 <+bridge> [ddnet] I don't actually know 21:37 <+bridge> [ddnet] RAM is free af xd 21:37 <+bridge> [ddnet] depends on the cache effects of strings being 4 times as large 21:37 <+bridge> [ddnet] well cache, what cache, L3? 21:37 <+bridge> [ddnet] l1 wont fit most strings anyway 21:37 <+bridge> [ddnet] also not utf8 21:38 <+bridge> [ddnet] but it'll fit up to 4 times as many strings 21:38 <+bridge> [ddnet] yeah, but teeworlds is no text editor 21:38 <+bridge> [ddnet] take 1000 chat msg 21:39 <+bridge> [ddnet] and u are still around 1MByte only 21:39 <+bridge> [ddnet] but you just claimed that using more cache for strings makes the program faster than decoding them on-the-fly 21:39 <+bridge> [ddnet] how is 'teeworlds is no text editor' a retort to this? 21:40 <+bridge> [ddnet] i mean with that, its not using like 3000000 lines of code or smth 21:40 <+bridge> [ddnet] u know its not an hard edge case 21:40 <+bridge> [ddnet] yes 21:40 <+bridge> [ddnet] but go ahead do benchmarks, i bet against utf8 😄 21:40 <+bridge> [ddnet] great, then we'll just do what most programs do and use utf-8 21:40 <+bridge> [ddnet] since we're not an edge case 21:41 <+bridge> [ddnet] so we do what most programs do and use a software renderer? 21:41 <+bridge> [ddnet] or console rendering? xd 21:42 <+bridge> [ddnet] well anyway, i only trust benchmarks, and discussing such topics is annoying. 21:42 <+bridge> [ddnet] you started it ^^ 21:42 <+bridge> [ddnet] you proclaimed that using utf-32 would be faster 21:42 <+bridge> [ddnet] and safer 21:43 <+bridge> [ddnet] yes 21:43 <+bridge> [ddnet] (I haven't seen a benchmark, but I'm googling) 21:43 <+bridge> [ddnet] "i only strust benchmarks" 21:43 <+bridge> [ddnet] where's your benchmark? 21:43 <+bridge> [ddnet] the issues i posted 21:43 <+bridge> [ddnet] where does it say that utf-8 is slower? 21:43 <+bridge> [ddnet] slower in coding right stuff 21:43 <+bridge> [ddnet] and concentrate into improving vulkan afterwards 21:44 <+bridge> [ddnet] okay, so you didn't intend to make a call about runtime performance 21:44 <+bridge> [ddnet] for more fps 21:44 <+bridge> [ddnet] fine 21:44 <+bridge> [ddnet] well i did obviously, code correctness is always top prio 21:44 <+bridge> [ddnet] without that your performance is not worth it 21:44 <+bridge> [ddnet] I don't understand 21:44 <+bridge> [ddnet] are you making a claim about runtime performance? 21:45 <+bridge> [ddnet] yeah sure 21:45 <+bridge> [ddnet] if so, where's the benchmark? 21:45 <+bridge> [ddnet] i bet its faster for us 21:45 <+bridge> [ddnet] you claimed you only trust benchmarks 21:45 <+bridge> [ddnet] yes, have i implemented utf32 yet? 21:45 <+bridge> [ddnet] okay, so that's a claim without a benchmark 21:45 <+bridge> [ddnet] I see 21:45 <+bridge> [ddnet] i have no benchmarks, i say i bet against utf8 21:45 <+bridge> [ddnet] no 21:45 <+bridge> [ddnet] i said that 21:46 <+bridge> [ddnet] here 21:46 <+bridge> [ddnet] bet != proof 21:46 <+bridge> [ddnet] [9:42 PM] Jupstar: well anyway, i only trust benchmarks, and discussing such topics is annoying. 21:46 <+bridge> [ddnet] [9:42 PM] heinrich5991: you started it ^^ 21:46 <+bridge> [ddnet] [9:42 PM] heinrich5991: you proclaimed that using utf-32 would be faster 21:46 <+bridge> [ddnet] [9:42 PM] Jupstar: and safer 21:47 <+bridge> [ddnet] yeah i still claim it, but i cannot proof the claim 21:47 <+bridge> [ddnet] i am not saying it's a MUST 21:47 <+bridge> [ddnet] okay 🙂 21:53 <+bridge> [ddnet] I was probably too confrontative. sorry @Not Keks 😦 22:02 <+bridge> [ddnet] utf8 is the best 22:03 <+bridge> [ddnet] > 22:03 <+bridge> [ddnet] > The number of code units per Unicode character is variable, because not all characters are in the BMP. Until emoji became popular, this didn't affect many apps in day-to-day use. These days, certainly for messaging apps and the like, developers using UTF-16 really need to know about surrogate pairs. 22:03 <+bridge> [ddnet] > 22:03 <+bridge> [ddnet] > For plain ASCII (which a lot of text is, at least in the west) it takes twice the space of the equivalent UTF-8 encoded text. 23:04 <+bridge> [ddnet] when utf-64 ? 23:05 <+bridge> [ddnet] is that even enough for all diacritic combination ? 23:05 <+bridge> [ddnet] not even sure 😄 23:16 <+bridge> [ddnet] utf128 we can use vector instructions 23:36 <+bridge> [ddnet] Do you have a Bitcoin wallet or Coinbase wallet? 23:36 <+bridge> [ddnet] You can earn up to 0.06021BTC every 3 hours with your phone or PC... 23:36 <+bridge> [ddnet] Without referrals nor registration fee... 23:36 <+bridge> [ddnet] If you are interested click on the link below and start earning massively 👇👇👇👇 23:36 <+bridge> [ddnet] https://t.me/+cOczZn1wgOkyMGI8 23:36 <+bridge> [ddnet] https://t.me/+cOczZn1wgOkyMGI8 23:36 <+bridge> [ddnet] (@Learath2) 23:36 <+bridge> [ddnet] Do you have a Bitcoin wallet or Coinbase wallet? 23:36 <+bridge> [ddnet] You can earn up to 0.06021BTC every 3 hours with your phone or PC... 23:36 <+bridge> [ddnet] Without referrals nor registration fee... 23:36 <+bridge> [ddnet] If you are interested click on the link below and start earning massively 👇👇👇👇 23:36 <+bridge> [ddnet] https://t.me/+cOczZn1wgOkyMGI8 23:36 <+bridge> [ddnet] https://t.me/+cOczZn1wgOkyMGI8 23:36 <+bridge> [ddnet] (@Chairn) 23:36 <+bridge> [ddnet] Do you have a Bitcoin wallet or Coinbase wallet? 23:36 <+bridge> [ddnet] You can earn up to 0.06021BTC every 3 hours with your phone or PC... 23:36 <+bridge> [ddnet] Without referrals nor registration fee... 23:36 <+bridge> [ddnet] If you are interested click on the link below and start earning massively 👇👇👇👇 23:36 <+bridge> [ddnet] https://t.me/+cOczZn1wgOkyMGI8 23:36 <+bridge> [ddnet] https://t.me/+cOczZn1wgOkyMGI8 23:36 <+bridge> [ddnet] (@heinrich5991) 23:36 <+bridge> [ddnet] Do you have a Bitcoin wallet or Coinbase wallet? 23:36 <+bridge> [ddnet] You can earn up to 0.06021BTC every 3 hours with your phone or PC... 23:36 <+bridge> [ddnet] Without referrals nor registration fee... 23:36 <+bridge> [ddnet] If you are interested click on the link below and start earning massively 👇👇👇👇 23:36 <+bridge> [ddnet] https://t.me/+cOczZn1wgOkyMGI8 23:37 <+bridge> [ddnet] https://t.me/+cOczZn1wgOkyMGI8 23:37 <+bridge> [ddnet] (@Not Keks) 23:37 <+bridge> [ddnet] Do you have a Bitcoin wallet or Coinbase wallet? 23:37 <+bridge> [ddnet] You can earn up to 0.06021BTC every 3 hours with your phone or PC... 23:37 <+bridge> [ddnet] Without referrals nor registration fee... 23:37 <+bridge> [ddnet] If you are interested click on the link below and start earning massively 👇👇👇👇 23:37 <+bridge> [ddnet] https://t.me/+cOczZn1wgOkyMGI8 23:37 <+bridge> [ddnet] https://t.me/+cOczZn1wgOkyMGI8 23:37 <+bridge> [ddnet] (@Not Keks) 23:37 <+bridge> [ddnet] Do you have a Bitcoin wallet or Coinbase wallet? 23:37 <+bridge> [ddnet] You can earn up to 0.06021BTC every 3 hours with your phone or PC... 23:37 <+bridge> [ddnet] Without referrals nor registration fee... 23:37 <+bridge> [ddnet] If you are interested click on the link below and start earning massively 👇👇👇👇 23:37 <+bridge> [ddnet] https://t.me/+cOczZn1wgOkyMGI8 23:37 <+bridge> [ddnet] https://t.me/+cOczZn1wgOkyMGI8 23:37 <+bridge> [ddnet] (@heinrich5991) 23:37 <+bridge> [ddnet] Do you have a Bitcoin wallet or Coinbase wallet? 23:37 <+bridge> [ddnet] You can earn up to 0.06021BTC every 3 hours with your phone or PC... 23:37 <+bridge> [ddnet] Without referrals nor registration fee... 23:37 <+bridge> [ddnet] If you are interested click on the link below and start earning massively 👇👇👇👇 23:37 <+bridge> [ddnet] https://t.me/+cOczZn1wgOkyMGI8 23:37 <+bridge> [ddnet] https://t.me/+cOczZn1wgOkyMGI8 23:37 <+bridge> [ddnet] (@Not Keks) 23:37 <+bridge> [ddnet] Do you have a Bitcoin wallet or Coinbase wallet? 23:37 <+bridge> [ddnet] You can earn up to 0.06021BTC every 3 hours with your phone or PC... 23:37 <+bridge> [ddnet] Without referrals nor registration fee... 23:37 <+bridge> [ddnet] If you are interested click on the link below and start earning massively 👇👇👇👇 23:38 <+bridge> [ddnet] https://t.me/+cOczZn1wgOkyMGI8 23:38 <+bridge> [ddnet] https://t.me/+cOczZn1wgOkyMGI8 23:38 <+bridge> [ddnet] (@heinrich5991) 23:38 <+bridge> [ddnet] Do you have a Bitcoin wallet or Coinbase wallet? 23:38 <+bridge> [ddnet] You can earn up to 0.06021BTC every 3 hours with your phone or PC... 23:38 <+bridge> [ddnet] Without referrals nor registration fee... 23:38 <+bridge> [ddnet] If you are interested click on the link below and start earning massively 👇👇👇👇 23:38 <+bridge> [ddnet] https://t.me/+cOczZn1wgOkyMGI8 23:38 <+bridge> [ddnet] https://t.me/+cOczZn1wgOkyMGI8 23:38 <+bridge> [ddnet] (@heinrich5991) 23:38 <+bridge> [ddnet] Do you have a Bitcoin wallet or Coinbase wallet? 23:38 <+bridge> [ddnet] You can earn up to 0.06021BTC every 3 hours with your phone or PC... 23:38 <+bridge> [ddnet] Without referrals nor registration fee... 23:38 <+bridge> [ddnet] If you are interested click on the link below and start earning massively 👇👇👇👇