প্রকাশিত: ৩০ জুলাই, ২০২৫
BC এবং ASTC কম্প্রেসড ফরম্যাটের জন্য 3D টেক্সচার সাপোর্ট
"texture-compression-bc-sliced-3d" এবং "texture-compression-astc-sliced-3d" WebGPU ফিচারগুলো ব্লক কম্প্রেশন (BC) এবং অ্যাডাপটিভ স্কেলেবল টেক্সচার কম্প্রেশন (ASTC) ফরম্যাট ব্যবহার করে 3D টেক্সচারের জন্য সাপোর্ট যোগ করে। এটি আপনাকে ভলিউমেট্রিক টেক্সচার ডেটার জন্য BC এবং ASTC ফরম্যাটের কার্যকর কম্প্রেশন ক্ষমতার সুবিধা নিতে দেয়, যা ভিজ্যুয়াল কোয়ালিটিতে উল্লেখযোগ্য ক্ষতি ছাড়াই মেমরি ফুটপ্রিন্ট এবং ব্যান্ডউইথের প্রয়োজনীয়তা ব্যাপকভাবে হ্রাস করে। এটি বিশেষত বৈজ্ঞানিক ভিজ্যুয়ালাইজেশন, মেডিকেল ইমেজিং এবং উন্নত রেন্ডারিং কৌশলের মতো ক্ষেত্রগুলিতে অত্যন্ত মূল্যবান।
নিম্নলিখিত কোড স্নিপেটটি পরীক্ষা করে দেখে যে অ্যাডাপ্টারটি BC এবং ASTC কম্প্রেসড ফরম্যাটের 3D টেক্সচার সমর্থন করে কিনা এবং যদি এই বৈশিষ্ট্যগুলি উপলব্ধ থাকে তবে সেগুলির জন্য একটি ডিভাইসের অনুরোধ করে।
const adapter = await navigator.gpu.requestAdapter();
const requiredFeatures = [];
if (adapter?.features.has("texture-compression-bc-sliced-3d")) {
requiredFeatures.push(
"texture-compression-bc",
"texture-compression-bc-sliced-3d",
);
}
if (adapter?.features.has("texture-compression-astc-sliced-3d")) {
requiredFeatures.push(
"texture-compression-astc",
"texture-compression-astc-sliced-3d",
);
}
const device = await adapter?.requestDevice({ requiredFeatures });
// Later on...
if (device.features.has("texture-compression-astc-sliced-3d")) {
// Create a 3D texture using ASTC compression
} else if (device.features.has("texture-compression-bc-sliced-3d")) {
// Create a 3D texture using BC compression
} else {
// Fallback: Create an uncompressed 3D texture
}
Volume Rendering - Texture 3D WebGPU স্যাম্পলটি দেখে এবং chromestatus এন্ট্রিটি পর্যবেক্ষণ করে 3D ব্রেন স্ক্যান সম্পর্কে জানুন।

