सामग्री पर जाएँ
PS5PCEM
आंशिकग्राफ़िक्स

Direct3D 12 बैकएंड

0.3.5 के बाद जोड़ा गया एक प्रायोगिक नेटिव Windows रेंडरर। यह PM4 डिकोडर और RDNA2 शेडर अनुवाद Vulkan के साथ साझा करता है, फिर D3D12 और DXGI से निष्पादन और प्रदर्शन करता है। डिफ़ॉल्ट अब भी Vulkan है, और गेम अभी इस रास्ते से नहीं चलते।

17 अक्टूबर 2026 तक के रिपॉज़िटरी नोट्स

रेंडरर चुनना

Windows लॉन्चर की सेटिंग्स में Vulkan और DirectX 12 वाला एक ग्राफ़िक्स API कार्ड है। लॉन्चर पोर्टेबल ps5pcem.ini में graphics_api=vulkan या graphics_api=d3d12 सहेजता है और PS5_GRAPHICS_API को game-run तक पहुँचाता है, इसलिए चुनाव अगली बार शुरू करने पर लागू होता है। डिफ़ॉल्ट Vulkan है। लॉन्चर सभी बारह भाषाओं में DirectX 12 को प्रायोगिक बताता है, और साइडबार Vulkan डिवाइस की स्थिति की जगह उसे दिखाता है।

यही वेरिएबल कमांड लाइन से भी काम करता है, जहाँ d3d12 और dx12 दोनों स्वीकार हैं। Linux बिल्ड Vulkan चुनते हैं, और रनर वहाँ d3d12 को अस्वीकार करता है। अज्ञात मान को गेम लोड होने से पहले ही अस्वीकार कर दिया जाता है। अगर D3D12 का आरंभ या निष्पादन विफल हो जाए, तो रनर उसकी जगह Vulkan नहीं लगाता: असमर्थित GPU काम अपना कारण छापता है और काम को पूरा बताने के बजाय प्रायोगिक रन को खत्म कर देता है। इस बैकएंड में हेडलेस निष्पादन उपलब्ध नहीं है।

बैकएंड क्या चलाता है

डिवाइस, डायरेक्ट क्यू, कमांड एलोकेटर और लिस्ट, बैरियर, फ़ेंस और संसाधनों का जीवनकाल COM के ऊपर एक छोटे C इंटरफ़ेस के पीछे हैं। अपलोड, डिफ़ॉल्ट और रीडबैक बफ़र, रॉ UAV डिस्क्रिप्टर ऐरे और GPU कॉपी लागू हैं। शेडर उसी RDNA2 डिकोडर, IR और SPIR-V जनरेशन से गुज़रते हैं जिनसे Vulkan पाथ गुज़रता है; SPIRV-Cross उस SPIR-V को HLSL में बदलता है, और Windows का D3DCompiler Shader Model 5.1 बाइटकोड बनाता है। यहाँ SPIR-V सिर्फ़ एक मध्यवर्ती रूप है, और कुछ भी Vulkan से नहीं चलता। SPIRV-Cross सोर्स हैश से तय है, और उसका Apache-2.0 लाइसेंस प्रोजेक्ट के साथ आता है।

PM4 की ओर, DISPATCH_DIRECT सीमित, स्थिर रूप से हल किए गए MUBUF और MTBUF स्टोरेज डिस्क्रिप्टर, USER_DATA विशेषीकरण और गेस्ट मेमोरी में सटीक राइटबैक के साथ चलता है। DRAW_INDEX_AUTO एक सीमित स्थिति सँभालता है: बिना संसाधन वाले वर्टेक्स और पिक्सेल शेडर, ट्राएंगल लिस्ट या स्ट्रिप, एक लीनियर RGBA8 UNORM टारगेट, व्यूपोर्ट, सिज़र, कलिंग, चैनल मास्क और इंस्टेंसिंग, जिसमें टारगेट में पहले से मौजूद बाइट सुरक्षित रहते हैं। तीन बफ़र वाली DXGI फ़्लिप स्वैपचेन लीनियर RGBA8 और BGRA8 स्कैनआउट दिखाती है और विंडो के शीर्षक में रेंडरर और FPS बताती है। GPU काम अपने असर के गेस्ट मेमोरी तक पहुँचने से पहले सिंक्रोनस रूप से पूरा होता है, समानांतर AGC निष्पादन बंद है, और शेडर, पाइपलाइन स्टेट और तैयार संसाधन अभी कॉल के बीच कैश नहीं होते।

