ভিডিও গেমগুলিতে কীভাবে 3 ডি মডেল তৈরি করা হয়?


15

গেমগুলিতে 3 ডি মডেলগুলি কীভাবে ডিজাইন এবং প্রদর্শিত হয়? এটা কি সব কোড? কাগজে আঁকুন, তারপরে একটি 3D গ্রাফিক্স সফ্টওয়্যার, তারপরে ... কী?

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

আমি অনেকটা গুগল করেছি কিন্তু পেশাদার ভিডিও গেমগুলির এই দিকটি কীভাবে কাজ করা হয় তা ব্যাখ্যা করার জন্য আমি শক্ত কিছু খুঁজে পাইনি।


2
এখানে শিল্প প্রক্রিয়ার একটি চমত্কার বাস্তবসম্মত ডকুমেন্টেশন salvationprophecy.com/forum/viewtopic.php?f=4&t=413
নীল উইজার্ড

হুম ... এটির উত্তর দেওয়া বা গঠনমূলক নয় এমনটি খুব বিস্তৃত হিসাবে বিবেচিত হতে পারে। তবে একই সাথে এমন কাউকে জিজ্ঞাসা করা যুক্তিসঙ্গত বলে মনে হয় যে কখনও গেমদেবের কাছে যায়নি এবং শেখা শুরু করতে চায় এবং এটির একটি ভাল উত্তর দেওয়া যেতে পারে। সুতরাং, এটি বন্ধ হওয়া উচিত কিনা তা নিশ্চিত নন।
লরেন্ট কুইভিডু

1
সাধারণত যারা মডেলগুলি করেন তাদের বলা হয় শিল্পী , না ডিজাইনার : চরিত্র শিল্পী, পরিবেশ শিল্পী, অ্যানিমেটার ... গেম ডিজাইনার আসল গেমটি, এর নিয়মগুলি ইত্যাদির নকশা সম্পর্কে আরও বেশি
লরেন্ট কুইভিডু

উত্তর:


16

