منصوبے کے بارے میں
DirectXTex مائیکروسافٹ کی مشترکہ سورس C++ لائبریری ہے جو .DDS فائلوں کو پڑھنے اور لکھنے اور ٹیکسچر مواد کی پروسیسنگ کے عمل کے لیے ہے۔ اس کی بیان کردہ صلاحیتوں میں ری سائزنگ، فارمیٹ کنورژن، مپ میپ جنریشن، Direct3D رن ٹائم ٹیکسچر وسائل کے لیے بلاک کمپریشن، اور ہائٹ میپ سے نارمل میپ کنورژن شامل ہیں۔ لائبریری Windows Image Component (WIC) APIs استعمال کرتی ہے اور اس میں .TGA اور .HDR ریڈرز اور رائٹرز بھی شامل ہیں، کیونکہ یہ فارمیٹس ٹیکسچر پائپ لائنز میں عام ہیں لیکن ان کے لیے بلٹ اِن WIC کوڈیکس موجود نہیں۔
ریپوزٹری بنیادی لائبریری کے علاوہ کئی سیمپل ٹولز اور رن ٹائم لوڈرز پر مشتمل ہے:
- DirectXTex: مرکزی لائبریری، جس میں مکمل خصوصیات والا DDS ریڈر/رائٹر شامل ہے جس میں لیگیسی فارمیٹ کنورژنز، TGA اور HDR ریڈرز/رائٹرز، WIC پر مبنی بٹ میپ ریڈر/رائٹر (BMP، JPEG، PNG، TIFF، HD Photo)، اور ٹیکسچر پروسیسنگ فنکشنز شامل ہیں۔ صرف DirectXTex.h اور DirectXTex.inl کو عوامی ہیڈرز بتایا گیا ہے؛ باقی زیادہ تر اندرونی ہیں۔
- Auxiliary: اختیاری سورس فائلیں جیسے OpenEXR اور Xbox ٹیکسچر ٹائلنگ ایکسٹینشنز استعمال کرنے والے اڈاپٹر لوڈنگ فنکشنز۔
- Common: مشترکہ سورس ہیڈرز جو لائبریری اور ٹولز استعمال کرتے ہیں۔
- Texconv: DirectXTex پر مبنی کمانڈ لائن ٹیکسچر یوٹیلیٹی، جو لیگیسی texcontex.exe ٹول کے مشابہ آرگیومنٹس کی حمایت کرتی ہے، جس میں -10/-11 آرگیومنٹس اور فلٹر ناموں میں فرق ہے، نیز JPEG XR (HD Photo) کی حمایت بھی شامل ہے۔
- Texassemble: کمانڈ لائن یوٹیلیٹی جو انفرادی اِن پُٹ تصاویر سے کیوب میپس، والیوم میپس، یا ٹیکسچر اریز بنانے کے لیے ہے۔
- Texdiag: کمانڈ لائن یوٹیلیٹی جو تصویری مواد کے تجزیے کے لیے ہے، بنیادی طور پر ڈی بگنگ کے لیے۔
- DDSView: DDS فائلوں کے لیے ایک سادہ Direct3D 11 پر مبنی ویوئر، جس میں اری ٹیکسچرز اور والیوم میپس کے لیے کی بورڈ نیویگیشن موجود ہے۔
- DDSTextureLoader: Direct3D 9، 11، اور 12 کے لیے ایک ہلکا رن ٹائم DDS لوڈر جو رن ٹائم پر پکسل ڈیٹا کنورژنز نہیں کرتا اور 1D، 2D، والیوم میپس، کیوب میپس، مپ میپ لیولز، ٹیکسچر اریز، اور BC فارمیٹس کی حمایت کرتا ہے۔
- ScreenGrab: Direct3D 9، 11، اور 12 کے لیے ٹیکسچر رائٹنگ ماڈیولز، بنیادی طور پر اسکرین شاٹس کے لیے، جو DDS یا WIC کی حمایت یافتہ تصویری فارمیٹس لکھتے ہیں۔
- WICTextureLoader: Direct3D 9، 11، اور 12 کے لیے 2D ٹیکسچر لوڈر جو WIC استعمال کر کے بٹ میپس لوڈ کرتا ہے، فیچر لیول یا واضح پیرامیٹر کی بنیاد پر ری سائز کرتا ہے، ضرورت پڑنے پر DXGI_FORMAT میں فارمیٹ کنورٹ کرتا ہے، اور 2D ٹیکسچر بناتا ہے۔ یہ 1D ٹیکسچرز، والیوم ٹیکسچرز، کیوب میپس، یا ٹیکسچر اریز کی حمایت نہیں کرتا۔
README میں درج بلڈ تقاضوں میں Visual Studio 2022 یا 2026، Windows کے لیے clang v12 یا بعد کا ورژن، یا MinGW شامل ہیں، اور Visual Studio کے لیے Windows 11 SDK (22000) یا بعد کا ورژن درکار ہے۔ اسے Windows Subsystem for Linux کے لیے GCC 11 یا بعد کے ورژن کے ساتھ بھی بلڈ کیا جا سکتا ہے۔ CMake پروجیکٹس کے لیے ورژن 3.21 یا بعد کا درکار ہے۔ اجزاء اس طرح ڈیزائن کیے گئے ہیں کہ وہ لیگیسی DirectX SDK کے مواد کے بغیر کام کریں۔
دستاویزات GitHub wiki پر میزبانی کی جاتی ہیں۔ README میں CoPilot CLI اسکل انسٹالیشن، API تبدیلیوں پر مشتمل ریلیز نوٹس (جیسے ٹائپڈ اِنَم بِٹ ماسک فلیگز اور CREATETEX_FLAGS کی تبدیلی)، مخصوص NuGet پیکجز کی vcpkg کے حق میں ڈیپریکیشن، Windows 7 اور Windows 8.0 کی حمایت کے خاتمے، اور کمانڈ لائن ٹولز کے لیے GNU طرز کے لانگ آپشنز بھی درج ہیں۔ پروجیکٹ MIT لائسنس یافتہ ہے اور CLA کے تحت تعاون کا خیرمقدم کرتا ہے، جبکہ ٹیسٹس ایک الگ ٹیسٹ سوٹ ریپوزٹری میں جمع کرائے جاتے ہیں۔
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.