Boutique Cinema 4D
Affichage des résultats 1 à 6 sur 6

Discussion: particules sur c4d art

  1. #1
    Pilier Avatar de parksto
    Date d'inscription
    juillet 2002
    C4D version
    Autre
    Messages
    840

    particules sur c4d art

    c'est à quelques jours seulement de l'arrivé de c4d 8 que je trouve ça, mais bon, ça peux toujours aider quelqu'un...

    dans c4d art, qui je le rappelle ne possede pas la faculté de faire de l'animation, les particules ne sont pas accessibles, je pensait même qu'elle n'étaient pas gérés.
    c'est en téléchargeant un fichier sur internet que je me suis retrouvé avec un éméteur de particules dans ma scène.

    il est en effet tout à fait possible d'utiliser les particules dans c4d art.

    il suffit pour cela de créer un null object et d'y mettre cette expression coffee :


    var part;

    main(doc,op)
    {
    part=new (ParticleObject);
    part->SetName("particules");
    doc->InsertObject(part,op,NULL);
    }


    pour avoir des particules dans la scène, il faut donner une valeur négative à "commencer emission".

    j'espère pouvoir aider certains avec ça

    (il faut supprimer l'expression assez vite si vous ne voulez pas avoir des dizaines d'emetteurs) :wink:

  2. #2
    Invité
    Date d'inscription
    juin 2002
    C4D version
    R16 Studio
    OS
    Win 7 Pro
    Messages
    4 252

    particules sur c4d art

    Je n'ai pas la version ART mais pour cette expression on peut la contrôler d'avantage, par exemple la déclencher en cliquant sur un objet pour qu'elle produise un nombre N d' emetteurs de particules.

    Créer un objet NULL appelé "bouton"
    Créer un objet NULL appelé "expression" avec l'expression suivante:


    var nb_emitters=50; //on met ici le nombre d'emetteurs de particules souhaité

    var part;

    main(doc,op)
    {
    var clic=GetActiveObject(doc); //regarde quel est l'objet actif
    if (!clic) return; //si il n'y en a pas on quitte
    if ("bouton"!=clic->GetName()) return; //si l'objet actif n'est pas "bouton" on quitte
    doc->SetActiveObject(op); //désélectionne aussitôt le bouton

    var n;
    for (n=0;n<nb_emitters;n++)
    {
    part=new (ParticleObject);
    part->SetName("particules_"+tostring(n)); //tostring(valeur) convertie une valeur en texte
    doc->InsertObject(part,op,NULL);
    }
    doc->Message(MSG_UPDATE); //actualise la scène.
    }

    Il suffit donc de cliquer sur l'objet "bouton" pour exécuter l'expression qui va produire nb_emitters emetteurs de particules, évitant ainsi que l'expression tourne en permanence et produise des objets indéfiniment !

  3. #3
    Renaud
    Invité

    particules sur c4d art

    L'astuce est sympa pour moi qui ai ART... mais comme la R8 devrait plus trop tarder (je croise les doigts), je risque de pas m'en servir tout de suite ;-)

    Merci vachement beaucoup à tous les deux, c'est "meuh meuh" comme trouvaille ça :wink:

  4. #4
    Pilier Avatar de parksto
    Date d'inscription
    juillet 2002
    C4D version
    Autre
    Messages
    840

    particules sur c4d art

    cette expression m'a pris deux minutes, juste pour tester. en general, un seul emetteur de particules suffit (personnellement 50 emetteurs, je ne sais pas ce que je vais en faire ! )

    je me retrouve donc avec ce code :


    var n=1;

    var part;

    main(doc,op)
    {
    var clic=GetActiveObject(doc); //regarde quel est l'objet actif
    if (!clic) return; //si il n'y en a pas on quitte
    if ("bouton"!=clic->GetName()) return; //si l'objet actif n'est pas "bouton" on quitte
    doc->SetActiveObject(op); //désélectionne aussitôt le bouton


    {
    part=new (ParticleObject);
    part->SetName("particules_"+tostring(n)); //tostring(valeur) convertie une valeur en texte
    doc->InsertObject(part,op,NULL);
    n++;
    }
    doc->Message(MSG_UPDATE); //actualise la scène.
    }


  5. #5
    Pilier Avatar de parksto
    Date d'inscription
    juillet 2002
    C4D version
    Autre
    Messages
    840

    particules sur c4d art

    Citation Envoyé par Renaud
    L'astuce est sympa pour moi qui ai ART... mais comme la R8 devrait plus trop tarder (je croise les doigts), je risque de pas m'en servir tout de suite ;-)
    moi aussi j'attend avec impatience. :roll:
    mais bon, pour ce qui n'auront pas la mise à jour tout de suite, ça peut être utile.

  6. #6
    Invité
    Date d'inscription
    juin 2002
    C4D version
    R16 Studio
    OS
    Win 7 Pro
    Messages
    4 252

    particules sur c4d art

    Si tu veux produire seulement un emetteur à chaque fois tu peux enlever

    "var n=1;"
    egalement le "+tostring(n)" car c4d mettera lui-même un chiffre si besoin.
    et enfin "n++;"

    Il faut prendre l'habitude de faire du ménage dans les scripts pour ne conserver que le stricte nécessaire. Pour les petits programmes ce n'est pas gênant mais pour de grosses expressions avec beaucoup de code ça peut vite devenir le bordel ! :wink:

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •  
Mediaworks - Logiciels 3D | Design Internet - Creation site internet