1 पॉइंट द्वारा GN⁺ 2024-08-31 | 1 टिप्पणियां | WhatsApp पर शेयर करें

GPU API MkII

प्रोजेक्ट परिचय
  • SDL का नया GPU API पेश किया गया है
  • यह MoonWorks प्रोजेक्ट के समान है और आधुनिक API (Vulkan आदि) को target करता है
  • Samurai Gunn 2 जैसे गेम्स में उपयोग हो रहा है
मुख्य फ़ीचर्स और लाभ
  • Compute फ़ंक्शनैलिटी: Refresh API compute फ़ीचर्स का सरल उपयोग संभव बनाता है
  • Shader सिस्टम: offline compilation तरीका इस्तेमाल करता है, और कई फ़ॉर्मैट्स को support करता है
  • Resource safety: आंतरिक रूप से resource safety सुनिश्चित करता है, और उपयोगकर्ता के सामने जटिल API उजागर नहीं करता
Shader सिस्टम
  • offline shader build के लिए shaderbuild.py स्क्रिप्ट का उपयोग
  • shader module बनाते समय प्रत्येक backend का IR फ़ॉर्मैट इस्तेमाल किया जाता है
  • SDL स्वयं shader compiler को wrap नहीं करता
डेवलपमेंट प्रगति
  • Metal support की शुरुआत
  • FNA3D port के माध्यम से shader generation support
  • hardware instancing support जोड़े जाने की योजना
कम्युनिटी फ़ीडबैक
  • offline shader compilation तरीके पर अलग-अलग राय
  • SDL_gpu के cycle handling तरीके की सकारात्मक सराहना
  • विभिन्न backends के support के लिए लगातार सुधार की आवश्यकता
आगे की योजना
  • SDL शैली के documentation comments लिखना
  • Metal और D3D12 support को मज़बूत करना
  • test programs जोड़ना और bugs ठीक करना

# GN⁺ का सार

  • SDL का नया GPU API आधुनिक graphics API को support करता है और विभिन्न गेम्स में उपयोग किया जा सकता है
  • shader सिस्टम offline compilation तरीका अपनाता है ताकि performance optimize हो सके
  • कम्युनिटी फ़ीडबैक को शामिल करते हुए लगातार सुधार जारी है, और Metal तथा D3D12 support को और मज़बूत किया जाएगा
  • यह API गेम डेवलपर्स के लिए उपयोगी है और कई backends को support करके flexibility देता है

1 टिप्पणियां

 
GN⁺ 2024-08-31
Hacker News टिप्पणियाँ
  • SDL3 अभी प्रीव्यू स्थिति में है, लेकिन नया GPU API main branch में merge कर दिया गया है

    • नया GPU API ग्राफ़िक्स code और shader एक बार लिखकर कम से कम झंझट के साथ cross-platform (console सहित) पर चलाने की सुविधा देता है
    • पहले इसके लिए Unity, Unreal या custom solution की ज़रूरत होती थी
    • WebGPU/WGSL भी इसी तरह का cross-platform graphics stack प्रयास है
    • फिलहाल SDL3 GPU API, backend के रूप में WebGPU को support नहीं करता
  • यह देखकर आश्चर्य है कि SDL GPU API इतनी जल्दी पूरा हो गया

    • WebGPU native अभी development में है और अभी पूरा नहीं हुआ है
    • SDL GPU API ज़्यादा platforms support करता है, इसलिए उम्मीद थी कि इसमें ज़्यादा समय लगेगा
  • dx12 हिस्से में योगदान देकर खुशी हुई

  • SDL एक high-quality software है, जो कई platforms पर तेज़ी से compile हो जाता है और हमेशा काम करता है

    • नए API को लेकर उत्साह है
  • मैं SDL का बड़ा प्रशंसक हूँ

    • जब cross-platform game library की तलाश थी, तब SDL और उसका API सही संतुलन देता था
    • मुझे window और graphics context बनाने वाली C(++) library चाहिए थी
    • मैं कोई नई language सीखना नहीं चाहता था
  • यह सब कैसे आगे बढ़ेगा, इसे लेकर उत्सुकता है

    • उम्मीद है कि custom game engine और app बनाने के लिए और ज़्यादा विकल्प मिलेंगे
  • Vulkan सीखना मज़ेदार और उपयोगी था, लेकिन प्रगति की रफ़्तार धीमी लगी

    • अगर SDL3 शुरू से होता, तो शायद मैं ज़्यादा आगे बढ़ गया होता
  • मैंने इस library का इस्तेमाल नहीं किया है, लेकिन मैं cross-platform GPU computing क्षमता के examples देखना चाहूँगा

    • कहाँ से शुरू करना चाहिए, इस पर सुझाव चाहिए
  • मैं Raylib में SDL GPU backend देखना चाहूँगा

    • तब मैं इसे तुरंत इस्तेमाल करूँगा
  • सोच रहा हूँ कि क्या इसका https://github.com/grimfang4/sdl-gpu से कोई संबंध है

    • या फिर यह सिर्फ़ एक ही नाम वाली पूरी तरह अलग चीज़ है