Cette source permet d'utiliser des effets HLSL pour afficher des images ou animations. Il suffit d'avoir un controle type form ou picturebox et de l'utiliser pour y placer votre effet; vous pouvez ensuite lui passer des arguments (entiers, flottants, vecteurs), et textures.
Les types de textures supportés sont aussi nombreux que ceux de directx: .bmp, .dds, .dib, .hdr, .jpg, .pfm, .png, .ppm, et .tga
La source se décompose en deux projets: une dll écrite en C++, utilisant directx 9, pour transmettre via les fonctions l'utilisation de directx; et un projet exemple de cette dll: j'ai pris pour exemple un effet caustic animé sur une image de cailloux.
Comme mon autre source, j'ai créé ce projet en pensant a vbfrance, et donc j'ai bien structuré et commenté mes sources, même les effets (j'ai même rajouté un autre exemple d'effet très simple)
Source / Exemple :
'dans le zip
Conclusion :
Si vous avez un probleme de dll, ca peut etre celles de directx ou visual studio 2005 qui sont manquantes. Voici des liens vers le site de microsoft pour les télécharger:
directx 9 (aout 2007) :
http://www.microsoft.com/downloads/details.aspx?displaylang=fr&FamilyID=cb7397f3-0949-487b-9247-8fee451bf952
visual studio 2005 (SP1) :
http://www.microsoft.com/downloads/details.aspx?familyid=200B2FD9-AE1A-4A14-984D-389C36F85647&displaylang=fr
Voilà, comme d'hab, hésitez pas a postez commentaires, questions, plaintes, etc...
19 déc. 2008 à 16:55
9 avril 2008 à 19:41
Bonjour,
Très impresionné par ton exemple .Je suis a la recherche d'une lib qui permetrait de faire la même chose a un buffer en memoire a la place d'un "Picture Box". Objectif : Utiliser les shaders dans un moteur DX7 ou autre. Genre Call_shader_DLL(Adr_du_buffer,largeur,hauteur,nbpixel,"shader_machin.fx")
Je suis prêt a investir dans telle lib.
Zali Jean-Pierre. zjp@laposte.net
20 sept. 2007 à 21:59
20 sept. 2007 à 21:57
Ensuite plusieurs choses :
1/ Ma dll a bien été compilée en release et non pas en debug, je ne ferais pas cette erreur.
2/ Il n'y a PAS besoin du pack developpeur de directx (sdk) si vous voulez juste utiliser la dll (la recompiler, en revanche, si), mais bien juste les redistribuables. Ce sont des versions récentes du directx 9.0c: En général, dans le cas d'un produit ou d'un jeux qui en utilise une, il fournit le redist qui est installé silencieusement lors de l'installation. Il n'y a pas besoin de télécharger ou installer tout directx, mais seulement quelques packages suffisent lorsqu'on possede deja le directx 9.0c de base. Là, evidemment je l'ai pas mis dans le zip.
3/ Pour fournir une dll vraiment exploitable, il faudrait compiler avec vc6... a partir de vs2003, il faut les dlls bizarre. Désolé, mais la j'ai pas le courage de le télécharger juste pour ca. Si malgré tout c'est trop embetant d'installer les packages récents de directx, il faudrait aussi le recompiler avec le premier directx 9... Et du coup apporter quelques modifications au code aussi.
20 sept. 2007 à 19:57
Les dépendances certaines de sont les suivantes
msvcp80.dll
msvcr80.dll
d3d9_31.dll
Le projet de la DLL est au format 8.0 ce qui m'empêche personnellement de le recompiler (version limitée aux projets 7.0 et 7.1)
Le lien correct pour obtenir la version 8 du runtime SP 1 de VISUAL STUDIO
http://www.microsoft.com/downloads/details.aspx?familyid=200B2FD9-AE1A-4A14-984D-389C36F85647&displaylang=fr
J'ai DirectX 9.0c complétement installé et fonctionnel, mais il semble qu'il soit nécessaire d'installer le PACK DEVELOPPEUR de DIRECTX juste pour que cette DLL puisse se charger.
Le lien (en espagnol, désolé) suivant explique que les DLL énumérées ne servent qu'au débug.
http://www.emudesc.net/foros/nintendo-64/12705-coloquen-todos-pluguins-pack-de-texturas-quienes-tengan-6.html
Le projet me parait néanmoins interessant, c'est pourquoi je prie l'auteur d'adapter son projet à la réalité d'un projet publié sur vbfrance à savoir:
1) désactiver le débug avant la compilation, ce qui éliminera les dépendances d3d9_*.dll et évitera à de simple testeurs de se lancer dans une usine à gaz.
2) et ainsi fournir une DLL exploitable, car ceci est destiné à des habitués de VB.
3) convertir si possible son projet en projet version 7.0 ou 7.1 afin qu'il soit exploitable par ceux qui ne souhaitent pas se noyer dans un patch pour Vista.
Merci d'avance.
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.