আমাকে কি সংকলিত আকারে বা সরল পাঠ্যে ছায়ার বিতরণ করা উচিত?


13

জিএলএসএল-এ লেখা ছায়াগুলি ব্যবহার করে এমন একটি অ্যাপ্লিকেশন থাকা, আসল বিশ্বে এবং ডেস্কটপ এবং মোবাইলের জন্য বিতরণের সর্বোত্তম কৌশল কী?

আমি এটি বাইনারি আকারে বা সরল সিরিয়ালযুক্ত পাঠ্য হিসাবে বিতরণ করার লক্ষ্য রাখছি, আমি এ সম্পর্কে একটি ভাল পরামর্শ চাই।

উত্তর:


15

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

একটি বিষয় বিবেচনা করার জন্য হ'ল একটি অফলাইন পাঠ্য শেডার অপ্টিমাইজার যা ক্রেপি মোবাইল শেডার সংকলকগুলির সাথে দুর্দান্ত প্রভাব ফেলতে পারে।


আমি সত্যিই অবাক হব যদি আপনি এমন কোনও ডিভাইস খুঁজে পেলেন যেখানে শেডার সংকলন একটি বাধা। কোডের পরিমাণ এমনকি বড় শেডারেও সংকলনের ক্ষেত্রে কোডের একটি তুচ্ছ পরিমাণ।
এডিএ-কিএ মার্ট-ওরা-ই

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

সুতরাং আমাকে এনভিডিয়া থেকে একটি এলোমেলো এটিআই ভিডিওকার্ড এবং অন্য একটি এলোমেলো একটি কিনতে হবে, আমার শেডারগুলি সংকলন করুন এবং কেবল সংকলিত সংস্করণটি বিতরণ করবেন? আমি রানটাইমে কীভাবে চেক করতে পারি লক্ষ্যযুক্ত ভিডিও কার্ডটির ব্র্যান্ড কী? এর জন্য নির্ভরযোগ্য কিছু আছে?
ব্যবহারকারী 827992

1
@ ব্যবহারকারী 827992 বাইনারি ফর্ম্যাট জিপিইউ / ড্রাইভারের বিভিন্ন প্রজন্মের জন্য আলাদা হতে পারে এমনকি বিক্রেতার ক্ষেত্রে একই রকম থাকে। এবং ভুলে যাবেন না যে এখানে প্রচুর ইন্টেল জিপিইউ রয়েছে, কোয়ালকম এবং পাওয়ারভিআরের মতো সমস্ত মোবাইল ছেড়ে দিন। সুতরাং আবার: আমি আপনাকে পরামর্শ দিচ্ছি যে আপনি সংকলিত শেডারগুলি বিতরণ করবেন না, বরং ব্যবহারকারীর ডিভাইসে প্রথমে চালানোর সময় সেগুলি ক্যাশে করুন। জিপিইউ সনাক্তকরণ সম্পর্কিত, আপনি GL_VENDOR, GL_VERSION এবং GL_RENDERER স্ট্রিংগুলি গ্লগেটস্ট্রিং () গঠন করার চেষ্টা করতে পারেন, তবে তাদের ফর্ম্যাট বিক্রেতার কাছে পরিবর্তিত হয়।
তাপিও
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.