গেমসে জ্যামিতিক এলওডিতে শিল্পের অবস্থা কী?


15

আধুনিক গেমগুলি কীভাবে অক্ষর, ভূখণ্ড এবং উদ্ভিদের মতো বস্তুর জালের জন্য জ্যামিতির স্তর-বিশদ বিবরণ করে? আমার প্রশ্নের দুটি অংশ রয়েছে:

  1. সম্পদ পাইপলাইন দেখতে কেমন? শিল্পীরা কি উচ্চ-পলি মডেল তৈরি করেন যা পরে ডেসিমেট হয়? যদি তা হয় তবে ডেসিমেশন অ্যালগরিদমগুলি সবচেয়ে জনপ্রিয়? কখনও কখনও হাতের সাহায্যে এলওডি মেসগুলি করা হয়?
  2. কীভাবে ইঞ্জিনগুলি চলমান সময়ে বিভিন্ন অবজেক্ট এলওডির মধ্যে রূপান্তর করতে পারে? কোন মসৃণ বা প্রগতিশীল স্থানান্তর আছে?

উত্তরটি হতে পারে "বিভিন্ন স্টুডিও বিভিন্ন কৌশল ব্যবহার করে।" যদি তা হয় তবে দয়া করে সর্বাধিক প্রচলিত কয়েকটি অনুশীলন সনাক্ত করুন। আপনি যদি নির্দিষ্ট উদাহরণগুলি কভার করে শ্বেতপত্র / স্লাইডগুলিতে আমাকে নির্দেশ করতে পারেন তবে এটি দুর্দান্তও হবে।


1
সাইনগ্রাফ ২০১৪ রিয়েল টাইম রেন্ডারিংয়ের অগ্রগতিতে ডিউটির মহকুমা পৃষ্ঠগুলির কলটিতে সত্যই আকর্ষণীয় আলোচনা হয়। আপনি এটি পরীক্ষা করা উচিত। নিম্ন পলি তৈরি করা একটি উচ্চ পলি জাল থাকার পরিবর্তে তারা বিশ্লেষণাত্মক আকারগুলি সংজ্ঞায়িত করেছেন এবং প্রয়োজন অনুসারে আরও ত্রিভুজ যুক্ত করেছেন
অ্যালান ওল্ফ

আমরা এখানে এলওডির অ্যালগরিদম এবং ডেটা স্ট্রাকচারগুলিতে শিল্পের অবস্থা সম্পর্কে কথা বলতে পারি, তবে আধুনিক গেমগুলি কীভাবে এটি বিশেষভাবে করে তা নিয়ে যদি প্রশ্ন হয় তবে আপনার গেমদেব.সে জিজ্ঞাসা করতে আরও ভাগ্য থাকতে পারে: গেমদেব.স্ট্যাকেক্সেঞ্জ ডটকম
ছদ্মনাম

3
আমি ওটা সন্দেহ করেছি. গেম ডেভ খুব গ্রাফিক্স হালকা। এটি বেশিরভাগ unityক্য এবং জাভা প্রশ্নগুলির সাথে কিছু পথ অনুসন্ধান এবং স্থির ফ্রেমের হারের প্রশ্নগুলি ফেলে দেওয়া হয়েছে: পি
অ্যালান ওল্ফ

1
@ অ্যালান, অ্যাক্টিভিশন একটি বাস্তব থ্রি স্ট্র্যাটেজিক গেম সান আইসোমেট্রিক স্প্রাইট বেস তৈরি করতে অনেকগুলি রাজ্য ব্যবহার করেছে যা আমি তার সাথে ঠিক আছি, তবে তারা সিওডিতে দুর্দান্ত কাজ করেছে তবে এটি এখনও কিছুটা স্বাচ্ছন্দ্য এবং অলস। এমনকি অল্প সংখ্যক সম্পদ সহ প্রাথমিক পর্যায়েও (আমি তাদের আইফোন 5 এস-তে তাদের মোবাইল গেমের কথা বলছি)। আমি মনে করি এ জাতীয় একটি গেমটি লেখার ক্ষেত্রে সাফল্যের জন্য আপনার ওপেনজিএলএস বিশেষজ্ঞ বৈশিষ্ট্য এবং অন্তর্নিহিত স্তরগুলি শিখতে হবে।
ইমান