আমি যে সমস্ত গেমগুলিতে কাজ করেছি সেগুলিতে সম্পদ তৈরি পাইপলাইনটি এরকম কিছু করে:

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

    জ্যামিতির একক টুকরো হিসাবে সম্পূর্ণ স্তরের জন্য নির্মিত এটির অস্বাভাবিক। বেশিরভাগ স্তরগুলি টুকরো বা বিভাগগুলি দ্বারা নির্মিত। (যেমন: কুখ্যাত ষড়ভূজ একটি সেট ব্যবহার করা "টাইলস" http://www.gamasutra.com/php-bin/news_index.php?story=118581 এবং এই Skyrim (এবং আরও অনেক কিছু) টুকরা একসঙ্গে মাত্রা একটি লেগো শৈলী পদ্ধতির ব্যবহার HTTP- র : //www.gmasutra.com/blogs/JoelBurgess/20130501/191514/ )

    এই প্রক্রিয়াটিতে সাধারণত কিছু বর্ণনার একটি স্তরের সম্পাদক থাকে যদিও অনেক গেম 3 ডি মডেলারদের "স্তরের সম্পাদক" হিসাবে আগে তৈরি সম্পদ তদারকির জন্য ব্যবহার করে।

  5. একবার এই সমস্ত হয়ে গেলে, সম্পদগুলি সাধারণত সরঞ্জামচেইন দ্বারা প্রক্রিয়া করা হয় যা 3 ডি মডেলারের বন্ধুত্বপূর্ণ ফাইলগুলিকে গেম রেডি ডেটাতে পরিণত করে যা সরাসরি রানটাইমের মধ্যে লোড হতে পারে।

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

    দ্য রানটাইম খেলা নিজেই। এক্সিকিউটেবল যা আপনার পিসি বা কনসোলে চলে। রানটাইমের অভ্যন্তরে রিসোর্স ম্যানেজার নামে একটি সিস্টেম থাকবে। গেমের মধ্যে অন্যান্য সিস্টেমের দ্বারা অনুরোধ করা সম্পদগুলি লোড করা রিসোর্স ম্যানেজারের কাজ।

    উদাহরণস্বরূপ: যখন আপনি গেমটিকে কোনও স্তরের লোড বলবেন, স্তরটির মেটাডেটা রিসোর্স ম্যানেজারকে একটি তালিকা সরবরাহ করবে যাতে স্তরটি প্রদর্শন করতে কোন সম্পদ লোড করা দরকার। তেমনিভাবে, প্রতিটি সম্পত্তিতে যে কোনও টেক্সচার, উপকরণ বা সাব অ্যাসেটগুলির বোঝা প্রয়োজন to

  6. একবার সবকিছু আসলে স্মৃতিতে লোড হয়ে যায়। গেমটি এমন জিনিস প্রেরণ করবে যা রেন্ডারারের কাছে দৃশ্যমান এবং এরপরে স্ক্রিনে জিনিসগুলি আঁকতে ব্যবহৃত এপিআইয়ের সাথে যোগাযোগ করবে।

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

সাধারণত অনস্ক্রিনের 99% অবজেক্ট প্রাক-উত্পন্ন উত্সবিন্যাসের তথ্যগুলি "পুনরুদ্ধার" মোডে রেন্ডার করা হবে, শেডারগুলি যে কোনও ম্যানিপুলেশন সম্পাদন করে With যেমন: চর্মযুক্ত অ্যানিমেশন


7

এখানে একটি সহজ উত্তর: তারা মায়া বা 3 ডিএস ম্যাক্সের মতো 3 ডি গ্রাফিক্স অ্যাপ্লিকেশনগুলিতে এগুলি করে। প্রথমে তারা কিছু ধারণা আর্ট করেন (কাগজে), তাদের মতে তারা মডেল, টেক্সচার তৈরি করেন (ফটোশপে বা এরকম কিছু)। সাধারণ অ্যানিমেশনগুলি সফ্টওয়্যারটিতেও সম্পূর্ণ করা হয়, আরও জটিল অ্যানিমেশনগুলি মোশন ক্যাপচারের মাধ্যমে করা হয় এবং তারপরে আপনার মডেলটিতে ম্যাপ করা হয়। অ্যানিমেশনের জন্য আপনি সাধারণত কঙ্কাল অ্যানিমেশন ব্যবহার করেন।

এই সমস্ত ডেটা ফাইলগুলিতে সংরক্ষণ করা হয়।

আপনার গেমটি শুরু হয়ে গেলে, এটি এই সমস্ত ফাইলগুলিকে পার্স করে এবং মডেল, টেক্সচার, অ্যানিমেশনগুলি লোড করে। এবং যখন এটি প্রয়োজন হয়, এটি তাদের প্রদর্শন করে।


1
আমি মনে করি পরের দিকে একটি অ্যানিমেশনকে তরলভাবে রূপান্তরিত করার জন্য কিছু প্রোগ্রামিং রয়েছে যাতে আপনি যখন একটি লাফের মাঝখানে গুলি পেয়ে যান তখন অদ্ভুত লাগে না
টমাস

3
@ থমাস, গাছ মিশ্রিত করুন। আমি মনে করি. তবে সেগুলি "টিউনিং" সিস্টেমগুলির মতো যা গেম ইঞ্জিনে এক্সটেনশন হিসাবে তৈরি। অগত্যা 3 ডি মডেলের মধ্যে তৈরি করা হয় না। এগুলি মূলত অ্যানিমেশন ডেটা হাইজ্যাক করে এবং যাদু শক্তিগুলির সাথে ডেটার মধ্যে ইন্টারপোল্ট করে।
সিডার

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

2
যদি কেবল মিশ্রিত গাছ এবং অ্যানিমেশন মর্ফিং "টিউনিং" এর মতো সহজ ছিল। সমস্যার এক নির্দিষ্ট ডোমেনটি মোকাবেলা করার জন্য সেখানে একাধিক উচ্চ-ব্যয়বহুল মিডলওয়্যার সমাধান রয়েছে।
শান মিডলডিচ

4

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

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

আমি আসলে এই কোডটি লেখার ব্যক্তি কখনও হইনি, যদিও, তাই আমার ব্যাখ্যাটির কয়েকটি বিশদ বন্ধ রয়েছে possible


2

আমি একসাথে একটি গেম রাখার চেষ্টা করার জন্য নিজে থেকেই কাজ করছি। আমি আপনাকে যে প্রোগ্রামগুলি ব্যবহার করি তার একটি সহজ তালিকা দিতে পারি।

মডেলিং: 3 ডি কোট, মোডো

রিগিং: মোডো

টেক্সচার: জিআইএমপি, ইনস্কেপ

গেম ইঞ্জিন: ityক্য

স্পষ্টতই এটি অ্যাপ্লিকেশনগুলির একটি ছোট তালিকা, তবে আমার জন্য তারা কাজ করে এবং শখের এবং indie বিকাশকারীদের জন্য সাশ্রয়ী মূল্যের।


2
-1 ব্যবহৃত অ্যাপ্লিকেশনগুলির একটি তালিকা প্রদান প্রক্রিয়াটির বর্ণনা দেয় না। এই প্রশ্নটি নির্দিষ্ট সফ্টওয়্যার সম্পর্কিত নয়, তারা কীভাবে তৈরি হয় তা নয়, তারা কীভাবে তৈরি করে তা সম্পূর্ণ নয় ।
মাইকেলহাউস
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.