Page 35 sur 62

Publié : sam. 10/févr./2007 17:04
par wolfjeremy
Salut,

Je sais pas si le sujet a été abordé, mais est-ce que le moteur va être porté sur directX 10 ?
D'après ce que j'ai pu voir, la programmation avec DirectX 10 est plus simple que DirectX 9 !
Il serait donc très facil d'avoir un magnifique moteur 3d :D

Publié : sam. 10/févr./2007 17:11
par tmyke
Oui, on en a déjà parlé, ma réponse était
Salut Gaëtan. Dreamotion3d est comme les ordi qui se vendent en ce moment:
'ready to Vista', enfin ici surtout 'Ready to DirectX10'

En d'autre thermes, il est conçu pour une adaptation la plus aisé possible a la
nouvelle API de Microsoft. Cela ne se fera pas un un WE, mais cela fait des objectif de fin d'année,
passer à DX10. (je sais je vois loin)
En fait, il s'agira d'une version spécifique, on devrait donc avoir DM3D DX9c et un
DM3D DX10, avec les fonctions spécifiques a la derniere API. Mais nous essayeront
de toujours garder la meme phylosophie, c-à-d simplicité d'utilisation.

Mais pour l'instant, on va laisser arriver Vista et surtout les carte et leurs
pilotes DX10, pendant ce temps, Dreamotion3D va murir (et il en a besoin)
et s'éttofer un peu. Au mois de juin le moteur soufflera sa première bougie
et avec, sa première Release, et Si tout va bien, au mois de octobre le
moteur aura 16 mois, et la on fera le point pour commencer une passerelle DX10 qui
tiens le route. (et l'aquisition d'une plateforme Vista avec une carte video rééllement
DX10, genre NV 8800) Wink
Tu as raison quand aux possibilité de DX10, mais tu sais, DirectX n'est qu'un
outil, et le fait de passer à DX10, meme si c'est très tentant, ne rendra
pas le moteur d'un seul coup top niveau. Comme tout les outils, ils faut
en faire bon usage et il ne fait pas tout a ta place. Donc pour reprendre
ma réponse initale, pas de précipitation, laissons les choses se mettre en
place (DM3D comme Vista), et les deux se marieront certainement très bien le moment venu... :)

:wink:

Publié : sam. 10/févr./2007 21:41
par Anonyme
Tu as fait le shadow mapping ? 8O
Chez moi seul l'exemple shadow volume fonctionne , pas l'autre.
cette commande plante :

DM_ShadowAmbient() = Invalid access memory()

Je vais regarder tout ca de plus près :D

Publié : dim. 11/févr./2007 9:47
par tmyke
Première question: en shuntant l'instruction, est-ce que le reste fonctionne :?:

Deuxième queston: ta carte video supporte-t-elle les shader2, indispensable
au bon fonctionnement du shadow mapping :?:

Publié : dim. 11/févr./2007 11:20
par Anonyme
Deuxième queston: ta carte video supporte-t-elle les shader2, indispensable
au bon fonctionnement du shadow mapping Question
J'aurais du y penser :?

Publié : dim. 11/févr./2007 11:53
par tmyke
En fait, c'est aussi un peut de ma faute, j'aurais du mettre une mise en
garde a l'init du shadows mapping quand le shaders2 n'est pas supporté (comme pour le terrain splatting).

Publié : dim. 11/févr./2007 11:54
par Backup
Cpl.Bator a écrit :
Deuxième queston: ta carte video supporte-t-elle les shader2, indispensable
au bon fonctionnement du shadow mapping Question
J'aurais du y penser :?
met moi un exemple, je pense que ma 7600 GT doit suporter ça :D

Publié : dim. 11/févr./2007 13:01
par tmyke
Cpl.Bator parlait de l'exemple que contient le pack... :wink:

Publié : dim. 11/févr./2007 14:24
par Backup
tmyke a écrit :Cpl.Bator parlait de l'exemple que contient le pack... :wink:
ha bah oui ! :oops:
l'exemple 28 fonctionne niquel ! :D
jolie petit baballe avec la madame qui s'ennerve toute seule
et toutes ces ombres, qui tournent, c'est zolie tout ça :D