আমি তাদের কনসোল সংস্করণের কথা বলছি কল অফ ডিউটি ​​যে এটি পরিষ্কার হয়ে যায় সে ক্ষেত্রে।
অ্যালান ওল্ফ

উত্তর:


22

জ্যামিতি এলওডির জন্য বেশিরভাগ গেমগুলি বেশ কয়েকটি পূর্বনির্ধারিত এলওডি মেসের মধ্যে স্যুইচ করে। উদাহরণস্বরূপ "কুখ্যাত: দ্বিতীয় পুত্র" 3 টি এলওডি মেস ব্যবহার করে ( অ্যাড্রিয়ান বেন্টলি - "ইনফ্যামাস: দ্বিতীয় পুত্র ইঞ্জিন পোস্টমর্টেম", জিডিসি 2014 ) এবং "কিলজোন: শ্যাডো ফল" প্রতি চরিত্রে 7 এলওডি মেস ব্যবহার করে ( মিশল ভ্যালিয়েন্ট - "কিলজোন: ছায়া পতন) ডেমো পোস্টমর্টেম ", ডেভস্টেশন ২০১৩ )। এগুলির বেশিরভাগ তৈরি করা হয় তবে আরও গুরুত্বপূর্ণগুলি (মূল চরিত্রের মতো) হাতে তৈরি করা যায়। মেশগুলি প্রায়শই একটি জনপ্রিয় সিম্পিলিগন মিডলওয়্যার ব্যবহার করে তৈরি করা হয় তবে কখনও কখনও এগুলি কেবল তাদের প্রিয় 3 ডি প্যাকেজের গ্রাফিক্স শিল্পীদের দ্বারা উত্পন্ন হয়।

একটি বৃহত ড্র দূরত্বের গেমগুলি অতিরিক্তভাবে ঝোপ , গাছ এবং উচ্চ ভবনের জন্য ইমপোস্টারগুলি ব্যবহার করে ( অ্যাড্রিয়ান বেন্টলি - "ইনফ্যামাস: দ্বিতীয় পুত্র ইঞ্জিন পোস্টমর্টেম", জিডিসি 2014 )। তারা হায়ারার্কিকাল এলওডিও নিয়োগ করে, যা সামগ্রীর সাথে একটি সামগ্রীর সেট প্রতিস্থাপন করে। উদাহরণস্বরূপ "জাস্ট কজ 2" গাছগুলি প্রথমে স্বতন্ত্রভাবে সাধারণ এলওডি মেস হিসাবে পৃথকভাবে রেন্ডার করা হয়, তারপরে স্বতন্ত্রভাবে ইমোস্টার হিসাবে এবং শেষ পর্যন্ত একক মার্জড ফরেস্ট জাল হিসাবে ( এমিল পারসন, জোয়েল ডি ভাহাল - "পপুলেটিং এ ম্যাসিভ গেম ওয়ার্ল্ড", সিগগ্রাফার ২০১৩ ) এবং এর মধ্যে "সানসেট ওভারড্রাইভ" বিশ্বের দূরবর্তী অঞ্চলগুলি একক স্বয়ংক্রিয়ভাবে অফলাইন উত্পাদিত জাল দ্বারা প্রতিস্থাপিত হয় ( এলান রুসকিন - "স্ট্রিমিং সানসেট ওভারড্রাইভের ওপেন ওয়ার্ল্ড", জিডিসি 2015 )।

একটি এলওডি সিস্টেমের আরেকটি উপাদান হ'ল উপকরণ এবং শেডারগুলির সরলীকরণ। উদাহরণস্বরূপ "কিলজোন: শ্যাডো ফল" দূরত্বের এলওডির জন্য স্পর্শকাতর স্থান এবং সাধারণ ম্যাপিং অক্ষম করে ( মিশাল ভ্যালিয়েন্ট - "কিলজোন: শ্যাডো ফল ডেমো পোস্টমর্টেম", ডেভস্টেশন ২০১৩ )। এটি সাধারণত বিশ্বব্যাপী লোডের প্রতি শেডার বৈশিষ্ট্যগুলির একটি সেট অক্ষম করে প্রয়োগ করা হয়, তবে শেডার গ্রাফযুক্ত ইঞ্জিনগুলির জন্য, যেখানে শিল্পীরা কাস্টম শেডার তৈরি করতে পারে, এটি ম্যানুয়ালি করা দরকার।

