খুব ধীর ডাইরেক্ট 3 ডি টেক্সচারের নমুনা


9

সুতরাং আমি ডাইরেক্ট 3 ডি 9 ব্যবহার করে একটি ছোট গেম লিখছি এবং আমি ভূখণ্ডের জন্য মাল্টিটেক্সচারিং ব্যবহার করছি। আমি যা করছি তা হ'ল 3 টেক্সচার এবং একটি মিশ্র মানচিত্রের নমুনা তৈরি করা এবং মিশ্রিত মানচিত্রের রঙ চ্যানেলের উপর ভিত্তি করে তিনটি টেক্সচার থেকে সামগ্রিক রঙ প্রাপ্ত। যাইহোক, আমি 1 টির বেশি টেক্সচারের নমুনা দিলে আমি একটি বিশাল ফ্রেম রেট ড্রপ পাচ্ছি, আমি 120+ fps থেকে কেবল 50 এর নিচে চলে যাচ্ছি।

এটি এইচএলএসএল কোডটি ধীর গতির জন্য দায়ী:

float3 ground = tex2D(GroundTex, multiTex).rgb;
float3 stone  = tex2D(StoneTex, multiTex).rgb;
float3 grass  = tex2D(GrassTex, multiTex).rgb;
float3 blend  = tex2D(BlendMapTex, blendMap).rgb;

আমি কি এটা ভুল করছি? কারও কাছে টেক্সচার স্যাম্পলিং বা অন্য যে কোনও বিষয়ে কোনও তথ্য বা টিপস থাকলে তা দুর্দান্ত।

ধন্যবাদ।


আপনার কি হার্ডওয়্যার আছে? চারটি টেক্সচার নমুনা কোনও নতুন হার্ডওয়্যারে সমস্যা হওয়া উচিত নয়।
এক্সেল জিনিটিং ২

আমার একটি রেডিয়ন এক্স 1950 রয়েছে, হ্যাঁ এটি আরও কয়েক বছর না হলেও কয়েক বছর পুরনো। আমি অনুমান করছি এটি সম্ভবত সেরা হার্ডওয়্যার না। আপনি কি মনে করেন ?
ডটমিনিক

উত্তর:


9

আপনি যদি জিনিসগুলি দ্রুত করতে চান তবে আপনি টেক্সচার অ্যাটলাস নামে কিছু ব্যবহার করতে পারেন।

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

জিপিইউর জন্য একবারে একবারে নমুনা করা 4 টি চিত্রের বিপরীতে 4 বার একটি একক বড় টেক্সচার নমুনা করা আরও দক্ষ। এখানে ভূখণ্ডের টেক্সচার অ্যাটলাসের একটি উদাহরণ।

বিকল্প পাঠ


1
পরামর্শের জন্য ধন্যবাদ, আমি টেক্সচার অ্যাটলাস ব্যবহার করে আমার শেডারটি প্রয়োগ করেছি, আমি এখন 109fps পাচ্ছি "তবে আমি যে 55fps পাচ্ছিলাম তা এটি একটি পরিষ্কার উন্নতি। ধন্যবাদ!
ডটমিনিক

1
একটি ভাল উত্তরের জন্য +1। আমি জিজ্ঞাসা করতে পারি আপনি কোথায় এই টেক্সচার অ্যাটলাস চিত্র পেয়েছেন? এটি মালিকানাধীন বা কোনও ব্যবহারের জন্য বিনামূল্যে?
ক্যামেরন

4

আরেকটি বিষয় বিবেচনা করার জন্য টেক্সচার ফর্ম্যাট। এটি কি কোনও কাঁচা 32bpp টেক্সচার? যদি তা হয় তবে একটি সংকুচিত ডিএক্সটি 1 টেক্সচারটি বিবেচনা করুন, যা 4 বিট / পিক্সেল (স্থানের 1/8 তম গ্রহণ), বা ডিএক্সটি 5 আপনার যদি 8 বিট / পিক্সেল এ আলফা চ্যানেলের প্রয়োজন হয়।

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

এছাড়াও, পরীক্ষা করুন যে আপনি সর্বাধিক মানের অ্যানিসোট্রপিক ফিল্টারিং সেট করছেন না - এটি মোটামুটি ব্যয় যোগ করতে পারে।


পরামর্শের জন্য THX, আমি পরের বার চেষ্টা করব।
ডটমিনিট

3

আপনার টেক্সচারে কি মাইপম্যাপস রয়েছে?

মিপম্যাপিং ছাড়াই টেক্সচার স্যাম্পলিং বিশেষ ব্যয়বহুল হতে পারে (ক্যাশে মিস করা লোড)


হ্যাঁ টেক্সচারগুলিতে মিপম্যাপ রয়েছে, আমি এগুলি ডাইরেক্টএক্স টেক্সচার টুল থেকে * .ডিডি হিসাবে রফতানি করেছি। তবে যেখানে পুরো জায়গা জুড়ে হাই ডিএফ টেক্সচার প্রচুর পরিমাণে আছে সেখানে কীভাবে তারা বাণিজ্যিক গেমগুলিতে টেক্সচার ব্যবহার করবেন? আমি কেবল 1 টেক্সচার অ্যাটলাসের নমুনা করছি এবং একটি জিপিইউতে সমস্ত অঞ্চলকে রেন্ডার করার সময় 109 fps এর ফ্রেম রেট পাচ্ছি।
ডটমিনিক
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.