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