2 ডি ধ্বংসাত্মক আড়াআড়ি বাস্তবায়ন (কীটগুলির মতো)


76

কীটগুলির মতো ধ্বংসাত্মক 2D আড়াআড়ি তৈরিতে কোন পদক্ষেপগুলি জড়িত থাকবে? আদর্শভাবে, এমন কিছু উপায় কী কী যে এই প্রক্রিয়াটিকে সম্ভব হিসাবে কার্যকর করা যায়?


7
দুর্দান্ত প্রশ্ন। কৃমির দুটি চ্যালেঞ্জ রয়েছে: ধ্বংসাত্মকতা এবং অদ্ভুত কোণে চলাচল।
ashes999

আমি মনে করি এটি বেশ কয়েকবার এখানে জিজ্ঞাসা করা হয়েছিল
বিষ্ণু

2
বিশ, সম্পর্কিত লিঙ্কগুলি এমনটি বলে মনে হচ্ছে না।
কম্যুনিস্ট হাঁস

3
আপনি এটি হেজওয়ার্সে কীভাবে সম্পন্ন করেছেন তা পরীক্ষা করতে পারেন - এটি ওয়ার্মস ক্লোনটি উন্মুক্ত করে।
জিভিএস

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

উত্তর:


47

আমি জানি না কীভাবে কীটগুলিতে আড়াআড়ি ঠিক প্রয়োগ করা হয়েছিল তবে আমি নিশ্চিত যে তারা ল্যান্ডস্কেপের জন্য বিটম্যাপটি ব্যবহার করেছে (কমপক্ষে সিরিজের পুরানো গেমগুলিতে)।

একটি খুব প্রাথমিক পদ্ধতির বিটম্যাপ চিত্র (বি / ডাব্লু) হবে যেখানে কালো পিক্সেলগুলি বায়ু এবং সাদা পিক্সেলগুলি ভূমির প্রতিনিধিত্ব করে । ল্যান্ডস্কেপ ধ্বংস পিক্সেল অপারেশন ব্যবহার করে সহজেই করা যেতে পারে। সুতরাং যদি কোনও রকেট মাটিতে পড়ে, radius = blastRadiusতবে প্রভাবের স্থানে একটি কালো বৃত্ত আঁকুন ।

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

আপনার "সংঘর্ষ-মানচিত্র" হিসাবে কোনও বি / ডাব্লু চিত্রের পরিবর্তে, আপনি একটি 24 বিট চিত্রও ব্যবহার করতে পারেন যেখানে আপনি পিক্সেল প্রতি পৃষ্ঠের জেনারেল (x, y) এবং প্রকৃত "সংঘর্ষ- সংরক্ষণ করার জন্য একটি চ্যানেল সংরক্ষণ করতে দুটি চ্যানেল ব্যবহার করেন মানচিত্র "। হাতের পৃষ্ঠতলের-স্বাভাবিক থাকা আপনাকে বাউনিং গ্রেনেড গণনা করতে বা কোনও চরিত্র কোনও প্রদত্ত দিকে যেতে পারে কিনা তা নির্ধারণ করতে সহায়তা করবে।


3
অতিরিক্ত তথ্য সংরক্ষণ করা সংঘর্ষ-মানচিত্রটি একটি সুন্দর ধারণা।
ডিফ্ট_কোড

6

আমার মাথার উপরের দিক থেকে একটি সম্ভাবনা:

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


2
আমি মনে করি হেজগার্স এটি এটি করে। @ বিল, আপনি এটি একবার দেখে নিতে পারেন, যেহেতু ওপেনসোর্স।
গ্যাস্টন

2
@ গ্যাস্টান হেজওয়ার্সের মানচিত্রগুলি সমস্ত চিত্র (পিএনজি)। আমি সন্দেহ করি তারা ভেক্টর গ্রাফিক্সে রূপান্তরিত হচ্ছে। এছাড়াও: ভেক্টর গ্রাফিক্স (স্প্লাইনস, বেজিয়ার ইত্যাদি) ব্যবহার করা সংঘর্ষ-সনাক্তকরণ বা আকারগুলি বিয়োগ করার মতো জিনিসের জন্য অনেক বেশি সিপিইউ ভারী।
উত্সটির দিকে তাকানো

4
এই হিসাবে গণ্য জ্যামিতি খুব জটিল, খুব দ্রুত পেতে পারেন!
অ্যাডাম হার্টে

গুগলিং "বক্স 2 ডি ধ্বংসাত্মক ভূখণ্ড" এখন কয়েকটি চালানো ভেক্টর ডেমো দেয়।
সিরো সান্তিলি 新疆 改造 中心 法轮功 六四 事件

6

গঠনমূলক কঠিন জ্যামিতি ব্যবহার করুন

আমি ধারণার একটি প্রমাণ লিখেছিলাম যা ধ্বংসাত্মক অঞ্চল পরিচালনা করতে গঠনমূলক শক্ত জ্যামিতি ব্যবহার করে । বুলিয়ান অপারেশন করতে আমি জিএলইউ টেসেললেটর ব্যবহার করেছি। ডকুমেন্টেশন কিভাবে জন্য অনুসন্ধান ব্যাখ্যা "CSG বিধি ঘুর জন্য ব্যবহার করে"

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