নতুন 'কোর-ফিচার-অ্যান্ড-লিমিটস' ফিচার
আসন্ন WebGPU কম্প্যাটিবিলিটি মোডের জন্য একটি নতুন "core-features-and-limits" ফিচার চালু করা হচ্ছে। এই ফিচারটি নির্দেশ করে যে অ্যাডাপ্টার বা ডিভাইসটি WebGPU স্পেসিফিকেশনের মূল বৈশিষ্ট্য এবং সীমাবদ্ধতাগুলো সমর্থন করে। এই মুহূর্তে শুধুমাত্র "কোর" WebGPU সংস্করণটিই উপলব্ধ, তাই সমস্ত WebGPU ইমপ্লিমেন্টেশনকে তাদের সমর্থিত ফিচারগুলোর মধ্যে "core-features-and-limits" অন্তর্ভুক্ত করতে হবে।
ভবিষ্যতে, যখন WebGPU কম্প্যাটিবিলিটি মোড চালু হবে, তখন কোনো অ্যাডাপ্টার বা ডিভাইসে এই ফিচারটি নাও থাকতে পারে, যা বোঝাবে যে এটি একটি কম্প্যাটিবিলিটি মোড অ্যাডাপ্টার বা ডিভাইস, কোনো কোর অ্যাডাপ্টার বা ডিভাইস নয়। কোনো ডিভাইসে এটি সক্রিয় করা হলে, কম্প্যাটিবিলিটি মোডের সমস্ত সীমাবদ্ধতা (ফিচার এবং সীমা) উঠে যায়।
WebGPU কম্প্যাটিবিলিটি মোডে বিস্তারিত ব্যাখ্যা ও ব্যবহারের জন্য, ব্যাখ্যামূলক অংশ এবং পরবর্তী অনুচ্ছেদটি দেখুন। ইস্যু 418025721 দেখুন।
WebGPU সামঞ্জস্য মোডের জন্য Origin ট্রায়াল
WebGPU হলো আধুনিক গ্রাফিক্সের জন্য ডিজাইন করা একটি শক্তিশালী এপিআই, যা Vulkan, Metal, এবং Direct3D 12-এর মতো প্রযুক্তির সাথে সামঞ্জস্যপূর্ণ। তবে, উল্লেখযোগ্য সংখ্যক ডিভাইসে এখনও এই নতুন এপিআইগুলোর সাপোর্ট নেই। উদাহরণস্বরূপ, উইন্ডোজে ৩১% ক্রোম ব্যবহারকারীর কাছে Direct3D 11.1 বা তার উচ্চতর সংস্করণ নেই। অ্যান্ড্রয়েডে, ১৫% ব্যবহারকারীর কাছে Vulkan 1.1 নেই, যার মধ্যে ১০% ব্যবহারকারীর কাছে Vulkan একেবারেই নেই।
এটি সেইসব ডেভেলপারদের জন্য একটি চ্যালেঞ্জ তৈরি করে, যারা তাদের অ্যাপ্লিকেশনের প্রসার সর্বাধিক করতে চান। তারা প্রায়শই একাধিক ইমপ্লিমেন্টেশন (যেমন, WebGPU এবং WebGL) তৈরি করতে, কোর WebGPU-এর মাধ্যমে সীমিত সংখ্যক ব্যবহারকারীর কাছে সন্তুষ্ট থাকতে, অথবা শুধু WebGL ব্যবহার করতে বাধ্য হন এবং এর ফলে GPU কম্পিউটের মতো WebGPU-এর উন্নত ফিচারগুলো থেকে বঞ্চিত হন।