क्या जाँचा गया है

17 अक्टूबर 2026 को NVIDIA GeForce RTX 3070 Ti पर हार्डवेयर जाँचें पास हुईं: छह आकारों में बफ़र अपलोड और रीडबैक, छह डिस्पैच आकारों में नेटिव कंप्यूट, सटीक आउटपुट जाँच के साथ RDNA2 कंप्यूट और रैस्टर अनुवाद, कमांड एक्ज़ीक्यूटर से D3D12 तक जाने वाले और गेस्ट मेमोरी में लिखने वाले PM4 कंप्यूट और ड्रॉ, और तीन स्वैपचेन आकारों पर विंडो प्रदर्शन। D3D12 डीबग लेयर इंस्टॉल नहीं थी, इसलिए ये रन डीबग लेयर के तहत साफ़ होना साबित नहीं करते।

PS5_GRAPHICS_API=d3d12 के साथ Raiden IV शुरू करने पर RTX 3070 Ti चुना गया, गेम शुरू हुआ और पहले इंडेक्स्ड ड्रॉ पर एग्ज़िट कोड 1 के साथ रुक गया (IndexedAndIndirectDrawNotImplemented)। यह एक जाँची गई सीमा है, D3D12 पर गेम का बूट होना नहीं। इस साइट के सभी गेम नतीजे और FPS आँकड़े Vulkan से मापे गए हैं।

क्या लागू है

  • लॉन्चर का चुनाव ps5pcem.ini में सहेजा जाता है और PS5_GRAPHICS_API के रूप में भेजा जाता है; डिफ़ॉल्ट Vulkan है।
  • COM के ऊपर C इंटरफ़ेस के पीछे नेटिव डिवाइस, क्यू, फ़ेंस, बफ़र, UAV डिस्क्रिप्टर और GPU कॉपी।
  • साझा SPIR-V पाथ, SPIRV-Cross से बने HLSL और Shader Model 5.1 बाइटकोड से होकर RDNA2 शेडर।
  • सीमित कंप्यूट डिस्पैच, एक सीमित ऑटो-इंडेक्स ड्रॉ और तीन बफ़र वाली DXGI फ़्लिप स्वैपचेन।

क्या अब भी बाक़ी है

  • टेक्सचर और सैंपलर, इमेज फ़ॉर्मैट और डीटाइलिंग, इंडेक्स्ड और इनडायरेक्ट ड्रॉ, NGG और टेसलेशन अभी लागू नहीं हैं।
  • गेस्ट डेप्थ और स्टेंसिल, ब्लेंडिंग, कई रेंडर टारगेट, MSAA, मेटाडेटा और वीडियो प्रदर्शन अभी नहीं हैं।
  • शेडर व पाइपलाइन कैशिंग और एसिंक्रोनस पूर्णता के बिना गेम FPS नहीं मापा जा सकता, और Linux बिल्ड में D3D12 नहीं है।

संबंधित तंत्र

ये पेज क्या हैं

पाठ PS5PCEM रिपॉज़िटरी के आर्किटेक्चर नोट्स और अक्टूबर 2026 की रिपोर्टों पर आधारित है। किसी केंद्रित टेस्ट का पास होना नई फ़्रेम दर या गेम का नया समापन नहीं है।

सभी तकनीकें