Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1049 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  [C/C++][DirectX] DirectDraw obsolète ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[C/C++][DirectX] DirectDraw obsolète ?

n°323413
antsite
Je me souviens
Posté le 05-03-2003 à 13:16:40  profilanswer
 

 Salut,
Je viens de lire dans un article de GameDev.net que DirectDraw n'est plus mis à jour depuis la version 7 de DirectX et que désormais les applications même si elles n'utilisent que la 2D sont faites avec Direct3D. Donc faut-il abandonner l'idée de commencer un projet en DirectDraw ? Dans ce cas auriez-vous un lien ou autre pour programmer de la 2D uniquement avec D3D ? Pas facile de trouver de la doc la dessus! De la 2D avec D3D, c'est zarb :-) !
merci
   ANT

mood
Publicité
Posté le 05-03-2003 à 13:16:40  profilanswer
 

n°323491
bjone
Insert booze to continue
Posté le 05-03-2003 à 14:16:05  profilanswer
 

c'est pas ça ddraw a fusionné avec le d3d.
 
j'ai jamais utilisé ddraw, mais dans l'absolu, fo certainement initialiser d3d, lancer le mode vidéo, et locker la surface, etc...
 
si ça se trouve y'a que la phase initialisation qui change (et encore)

n°323836
antsite
Je me souviens
Posté le 05-03-2003 à 18:26:37  profilanswer
 

Donc dois-je continuer à utiliser Direct Draw comme si de rien n'était en suivant les tutorials classiques (gamedev.net,...) ou alors dois-je me retourner vers l'API windows pure ?
Question rapidité ? DirectX je pense ?

n°323852
Clie
Posté le 05-03-2003 à 18:43:14  profilanswer
 

Non a priori ddraw est bien obsolete
Cependant, pour des raisons de compatibilités, il sera toujours present dans les directX à venir.
Donc tu peux te lancer dans ddraw.
Mais a ta place je passerais direct a D3D.
Pourquoi ? :
- Parceque ca t'introduit sans difficultés particulière à la prog 3D
- Parceque ca t'offre la possibilté de profiter de D3D pour faire plein d'effet spéciaux facilemment.
 
