06:13 <+bridge_> https://vxtwitter.com/MistralAI/status/1733150512395038967 07:05 <+bridge_> Rust does have ASan support https://doc.rust-lang.org/beta/unstable-book/compiler-flags/sanitizer.html#addresssanitizer 07:34 <+bridge_> no edges? xd 07:34 <+bridge_> https://cdn.discordapp.com/attachments/293493549758939136/1513778319852699750/image.png?ex=6a28f76c&is=6a27a5ec&hm=38cb8c7920627ece88a14cf5c648d165560d97197f9458b9349a6f40077c65f3& 09:02 <+bridge_> i dont know what you measn 09:02 <+bridge_> i dont know what you mean 09:27 <+bridge_> what to do if you are blocked on the map 10:08 <+bridge_> make the t have a flat top, not a pointy one! 10:15 <+bridge_> This is art 10:29 <+bridge_> https://cdn.discordapp.com/attachments/293493549758939136/1513822404332490762/1.jpg?ex=6a29207a&is=6a27cefa&hm=ecee6be072c7343d4b033f25151fd91b2160db1fe88fb091b288801bd21ce1a1& 10:29 <+bridge_> https://cdn.discordapp.com/attachments/293493549758939136/1513822404764237906/2.jpg?ex=6a29207a&is=6a27cefa&hm=8992b5d59f0aa54b67cea99e5c145d72fe6c3ab02a04c260b34f062d2afc179c& 10:29 <+bridge_> https://cdn.discordapp.com/attachments/293493549758939136/1513822405129404546/3.jpg?ex=6a29207a&is=6a27cefa&hm=748220fb39f50afd14bbb1d54fde0c35d3a317a150161fcfcef5c469824c6ff8& 10:29 <+bridge_> https://cdn.discordapp.com/attachments/293493549758939136/1513822405468885093/4.jpg?ex=6a29207a&is=6a27cefa&hm=6ddf4b1d6b47cae31a5cb6c8525ab374fd10bf6cde49a322fb45e34959e3cf42& 11:11 <+bridge_> @chillerdragon what's this syntax, never saw this: 11:11 <+bridge_> ```C++ 11:11 <+bridge_> new(pPersistent) CPersistentClientData(); 11:11 <+bridge_> ``` 11:11 <+bridge_> so I assume this takes the type of pPeristent 11:12 <+bridge_> but shouldn't it be without the brackets at the end? 11:13 <+bridge_> this is just a constructor call πŸ€” 11:14 <+bridge_> I don't get the PR 11:18 <+bridge_> new(pPointer) to use the memory of the pointer points instead of requesting new memory. 11:19 <+bridge_> @essigautomat new(pPointer) to use the memory of the pointer points instead of requesting new memory. 11:21 <+bridge_> nbvt fqgb 11:27 <+bridge_> this this reconstruct the pointer then? 11:27 <+bridge_> yeah 11:27 <+bridge_> 🀯 11:27 <+bridge_> @essigautomat: it’s called placement new iirc 11:30 <+bridge_> I actually have used it before somewhere forget for what tho 11:31 <+bridge_> Make sure member init with = in the class works for persistent data if it is not set in the persist method. By calling the constructor for the memory that was allocated with a raw malloc call 11:31 <+bridge_> I get the PR now 11:31 <+bridge_> I figured since you merged it xd 11:32 <+bridge_> this basically moves the constructor logic into the function here and I understand you need a non-default constructor maybe for 7777 11:32 <+bridge_> since this was a struct with fields which you just fill with data 11:32 <+bridge_> Yes big 7777 11:32 <+bridge_> But even default constructor doesn’t work 11:33 <+bridge_> It’s random garbage memory 11:33 <+bridge_> I wonder if a generic constructor would be possible 11:33 <+bridge_> Until it’s set in the persist method 11:33 <+bridge_> I guess it would be with an interface an virtualization πŸ™ˆ but lets not overkill 11:33 <+bridge_> Just make it a virtual init method 11:33 <+bridge_> I guess it would be with an interface and virtualization πŸ™ˆ but lets not overkill 11:34 <+bridge_> Yea I can survive like this 11:34 <+bridge_> This pr already saves me some nasty patching 15:36 <+bridge_> https://datatracker.ietf.org/doc/html/rfc6648 15:36 <+bridge_> > Historically, designers and implementers of 15:36 <+bridge_> > application protocols have often distinguished between standardized 15:36 <+bridge_> > and unstandardized parameters by prefixing the names of 15:36 <+bridge_> > unstandardized parameters with the string "X-" or similar constructs 15:36 <+bridge_> > (e.g., "x."), where the "X" is commonly understood to stand for 15:36 <+bridge_> > "eXperimental" or "eXtension". 15:36 <+bridge_> I never thought `X-` meant anything, TIL 😬 15:46 <+bridge_> never heard "xtreme" or "xtra"!? 16:01 <+bridge_> X11 😬 16:26 <+bridge_> @patiga btw your mapview is extremely heavy xd https://mapview.patiga.eu/view/?kog=Mixi4Karolina 16:26 <+bridge_> https://cdn.discordapp.com/attachments/293493549758939136/1513912119874031646/image.png?ex=6a297408&is=6a282288&hm=bce7d406b1623357da571d5fabdc67b77217e33f41ee6d130a8a53ba5d50c4a0& 16:26 <+bridge_> https://cdn.discordapp.com/attachments/293493549758939136/1513912120159506512/image.png?ex=6a297408&is=6a282288&hm=217c194170efefcbd0f1f15ca83f80c1b838f4f76d369348942630b42dd07fe1& 16:26 <+bridge_> https://cdn.discordapp.com/attachments/293493549758939136/1513912120587194418/image.png?ex=6a297408&is=6a282288&hm=06ee0d230dd3657baf16cd9f9536c49048b0f61e93c89612e2e085c88f2b1992& 16:27 <+bridge_> please elaborate what the screenshots are ^^ 16:28 <+bridge_> looks fine to me, no insane animations on the map :justatest: 16:28 <+bridge_> why does it take 3x more of my cpu than default ddnet xd 16:28 <+bridge_> why does it take 3x more of my gpu than default ddnet xd 16:29 <+bridge_> ah 1. is twgpu/mapview, 2. is idle and 3. is default ddnet? 16:29 <+bridge_> yes 16:29 <+bridge_> but ddnet with 800fps, not 170 16:29 <+bridge_> could you do a comparison zoomed out? 16:29 <+bridge_> might be shader related 16:29 <+bridge_> uh let me check what ddnet is with vsync on 16:30 <+bridge_> they are both full zoomed out 16:30 <+bridge_> the whole map is visible 16:30 <+bridge_> interesting, could you do one more screenshot with chromium where the mapview will actually use webgpu? 16:30 <+bridge_> (to verify that webgpu is enabled just see if weapons are rendered as pickups) 16:31 <+bridge_> (or look into the console in the adapter info) 16:33 <+bridge_> uh this is chromium 16:33 <+bridge_> https://cdn.discordapp.com/attachments/293493549758939136/1513913886393499770/image.png?ex=6a2975ad&is=6a28242d&hm=80270061f1f0985612900f54488632175a044f3b567d83481441ffab18f4b7ca& 16:34 <+bridge_> performance is the same 16:35 <+bridge_> no webgpu sadly 16:36 <+bridge_> maybe another interesting data point would be the wasm-compiled ddnet client 16:36 <+bridge_> which will then also use the same graphics backend 16:39 <+bridge_> my rendering implementation only substantially diverges from ddnet for tilemap rendering. on typical zoom levels ddnet should be more performant, and from some zoomed out level twgpu should win 16:39 <+bridge_> ah, the native`twgpu-map-inspect` would also be interesting 16:39 <+bridge_> do you reuse the same shaders and do you make use of the quad grouping? 16:40 <+bridge_> like I can imagine some edge cases 16:40 <+bridge_> yes definitely, I diverge there as well, but I wouldn't have expected these changes to be **that** significant performance-wise 16:41 <+bridge_> not sure exactly what you mean by shader-reuse, I use the same shader for all quads, and render each quad layer individually with one draw call 16:42 <+bridge_> can you render all quads with one draw call even if they're animated? 16:43 <+bridge_> yes 16:43 <+bridge_> I designed them differently, where actual quad vertices are static and I have an envelope buffer that gets accessed in the vertex shader 16:44 <+bridge_> so good call, thats another place where twgpu offloads work from the cpu to the gpu 16:44 <+bridge_> I think this might be a better option 16:44 <+bridge_> (I mean yours) 16:44 <+bridge_> this also means tho that twgpu keeps more buffers so takes up more vram 16:45 <+bridge_> the current ddnet client also tries to group quads which has the same envelopes and renders them all with one draw call 16:45 <+bridge_> you implemented that system, right? nice one :) 16:46 <+bridge_> yes, thanks πŸ™‚ 16:46 <+bridge_> also we now have clip regions for layers, but if you render everything this should be irrelevant 16:47 <+bridge_> but this is one of the reasons the client should be more performant if zoomed in 16:47 <+bridge_> because it's specialized for this case 16:49 <+bridge_> I also still have on my todo list for the zoomed out case ... I am almost finished with reworking the rendering ;_; only a few PRs 16:54 <+bridge_> yea the hope of twgpu is kinda that throwing triangles at the screen in this pretty ez way *should* be basically free ^^ 16:54 <+bridge_> you probably win in any case if you benchmark against ogl1 16:56 <+bridge_> eeh, my tilemap solution tends to make me lose pretty much always on normal zoom levels ^^ 16:56 <+bridge_> why did you not do it the ddnet way? 16:59 <+bridge_> I kinda thought about how I'd like to do it, and thats what I came up with 16:59 <+bridge_> I think during research I was inspired by some blog post :) 17:00 <+bridge_> this one :D https://blog.paavo.me/gpu-tilemap-rendering/ 17:00 <+bridge_> I am also a bit unhappy how ddnet does this tbh - but this has to do with some iGPUs from intel doing weird stuff 17:01 <+bridge_> on my todo-at-some-point for twgpu is properly supporting zooming out at levels where tiles are smaller than one pixel 17:01 <+bridge_> tho I should probably do anti-aliasing first 17:02 <+bridge_> hmm 17:03 <+bridge_> I have yet another optimzation idea, but the implementation is too insane 17:03 <+bridge_> I'm all ears ^^ 17:04 <+bridge_> I mean for the client: you could detect if a tile is a full 1 color tile, and combine tiles to create greater rectangles 17:04 <+bridge_> heh, quite specific :D 17:05 <+bridge_> yes but often done 17:05 <+bridge_> tru 17:05 <+bridge_> even in grass_main 17:05 <+bridge_> I wonder if I know any map where this is not done 17:05 <+bridge_> even my own map πŸ€” 17:05 <+bridge_> since the edges are pasted over full tiles 17:06 <+bridge_> ah tru with freeze/teles its pretty much in every rmap 17:06 <+bridge_> and probably also other design 17:06 <+bridge_> and the detection and combining can be put into the initialization code 17:06 <+bridge_> can't wait for the next complaint about map loading times πŸ™ 17:07 <+bridge_> :d 17:07 <+bridge_> you can load maps really really fast by disabling lots of rendering optimizations 17:08 <+bridge_> I think I might give this a try tbh 17:08 <+bridge_> can only be a learning experience 17:09 <+bridge_> time to add crazy loading screens 17:09 <+bridge_> and optimize even further 17:12 <+bridge_> https://github.com/ddnet/ddnet/issues/12264#issuecomment-4661181256 18:09 <+bridge_> I actually think this is a non issue, yes we could add the feature but I doubt this would get widespred usage 18:37 <+bridge_> I agree with sans. It's a not high priority issue because it sends a message to the mod aswell 18:37 <+bridge_> But saying it's not actionable is wrong 18:42 <+bridge_> just let the vote happen and ignore the result if authorized honestly 18:55 <+bridge_> hmm okay, I guess it is actionable - I just often wish people would propose what they would want instead, which is of course sometimes hard to do 18:56 <+bridge_> this would also mark you as a moderator 18:57 <+bridge_> but as I said in the general chat, the opinion of the moderators here matters most, as they're the ones using whatever tools we provide them 18:57 <+bridge_> the issue is that people can scan for mods but just spamming votes and checking 18:57 <+bridge_> change name on the vote to someone else :kek: 18:57 <+bridge_> make the vote fail 18:58 <+bridge_> fake f4 votes 18:58 <+bridge_> ** 18:58 <+bridge_> rigged 18:58 <+bridge_> lol just make the player ban himself if he tries to vote a moderator 18:58 <+bridge_> please no 18:58 <+bridge_> :aylmao: 19:16 <+bridge_> weekly ai news! https://www.anthropic.com/news/claude-fable-5-mythos-5 19:17 <+bridge_> @l._ouis monthly reminder about eyes issue :justatest: 19:39 <+bridge_> @patiga `AdapterInfo { name: "NVIDIA GeForce GTX 980, or similar", vendor: 4318, device: 0, device_type: Other, driver: "", driver_info: "WebGL 2.0", backend: Gl }` 19:39 <+bridge_> 19:39 <+bridge_> I wonder how it arrives at this graphics card, what do you mean _similar_ 19:40 <+bridge_> also `WEBGL_debug_renderer_info is deprecated in Firefox and will be removed. Please use RENDERER.` 20:02 <+bridge_> probably tracking protection 20:02 <+bridge_> oO okay I guess 20:02 <+bridge_> I got `Intel(R) HD Graphics, or similar` 20:50 <+bridge_> rate my text renderer! ✨ 20:50 <+bridge_> https://cdn.discordapp.com/attachments/293493549758939136/1513978586854457434/image.png?ex=6a29b1ef&is=6a28606f&hm=c2831d68220fb56b39ef8a040645a87701f4737c55a14bcab8cc420653b5b5dd& 20:52 <+bridge_> 10 cheese burgers out of 49 twinbops 20:52 <+bridge_> I'll take that :D 20:59 <+bridge_> Seems worse to the old model 20:59 <+bridge_> For my use case 21:02 <+bridge_> Make the vote actually target the caller 21:02 <+bridge_> ngl that would be funny 21:02 <+bridge_> I was told you cannot mess up fonts in a way that makes text unreadable, I was wrong. 21:03 <+bridge_> I was told you cannot mess up fonts in a way that makes text unreadable, I was wrong to belive that. 21:03 <+bridge_> I was told you cannot mess up fonts in a way that makes text unreadable, I was wrong to believe that. 21:04 <+bridge_> Yes defn. depends on use case, its nice that its not as expensive as mythos was though 21:05 <+bridge_> im gonna have it bug check the quic implementation i made opus 4.8 do :pepeW: this is the future 21:08 <+bridge_> I love working on rendering, it's always so much fun when stuff goes wrong xD 21:08 <+bridge_> https://cdn.discordapp.com/attachments/293493549758939136/1513983166661263360/screenshot_2026-06-09_21-07-49.png?ex=6a29b633&is=6a2864b3&hm=a90efbe45c7d159aa853e1f6a635b734627d82ef13bd0b75c8cbf2fbf88781d1& 21:08 <+bridge_> :D 21:08 <+bridge_> it really is 21:09 <+bridge_> but also sometimes disheartening as debug output can be difficult :d 21:09 <+bridge_> I am pretty sure my above proposal would work xD I just don't know if I have the willingness to test this 21:09 <+bridge_> ooh, you doing the grouping of single-color tiles? ^^ 21:09 <+bridge_> maybe 21:09 <+bridge_> but this would need a kind-of fundamental rewrite 21:10 <+bridge_> probably np-hard to get the "perfect" configuration of combined tiles ^^ 21:10 <+bridge_> I know for a fact that it's np hard 21:10 <+bridge_> since I did the pixelart thing ... 21:10 <+bridge_> yea πŸ˜“ 21:10 <+bridge_> but greedy should be enough anyway, since we are rendering row by row 21:11 <+bridge_> damn :swea != :sweat , as the latter is a perfect match 21:11 <+bridge_> wanted πŸ˜… 21:12 <+bridge_> the issue is, we currently have a one to one relationship between tiles and visuals 21:12 <+bridge_> looking more column-by-column up there 21:13 <+bridge_> I just skipped every second tile, if the one before is the same 21:13 <+bridge_> like as a proof of concept 21:13 <+bridge_> heh didnt even notice the broken vertices up there 21:13 <+bridge_> the broken vertices are from the skipped tiles still beeing rendered πŸ™ˆ with random data 21:13 <+bridge_> yup, sounds like graphics programming :D 21:15 <+bridge_> It's 2x tokens and it's still kind of a preview version 21:23 <+bridge_> It's one of the oldest open teeworlds issues: https://github.com/teeworlds/teeworlds/issues/19 21:25 <+bridge_> incredible 21:26 <+bridge_> Does it qualify as stale or history artifact? 21:28 <+bridge_> It burnt through half of me my weekly limit in just 2 prompts :justatest: 21:28 <+bridge_> It burnt through half of my weekly limit in just 2 prompts :justatest: 21:43 <+bridge_> There probably would have been more impactful optimizations that could be applied first before attempting this, like those in the DDNet client. At this point the entire repository is stale with the last release being 6 years ago and the last PR merged by oy almost 2 years. 22:25 <+bridge_> :justatest: i guess i could run tasks for you if interested xd 22:26 <+bridge_> @blaiszephyr needed it, not me πŸ˜„ 22:27 <+bridge_> :aaa: 22:27 <+bridge_> Its likely a bug. They always seem to have some issue that burns through people's tokens whenever they release a new model xD 22:28 <+bridge_> I once tried one of those in-editor AI things. 22:28 <+bridge_> 22:28 <+bridge_> It repeated the sentence "error opening file" within a minute or two until I hit my 500K token limit for the month :justatest: 22:29 <+bridge_> I once tried one of those in-editor AI things. 22:29 <+bridge_> 22:29 <+bridge_> It repeated the sentence "error opening file" until I hit my 500K token limit for the month :justatest: 22:29 <+bridge_> coding agent moment 22:30 <+bridge_> is there a reliable one even? 22:30 <+bridge_> I don't want in-line completions and such, I just like to use AI as a Google replacement sometimes xd 22:30 <+bridge_> (Claude does a pretty decent job at that) 22:33 <+bridge_> automated linting, unit testing, and building :greenthing: 22:33 <+bridge_> https://www.youtube.com/watch?v=6YPqoARpYuQ 22:34 <+bridge_> 🫠 maybe I'm weird but I really hate using AI generated code 22:34 <+bridge_> 22:34 <+bridge_> If I don't fully understand what (my) code does it makes me anxious 22:37 <+bridge_> Tell it to explain it :p 22:39 <+bridge_> AGI is here 22:39 <+bridge_> https://cdn.discordapp.com/attachments/293493549758939136/1514006114759344260/image.png?ex=6a29cb92&is=6a287a12&hm=137b056cf552e261fe1333766d6886face2265d7bc5eb357e6258a2d2fd4679d& 22:40 <+bridge_> https://www.reddit.com/r/ClaudeAI/comments/1u1bmim/comment/oqp51qd/?utm_source=share&utm_medium=web3x&utm_name=web3xcss&utm_term=1&utm_content=share_button 22:41 <+bridge_> https://preview.redd.it/agi-is-here-fable-5-suggest-me-to-drive-to-the-car-wash-v0-9yt2bdep3b6h1.png?width=640&crop=smart&auto=webp&s=95776b34f4161df63a6c9b35cebe2e566b9cedab 22:42 <+bridge_> :kek: 22:42 <+bridge_> https://cdn.discordapp.com/attachments/293493549758939136/1514006672920805517/Screenshot_20260609-224142.png?ex=6a29cc17&is=6a287a97&hm=b81afe2f8330ca73a2b8e7a3c33fb43b25888cbc239c1207e176c5c51c099fd7& 22:47 <+bridge_> this makes you sane 22:47 <+bridge_> watch out, the singularity is coming 22:49 <+bridge_> I am not sure this is doable with the vulkan backend in a way where you gain performance πŸ€” 22:50 <+bridge_> I don't think it's a useful optimization for modern backends 22:51 <+bridge_> Combining vertices should still be useful, but I think not the color part 23:40 <+bridge_> really incredible work its doing 23:40 <+bridge_> https://cdn.discordapp.com/attachments/293493549758939136/1514021499554500779/image.png?ex=6a29d9e6&is=6a288866&hm=e6a3ff2c278b500fbb52b3d8cbd65a7d3e14e99e748760e161a3046dd3a8f9d3& 23:41 <+bridge_> :galaxybrain: 23:41 <+bridge_> https://cdn.discordapp.com/attachments/293493549758939136/1514021745697226984/image.png?ex=6a29da21&is=6a2888a1&hm=f3052d51191461958382ae5d3e4fc5e9ff482b9a8ad660eed6e476d3e83389f4& 23:43 <+bridge_> why did they post this lol 23:53 <+bridge_> https://tenor.com/view/context-context-hat-i-require-context-soyjak-wojak-gif-11496174374422496290 23:53 <+bridge_> ive only played a bit of factorio so far so i cant tell the probably funny fail here