Physical image-pixels from Textura that created by D3DPOOL_DEFAULT flag

Started by
13 comments, last by BigBeginner 18 years, 8 months ago
Question is on the topic: I created an texture: D3DXCreateTexture (Device, W,H, 0, D3DUSAGE_RENDERTARGET, D3DFMT_A8R8G8B8, D3DPOOL_DEFAULT, MYTEX); This texture isn't be locked, so I created an another: D3DXCreateTexture (Device, W,H, 0,0, D3DFMT_A8R8G8B8, D3DPOOL_SYSTEMMEM, TEMPTEX); and... TEMPTEX.LOCKRECT physical image-pixels write into it etcetcetc TEMPTEX.UNLOCKRECT UpdateTexture (TEMPTEX, MYTEX); So, it works. But I want to reach the MYTEX's physical datas. But... neither MYTEX.LockRect nor UpdateTexture didn't work. Then... how to ask the MYTEX's physical pixel-datas?
Advertisement
You can only lock default-pool textures if they're dynamic.

Hm, that damned Direct3D doesn't allow me to create dynamic texture :/

D3DXCreateTexture (Device, W,H, 0, D3DUSAGE_DYNAMIC, D3DFMT_A8R8G8B8, D3DPOOL_DEFAULT, MYTEX);

This returns with INVALIDCALL. ://///
Always develop with the debug runtime enabled, and check the debug output. Most probably your driver doesn't support dynamic textures. Check the D3DCAPS2_DYNAMICTEXTURES flag of the D3DCAPS9 structure.

Aham :( so is that impossible to do it, because my driver/card doesn't support it?

Lamma question: where do I set on the DEBUG MODE?

And unfortunatly I use DX8 :)
Quote:Original post by BigBeginner
Aham :( so is that impossible to do it, because my driver/card doesn't support it?

Lamma question: where do I set on the DEBUG MODE?

And unfortunatly I use DX8 :)

With DirectX 8, check the D3DCAPS8 structure [smile]. As for debug mode, you can find more info about this in the Forum FAQ as well as this NeXe entry

Ok, that's OK, my card doesn't support the dinamic textures... but then? Do I put my card into the waste-basket? =)
And there is no DirectX icon in my Control Panel :S Despite I installed DX9
Quote:Original post by BigBeginner
And there is no DirectX icon in my Control Panel :S Despite I installed DX9

You must install the "Debug runtime" when installing the SDK, otherwise the icon won't show.
Find the debug runtime that corresponds to your SDK, and install it.

Quote:Ok, that's OK, my card doesn't support the dinamic textures... but then? Do I put my card into the waste-basket? =)

Not really [smile]
Find another way to achieve your desired effect.

Yes, but how??? This is the question

This topic is closed to new replies.

Advertisement