S3 Texture Compression
এস3 টেক্সচার কম্প্রেশন (এস3টিসি) (কখনও কখনও ডিএক্সটিএন, ডিএক্সটিসি, বা বিসিএন নামেও পরিচিত) হল সম্পর্কিত লসি টেক্সচার কম্প্রেশন অ্যালগরিদমগুলির একটি গ্রুপ যা মূলত আইওরচা এট আল দ্বারা তৈরি করা হয়েছিল। তাদের স্যাভেজ 3ডি কম্পিউটার গ্রাফিক্স অ্যাক্সিলারেটর ব্যবহারের জন্য এস3 গ্রাফিক্স লিমিটেড। সংকোচনের পদ্ধতিটি পূর্বে প্রকাশিত কালার সেল সংকোচনের অনুরূপ, যা 1970-এর দশকের শেষের দিকে প্রকাশিত ব্লক ট্রাঙ্কেশন কোডিংয়ের একটি অভিযোজন। কিছু চিত্র সংকোচন অ্যালগরিদমের বিপরীতে (যেমন। জে. পি. ই. জি), এস3টিসি-র স্থির-হারের তথ্য সংকোচন এবং একক মেমরি অ্যাক্সেস (সি. এফ। কালার সেল কম্প্রেশন এবং কিছু ভিকিউ-ভিত্তিক স্কিম) এটিকে হার্ডওয়্যার-অ্যাক্সিলারেটেড থ্রিডি কম্পিউটার গ্রাফিক্সে টেক্সচার সংকুচিত করার জন্য ব্যবহারের জন্য উপযুক্ত করে তুলেছে। মাইক্রোসফটের ডাইরেক্টএক্স 6 এবং ওপেনজিএল 1.3 (জিএল _ ইএক্সটি _ টেক্সচার _ কম্প্রেশন _ এস3টিসি এক্সটেনশনের মাধ্যমে)-এ এর পরবর্তী অন্তর্ভুক্তির ফলে হার্ডওয়্যার এবং সফ্টওয়্যার নির্মাতাদের মধ্যে প্রযুক্তিটি ব্যাপকভাবে গ্রহণ করা হয়। যদিও এস3 গ্রাফিক্স গ্রাফিক্স অ্যাক্সিলারেটর বাজারে আর প্রতিযোগী নয়, 2017 সালের অক্টোবর পর্যন্ত এস3টিসি প্রযুক্তি ব্যবহারের জন্য লাইসেন্স ফি ধার্য ও সংগ্রহ করা হয়েছে, উদাহরণস্বরূপ গেম কনসোল এবং গ্রাফিক্স কার্ডে। এস3টিসির ব্যাপক ব্যবহার ওপেনজিএল চালকদের এটিকে সমর্থন করার জন্য একটি কার্যত প্রয়োজনীয়তার দিকে পরিচালিত করেছে, তবে এস3টিসির পেটেন্ট-আবদ্ধ অবস্থা ওপেন সোর্স বাস্তবায়নের ক্ষেত্রে একটি বড় বাধা উপস্থাপন করেছে, যখন বাস্তবায়নের পন্থা যা পেটেন্টযুক্ত অংশগুলি এড়ানোর চেষ্টা করেছিল। কিছু পেটেন্ট (যেমন। এস3 টেক্সচার কম্প্রেশনের একাধিক ইউএসপিটিও পেটেন্টের ইউএস 5956431 এ)-এর মেয়াদ 2 অক্টোবর, 2017-এ শেষ হয়েছে। অন্তত একটি ধারাবাহিক পেটেন্ট, ইউএস 6,775,417-এর মেয়াদ অবশ্য 165 দিন বাড়ানো হয়েছিল। এই ধারাবাহিক পেটেন্টের মেয়াদ 2018 সালের 16ই মার্চ শেষ হয়। কোডেক এস3টিসি অ্যালগরিদমের পাঁচটি বৈচিত্র রয়েছে (ডিএক্সটি1 থেকে ডিএক্সটি5 নামে, প্রতিটি বিন্যাসে মাইক্রোসফ্ট দ্বারা নির্ধারিত ফোরসিসি কোড উল্লেখ করে), প্রতিটি নির্দিষ্ট ধরনের চিত্র ডেটার জন্য ডিজাইন করা হয়েছে। সবগুলিই পিক্সেলের একটি 4×4 ব্লককে 64-বিট বা 128-বিট পরিমাণে রূপান্তরিত করে, যার ফলে 24-বিট আরজিবি ইনপুট ডেটা সহ 6:1 বা 32-বিট আরজিবিএ ইনপুট ডেটা সহ 4:1 এর সংকোচন অনুপাত হয়। এস3টিসি একটি লসি কম্প্রেশন অ্যালগরিদম, যার ফলে চিত্রের গুণমান হ্রাস পায়, এমন একটি প্রভাব যা একই মেমরির প্রয়োজনীয়তা বজায় রেখে টেক্সচার রেজোলিউশন বাড়ানোর ক্ষমতা দ্বারা হ্রাস করা হয়। হাতে আঁকা কার্টুনের মতো চিত্রগুলি ভালভাবে সংকুচিত হয় না, বা সাধারণ মানচিত্রের তথ্যও থাকে না, যা উভয়ই সাধারণত শিল্পকর্ম তৈরি করে। এটিআই-এর থ্রিডিসি কম্প্রেশন অ্যালগরিদম হল সাধারণ মানচিত্রের ক্ষেত্রে এস3টিসির ত্রুটিগুলি কাটিয়ে ওঠার জন্য ডিজাইন করা ডিএক্সটি5-এর একটি পরিবর্তন। আইডি সফ্টওয়্যার কম্প্রেশনের আগে আলফা চ্যানেলে লাল উপাদানটি সরিয়ে এবং পিক্সেল শেডারে রেন্ডার করার সময় এটিকে পিছনে সরিয়ে ডুম 3-এ স্বাভাবিক মানচিত্রের সংকোচনের সমস্যাগুলির চারপাশে কাজ করেছিল। অনেক আধুনিক ইমেজ কম্প্রেশন অ্যালগরিদমের মতো, এস3টিসি শুধুমাত্র চিত্রগুলিকে ডিকম্প্রেস করার জন্য ব্যবহৃত পদ্ধতিটি নির্দিষ্ট করে, যা প্রয়োগকারীদের তাদের নির্দিষ্ট প্রয়োজন অনুসারে কম্প্রেশন অ্যালগরিদম ডিজাইন করার অনুমতি দেয়, যদিও পেটেন্ট এখনও কম্প্রেশন অ্যালগরিদমকে অন্তর্ভুক্ত করে। এনভিডিয়া জিফোর্স 256 থেকে জিফোর্স 4 কার্ডগুলিও ডিএক্সটি1 টেক্সচার রেন্ডার করার জন্য 16-বিট ইন্টারপোলেশন ব্যবহার করেছিল, যার ফলে রঙের গ্রেডিয়েন্ট সহ টেক্সচারগুলি আনপ্যাক করার সময় ব্যান্ডিং হয়। আবার, এটি টেক্সচার সংকোচনের একটি প্রতিকূল ছাপ তৈরি করেছে, যা কোডেকের মৌলিক বিষয়গুলির সাথে সম্পর্কিত নয়। DXT1 DXT1 (ব্লক কম্প্রেশন 1 বা BC1 নামেও পরিচিত) হল S3TC-র ক্ষুদ্রতম বৈচিত্র, যা 64 বিট আউটপুটে 16টি ইনপুট পিক্সেল সংরক্ষণ করে, যার মধ্যে দুটি 16-বিট RGB 5:6:5 রঙের মান এবং একটি 4×4 দ্বি-বিট লুকআপ টেবিল রয়েছে। যদি (এই রঙগুলিকে দুটি 16-বিট স্বাক্ষরহীন সংখ্যা হিসাবে ব্যাখ্যা করে তুলনা করা হয়), তবে আরও দুটি রঙ গণনা করা হয়, যেমন প্রতিটি উপাদানের জন্য, এবং। এই মোডটি আসল অ্যাপল ভিডিও কোডেকের 0xC0 মোডের মতোই কাজ করে। অন্যথায়, যদি, তারপর এবং একটি প্রাক-গুণিত আলফা বিন্যাসের সাথে সামঞ্জস্যপূর্ণ স্বচ্ছ কালো হয়। এই রঙ কখনও কখনও স্বচ্ছ এলাকার চারপাশে একটি কালো সীমানা সৃষ্টি করে যখন রৈখিক টেক্সচার ফিল্টারিং এবং আলফা টেস্ট ব্যবহার করা হয়, কারণ অস্বচ্ছ টেক্সেলের রঙ এবং পার্শ্ববর্তী কালো স্বচ্ছ টেক্সেলের মধ্যে রঙগুলি ইন্টারপোলেট করা হয়। তারপরে প্রতিটি পিক্সেলের জন্য রঙের মান নির্ধারণের জন্য সন্ধান টেবিলের পরামর্শ নেওয়া হয়, যার মান 0 এবং 3 এর মান অনুরূপ। DXT2 এবং DXT3 DXT2 এবং DXT3 (সমষ্টিগতভাবে ব্লক কম্প্রেশন 2 বা BC2 নামেও পরিচিত) 16টি ইনপুট পিক্সেলকে (4x4 পিক্সেল ব্লকের সাথে সামঞ্জস্যপূর্ণ) 128 বিট আউটপুটে রূপান্তরিত করে, যার মধ্যে 64 বিট আলফা চ্যানেল ডেটা (প্রতিটি পিক্সেলের জন্য 4 বিট) এবং 64 বিট রঙিন ডেটা রয়েছে, যা DXT1-এর মতো একইভাবে এনকোড করা হয়েছে (ব্যতিক্রমটি হল যে DXT1 অ্যালগরিদমের 4-রঙের সংস্করণটি সর্বদা ব্যবহার করা হয় এবং এর আপেক্ষিক মানের উপর ভিত্তি করে কোন সংস্করণটি ব্যবহার করা হবে তা নির্ধারণ করার পরিবর্তে)। DXT2-এ, রঙের তথ্যকে আলফা দ্বারা পূর্বগুণিত হিসাবে ব্যাখ্যা করা হয়, DXT3-এ এটি আলফা দ্বারা পূর্বগুণিত না হিসাবে ব্যাখ্যা করা হয়। সাধারণত ডিএক্সটি2/3 স্বচ্ছ এবং অস্বচ্ছ অঞ্চলের মধ্যে তীক্ষ্ণ আলফা ট্রানজিশন সহ চিত্রগুলির জন্য উপযুক্ত। DXT4 এবং DXT5 DXT4 এবং DXT5 (সমষ্টিগতভাবে ব্লক কম্প্রেশন 3 বা BC3 নামেও পরিচিত) 16টি ইনপুট পিক্সেলকে 128 বিট আউটপুটে রূপান্তরিত করে, যার মধ্যে 64 বিট আলফা চ্যানেল ডেটা (দুটি 8-বিট আলফা মান এবং একটি 4×4 3-বিট লুকআপ টেবিল) এবং 64 বিট রঙিন ডেটা (DXT1-এর মতো এনকোড করা) থাকে। যদি, তাহলে অন্য ছয়টি আলফা মান গণনা করা হয়, যেমন,,,, এবং। অন্যথায়, যদি, অন্য চারটি আলফা মান এমনভাবে গণনা করা হয় যে,,, এবং এবং সহ। তারপরে প্রতিটি পিক্সেলের জন্য আলফা মান নির্ধারণের জন্য সন্ধান টেবিলের পরামর্শ নেওয়া হয়, যার মান 0 এবং 7 এর সাথে সম্পর্কিত। ডি. এক্স. টি. 4-এর রঙের তথ্য আলফা দ্বারা পূর্বগুণিত হয়, যেখানে ডি. এক্স. টি. 5-এর নয়। যেহেতু ডিএক্সটি4/5 একটি ইন্টারপোলেটেড আলফা স্কিম ব্যবহার করে, তারা সাধারণত ডিএক্সটি2/3 এর তুলনায় আলফা (স্বচ্ছতা) গ্রেডিয়েন্টের জন্য উচ্চতর ফলাফল তৈরি করে। আরও রূপ বিসি4 এবং বিসি5 বিসি4 এবং বিসি5 (ব্লক কম্প্রেশন 4 এবং 5) ডাইরেক্ট3ডি 10-এ যোগ করা হয়েছে। তারা ডিএক্সটি4/5 (বিসি3)-এ পাওয়া আলফা চ্যানেল এনকোডিং পুনরায় ব্যবহার করে। বিসি4 16টি ইনপুট একক-চ্যানেল সঞ্চয় করে (যেমন। গ্রেস্কেল) পিক্সেলগুলি আউটপুটের 64 বিটের মধ্যে, বিসি3 অ্যালফাসের মতো প্রায় একইভাবে এনকোড করা। প্রসারিত প্যালেট উচ্চ মানের প্রদান করে। বিসি5 16টি ইনপুট ডাবল-চ্যানেল সঞ্চয় করে (যেমন। স্পর্শক স্থান সাধারণ মানচিত্র) পিক্সেলগুলি 128 বিট আউটপুটের মধ্যে, প্রতিটি বিসি 4 এর মতো এনকোড করা দুটি অর্ধেক নিয়ে গঠিত। BC6H এবং BC7 BC6H (কখনও কখনও BC6) এবং BC7 (ব্লক কম্প্রেশন 6H এবং 7) ডাইরেক্ট 3D 11-এ যোগ করা হয়েছে। বিসি6এইচ 16টি ইনপুট আরজিবি এইচডিআর (ফ্লোট 16) পিক্সেলকে 128 বিট আউটপুটে এনকোড করে। এটি মূলত ফ্লোট 16 কে 16 চিহ্ন-মাত্রার পূর্ণসংখ্যা মান হিসাবে বিবেচনা করে এবং এই ধরনের পূর্ণসংখ্যাগুলিকে রৈখিকভাবে ইন্টারপোলেট করে। এটি সাইন পরিবর্তন ছাড়াই ব্লকের জন্য ভাল কাজ করে। মোট 14টি মোড সংজ্ঞায়িত করা হয়েছে, যদিও বেশিরভাগই ন্যূনতমভাবে ভিন্নঃ শুধুমাত্র দুটি ভবিষ্যদ্বাণী মোড সত্যিই ব্যবহার করা হয়। বিসি7 16টি ইনপুট আরজিবি8/আরজিবিএ8 পিক্সেলকে 128 বিট আউটপুটে এনকোড করে। এটি একটি বহু-বর্ধিত বিসি 3 হিসাবে বোঝা যেতে পারে। বিসি6এইচ এবং বিসি7-এর এনকোডিং মোডের একটি নির্বাচন সহ অনেক বেশি জটিল অ্যালগরিদম রয়েছে। এর ফলে গুণগত মান অনেক ভালো। এই দুটি পদ্ধতি গ্রহণযোগ্য বিচ্যুতির পরিসর সহ আরও সঠিকভাবে নির্দিষ্ট করা হয়েছে। আগের বিসিএন মোডগুলি জিপিইউ বিক্রেতাদের মধ্যে কিছুটা ভিন্নভাবে ডিকোড করে। এস3টিসি বিন্যাসের তুলনা বিসিএন টেক্সচারের পূর্বশর্ত ডেটা অন-ডিস্ক স্টোরেজ এবং ডিস্ট্রিবিউশনের (টেক্সচার সুপার কম্প্রেশন) জন্য আরও সংকুচিত করা যেতে পারে। একটি অ্যাপ্লিকেশন এই অতিরিক্ত স্তরটিকে ডিকম্প্রেস করবে এবং যথারীতি জিপিইউতে বিসিএন ডেটা পাঠাবে। বিসিএন-কে ওডল টেক্সচারের সঙ্গে যুক্ত করা যেতে পারে, একটি লসি প্রিপ্রসেসর যা ইনপুট টেক্সচারকে পরিবর্তন করে যাতে বিসিএন আউটপুট আরও সহজেই একটি এলজেড77 সংকোচকারী (হার-বিকৃতি অপ্টিমাইজেশন) দ্বারা সংকুচিত হয়। বিসি7 বিশেষভাবে "বিসি7প্রেপ" ব্যবহার করতে পারে, একটি ক্ষতিহীন পাস যা টেক্সচারটিকে আরও সংকুচিত আকারে পুনরায় এনকোড করতে পারে (ডিকম্প্রেশনে এর বিপরীত প্রয়োজন হয়)। ক্রাঞ্চ আরেকটি সরঞ্জাম যা আরডিও সম্পাদন করে এবং বিকল্পভাবে আরও পুনরায় এনকোডিং করে। 2021 সালে, মাইক্রোসফ্ট বিশেষত বিসিএন-কম্প্রেসড টেক্সচারের জন্য একটি "বিসিপ্যাক" কম্প্রেশন অ্যালগরিদম তৈরি করেছে। এক্সবক্স সিরিজ এক্স এবং এস-এ বিসিপ্যাক স্ট্রিমগুলি ডিকম্প্রেস করার জন্য হার্ডওয়্যার সমর্থন রয়েছে। আরও দেখুন এস2টিসি, পেটেন্টবিহীন ওয়ার্ক-এরাউন্ড এফএক্সটি1 ডাইরেক্টড্র সারফেস পিভিআরটিসি অ্যাডাপটিভ স্কেলেবল টেক্সচার কম্প্রেশন (এএসটিসি) এরিকসন টেক্সচার কম্প্রেশন (ইটিসি1 এবং ইটিসি2) কালার সেল কম্প্রেশন রেফারেন্স এক্সটার্নাল লিঙ্ক ইউএস পেটেন্ট এবং ট্রেডমার্ক অফিস, পেটেন্ট ফুল টেক্সট এবং ইমেজ ডেটাবেস, ইউএস 5956431-এর জন্য ফলাফল ইউএসপিটিও পেটেন্ট অ্যাসাইনমেন্ট সার্চ ইউএস 5956431 এ 3ডি কম্পিউটার গ্রাফিক্স লসি কম্প্রেশন অ্যালগরিদম টেক্সচার কম্প্রেশন