Connexion
Menu Principal
Recherche
Menu secondaire
Image Aléatoire
Publicité
|
|
un labyrinthe |
|
OverdOzed 
Inscrit: 24/02/2007 16:18
De Tokyo
Post(s): 594
|
Bonsoir à tous. Mon objectif est de faire un script qui crée un labyrinthe dans un espace limiter. Une création au tracé aléatoire. Partir des faces d'un cube en mode edit et extrudes aléatoirement. mais pas en z ou -z. Le code à partir duquel je pars.
import bpy
import random
bpy.ops.object.editmode_toggle()
bpy.ops.mesh.select_all(action = 'DESELECT')
bpy.context.tool_settings.mesh_select_mode[2]=1
bpy.context.tool_settings.mesh_select_mode[0]=0
bpy.context.tool_settings.mesh_select_mode[1]=0
#la boucle d'extrusion des faces
b=0
atenuer=random.uniform(0.0,2.0)
for a in range (0,5):
bpy.ops.mesh.select_random(percent=20+atenuer-b,extend=False)
bpy.ops.mesh.subdivide()
bpy.ops.mesh.extrude_faces_move(MESH_OT_extrude_faces_indiv=
{"mirror":False}, TRANSFORM_OT_shrink_fatten={"value":4.5-a, "mirror":False, "proportional":'DISABLED',
"proportional_edit_falloff":'SMOOTH', "proportional_size":1, "snap":False, "snap_target":'CLOSEST', "snap_point":(0, 0, 0),
"snap_align":False, "snap_normal":(0, 0, 0), "release_confirm":False})
bpy.ops.mesh.select_all(action = 'DESELECT')
b=b+5
bpy.ops.object.editmode_toggle()
Bon c'est pas ce que je veux, Je me suis dit qu'on pouvait utiliser #bpy.ops.mesh.select_axis(mode='POSITIVE', axis='X_AXIS') également, comment éviter "les croisements". "Si il y a déjà une vertice sur ce point, stopper les extrusions." 
Contribution le : 02/01/2013 17:15
|
|
|
Re: un labyrinthe |
|
Fou Furieux du Clan 
Inscrit: 20/08/2012 16:07
De France / Doubs
Post(s): 163
|
Salut, Pas si simple, tu devrais déja regarder du coté des générateurs de labyrinthes (javascript maze generator sur google) en JS: http://charlo.gamemakersgarage.com/games/mazegen.phpou http://www.xefer.com/2007/07/mazeet transposer le code en python pour ensuite extruder ton mur... Bon courage mapleberry
Contribution le : 02/01/2013 23:08
|
|
|
Re: un labyrinthe |
|
OverdOzed 
Inscrit: 24/02/2007 16:18
De Tokyo
Post(s): 594
|
Merci Mapleberry, tout à fait d'accord pour le "pas si simple." je vais voir pour les générateurs de labyrinthes en Java. Bonne journée. PS: xefer.com/script/maze.jsEt dans le code précédant cette explication, à propos des labyrinthes (Anglais) 
Contribution le : 02/01/2013 23:55
|
|
|
Re: un labyrinthe |
|
Fou Furieux du Clan 
Inscrit: 20/08/2012 16:07
De France / Doubs
Post(s): 163
|
C'est autant difficile d'en dessiner un que d'en sortir Bonne continuation, c'est un bon challenge en tout cas... mapleberry
Contribution le : 03/01/2013 09:47
|
|
|
Re: un labyrinthe |
|
OverdOzed 
Inscrit: 24/02/2007 16:18
De Tokyo
Post(s): 594
|
Bon, c'est pas sûr que j'aille jusqu'au bout mais y réfléchir ça pourra me faire progresser. A propos de ce challenge, Je me suis aussi dit que la logique de programmation était dépendante des contraintes du HTML ou du Java. On pourrait utiliser les atouts de Blender soit les bones ou bien les emptys dans cette histoire. Je ne dis pas que ça fera un labyrinthe parfait mais bon. par exemple, 1)Définir un chemin avec des bones (je sais pas encore faire j'imagine que ça doit être possible). Entre un point A et un point B, une chaine de Bones, tous les obstacles, briques qui contiendraient aussi des bones seraient éliminées. Resterait à créer préalablement, les murs aléatoires du labyrinthe.
2) y a aussi la possibilité de faire des arborescences dans un cadre. Bon c'est pas super clair comme ça, désolé, je vais m'y atteler tout de suite.
Contribution le : 03/01/2013 15:37
|
|
|
Re: un labyrinthe |
|
OverdOzed 
Inscrit: 30/12/2011 15:44
Post(s): 566
|
Plutôt que de vouloir a tout prix récupérer des éléments issus de Blender, pourquoi ne pas commencer par des éléments uniquement issus de Python pour commencer ?
Je te recommande plutôt de générer d'abord ton labyrinthe sous forme d'array, de list (ou d'objects ?) et de s'en servir ensuite pour générer les meshs qui serviront de mur.
Contribution le : 03/01/2013 16:07
|
|
|
Re: un labyrinthe |
|
Fou Furieux du Clan 
Inscrit: 20/08/2012 16:07
De France / Doubs
Post(s): 163
|
Je suis d'accord avec DoubleZ, il faut déja s'occuper de l'algo en python, Blender malgré tous ces outils ne fera pas le boulot "pour toi" tout seul  mapleberry.
Contribution le : 03/01/2013 17:01
|
|
|
Re: un labyrinthe |
|
OverdOzed 
Inscrit: 24/02/2007 16:18
De Tokyo
Post(s): 594
|
Merci DoubleZ et mapleberry. Oui effectivement, c'est ce qu'il faudrait faire. Citation : Je te recommande plutôt de générer d'abord ton labyrinthe sous forme d'array, de list (ou d'objects ?)
Pourrais-tu, DoubleZ, sans me mâcher le travail, m'orienter vers un tuto qui pourrais me servir de base pour bien aborder les notions dont tu parles. Je vais également chercher de mon côté.  PS: Donc je cherche et hop! joli hors sujet au passage: Une bonne présentation du système de particule 
Contribution le : 03/01/2013 17:27
|
|
|
Re: un labyrinthe |
|
RegulatorZ 
Inscrit: 23/05/2004 07:11
De Metz
Post(s): 11301
|
Citation : C'est autant difficile d'en dessiner un que d'en sortir
Dans ce cas si ça peut aider, voici un module python pour sortir d'un labyrinthe simple. Ça pourrait par exemple servir à vérifier qu'ajouter un nouveau "mur" ne bloque pas la sortie.
Contribution le : 03/01/2013 17:51
|
|
|
Sujets récemment répondus |
|
Forums |
Sujets |
Réponses |
Lus |
Dernières contributions |
The Blender Clan 'tchat |
Avenir du blender clan [1][2][3]...[44] |
434 |
63293 |
Hier 21:49:25 Rimpotche  |
Hors Sujet !! |
Buy (50 Pieces) Samsung Galaxy Tab S8+ 12.4-inch display Original Wi-Fi 256GB $27,500 |
0 |
14 |
Hier 14:13:51 emailychang01  |
Hors Sujet !! |
Buy (20 Pieces) New Sony PlayStation 5 Console – Horizon Forbidden West Bundle $8,000 |
0 |
39 |
15/08 14:53:07 emailychang01  |
Hors Sujet !! |
Buy (30 Pcs) Dell - Inspiron 2-in-1 16-Inch 512GB SSD $25,47 |
0 |
41 |
14/08 19:10:12 emailychang01  |
Hors Sujet !! |
les tutos de Moonboots [1][2][3]...[31] |
301 |
44472 |
14/08 13:41:53 moonboots  |
Hors Sujet !! |
Buy (100 Pcs) Sunpak 22 Bi-Color Ring Light Vlogging $10,900 |
0 |
61 |
13/08 16:17:37 emailychang01  |
Hors Sujet !! |
Buy (50 Pieces) Cambridge Audio - G2 Mini Portable Bluetooth Speaker - Black $5,950 |
0 |
81 |
12/08 15:43:03 emailychang01  |
Hors Sujet !! |
Buy (50 Pieces) New Samsung Galaxy Z Fold4 256GB Unlocked $64,950 Website: www.brianelectronics.com |
0 |
1963 |
11/08 14:19:42 emailychang01  |
Hors Sujet !! |
Buy (50 Pieces) Apple iPad Pro 11-Inches 2021 2TB Wifi + Cellular $84,950 |
0 |
101 |
10/08 16:07:53 emailychang01  |
Hors Sujet !! |
Buy (50 Pieces) New Original Unlocked Apple iPhone 13 5G 512GB $34,950 |
0 |
129 |
09/08 14:54:39 emailychang01  |
Questions & Réponses |
Problème alpha sur le rendu |
3 |
196 |
09/08 13:27:37 debutant  |
Hors Sujet !! |
Buy (30 Pieces) LG - 55-inch Class C2 Series OLED evo 4K UHD Smart webOS TV (2022) $44,970 |
0 |
132 |
08/08 13:58:45 emailychang01  |
Hors Sujet !! |
Buy(30 Pcs) Package Fujifilm-X-S10 Mirrorless Camera $30,570 Website: www.brianelectronics.com |
0 |
142 |
07/08 15:23:19 emailychang01  |
Hors Sujet !! |
Buy (10 Pieces) Sony - FE 70-200mm F2.8 GM OSS II Full-Frame Telephoto Zoom G Master Lens $24,990 |
1 |
83689 |
06/08 17:16:33 moonboots  |
The Blender Clan 'tchat |
Enfin ! depuis 20 ans :) |
2 |
297 |
06/08 15:06:57 stefff285  |
Hors Sujet !! |
Buy(50 Pcs) Optoma CinemaX P2 Home Theater Projector $94,950 Website: www.brianelectronics.com |
0 |
23033 |
05/08 15:34:27 emailychang01  |
Hors Sujet !! |
Buy (50 Pieces) Samsung Galaxy Tab S8+ 8GB 12.4-inch display Original Wi-Fi Only 128GB $22,500 |
0 |
18451 |
04/08 16:14:48 emailychang01  |
Hors Sujet !! |
Buy(50 Pcs) Mac Studio (2022) M1 Ultra 64GB 1TB SSD $174,950 |
0 |
241 |
03/08 17:10:34 emailychang01  |
Questions & Réponses |
problème sur la texture voulue |
3 |
425 |
03/08 01:56:09 meltingman  |
Hors Sujet !! |
Buy (50 Pcs) HP ENVY 2-in-1 15-ch i7 16GB 512GB SSD $29,950 |
0 |
336 |
02/08 16:29:43 emailychang01  |
|
|
Qui est en ligne
Nouveaux membres
Dernier Ajout
Evènements à venir
|