Publié : dim. 11/févr./2007 15:16
par wolfjeremy
Dobro a écrit : met moi un exemple, je pense que ma 7600 GT doit suporter ça :D
Un petit HS, elle va bien la 7600 (GT) ? Car dans mon futur pc portable, il y a un chipset graphique Geforce GO 7600.

Publié : dim. 11/févr./2007 16:13
par Backup
wolfjeremy a écrit :
Dobro a écrit : met moi un exemple, je pense que ma 7600 GT doit suporter ça :D
Un petit HS, elle va bien la 7600 (GT) ? Car dans mon futur pc portable, il y a un chipset graphique Geforce GO 7600.

oui ! elle pedale bien, en plus la mienne est en AGP , mais a priori, ça marche niquel, alors que je n'ai que 512 mega de Ram ... :D
tout les jeux passe tres bien dessus :D

Publié : dim. 11/févr./2007 17:42
par wolfjeremy
Ouai donc vu que sur les portable c'est du pcie ça devrais aller du tonnere. :D Super :P

Publié : dim. 18/févr./2007 20:23
par wolfjeremy
Je vais avoir un nouveau pc portable cette semaine, je vous dirais des nouvelles, des performances avec le moteur 3D.

Config :

AMD Turion 64 X2 TL_56
1024 Mo de ram DDR2 533Mhz
Geforce Go 7600 (256 Mo de mémoire dédié) sur LCD 17"
2 * 120Go en SATA

Le reste on s'en fou, ça influence pas les performances. :wink:

Je fait le test dés que je le reçois ! (milieu ou fin de semaine)

Publié : dim. 18/févr./2007 20:27
par tmyke
Belle bête en tous les cas. Tu auras surement Vista avec non ?

Publié : dim. 18/févr./2007 20:28
par comtois
Je viens de m'amuser à reprendre les fonctions de la Dll Dreamotion.dll
Je l'ai fait pour une petite quantité de fonctions, mais ça pourrait permettre d'en faire une user lib simplement avec Tailbite et supprimer le fichier include dreamotion.pbi. A moins qu'il y ait des trucs dans ton fichier dreamotion.lib qui sont indispensables ? ou c'est simplement l'appel des fonctions qui se trouvent dans la dll ?

Il serait bien aussi de faire un fichier résident comportant les constantes, et les structures du moteur.

Code : Tout sélectionner