এলওডি ট্রানজিশনের জন্য কিছু গেমস সহজভাবে মেশিনগুলি স্যুইচ করে এবং কিছু মসৃণ এলওডি ট্রানজিশনের জন্য ডাইরিং ব্যবহার করে - এলওডি সুইচ-এ দুটি মেস রেন্ডার করা হয়: প্রথমে ধীরে ধীরে বিবর্ণ হয়ে যায় এবং দ্বিতীয় বিবর্ণ হয় ( সাইমন স্ক্রাইবট ব্লগ - "অ্যাসেসিনস ক্রিড 3 - লোড ব্লেন্ডিং" )। ক্লাসিক সিপিইউ প্রগতিশীল জাল কৌশলগুলি ব্যবহার করা হয় না কারণ তাদের একটি ব্যয়বহুল জাল আপডেট প্রয়োজন এবং জিপিইউতে আপলোড হয়। হার্ডওয়্যার টেসেললেশন কয়েকটি শিরোনামে ব্যবহৃত হয় তবে কেবলমাত্র সর্বাধিক বিস্তারিত এলওডির সংশোধন করার জন্য এটি ধীর এবং সাধারণ ক্ষেত্রে এটি পূর্বনির্ধারিত জ্যামিতি এলওডিগুলিকে প্রতিস্থাপন করতে পারে না।

টেরিনের এলওডিগুলি নির্দিষ্ট বৈশিষ্ট্যগুলি ব্যবহার করার জন্য পৃথকভাবে পরিচালনা করা হয়। টেরিনের জ্যামিতি এলওডি সাধারণত ক্লিপম্যাপ ব্যবহার করে প্রয়োগ করা হয় (মার্কিন গোলান্ট - "ল্যান্ডস্কেপ তৈরি এবং রেডেনজিন 3 তে রেন্ডারিং" )। ভূখণ্ডের উপাদান LOD গুলি হয় জাল এলওডিগুলির সাথে একইভাবে পরিচালিত হয় বা কোনও ধরণের ভার্চুয়াল টেক্সচার কা চেন ব্যবহার করে - "অ্যাডাপটিভ ভার্চুয়াল টেক্সচার রেন্ডারিং ইন দ্য ক্রি 4

অবশেষে যদি আপনি আসল গেমের এলওডি পাইপলাইনগুলি দেখতে আগ্রহী হন তবে কেবল আধুনিক গেমস ইঞ্জিনগুলির ডকুমেন্টেশনগুলির মাধ্যমে ব্রাউজ করুন: অবাস্তব ইঞ্জিন 4 - "এলওডি তৈরি এবং ব্যবহার করা হচ্ছে" , ক্রেইগিনাইন - স্ট্যাটিক এলওডি এবং ইউনিটি - এলওডি


1
গেম ইঞ্জিনগুলির সাধারণত পূর্বনির্ধারিত পদ্ধতির একটি সেট থাকে এবং আপনি আসলে এলওডির অ্যালগরিদম পরিবর্তন করতে মূল দিকে যেতে পারেন না। আমি কি সঠিক? আমি ওপেনজিএল বা স্প্রিটকিট ফ্রেমওয়ার্কের সাথে আপনি নিজে যে গেমটি লিখছেন সেই বিষয়ে আমি কথা বলছিলাম, আমি জানি না যে কেউ ODক্য বা অবাস্তবতে এলওডির অ্যালগরিদমকে কাস্টমাইজ করতে সক্ষম কিনা, এটি কি সম্ভব?
ইমান

3

এলওডিডি (ডিটেলের স্তরের) অর্থ বিভিন্ন ডিসপ্লে স্কেলে আইটেম পরিচালনা করা, যা দুটি অংশ দ্বারা বিভক্ত হতে পারে। তবে আপনি তাদের মধ্যে একটি ব্যবহার করতে পারেন এবং এটি বেশিরভাগ ক্ষেত্রেই যথেষ্ট।

  1. মাত্রা (প্রদর্শন স্কেল) এর উপর নির্ভর করে স্তরগুলি (একই ধরণের বস্তুর গোষ্ঠী) প্রদর্শন / লুকান hide

  2. বীজগণিত জিওমারি ভিত্তিক পদ্ধতি, যাকে জেনারালাইজেশন বলা হয় (যা বহুভুজকে সহজ করার জন্য একটি অ্যালগরিদম)। নিম্নলিখিত ছবিটি দেখুন

    সাধারণীকরণ

