কীটগুলির মতো ধ্বংসাত্মক 2D আড়াআড়ি তৈরিতে কোন পদক্ষেপগুলি জড়িত থাকবে? আদর্শভাবে, এমন কিছু উপায় কী কী যে এই প্রক্রিয়াটিকে সম্ভব হিসাবে কার্যকর করা যায়?
কীটগুলির মতো ধ্বংসাত্মক 2D আড়াআড়ি তৈরিতে কোন পদক্ষেপগুলি জড়িত থাকবে? আদর্শভাবে, এমন কিছু উপায় কী কী যে এই প্রক্রিয়াটিকে সম্ভব হিসাবে কার্যকর করা যায়?
উত্তর:
আমি জানি না কীভাবে কীটগুলিতে আড়াআড়ি ঠিক প্রয়োগ করা হয়েছিল তবে আমি নিশ্চিত যে তারা ল্যান্ডস্কেপের জন্য বিটম্যাপটি ব্যবহার করেছে (কমপক্ষে সিরিজের পুরানো গেমগুলিতে)।
একটি খুব প্রাথমিক পদ্ধতির বিটম্যাপ চিত্র (বি / ডাব্লু) হবে যেখানে কালো পিক্সেলগুলি বায়ু এবং সাদা পিক্সেলগুলি ভূমির প্রতিনিধিত্ব করে । ল্যান্ডস্কেপ ধ্বংস পিক্সেল অপারেশন ব্যবহার করে সহজেই করা যেতে পারে। সুতরাং যদি কোনও রকেট মাটিতে পড়ে, radius = blastRadius
তবে প্রভাবের স্থানে একটি কালো বৃত্ত আঁকুন ।
তারপরে আপনি সেই বিটম্যাপটি ব্যবহার করে আপনার বিশ্বকে (বা এটির একটি অংশ) রেন্ডার করতে পারেন। উন্নত পারফরম্যান্সের জন্য আমি আপনাকে এটিকে একটি উপায়ে বাস্তবায়নের পরামর্শ দিচ্ছি, যাতে আপনি "বিশ্বের" মাত্র একটি অংশ আপডেট / রেন্ডার করতে পারেন। যেমন। যদি ল্যান্ডস্কেপের কিছু অংশ রকেট দ্বারা ধ্বংস হয়ে যায়, তবে কেবল পুরো বিশ্বকেই নয়, প্রভাবিত অঞ্চলগুলি পুনরায় রেন্ডার করুন।
আপনার "সংঘর্ষ-মানচিত্র" হিসাবে কোনও বি / ডাব্লু চিত্রের পরিবর্তে, আপনি একটি 24 বিট চিত্রও ব্যবহার করতে পারেন যেখানে আপনি পিক্সেল প্রতি পৃষ্ঠের জেনারেল (x, y) এবং প্রকৃত "সংঘর্ষ- সংরক্ষণ করার জন্য একটি চ্যানেল সংরক্ষণ করতে দুটি চ্যানেল ব্যবহার করেন মানচিত্র "। হাতের পৃষ্ঠতলের-স্বাভাবিক থাকা আপনাকে বাউনিং গ্রেনেড গণনা করতে বা কোনও চরিত্র কোনও প্রদত্ত দিকে যেতে পারে কিনা তা নির্ধারণ করতে সহায়তা করবে।
আমার মাথার উপরের দিক থেকে একটি সম্ভাবনা:
ধ্বংসাত্মক "স্থল" এর রূপরেখা সংরক্ষণের জন্য একটি ভেক্টর গ্রাফিক্স পথের উপস্থাপনা ব্যবহার করুন। যখন কোনও ধ্বংসের ঘটনা ঘটে (উদাহরণস্বরূপ, একটি গ্রেনেড বন্ধ হয়ে যায়), একটি বৃত্ত হিসাবে প্রতিনিধিত্ব করা, বিস্ফোরণ অঞ্চলটি বুলিয়ান বিয়োগ বিয়োগের মাধ্যমে ভূমির পথ থেকে সরানো হবে। ফলস্বরূপ পাথটি স্থল সংঘর্ষ সনাক্তকরণের জন্য নতুন "জমি" এবং সম্ভবত জমি আঁকার জন্য একটি মুখোশ উপস্থাপন করে।
আমি ধারণার একটি প্রমাণ লিখেছিলাম যা ধ্বংসাত্মক অঞ্চল পরিচালনা করতে গঠনমূলক শক্ত জ্যামিতি ব্যবহার করে । বুলিয়ান অপারেশন করতে আমি জিএলইউ টেসেললেটর ব্যবহার করেছি। ডকুমেন্টেশন কিভাবে জন্য অনুসন্ধান ব্যাখ্যা "CSG বিধি ঘুর জন্য ব্যবহার করে" ।
আমি টেস্টেলিটরের ত্রিভুজ আউটপুটকে স্ট্যাটিক বহুভুজ হিসাবে বক্স 2 ডি তে খাওয়ালাম। পিওসি বেশ ভাল কাজ করেছে। আমি নির্বিচারে বিয়োগ করতে এবং রিয়েল-টাইমে ভূখণ্ড যুক্ত করতে সক্ষম হয়েছি এবং অঞ্চলটি বক্স 2 ডি এর সাথে যথাযথ আচরণ করতে থাকে। একমাত্র আসল হিচাপটি ছিল যে জিএলইউ টেসেললেটর ডিজেনরেটেড ত্রিভুজগুলি তৈরি করতে পারে যা বক্স 2 ডি পছন্দ করে না, তাই আমাকে হাতে হাতে ফিল্টার করতে হয়েছিল।
POC পরবর্তী পদক্ষেপ (যা আমি প্রায় কখনই পেয়েছিলাম) ব্যবহার করতে ছিল SCC থেকে অ্যালগরিদম বুস্ট গ্রাফ যখন ভূখণ্ড এক টুকরা ছিন্ন হয়েছে সনাক্ত করতে (শীর্ষ বন্ধ একটি পর্বত কেটে) গ্রন্থাগারের। বিচ্ছিন্ন ভূখণ্ডটি এখনও ধ্বংসাত্মক হবে তবে এখন এটি একটি গতিশীল (অ-স্থিতিশীল) বক্স 2 ডি বডি দ্বারা আকার হিসাবে যুক্ত ত্রিভুজগুলির দ্বারা প্রতিনিধিত্ব করে। আমি ডিজাইনের কাজ শেষ করে ফেললাম তবে একবার আমি উত্সাহিত ডকুমেন্টেশনটিতে খনন শুরু করি interest আমি কোনও দিন ঝলসানো পৃথিবী / কৃমি খেলা তৈরি করার সময় আমি এই ধারণাটি পুনর্বিবেচনার "পরিকল্পনা" করছি।
উপরের সমস্ত উত্তর কীট-পতঙ্গের মতই সহজতম ক্ষেত্রে প্রয়োগের বিষয়ে কথা বলে। এটি হ'ল, যখন প্রভাবের ক্ষেত্রটি ধ্বংস হয়ে যায় এবং সমস্ত কিছু অনুচ্চারিত হয়। আপনি কি বিবেচনা করেছেন, যে আপনার ল্যান্ডস্কেপ অবশেষে দুটি বিভক্ত হতে পারে? বলুন, এখানে একটি পর্বত রয়েছে এবং খেলোয়াড়রা রকেট লঞ্চারের সাহায্যে এর নীচে কাটেন। এখন, পাহাড় পড়া উচিত নয়? এছাড়াও, প্রাকৃতিক দৃশ্যের জন্য কিছুটা স্থিতিস্থাপক হওয়া স্বাভাবিক। কৃমির সময় (কমপক্ষে আমি তাদের স্মরণ করে রেখেছি, আমি অনেক বছর ধরে কৃমি খেলি না) কম্পিউটারগুলি ঠিক এটি করার জন্য যথেষ্ট শক্তিশালী ছিল না। কিন্তু তারা এখন।
অবশ্যই এটি আপনার প্রকল্পের উচ্চাকাঙ্ক্ষার উপর সম্পূর্ণ নির্ভর করে। তবে আপনি যদি এটি সত্যিই দুর্দান্ত দেখতে চান তবে সম্ভবত আপনার পদার্থবিজ্ঞানের ইঞ্জিন হিসাবে বক্স 2 ডি চেষ্টা করা উচিত । এটির সাথে আপনি অনেক কিছু করতে পারেন।
যেমন বামমজ্যাক বলেছিল বিটম্যাপস। যদিও আপনি 1 বিট ট্রান্স্পেরেন্সী ব্যবহার করতে পারেন বা আপনার যদি সেই সমর্থন না থাকে তবে আপনি আপনার গেমটিতে ব্যবহার করবেন না এমন একটি ভয়াবহ গোলাপী রঙ ব্যবহার করুন।
প্রভাবের পয়েন্টটি পিক্সেলের রঙটি পরীক্ষা করেই গণনা করা যায়। এবং যখন কোনও প্রভাব দেখা দেয় তখন বিটম্যাপের রঙ পরিবর্তন করুন (বা এটি মুছুন)।
বিস্ফোরণের ব্যাসার্ধের জন্য আমার প্রথম স্টপটি হবে ব্রেনহ্যামের বৃত্ত অ্যালগরিদম , খুব দ্রুত এবং দক্ষ। যদিও আমি প্রথমে একটি বর্গক্ষেত্রের মতো কিছু দিয়ে একটি মুছা মুছুন এবং প্রান্তটি পেতে বৃত্তটি চারদিকে রাখি।