Salut, j'ai besoin de pouvoir locker une texture de type D3DUSAGE_RENDERTARGET pour pouvoir copier les données dans une texture dynamique et pouvoir "flouter" celle ci lors de l'affichage puisque ca n'a pas l'air d'etre possible autrement.
Merci
Salut, j'ai besoin de pouvoir locker une texture de type D3DUSAGE_RENDERTARGET pour pouvoir copier les données dans une texture dynamique et pouvoir "flouter" celle ci lors de l'affichage puisque ca n'a pas l'air d'etre possible autrement.
Merci
pourquoi ne pas utiliser un pixel shader?
Il faut que ta texture de rendu soit lockable. Il y a un flag ou un paramètre à passer pour ça lorsque tu la crées. A moins que ce ne soit que les surfaces de rendu qui soient verrouillables -- enfin regarde du côté de la doc.
Mieux que SDL : découvrez SFML
Mes tutoriels 2D/3D/Jeux/C++, Cours et tutoriels C++, FAQ C++, Forum C++.
Je refuse d'utiliser les pixelshader, question de principe
Je sais qu'on peut faire un backbuffer lockable mais pour les textures de rendu j'ai un doute, je vais chercher.
Comme je l'avais dit, cette fonction ne traite que des surfaces, mais a priori tu n'as de toute façon pas besoin d'une texture pour ce que tu veux faire.IDirect3DDevice9::CreateRenderTarget
Creates a render-target surface.
HRESULT CreateRenderTarget(
UINT Width,
UINT Height,
D3DFORMAT Format,
D3DMULTISAMPLE_TYPE MultiSample,
DWORD MultisampleQuality,
BOOL Lockable,
IDirect3DSurface9** ppSurface,
HANDLE* pSharedHandle
);
Mieux que SDL : découvrez SFML
Mes tutoriels 2D/3D/Jeux/C++, Cours et tutoriels C++, FAQ C++, Forum C++.
Je voudrais juste dire que ce n'est pas viable comme solution. Tout ce qui requiert de lire avec le CPU des données rendues pour les réintroduire dans le pipeline est à déconseiller dans toutes les situations.Envoyé par supergrey
Essaie de trouver une autre méthode pour faire ce que tu veux faire (quelqu'un à suggéré les pixel shaders mais tu peux également faire du flou avec un simple rendu dans une texture et les fonctions du fixed function pipeline(blending, bilinear/anisotropic filtering)), ou modifie tes plans.
LeGreg
Mon site web | Mon blog | Mes photos | Groupe USA
> BONJOUR, JE SUIS NOUVEAU SUR CE FORUM
> presse la touche caps lock, stp
> OH.. MERCI C EST BEAUCOUP PLUS FACILE COMME CA
Au départ je voulais juste augmenter le MAXMIPMAP sur cette texture mais ca ne fonctionne pas surement parceque c'est une surface de rendu.
Le flou est plus que leger, on voit les pixels.
Normalement ca ne devraist pas trop ramer c'est une texture de 128x128 ou pire 256x256
Je vais essayer d'adapter ma source avec CreateRenderTarget.
Bon j'ai réussit a recopier la surface de rendu dans la surface d'une texture dynamic mais ca ne fait toujours aucun flou.
Je pense que c'est parcequ'elle n'a qu'un niveau de mipmap, j'ai essayé de faire pareil dans une texture qui a plusieur niveau de mipmap mais ca affiche des choses bisard, comment puis je faire?
Partager