What should be the max. resolution for the texture? I'm getting D3DRMERR_BADALLOC if the resolution is >= 13K x 13K @ 24bpp on my win8.1 machine with 16GB RAM. Maybe the max resolution might depend on the system? I think setting a max resolution of 4K should be fine, I guess.
Cheers, Aaryaman
On Sat, Mar 26, 2016 at 11:54 PM, Aaryaman Vasishta < jem456.vasishta@gmail.com> wrote:
Err, it's "Direct3DRM Object", instead of "Direct3DRMObject", which I wrote by mistake.
On Sat, Mar 26, 2016 at 11:42 PM, Aaryaman Vasishta < jem456.vasishta@gmail.com> wrote:
Some notes:
I played around with IDirect3DRM::CreateObject a bit, and it also returns REGDB_E_CLASSNOTREG if the proper CLSID is not set. Another interesting note is that passing the same CLSID that worked for CreateObject to CoCreateInstance makes it fail. The SDK setup does in fact add the CLSID's to the registry - it seems that the setup reads d3drm.inf, creates a couple .reg files and runs that to create the registry entries. The only registry entry related to d3drm which the setup adds is "Direct3DRMObject" whose value is {4516EC41-8F20-11d0-9B6D-0000C0781BC3}, which matches that of CLSID_CDirect3DRM. I installed this SDK on my XP VM, yet the tests fail, hmm.
I played around with different CLSCTX values as well - no luck so far.
Cheers, Aaryaman
On Sat, Mar 26, 2016 at 8:09 PM, Aaryaman Vasishta < jem456.vasishta@gmail.com> wrote:
"regsvr32.exe d3drm.dll" returns an error saying DllRegisterServer was not found.
I compiled the test below and ran it on an XP VM (which had the dx7 SDK installed) just to be sure that my native win8.1 box wasn't the issue:
CoInitialize(NULL);
hr = CoCreateInstance(&CLSID_CDirect3DRM, NULL, CLSCTX_INPROC_HANDLER, &IID_IDirect3DRM, &d3drm); ok(hr == D3DRM_OK, "Got %#x for IID_IDirect3DRM\n", hr); hr = CoCreateInstance(&CLSID_CDirect3DRMTexture, NULL, CLSCTX_INPROC_HANDLER, &IID_IDirect3DRMTexture3, &texture3); ok(hr == D3DRM_OK, "Got %#x for IID_IDirect3DRMTexture3\n", hr);
Got the following results:
d3drm.c:4309: Test failed: Got 0x80040154 for IID_IDirect3DRM
d3drm.c:4311: Test failed: Got 0x80040154 for IID_IDirect3DRMTexture3
On Sat, Mar 26, 2016 at 7:55 PM, Stefan Dösinger < stefandoesinger@gmail.com> wrote:
CoCreateInstance(&CLSID_CDirect3DRMTexture, NULL,
CLSCTX_INPROC_SERVER,
&IID_IDirect3DRMTexture3, &texture3) returns REGDB_E_CLASSNOTREG. Am
I
missing something?
Does it work for IDirect3DRM? It may not be supposed to work, although it's also possible d3drm.dll is just not properly registered.
If you copied d3drm.dll from XP you'll most likely have to register it with regsvr32.