Opengl et transparence!

cs_potate Messages postés 19 Date d'inscription vendredi 18 novembre 2005 Statut Membre Dernière intervention 12 novembre 2006 - 10 févr. 2006 à 14:11
Matt 261 Messages postés 1173 Date d'inscription mercredi 2 novembre 2005 Statut Membre Dernière intervention 10 septembre 2011 - 14 févr. 2006 à 14:56
Bonjour a tous je suis entrein de faire un petit jeu avec une bille et un plateau et j'aimerais rendre transparent seulement une partie de mon plateau representer par un carrer, ceci pour representer un trou afin que ma bille puissse tomber dedans.
merci de vos reponse car je ne trouve pas la methode

10 réponses

Matt 261 Messages postés 1173 Date d'inscription mercredi 2 novembre 2005 Statut Membre Dernière intervention 10 septembre 2011 3
10 févr. 2006 à 17:21
Tu n'a cas mettre ton trou dans une certaine couleur et tu mets true à la propriété transparent color de ta fiche et le nom de la couleur de ton trou à lapropriété juste en dessous.
0
cs_potate Messages postés 19 Date d'inscription vendredi 18 novembre 2005 Statut Membre Dernière intervention 12 novembre 2006
11 févr. 2006 à 16:43
Euh j'ai pas tout compris en faite. Tu peut me réexpliquer avec un exmple stp.

La j'ai mon plateau texturé

glEnable(GL_TEXTURE_2D);
glBindTexture(GL_TEXTURE_2D, tab_Texture[0]);
glBegin(GL_QUADS);
glColor4f( 0.5, 1.0, 0.0, 0 );
glTexCoord2f(0,0);glVertex3d((-30), 0, (-30));
glTexCoord2f(0,1);glVertex3d(30, 0, (-30));
glTexCoord2f(1,1);glVertex3d(30, 0, 30);
glTexCoord2f(1,0);glVertex3d((-30), 0, 30);
glend;
glDisable(GL_TEXTURE_2D);

Et je veux par exmple dire que le carré de 5 de coté, d'un coin du plateau, est transparent. Seulement ce coin du grand carré représentant ma map texturé.
Mercii
0
f0xi Messages postés 4205 Date d'inscription samedi 16 octobre 2004 Statut Modérateur Dernière intervention 12 mars 2022 34
12 févr. 2006 à 23:32
operation booléene sur les objets ...

si tu veux un trou dans ton carré, divise un cylindre de ton cube. la texture devrais suivre.

sinon tu peu mettre un rond fuchia ou cyan sur ta texture (FFFF00 ou 00FFFF) et lui indiquer qu'il sagit de la couleur transparente.

<hr size="2" width="100%">La theorie c'est quand on sait tout, mais que rien ne fonctionne.
La pratique c'est quand tout fonctionne, mais que personne ne sait pourquoi.
<hr>
0
cs_potate Messages postés 19 Date d'inscription vendredi 18 novembre 2005 Statut Membre Dernière intervention 12 novembre 2006
13 févr. 2006 à 13:29
tu peu develloper ta reponse sur la deuxieme technique stp sa m'interesse
merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Matt 261 Messages postés 1173 Date d'inscription mercredi 2 novembre 2005 Statut Membre Dernière intervention 10 septembre 2011 3
13 févr. 2006 à 15:19
C'est ce que je te disais mais en peut-être plus clair.Donc pour faire la 2ème technique sur ta fiche tu n'a qu'a mettre un PaintBox (onglet system) rond que tu colorie en fuschia ( ce qui ce fait le plus souvent) ou une image fuchscia rond (style PNG). Voila la copie du code (mais que tu peux faire dans l'inspecteur d'objets) :

*****************************************************

unit Unit1;


interface


uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls;


type
TForm1 = class(TForm)
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;


var
Form1: TForm1;


implementation


{$R *.dfm}


procedure TForm1.FormCreate(Sender: TObject);
begin
Form1.TransparentColor: =True; //Dit que l'application peut cacher QqC
Form1.TransparentColorValue := clFuchsia; //Dit que l'application cache tt ce qui est Fuchsia
end;


end.
0
cs_potate Messages postés 19 Date d'inscription vendredi 18 novembre 2005 Statut Membre Dernière intervention 12 novembre 2006
13 févr. 2006 à 15:54
Ba g fait comme tu ma di, g mi ca dans un nouvo unit et g apler la procedure dans le dpr principale ;ais ca marche toujoiurs pas. Je suis o bord du suicide la
Merci
0
Matt 261 Messages postés 1173 Date d'inscription mercredi 2 novembre 2005 Statut Membre Dernière intervention 10 septembre 2011 3
13 févr. 2006 à 16:44
avec le Editeur de dessin delphi fait un dessin rond fichsia.
Mets sur ta form un TImage avec pour image ton dessin.
Double-clic sur ta form. Delphi t'ouvre la fenêtre de code et ecrit le code en rouge

procedure TForm1.FormCreate(Sender: TObject);
begin
Form1.TransparentColor:=True; //Dit que l'application peut cacher QqC
Form1.TransparentColorValue := clFuchsia; //Dit que le prog cache tt ce qui est Fuchsia
end;
0
Matt 261 Messages postés 1173 Date d'inscription mercredi 2 novembre 2005 Statut Membre Dernière intervention 10 septembre 2011 3
13 févr. 2006 à 16:45
Si avec tout ça ça ne marche pas soit ton compilateur est 'tr_s) spécial soit y'a vraiment de quoi ce suicider...
0
cs_potate Messages postés 19 Date d'inscription vendredi 18 novembre 2005 Statut Membre Dernière intervention 12 novembre 2006
14 févr. 2006 à 10:45
ba g fé comme tu ma di. mais ya un truc ke je comprend pas. le .dpr comment tu fait pour apliiquer tout cela ?
0
Matt 261 Messages postés 1173 Date d'inscription mercredi 2 novembre 2005 Statut Membre Dernière intervention 10 septembre 2011 3
14 févr. 2006 à 14:56
le *.dpr tu t'en fou pour la transparence c'est juste l'unité qui compte
0
Rejoignez-nous