আমি কীভাবে ডাইরেক্টএক্স ব্যবহার করে উপলভ্য ভিডিও মেমোরিটিকে জিজ্ঞাসা করব?


উত্তর:


8

গেম কোডিং সম্পূর্ণ 3 অনুসারে কয়েকটি উপায় রয়েছে:

  • ডিএক্স 7 এর গেটআভ্যারেবলভিডেম () - সাধারণত বেশ ভাল। ভাগ করা মেমরির কার্ডগুলিতে খুব ভাল কাজ করে না।
  • ডাব্লুএমআই (উইন্ডোজ ম্যানেজমেন্ট ইন্টারফেস) উপরের মত একই ফলাফল।
  • DxDiag উভয় ব্যবহার করে আরও ভাল ফলাফল দেয়।
  • ডি 3 ডি 9 এর একটি গেটঅ্যাভিলিটেবল টেক্সচারমেমোরি () ফাংশন রয়েছে তবে কেবল উইন্ডোজ ভিস্তা / 7 এ ব্যবহার করা যেতে পারে।

মার্চ 08 বা তার পরে 'ভিডিওমেমরি' নামে পরিচিত এসডিকে একটি ডিএক্স নমুনার সন্ধান করুন।


ভিডিও মেমোরির জন্য ডিএক্স নমুনা দুর্দান্ত - জিজ্ঞাসা করার আগে এটি পাওয়া উচিত ছিল;)
ভিনসেন্ট শাইব

1
কতগুলি কম্পিউটার ভাগ করা মেমরি ব্যবহার করবে তা বিবেচনা করে, আমি DX7 এর সংস্করণটির প্রস্তাব দেব না। এবং কীভাবে এর ডি 3 ডি 9 সংস্করণটি কেবল ভিস্তা + এ উপলব্ধ হবে?
ডি

5

ভিস্তার উপর এবং পরে DX9EX এর জন্য:

IDXGIDevice * pDXGIDevice;
hr = g_pd3dDevice->QueryInterface(__uuidof(IDXGIDevice), (void **)&pDXGIDevice);
IDXGIAdapter * pDXGIAdapter;
pDXGIDevice->GetAdapter(&pDXGIAdapter);
DXGI_ADAPTER_DESC adapterDesc;
pDXGIAdapter->GetDesc(&adapterDesc);
return adapterDesc.DedicatedVideoMemory;

( http://msdn.microsoft.com/en-us/library/bb174526(v=VS.85).aspx থেকে )


কলিং না Release()উপর pDXGIDeviceপরে একটি সফল কলে QueryInterface()একটি মেমরি লিক হতে হবে।
ভিঞ্জ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.