00:25 <+bridge_> ``` 00:25 <+bridge_> build] CUSTOMBUILD : error : "C:\\Users\\USER\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\src\\rust\\library\\Cargo.lock" does not exist, unable to build with the standard library, try: [C:\Users\USER\Desktop\workspace\ddnet\build\rust_engine_shared_target.vcxproj] 00:25 <+bridge_> [build] rustup component add rust-src --toolchain nightly-x86_64-pc-windows-msvc 00:25 <+bridge_> [build] C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets(254,5): error MSB8066: Der benutzerdefinierte Build f├╝r "C:\Users\USER\Desktop\workspace\ddnet\build\CMakeFiles\f98cc926f948fb243cbc1db1b4e21904\e2185d3fb4c36a25.rule;C:\Users\USER\Desktop\workspace\ddnet\build\CMakeFiles\f98cc926f948fb243cbc1db1b4e21904\rust_engine_shared_target.rule" wurde mit dem Code 101 beendet. 00:25 <+bridge_> ``` 00:25 <+bridge_> 00:25 <+bridge_> Hmm can't build the client anymore 00:26 <+bridge_> looks like my rust broke 00:26 <+bridge_> it's okay you don't have to <3 00:29 <+bridge_> hmm build chooses nightly over stable 00:31 <+bridge_> yeah switching to stable fixes it, so ddnet doesn't compile with rust nightly 02:16 <+bridge_> yo chillerdragon when are we getting ddnet unikernel version. 02:34 <+bridge_> ddnet on bare metal? 10:22 <+bridge_> Hm... I always wonder why DDNet supports Vulkan . :3 10:22 <+bridge_> Could anyone tell me why? 10:32 <+bridge_> because jupstar decided we want speed :WICKED: 11:14 <+bridge_> :nouis: 12:14 <+bridge_> Modern and fast, I don't see why not 12:14 <+bridge_> Where's the fast? 12:14 <+bridge_> :thonk: 12:16 <+bridge_> I agree it's modern but where's the fast. 12:16 <+bridge_> Potentially at least 12:17 <+bridge_> Hm.. 12:17 <+bridge_> But Vulkan doesn't really offer much improvement for 2D games. 12:18 <+bridge_> Vulkan should give you finer control of the processing. That's what in my mind 12:19 <+bridge_> Ah, I agree. 12:21 <+bridge_> There are over 7660 lines in the backend_vulkan.cpp 12:21 <+bridge_> :frozen: 12:23 <+bridge_> The VK backend (at least iirc) does have more FPS and is technically the source of a lot of the performance improvements in the gl33 backend. The gl33 backend more closely follows the VK one and benefitted from the same optimizations 12:25 <+bridge_> ask juppey and he will read you lecture about vulcan benefits 12:25 <+bridge_> but as he comes back from rest 12:51 <+bridge_> I get more fps with it 12:51 <+bridge_> Also it's just cool why not 13:04 <+bridge_> The current vulkan backend of ddnet is the most performant one, by a factor of 1.5, if you can do it better, please send a patch. 13:17 <+bridge_> why cool 13:24 <+bridge_> anonymous :ninja: 13:29 <+bridge_> In open source we don't say "fuck off", we say "patches welcome", and I think that's beautiful. 13:30 <+bridge_> hahahaha 13:33 <+bridge_> What I meant was not only FPS. 13:34 <+bridge_> Then what did you mean? 13:34 <+bridge_> I would say that Vulkan has better performance than OpenGL. But just like what I have said. 13:34 <+bridge_> ^ 13:35 <+bridge_> And? 13:35 <+bridge_> Loc == bad? 13:35 <+bridge_> I mean it's complicated, at least compared to OpenGL. 13:36 <+bridge_> The pain is mostly one time 13:36 <+bridge_> aww why did he close it - if the behaviour differs it should be addressed 13:36 <+bridge_> But it has to be said that it's precisely because of this complexity that Vulkan is better. 13:37 <+bridge_> The memes are exaggerated 13:38 <+bridge_> We still keep the OpenGL 1.0 in DDNet codes and I don't know what it's used for now. 13:38 <+bridge_> Old hardware 13:38 <+bridge_> That's too old: 13:39 <+bridge_> Also would help console homebrew ports 13:39 <+bridge_> Says who? 13:39 <+bridge_> Oh 13:39 <+bridge_> What we kept is OpenGL 1.4 13:40 <+bridge_> but there are many players who still use it 13:40 <+bridge_> What? 13:40 <+bridge_> :thonk: 13:40 <+bridge_> Ah 13:40 <+bridge_> Yeah you're right 13:41 <+bridge_> We didn't support OpenGL 2.0 so that they need to work on OpenGL 1.4 13:41 <+bridge_> even 1.0 or 1.1 13:41 <+bridge_> i don't remember which one we have 13:45 <+bridge_> I wanted to find a screenshot of my old hardware, but I didn't find it :3 13:45 <+bridge_> It didn't support Vulkan. 13:46 <+bridge_> Vulkan minimum is ~2012 13:47 <+bridge_> Yeah, it was produced before 2011. 13:47 <+bridge_> my old hardware didn't support vulcan too. and even gl3.3 was crushing sometimes 13:47 <+bridge_> hopefully i chill on vulcan nowdays 13:47 <+bridge_> :greenthing: 13:54 <+bridge_> Vulkan was not really cross-platform, because Apple refused to use Vulkan. What they are using is Metal. :frozen: 13:55 <+bridge_> Native implementation of WebGPU is a good idea but it's too heavy. 13:56 <+bridge_> (at least for simple 2D games.) 14:02 <+bridge_> Technically Apple made Metal before VK was standardized at all. But still a shame that they never migrated 14:03 <+bridge_> Though Metal has a similar level of flexibility so MoltenVK works quite well 14:05 <+bridge_> But it's still a compatibility layer 14:17 <+bridge_> I don't know much about graphics programming so I've always wondered 14:17 <+bridge_> how much work is it to maintain multiple backends for vulkan / opengl / different opengl versions 14:17 <+bridge_> naively it sounds like you'd have to duplicate a lot of logic 14:18 <+bridge_> or are they still similar enough that you can make sensible abstractions? 14:21 <+bridge_> You can make sensible abstractions 14:21 <+bridge_> DDNet mostly just draws textured quads and writing that for multiple backends isn't so bad 14:40 <+bridge_> ddnet abstracted all backends nicely with an interface, it really depends how easy it is to add a new one 14:42 <+bridge_> Most of these abstractions are game related, like DrawQuads or DrawTiles 15:11 <+bridge_> I moved our fork of Teeworlds from OpenGL 1 to OpenGL 3.3 with OpenGL ES 3.2 15:11 <+bridge_> Actually, OpenGL ES 3.2 is really similar to 3.3: 15:12 <+bridge_> You can just do a `if else` like: 15:12 <+bridge_> ``` 15:12 <+bridge_> if(pCommand->m_Flags & CCommandBuffer::TEXFLAG_COMPRESSED) 15:12 <+bridge_> { 15:12 <+bridge_> if(m_IsOpenGLES) 15:12 <+bridge_> { 15:12 <+bridge_> switch(StoreOglformat) 15:12 <+bridge_> { 15:12 <+bridge_> case GL_RGB: StoreOglformat = GL_COMPRESSED_RGB8_ETC2; break; 15:12 <+bridge_> case GL_RED: StoreOglformat = GL_COMPRESSED_R11_EAC; break; 15:12 <+bridge_> case GL_RGBA: StoreOglformat = GL_COMPRESSED_RGBA8_ETC2_EAC; break; 15:12 <+bridge_> default: StoreOglformat = GL_COMPRESSED_RGBA8_ETC2_EAC; 15:12 <+bridge_> } 15:13 <+bridge_> } 15:13 <+bridge_> else 15:13 <+bridge_> { 15:13 <+bridge_> switch(StoreOglformat) 15:13 <+bridge_> { 15:13 <+bridge_> case GL_RGB: StoreOglformat = GL_COMPRESSED_RGB; break; 15:13 <+bridge_> case GL_RED: StoreOglformat = GL_COMPRESSED_RED; break; 15:13 <+bridge_> case GL_RGBA: StoreOglformat = GL_COMPRESSED_RGBA; break; 15:13 <+bridge_> default: StoreOglformat = GL_COMPRESSED_RGBA; 15:13 <+bridge_> } 15:13 <+bridge_> } 15:13 <+bridge_> } 15:13 <+bridge_> ``` 15:13 <+bridge_> ddnet has removed TEXFLAG_COMPRESSED. 😄 17:58 <+bridge_> Guys, are the servers working in Iran? 17:58 <+bridge_> DDNet servers 17:59 <+bridge_> Ohh 17:59 <+bridge_> No 18:00 <+bridge_> Due to mass protests from people, the Iranian authorities are shutting down the internet in the country. 19:21 <+bridge_> <01000111g> yeah, it is unfortunate. I hope they listen to the demonstrants finally 23:49 <+bridge_> Hey guys, why hasn't the rather famous shotgun bug been fixed? 23:49 <+bridge_> Hellou :3 23:50 <+bridge_> Is it used on some maps or something?