আমি মনে করি এটি সাধারণত গৃহীত হয় যে বাস্তব সময়টি ইন্টারেক্টিভের উপরে everything এবং ইন্টারেক্টিভকে "ইনপুটটির প্রতিক্রিয়া হিসাবে চিহ্নিত করা হয় তবে এ্যানিমেশনটি ঝাঁকুনির মতো বলে মনে হয় এটি মসৃণ নয়"।
সুতরাং আসল সময়টি এমন একজনের প্রতিনিধিত্ব করতে হবে এমন গতিগুলির উপর নির্ভর করবে। 24 টি এফপিএসে সিনেমা প্রকল্প এবং বেশ কয়েকটি ক্ষেত্রে যথেষ্ট পরিমাণে আসল সময়।
তারপরে একটি মেশিন কতগুলি বহুভুজ মোকাবেলা করতে পারে তা নিজের জন্য যাচাই করে সহজেই যাচাইযোগ্য। একটি সাধারণ পরীক্ষা এবং একটি এফপিএস কাউন্টার হিসাবে কেবল একটি সামান্য ভিবিও প্যাচ তৈরি করুন, অনেক ডাইরেক্টএক্স বা ওপেনজিএল নমুনা আপনাকে এই বেঞ্চমার্কের জন্য নিখুঁত পরীক্ষার বিছানা দেবে।
আপনি যদি আপনার একটি উচ্চ প্রান্তের গ্রাফিক্স কার্ড থাকে যা আপনি রিয়েল টাইমে প্রায় 1 মিলিয়ন বহুভুজ প্রদর্শন করতে পারেন তা পাবেন। তবে, যেমনটি আপনি বলেছেন, ইঞ্জিনগুলি এত সহজে সমর্থন দাবি করবে না কারণ বাস্তব বিশ্বের দৃশ্যের ডেটা বহুবিধ পারফরম্যান্স হোগের কারণ হতে পারে যা বহুভুজ গণনার সাথে সম্পর্কিত নয়।
তোমার আছে:
- হার পূরণ
- কল আঁকো
- লক্ষ্য সুইচ রেন্ডার
- বাফার আপডেট (ইউনিফর্ম বা অন্যান্য)
- ওভারড্র
- শেডার জটিলতা
- পাইপলাইন জটিলতা (কোনও প্রতিক্রিয়া ব্যবহৃত? পুনরাবৃত্ত জ্যামিতি শেডিং? অবসন্নতা?)
- সিপিইউ সহ সিঙ্ক পয়েন্টস (পিক্সেল রিডব্যাক?)
- বহুভুজ সমৃদ্ধি
একটি নির্দিষ্ট গ্রাফিক কার্ডের দুর্বল এবং শক্তিশালী পয়েন্টগুলির উপর নির্ভর করে এই পয়েন্টগুলির মধ্যে একটি বা অন্যটি বাধা হয়ে দাঁড়াবে। এটি নিশ্চিত নয় যে আপনি নিশ্চিতভাবে বলতে পারেন "সেখানে, সেটাই"।
সম্পাদনা করুন:
আমি এটি যুক্ত করতে চেয়েছিলাম, কেউ একটি নির্দিষ্ট কার্ডের জিএফলপস স্পেক চিত্র ব্যবহার করতে পারে না এবং বহুভুজ ধাক্কা দেওয়ার ক্ষমতাকে লিনিয়ারে মানচিত্র করতে পারে না। যেহেতু বহুবিধ চিকিত্সা গ্রাফিক্স পাইপলাইনে একটি যথাযথ বাধা অতিক্রম করতে হবে কারণ এখানে দুর্দান্ত বিস্তারিতভাবে ব্যাখ্যা করা হয়েছে: https://fgiesen.wordpress.com/2011/07/03/a-trip-through-the-ographic -পাইপলাইন-২০১১-পার্ট -৩ /
টিএলডিআর: আদিম সমাবেশের আগে শীর্ষকে একটি ছোট ক্যাশে ফিট করতে হবে যা মূলত একটি অনুক্রমিক জিনিস (ভার্টেক্স বাফার অর্ডার বিষয়)।
আপনি যদি জিফর্স 7800 (9 বছর বয়সী?) এর সাথে এই বছরের 980 এর সাথে তুলনা করেন তবে মনে হয় এটি প্রতি সেকেন্ডে অপারেশনগুলির সংখ্যা এক হাজার গুণ বেড়েছে। তবে আপনি বাজি ধরতে পারেন যে এটি বহুগুণকে হাজার গুণ দ্রুত ধাক্কা দিচ্ছে না (যা এই সাধারণ মেট্রিক দ্বারা প্রায় 200 বিলিয়ন সেকেন্ড হবে)।
EDIT2:
"রাষ্ট্রের সুইচগুলি এবং অন্যান্য ওভারহেডগুলিতে খুব বেশি দক্ষতা হারাবেন না" হিসাবে "" ইঞ্জিনটি অনুকূলকরণের জন্য কেউ কী করতে পারে "এই প্রশ্নের উত্তর দিতে।
এটি ইঞ্জিন হিসাবে তাদের হিসাবে পুরানো একটি প্রশ্ন। ইতিহাসের অগ্রগতির সাথে সাথে আরও জটিল হয়ে উঠছে।
প্রকৃত বিশ্ব পরিস্থিতিতে, দৃশ্যের দৃশ্যের ডেটাতে অনেকগুলি উপকরণ, অনেকগুলি টেক্সচার, বিভিন্ন বিভিন্ন শেডার, অনেকগুলি লক্ষ্য এবং পাস এবং অনেকগুলি ভার্টেক্স বাফার এবং আরও অনেক কিছু থাকবে। আমি যে ইঞ্জিনের সাথে কাজ করেছি সেগুলি প্যাকেটের ধারণার সাথে কাজ করেছিল:
একটি প্যাকেট হ'ল যা একটি ড্র কল দিয়ে রেন্ডার করা যায়।
এটিতে সনাক্তকারী রয়েছে:
- ভার্টেক্স বাফার
- সূচক বাফার
- ক্যামেরা (পাস এবং লক্ষ্য রেন্ডার দেয়)
- উপাদান আইডি (শেডার, টেক্সচার এবং ইউবিও দেয়)
- চোখের দূরত্ব
- দৃশ্যমান
সুতরাং প্রতিটি ফ্রেমের প্রথম পদক্ষেপটি হ'ল প্যাকেট তালিকায় দ্রুত চালিত করা একটি অপারেটরের সাথে বাছাই ফাংশন ব্যবহার করে যা দৃশ্যমানতাকে অগ্রাধিকার দেয়, তারপরে পাস করুন, তারপর উপাদান, জ্যামিতি এবং শেষ অবধি দূরত্ব দিন।
প্রারম্ভিক জেড কুলিংকে সর্বাধিকীকরণ করতে নিকটবর্তী বস্তুগুলি আঁকতে অগ্রাধিকার পাওয়া যায়।
পাসগুলি স্থির পদক্ষেপ, সুতরাং তাদের সম্মান করা ছাড়া আমাদের আর কোনও উপায় নেই।
লক্ষ্যগুলি রেন্ডার করার পরে স্টেট-স্যুইচ করার জন্য উপাদান হ'ল ব্যয়বহুল।
এমনকি বিভিন্ন উপকরণের আইডি-এর মধ্যে, শেডার পরিবর্তনের সংখ্যা হ্রাস করতে (মেটাল স্টেট-স্যুইচ ক্রিয়াকলাপগুলির মধ্যে সবচেয়ে ব্যয়বহুল) এবং দ্বিতীয়ত টেক্সচার বাইন্ডিং পরিবর্তনগুলির একটি উপ-অর্ডারিং করা যেতে পারে।
এই সমস্ত আদেশের পরেও, কেউ প্রয়োজন মনে করা হলে মেগা টেক্সচার, ভার্চুয়াল টেক্সচার এবং অ্যাট্রিবিউট-কম রেন্ডারিং ( লিঙ্ক ) প্রয়োগ করতে পারে ।
ইঞ্জিন এপিআই সম্পর্কেও একটি সাধারণ বিষয় ক্লায়েন্টের দ্বারা প্রয়োজনীয় রাষ্ট্র-সেটিং কমান্ড জারি করা পিছিয়ে দেওয়া। যদি কোনও ক্লায়েন্ট "সেট ক্যামেরা 0" অনুরোধ করে তবে কেবল এই অনুরোধটি সংরক্ষণ করা ভাল এবং পরে যদি ক্লায়েন্ট "সেট ক্যামেরা 1" কল করে তবে এর মধ্যে অন্য কোনও কমান্ড না থাকলে ইঞ্জিনটি প্রথম কমান্ডের অকেজোতা সনাক্ত করে এটি ফেলে দিতে পারে । এটি অপ্রয়োজনীয় নির্মূলকরণ, যা "সম্পূর্ণরূপে রক্ষিত" দৃষ্টান্ত ব্যবহার করে সম্ভব। "তাত্ক্ষণিক" দৃষ্টান্তের বিরোধিতা করে, যা স্থানীয় এপিআইয়ের উপরে কেবল একটি মোড়ক হবে এবং ক্লায়েন্ট কোডের আদেশ অনুসারে কমান্ডগুলি জারি করবে। ( উদাহরণ: গুণেভ )
এবং পরিশেষে, আধুনিক হার্ডওয়্যার সহ, একটি খুব ব্যয়বহুল (বিকাশমান), তবে সম্ভাব্য উচ্চ ফলপ্রসূ পদক্ষেপটি হ'ল এপিআইটিকে ধাতব / ম্যান্টেল / ভলকান / ডিএক্স 12-স্টাইলে স্যুইচ করা এবং হাতে হাতে রেন্ডারিং কমান্ড প্রস্তুত করা।
একটি ইঞ্জিন যা রেন্ডারিং কমান্ড প্রস্তুত করে একটি বাফার তৈরি করে যা একটি "কমান্ড তালিকা" ধারণ করে যা প্রতিটি ফ্রেমে ওভাররাইট করা হয়।
সাধারণত ফ্রেমের একটি ধারণা "বাজেট" থাকে, একটি গেম সামর্থ করতে পারে। আপনাকে 16 মিলিসেকেন্ডে সবকিছু করতে হবে, সুতরাং আপনি স্পষ্টতই জিপিইউ সময় "লাইটপ্রি পাসের জন্য 2 এমএস", "উপাদানগুলি পাসের জন্য 4 এমএস", "পরোক্ষ আলোতে 6 এমএস", "পোস্টপ্রসেসেসের জন্য 4 এমএস" ভাগ করুন ...