WebGPU কম্প্যাটিবিলিটি মোড, WebGPU API-এর একটি ঐচ্ছিক ও কিছুটা সীমাবদ্ধ সংস্করণ প্রদানের মাধ্যমে একটি সমাধান দেয়। এই মোডটি OpenGL ES 3.1 এবং Direct3D11-এর মতো পুরোনো গ্রাফিক্স API চালানোর জন্য ডিজাইন করা হয়েছে, যা আপনার অ্যাপ্লিকেশনের পরিধিকে এমন সব ডিভাইসে উল্লেখযোগ্যভাবে প্রসারিত করে, যেগুলো কোর WebGPU-এর জন্য প্রয়োজনীয় আধুনিক ও সুস্পষ্ট গ্রাফিক্স API সমর্থন করে না।
যেহেতু কম্প্যাটিবিলিটি মোড হলো WebGPU-এর একটি উপসেট, তাই এটি দিয়ে তৈরি অ্যাপ্লিকেশনগুলোও বৈধ WebGPU "কোর" অ্যাপ্লিকেশন হিসেবে গণ্য হয়। এর মানে হলো, যে ব্রাউজারগুলো বিশেষভাবে কম্প্যাটিবিলিটি মোড সমর্থন করে না, সেগুলোতেও এগুলো নির্বিঘ্নে চলবে।
অনেক সাধারণ অ্যাপ্লিকেশনের জন্য, requestAdapter() কল করার সময় featureLevel: "compatibility" পাস করলেই কম্প্যাটিবিলিটি মোড চালু করা যায়। আরও জটিল অ্যাপ্লিকেশনগুলির ক্ষেত্রে মোডের সীমাবদ্ধতার মধ্যে থাকার জন্য সামান্য পরিবর্তনের প্রয়োজন হতে পারে। Generate Mipmap WebGPU স্যাম্পলটি এর একটি ভালো উদাহরণ।
// Request a GPUAdapter in compatibility mode
const adapter = await navigator.gpu.requestAdapter({
featureLevel: "compatibility",
});
const hasCore = adapter?.features.has("core-features-and-limits");
const device = await adapter?.requestDevice({
requiredFeatures: (hasCore ? ["core-features-and-limits"] : []),
});
if (device?.features.has("core-features-and-limits")) {
// Compatibility mode restrictions will apply
}
বৈশিষ্ট্যটি সক্রিয় করুন
ডিফল্টরূপে, ক্রোমে ওয়েবজিপিইউ কম্প্যাটিবিলিটি মোড সক্রিয় থাকে না, কিন্তু ক্রোম ১৩৯-এ এই কার্যকারিতাটি স্পষ্টভাবে সক্রিয় করার মাধ্যমে এটি নিয়ে পরীক্ষা করা যেতে পারে। আপনি chrome://flags/#enable-experimental-web-platform-features "Experimental Web Platform Features" ফ্ল্যাগটি সক্রিয় করে এটিকে স্থানীয়ভাবে চালু করতে পারেন।
আপনার অ্যাপের সকল ভিজিটরের জন্য এটি চালু করতে, একটি অরিজিন ট্রায়াল চলছে যা ক্রোম ১৪৫ (২১শে এপ্রিল, ২০২৬)-এ শেষ হবে। ট্রায়ালে অংশগ্রহণ করতে, ‘ Get started with origin trials’ পোস্টটি দেখুন।
ভোরের আপডেট
অন্যান্য কলব্যাক ফাংশনগুলোর সাথে সামঞ্জস্য রাখার জন্য WGPUQueueWorkDoneCallback ফাংশনে একটি message আর্গুমেন্ট যোগ করা হয়েছে, যেগুলো স্ট্যাটাসও গ্রহণ করে। webgpu-headers PR দেখুন।
যখন emdawnwebgpu-কে -sSHARED_MEMORY দিয়ে লিঙ্ক করা হয়, তখন এর webgpu.cpp ফাইলটিও এই ফ্ল্যাগ দিয়ে কম্পাইল করা হয়। দেখুন Dawn CL 244075 ।
এখানে কেবল কয়েকটি মূল বিষয় তুলে ধরা হয়েছে। কমিটগুলোর বিস্তারিত তালিকাটি দেখুন।
WebGPU-তে নতুন কী আছে
'What's New in WebGPU' সিরিজে যা যা আলোচনা করা হয়েছে, তার একটি তালিকা।
ক্রোম ১৪৭-১৪৮
ক্রোম ১৪৬
- OpenGL ES 3.1-এ WebGPU সামঞ্জস্যপূর্ণ মোড সমর্থন করে
- ক্ষণস্থায়ী সংযুক্তি
- WGSL টেক্সচার_এবং_স্যাম্পলার_লেট এক্সটেনশন
- ভোরের আপডেট
ক্রোম ১৪৫
- WGSL উপগোষ্ঠী_একরূপতা সম্প্রসারণ
- ওয়ার্কারদের মধ্যে পরীক্ষামূলক সিঙ্ক্রোনাস বাফার ম্যাপিং
- ভোরের আপডেট
ক্রোম ১৪৪
- WGSL উপগোষ্ঠী_আইডি এক্সটেনশন
- WGSL uniform_buffer_standard_layout এক্সটেনশন
- লিনাক্সে ওয়েবজিপিইউ
- দ্রুততর writeBuffer এবং writeTexture
- ভোরের আপডেট
ক্রোম ১৪৩
ক্রোম ১৪২
ক্রোম ১৪১
- টিন্ট আইআর সম্পন্ন হয়েছে
- WGSL কম্পাইলারে পূর্ণসংখ্যার পরিসর বিশ্লেষণ
- ভুলকান ব্যাকএন্ডের জন্য SPIR-V 1.4 আপডেট
- ভোরের আপডেট
ক্রোম ১৪০
- ডিভাইস অ্যাডাপ্টার ব্যবহারের অনুরোধ করে।
- যেখানে টেক্সচার ভিউ ব্যবহৃত হয়, সেখানে টেক্সচার ব্যবহারের সংক্ষিপ্ত রূপ।
- WGSL textureSampleLevel 1D টেক্সচার সমর্থন করে
- bgra8unorm রিড-অনলি স্টোরেজ টেক্সচারের ব্যবহার অপ্রচলিত করুন
- GPUAdapter isFallbackAdapter অ্যাট্রিবিউটটি সরান
- ভোরের আপডেট
ক্রোম ১৩৯
- BC এবং ASTC কম্প্রেসড ফরম্যাটের জন্য 3D টেক্সচার সাপোর্ট
- নতুন 'কোর-ফিচার-অ্যান্ড-লিমিটস' ফিচার
- WebGPU সামঞ্জস্য মোডের জন্য Origin ট্রায়াল
- ভোরের আপডেট
ক্রোম ১৩৮
- বাইন্ডিং রিসোর্স হিসেবে বাফার ব্যবহারের সংক্ষিপ্ত রূপ
- তৈরির সময় ম্যাপ করা বাফারগুলির আকারের প্রয়োজনীয়তা পরিবর্তিত হয়।
- সাম্প্রতিক জিপিইউগুলির জন্য স্থাপত্য প্রতিবেদন
- GPUAdapter isFallbackAdapter অ্যাট্রিবিউটটি অপ্রচলিত করুন
- ভোরের আপডেট
ক্রোম ১৩৭
- এক্সটার্নাল টেক্সচার বাইন্ডিং এর জন্য টেক্সচার ভিউ ব্যবহার করুন
- অফসেট এবং আকার নির্দিষ্ট না করে বাফার কপি করা হয়
- WGSL workgroupUniformLoad অ্যাটমিকের পয়েন্টার ব্যবহার করে
- GPUAdapterInfo powerPreference অ্যাট্রিবিউট
- GPURequestAdapterOptions-এর compatibilityMode অ্যাট্রিবিউটটি মুছে ফেলুন
- ভোরের আপডেট
ক্রোম ১৩৬
- GPUAdapterInfo isFallbackAdapter অ্যাট্রিবিউট
- D3D12-এ শেডার কম্পাইলেশন সময়ের উন্নতি
- ক্যানভাসের ছবিগুলো সংরক্ষণ ও কপি করুন
- লিফট সামঞ্জস্য মোড সীমাবদ্ধতা
- ভোরের আপডেট
ক্রোম ১৩৫
- নাল বাইন্ড গ্রুপ লেআউট সহ পাইপলাইন লেআউট তৈরির অনুমতি দিন
- ভিউপোর্টগুলিকে রেন্ডার টার্গেটের সীমানা ছাড়িয়ে প্রসারিত করার অনুমতি দিন
- অ্যান্ড্রয়েডে পরীক্ষামূলক সামঞ্জস্য মোডে আরও সহজে প্রবেশ করা যায়
- maxInterStageShaderComponents সীমা অপসারণ করুন
- ভোরের আপডেট
ক্রোম ১৩৪
- সাবগ্রুপের মাধ্যমে মেশিন-লার্নিং ওয়ার্কলোড উন্নত করুন
- ফ্লোট ফিল্টারযোগ্য টেক্সচার প্রকারের সমর্থন ব্লেন্ডেবল হিসেবে অপসারণ করুন
- ভোরের আপডেট
ক্রোম ১৩৩
- অতিরিক্ত unorm8x4-bgra এবং 1-কম্পোনেন্ট ভার্টেক্স ফরম্যাট
- অনির্ধারিত মান দিয়ে অজানা সীমা অনুরোধ করার অনুমতি দিন।
- WGSL অ্যালাইনমেন্ট নিয়মের পরিবর্তন
- বর্জনের মাধ্যমে WGSL-এর কর্মক্ষমতা বৃদ্ধি
- বাহ্যিক টেক্সচারের জন্য VideoFrame displaySize ব্যবহার করুন
- `copyExternalImageToTexture` ব্যবহার করে ডিফল্ট ওরিয়েন্টেশন ছাড়া অন্য ওরিয়েন্টেশনের ছবি পরিচালনা করুন।
- ডেভেলপারদের অভিজ্ঞতা উন্নত করা
- featureLevel-এর সাথে সামঞ্জস্য মোড সক্রিয় করুন
- পরীক্ষামূলক উপগোষ্ঠীর বৈশিষ্ট্য পরিষ্করণ
- maxInterStageShaderComponents সীমা বাতিল করুন
- ভোরের আপডেট
ক্রোম ১৩২
- টেক্সচার ভিউ ব্যবহার
- ৩২-বিট ফ্লোট টেক্সচার ব্লেন্ডিং
- GPUDevice অ্যাডাপ্টারইনফো অ্যাট্রিবিউট
- ভুল ফরম্যাটে ক্যানভাস কনটেক্সট কনফিগার করলে জাভাস্ক্রিপ্ট ত্রুটি দেখা দেয়।
- টেক্সচারের উপর ফিল্টারিং স্যাম্পলারের সীমাবদ্ধতা
- বর্ধিত উপগোষ্ঠী পরীক্ষা
- ডেভেলপারদের অভিজ্ঞতা উন্নত করা
- ১৬-বিট নর্মালাইজড টেক্সচার ফরম্যাটের জন্য পরীক্ষামূলক সমর্থন
- ভোরের আপডেট
ক্রোম ১৩১
- WGSL-এ ক্লিপ দূরত্ব
- GPUCanvasContext getConfiguration()
- বিন্দু এবং রেখা প্রিমিটিভগুলিতে গভীরতার পক্ষপাত থাকা উচিত নয়।
- উপগোষ্ঠীগুলির জন্য অন্তর্ভুক্তিমূলক স্ক্যান অন্তর্নির্মিত ফাংশন
- মাল্টি-ড্র ইনডিরেক্টের জন্য পরীক্ষামূলক সমর্থন
- শেডার মডিউল সংকলন বিকল্প কঠোর গণিত
- GPUAdapter requestAdapterInfo() অপসারণ করুন
- ভোরের আপডেট
ক্রোম ১৩০
- দ্বৈত উৎস মিশ্রণ
- মেটালে শেডার কম্পাইলেশন সময়ের উন্নতি
- GPUAdapter requestAdapterInfo() এর অপ্রচলিতকরণ
- ভোরের আপডেট
ক্রোম ১২৯
ক্রোম ১২৮
- উপগোষ্ঠী নিয়ে পরীক্ষা-নিরীক্ষা
- লাইন এবং পয়েন্টের জন্য ডেপথ বায়াস সেট করা অপ্রচলিত।
- preventDefault ব্যবহার করলে ক্যাপচার না করা ত্রুটির DevTools সতর্কতা লুকান
- WGSL প্রথমে ইন্টারপোলেট স্যাম্পলিং করে এবং হয়
- ভোরের আপডেট
ক্রোম ১২৭
- অ্যান্ড্রয়েডে OpenGL ES-এর জন্য পরীক্ষামূলক সমর্থন
- GPUAdapter তথ্য অ্যাট্রিবিউট
- ওয়েবঅ্যাসেম্বলি ইন্টারঅপ উন্নতি
- উন্নত কমান্ড এনকোডার ত্রুটি
- ভোরের আপডেট
ক্রোম ১২৬
- maxTextureArrayLayers সীমা বৃদ্ধি করুন
- ভলকান ব্যাকএন্ডের জন্য বাফার আপলোড অপ্টিমাইজেশন
- শেডার কম্পাইলেশন সময়ের উন্নতি
- জমা দেওয়া কমান্ড বাফারগুলি অবশ্যই অনন্য হতে হবে।
- ভোরের আপডেট
ক্রোম ১২৫
ক্রোম ১২৪
- পঠন-যোগ্য এবং পঠন-লিখনযোগ্য স্টোরেজ টেক্সচার
- পরিষেবা কর্মী এবং ভাগাভাগি কর্মীদের সমর্থন
- নতুন অ্যাডাপ্টার তথ্যের বৈশিষ্ট্য
- বাগ সংশোধন
- ভোরের আপডেট
ক্রোম ১২৩
- WGSL-এ DP4a-এর অন্তর্নির্মিত ফাংশনগুলির সমর্থন
- WGSL-এ অবাধ পয়েন্টার প্যারামিটার
- WGSL-এ কম্পোজিট ডি-রেফারেন্সিং-এর জন্য সিনট্যাক্স সুগার
- স্টেনসিল এবং গভীরতার দিকগুলির জন্য পৃথক পঠনযোগ্য অবস্থা
- ভোরের আপডেট
ক্রোম ১২২
- কম্প্যাটিবিলিটি মোডের মাধ্যমে পরিধি প্রসারিত করুন (ফিচারটি নির্মাণাধীন)
- maxVertexAttributes সীমা বৃদ্ধি করুন
- ভোরের আপডেট
ক্রোম ১২১
- অ্যান্ড্রয়েডে ওয়েবজিপিইউ সমর্থন করুন
- উইন্ডোজে শেডার কম্পাইলেশনের জন্য FXC-এর পরিবর্তে DXC ব্যবহার করুন।
- কম্পিউট এবং রেন্ডার পাসে টাইমস্ট্যাম্প কোয়েরি
- শেডার মডিউলগুলির ডিফল্ট এন্ট্রি পয়েন্ট
- GPUExternalTexture কালার স্পেস হিসেবে display-p3 সমর্থন করে।
- মেমরি হিপস তথ্য
- ভোরের আপডেট
ক্রোম ১২০
- WGSL-এ ১৬-বিট ফ্লোটিং-পয়েন্ট মানের জন্য সমর্থন
- সীমা ছাড়িয়ে যান
- গভীরতা-স্টেনসিল অবস্থার পরিবর্তন
- অ্যাডাপ্টার তথ্যের আপডেট
- টাইমস্ট্যাম্প কোয়েরি কোয়ান্টাইজেশন
- বসন্তকালীন পরিষ্কার-পরিচ্ছন্নতার বৈশিষ্ট্য
ক্রোম ১১৯
- ফিল্টারযোগ্য ৩২-বিট ফ্লোট টেক্সচার
- অগঠিত১০-১০-১০-২ শীর্ষবিন্দু বিন্যাস
- rgb10a2uint টেক্সচার ফরম্যাট
- ভোরের আপডেট
ক্রোম ১১৮
-
copyExternalImageToTexture()ফাংশনে HTMLImageElement এবং ImageData-এর সাপোর্ট - রিড-রাইট এবং রিড-অনলি স্টোরেজ টেক্সচারের জন্য পরীক্ষামূলক সমর্থন
- ভোরের আপডেট
ক্রোম ১১৭
- আনসেট ভার্টেক্স বাফার
- আনসেট বাইন্ড গ্রুপ
- ডিভাইস হারিয়ে গেলে অ্যাসিঙ্ক পাইপলাইন তৈরির ত্রুটিগুলো নীরব করুন
- SPIR-V শেডার মডিউল তৈরির আপডেট
- ডেভেলপারদের অভিজ্ঞতা উন্নত করা
- স্বয়ংক্রিয়ভাবে তৈরি লেআউট সহ ক্যাশিং পাইপলাইন
- ভোরের আপডেট
ক্রোম ১১৬
- ওয়েবকোডেকস ইন্টিগ্রেশন
- GPUAdapter
requestDevice()দ্বারা ফেরত দেওয়া হারানো ডিভাইস -
importExternalTexture()কল করা হলে ভিডিও প্লেব্যাক মসৃণ রাখুন - স্পেক সঙ্গতি
- ডেভেলপারদের অভিজ্ঞতা উন্নত করা
- ভোরের আপডেট
ক্রোম ১১৫
- সমর্থিত WGSL ভাষা এক্সটেনশন
- Direct3D 11 এর জন্য পরীক্ষামূলক সমর্থন
- এসি পাওয়ারে ডিফল্টভাবে ডেডিকেটেড জিপিইউ পাওয়া যায়।
- ডেভেলপারদের অভিজ্ঞতা উন্নত করা
- ভোরের আপডেট
ক্রোম ১১৪
- জাভাস্ক্রিপ্ট অপ্টিমাইজ করুন
- অকনফিগার করা ক্যানভাসে getCurrentTexture() কল করলে InvalidStateError থ্রো করে।
- WGSL আপডেট
- ভোরের আপডেট