ক্যানভাস টোন ম্যাপিং মোড সহ HDR সাপোর্ট
ওয়েব ডেভেলপারদের HDR কন্টেন্ট সরবরাহের জন্য সীমিত বিকল্প রয়েছে, তারা মূলত <img>
এবং <video>
এলিমেন্টের উপর নির্ভর করে। তবে, <canvas>
এলিমেন্টটি SDR-এর মধ্যেই সীমাবদ্ধ। ক্যানভাসের মধ্যে ডায়নামিক HDR কন্টেন্ট তৈরি করার জন্য এটি প্রদর্শনের আগে এর কন্টেন্টগুলিকে HDR ইমেজ হিসেবে এনকোড করতে হবে (উদাহরণস্বরূপ, এই ডেমোটি দেখুন)।
WebGPU ক্যানভাস কনফিগারেশনের নতুন GPUCanvasToneMappingMode
প্যারামিটার এখন WebGPU-কে সাদার চেয়ে উজ্জ্বল রঙ ( #FFFFFF
) আঁকতে দেয়। এটি নিম্নলিখিত মোডগুলির মাধ্যমে তা করে:
"standard"
: ডিফল্ট আচরণটি স্ক্রিনের SDR পরিসরে কন্টেন্ট সীমাবদ্ধ করে। এই মোডটি স্ক্রিনের রঙের স্থানের সমস্ত রঙের মান[0, 1]
ব্যবধানে ক্ল্যাম্প করে সম্পন্ন করা হয়।"extended"
: স্ক্রিনের সম্পূর্ণ HDR রেঞ্জ আনলক করে। এই মোডটি স্ক্রিনের[0, 1]
রেঞ্জের"standard"
সাথে মেলে। ক্ল্যাম্পিং বা প্রক্ষেপণ স্ক্রিনের বর্ধিত গতিশীল পরিসরে করা হয় কিন্তু[0, 1]
নয়।
নিম্নলিখিত কোড স্নিপেটটি আপনাকে উচ্চ গতিশীল পরিসরের জন্য একটি ক্যানভাস কনফিগার করতে দেখায়।
const adapter = await navigator.gpu.requestAdapter();
const device = await adapter.requestDevice();
const canvas = document.querySelector("canvas");
const context = canvas.getContext("webgpu");
context.configure({
device,
format: "rgba16float",
toneMapping: { mode: "extended" },
});
Particles (HDR) নমুনা এবং WebGPU HDR উদাহরণ পরীক্ষা করে WebGPU দিয়ে HDR অন্বেষণ করুন, এবং chromestatus এন্ট্রিটি দেখুন।

বর্ধিত উপগোষ্ঠী সমর্থন
সাবগ্রুপ পরীক্ষার ঘোষণার পর, সাবগ্রুপ বিল্ট-ইন ফাংশনগুলি এখন কম্পিউট শেডার এবং ফ্র্যাগমেন্ট শেডার উভয় ক্ষেত্রেই ব্যবহারের জন্য উপলব্ধ। এগুলি আর কেবল কম্পিউট শেডারের মধ্যে সীমাবদ্ধ নেই। সংখ্যা 354738715 দেখুন।
মনে রাখবেন যে subgroup_size
বিল্ট-ইন মানটি বর্তমানে ফ্র্যাগমেন্ট শেডারগুলিতে ত্রুটিপূর্ণ । আপাতত এটি এড়িয়ে চলুন।
তদুপরি, নিম্নলিখিত উপগোষ্ঠী বিল্ট-ইন ফাংশনগুলি যুক্ত করা হয়েছে:
-
subgroupAdd(value)
: subgroup জুড়ে সমস্ত সক্রিয় আমন্ত্রণvalue
s এর যোগফল প্রদান করে। -
subgroupExclusiveAdd(value)
: সাবগ্রুপ জুড়ে সমস্ত সক্রিয় ইনভোকেশনvalue
একচেটিয়া স্ক্যান সমষ্টি প্রদান করে। -
subgroupMul(value)
: subgroup জুড়ে সমস্ত সক্রিয় আমন্ত্রণvalue
গুণন প্রদান করে। -
subgroupExclusiveMul(value)
: সাবগ্রুপ জুড়ে সমস্ত সক্রিয় ইনভোকেশনvalue
s এর এক্সক্লুসিভ স্ক্যান গুণন প্রদান করে। -
subgroupAnd(value)
: s উপগোষ্ঠী জুড়ে সমস্ত সক্রিয় আমন্ত্রণেরvalue
বাইনারি AND প্রদান করে। -
subgroupOr(value)
: সাবগ্রুপ জুড়ে সমস্ত সক্রিয় আমন্ত্রণvalue
s এর বাইনারি OR প্রদান করে। -
subgroupXor(value)
: সাবগ্রুপ জুড়ে সমস্ত সক্রিয় ইনভোকেশনvalue
s এর বাইনারি XOR প্রদান করে। -
subgroupMin(value)
: subgroup জুড়ে সমস্ত সক্রিয় আমন্ত্রণvalue
ন্যূনতম মান প্রদান করে। -
subgroupMax(value)
: সাবগ্রুপ জুড়ে সমস্ত সক্রিয় আমন্ত্রণvalue
s এর সর্বাধিক মান প্রদান করে। -
subgroupAll(value)
: সাবগ্রুপের সকল সক্রিয় আমন্ত্রণের জন্যvalue
সত্য হলে true প্রদান করে। -
subgroupAny(value)
: যদি subgroup-এর যেকোনো সক্রিয় আমন্ত্রণের জন্যvalue
সত্য হয়, তাহলে true প্রদান করে। -
subgroupElect()
: যদি এই আমন্ত্রণটি সাবগ্রুপের সক্রিয় আমন্ত্রণগুলির মধ্যে সর্বনিম্নsubgroup_invocation_id
থাকে, তাহলে true ফেরত পাঠায়। -
subgroupBroadcastFirst(value)
: সাবগ্রুপের সর্বনিম্নsubgroup_invocation_id
সহ সক্রিয় আমন্ত্রণ থেকে অন্যান্য সমস্ত সক্রিয় আমন্ত্রণেvalue
সম্প্রচার করে। -
subgroupShuffle(value, id)
: সক্রিয় invocation থেকেvalue
প্রদান করে যারsubgroup_invocation_id
id
সাথে মেলে। -
subgroupShuffleXor(value, mask)
: সক্রিয় invocation থেকেvalue
ফেরত পাঠায় যারsubgroup_invocation_id
subgroup_invocation_id ^ mask
সাথে মেলে।mask
অবশ্যই গতিশীলভাবে অভিন্ন হতে হবে। -
subgroupShuffleUp(value, delta)
: সক্রিয় invocation থেকেvalue
প্রদান করে যারsubgroup_invocation_id
subgroup_invocation_id - delta
সাথে মেলে। -
subgroupShuffleDown(value, delta)
: সক্রিয় invocation থেকেvalue
প্রদান করে যারsubgroup_invocation_id
subgroup_invocation_id + delta
সাথে মেলে। -
quadBroadcast(value, id)
: id এর সমানid
সহ quad invocation থেকে সম্প্রচারিতvalue
।id
অবশ্যই একটি ধ্রুবক-এক্সপ্রেশন হতে হবে। -
quadSwapX(value)
: X দিকের কোয়াডের আমন্ত্রণের মধ্যেvalue
অদলবদল করে। -
quadSwapY(value)
: Y দিকের কোয়াডের ইনভোকেশনের মধ্যেvalue
অদলবদল করে। -
quadSwapDiagonal(value)
: চতুর্ভুজের আমন্ত্রণের মধ্যেvalue
ত্রিভুজের মতো অদলবদল করে।
ভোরের আপডেট
wgpu::PrimitiveState
struct এখন সরাসরি depth clip নিয়ন্ত্রণ সেটিং অন্তর্ভুক্ত করে, যার ফলে আলাদা wgpu::PrimitiveDepthClipControl
struct এর প্রয়োজন নেই। আরও জানতে, নিম্নলিখিত কোড স্নিপেট এবং webgpu-headers PR দেখুন।
// Before
wgpu::PrimitiveState primitive = {};
wgpu::PrimitiveDepthClipControl depthClipControl;
depthClipControl.unclippedDepth = true;
primitive.nextInChain = &depthClipControl;
// Now
wgpu::PrimitiveState primitive = {};
primitive.unclippedDepth = true;
এখানে শুধুমাত্র কিছু গুরুত্বপূর্ণ বিষয় অন্তর্ভুক্ত করা হয়েছে। কমিটের সম্পূর্ণ তালিকাটি দেখুন।
WebGPU-তে নতুন কী আছে
" What's New in WebGPU" সিরিজে যা যা আলোচনা করা হয়েছে তার একটি তালিকা।
ক্রোম ১৪২
ক্রোম ১৪১
- টিন্ট আইআর সম্পন্ন হয়েছে
- WGSL কম্পাইলারে পূর্ণসংখ্যা পরিসর বিশ্লেষণ
- Vulkan ব্যাকএন্ডের জন্য SPIR-V 1.4 আপডেট
- ভোরের আপডেট
ক্রোম ১৪০
- ডিভাইসের অনুরোধগুলি অ্যাডাপ্টার ব্যবহার করে
- টেক্সচার ভিউ ব্যবহার করা হলে টেক্সচার ব্যবহারের সংক্ষিপ্ত বিবরণ
- WGSL টেক্সচারSampleLevel 1D টেক্সচার সমর্থন করে
- bgra8unorm-এর পঠনযোগ্য স্টোরেজ টেক্সচার ব্যবহার বন্ধ করুন
- GPUAdapter isFallbackAdapter অ্যাট্রিবিউটটি সরান
- ভোরের আপডেট
ক্রোম ১৩৯
- BC এবং ASTC সংকুচিত ফর্ম্যাটের জন্য 3D টেক্সচার সমর্থন
- নতুন "মূল-বৈশিষ্ট্য-এবং-সীমা" বৈশিষ্ট্য
- WebGPU সামঞ্জস্য মোডের জন্য অরিজিন ট্রায়াল
- ভোরের আপডেট
ক্রোম ১৩৮
- বাইন্ডিং রিসোর্স হিসেবে বাফার ব্যবহারের সংক্ষিপ্ত বিবরণ
- তৈরির সময় ম্যাপ করা বাফারগুলির জন্য আকারের প্রয়োজনীয়তার পরিবর্তন
- সাম্প্রতিক GPU-এর জন্য স্থাপত্য প্রতিবেদন
- GPUAdapter হল FallbackAdapter অ্যাট্রিবিউটকে অবমূল্যায়ন করুন
- ভোরের আপডেট
ক্রোম ১৩৭
- বাহ্যিক টেক্সচার বাইন্ডিংয়ের জন্য টেক্সচার ভিউ ব্যবহার করুন
- অফসেট এবং আকার নির্দিষ্ট না করেই বাফারগুলি অনুলিপি করে
- WGSL ওয়ার্কগ্রুপ ইউনিফর্মলোড পরমাণুর পয়েন্টার ব্যবহার করে
- GPUAdapterInfo powerPreference অ্যাট্রিবিউট
- GPURequestAdapterOptions compatibilityMode অ্যাট্রিবিউট সরান
- ভোরের আপডেট
ক্রোম ১৩৬
- GPUAdapterInfo হল FallbackAdapter বৈশিষ্ট্য
- D3D12-তে শেডার সংকলন সময়ের উন্নতি
- ক্যানভাস ছবি সংরক্ষণ এবং কপি করুন
- সামঞ্জস্যতা মোড সীমাবদ্ধতা উত্তোলন করুন
- ভোরের আপডেট
ক্রোম ১৩৫
- নাল বাইন্ড গ্রুপ লেআউট সহ পাইপলাইন লেআউট তৈরি করার অনুমতি দিন
- ভিউপোর্টগুলিকে রেন্ডার টার্গেট সীমানা অতিক্রম করতে দিন
- অ্যান্ড্রয়েডে পরীক্ষামূলক সামঞ্জস্যতা মোডে সহজ অ্যাক্সেস
- maxInterStageShaderComponents সীমা সরান
- ভোরের আপডেট
ক্রোম ১৩৪
- উপগোষ্ঠীর সাথে মেশিন-লার্নিং ওয়ার্কলোড উন্নত করুন
- ফ্লোট ফিল্টারেবল টেক্সচার টাইপ সাপোর্টকে ব্লেন্ডেবল হিসেবে সরিয়ে দিন
- ভোরের আপডেট
ক্রোম ১৩৩
- অতিরিক্ত unorm8x4-bgra এবং 1-কম্পোনেন্ট ভার্টেক্স ফর্ম্যাট
- অনির্ধারিত মান সহ অজানা সীমা অনুরোধ করার অনুমতি দিন
- WGSL সারিবদ্ধকরণের নিয়ম পরিবর্তন
- বাতিলের সাথে WGSL কর্মক্ষমতা বৃদ্ধি পায়
- বাহ্যিক টেক্সচারের জন্য ভিডিওফ্রেম ডিসপ্লে সাইজ ব্যবহার করুন
- copyExternalImageToTexture ব্যবহার করে অ-ডিফল্ট ওরিয়েন্টেশন সহ ছবিগুলি পরিচালনা করুন
- ডেভেলপারের অভিজ্ঞতা উন্নত করা হচ্ছে
- featureLevel এর সাথে সামঞ্জস্যতা মোড সক্ষম করুন
- পরীক্ষামূলক উপগোষ্ঠীর বৈশিষ্ট্য পরিষ্কারকরণ
- maxInterStageShaderComponents সীমা অবমূল্যায়ন করুন
- ভোরের আপডেট
ক্রোম ১৩২
- টেক্সচার ভিউ ব্যবহার
- ৩২-বিট ফ্লোট টেক্সচার ব্লেন্ডিং
- GPUDevice অ্যাডাপ্টারইনফো অ্যাট্রিবিউট
- অবৈধ ফর্ম্যাট থ্রো জাভাস্ক্রিপ্ট ত্রুটি সহ ক্যানভাস প্রসঙ্গ কনফিগার করা হচ্ছে
- টেক্সচারের উপর স্যাম্পলার সীমাবদ্ধতা ফিল্টার করা
- বর্ধিত উপগোষ্ঠী পরীক্ষা-নিরীক্ষা
- ডেভেলপারের অভিজ্ঞতা উন্নত করা হচ্ছে
- ১৬-বিট নরমালাইজড টেক্সচার ফর্ম্যাটের জন্য পরীক্ষামূলক সমর্থন
- ভোরের আপডেট
ক্রোম ১৩১
- WGSL-এ দূরত্ব ক্লিপ করুন
- GPUCanvasContext কনফিগারেশন () পান
- বিন্দু এবং রেখার আদিমগুলিতে গভীরতা পক্ষপাত থাকা উচিত নয়
- উপগোষ্ঠীর জন্য অন্তর্ভুক্তিমূলক স্ক্যান বিল্ট-ইন ফাংশন
- মাল্টি-ড্র ইনডাইরেক্টের জন্য পরীক্ষামূলক সহায়তা
- শেডার মডিউল সংকলন বিকল্প কঠোর গণিত
- GPUAdapter requestAdapterInfo() সরান
- ভোরের আপডেট
ক্রোম ১৩০
- ডুয়াল সোর্স ব্লেন্ডিং
- মেটালে শেডার সংকলনের সময়ের উন্নতি
- GPUAdapter requestAdapterInfo() এর অবচয়
- ভোরের আপডেট
ক্রোম ১২৯
ক্রোম ১২৮
- উপগোষ্ঠী নিয়ে পরীক্ষা-নিরীক্ষা
- লাইন এবং বিন্দুর জন্য গভীরতা পক্ষপাত নির্ধারণ বন্ধ করুন
- যদি preventDefault থাকে তাহলে DevTools সতর্কতা না-ক্যাপচার করা ত্রুটি লুকান।
- WGSL ইন্টারপোলেট স্যাম্পলিং প্রথমে এবং উভয়ই
- ভোরের আপডেট
ক্রোম ১২৭
- অ্যান্ড্রয়েডে OpenGL ES এর জন্য পরীক্ষামূলক সমর্থন
- GPUAdapter তথ্য বৈশিষ্ট্য
- ওয়েবঅ্যাসেম্বলি ইন্টারঅপ উন্নতি
- উন্নত কমান্ড এনকোডার ত্রুটি
- ভোরের আপডেট
ক্রোম ১২৬
- maxTextureArrayLayers সীমা বাড়ান
- Vulkan ব্যাকএন্ডের জন্য বাফার আপলোড অপ্টিমাইজেশন
- শেডার সংকলন সময়ের উন্নতি
- জমা দেওয়া কমান্ড বাফারগুলি অবশ্যই অনন্য হতে হবে
- ভোরের আপডেট
ক্রোম ১২৫
ক্রোম ১২৪
- শুধুমাত্র পঠনযোগ্য এবং পঠনযোগ্য স্টোরেজ টেক্সচার
- পরিষেবা কর্মী এবং ভাগ করা কর্মীদের সহায়তা
- নতুন অ্যাডাপ্টারের তথ্য বৈশিষ্ট্য
- বাগ সংশোধন
- ভোরের আপডেট
ক্রোম ১২৩
- WGSL-এ DP4a বিল্ট-ইন ফাংশন সাপোর্ট করে
- WGSL-এ অবাধ পয়েন্টার প্যারামিটার
- WGSL-এ কম্পোজিট ডিরেফারেন্স করার জন্য সিনট্যাক্স চিনি
- স্টেনসিল এবং গভীরতার দিকগুলির জন্য পৃথক পঠনযোগ্য অবস্থা
- ভোরের আপডেট
ক্রোম ১২২
- সামঞ্জস্যতা মোডের মাধ্যমে নাগাল বাড়ান (বিকাশের অধীনে থাকা বৈশিষ্ট্য)
- maxVertexAttributes সীমা বৃদ্ধি করুন
- ভোরের আপডেট
ক্রোম ১২১
- অ্যান্ড্রয়েডে WebGPU সাপোর্ট করুন
- উইন্ডোজে শেডার সংকলনের জন্য FXC এর পরিবর্তে DXC ব্যবহার করুন
- কম্পিউট এবং রেন্ডার পাসে টাইমস্ট্যাম্প কোয়েরি
- শেডার মডিউলের ডিফল্ট এন্ট্রি পয়েন্ট
- GPUExternalTexture কালার স্পেস হিসেবে display-p3 সাপোর্ট করে
- মেমোরি হিপস সম্পর্কিত তথ্য
- ভোরের আপডেট
ক্রোম ১২০
- WGSL-এ ১৬-বিট ফ্লোটিং-পয়েন্ট মানের জন্য সমর্থন
- সীমা অতিক্রম করুন
- গভীরতা-স্টেন্সিল অবস্থায় পরিবর্তন
- অ্যাডাপ্টারের তথ্য আপডেট
- টাইমস্ট্যাম্প কোয়েরি কোয়ান্টাইজেশন
- বসন্ত-পরিষ্কারের বৈশিষ্ট্য
ক্রোম ১১৯
- ফিল্টারযোগ্য ৩২-বিট ফ্লোট টেক্সচার
- unorm10-10-10-2 ভার্টেক্স ফর্ম্যাট
- rgb10a2uint টেক্সচার ফর্ম্যাট
- ভোরের আপডেট
ক্রোম ১১৮
-
copyExternalImageToTexture()
তে HTMLImageElement এবং ImageData সাপোর্ট - পঠন-লেখা এবং পঠন-শুধুমাত্র স্টোরেজ টেক্সচারের জন্য পরীক্ষামূলক সহায়তা
- ভোরের আপডেট
ক্রোম ১১৭
- ভার্টেক্স বাফার আনসেট করুন
- বাইন্ড গ্রুপ আনসেট করুন
- ডিভাইস হারিয়ে গেলে অ্যাসিঙ্ক পাইপলাইন তৈরির সময় ত্রুটিগুলি নীরব করুন
- SPIR-V শেডার মডিউল তৈরির আপডেট
- ডেভেলপারের অভিজ্ঞতা উন্নত করা হচ্ছে
- স্বয়ংক্রিয়ভাবে তৈরি লেআউট সহ পাইপলাইন ক্যাশ করা হচ্ছে
- ভোরের আপডেট
ক্রোম ১১৬
- ওয়েবকোডেক্স ইন্টিগ্রেশন
- GPUAdapter
requestDevice()
দ্বারা হারিয়ে যাওয়া ডিভাইসটি ফেরত পাঠানো হয়েছে -
importExternalTexture()
কল করা হলে ভিডিও প্লেব্যাক মসৃণ রাখুন - স্পেক সম্মতি
- ডেভেলপারের অভিজ্ঞতা উন্নত করা হচ্ছে
- ভোরের আপডেট
ক্রোম ১১৫
- সমর্থিত WGSL ভাষা এক্সটেনশন
- Direct3D 11 এর জন্য পরীক্ষামূলক সহায়তা
- এসি পাওয়ারে ডিফল্টভাবে ডিসক্রিট জিপিইউ পান
- ডেভেলপারের অভিজ্ঞতা উন্নত করা হচ্ছে
- ভোরের আপডেট
ক্রোম ১১৪
- জাভাস্ক্রিপ্ট অপ্টিমাইজ করুন
- কনফিগার না করা ক্যানভাসে getCurrentTexture() InvalidStateError ছুঁড়ে দেয়
- WGSL আপডেট
- ভোরের আপডেট