সমস্ত গ্রুপের অবজেক্টগুলি সন্ধান করে শুরু করুন, যেখানে বস্তুর একটি গ্রুপ হ'ল ওভারল্যাপ করে এমন অবজেক্টগুলির সংকলন। স্ট্যান্ডার্ড সংঘর্ষ সনাক্তকরণের কাজটি করা উচিত। প্রতিটি গ্রুপকে একটি অনন্য রঙ নির্ধারণ করুন। যে কোনও রঙ করত।
গোষ্ঠী রঙ ব্যবহার করে আপনার জমিনকে শক্ত রঙ হিসাবে একটি টেক্সচারে রেন্ডার করুন।
রেন্ডার লক্ষ্য হিসাবে একই মাত্রা সহ একটি নতুন আউটলাইন টেক্সচার তৈরি করুন। রেন্ডার টার্গেটের প্রতিটি টেক্সেলের মাধ্যমে স্ক্যান করুন এবং নির্ধারণ করুন যে এটি কোনও আশেপাশের টেক্সলে আলাদা রঙ কিনা। যদি তা হয় তবে আপনার পছন্দসই লাইন রঙের সাথে রূপরেখা টেক্সচারের সাথে সংশ্লিষ্ট টেক্সেলটি পরিবর্তন করুন।
অবশেষে, এই রূপরেখা টেক্সচারটি ধরুন এবং আপনি যে চিত্রটি পর্দায় আঁকতে চান তার উপরের অংশে এটি রেন্ডার করুন (আপনি অবশ্যই এটি একটি ফ্র্যাগমেন্ট শেডারে প্রান্ত সনাক্তকরণ হিসাবে একই সময়ে করতে পারেন এবং প্রথমদিকে প্রান্ত টেক্সচার তৈরি করা এড়াতে পারেন স্থান)।
আপনি যদি সিপুতে এই পদক্ষেপটি রেন্ডার টার্গেটের টেক্সেলগুলি দিয়ে যাওয়ার জন্য লুপ ব্যবহার করে করেন, তবে এটি বেশ ধীর হবে তবে কিছু ক্ষেত্রে পরীক্ষার এমনকি ব্যবহারের পক্ষেও যথেষ্ট ভাল। এটি রিয়েল টাইমে ব্যবহারের জন্য আপনি এটি একটি শেডার মধ্যে পরিচালনা করা ভাল হবে।
এই প্রান্ত সনাক্তকরণের জন্য একটি টুকরো টুকরো ছাঁটাই এর মতো দেখতে পাওয়া যেতে পারে;
precision mediump float;
uniform sampler2D s_texture;
varying vec2 v_texCoord;
void main()
{
gl_FragColor = vec4(0.0);
vec4 baseColor = texture2D(s_texture, v_texCoord);
gl_FragColor += baseColor - texture2D(s_texture, top);
gl_FragColor += baseColor - texture2D(s_texture, topRight);
gl_FragColor += baseColor - texture2D(s_texture, right);
gl_FragColor += baseColor - texture2D(s_texture, bottomRight);
gl_FragColor += baseColor - texture2D(s_texture, bottom);
gl_FragColor += baseColor - texture2D(s_texture, bottomLeft);
gl_FragColor += baseColor - texture2D(s_texture, left);
gl_FragColor += baseColor - texture2D(s_texture, topLeft);
}
টেক্সচার 2 ডিটিতে দ্বিতীয় মানটি যেখানে v_texCoord এর সাথে সম্পর্কিত 2 ডি স্থানাঙ্ক। আপনি পূর্ণ স্ক্রিন কোয়াডে টেক্সচার হিসাবে প্রথম রেন্ডার লক্ষ্যটিকে রেন্ডার করে এটি প্রয়োগ করবেন। এটি আপনি যেমন কোনও গাসিয়ান অস্পষ্টতার মতো পূর্ণ পর্দা ঝাপসা প্রভাব প্রয়োগ করবেন তার অনুরূপ।
দৃ colors় রঙের সাথে প্রথম রেন্ডার টার্গেটটি ব্যবহার করার কারণটি কেবল এটি নিশ্চিত করে নেওয়া হয় যে ওভারল্যাপ করে আসা বিভিন্ন বস্তুর মধ্যে কোনও অনুভূত প্রান্ত নেই। আপনি যদি কেবল পর্দার চিত্রটিতে প্রান্ত সনাক্তকরণ সম্পাদন করেন তবে আপনি সম্ভবত এটি দেখতে পাবেন যে এটি ওভারল্যাপগুলিতে পাশাপাশি প্রান্তগুলি সনাক্ত করে (বস্তুর বিভিন্ন রঙ / টেক্সচার / আলোকসজ্জা রয়েছে বলে ধরে নেওয়া)।