RE: https://mastodon.gamedev.place/@icculus/116604338927374394
sdl3-net-sys for rust is available as a prerelease too!
RE: https://mastodon.gamedev.place/@0x0961h/116580008580077117
So for those who are interested how I achieved such numbers.
First of all I implemented a thing very heavily inspired by Doom Eternal's rendering solution. So they have a thing called "dynamic draw call merging" where they run a compute shader that looks at a huge buffer containing all the geometry data and then they produce index buffer and push it into GPU.
https://simoncoenen.com/blog/programming/graphics/DoomEternalStudy#dynamic-draw-call-merging
أصدرت scrcpy 4.0 تحسينات تركز على المستخدم، أبرزها الانتقال إلى SDL3 لتمكين ميزات مثل قفل نسبة العرض إلى الارتفاع وتغيير حجم الشاشة المرنة. كما عززت خيارات التحكم بالكاميرا، وأضافت ميزة إبقاء الجهاز نشطًا، وحسّنت التعامل مع انقطاع الاتصال، وغيرت لون الخلفية الافتراضي، وأصلحت مشكلات الصوت، وحدّثت FFmpeg.
Scrcpy v4.0
scrcpy v4.0이 출시되어 SDL2에서 SDL3로 마이그레이션하며 윈도우 크기 조절 시 화면 비율 고정 기능 등 새로운 기능을 도입했습니다. 가변 크기 가상 디스플레이 지원, 카메라 토치 및 줌 제어, 연결 끊김 시 아이콘 표시, Meta Quest 미러링 문제 해결 등 다양한 개선이 포함되었습니다. 또한 CPU 사용량 최적화, FFmpeg 및 adb 플랫폼 도구 업그레이드도 이루어졌습니다. 이 업데이트는 안드로이드 화면 미러링 및 제어 도구로서 개발자와 사용자 모두에게 실용적인 기능 향상을 제공합니다.
okay! now it renders (looks like garbage but that's expected - the font layout has character-width stride.)
Kara (@vethanis) pointed it out: the missing information is in the SDL header: https://github.com/libsdl-org/SDL/blob/f30ec9940af42c08466a36e42fe6d5847f7c124f/include/SDL3/SDL_gpu.h#L2714
so samplers, textures and buffers in the fragment shader go into the descriptor set 2, so the annotation required here is [[vk::binding(0, 2)]] - because the texture binding is at 0.
alright! we're cooking!
16 Incorrect API Use High Execution 0 Shader referenced a descriptor set 0 that was not bound
hm! i don't know what's supposed to be wrong about this shader.
spv disas shows:
OpDecorate %g_tex Binding 0
OpDecorate %g_tex DescriptorSet 0
apparently a ds is expected that SDL doesn't provide.
i'll try a newer SDL3 version first.