Connexion
Menu Principal
Recherche
Menu secondaire
Image Aléatoire
MISSILEFINsq.jpg
Publicité
Formation Blender ElephormBlender 3d Elephorm


     




« 1 (2) 3 4 5 ... 15 »


Re: Demande d'aide sur le scripting python (BGE)
Clan Afficionado
Inscrit:
29/06/2016 18:04
Post(s): 84
Bon, je galère mais j'avance.
Je viens a peine de comprendre la différence entre une texture et un image.

Si je comprend bien pour avoir une texture en python la syntaxe est : tex_fissures = texture.Texture("Fissures")

Mais après je ne trouve pas comment appliquer cette texture a mon objet (appliquer la nouvelle texture en plus de l'ancienne pas la remplacer).

Désoler de devoir encore vous en demander mais tous ce que je trouve montre comment remplacer l'image d'une texture mais aucun ne montre comment appliquer une seconde texture

Contribution le : 09/08/2016 17:34
Créer un fichier PDF de la contribution Imprimer


Re: Demande d'aide sur le scripting python (BGE)
Clan Afficionado
Inscrit:
29/06/2016 18:04
Post(s): 84
Oups double post

Contribution le : 09/08/2016 17:35
Créer un fichier PDF de la contribution Imprimer


Re: Demande d'aide sur le scripting python (BGE)
OverdOzed
Inscrit:
19/03/2016 15:30
De Belgique
Post(s): 843
C’est avec plaisir que je répondrai à tes questions .

tex_fissures = texture.Texture("Fissures") est effectivement ta variable source pour ta texture où autrement dit, ton "objet texture" (dans python, tout est objet).

Pour spécifier un objet particulier:
ID = texture.materialID(mon_cube_minecraft, texture_de_mon_cube.png)


Pour appliquer une texture, tu dois avoir ces deux lignes (en plus de celles que je n'ai pas écrite):

# référence: exemple api
logic.texture.source = new_source
logic.texture.refresh(True)


Avant ces deux ligne, tu dois mettre un booléen et un interrupteur pour activer le changement.

# je fais une action:
toto = True

if toto: (ou toto == true)
   logic.texture.source = new_source
   logic.texture.refresh(True)
   toto = false


Si tu ne fais pas ça, python va appliquer en boucle ta texture et tu aura droit à un gros freeze.

Si tu veux avoir deux textures à changer sur un objet, tu vas devoir:
- Utiliser un "masque" de texture.
- Changer la source de la texture en material (MA au lieu de IM).

Cette méthode est assez subtile.

Contribution le : 09/08/2016 19:15
Créer un fichier PDF de la contribution Imprimer


Re: Demande d'aide sur le scripting python (BGE)
Clan Afficionado
Inscrit:
29/06/2016 18:04
Post(s): 84
Bonjour de désolé de mon retard je suis parti en vacances précipitamment, je n'ai pas eu le temps d'essayer ton code
Je reviendrai dans quelques jours, je te tiendrai au courant quand j'aurai de nouveau accès à mon ordinateur.
Merci pour ton soutien

Contribution le : 11/08/2016 11:45
Créer un fichier PDF de la contribution Imprimer


Re: Demande d'aide sur le scripting python (BGE)
Clan Afficionado
Inscrit:
29/06/2016 18:04
Post(s): 84
Bonjour, c'est bon je suis rentré.
Je viens de tester ton code, mais je ne comprend toujours pas (oui je doit etre nul de chez nul)

Dans l’exemple de l'api,la commande "logic.texture.source = new_source" permet si j'ai bien compris de remplacer l'image assigné a une texture (ce que je ne veut pas faire).

Je ne comprend pas non plus celle ci "ID = texture.materialID(mon_cube_minecraft, texture_de_mon_cube.png)", ID contient la texture du bloc ou l'image ? et si le cube a plusieurs textures ?

Encore desoler de devoir vous solliciter mais j'ai du mal avec le module video texture

Contribution le : 20/08/2016 17:08
Créer un fichier PDF de la contribution Imprimer


Re: Demande d'aide sur le scripting python (BGE)
OverdOzed
Inscrit:
19/03/2016 15:30
De Belgique
Post(s): 843
Citation :

"logic.texture.source = new_source" permet si j'ai bien compris de remplacer l'image assigné a une texture


C'est ça.

ID contient les informations du materiel:

Si tu indiques "IM_ma_texture" au 2e argument, tu ne pourra changer qu'une seule texture, celle que tu aura indiquée.

Par contre, si tu mets "MA_mon_materiel", tu pourra changer toutes tes textures mais en rajoutant un argument qui indique laquelle.

Je te donne le code car ce n'est pas indiqué dans l'api.
logic.img_cube = VT.Texture(cube_minecraft, matID, nbr)

nbr = position de la texture.

Remarque: On commence par zéro pour la première position.


Dans les deux cas, tu peux avoir plusieurs textures pour un objet.

Contribution le : 21/08/2016 09:30
Créer un fichier PDF de la contribution Imprimer


Re: Demande d'aide sur le scripting python (BGE)
Clan Afficionado
Inscrit:
29/06/2016 18:04
Post(s): 84
Je ne sait pas pourquoi la commande "tex_fissures = texture.Texture("Fissures")" ne marche pas, la console me retourne "Runtime Error"

Pour le moment j'ai ce script :


from bge import logic
from bge import texture

def nt(cont):
cont = logic.getCurrentController()
own = cont.owner
scene = logic.getCurrentScene()
support = scene.objects["support"]
cube_minecraft = scene.objects["cube_minecraft"]


IDsupport = texture.materialID(support, 'IMfissures.png')

tex_fissures = texture.Texture (support, IDsupport)

ID = texture.materialID(cube_minecraft, 'IMcube_minecraft_image.png')

logic.tex_fissures = texture.Texture(cube_minecraft, ID, 5)

#support est un object sur lequel est appliqué la texture "fissure"


Il ne donne pas d'erreur mais ne fait rien de visible, je ne comprend pas.

Contribution le : 24/08/2016 13:18
Créer un fichier PDF de la contribution Imprimer


Re: Demande d'aide sur le scripting python (BGE)
OverdOzed
Inscrit:
19/03/2016 15:30
De Belgique
Post(s): 843
Peut-être une faute de frappe dans tes noms ?

Pas de ligne indiquée ou l'erreur s'est produite ?

La fonction "nt" s'exécute avant la création des objets "material" et "texture" ?

Je te conseille d'utiliser le bouton "code" de l'éditeur de texte de ce forum. Ressemble à ceci: <>

Indique le code qui concerne le changement de texture au complet car l'erreur pourrait se trouver ailleurs.

Contribution le : 24/08/2016 13:39
Créer un fichier PDF de la contribution Imprimer


Re: Demande d'aide sur le scripting python (BGE)
Clan Afficionado
Inscrit:
29/06/2016 18:04
Post(s): 84
Ce code est juste un essais donc il n'y a rien d'autre ou pourrait se trouver une erreur.

Tout les objets sont créés avent le lancement du jeu.

Par contre je viens de m'apercevoir d'une chose étrange, en mode Multitexture la console me laisse entendre que tout va bien mais en GLSL elle m'indique un "RuntimeError", pour la derniere ligne, comme pour la commande "tex_fissures = texture.Texture("Fissures")" qui est sensée marcher.

Merci pour l'astuce du bouton code

Contribution le : 24/08/2016 20:06
Créer un fichier PDF de la contribution Imprimer


Re: Demande d'aide sur le scripting python (BGE)
OverdOzed
Inscrit:
19/03/2016 15:30
De Belgique
Post(s): 843
Besoin du blend qui contient ton problème svp.

Contribution le : 24/08/2016 20:28
Créer un fichier PDF de la contribution Imprimer



 Haut   Précédent   Suivant
« 1 (2) 3 4 5 ... 15 »




Enregistrer votre réponse
Compte*
Nom   Mot de passe   Authentification
Message:*



[Recherche avancée]



Sujets récemment répondus
Forums Sujets Réponses Lus Dernières contributions
Questions & Réponses Problème Bake low/poly 3 135 Aujourd'hui 10:35:23
Redstar 
Moteur de jeu GameBlender et alternatives [WIP] Un projet UE4 avec du Blender    [1][2][3]...[5] 43 6166 Aujourd'hui 00:23:50
dynamique-zak 
Mes premières images sous Blender (débutants) Première image avec cycles: la pieuvre 1 63 Hier 23:44:54
moonboots 
Concours Defis du clan - S 44 thème : Alarme 2 247 Hier 20:37:23
poum_poum_78 
Questions & Réponses Eclairage bouteille    [1][2] 15 301 Hier 19:01:07
hakanaya 
Questions & Réponses Personnage le long d'un chemin 7 103 Hier 17:06:21
Teluma 
Python & Plugins Killer Cleaner ! 1 92 Hier 12:59:16
dono 
Questions & Réponses [résolu] Le BGE et le système nodal - on reprends    [1][2][3]...[5] 48 3966 Hier 12:01:18
Redstar 
Moteur de jeu GameBlender et alternatives Projets simples jeux basiques navires de guerre (essaie pour apprendre)    [1][2][3]...[5] 42 3073 Hier 12:00:25
Redstar 
Questions & Réponses ANT Landscape : erreur quand j'essaie d'ajouter cet addon dans "User Preferences". 1 149 17/11 22:42:41
Melodicpinpon 
The Blender Clan 'tchat Débutant avec Blender    [1][2] 13 798 17/11 21:41:35
snake72 
The Blender Clan 'tchat ( remuneré) Besoin du personnage flash en 3D 0 127 17/11 15:30:33
paulo 
Questions & Réponses mixer trois textures ensemble 0 100 17/11 15:22:45
Melodicpinpon 
Questions & Réponses placer un objet en fin de courbe 3 111 17/11 13:23:44
FoxRock 
Questions & Réponses Visionnage texture 5 247 17/11 11:56:45
GLM 
[WIP] et travaux terminés [WIP] Renault 4L stylisée    [1][2] 16 2161 17/11 11:34:22
Nocs91 
[WIP] et travaux terminés [WIP] Batiments, rues...    [1][2][3]...[6] 52 32611 17/11 11:29:11
Nocs91 
The Blender Clan 'tchat Jeux open sources et python + blender?    [1][2] 11 440 17/11 11:25:24
Zack2554 
[WIP] et travaux terminés [WIP] Ford Mondeo 4 548 17/11 11:17:21
Nocs91 
[WIP] et travaux terminés [WIP] Poudlard - cours de l'Horloge    [1][2] 19 3170 17/11 11:11:57
Nocs91 

Qui est en ligne
43 utilisateur(s) en ligne (dont 35 sur Forums)

Membre(s): 1
Invité(s): 42


BILL, plus...
Nouveaux membres
poum_poum_78 18/11/2017
PaulI 17/11/2017
paulo 17/11/2017
Creativeduke 16/11/2017

jack500
16/11/2017
Devilred 15/11/2017
Zbwugg35 15/11/2017
AlexandreAllard 15/11/2017
nochamo 13/11/2017
fourmiz 13/11/2017
Dernier Ajout
hippocampe_01.png

Evènements à venir
(continuer) - Nov 19
Anniversaire de RichDeg
Dec 29
Anniversaire d'ebrain
Jan 13
BUG de Lyon
plus 311 plus d'élément(s)
 Par Mickaël Guédon [ebrain] © 2003-2017 The Blender Clan - hébergé par TuxFamily - Site déclaré à la CNIL sous le numéro 1155445