PDA

Voir la version complète : Créer un cube et le transformer en sphère



druide
10/10/2014, 01h38
Comme peu d'entre vous le savent, un cube est composé de 6 faces identiques en longueur et largeur.
Nous allons donc commencer par créer une de ces faces, pour ce faire, vous sélectionnerez l'outil de création de polygone appelé "Créer un polygone".
ATTENTION : pour que ce polygone prenne vie, il faudra recliquer sur le premier point créé.

http://img4.hostingpics.net/pics/875491791.jpg


Ensuite, vous tracerez, en vue de dessus, une sorte de carré.

http://img4.hostingpics.net/pics/372936852.jpg


Comme ce carré n'est pas parfait, il vous faudra reprendre la position de chaque point manuellement en les sélectionnant 1 à 1 et en renseignant des positions acceptables dans l'onglet position.
Dans cet exemple les positions seront -100 100; 100 100; 100 -100; -100 -100; ce qui nous donnera un carré de 200*200.

Une fois les points ajustés, si comme moi vous avez créé votre carré en suivant le sens horaire, alors il vous faudra, pour que la suite se passe bien, inverser la normale de votre polygone, car comme cette face sera la base de notre cube, il faudrait que cette normale apparaisse bleu.

Pour ce faire il vous faudra sélection votre polygone en mode polygone et inverser la normal avec l'outil "Inverser les normales".

http://img4.hostingpics.net/pics/225782203.jpg

Nous allons maintenant donner du volume à notre carré en lui ajoutant progressivement ces 5 faces manquantes.
Pour ce faire, en mode arrêtes vous allez sélectionner une des arrêtes de votre carré et l'extruder d'une valeur de 0 avec l'outil "Extrusion".

http://img4.hostingpics.net/pics/716651654.jpg


Maintenant que vous avez extrudé votre arrêtes d'une valeur de 0 il vous faut la placer de tel sorte qu'elle donne naissance à une autre face de notre cube.
Pour ce faire vous allez renseigner sa position en y dans l'onglet position en y mettant 200.

http://img4.hostingpics.net/pics/274035515.jpg


Vous faites de même pour la face opposée, "pourquoi celle là et pas une autre ? "me direz vous, bah c'est comme ça, il n'est pas possible d’obtenir des réponses concrètes à toutes les questions, point.

http://img4.hostingpics.net/pics/220571836.jpg


Nous allons maintenant ré-utiliser un outil que vous connaissez pour faire la face supérieur, "Créer un polygone"
Procédez comme sur l'image en cliquant avec l'outil sur chaque point supérieur et en tournant dans le sens horaire(et non cette fois pas besoin de corriger la normale).

http://img4.hostingpics.net/pics/499664238.jpg


Pour les deux faces restantes l'opération est plus simple, sélectionnez l'outil pour boucher les trous appelez "Fermer le trou polygonal" et commencez par la face opposée inexistante à celle qui est la plus proche.

http://img4.hostingpics.net/pics/5830705710.jpg

Et finissez par l'autre.
Bien.

Maintenant vous avez terminé la première partie de ce tutoriel, je vous conseil fortement de nommer ce nouvel objet "cube" et de l'enregistrer dans votre bibliothèque d'objet.

http://img4.hostingpics.net/pics/3589599811.jpg


Passons maintenant à la deuxième partie de ce tutoriel, l'extraordinaire transformation d'un cube en sphère parfaite.

Pour ce faire nous aurons besoin d'un cube, nous reprendrons donc le cube créé précédemment.

La première étape de cette extraordinaire transformation sera la subdivision de facteur 1 du dit cube, qui aura pour effet de multiplier par 4 son nombre de polygones.

http://img4.hostingpics.net/pics/4190876012.jpg


Ensuite nous avons besoin dans un second temps de sélectionner des boucles de points.
Pour ce faire nous allons utiliser un nouvel outils en mode point, "Sélection par boucle".

http://img4.hostingpics.net/pics/6749434013.jpg


Grace à cet outil vous sélectionnerez, sans en omettre, tout les points des arrêtes extérieur de notre cube subdivisé.

http://img4.hostingpics.net/pics/8793334514.jpg


Maintenant nous allons faire un premier tour de magie grâce aux mathématiques et plus précisément grâce aux Babyloniens et à un nombre magique qui est le résultat de V2/2 soit 0.707.
Ce tour est très simple vous allez multiplier les tailles de votre sélection dans l'onglet taille par 0.707.
Vous obtenez ceci :

http://img4.hostingpics.net/pics/4589801415.jpg