POC পরবর্তী পদক্ষেপ (যা আমি প্রায় কখনই পেয়েছিলাম) ব্যবহার করতে ছিল SCC থেকে অ্যালগরিদম বুস্ট গ্রাফ যখন ভূখণ্ড এক টুকরা ছিন্ন হয়েছে সনাক্ত করতে (শীর্ষ বন্ধ একটি পর্বত কেটে) গ্রন্থাগারের। বিচ্ছিন্ন ভূখণ্ডটি এখনও ধ্বংসাত্মক হবে তবে এখন এটি একটি গতিশীল (অ-স্থিতিশীল) বক্স 2 ডি বডি দ্বারা আকার হিসাবে যুক্ত ত্রিভুজগুলির দ্বারা প্রতিনিধিত্ব করে। আমি ডিজাইনের কাজ শেষ করে ফেললাম তবে একবার আমি উত্সাহিত ডকুমেন্টেশনটিতে খনন শুরু করি interest আমি কোনও দিন ঝলসানো পৃথিবী / কৃমি খেলা তৈরি করার সময় আমি এই ধারণাটি পুনর্বিবেচনার "পরিকল্পনা" করছি।


5

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

অবশ্যই এটি আপনার প্রকল্পের উচ্চাকাঙ্ক্ষার উপর সম্পূর্ণ নির্ভর করে। তবে আপনি যদি এটি সত্যিই দুর্দান্ত দেখতে চান তবে সম্ভবত আপনার পদার্থবিজ্ঞানের ইঞ্জিন হিসাবে বক্স 2 ডি চেষ্টা করা উচিত । এটির সাথে আপনি অনেক কিছু করতে পারেন।


3
কৃমিগুলিতে আপনি একটি টর্চ ব্যবহার করে ল্যান্ডস্কেপ দিয়ে একটি গর্ত খনন করতে পারেন। এত মজার কিছু হবে না যদি সেই সুড়ঙ্গটি কেবল আপনার দরিদ্র টর্চ-চালিত কৃমিতে পড়ে যায়। বাতাসে "ভাসমান" ল্যান্ডস্কেপের টুকরো থাকাও সম্ভব ছিল। আপনার প্রস্তাবটি একটি মজাদার আইডিয়াসের মতো শোনাচ্ছে, কেবল একটি পোকার মতো খেলা নয়।
বামমজ্যাক

এটি ছিল পুরো বিষয়টি, আমি সেই গেমপ্লেটির বিভিন্নতা নিয়ে ভাবছিলাম। এছাড়াও, ল্যান্ডস্কেপের কিছু অংশ অবিনাশী এবং / বা বায়ুতে স্থায়ীভাবে স্থগিত হতে পারে, যা আপনাকে "ভাসমান" ব্লক তৈরি করতে দেয়। এছাড়াও, কিছু লোকেরা তাদের উপর ধ্রুবক প্রয়োগ করতে পারে, এগুলি উপরের দিকে বা পাশের দিকে টেনে নিয়ে যেতে পারে, যেমন গু-র ওয়ার্ল্ডে বাতাসের বলগুলি কী করেছিল।
Septagram

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

ঠিক আছে, এক্ষেত্রে বিটম্যাপের অনমনীয় দেহগুলি কোনওভাবেই চলবে না, পরিবর্তে, আমি স্থলভাগের সাথে সংযুক্ত, উল্লম্বের ত্রিভুজাকার গ্রিড হিসাবে একটি ল্যান্ডস্কেপ তৈরি করব। তুমি কি গু-র সংসার খেল? যদি তা না হয় তবে স্ক্রিনশটগুলি দেখুন: vgchartz.com/games/pics/6644424aaa.jpg Doublegames.de/images/screenshots/world-of-goo_1_big.jpg । না, না, না, না, আপনি এটি খেলেন না, আপনি অবশ্যই অবশ্যই :) এখন কল্পনা করুন যে গু বলগুলির পরিবর্তে প্রতিটি ত্রিভুজ আপনার ল্যান্ডস্কেপ টেক্সচারের অংশটি প্রদর্শন করে এবং সেগুলি আরও ছোট। ধ্রুবকগুলি এবং আপনার ল্যান্ডস্কেপগুলির সাথে চারপাশে
ফ্রেড

2
কটাক্ষপাত করা শারীর ইঞ্জিন । পুরো ইঞ্জিন এই ধারণাটিকে কেন্দ্র করে তৈরি করা হয় যে সবকিছুই একটি বিকৃত / ধ্বংসাত্মক জাল (গু-র একটি টাওয়ারের মতো)।
deft_code

3

যেমন বামমজ্যাক বলেছিল বিটম্যাপস। যদিও আপনি 1 বিট ট্রান্স্পেরেন্সী ব্যবহার করতে পারেন বা আপনার যদি সেই সমর্থন না থাকে তবে আপনি আপনার গেমটিতে ব্যবহার করবেন না এমন একটি ভয়াবহ গোলাপী রঙ ব্যবহার করুন।

প্রভাবের পয়েন্টটি পিক্সেলের রঙটি পরীক্ষা করেই গণনা করা যায়। এবং যখন কোনও প্রভাব দেখা দেয় তখন বিটম্যাপের রঙ পরিবর্তন করুন (বা এটি মুছুন)।

বিস্ফোরণের ব্যাসার্ধের জন্য আমার প্রথম স্টপটি হবে ব্রেনহ্যামের বৃত্ত অ্যালগরিদম , খুব দ্রুত এবং দক্ষ। যদিও আমি প্রথমে একটি বর্গক্ষেত্রের মতো কিছু দিয়ে একটি মুছা মুছুন এবং প্রান্তটি পেতে বৃত্তটি চারদিকে রাখি।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.