D'après ce que j'ai pu voir il y a au moins 2 techniques pour faire ca :
- Le billboard(voir la demo fournit avec directX)
- L'affichage d'une texture sur une feuille (objet 3D rectangulaire d'epaisseur nulle) que tu dimensionne pour qu'elle occupe l'ecran.

n°323863
ITM
Avatar peint à la main
Posté le 05-03-2003 à 18:55:20  profilanswer
 

Clie a écrit :

Non a priori ddraw est bien obsolete
Cependant, pour des raisons de compatibilités, il sera toujours present dans les directX à venir.
Donc tu peux te lancer dans ddraw.
Mais a ta place je passerais direct a D3D.
Pourquoi ? :
- Parceque ca t'introduit sans difficultés particulière à la prog 3D
- Parceque ca t'offre la possibilté de profiter de D3D pour faire plein d'effet spéciaux facilemment.
 
D'après ce que j'ai pu voir il y a au moins 2 techniques pour faire ca :
- Le billboard(voir la demo fournit avec directX)
- L'affichage d'une texture sur une feuille (objet 3D rectangulaire d'epaisseur nulle) que tu dimensionne pour qu'elle occupe l'ecran.
 


 
Moi, je trouve quand même que l'OpenGL est plus facile que D3D.


---------------
iteme.free.fr | Mon feedback
n°323897
LeGreg
Posté le 05-03-2003 à 20:17:06  profilanswer
 

le problème de la 3D utilisé pour la 2D
c'est qu'il n'y pas un rasterizer qui fonctionne
pareil qu'un autre et que parfois il  
faut faire des compromis sur la précision du tracé
(ce qui n'est pas forcément génant dans les jeux 3D).
 
Sinon utiliser l'API 3D n'a que des avantages (à part
une courbe d'apprentissage un peu plus pentue mais
on est des "warriors" ou pas :D ?)
Le pipeline accélère les rotations d'angles arbitraires, les magnifications minimisations. Il accélère le mipmapping des textures (niveau de détail automatique pour les sprites). Il gère de façon native la transparence et toutes sortes de transparence l'additif, l'alpha blending, l'alpha test, le multiplicatif etc.. (à part le chroma key mais il suffit de rajouter une couche alpha). Et puis il décharge le CPU de toutes ces opérations ce qui fait qu'un jeu qui nécessitait une bête de course et une résolution mini tourne bien sur le PC de grand mère grâce à l'accélération 3D.
 
Bon évidemment l'autre inconvénient de la 3D sur la 2D,  c'est qu'il faut un hardware compatible.. Donc si tu vises le PC de ton arrière grand mère ou un hardware embarqué (GBA, Pocket PC), il faudra utiliser les bonnes vieilles techniques.
 
LeGreg


---------------
voxel terrain render engine | animation mentor
n°324228
antsite
Je me souviens
Posté le 06-03-2003 à 08:57:51  profilanswer
 

legreg a écrit :

le problème de la 3D utilisé pour la 2D
c'est qu'il n'y pas un rasterizer qui fonctionne
pareil qu'un autre et que parfois il  
faut faire des compromis sur la précision du tracé
(ce qui n'est pas forcément génant dans les jeux 3D).
 
Sinon utiliser l'API 3D n'a que des avantages (à part
une courbe d'apprentissage un peu plus pentue mais
on est des "warriors" ou pas :D ?)
Le pipeline accélère les rotations d'angles arbitraires, les magnifications minimisations. Il accélère le mipmapping des textures (niveau de détail automatique pour les sprites). Il gère de façon native la transparence et toutes sortes de transparence l'additif, l'alpha blending, l'alpha test, le multiplicatif etc.. (à part le chroma key mais il suffit de rajouter une couche alpha). Et puis il décharge le CPU de toutes ces opérations ce qui fait qu'un jeu qui nécessitait une bête de course et une résolution mini tourne bien sur le PC de grand mère grâce à l'accélération 3D.
 
Bon évidemment l'autre inconvénient de la 3D sur la 2D,  c'est qu'il faut un hardware compatible.. Donc si tu vises le PC de ton arrière grand mère ou un hardware embarqué (GBA, Pocket PC), il faudra utiliser les bonnes vieilles techniques.
 
LeGreg


 
Donc je pourrais me lancer à coder avec de l'API pure c'est bien ça?
 
Sinon je retiens l'idée de se mettre à D3D  ;)

n°324308
djok_fb
C'était mieux avant!
Posté le 06-03-2003 à 10:18:03  profilanswer
 

ANTSite a écrit :


 
Donc je pourrais me lancer à coder avec de l'API pure c'est bien ça?
 
Sinon je retiens l'idée de se mettre à D3D  ;)  


ta question est pas tres claire, mais la reponse est a priori  oui...

n°324312
antsite
Je me souviens
Posté le 06-03-2003 à 10:22:39  profilanswer
 

Ben la question est simple:
est-ce possible (pas trop lent question perf) de n'utiliser aucune librairie / com comme DirectX et de n'utiliser que les fonctions de bases de l'API, genre LineTo, FillRect,... pour faire une application 2D uniquement ?

n°324317
chrisbk
-
Posté le 06-03-2003 à 10:24:42  profilanswer
 

ANTSite a écrit :

Ben la question est simple:
est-ce possible (pas trop lent question perf) de n'utiliser aucune librairie / com comme DirectX et de n'utiliser que les fonctions de bases de l'API, genre LineTo, FillRect,... pour faire une application 2D uniquement ?


 
heuh, ca depend de ton appli...si c pour du tps real alors la non (sauf si pas trop complique), si c pour un viewer d'image (pas ex), oui


Message édité par chrisbk le 06-03-2003 à 10:25:03
mood
Publicité
Posté le 06-03-2003 à 10:24:42  profilanswer
 

n°324603
antsite
Je me souviens
Posté le 06-03-2003 à 13:27:58  profilanswer
 

Oui c'est pour un genre de jeu à la mario...

n°324877
red factio​n
Posté le 06-03-2003 à 16:57:33  profilanswer
 

legreg a écrit :

le problème de la 3D utilisé pour la 2D
c'est qu'il n'y pas un rasterizer qui fonctionne
pareil qu'un autre et que parfois il  
faut faire des compromis sur la précision du tracé
(ce qui n'est pas forcément génant dans les jeux 3D).
 
Sinon utiliser l'API 3D n'a que des avantages (à part
une courbe d'apprentissage un peu plus pentue mais
on est des "warriors" ou pas :D ?)
Le pipeline accélère les rotations d'angles arbitraires, les magnifications minimisations. Il accélère le mipmapping des textures (niveau de détail automatique pour les sprites). Il gère de façon native la transparence et toutes sortes de transparence l'additif, l'alpha blending, l'alpha test, le multiplicatif etc.. (à part le chroma key mais il suffit de rajouter une couche alpha). Et puis il décharge le CPU de toutes ces opérations ce qui fait qu'un jeu qui nécessitait une bête de course et une résolution mini tourne bien sur le PC de grand mère grâce à l'accélération 3D.
 
Bon évidemment l'autre inconvénient de la 3D sur la 2D,  c'est qu'il faut un hardware compatible.. Donc si tu vises le PC de ton arrière grand mère ou un hardware embarqué (GBA, Pocket PC), il faudra utiliser les bonnes vieilles techniques.
 
LeGreg


 
si directdraw fct a partir de direct3d comment ils font pour les textures non carrees alors ? et sans perdre de qualite aussi

n°325029
Clie
Posté le 06-03-2003 à 18:57:17  profilanswer
 

Si tu affiche une surface pile poil de la taille de l'ecran avec une texture pile poil de la taille de l'ecran y pas de raison d'avoir des imprecisions.
D'ailleurs il faut surment veiller a virer antialiasing et autre..
Sinon antsit le mot que tu cherche est : GDI
C'est ca qu'il te faut est ca marcheras ptet meme sur win3.11
Tu devrais pas avoir de mal a trouver des tutos sur le net

n°325126
LeGreg
Posté le 06-03-2003 à 21:11:21  profilanswer
 

red faction a écrit :


si directdraw fct a partir de direct3d comment ils font pour les textures non carrees alors ? et sans perdre de qualite aussi


 
hein, mais de quoi tu parles?
pourquoi direct draw fonctionnerait a partir de
Direct 3D?
 
De plus sur les hardwares modernes il
n'y a pas d'obligation d'avoir des textures carrees
(seulement des textures dont les dimensions x et y
sont des puissances de deux pas forcement egales)
 
Et quelle perte de qualite??
 
Bref je ne vois pas de quoi tu veux parler..
 
LeGreg


---------------
voxel terrain render engine | animation mentor
n°325165
LeGreg
Posté le 06-03-2003 à 21:51:37  profilanswer
 

Clie a écrit :

Si tu affiche une surface pile poil de la taille de l'ecran avec une texture pile poil de la taille de l'ecran y pas de raison d'avoir des imprecisions.


 
tu oublies que le driver peut biaiser
la mapping des texels/pixels
ceci dit c'est vrai que c'est  
soluble dans des cas "simples".
(et là je ne parle pas de l'effet
du mipmaping sur les textures..)
 
LeGreg


---------------
voxel terrain render engine | animation mentor
n°325735
antsite
Je me souviens
Posté le 07-03-2003 à 10:27:46  profilanswer
 

GDI pour faire jeu c'est ok ? De quoi parlait donc chrisbk quand il dit si c'est pour faire du temps réel alors non.. ?

n°325737
chrisbk
-
Posté le 07-03-2003 à 10:28:36  profilanswer
 

ANTSite a écrit :

GDI pour faire jeu c'est ok ? De quoi parlait donc chrisbk quand il dit si c'est pour faire du temps réel alors non.. ?


 
du gdi. Perso pour du tps reel je suis pas convaincu mais je peux me tromper

n°325934
Clie
Posté le 07-03-2003 à 13:30:28  profilanswer
 

C'est comme ca qu'etais fais certain jeu avant directX.
C'etait pas quake3 mais bon ca aller

n°326085
Kristoph
Posté le 07-03-2003 à 15:34:07  profilanswer
 

Utilise la libSDL stp, et comme ça tu nous fait un portage Linux/MacOs/MacOsX/BeOs/Amiga facile. Merci d'avance :D


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  [C/C++][DirectX] DirectDraw obsolète ?

 

Sujets relatifs
directxDirectx 8 (gestion générale sur le principe des moteurs 3d)
3DSMax : OpenGL ou DirectXDirectX_Direct3D
Baisse de performance dans un jeu DirectX sur win2000VB et directx
directdraw en mode fenetreQuel bouqin pour DirectX
venez sur www.****le site opengl et directx,,,rotation bitmap surface directdraw
Plus de sujets relatifs à : [C/C++][DirectX] DirectDraw obsolète ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR