ya qu'a me demander
Dreamotion3D
-
tmyke
- Messages : 1554
- Inscription : lun. 24/juil./2006 6:44
- Localisation : vosges (France) 47°54'39.06"N 6°20'06.39"E
Merci pour les info sur le format Ogre. Dès que j'ai terminé l'import B3D, je m'y colle...
(Flype, je garde ta propo et je te recontacte dès que je mis met...)
@Comtois Pour ce qui de la scene 'SacredPlace', en fait il s'agissait d'un gros bug dans
la partie import B3D, que j'ai du refondre en partie (2 heures de perdu). Les choses sont rentré
dans l'ordre, et plus de soucis. Effectivement c'est asser sombre, l'option FULLBRIGHT n'étant
pas activé dans l'export fait par DeleD. Tu peux arriverer un resultat similaire en écrivant ceci
après avoir chargé le mesh:
module a jour du meme coup...
@ChaOs ... du coups je n'ai pas encore eu le temps de me pencher sur ton prob, mais
je m'y colle ce soir et demain (a moins que tu ai déjà trouvé)...

(Flype, je garde ta propo et je te recontacte dès que je mis met...)
@Comtois Pour ce qui de la scene 'SacredPlace', en fait il s'agissait d'un gros bug dans
la partie import B3D, que j'ai du refondre en partie (2 heures de perdu). Les choses sont rentré
dans l'ordre, et plus de soucis. Effectivement c'est asser sombre, l'option FULLBRIGHT n'étant
pas activé dans l'export fait par DeleD. Tu peux arriverer un resultat similaire en écrivant ceci
après avoir chargé le mesh:
Code : Tout sélectionner
DM_EntityAddTextureStage(mesh, 0, #D3DTSS_COLOROP, #D3DTOP_MODULATE2X );
DM_EntityAddTextureStage(mesh, 1, #D3DTSS_COLOROP, #D3DTOP_MODULATE2X );
DM_EntityRestoreTextureStage(mesh, 1, #D3DTSS_COLOROP, #D3DTOP_MODULATE );
DM_EntityRestoreTextureStage(mesh, 0, #D3DTSS_COLOROP, #D3DTOP_MODULATE );
num.l = DM_EntityBrush(mesh)
For i=0 To num
brush = DM_GetBrush(mesh, i)
DM_BrushAmbient(brush, 100,100,100,100)
Next
@ChaOs ... du coups je n'ai pas encore eu le temps de me pencher sur ton prob, mais
je m'y colle ce soir et demain (a moins que tu ai déjà trouvé)...
Force et sagesse...
ça ne fonctionne toujours pas chez moi
J'ai fait un zip pour que tu testes de ton côté, j'ai peut-être fait une boulette ?
http://perso.wanadoo.fr/comtois/sources/SacredPlace.zip
J'ai fait un zip pour que tu testes de ton côté, j'ai peut-être fait une boulette ?
http://perso.wanadoo.fr/comtois/sources/SacredPlace.zip
http://purebasic.developpez.com/
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
-
tmyke
- Messages : 1554
- Inscription : lun. 24/juil./2006 6:44
- Localisation : vosges (France) 47°54'39.06"N 6°20'06.39"E
S itu veux parler de la zone verte (effet de profondeur), c'est en fait l'instruction DM_CameraProjRatio qu'il faut utiliser, du genre
comme cela tu sera tranquille
Pour la luminosité, c'est très très clair chez moi, n'utilise donc pas la routine de
FULLBRIGHT, car dans le media que tu fourni, il n'y a pas de lightmapping...
Code : Tout sélectionner
DM_CameraProjRatio(*camera, 800,600, 15000)Pour la luminosité, c'est très très clair chez moi, n'utilise donc pas la routine de
FULLBRIGHT, car dans le media que tu fourni, il n'y a pas de lightmapping...
Force et sagesse...
C'est parfait maintenanttmyke a écrit :S itu veux parler de la zone verte (effet de profondeur), c'est en fait l'instruction DM_CameraProjRatio qu'il faut utiliser, du genreCode : Tout sélectionner
DM_CameraProjRatio(*camera, 800,600, 15000)
Il va falloir que je regarde dans la doc quelle est la différence avec CameraRAnge() .
J'ai vu ton début de doc sous le format chm, je préfère nettement cette doc, vivement qu'elle soit terminée, c'est bien plus pratique, en couleur, avec des exemples ,que demander de plus ?
Petite question, que signifie le ./ qu'on peut voir après un argument ?
DM_BrushTexture(brush./, texture./ [, index./=0] )
http://purebasic.developpez.com/
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
-
tmyke
- Messages : 1554
- Inscription : lun. 24/juil./2006 6:44
- Localisation : vosges (France) 47°54'39.06"N 6°20'06.39"E
en fait c'est .l, pour les entiers. Le fait que cela soit en italique et griséPetite question, que signifie le ./ qu'on peut voir après un argument ?
déforme un peu les lettres...
Pour suivre l'évolution de la doc en direct live en ligne, voici le lien:
http://www.dreamotion3d.com/PureBasic/d ... tion3D.htm
J'y vais doucement, entre deux serie de codage, mais j'avance...
Force et sagesse...
J'ai un petite question à propose de la transparence...
Depuis hier soir je me creuse la tête dessus en fouillant dans l'aide du SDK de DX9 (une mine d'or sans lumière... comme celle de Win32
) mais impossible de trouver la "bonne combinaison" (des foi j'ai l'impression de jouer à MasterMind, c'est un peut au pif
) pour DM_BrushAlpha.
Remarque.. je suis peut etre pas sur la bonne voie!
Je m'explique mieu... J'ai des textures au format PNG avec la couche alpha, et j'aimerais avoir cette transparence sur mes mesh, j'y suis presque arriver, je dis presque car la partie transparente recouvre ou efface (je sais pas comment dir) d'autre poly de mon mesh.
Je veux pas une simple couleur de transparence (comme par exemple tout ce qui serait noir ne serait pas afficher) mais bien un dégradé d'opacité.
Bref, je cherche, je cherche mais je trouve pas...
EDIT :
Voila 3 captures (les graphisme sont pris du jeux DreamFall et je ne les distribuerais en aucun cas!)



Ma config au cas ou :
OS : Windows XP Pro SP2
Carte Mere : Asus A8V
Processeur : AMD Athlon 64 3000+ (cadencé à 2.36GHz, ça bouge avec le cool'n'quiet, mais j'avais ça à peut pret quand je testais)
Memoire : 2Go Corsair XMS PC 3200
Carte Graphique : Asus EaX 850 XT
HDD : Maxtor Ultra Hard Drive L14P200
le reste... je pense pas que ça puisse aider
Depuis hier soir je me creuse la tête dessus en fouillant dans l'aide du SDK de DX9 (une mine d'or sans lumière... comme celle de Win32
Remarque.. je suis peut etre pas sur la bonne voie!
Je m'explique mieu... J'ai des textures au format PNG avec la couche alpha, et j'aimerais avoir cette transparence sur mes mesh, j'y suis presque arriver, je dis presque car la partie transparente recouvre ou efface (je sais pas comment dir) d'autre poly de mon mesh.
Je veux pas une simple couleur de transparence (comme par exemple tout ce qui serait noir ne serait pas afficher) mais bien un dégradé d'opacité.
Bref, je cherche, je cherche mais je trouve pas...
EDIT :
Voila 3 captures (les graphisme sont pris du jeux DreamFall et je ne les distribuerais en aucun cas!)



Ma config au cas ou :
OS : Windows XP Pro SP2
Carte Mere : Asus A8V
Processeur : AMD Athlon 64 3000+ (cadencé à 2.36GHz, ça bouge avec le cool'n'quiet, mais j'avais ça à peut pret quand je testais)
Memoire : 2Go Corsair XMS PC 3200
Carte Graphique : Asus EaX 850 XT
HDD : Maxtor Ultra Hard Drive L14P200
le reste... je pense pas que ça puisse aider
-
tmyke
- Messages : 1554
- Inscription : lun. 24/juil./2006 6:44
- Localisation : vosges (France) 47°54'39.06"N 6°20'06.39"E
Salut. Ha les effets de transparence...
L'utilisation des fonction alpha pose souvent un problème. Les Entity
qui se trouvent derrière et qui sont rendu après les brush alpha, sont masquées.
D'ou les effets indésirables que tu as. Tu as plusieurs solutions pour remédier
a cela:
Premère soluce, tu passes toutes les entity qui sont en alpha a la fin du moteur
de rendu, donc soit tu les importent en dernier, soit tu emploie la fonctions
'DM_EntityLast(entity)'. Cette solution a ces limites, car elle n'a aucun effet sur
des Entity qui possèdent plusieurs Brush avec Alpha, comme les plantes.
Deuxième soluce, et dans ton cas, vue que tes textures possèdent un canal alpha,
essais pluto ceci (soit sur les ENtity entière ou uniquement sur une brush
donnée) :
Troisième soluce, pour tout ce qui est végétation, arbre, etc... il plus souhaitable
de passer par la fonction de Mask. C'est ce qui est beaucoup employé sous
Blitz3D entre autre, elle élimine la composante noir des textures, donc
pas besoin de canal Alpha, plus de soucis de vue derrière les elements.
Le seul prob, c'est que cet effet est vieux comme le monde, et je n'arrive
pas à le reproduire avec DX9c, un comble.
L'utilisation des fonction alpha pose souvent un problème. Les Entity
qui se trouvent derrière et qui sont rendu après les brush alpha, sont masquées.
D'ou les effets indésirables que tu as. Tu as plusieurs solutions pour remédier
a cela:
Premère soluce, tu passes toutes les entity qui sont en alpha a la fin du moteur
de rendu, donc soit tu les importent en dernier, soit tu emploie la fonctions
'DM_EntityLast(entity)'. Cette solution a ces limites, car elle n'a aucun effet sur
des Entity qui possèdent plusieurs Brush avec Alpha, comme les plantes.
Deuxième soluce, et dans ton cas, vue que tes textures possèdent un canal alpha,
essais pluto ceci (soit sur les ENtity entière ou uniquement sur une brush
donnée) :
Code : Tout sélectionner
DM_EntityAddRender(mesh, #D3DRS_ALPHATESTENABLE,#True);
DM_EntityAddRender(mesh, #D3DRS_ALPHAFUNC, #D3DCMP_GREATEREQUAL);
DM_EntityAddRender(mesh, #D3DRS_ALPHAREF, $00000090);
DM_EntityRestoreRender(mesh, #D3DRS_ALPHATESTENABLE, #False);
ou
DM_BrushAddRender(Brush, #D3DRS_ALPHATESTENABLE,#True);
DM_BrushAddRender(Brush, #D3DRS_ALPHAFUNC, #D3DCMP_GREATEREQUAL);
DM_BrushAddRender(Brush, #D3DRS_ALPHAREF, $00000090);
DM_BrushRestoreRender(Brush, #D3DRS_ALPHATESTENABLE, #False);
de passer par la fonction de Mask. C'est ce qui est beaucoup employé sous
Blitz3D entre autre, elle élimine la composante noir des textures, donc
pas besoin de canal Alpha, plus de soucis de vue derrière les elements.
Le seul prob, c'est que cet effet est vieux comme le monde, et je n'arrive
pas à le reproduire avec DX9c, un comble.
Force et sagesse...
Premiere solution : non-applicable car enfait c'est carrement un mesh complet, tout est dedans...
Deuxieme solution : c'est presque ça, la transparence y est, mais pas le dégradé d'opacité (canal alpha) et puis j'ai l'impression que ça assombri la texture... Mais plus de problème d'effacement derriere, c'est sur cette voie! Merci
Troisieme solution : non-applicable car justement j'ai des degradé d'opacité sur ma végétation

Deuxieme solution : c'est presque ça, la transparence y est, mais pas le dégradé d'opacité (canal alpha) et puis j'ai l'impression que ça assombri la texture... Mais plus de problème d'effacement derriere, c'est sur cette voie! Merci
Troisieme solution : non-applicable car justement j'ai des degradé d'opacité sur ma végétation
-
tmyke
- Messages : 1554
- Inscription : lun. 24/juil./2006 6:44
- Localisation : vosges (France) 47°54'39.06"N 6°20'06.39"E
Voici une amélioration du code précédent:
dans la valeur $66ffffff, il suffit de faire varier les poids les plus fort
(ici '66') pour faire une similie variation de l'opacité. J'ai employé des
fonction sur les entity, mais tu fais pareil sur les Brush avec 'DM_Brush...'
Si tu me dis que cela marche pas trop mal, je l'intègre dans les effets préprogrammés.

dans la valeur $66ffffff, il suffit de faire varier les poids les plus fort
(ici '66') pour faire une similie variation de l'opacité. J'ai employé des
fonction sur les entity, mais tu fais pareil sur les Brush avec 'DM_Brush...'
Code : Tout sélectionner
DM_EntityAddRender(mesh, #D3DRS_ALPHATESTENABLE,#True)
DM_EntityAddRender(mesh, #D3DRS_ALPHAFUNC, #D3DCMP_GREATEREQUAL)
DM_EntityAddRender(mesh, #D3DRS_ALPHAREF, $00000090)
DM_EntityAddTextureStage(mesh, 0, #D3DTSS_ALPHAOP, #D3DTOP_MODULATE2X);#D3DTOP_MODULATE)
DM_EntityAddTextureStage(mesh, 0, #D3DTSS_ALPHAARG1, #D3DTA_TEXTURE);#D3DTA_DIFFUSE)
DM_EntityAddTextureStage(mesh, 0, #D3DTSS_ALPHAARG2, #D3DTA_TFACTOR)
DM_EntityAddRender(mesh, #D3DRS_TEXTUREFACTOR, $66ffffff)
DM_EntityRestoreRender(mesh, #D3DRS_ALPHATESTENABLE, #False)
DM_EntityRestoreRender(mesh, #D3DRS_TEXTUREFACTOR, $ffffffff)
Force et sagesse...