বহুভুজ জালকে সাধারণকরণ (সরলকরণ) করার জন্য সবচেয়ে বিখ্যাত এবং দক্ষ পদ্ধতিটি ডেসকার্টেস-এলিউর পলিহেড্রন উপপাদ্য হিসাবে পরিচিত (সমীকরণ ৪.৫ দুঃখিত যদি আমি কোনও বইয়ের প্রতি উল্লেখ করছি তবে আমি সবচেয়ে ভাল করতে পারি) এবং বেশিরভাগ স্থানিক ডেটাবেস দ্বারা ব্যবহৃত হয় উদাহরণস্বরূপ PostgreSQL এ পোস্টজিআইএস মডিউল। এটি কেবল একটি বহুভুজের ছোট দিক সরিয়ে দেয় এবং একটি খুব বৃত্তাকার তৈরি করে তোলে (উপরের ছবি)

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

  1. 1 / শূন্য = অনন্ত থেকে 1/50
  2. 1/50 থেকে 1/100
  3. 1/100 থেকে 1/1000
  4. 1/1000 থেকে 1 / অনন্ত = 0

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

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

4 টি রেঞ্জের উপরের গ্রুপটি কেবল একটি উদাহরণ এবং আপনাকে বিচার ও ত্রুটির দ্বারা আপনার নিজের কেসের জন্য সেরাটি সন্ধান করতে হবে। এর জন্য কোনও নিয়ম নেই।

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

তবে মনে করুন আপনি ওপেনগল দিয়ে একটি সম্পূর্ণ 3 ডি গেম বাস্তবায়ন করছেন এবং গ্রাফিক হার্ডওয়্যারে স্থানান্তরিত করার আগে আপনি কিছু জাল ফিল্টার করতে চান তবে আমি নিশ্চিত যে এটি আপনাকে বাফার অবজেক্টস এবং ভারটেক্স অ্যারেগুলি (ভিবিও, ভিএও) সহ বাইন্ডিং / আনবাইন্ডিং অপারেশনগুলি হ্রাস করতে সহায়তা করবে sure ওপেনজিএল নিয়ে কাজ করছে।

শুধুমাত্র একটি স্তর পরিচালন ব্যবহার করা বা কেবল এলারের জেনারালাইজেশন প্রয়োগ করা

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

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

পিএস: ম্যাগনিফিকেশনটি একটি ফ্লোট নম্বর> 0 যা 1 / স্কেলের সমান এবং স্কেলটি সাধারণত 1 টি 1: 1 স্কেল এর অর্থ আপনার গেমটিতে আপনার বাস্তবের দৈর্ঘ্য থাকে।


ভোটার নিপাত যাক, আপনি আবার ভোট, যদি এখনও একটি -1 হয় বিবেচনা করুন, me.Thanks জন্য একটি মন্তব্য ত্যাগ করার কথা বিবেচনা করুন
ইমান

আমি ডাউনওয়েট করিনি তবে আমার একটি অংশ অবাক করে দিয়েছিল যে এখানে আর্টের স্যাট কী? সুতরাং আমি ভোট ক্যান আপ না।
joojaa

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

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

3

ইমান ইতিমধ্যে একটি সম্পূর্ণ উত্তর প্রস্তুত করেছে তবে আমি এটিতে কিছু যুক্ত করতে চাই

LOD দুটি ভিন্ন উপায়ে করা যেতে পারে

  1. ক্রমাগত যাকে বলা হয় ক্লোড এবং এটি একটি বহুভুজ জাল অপ্টিমাইজেশন
  2. এই গ্রুপে বিবেচিত বহুভুজ জাল অপ্টিমাইজেশানের চেয়ে প্রায় প্রতিটি অন্যান্য অ্যালগরিদমকে বিযুক্ত করুন।

উদাহরণস্বরূপ, মিপম্যাপিং একটি ভাল, দ্রুত তবে ভারী যা উপরের সেকেন্ডে গ্রুপের অন্তর্গত

এখানে আপনি এমপম্যাপিং এবং ওপেন জিএল সহ বাস্তবায়ন কোড সম্পর্কে একটি ভাল ব্যাখ্যা পেতে পারেন।

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