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

Discussion: le premier wip en COFFEE!!!

  1. #1
    Pilier
    Date d'inscription
    octobre 2003
    Messages
    1 630

    le premier wip en COFFEE!!!

    bonjour les gars!!

    je m'interesse de près au langage COFFEE en ce moment et je voulais faire un truc serieux, inutile mais serieux...

    je veux ecrire un expression à moi tout seul comme un grand pour mettre en application ce que j'ai appris et, je l'espere, apprendre encore plus! mon objectif est de faire ceci:

    avec une sphère, une matière et une expression attachée à la sphère je veux que, quand je bouge ma sphère vers +X, elle devient de plus en plus rouge; vers -X pareil mais avec le vert; vers +Z toujours pareil mais cette fois-ci avec le bleu et vers -Z avec l'intensité (et quand elle est à zéro et bah je verrai quelle couleur je veux).
    à cela on ajoute une remise à l'echelle, toujours progressive, sur l'axe des Y...

    bon voila, et le principe c'est que ceux qui s'y connaissent en programmation, me disent ou j'ai des fautes, des petits trucs par-ci par-là et ainsi de suite.
    j'espere vous transmettre le premier essai d'ici le moins longtemps possible et je compte sur vous pour m'aider!!!

    en vous remerciant tous d'avance, FLOBY


    (aller let's go!! :bounce: :wip: )

  2. #2
    Pilier
    Date d'inscription
    octobre 2003
    Messages
    1 630

    le premier wip en COFFEE!!!

    voila, après 5 minutes de travail je crois deja que j'ai des fautes. j'ai eu le temps de definir les variables dont j'aurais besoin...

    mon expression:

    main (doc,op)

    {
    var position = op->GetPosition();
    var matiere = doc->GetFirstMaterial();
    var matierecont = matiere->GetContainer();
    var canal = matiere->GetChannel(CHANNEL_COLOR);
    }

  3. #3

    le premier wip en COFFEE!!!

    vas y floby!
    Je ne connais pas les cofees vu que j'ai xpresso mais je connais d'autres languages. Ce que tu as fais a l'air correct (j'ai un petit doute mais je suis pas sur du tout sur la derniere ligne) mais t'es pas obligé de m'ecoutté, puisque j'ai dis que je connaiscais pas trop :lol:
    vador est mort...<br />Il devient darky!<br />mon blog<br />ma galerie<br />ma galerie FC4D

  4. #4
    Pilier
    Date d'inscription
    octobre 2003
    Messages
    1 630

    le premier wip en COFFEE!!!

    oui c'est sur cette ligne là que j'avais un doute, il faut que je regarde la doc de tengaal...

    désolé pour l'instant, je peux plus continuer, je continuerai demain...

  5. #5

    courage

    Super, enfin du décodage du Coffee. Moi aussi ca m'interesse mais je trouve que la doc sur internet c'est pas vraiment le top. A quand une vraie doc pour Coffee ?

    Sinon tu peux le faire aussi en Xpresso ce qui est plus simple, mais bon.

    Mettre les mains dans le cambouis c'est aussi bien.

    Courage

  6. #6
    Pilier
    Date d'inscription
    octobre 2003
    Messages
    1 630

    le premier wip en COFFEE!!!

    tu as regardé la doc de Tengaal? moi je la trouve hyper bien, en plus j'ai tout compris!

  7. #7

    le premier wip en COFFEE!!!

    oui, mais je n'ai pas fait la méthode encore. Je m'amuse plutôt avec Xpresso. Mais coffee + Xpresso, c'est du tonnerre.

  8. #8
    Pilier
    Date d'inscription
    juillet 2002
    C4D version
    Autre
    Messages
    939

    le premier wip en COFFEE!!!

    C'est du bon boulot la doc de Tengaal :-)

    On peu aussi concevoir un principe en xpresso pour comprendre le truc, et essayé de le refaire en COFFEE après, ça aide parfois

    Mais surtout ce qui est bien c'est de commencé à faire des trucs en xpresso pour comprendre les principes de la prog de C4d, après c'est plus simple de passer au COFFEE

    Et puis mélanger apres du COFFEE avec XPresso, c'est de la bombe ! :poucehaut:

  9. #9
    Pilier
    Date d'inscription
    octobre 2003
    Messages
    1 630

    le premier wip en COFFEE!!!

    oui j'ai vu ce que tu fais steph, c'est super.

    mais pas d'Xpresso pour moi helas, CE6 oblige alors je passe direct au dur de dur, par contre j'ai regardé le tut Xpresso sur la roue qui tourne, ca a l'air d'être le même principe de calcul que ce que je veux faire... je vais m'amuser comme un petit fou!

  10. #10
    Pilier
    Date d'inscription
    juillet 2002
    C4D version
    Autre
    Messages
    939

    le premier wip en COFFEE!!!

    Pour la roue en COFFEE pas besoin de te prendre la tete à comprendre comment l'adapté de l'exemple xpresso, Tabou avait déjà ecrit un petit code cool en COFFEE et plutôt simple à comprendre

    /* Cette expression fait tourner automatiquement la roue sur laquelle elle est placée
    en fonction du déplacement de l'objet chariot.
    L'expression ne prend en compte que les déplacements sur l'axe Z, l'axe X est ignoré.
    Pour un déplacement sur l'axe X il faut remplacer pos=pos.z par pos=pos.x

    Pour adapter cette expression à un véhicule déjà modélisé il suffit de la placer
    sur chacune des roues, ensuite il faut donner à l'objet radius le même rayon externe
    que celui des roues et finalement remplacer "chariot" par le nom du véhicule.

    tabou août 2002 http://tabou.free.fr/ tabou@free.fr
    */


    main(doc,op)
    {
    var pos=doc->FindObject("chariot")->GetPosition();if(!pos)return;
    pos=pos.z;

    var rayon=doc->FindObject("radius")->GetContainer()->GetData(PRIM_TUBE_ORAD);if(!rayon)return;
    var diam=rayon*2;
    var circ=diam*PI;

    var rot=-(Radians(pos/circ)*360);
    var rotz=vector(0,rot,0);
    op->SetRotation(rotz);

    }
    La page du site http://tabou.free.fr/c4d/exp/exp.html

  11. #11
    Pilier
    Date d'inscription
    octobre 2003
    Messages
    1 630

    le premier wip en COFFEE!!!

    merci beaucoup, mais à ce moment là sir je fais un virage, c'est dans les gravier tout de suite!! :lol: les roues tournent dans le vide!
    j'avais trouvé une expression ici dans le rubrique qui prenais en compte les rotation de l'objet, je vais essayer de comprendre ça..

    mais bon, j'en ai pas vraiment besoin maintenant et je dois trouver la bonne organisation dans mon expression à moi! Au boulot, que diable!

  12. #12
    Pilier
    Date d'inscription
    octobre 2003
    Messages
    1 630

    le premier wip en COFFEE!!!

    alors ok!

    je 'ai pas eu beaucoup de temps cette semaine because contrôle communs mais là c'est les vacances ouais!

    donc j'ai fait ça:

    main (op,doc)

    {
    var position=op->GetPosition();
    var matiere=doc->GetFirstMaterial();
    var canal=matiere->GetChannel(CHANNEL_COLOR);
    var couleur=canal->GetContainer();

    if(position.x>5)
    {
    couleur->SetData(CH_COLOR,vector(position.x/300,NULL,NULL));
    canal->SetContainer(couleur);
    matiere->Update();
    }
    }
    mais le seul problème c'est que ça marche pas, une âme charitable aurait-elle l'amabilité de m'en dire le pourquoi? je parle bien hein?

    merci d'avance! :wink:

  13. #13
    Pilier
    Date d'inscription
    octobre 2003
    Messages
    1 630

    le premier wip en COFFEE!!!

    une rectification s'impose...

    bon, vous essairez d'oublier vite que j'avais pas appliqué la texture à ma sphère. :oops: et je me dit comme ça aussi que peut que le COFFEE n'accepte pas les NULL dans les vector, et surtout que pourquoi que qu'je m'complique la tâche à mettre des ifs partout alors que je peux tout gérer dans le même coup (sauf pour l'échelle)

    je me complique partout moi

    mais si vous voyez que la faute viens d'autre part hein, le gardez surtout pas pour vous! parce que même en apliquant la texture il me fait que mettre le rouge à zero...

  14. #14
    Pilier
    Date d'inscription
    octobre 2003
    Messages
    1 630

    le premier wip en COFFEE!!!

    hum...
    personne ne sait? parce que là je bloque vraiment! parce que mon plan était construit autour de ça...

  15. #15
    Pilier
    Date d'inscription
    juillet 2002
    C4D version
    Autre
    Messages
    939

    le premier wip en COFFEE!!!

    main (op,doc) = main (doc,op)
    Déjà tu as inversé le nom des variables en haut, ça fausse tout le script
    Sur le coup j'ai cru que ton Tag COFFEE etait maudit, par ce que je n'arrivai à rien faire marcher dedans ;-)

    et NULL ça ne marche pas, mets de zéros à la place
    Sinon ton script marche :poucehaut:

    main(doc,op)
    {
    var position=op->GetPosition();
    var matiere=doc->GetFirstMaterial();
    var canal=matiere->GetChannel(CHANNEL_COLOR);
    var couleur=canal->GetContainer();

    if(position.x>5)
    {
    couleur->SetData(CH_COLOR,vector(position.x/300,0,0));
    canal->SetContainer(couleur);
    matiere->Update();
    }
    }

  16. #16
    Pilier
    Date d'inscription
    octobre 2003
    Messages
    1 630

    le premier wip en COFFEE!!!

    ça c'est parce que je l'ai fait dans un document à part pour pas être obligé de démarrer c4d a chaque fois et de pouvoir travailler sur un autre ordi. pour les NULL il me semblait bie que ça venait de là, et je te remercie de m'avoir conforté dans cette certitude, en fait je pensais que si je mettais des 0 il mettrai à zero le bleu et le vert... mais bon de toute façon je vais faire tout en un. merci encore!

    et mon wip etrenne sa deuxieme page!

  17. #17
    Pilier
    Date d'inscription
    octobre 2003
    Messages
    1 630

    le premier wip en COFFEE!!!

    merci beaucoup steph3D, ça marche comme sur des roulettes!!!

    mais, je suis parti en freestyle pour les valeurs négatives et ça donne ça:

    main (doc,op)

    {
    var position=op->GetPosition();
    var matiere=doc->GetFirstMaterial();
    var canal=matiere->GetChannel(CHANNEL_COLOR);
    var couleur=canal->GetContainer();

    if((position.x>5)&&(position.z>5))
    {
    couleur->SetData(CH_COLOR,vector(position.x/600,0,position.z/600));
    canal->SetContainer(couleur);
    matiere->Update();
    }

    if((position.x<-5)&&(position.z<-5))
    {
    couleur->SetData(CH_COLOR,vector(0,position.x*-1/600,0);|
    couleur->SetData(CH_BRIGHTNESS,position.z*-1/600);
    canal->SetContainer(couleur);
    matiere->Update();
    }
    }
    naturellement ça ne marche pas et je pensais que vous pouviez m'aider encore un fois, il me mets un "syntax error" au niveau du truc rouge dans mon message...

    j'ai bien avancé quand même, je n'ai plus qu'a faire l'echelle sur l'axe des Y... merci!

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

    le premier wip en COFFEE!!!

    Il te manque une parenthèse fermée à la fin...

  19. #19
    Pilier
    Date d'inscription
    octobre 2003
    Messages
    1 630

    le premier wip en COFFEE!!!

    :oops: merci tengaal, j'ai honte :oops:

    en tout cas je suis content que tu sois passé par mon wip

    bon j'ai une erreur dans la logique, je pense que je vais utiliser l'instruction switch...

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