Hi, (sorry fuer die miese Textformatierung hab einfach drauflosgeschieben)
Jetzt wo ich deine Bilder sehe, verstehe ich warum du die Curves direkt als Spirale gebaut hast. Die Frisur hat wirklich klar definierte Locken. Ich habe auch mal getestet was passiert wenn ich Spiralcurves dynamisch mache und muss sagen es klappte doch recht gut. Deine Polyhaare sind ein extrem guter Startpunkt dafuer, falls die Topologie stimmt.
ein Beispiel:
Allgemein:
Falls dein Model in einer sehr kleinen oder grossen Skalierung gebaut ist. Skaliere dein Model vor den ganzen Arbeitsschritten. Es ist nicht gut in Maya zu klein zu modellieren !! Eine Einheit enspricht nach standart 1 cm!! also bei den
Masen deines Models sollte die Frau vielleicht so 160 Einheiten gross sein. Benutzte die MeasureTools um es zu
ueberpruefen und zu korrigieren. Die Werte im hairsystem sind von der Skaliereung beinflusst. Skalierst du wie oben beschrieben wird die Simulation es dir danken.
Erstelle eine Testszene in dem gleichen Massstab wie dein Model:
-Erstelle eine PolyHelix (groesse deiner Haarlocken ensprechend)
-Selektiere einen Edgeloop ueber die gesammte Helixlaenge.
-Konvertiere den selektierten Edgeloop in eine Curve.
-Selektiere den obersten vertex der Curve und ziehe ihn mit sofSelect mit fallofMode auf "surface" und einem fallofRadius von ungefeahr einem drittel der Helixhoehe nach oben.
-Nun hast du eine Curve die ungefaehr deiner deiner FrisurLocken entspricht.
-Achte darauf das die Direction der Curve on oben nach unten ist.
-delete die History der Curve
-Erstelle eine Polyplane und schiebe sie an den startPoint der Curve
-Achte darauf das die surfaceNormale der polyPlane nach unten zur Curve gerichtet ist
-um ein paar weitere Locken zu haben dubliziere die Curve ein zweimal und verschiebe sie so das sie sich nicht ueberschneiden und drehe sie ein wenig.
-selectiere die Plane und die Curves und fuehre "make selected" Curves dynamic aus
-stelle deine playbackEinstellungen auf min 0 max 10000 und "play every frame" oeffne den Attribute Editor
-selektiere das HairSystem
-Im HairTab druecke auf interactive Playback
-Nun spielt die Simulation ab.
-wenn du die Polyplane bewegst kannst du die Simulation beurteilen beinflussen
-weahrend du im Attribut editor die hairSystem einstellungen sehen und veraendern kannst
-Zuerst werden die Curves einfach ihre spiralform verlieren
-Lasse den Stiffnesswert auf default
-Wende dich dem startCurveAttract Wert zu, stelle ihn so hoch das die Curves schwingen aber nicht ihre Form verlieren.
-Veraendere den attractionScale Graph um die Curves oben steifer zu machen und unten mehr lockerer
-Wahrscheinlich siehst du nun ein gewaltiges schwingen mit hoher Frequenz im spiralTeil der curves
-erhoehe den Dampwert um es zu eliminieren
-erhoehe den motionDrag Wert um die haare nicht wie Gummi erscheinen zu lassen. (der wert ist sehr sensitive)
-erhohe die Stiffness falls die Haare sich zu sehr dehnen (gehe niemals ueber eins)
-Lasse den StiffnessScale Graph immer als horizontale Gerade auf der hoehe 1 um die Steifheit durch die ganzen curves beizubehalten.
-falls alle werte zu extrem eingestellt werden muessen, erhoehe die iterations, dannach korrigiere die Werte
-Wiederhohle die Arbeisschritte zum hairSystem einstellen so lange bis du gute Werte gefunden hast.
-Speicher die Einstellungen als Preset
-Oeffne deine Model-Datei
-Baue aus den PolyHaaren Curves
-rebuilde die Curves so dass die CVs gleichmaessige absteande haben. Bei jeder Curve! ein Abstand von einer Einheit von CV zu CV ist eine ganz guter Wert glaube ich.
-Mache die Curves der Frisur Dynamic
-Wende dein vorher gespeichertes Preset auf deine Frisur an.
-Simuliere die Haare und mache gegebenfalls Korrekturen am hairSystem.
Fuer Kollisionen die nicht richtig funktionieren lese das was ich im ersten Post uber overSampling geschrieben habe
Sei Achtsam es beeinflusst den gesammten Workflow! Zur Kollisionsdicke der SpiralHaare: Wie ich oben geschrieben habe ergibt sie sich durch
clumbWidth + hairWidth + collsionOffset sind deine pfXRenderLocken(falls du mit pfx renderst) nun sagen wir mal 4 Centimeter dick, dann stelle deine drei Werte so ein dass die Collisions-Dicke auch 4 Centimeter ist. Da clumbWidthh und hairWidth natuerlich auch deine pfx-Darstellung beieinflussen gehe ueber den collisionOffset um deine SimulationsDicke anzupasssen.
Mit der richtigen Simulationsdicke im richtigen Masstab zu arbeiten ist extrem wichtig, wenn du zB selfCollisions oder hairBunchConstrainst benutzt. sind deine HairCurves zum Beispiel nur 4 maya-Einheiten lang, weil du sehr klein gemodelt hast aber deine Colllision-Dicke ist 3 oder so, dann ist es logisch dass deine Frisur explodieren wird, da die Haare wahrscheinlich durchschnittliche Absteande von 0,2 einheiten haben, die Simulation aber auch berechnen muss dass die einzelnen Haare 3 Einheiten dick sind. Somit presst die Simulation die Haare auseinander und die Frisur explodiert.
Self-Collisions sind nach meiner meinung,(muss nicht undbedingt stimmen kann auch sein dass ich es bis jetzt nur nicht hingekriegt habe), zu vermeiden da sie sehr zu Unordnung und Zucken der Frisur Fuehren und nicht sehr ruihg simullieren.
So jetzt aber genug geschieben, Ich hoffe es hilft dir ein wenig. Versuch die Simulation nochmal mit spiralCurves und schreibe mal deine Ergebnisse. Ich bin gespannt. Deine Renderings gefallen mir sehr gut, obwohl ich sagen muss, dass du bei manchen Masssteaben sehr grosszuegig warst.
Grusse,
Bernd