Connexion
Menu Principal
Recherche
Menu secondaire
Image Aléatoire
rendu_complet_PostProd_little.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): 89
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): 89
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): 880
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): 89
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): 89
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): 880
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): 89
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): 880
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): 89
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): 880
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
[WIP] et travaux terminés [WIP] Lampe de mineur 8 384 Aujourd'hui 00:49:53
keltwookie 
Questions & Réponses contenu additionnel 3 104 Aujourd'hui 00:25:40
evra 
[WIP] et travaux terminés Comics style. 2 117 Aujourd'hui 00:11:15
DaWaaaaghBabal 
Questions & Réponses Ma texture d'environnement est floue 1 41 Hier 21:26:42
Rimpotche 
Questions & Réponses des tutos pour la dernier version blender 2.79 2 82 Hier 20:27:01
Deleatur 
Le coin des geeks Renderfarm / ferme de rendu sur Cycles 3 248 Hier 09:14:25
Jaysc 
Questions & Réponses Normal map toutes grise ? 1 91 18/01 19:28:12
lum-san 
Questions & Réponses [résolu] Fond dans un rendu    [1][2] 13 250 18/01 16:58:56
Rimpotche 
[WIP] et travaux terminés 6090 FS Hydraulic Mining Shovel Caterpillar    [1][2] 16 1849 18/01 11:24:09
Deleatur 
Questions & Réponses Alléger un personnage 9 360 18/01 09:42:23
JFX 
Questions & Réponses Faire un angle en mode sculpture 3 160 18/01 07:00:14
francerf 
Concours Défis du clan - semaine 1 : "Clair-obscur"    [1][2] 14 523 17/01 19:11:41
busanga 
Questions & Réponses Baking vertex color sur texture bitmap 0 71 17/01 18:19:52
majorfatal 
Questions & Réponses Rotation automatique indésirable 1 81 17/01 17:54:11
Rimpotche 
Le coin des geeks écran 24/27 avec couleurs exactes ? 1 100 17/01 16:36:42
Jaysc 
The Blender Clan 'tchat [BUG PARIS] RDV en 2018 !    [1][2][3]...[69] 681 146617 17/01 15:52:43
walai 
Concours Défis du Clan 2018 - S.2 - Roue(s) 0 70 17/01 11:48:23
busanga 
Questions & Réponses [résolu] Belnder 2.79 et fractures. 3 231 16/01 17:23:33
moonboots 
Questions & Réponses [non résolu] Travailler proprement avec Blender et ses UV/CarteUV 0 163 16/01 17:23:03
Draenys 
Questions & Réponses Drivers et proportional editing 0 90 16/01 09:28:16
Jessicad 

Qui est en ligne
25 utilisateur(s) en ligne (dont 9 sur Forums)

Membre(s): 0
Invité(s): 25


plus...
Nouveaux membres
JamiEden26 20/1/2018
DanieleHud 20/1/2018
obofevyd 19/1/2018
BirgitSymo 19/1/2018
GilbertoFa 19/1/2018
MayYama 19/1/2018
ClevelandD 19/1/2018
Maryann80L 19/1/2018
AndresDwye 19/1/2018
AshleyMuns 19/1/2018
Dernier Ajout
DB11_Aston_Martin_2017_bothview.jpg

Evènements à venir
Fev 15
Anniversaire de Dany
Fev 23
anniversaire de windspirit
Mar 14
Anniversaire de AMV12
plus 308 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