Prototype DM_CreateCameraProc(*parent.CEntity=#Null)
Prototype DM_CameraViewPortProc(*Camera.CEntity, posx.l, posy.l, width.l, height.l)
Prototype DM_CameraRangeProc(*Camera.CEntity, far_distance.f)
Prototype DM_CameraClsColorProc(*Camera.CEntity, red.c, green.c, blue.c)
Prototype DM_CameraProjRatioProc(*Camera.CEntity, width.l, height.l, mfar.f)
Prototype DM_CameraPickProc(*Camera.CEntity, x.l=0, y.l=0)
Prototype DM_PickedEntityProc()
Prototype DM_PickedSurfaceProc()
Prototype DM_PickedTriangleProc()
Prototype.f DM_PickedDistanceProc()
Prototype.f DM_PickedVProc()
Prototype.f DM_PickedUProc()
Prototype DM_LinePickProc(posx.f, posy.f, posz.f, distx.f, disty.f, distz.f)
Prototype DM_CameraFogModeProc(*Camera.CEntity, mode.c)
Prototype DM_CameraFogRangeProc(*Camera.CEntity, near.f, far.f)
Prototype DM_CameraFogColorProc(*Camera.CEntity, red.c, green.c, blue.c)
Prototype DM_CameraFogDensityProc(*Camera.CEntity, dd.f)
Prototype DM_CameraFogTypeProc(*camera.CEntity, type.l = #D3DFOG_LINEAR)
Prototype DM_CameraZoomProc(*Camera.CEntity,  zoom.f)
Prototype DM_MainViewPortProc(*Camera.CEntity)
Prototype.f DM_ProjectedXProc(*Camera.CEntity, *entity.CEntity)
Prototype.f DM_ProjectedYProc(*Camera.CEntity, *entity.CEntity)
Prototype DM_CameraLookAtProc(*Camera.CEntity, *x, *y, *z)
Prototype DM_EntityInViewProc(*entity.CEntity, *camera.CEntity)

Global DM_CreateCamera.DM_CreateCameraProc
Global DM_CameraViewPort.DM_CameraViewPortProc
Global DM_CameraRange.DM_CameraRangeProc
Global DM_CameraClsColor.DM_CameraClsColorProc
Global DM_CameraProjRatio.DM_CameraProjRatioProc
Global DM_CameraPick.DM_CameraPickProc
Global DM_PickedEntity.DM_PickedEntityProc
Global DM_PickedSurface.DM_PickedSurfaceProc
Global DM_PickedTriangle.DM_PickedTriangleProc
Global DM_PickedDistance.DM_PickedDistanceProc
Global DM_PickedV.DM_PickedVProc
Global DM_PickedU.DM_PickedUProc
Global DM_LinePick.DM_LinePickProc
Global DM_CameraFogMode.DM_CameraFogModeProc
Global DM_CameraFogRange.DM_CameraFogRangeProc
Global DM_CameraFogColor.DM_CameraFogColorProc
Global DM_CameraFogDensity.DM_CameraFogDensityProc
Global DM_CameraFogType.DM_CameraFogTypeProc
Global DM_CameraZoom.DM_CameraZoomProc
Global DM_MainViewPort.DM_MainViewPortProc
Global DM_ProjectedX.DM_ProjectedXProc
Global DM_ProjectedY.DM_ProjectedYProc
Global DM_CameraLookAt.DM_CameraLookAtProc
Global DM_EntityInView.DM_EntityInViewProc

If OpenLibrary(0,"Dreamotion3D.dll")
  DM_CreateCamera = GetFunction(0,"_DM_CreateCamera@4")
  DM_CameraViewPort = GetFunction(0,"_DM_CameraViewPort@20")
  DM_CameraRange = GetFunction(0,"_DM_CameraRange@8")
  DM_CameraClsColor = GetFunction(0,"_DM_CameraClsColor@16")
  DM_CameraProjRatio = GetFunction(0,"_DM_CameraProjRatio@16")
  DM_CameraPick = GetFunction(0,"_DM_CameraPick@12")
  DM_PickedEntity = GetFunction(0,"_DM_PickedEntity@0")
  DM_PickedSurface = GetFunction(0,"_DM_PickedSurface@0")
  DM_PickedTriangle = GetFunction(0,"_DM_PickedTriangle@0")
  DM_PickedDistance = GetFunction(0,"_DM_PickedDistance@0")
  DM_PickedV = GetFunction(0,"_DM_PickedV@0")
  DM_PickedU = GetFunction(0,"_DM_PickedU@0")
  DM_LinePick = GetFunction(0,"_DM_LinePick@24")
  DM_CameraFogMode = GetFunction(0,"_DM_CameraFogMode@8")
  DM_CameraFogRange = GetFunction(0,"_DM_CameraFogRange@12")
  DM_CameraFogColor = GetFunction(0,"_DM_CameraFogColor@16")
  DM_CameraFogDensity = GetFunction(0,"_DM_CameraFogDensity@8")
  DM_CameraFogType = GetFunction(0,"_DM_CameraFogType@8")
  DM_CameraZoom = GetFunction(0,"_DM_CameraZoom@8")
  DM_MainViewPort = GetFunction(0,"_DM_MainViewPort@4")
  DM_ProjectedX = GetFunction(0,"_DM_ProjectedX@8")
  DM_ProjectedY = GetFunction(0,"_DM_ProjectedY@8")
  DM_CameraLookAt = GetFunction(0,"_DM_CameraLookAt@16")
  DM_EntityInView = GetFunction(0,"_DM_EntityInView@8")
EndIf