ওপেনগিএলে ফ্রেমবুফার এবং রেন্ডারবফারের মধ্যে ধারণা এবং পার্থক্য কী?


136

আমি ফ্রেমবুফার এবং রেন্ডারফার ধারণা সম্পর্কে বিভ্রান্ত। আমি জানি যে তাদের রেন্ডার করা প্রয়োজন, তবে আমি ব্যবহারের আগে সেগুলি বুঝতে চাই।

আমি জানি অস্থায়ী অঙ্কনের ফলাফল সংরক্ষণের জন্য কিছু বিটম্যাপ বাফার প্রয়োজন। পিছনের বাফার এবং অন্যান্য বাফারগুলি যখন স্ক্রিনে দেখা দরকার যখন এই অঙ্কনগুলি অগ্রগতি হয়। সামনের বাফার এবং এগুলি ফ্লিপ করুন এবং আবার আঁকুন। আমি এই ধারণাটি জানি, তবে এই ধারণাগুলির সাথে এই বিষয়গুলি সংযুক্ত করা শক্ত connect

এগুলির ধারণা এবং পার্থক্য কী?


7
রেন্ডারবার্ফার ফ্রেমবফারের চ্যানেল-জাতীয় উপাদান (রঙ, স্টেনসিল, গভীরতা এবং ইত্যাদি)) দেখুন: বিকাশকারী.এপল.
com

2
লিঙ্কটি আইফোন নির্দিষ্ট, তবে ফ্রেমবফারগুলি ভালভাবে ব্যাখ্যা করা হয়েছে।
j00hi

উত্তর:


62

এই পৃষ্ঠায় কিছু বিশদ রয়েছে যা আমি মনে করি পার্থক্যটি বেশ সুন্দরভাবে ব্যাখ্যা করেছি। প্রথমত:

ওপেনজিএল পাইপলাইনটির চূড়ান্ত রেন্ডারিং গন্তব্যকে [দ্য] ফ্রেমবফার বলে

যেখানে:

রেন্ডারবার্ফার অবজেক্ট
এছাড়াও, রেকর্ডবফার অবজেক্টটি নতুনভাবে অফস্ক্রিন রেন্ডারিংয়ের জন্য প্রবর্তিত হয়েছে। এটি কোনও টেক্সচার অবজেক্টে রেন্ডারিংয়ের পরিবর্তে কোনও দৃশ্য সরাসরি রেন্ডারফার অবজেক্টে রেন্ডার করতে দেয়। রেন্ডারবার্ফার হ'ল একটি উপস্থাপিত অভ্যন্তরীণ ফর্ম্যাটের একক চিত্র সম্বলিত একটি ডেটা স্টোরেজ অবজেক্ট। এটি ওপেনজিএল লজিকাল বাফারগুলিতে সঞ্চয় করতে ব্যবহৃত হয় যা সম্পর্কিত টেক্সচার বিন্যাসে নেই, যেমন স্টেনসিল বা গভীরতা বাফার।


196

ফ্রেম-বাফারের বস্তুর আসলে একটি বাফার, কিন্তু একটি সংযোগকারী বস্তুর যে এক বা একাধিক সংযুক্তি, যা তাদের ঘুরে দ্বারা, প্রকৃত বাফার রয়েছে নয়। আপনি ফ্রেমবফারকে সি কাঠামো হিসাবে বুঝতে পারবেন যেখানে প্রতিটি সদস্য বাফারের পয়েন্টার। কোনও সংযুক্তি ছাড়াই ফ্রেমবফার অবজেক্টের খুব কম পায়ের ছাপ রয়েছে।

এখন ফ্রেমবফারের সাথে সংযুক্ত প্রতিটি বাফার একটি রেন্ডারবার্ফার বা একটি টেক্সচার হতে পারে ।

Renderbuffer প্রকৃত বাফার (বাইটস, অথবা পূর্ণসংখ্যার, অথবা পিক্সেল একটি অ্যারের) হয়। Renderbuffer নেটিভ বিন্যাসে দোকানে পিক্সেল মান, তাই এটি offscreen রেন্ডারিং জন্য অপ্টিমাইজ করা হয়। অন্য কথায়, একটি রেন্ডারবার্ফারে আঁকা একটি টেক্সচারে আঁকার চেয়ে অনেক দ্রুত হতে পারে। ত্রুটিটি হ'ল পিক্সেলগুলি একটি নেটিভ, বাস্তবায়ন নির্ভর ফর্ম্যাট ব্যবহার করে, যাতে একটি রেন্ডারবার্ফারের কাছ থেকে পড়া কোনও টেক্সচার থেকে পড়ার চেয়ে আরও শক্ত। তবুও, একবার যখন কোনও রেন্ডারবার্ফার আঁকা হয়ে গেছে, তখন কেউ খুব দ্রুত পিক্সেল স্থানান্তর ক্রিয়াকলাপগুলি ব্যবহার করে এর সামগ্রী সরাসরি স্ক্রিনে অনুলিপি করতে পারে (বা অন্য রেন্ডারবার্ফারের কাছে আমার ধারণা)। এর অর্থ একটি রেন্ডারবার্ফার আপনার উল্লিখিত ডাবল বাফার প্যাটার্নটি দক্ষতার সাথে প্রয়োগ করতে ব্যবহার করা যেতে পারে।

রেন্ডারবার্ফারস একটি তুলনামূলকভাবে নতুন ধারণা। তাদের আগে, একটি ফ্রেমবফার একটি টেক্সচারে রেন্ডার করার জন্য ব্যবহৃত হত , যা ধীরে ধীরে হতে পারে কারণ একটি টেক্সচার একটি স্ট্যান্ডার্ড ফর্ম্যাট ব্যবহার করে। কোনও টেক্সচারে রেন্ডার করা এখনও সম্ভব এবং এটি বেশ কার্যকর যখন কোনও দৃশ্যের জন্য প্রতিটি পিক্সেলের উপরে একাধিক পাস করতে হয় বা অন্য দৃশ্যের কোনও পৃষ্ঠে কোনও দৃশ্য আঁকতে হয়!

ওপেনজিএল উইকির এই পৃষ্ঠাতে রয়েছে যা আরও বিশদ এবং লিঙ্কগুলি দেখায়।


13
ধন্যবাদ! এ জাতীয় ধরণের স্ট্রাইক এবং পয়েন্টার হিসাবে ব্যাখ্যা করা আমার কাছে আরও বেশি অর্থবোধ করে।
ডগলাসহিরিয়ট

2
এটি এখনও আমার জন্য কিছুটা বিভ্রান্তিকর। যদি রেন্ডারবুফার কেবলমাত্র অন্য একটি রেন্ডার বাফারকে দ্রুত অনুলিপি সরবরাহ করতে দেয়, তবে এটির জন্য প্রায় কোনও ব্যবহার নেই! যদি আমাকে পোস্ট-প্রসেসিং স্টেজ করতে হয় (এসএসএওর মতো) এর আগে রেন্ডারবাফারকে রেন্ডার করে বা তারপরে স্ক্রিনে অনুলিপি করার চেয়ে টেক্সচারে রেন্ডার করে ডিফল্ট ফ্রেমবফারটি রেন্ডার করা আরও সহজ না হয়?
কফডেভলপার

4
রেন্ডার বাফারগুলি কাস্টম পোস্ট প্রসেসিংয়ের জন্য ডিজাইন করা হয়নি। এগুলি একটি অঙ্কন পদ্ধতির জন্য গভীরতা এবং স্টেনসিল তথ্য সংরক্ষণ করতে ব্যবহার করা যেতে পারে। এটি সম্ভব কারণ কেবলমাত্র জিপিএল বাস্তবায়নের জন্য রেন্ডারফার ডেটা নিজেই পড়তে হবে এবং টেক্সচারের চেয়ে দ্রুত হতে হবে, কারণ দেশীয় ফর্ম্যাট ব্যবহার করে। আপনার যদি পোস্ট প্রসেসিংয়ের প্রয়োজন হয় তবে টেক্সচার ব্যবহার করুন।
ফার্নাকোলো
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.