Nous sommes loin de la sphère parfaite que je vous avait annoncé, pas tellement en fait.
Nous allons profiter du fait que notre outil "Sélection par boucle" soit toujours actif pour désélectionner les points qui n'ont plus besoin d’être transformé, à savoir les points des boucles intérieures.
Pour ce faire, tout en maintenant la touche ctrl enfoncée(permet de soustraire des sélections, rappelons que shift sert à en ajouter), vous désélectionnerez donc les point des arrêtes intérieures.

http://img4.hostingpics.net/pics/7696002416.jpg


Une fois cette désélection opérée nous utiliserons de nouveau le nombre magique venu de l'antiquité, soit 0.707.
Vous multiplierez donc les tailles de vos point restant par 0.707 dans l'onglet taille.
Ce qui vous donnera ceci.

http://img4.hostingpics.net/pics/5240377918.jpg

Toujours pas une sphère...
Mais si, regardez bien !
Non ?
Bon affinons le tout.
Nous utiliserons un outils que vous connaissez mais avec une fonction dont vous ignoriez l’existence jusque là, subdiviser en mode Hyper nurbs avec l'outil "Subdiviser" et la case "Subdivision Hyper NURBS" cochée.
Pour ce faire sélectionner votre objet en mode objet, puis appliquez l'outil sus mentionné avec un facteur 2, voilà le résultat.

http://img4.hostingpics.net/pics/9802405419.jpg

Et si vous faites un rendu dans la fenêtre de travail vous obtenez ceci.

http://img4.hostingpics.net/pics/793302192.jpg

Vous allez me dire "Atta dfou dma goule spa une sfer as stune pt d'boul dizco man" et je ne vous comprendrai pas même si quelquepart vous avez peut-être raison.
Pour transformer cette "pt d'boul dizco" en sphère parfaite nous allons poncer les facettes jusqu'à un lissage parfait en utilisant un "tag de lissage".
Pour ce faire vous ferez un clique droit sur votre sphère dans le gestionnaire d'objet et dans l'onglet propriétés CINEMA 4D, vous sélectionnerez "Lissage".
Et voilà, une sphère parfaite issue de la transformation d'un cube.

http://img4.hostingpics.net/pics/8528354821.jpg


Mais attendez car il y a une autre méthode pour arriver de la presque sphère à la sphère parfaite.
Un autre outil magique qui permet de garder intact notre presque sphère, l'hyper nurbs, c'est la petite icone verte entre la spline et la répartition.
Voilà comment ça fonctionne, cliquez sur l'icone et ensuite déplacer votre objet(dans l'onglet objet) en enfant du HN(Hyper Nurbs en langage de Pro(professionnel en langage de Pro)).
Vous apercevrez tout de suite qu'il manque un petit quelquechose, mais oui parfaitement, le tag de lissage.

http://img4.hostingpics.net/pics/4008137823.jpg

Une fois cet oubli corrigé, votre presque sphère est déguisée en sphère parfaite.

http://img4.hostingpics.net/pics/6139447024.jpg


C'est terminé les loulous, vous avez en votre possession les deux primitives les plus utilisées en 3d, faites en bon usage. ;)

lenogre
10/10/2014, 10h01
Vatar est de retour ?

druide
10/10/2014, 10h11
Vatar n'est jamais parti, il est pour toujours avec nous, du moins son esprit.
En fait je recherchais le sien, mais comme je ne le retrouvais pas j'ai pensé en refaire une version personnelle avec un bonus.

Edit : Te carrer un carré dans ton cube. :P
Je corrige de suite, Merci Sir.

Sir Gong
10/10/2014, 10h47
un carrer...
misère.

Paradox
10/10/2014, 11h09
J'adore le : "Maintenant vous avez terminé la première partie de ce tutoriel, je vous conseil fortement de nommer ce nouvel objet "cube" et de l'enregistrer dans votre bibliothèque d'objet."
Ça m'a tué ! :icon_mrgreen::icon_mrgreen::icon_mrgreen:

gaff
10/10/2014, 11h39
Et l'inverse : partir d'une sphère hexaèdre pour obtenir un cube, c'est possible? :icon_mrgreen:

druide
10/10/2014, 11h47
Bien sûr, attend je te fais un tuto.

bricoman
10/10/2014, 13h08
:thumbup1:C'est bien : ça occupe !

mais je ne trouve toujours pas le tuto' pré-requis à la réalisation de celui-ci : modéliser un point ( en entier ! ) :icon_pleure:
comment -faire , docteur ?
(Sè pour lintro de ma chène , mairsi !)

catrax
10/10/2014, 22h37
Druide tu pourrai nous faire un tuto faire un cube a partir d' un cône? Je te serai redevable.😆
Envoyer mon telephone

yayaprod
10/10/2014, 23h28
Salut Druidounet,
Partant du même principe, est il possible de prendre une renault fuego pour la transformer en commode Louis XV ?
Merci .
Yaya .°) :icon_mrgreen: >>>> oui je sais....je sors >>>>

