Heightmaps
উচ্চতা ম্যাপের সাহায্যে আপনি প্রতিটি শীর্ষবিন্দুর জন্য সাধারণত উচ্চতার উপাদান সংরক্ষণ করেন (সাধারণত 2 ডি টেক্সচার হিসাবে) এবং পুরো কোয়াডের জন্য কেবল একবার অবস্থান এবং রেজোলিউশন সরবরাহ করে। ল্যান্ডস্কেপ জ্যামিতি জ্যামিতি শেডার বা হার্ডওয়্যার টেসলেশন ব্যবহার করে প্রতিটি ফ্রেম তৈরি করা হয়। সংঘর্ষ সনাক্তকরণের জন্য ল্যান্ডস্কেপ ডেটা সংরক্ষণের দ্রুততম পথ হাইটম্যাপস।
পেশাদাররা:
তুলনামূলকভাবে কম মেমোরির ব্যবহার : আপনার কেবল প্রতি ভার্টেক্সের জন্য একটি মান সংরক্ষণ করতে হবে এবং কোনও সূচক নেই। অনুমিত বিশদটি বাড়ানোর জন্য বিশদ মানচিত্র বা একটি শোর ফিল্টার ব্যবহার করে এটি আরও উন্নতি করা সম্ভব।
তুলনামূলকভাবে দ্রুত : উচ্চতা ম্যাপের জ্যামিতি শেডারটি ছোট এবং দ্রুত চলে। এটি জ্যামিতির ভূখণ্ডের মতো দ্রুত নয়।
ত্রিভুজ ভিত্তিক 3 ডি ত্বরণবিহীন সিস্টেমে রশ্মি মার্চিং উচ্চতা ম্যাপগুলি অঞ্চলকে রেন্ডার করার দ্রুততম উপায়। এটি পুরানো গেমগুলিতে ভোক্সেল গ্রাফিক্স হিসাবে উল্লেখ করা হয়েছিল।
ডায়নামিক লোড / ভূখণ্ড : ক্যামেরা থেকে দূরত্বের ভিত্তিতে উত্পন্ন জালের রেজোলিউশন পরিবর্তন করা সম্ভব। রেজোলিউশনটি খুব বেশি দূরে (0:40 প্রায়) নেমে গেলে এটি স্থানান্তরিত জ্যামিতির কারণ ঘটবে, তবে আকর্ষণীয় প্রভাবের জন্য ব্যবহার করা যেতে পারে।
সহজ ভূখণ্ড প্রজন্ম / সৃষ্টি : ফ্র্যাক্টাল পার্লিন নয়েজ এবং হাইটম্যাপ সম্পাদকগণ ব্যবহারের জন্য দ্রুত এবং সহজেই হ'ল হাইটম্যাপগুলি সহজেই তৈরি করা যায় noise উভয় পন্থা একত্রিত করা যেতে পারে। এডিটরের সাথে এগুলি কাজ করাও সহজ।
দক্ষ পদার্থবিজ্ঞান : একটি অনুভূমিক অবস্থান মেমরির এক থেকে চারটি অবস্থানের জন্য সরাসরি (সাধারণত) মানচিত্র করে, তাই পদার্থবিজ্ঞানের জ্যামিতি অনুসন্ধানগুলি খুব দ্রুত।
কনস:
X / y স্থানাঙ্ক প্রতি ঠিক এক উচ্চতা : সাধারণত জমি বা গিরিখাতগুলিকে ওভারহেঞ্জিংয়ের ছিদ্র হতে পারে না।
কম নিয়ন্ত্রণ : গ্রিডের আকার টেক্সচারের স্থানাঙ্কের সাথে মেলে তবে আপনি প্রতিটি পয়েন্টের সঠিক উচ্চতা নিয়ন্ত্রণ করতে পারবেন control
হস্তনির্মিত : চার ছেদচিহ্ন করে একটি উপ-চতুর্ভুজ সংজ্ঞায়িত একই প্লেনে না হন, তাহলে দুই ছেদচিহ্ন ভাগাভাগি দৃশ্যমান হতে হবে। এটি সাধারণত খাড়া খাড়াগুলির সাথে এমন প্রান্তগুলির সাথে ঘটে যা একটি মূল দিক অনুসরণ করে না।
হাইটম্যাপগুলি ভূখণ্ডকে উপস্থাপনের সবচেয়ে কার্যকর উপায় হ'ল এবং অনেকগুলি নতুন গেমগুলিতে ব্যবহৃত হয় যা উন্নত ভূখণ্ডের বৈশিষ্ট্যগুলিতে নির্ভর করে না এবং বড় বহিরাগত অঞ্চল রয়েছে have উইকিপিডিয়া প্রোগ্রাম ব্যবহার heightmaps একটি তালিকা রয়েছে , কিন্তু আমি নিশ্চিত যদি মানে তারা শুধুমাত্র তাদের সম্পদ হিসাবে এছাড়াও উপস্থাপনার জন্য, তাই এখানে একটি কিছু গেম যে ব্যবহার করুন অথবা নই সম্ভবত তাদের ব্যবহার করার জন্য:
কেবল কারণ 2: অঞ্চলগুলি স্কোয়ার সেক্টরে লোড করা হয় এবং অঞ্চলটিতে কোনও গর্ত নেই। ডেমোতে, প্রান্তগুলি বরাবর প্রসারিত ত্রিভুজযুক্ত একটি গভীর গর্ত রয়েছে যেখানে সাধারণভাবে একটি বিল্ডিং থাকবে। (অঞ্চলটি সাধারণত অ্যাক্সেসযোগ্য নয়, তবে ডেমোর কিছু সীমাবদ্ধতা অপসারণ করার পদ্ধতি রয়েছে ...)
সিমস 2 ( সম্ভবত ): আশেপাশের অঞ্চলগুলি হাইটম্যাপ হিসাবে লোড করা হয়েছে তবে এমন অনেকগুলি গর্ত রয়েছে যেখানে প্রচুর (বিল্ডিং সাইট) স্থাপন করা হয়েছে। আপনি যদি প্রচুর পরিমাণে ক্লিফ তৈরি করেন তবে সাধারণ শৈল্পিকাগুলি রয়েছে, তবে কোনও ঘরে একটি ভাণ্ডার যুক্ত করা (এবং একটি বারান্দার নীচে ক্লিফটি লুকিয়ে রাখা) বেশ ক্লান্তিকর।
ভালভের সোর্স ইঞ্জিন গেমস: আয়তক্ষেত্রাকার ব্রাশগুলি (স্ট্যাটিক লেভেল জ্যামিতি) তাদের চেহারায় উচ্চতা সম্পন্ন ভূখণ্ড থাকতে পারে। এই গেমগুলিতে, স্বাভাবিক কিরকগুলি প্রায়শই অন্যান্য ব্রাশ বা প্রপসের সাথে লুকানো থাকে।
শেডারগুলি না দেখে নিশ্চিতভাবে বলা অসম্ভব কারণ প্রতিটি উচ্চতা ম্যাপ অঞ্চলটি জাল হিসাবে উপস্থাপন করা যেতে পারে।
Voxels
ভক্সেল ভূখণ্ড একটি 3D গ্রিডে প্রতিটি পয়েন্টের জন্য টেরিনের ডেটা সঞ্চয় করে। আপনি বিচ্ছিন্ন অক্ট্রিজের মতো সংকোচনের পদ্ধতি ব্যবহার করলেও এই পদ্ধতিটি সর্বদা অর্থবহ তল বিশিষ্ট সর্বাধিক স্টোরেজ ব্যবহার করে।
("ভোক্সেল ইঞ্জিন" শব্দটি প্রায়শই পুরানো 3 ডি গেমগুলিতে রে মার্চিং টেরিটেন হাইটম্যাপস পদ্ধতি ব্যবহার করার জন্য ব্যবহৃত হত This এই বিভাগটি কেবলমাত্র ভক্সেল ডেটা হিসাবে সংরক্ষিত ভূখণ্ডের ক্ষেত্রে প্রযোজ্য))
পেশাদাররা:
অবিচ্ছিন্ন 3 ডি ডেটা : ভক্সেলগুলি আকরিক শিরাগুলির মতো লুকানো ভূখণ্ডের বৈশিষ্ট্যগুলি সম্পর্কে ধারাবাহিক ডেটা সংরক্ষণ করার একমাত্র কার্যকর উপায়।
সংশোধন করা সহজ : সঙ্কুচিত ভক্সেল ডেটা সহজেই পরিবর্তন করা যায়।
উন্নত ভূখণ্ডের বৈশিষ্ট্য : ওভারহ্যাঙ্গ তৈরি করা সম্ভব। টানেলগুলি নির্বিঘ্ন।
আকর্ষণীয় ভূখণ্ড প্রজন্ম : মাইনক্রাফ্ট শব্দটি ফাংশন এবং পূর্বনির্ধারিত ভূখণ্ডের বৈশিষ্ট্যগুলি (গাছ, অন্ধকূপ) সহ গ্রেডিয়েন্টগুলি দিয়ে এটি করে। ( আরও তথ্যের জন্য টেরিন জেনারেশন, খাঁজের ব্লগে অংশ 1 পড়ুন । 05.8.2011 হিসাবে কোনও অংশ 2 নেই))
কনস:
ধীর : ভক্সেল ডেটা রেন্ডার করতে আপনাকে একটি রে ট্রেসার ব্যবহার করতে হবে বা একটি জাল গণনা করতে হবে, উদাহরণস্বরূপ মার্চিং কিউব সহ (সেখানে নিদর্শনগুলি থাকবে)। প্রতিবেশী ভক্সেল জাল প্রজন্মের জন্য স্বতন্ত্র নয় এবং শেডারগুলি আরও জটিল এবং সাধারণত আরও জটিল জ্যামিতি উত্পাদন করে। উচ্চ এলওডির সাথে ভক্সেল ডেটা রেন্ডারিং খুব ধীর হতে পারে।
বিশাল স্টোরেজ প্রয়োজনীয়তা : ভক্সেল ডেটা সঞ্চয় করা প্রচুর স্মৃতি ব্যবহার করে । এটি প্রায়শই এই কারণে ভিআরএএম-তে ভক্সেল ডেটা লোড করা অনুশীলনীয় নয়, কারণ এটির জন্য ক্ষতিপূরণ দেওয়ার জন্য আপনাকে এমনকি ছোট ছোট টেক্সচার ব্যবহার করতে হবে এমনকি আধুনিক হার্ডওয়্যারগুলিতেও।
গেমগুলির জন্য ভক্সেলগুলি ব্যবহার করা ব্যবহারিক নয় যা বিকৃত অঞ্চলগুলির মতো ভক্সেল বৈশিষ্ট্যের উপর নির্ভর করে না, তবে এটি কিছু ক্ষেত্রে আকর্ষণীয় গেম মেকানিক্সকে মঞ্জুরি দেয়। ভোকসেল ইঞ্জিনগুলি পুরানো গেমগুলিতে বেশি দেখা যায় তবে আরও নতুন উদাহরণ রয়েছে:
পরমাণু ইঞ্জিন : ভক্সেল রেন্ডারিং।
কৃমি 4: "পক্সেল" ব্যবহার করে। উইকিপিডিয়া অনুসারে এটি ভক্সেল এবং বহুভুজগুলির মিশ্রণ।
মাইনক্রাফ্ট: রামে ভূখণ্ডকে উপস্থাপন করতে ভক্সেল ব্যবহার করে, গ্রাফিকগুলি বহুভুজ গ্রাফিক্স। এটি বেশিরভাগ সফ্টওয়্যার যদিও গণনা করা হয়।
টেরারিয়া: 2 ডি ভক্সেলের উদাহরণ। আমি জানি না কীভাবে এটি রেন্ডার হয়।
পদার্থবিজ্ঞানের সাথে মিলিত ভক্সেলগুলি : কোনও খেলা নয়। তবে এটি ধ্বংসের সম্ভাবনা সুন্দরভাবে প্রদর্শন করে।
ভক্সাস্ট্রন : মেনু এবং এইচডি সহ প্রায় সমস্ত গ্রাফিকের জন্য ভক্সেল ব্যবহার করে এমন একটি গেম।
meshes
বহুভুজ মেশি অঞ্চল সংরক্ষণ ও রেন্ডারিংয়ের সবচেয়ে নমনীয় এবং সুনির্দিষ্ট উপায়। এগুলি প্রায়শই গেমগুলিতে ব্যবহৃত হয় যেখানে সুনির্দিষ্ট নিয়ন্ত্রণ বা উন্নত ভূখণ্ডের বৈশিষ্ট্য প্রয়োজন।
পেশাদাররা:
খুব দ্রুত : আপনাকে কেবল ভার্টেক্স শ্যাডারে স্বাভাবিক প্রজেকশন গণনা করতে হবে। জ্যামিতি শেডারের প্রয়োজন নেই।
খুব সুনির্দিষ্ট : সমস্ত স্থানাঙ্কগুলি প্রতিটি শীর্ষবিন্দুর জন্য স্বতন্ত্রভাবে সংরক্ষণ করা হয়, সুতরাং এগুলি অনুভূমিকভাবে সরানো এবং সূক্ষ্ম বিশদ সহ স্থানে জাল ঘনত্ব বাড়ানো সম্ভব।
কম স্মৃতি প্রভাব : এর অর্থ হ'ল জালটির জন্য সাধারণত হাইগেম্যাপের চেয়ে কম মেমরির প্রয়োজন হবে কারণ ছোট ছোট বৈশিষ্ট্যযুক্ত অংশগুলিতে উল্লম্বগুলি বেশি স্পার হতে পারে।
( উইকিপিডিয়ায় ত্রিভুজযুক্ত অনিয়মিত নেটওয়ার্ক দেখুন )।
কোনও শৈলী নয় : জাল যেমন হয় তেমন রেন্ডার করা হয়, সুতরাং কোনও গ্লিটস বা অদ্ভুত-দর্শনীয় সীমানা থাকবে না।
উন্নত ভূখণ্ডের বৈশিষ্ট্য : গর্তগুলি ছেড়ে দেওয়া এবং ওভারহ্যাঙ্গ তৈরি করা সম্ভব। টানেলগুলি নির্বিঘ্ন।
কনস:
দরিদ্র গতিশীল এলওডি : প্রাক্পম্পিউটেড মেস দিয়ে কেবল সম্ভব possible পুরানো নতুন শিখরে ম্যাপ করতে অতিরিক্ত ডেটা ছাড়াই স্যুইচ করার সময় এটি "জাম্প" তৈরি করবে।
সংশোধন করা সহজ নয় : সংশোধন করা উচিত এমন একটি অঞ্চলের সাথে মিলে এমন শীর্ষগুলি খুঁজতে স্লো ing
সংঘর্ষ সনাক্তকরণের জন্য খুব দক্ষ নয় : উচ্চতা ম্যাপ এবং ভক্সেল ডেটার বিপরীতে একটি নির্দিষ্ট অবস্থানের মেমরি ঠিকানা সাধারণত সরাসরি গণনা করা যায় না। এর অর্থ পদার্থবিজ্ঞান এবং গেম যুক্তি যা সঠিক পৃষ্ঠের জ্যামিতির উপর নির্ভর করে সম্ভবত অন্যান্য স্টোরেজ ফর্ম্যাটগুলির চেয়ে ধীর গতিতে চলবে।
বহুভুজ ভূখণ্ড প্রায়শই এমন গেমগুলিতে ব্যবহার করা হয় যেগুলির খোলার বৃহত অঞ্চল নেই বা উচ্চতা ম্যাপ অঞ্চলটি তার যথার্থতা এবং ওভারহ্যাংসের অভাবে ব্যবহার করতে পারে না। আমার একটি তালিকা নেই, তবে আমি এটি নিশ্চিত
প্রতি 3D জেলদা এবং
প্রতি 3D মারিও গেম
এটা ব্যবহার কর.
অন্যান্য পদ্ধতি
শেডার পাইপলাইনে পুরোপুরি একটি ভূখণ্ড তৈরি করা সম্ভব। যদি অ্যালগরিদম কেবল খণ্ড / পিক্সেল শেডারে চালিত হয় তবে মেমরির প্রভাব প্রায় শূন্যের মধ্যে বিশদটি কার্যত সীমাহীন হতে পারে। যখন ক্যামেরাটি মূল রেন্ডারিং পৃষ্ঠকে ছেদ করে তখন সুস্পষ্ট ডাউনসাইডগুলি আকার এবং সমস্যার উপর প্রায় কোনও নিয়ন্ত্রণ থাকে না। এটি এখনও স্পেস গেমগুলিতে কার্যকর যেখানে প্লেয়াররা কোনও গ্রহের পৃষ্ঠের সাথে ইন্টারঅ্যাক্ট করে না। এই জাতীয় ভূখণ্ডের সাথে প্যারামিটার অ্যানিমেশনগুলি সবচেয়ে ভাল কাজ করে।
গ্রাফিক্স কার্ড থেকে জেনারেটেড টেরিন জ্যামিতিটি এটি গেমের বাকী ইঞ্জিনের জন্য ব্যবহার করার জন্য ডাউনলোড করা সম্ভব হবে, তবে আমি জানি না যে এর পারফরম্যান্সটি কীভাবে হয়েছে বা এটি এখনও পর্যন্ত করা হয়েছে কিনা I
উপসংহার
এমন কোনও পদ্ধতি নেই যা প্রতিটি দৃশ্যের জন্য ভাল কাজ করে তবে নির্দিষ্ট কাজের জন্য একটি বেছে নেওয়া মোটামুটি সহজ:
হাইটারম্যাপগুলি হ'ল সলিউশন হ'ল যদি আপনার ভূখণ্ডের উপরিভাগের ওভারহ্যাং বা গর্তের প্রয়োজন না হয় এবং পদার্থবিজ্ঞান বা গতিশীল অঞ্চল ব্যবহার না করেন। তারা স্কেলেবল এবং বেশিরভাগ গেমের জন্য ভাল কাজ করে।
মেসে সর্বাধিক নির্ভুলতা রয়েছে এবং ওভারহ্যাং, গর্ত এবং টানেলগুলি বর্ণনা করতে পারে। আপনার যদি এমন জটিল অঞ্চল থাকে যা প্রায়শই পরিবর্তন হয় না তবে এগুলি ব্যবহার করুন।
ভক্সেলগুলি অনেক জটিল বৈশিষ্ট্যযুক্ত খুব গতিশীল অঞ্চল বর্ণনা করার জন্য ভাল। তাদের প্রচুর পরিমাণে মেমরি এবং প্রক্রিয়াকরণের প্রয়োজন হওয়ায় এগুলি সরাসরি রেন্ডারিং এড়িয়ে চলুন।
উপরের যে কোনওটির তুলনায় অন্যান্য পদ্ধতিগুলি ভাল হতে পারে যদি আপনাকে এই অঞ্চলের সাথে যোগাযোগ করতে না হয় বা খুব বিশদ গ্রাফিক্সের প্রয়োজন হয় না। এগুলি সাধারণত খুব নির্দিষ্ট পরিস্থিতিতে জন্য কাজ করে।
একাধিক থেকে বৈশিষ্ট্য পেতে বিভিন্ন পদ্ধতি একত্রিত করা সম্ভব, উদাহরণস্বরূপ একটি ক্লিফের বিশদ কাঠামো বাড়ানোর জন্য উচ্চতা ম্যাপের সাথে জাল ভূখণ্ডকে টেসেলেল্ট করে।
গতিশীল ভূখণ্ডের জেনারেশন প্রসেসরিয়াল স্পেস সিমুলেশনে প্রচুর পরিমাণে ব্যবহৃত হয় এবং কেউ কেউ গত বছরগুলিতে সত্যই উন্নত হয়ে থাকে । এই প্রকল্পগুলির ফোরামে বিষয়টিতে কিছু সংস্থান থাকতে হবে।