PDA

Voir la version complète : Noeud "Instance Maker"



base80
09/04/2005, 17h28
Est ce que quelqu'un peu m'expliquer comment je peux faire un noeud xpresso "COFFEE" comme celui sur l'image si dessous.
Je voudrais un noeud qui me crée un null avec un nombre définit d'instances dedans.


http://www.base80.com/xpresso-files/Instance-Maker/instance-maker.jpg

Je les positionnerais ou je veux avec une méthode traditionnelle, itération..

Guedinouff
09/04/2005, 22h45
Bon puisque personne n'est inspirée je vais essayer de faire quelque chose :

je suis parti sur une structure dans ce genre :
si l'objet neutre n'existe pas
créer un objet neutre
répéter nombre_instances fois
créer une instance del'objet et le placer juste en dessous de l'objet neutre
fin répéter
fin si

je ne sais pas exactement ce que tu veux faire, mais cette structure ne permet pas de mettre à jour le truc sauf si on supprime l'objet neutre. Il faudrait donc rajouter une boucle qui supprime l'objet neutre si le nombre d'instance est mauvais. Le problème c'est que dans ce cas, les objets enfant de l'objet neutre serait changés car recréer.

Voici le code que j'ai fait :


main()//début de la fonction principale
{
//définition des variables
var Nbrei=(Nombre_instances+1);
var doc=GetActiveDocument();
var i;
var Instance;

var neutre=doc->FindObject("Parent neutre");
if (!neutre)//si un objet ne porte pas déjà ce nom dans la scène
{
var Parent=new(NullObject);//on créé un nouvel objet neutre
Parent->SetName("Parent neutre");//a qui on donne le nom "parent neutre"
doc->InsertObject(Parent,NULL,NULL);//on insert cet objet dans le document à la racine de la hiérarchie

for &#40;i=1; i<Nbrei; i++&#41;//on répète la boucle autant de fois que définit dans par l'entrée nombre instance
&#123;
Instance=new&#40;InstanceObject&#41;;//on créé un nouvel objet instance
var nom=&#40;stradd&#40;"Instance ",tostring&#40;i&#41;&#41;&#41;;
Instance->SetName&#40;nom&#41;;//on lui donne un nom de la forme "Instance 1"
//paramétrer l'objet de l'instance//je n'ai pas encore fait cette ligne parce que je ne sais pas faire ! Il faudrait paramétrer une des données du container de l'objet avec l'objet en entrée de nœud coffee
doc->InsertObject&#40;Instance,Parent,NULL&#41;;//on insert l'objet instance nouvelle créé
&#125;
&#125;
&#125;

Il vaut mieux supprimer les commentaires car je pense que certain peuvent gêner l'exécution du script.
Désolé pour la présentation, j'ai tapé çà hors ligne dans un traitement de texte... :oops:

Majoul
10/04/2005, 02h21
Tu as la réponse ICI (http://www.bubbles4d.com/index.php?action=dlattach;topic=280.0;id=187;image )

Pour voir le sujet c'est ICI (http://www.bubbles4d.com/index.php?topic=280.90)

base80
10/04/2005, 04h45
Sorry MAJOUL j'ai pas voulus te vexer.
Je sais que je suis un mauvais élève a ton super cours de coffee, pourtant je rêve de pouvoir m'en servir.
Je vais reprendre le sujet a zéro, promis.

J'ai l'impression a force de ne rien montrer de passer pour un imbécile. pas de tabou ni de tengaal qui me réponde je doit faire un truc de travers.
Mais je maintiendrais que j'aime xpresso, rien a faire.

merci Guedinouff aussi.

Je ne poserais plus de questions ça n'as pas l'air de bien m'aller.

Je me sent un peu abandonné il est 4h moins quart. Aurety me manque énormément. Le forum commence a me dégoûter de plus en plus. Je pense a prendre une solide pause comme pleins d'autres modo. bon allé sommeil a+

Majoul
10/04/2005, 04h58
Base pour me vexer il en faut beaucoup, bon comme je n’arrive pas à dormir je te fait ton nœud de suite.

Majoul
10/04/2005, 05h03
Il faut une autre entree lien pour le parent qui va recevoir les instances

Majoul
10/04/2005, 05h11
Du copier coller


http://perso.wanadoo.fr/archizone/DIVERS/xpresso/base.jpg


Le fichier (http://perso.wanadoo.fr/archizone/DIVERS/xpresso/InstanceMaker.c4d)

base80
10/04/2005, 05h24
Merci maloul ça marche a merveille en R9. mais en r8.5 ça bug jaune.
C'est puissant et super pratique ton truc
j'ai ajoutéton nom avant de le distribuer dans des xpresso que je compte faire avec. Majoul l'émetteur de particules!! Super

Majoul
10/04/2005, 05h33
c'a marche qu'en 9.1 avec la nouveauté # operator qui donne accès rapidement au paramètre, très cool, si non je peut te la modifier pour fonctionner en 8+


edit : version pour 8+ (http://perso.wanadoo.fr/archizone/DIVERS/xpresso/Instance_Maker_8_plus.c4d)

base80
10/04/2005, 05h41
Si tu pourrait faire ça en 8.5 ça serrais formidable, Si tu veux verrouille la aussi pour la distribution et met ton nom dans les commentaires. Ce truc vas me servir tout les jours. C'est une base de mon travail dans les mois a venir. Merci Majoul pour ton boulot formidable, Tu m'as donné envie d'apprendre coffee pour la première fois. Même si je ne pense pas aimer ce codage dur au début. Ta syntaxe m'a l'aire super propre.

En fait tu prouve encore plus la force d'xpresso pour moi, et ce noeud coffee je devrais l'apprendre pour élargir mes possibilités

Majoul
10/04/2005, 05h50
c'est fait, j'ai edité mon message.

regarde dans la nouvelle doc du coffee ( # operator ) c'est trés cool.

base80
10/04/2005, 05h59
Whoaaa C'est super
Je vais le traduire en ENG, et tu doit me dire si je doit le protéger avant distribution.
Je fait un petit projet de stores vénitien qui s'adaptent a la largeur et hauteur d'une fenêtre (bounding box) et le coffee de majoul me serviras a fond pour paramètrer mon objet. merci.
Mais j'aimerais faire pleins d'autres trucs avec ce noeud donc je veux qq. consignes de distribution. (fermé/ouvert--©Majoul?)


Bordel quel fête ce truc

Majoul
10/04/2005, 06h07
Tu fait ce que tu veux avec, c'était le code du sujet sur bubble.
Si tu as besoin d'un coup de main pour tes projet n'hésite pas.

Aurety
10/04/2005, 12h59
Je te suis Base80, c'est vrai je participe pas mais ce n'est pas faute de vouloir mais j'ai un boulot de taré en ce moment. Même plus le temps de faire une moindre chose en 3D pour moi. Je ne désespère pas de revenir bientôt alors lâche pas le bout de gras, je serais super triste de voir qu'à mon retour tous mes poteaux soient partis. :cry2:

base80
15/04/2005, 19h46
Majoul ton noeud est formidable.
Je m'en suis servi pour faire des align to spline style collier a perles, d un escalator, un émetteur de particules, ...

Je fait un mega tut dans le mag attack de mai a ce sujet et j'offre le noeud en version anglaise (protégé) en goodie si tu est d'accord.
J'ai appelé le port référence > Container

Et serrais-ce possible de faire le même noeud qui craie des duplication de l'original donc pas des instances...

Et j'aimerais passer l'été chez toi pour apprendre coffee je pense que ça devient indispensable si je veux créer mes noeuds a moi.

Sir Gong
15/04/2005, 20h23
Majoul ton noeud est formidable.
...
Et j'aimerais passer l'été chez toi...
J'adore les histoires d'amour. :love:

tabou
15/04/2005, 21h17
Mais non, tu n'as rien fait de travers, base :D c'est juste que je suis un peu débordé en ce moment et je ne passe pas souvent sur le forum, quand au géant vert, c'est le printemps, il est occupé à bourgeonner :mrgreen:
De toute façon je ne vois pas comment j'aurais pu faire mieux que Majoul :coup:

Gong : j'adore ton sens du raccourci :love:

Majoul
17/04/2005, 03h18
Je fait un mega tut dans le mag attack de mai a ce sujet et j'offre le noeud en version anglaise (protégé) en goodie si tu est d'accord.
J'ai appelé le port référence > Container

Ok, pas problème comme je te l'ai dit.

Et serrais-ce possible de faire le même noeud qui craie des duplication de l'original donc pas des instances...

Tout à fait possible dans le même nœud si tu veut avec une entrée en plus de type booléen (clone/instance).


Et j'aimerais passer l'été chez toi pour apprendre coffee je pense que ça devient indispensable si je veux créer mes noeuds a moi.
Pourquoi attendre l’été, tu peut commencer maintenant

Gong : toujours prêt pour appuyer sur ton détonateur. :mrgreen:

base80
17/04/2005, 06h09
je pue des pieds
mais j'arrive dès que je peux.

base80
17/04/2005, 21h17
Miaaaam le noeud objet/instances-maker

si dessous un petit exemple de ce que peux faire le noeud. il place des cubes au centre de chaque polygone d'un plan animé. Le nombre d'instances est géré par le noeud instance-maker.
http://www.base80.com/xpresso-files/Instance-Maker/flag-cubes2.gif

base80
17/04/2005, 23h14
Plus relevant; un mur de jardin paramétrique. Tout est fait par une seule spline qui décrit le contour du jardin. Le nombre d'élément est calculé par rapport a la longueur de la spline et passé au noeud instance-maker.

700ko
http://www.base80.com/xpresso-files/Instance-Maker/gardenwall.gif

hellohi
18/04/2005, 16h39
Salut :D !! J'ai téléchargé aussi instance maker pour le 9.1 , merçi Majoul !!
mai je doit etre vraiment idiot :oops: je n'arrive pas a l'utilisé , je met un tag sur un neutre et je fais un copier coller de l'objet , je modifie le nbr d'instance ........ mais rien !!! pouvez-vous ( majoul ou base ) m'éclairé !!!

Mreçi d'avance :poucehaut: :poucehaut:

base80
18/04/2005, 18h23
ben fo connaitre xpresso et connecter les noeuds et tout. c'est un noeud le truc et pas une xpression toute faite

hellohi
18/04/2005, 19h59
:oops: :oops: Ahh ok , bon !! il ne me reste plus cas bossé sur les xpresso , merçi de ta réponse Base !!!

base80
19/04/2005, 17h36
La belle époque des bouteilles. Celle ci sont généré le long d'une spline.
http://www.base80.com/xpresso-files/Instance-Maker/Base80-Bottles.jpg


Dans le 3d Attack mag je donne des exemples plus avancé, un îlot avec des plantes et des cailloux généré par "Instance-Painter"

Apres la sortie du mag je posterais certainement plus de trucs ici.