Rudy
11/10/2014, 00h10
A part la rigolade, la démarche de druidounet m'a ouvert une voie.

Je pars de la transformation d'un dodécaèdre en le subdivisant par 2 (au départ), et la sphère n'est pas si mal que cela. Fini les vilains triangle du pole dans l'hyper nurbs.

Ça pourra être utile un jour ...

druide
11/10/2014, 01h08
De toutes façons, il y a deux trucs à retenir dans ce tuto, le nombre magique redécouvert par Vee(car il est très utile, surtout en lowpo+hn) et le sens des normales en fonction du sens de création d'un polygone, le reste ce n'est que de l'habillage.

Lestarling
11/10/2014, 11h54
Pourquoi ne pas passer la sphère en mode Héxaèdre ?

César Vonc
11/10/2014, 12h29
De toutes façons, il y a deux trucs à retenir dans ce tuto, le nombre magique redécouvert par Vee(car il est très utile, surtout en lowpo+hn) et le sens des normales en fonction du sens de création d'un polygone, le reste ce n'est que de l'habillage.

Ça revient grosso modo à mettre un cube dans un HN, mais dans les deux cas la sphère n'est pas parfaite au sens propre du terme.


Si on en veut une parfaite, faut utiliser la sphère de C4D ou bien mettre l'HN du cube dans un déformateur Sphérification.

druide
11/10/2014, 14h23
Ça revient grosso modo à mettre un cube dans un HN, mais dans les deux cas la sphère n'est pas parfaite au sens propre du terme.

Non, car tu as une ébauche d'hexaèdre et non un cube, par contre comme c4d est bien fait tu peux mettre *sin(45°) à la place de *0.707 qui n'est qu'une approximation et la sphère pourra alors être considérée comme parfaite du point de vu de c4d car il n'est précis qu'à 3 décimales de toutes façon.

Edit: j'ajoute que, dès l'instant ou tu lances un rendu tout devient approximatif car aucun moteur de rendu ne fonctionne sans triangulation, à part un moteur 100% euclidien(euclideon par exemple) et que de ce fait ta sphère parfaite non éditée sera converti en une approximation au rendu, tout comme tes extrusions de splines ect ect.


Si on en veut une parfaite, faut utiliser la sphère de C4D ou bien mettre l'HN du cube dans un déformateur Sphérification.

Oui, mais ce n'est pas le propos, si jamais c'est un faux tutoriel(une sorte de blague de potache), tu penses bien que personne ne perd son temps à fabriquer une sphère ou un cube, ce serait complètement surréaliste.

César Vonc
11/10/2014, 16h19
Comme dit Rudy, faire une sphère à partir d'un cube peut être intéressant car son maillage est assez homogène, donc c'est pas si bête.


Je parle pas de la précision des triangles, c'est évident. ^^
Mais de la forme globale qui est pas vraiment ronde, quoi. Ajoute une vraie sphère par-dessus, tu verras.


Pour info, C4D est précis à 16 chiffres significatifs (précision double), mais l'affichage ne montre pas plus de 3 chiffres derrière la virgule.
Si tu prends un cube de 200 cm, que tu zoomes à fond sur un côté et que tu ajoutes 0.0001 ou 0.0002 à sa taille, elle bougera, mais C4D affichera toujours 200 cm.
Mais bon, c'est clair que ça change rien à l'histoire. : P


Sinon oui, j'ai compris que c'était de l'humour, hein. :icon_mrgreen:

druide
11/10/2014, 16h26
Tant que je te tiens, tu saurais faire un plug pour justement afficher et utiliser ces décimales manquantes ?

Et pour ce qui est de ma sphère "parfaite", je te propose ceci, essaie en faisant ma méthode mais en remplaçant 0.707 par sin(45°) ensuite de la superposer à une sphère hexaèdre édité de même subdivision et de mesurer l'écart entre les points, après tu fais pareil mais avec simple un cube dans un hn édité, ce serait intéressant de voir l'écart de précision.
En plus je suis sure que le code que tu créeras pour ça te seras utile ailleurs, s'il n'existe pas déjà.

catrax
11/10/2014, 21h41
Ah j'ai compris !! Druide est tomber sur un cours de Trigonométrie c'est pour ça 0.707 c'est le Sinus de 45°, encore une histoire à s'en boucher les sinus., bon ok j'arrête de pourrir ton post je sort :sweatdrop:

Lestarling
12/10/2014, 02h32
Ah j'ai compris !! Druide est tomber sur un cours de Trigonométrie c'est pour ça 0.707 c'est le Sinus de 45°, encore une histoire à s'en boucher les sinus., bon ok j'arrête de pourrir ton post je sort :sweatdrop:
Finalement, je dis pas temps de bêtise que ça.

pxlntwrk
17/10/2014, 00h09
j'ai pas tout compris, mais je vais rajouter mon grain, la sphere en 1 click mais en meme temps qui garde son coté cube quand meme :sweatdrop:

http://www.zupimages.net/up/14/42/0jt0.gif

César Vonc
17/10/2014, 11h08
Tant que je te tiens, tu saurais faire un plug pour justement afficher et utiliser ces décimales manquantes ?

Et pour ce qui est de ma sphère "parfaite", je te propose ceci, essaie en faisant ma méthode mais en remplaçant 0.707 par sin(45°) ensuite de la superposer à une sphère hexaèdre édité de même subdivision et de mesurer l'écart entre les points, après tu fais pareil mais avec simple un cube dans un hn édité, ce serait intéressant de voir l'écart de précision.
En plus je suis sure que le code que tu créeras pour ça te seras utile ailleurs, s'il n'existe pas déjà.

Ça ne change pas grand chose de mettre sin(45) au lieu de 0.707 à vrai dire, l'écart reste de l'ordre de 0,5 cm pour une sphère de 200 cm à certains points :

http://s29.postimg.org/k72payvlx/Sans_titre1.gif


Sinon oui, j'ai déjà pensé à faire en sorte de pouvoir éditer plus de trois chiffres après la virgule, mais il faudrait recoder le gestionnaire de coordonnées à l'identique, ce qui est plus compliqué.
Je pense que Maxon a fait ce choix pour nous inciter à travailler avec de plus grandes valeurs, modifier l'échelle du document pour l'adapter à nos besoin.

druide
17/10/2014, 13h59
@pxlntwrk (http://frenchcinema4d.fr/member.php?193505-pxlntwrk) : Il y a des triangles partout, c'est moche. :P

@César : oui, du coup les unités ne servent à rien et c'est bien dommage, de même l'utilisation des nombres remarquables comme pi et le nombre d'or non plus...

Lestarling
17/10/2014, 18h25
Par contre ce qui est bien, c'est que si on met une sphère normale à 24 segment, c'est pas lisse, mais si on la met en mode hexaèdre, eh bien c'est lisse alors que ça reste à 24 segment.

druide
17/10/2014, 20h17
Je n'ai absolument rien compris à ce que tu viens d'écrire...

Rudy
17/10/2014, 20h47
Je n'ai absolument rien compris à ce que tu viens d'écrire...

attributs de la sphère ... type = hexaèdre ... c'est simple.

Lestarling
17/10/2014, 21h38
Avec la R10.5 t'as ces options, non ?

druide
17/10/2014, 22h32
attributs de la sphère ... type = hexaèdre ... c'est simple.
Pas compris.
Tu veux dire que depuis le début j'aurai put faire une sphère hexaèdre ?!?
C'est fou ce truc...



Ps : j'ai bien ri, c'est ta journée premier degré ?

gaff
18/10/2014, 00h16
Druide, en attendant j'attends toujours ton tuto : partir d'une sphère hexaèdre pour obtenir un cube.

ça fait une semaine que je suis bloqué sur C4D :icon_arg:

druide
18/10/2014, 00h19
Bonjour vous êtes en relation avec la messagerie fc4d de "druide" veuillez laisser un message après le point .

Lestarling
18/10/2014, 01h50
D'accord alors faire un tore avec un cône.

César Vonc
18/10/2014, 22h31
En plus, je viens de remarquer un truc, quand on entre dans un des champs des coordonnées (par exemple la position X) :

sin(45), 0.707 est affiché mais la réelle valeur X est 0.70710678...

Si on écrit ensuite +1, on obtient :

1.707 et la valeur réelle de X est également 1.707. Et non 1.70710678...

Ce qui veut dire que C4D ne prend pas la valeur réelle pour lui ajouter +1 mais la réattribue entièrement par ce qui est affiché, c'est à dire 0.707 + 1.


C'est assez moyen et peut créer de mauvaises surprises..

Par exemple, si on entre à chaque fois :

1/3
+1/3
+1/3

La position finale sera de 0.999333 et non 1. : /


Pour voir quelle est sa position X réelle, sélectionner l'objet, ouvrir la console python (Script > Console) et entrer dans son champ en bas :

op.GetMl().off.x

Va peut-être bien falloir créer un champ de coordonnées plus précis, en fin de compte...

druide
18/10/2014, 23h23
Va peut-être bien falloir créer un champ de coordonnées plus précis, en fin de compte...

Content que ce tuto ai put te servir.

Math1712
18/10/2014, 23h33
Ce sujet rigolo à levé un beau lièvre :)

Lestarling
19/10/2014, 21h21
Bah voila on fait un tutoriel pour faire un truc que l'on peut faire avec une option et on a un script pour que c4d soit plus précis !