DE19654809A1 - System und Verfahren zum Erzeugen von Haar mit einem Computergrafiksystem - Google Patents

System und Verfahren zum Erzeugen von Haar mit einem Computergrafiksystem

Info

Publication number
DE19654809A1
DE19654809A1 DE19654809A DE19654809A DE19654809A1 DE 19654809 A1 DE19654809 A1 DE 19654809A1 DE 19654809 A DE19654809 A DE 19654809A DE 19654809 A DE19654809 A DE 19654809A DE 19654809 A1 DE19654809 A1 DE 19654809A1
Authority
DE
Germany
Prior art keywords
hair
segment
segments
particle
particles
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
DE19654809A
Other languages
English (en)
Inventor
Duncan R Brinsmead
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Graphics Properties Holdings Inc
Original Assignee
Silicon Graphics Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Silicon Graphics Inc filed Critical Silicon Graphics Inc
Publication of DE19654809A1 publication Critical patent/DE19654809A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Processing Or Creating Images (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Image Generation (AREA)

Description

Die Erfindung betrifft allgemein ein System und ein Verfahren zum Erzeugen und zur optischen Darstellung von Com­ puterbildern von Haar, und insbesondere ein System und ein Verfahren zur Simulation der Bewegung und des Aussehens von Haar durch Normieren der Bahnen mehrerer von einer Oberfläche emittierter Teilchen über die Zeit.
Die Computergrafik hat sich während des letzten Jahr­ zehnts einschneidend verbessert. Der "Erfolg" einer visuellen Simulation hängt von vielen Faktoren ab. Ein Faktor, der bei der Computergrafik oft hervorgehoben wird, ist der "Realismus". Um den Realismus zu verbessern, verwendet man physikalische Modelle, um Naturerscheinungen (z. B. Rauch, Wolken, Gras und Haar) am Computer zu simulieren. Die Simulation von Naturer­ scheinungen ist um Größenordnungen schwieriger als die Simu­ lation herkömmlicher geometrischer Objekte (z. B. eines Hauses). Besonders Haar (oder Fell) wirft die verschiedensten Probleme auf. Haar ist äußerst fein, und die Komplexität sowie der Zeitaufwand für die Simulation und optische Darstellung von Haar sind in modernen Grafiksystemen unerschwinglich. Im allgemeinen geht man einen Kompromiß zwischen Rechengeschwin­ digkeit und visuellem Realismus ein. Bis heute hat die Anima­ tion von Haar nur minimale Aufmerksamkeit in der Grafik-Ge­ meinschaft erfahren.
Es sind Versuche unternommen worden, Szenen mit sehr komplexen Bildern zu modellieren. Eine Methode besteht darin, das Problem mittels Durchrechnen mit roher Gewalt anzugehen. In einer sehr frühen Arbeit von Csuri u. a., "Towards an In­ teractive High Visual Complexity Animation System" (Auf dem Wege zu einem interaktiven Animationssystem von hoher visuel­ ler Komplexität), Computer Graphics 13(2) (1979) 289-299, wurde die Erzeugung von Bildern von Rauch und Fell mit Tausen­ den von Polygonen diskutiert. Das Modellieren von Haar mit Po­ lygonen ist jedoch rechnerisch aufwendig und führt zu schweren Aliasing-Artefakten. Ferner ist Haar in Forschungsarbeiten mo­ delliert worden, indem entweder jedes Haar einzeln oder die Haare als kompakte Textur modelliert wurden. Das letztere Ver­ fahren ist zum Modellieren kurzen, fellartigen Haars brauch­ bar. Perlin und Hoffert, "Hypertexture", ACM Computer Gra­ phics, SIGGRAPH ′89, 23(3) (Juli 1989) 253-262, machten zur Darstellung von Fell eine kompakte Textur bzw. Struktur direkt dreidimensional sichtbar. Kajiya und Kay, "Rendering Fur with Three Dimensional Textures" (Gestaltung von Fell mit dreidi­ mensionalen Texturen) ACM Computer Graphics, SIGGRAPH ′90, 24(4) (August 1990) 49-57 modellierten andererseits Fell als eine Verteilung von Mikrofacetten und leiteten ein Beleuch­ tungsmodell aus dieser Verteilung ab. Die Ergebnisse dieser Verfahren sind zwar beeindruckend, aber zu teuer für prakti­ sche Anwendungen.
Explizite Haarmodelle zerfallen in zwei Kategorien. Das Haar wird entweder als undurchsichtiger Zylinder oder als durchscheinendes Segment modelliert. Das explizite Zylindermo­ dell wurde von Anjyo u. a., "A Simple Model for Extracting the Natural Beauty of Hair" (Ein einfaches Modell zum Ableiten der natürlichen Schönheit von Haar), ACM Computer Graphics, SIG- GRAPH ′92, 26 (Juli 1992) 111-120, zur Gestaltung von undurch­ sichtigem, dickem Haar verwendet. Das Modell arbeitet gut bei der Darstellung von dunklem Haar, kann aber beispielsweise nicht den durchscheinenden Charakter von blondem Haar sichtbar machen. Das letztere Problem ist mit Hilfe von Tiefen- bzw. Dickenpuffern durch LeBlanc u. a., "Rendering Hair using Pixel Blending and Shadow Buffers" (Gestaltung von Haar mittels Pi­ xelmischung und Schattenpuffern), The Journal of Visualization and Computer Animation 2 (1991) 92-97, und durch Rosenblum u. a., "Simulating the Structure and Dynamics of Human Hair: Modeling, Rendering and Animation" (Simulation der Struktur und Dynamik von menschlichem Haar: Modellieren, Gestaltung und Animation), The Journal of Visualization and Computer Anima­ tion 2 (1991) 141-148, gelöst worden. Durch Kombination der verschiedenen Dickenpuffer wurden verschiedenartige Abschat­ tungseffekte erzielt. Dieses letztere Verfahren ist jedoch an­ fällig für Aliasing, wenn die Anzahl der Haare sehr groß ist. Das Aliasing läßt sich vermeiden, indem entweder die Proben gestört oder benachbarte Werte gefiltert werden, was auf Ko­ sten von Detailverlusten und einer längeren Rechenzeit geht.
Die erfolgreichsten Versuche zur Gestaltung hochkomple­ xer Bilder sind diejenigen, die auf Teilchensystemen basieren (Reeves, "Particle Systems. A Technique for Modeling a Class of Fuzzy Objects" (Teilchensysteme. Ein Verfahren zum Model­ lieren einer Klasse von unscharfen Objekten), ACM Computer Graphics, SIGGRAPH ′83, 17(3) (Juli 1983) 359-376, Reeves und Blau, "Approximate and Probabilistic Algorithms for Shading and Rendering Structured Particle Systems" (Approximative und probabilistische Algorithmen zum Abschattieren und Gestalten von strukturierten Teilchensystemen), ACM Computer Graphics, SIGGRAPH ′85, 19(3) (Juli 1985) 313-322). Der Erfolg dieser Systeme ist teilweise daraufzurückzuführen, daß Teilchensy­ steme die Idee der Gestaltung ohne Geometrie verkörpern. Ent­ lang der Bahn des Teilchensystems werden ein Beleuchtungsmo­ dell und ein Einzelbild verwendet, um Pixel bzw. Bildelemente direkt anstatt über die Vorstellung einer detaillierten Mikro­ geometrie zu gestalten. Sowohl Anjyo u. a. als auch Rosenblum u. a. modellieren jede Haarsträhne als flexiblen Strahl. Die Simulationen, die sie vorlegen, sind für dickes Haar, das eine Trägheit aufweist, überzeugend. Für leichtes Haar ist ihr Verfahren jedoch rechnerisch aufwendig. Außerdem müssen Kolli­ sionen zwischen Haaren paarweise berechnet werden und sind da­ her aufwendig.
Rechnerisch aufwendige, akademische Lösungen sind vor­ handen, aber es gibt keine kommerziellen Lösungen für das Pro­ blem der Echtzeitsimulation von Haar. Obwohl bei der Simula­ tion und Darstellung von Haar Fortschritte gemacht wurden, ist eine Echtzeitsimulation von Haar bisher nur mit einer kleinen Anzahl von Haaren erreicht worden. Was daher benötigt wird ist ein Verfahren zur Echtzeitsimulation von Haar.
Die vorliegende Erfindung zerfällt in zwei Teile: Simu­ lation und Gestaltung. Ein Simulator berechnet die Bewegungs­ dynamik eines Haars. Der Simulator weist ein Teilchensystem, das im Lauf der Zeit Teilchen von einer Oberfläche aussendet bzw. emittiert, sowie ein Normierungsmodul auf, das die Bahn jedes der Teilchen auf eine feste Länge normiert. Der Gestal­ ter führt die verschiedensten Aufgaben aus, einschließlich der Erzeugung unscharfer Segmente und der Selbstabschattung, die ein Bild ergeben, das auf einem Sichtgerät dargestellt wird. Das heißt, der Gestalter übernimmt eine dreidimensionale räum­ liche Information, läßt ein Licht auf diese Information ein­ wirken und gestaltet diese Information als ein zweidimensiona­ les Bild.
In einem bevorzugten Ausführungsbeispiel werden während einer Zeitspanne mehrere Teilchen mit einer Masse und einer Geschwindigkeit ungleich null von einer Oberfläche emittiert. In jedem Zeitschritt bzw. Zeitintervall wird ein Teilchen von der gleichen Position auf der Oberfläche emittiert. Während jedes Zeitschritts wird die Bahn jedes Teilchens normiert, um eine Menge normierter Segmente zu erzeugen. Die normierten Segmente werden zusammengefügt, um ein Haar zu simulieren. Folglich werden Teilchen an der Wurzel eines Haars einige Zeitschritte vor der Emission der Teilchen an der Haarspitze emittiert. Das heißt, die Spitze eines Haars ist gegenüber der Wurzel eines Haar verzögert. Diese Erscheinung ist als "Verzögerungsanimation" bezeichnet worden. Das Haar wird ge­ formt, indem man es in ein Kraftfeld bringt.
Während der Gestaltung werden das Aussehen und die Be­ wegung eines Haars modelliert, indem man um jedes normierte Segment herum ein unscharfes Segment (Fuzzy-Segment) erzeugt. Jedes auf einan­ derfolgende Paar unscharfer Segmente definiert ein einzelnes Haarsegment. Jedem unscharfen Segment wird eine Dichte zuge­ ordnet. Auf jedes unscharfe Segment wird eine Texturabbildung angewandt, um einem Nutzer zu gestatten, einen gewünschten Haarstil oder ein gewünschtes Fellmuster zu erzeugen. Die vor­ liegende Erfindung gestattet dem Nutzer, komplexe Haarsimula­ tionen in Echtzeit an einem Grafikarbeitsplatz zu betrachten.
Kurze Beschreibung der Zeichnungen
Die vorstehenden und weitere Merkmale und Vorteile der Erfindung gehen aus der folgenden, ausführlicheren Beschrei­ bung eines bevorzugten Ausführungsbeispiels der Erfindung her­ vor, das in den beigefügten Zeichnungen abgebildet ist.
Fig. 1 zeigt ein grobes Blockschaltbild eines Computer­ systems, das zur Implementierung der vorliegenden Erfindung verwendet wird.
Fig. 2 zeigt die optische Darstellung von drei Haaren, die jeweils von mehreren Segmenten gebildet werden.
Fig. 3 zeigt die Erzeugung unscharfer Segmente um jedes Segment in einer Haarsträhne herum.
Fig. 4 zeigt eine Sekundäranimation, bei der die Spitze eines Haars gegenüber der Wurzel eines Haars verzögert ist.
Fig. 5 zeigt mehrere von einer Oberfläche emittierte Teilchen.
Fig. 6 zeigt ein grobes Blockschaltbild eines Simula­ tors und eines Gestalters.
Fig. 7 zeigt die Dichteänderung innerhalb jedes un­ scharfen Segments.
Fig. 8 zeigt, daß die von einem Haar reflektierte In­ tensität einen Kegel annähert.
Fig. 9 zeigt die Geometrie der Integration eines un­ scharfen Segments längs eines Strahls.
Nachstehend wird das bevorzugte Ausführungsbeispiel der Erfindung anhand der Zeichnungen beschrieben, wobei gleiche Bezugszeichen gleiche Elemente bezeichnen. Außerdem entspre­ chen in den Zeichnungen die vordersten Stellen jedes Bezugs­ zeichens der Zeichnung, in welcher das Bezugszeichen zuerst verwendet wird.
Ausführliche Beschreibung bevorzugter Ausführungsbeispiele I. Umgebung der vorliegenden Erfindung
In Fig. 1 ist ein Blockschaltbild eines Computergrafik- Darstellungssystems 100 dargestellt. Das System 100 ist nur als Beispiel aufzufassen, und es ist nicht beabsichtigt, die Erfindung auf die Anwendung in dieser beispielhaften Umgebung einzuschränken. Tatsächlich wird nach dem Lesen der folgenden Beschreibung für den Fachmann auf diesem Gebiet offensichtlich werden, wie die Erfindung in alternativen Umgebungen implemen­ tiert werden kann. Das System 100 steuert ein Grafik-Subsystem 120 zur Erzeugung texturierter Bilder bzw. grafischer Darstel­ lungen gemäß der vorliegenden Erfindung. In einem bevorzugten Ausführungsbeispiel wird das Grafik-Subsystem 120 als interak­ tiver Hochleistungs-Computergrafik-Arbeitsplatz genutzt.
Das System 100 weist einen Wirts- bzw. Verarbeitungs­ prozessor 102 auf, der über einen Datenbus 101 mit einem Hauptspeicher 104, einem Festwertspeicher (ROM) 106 und einem Massenspeicher 108 verbunden ist. Der Massenspeicher 108 dient zum relativ billigen Speichern einer riesigen Menge digitaler Daten. Zum Beispiel kann der Massenspeicher 108 aus einem oder mehreren Festplattenlaufwerken, Diskettenlaufwerken, optischen Plattenspeicherlaufwerken, Bandlaufwerken, CD-ROM-Laufwerken oder aus einer beliebigen Anzahl anderer Speichergerätetypen mit Datenträgern zum Speichern von Digitaldaten bestehen.
Zum Vorteil eines interaktiven Nutzers sind außerdem verschiedene Typen von Eingabe- und/oder Ausgabegeräten (E/A- Geräten) mit dem Prozessor 102 verbunden. Eine alphanumerische Tastatur 120 und ein Positionsanzeiger- bzw. Cursorsteuergerät 112 (z. B. eine Maus, eine Rollkugel (Trackball), ein Steuer­ hebel (Joystick) usw.) dienen zur Eingabe von Befehlen und In­ formationen. Die Ausgabegeräte schließen ein Hartkopie-Gerät 114 (z. B. einen Laserdrucker) zum Drucken von Daten oder an­ deren Informationen auf einen greifbaren Datenträger ein. Eine Tonaufzeichnungs- oder Video-Zusatzeinrichtung 116 und ein Bildschirm 118 können mit dem System 100 gekoppelt werden, um Multimedia-Fähigkeiten bereitzustellen.
Grafikdaten werden vom Prozessor 102 über den Datenbus 101 zum Grafik-Subsystem 120 übermittelt. Das Grafik-Subsystem 120 schließt eine Geometriemaschine 122, ein mit einem Textur­ speicher 126 gekoppeltes Raster-Subsystem 124, einen Bildwie­ derholspeicher 128, eine Grafikkarte 130 und einen Bildschirm 132 ein. Die vorliegende Erfindung ergänzt das ALIAS-Software­ paket, das von Alias/Wavefront, Toronto, Kanada, bezogen wer­ den kann. ALIAS ist ein komplettes System, das Werkzeuge (Tools) zum schnellen Generieren von 3D-Modellen bietet, ein­ schließlich Werkzeuge zum Erstellen, Editieren, Kolorieren, Beleuchten und Animieren von Bildobjekten.
Die vorliegende Erfindung wird vorzugsweise unter Ver­ wendung von Software implementiert, die in einer ähnlichen Um­ gebung abläuft wie diejenige, die oben in Bezug auf Fig. 1 be­ schrieben wurde. Im vorliegenden Dokument wird der Begriff "Computerprogrammprodukt" zur allgemeinen Bezeichnung eines Wechselspeichergeräts 108 oder eines ROM 106 benutzt. Compu­ terprogramme (auch als Computersteuerlogik bezeichnet) sind in dem ROM 106 oder in dem Wechselspeichergerät 108 gespeichert. Bei der Ausführung befähigen derartige Computerprogramme das Computersystem 100, die hier diskutierten Merkmale und Funk­ tionen der vorliegenden Erfindung auszuführen. Dementsprechend stellen diese Computerprogramme Steuereinrichtungen des Com­ putersystems 100 dar.
Die vorliegende Erfindung zerfällt in zwei Teile: Simu­ lation und Gestaltung. In Fig. 6 ist dies allgemein darge­ stellt. Der Simulator 610 berechnet die Bewegungsdynamik von Haar. Der Simulator 610 weist ein Teilchensystem 612, das Teilchen von einer Oberfläche emittiert, und ein Normierungs­ modul 614 auf, das die Bahn jedes Teilchens auf eine feste Länge normiert, um eine Liste normierter Segmente zu erstel­ len. Mehrere normierte Segmente bilden ein Haar, wie weiter unten ausführlicher beschrieben wird. Der Simulator 610 gibt die Liste normierter Segmente an einen Gestalter 620 aus. Der Gestalter 620 führt die verschiedensten Aufgaben aus, ein­ schließlich der Erzeugung unscharfer Segmente und der Selbst­ abschattung, die ein Bild ergeben, das auf einem Sichtgerät 630 dargestellt wird. Das heißt, der Gestalter 620 übernimmt eine dreidimensionale räumliche Information, läßt ein Licht auf diese Information einwirken und gestaltet diese Informa­ tion als ein zweidimensionales Bild. In einem bevorzugten Ausführungsbeispiel fragt der Gestalter 620 den Simulator 610 aktiv nach Daten ab. Zum Beispiel kann der Gestalter 620 vom Simulator 610 alle Objektzustände für ein Bild anfordern.
Das Teilchensystem 612 weist einen Zufallszahlengenera­ tor (nicht dargestellt) auf, der zur Festlegung der Teilchen- Emissionspositionen dient. Der Zufallszahlengenerator wird für jedes Bild (oder jeden Zeitschritt) wieder auf den Anfangswert gesetzt, um sicherzustellen, daß Teilchen in jedem Bild von der gleichen Positionsmenge ausgehen. Als Alternative kann eine Menge von Emissionspunkten erzeugt werden, und diese Punkte können in jedem Bild wiederverwendet werden.
Bei der vorliegenden Erfindung werden zwei Gestaltungs­ arten oder -modi ins Auge gefaßt. Der erste Modus verwendet das Grafik-Subsystem 120. Eine typische Grafikmaschine, mit der die vorliegende Erfindung implementiert werden kann, ist eine Reality Engine von Silicon Graphics, Mountain View, Kali­ fornien. Die erste Betriebsart gestattet die Echtzeitdarstel­ lung von Haar. Die zweite Betriebsart erfordert keine Grafik­ maschine. Der Gestalter läuft vielmehr als diskontinuierlicher Prozeß (z. B. als Strahlspur) ab. Dieser wird zum Beispiel durch den Prozessor 102 ausgeführt.
II. Simulation von Haar
Die vorliegende Erfindung schafft ein System und ein Verfahren zur Simulation von Haar in Echtzeit. Die vorliegende Erfindung arbeitet innerhalb einer Grafik-Umgebung, die ein Teilchensystem einschließt. Teilchensysteme sind im wesentli­ chen in Hardware oder in Software implementierte Grafikmaschi­ nen, die Teilchen von einer Oberfläche emittieren. Jede Ober­ fläche kann einen oder mehrere damit verbundene Emitter zur Emission von Teilchen aufweisen. Teilchen haben physikalische Eigenschaften, zu denen Masse, Elastizität und Reibung gehö­ ren. Die Masse bestimmt, wie Kräfte das Teilchen beeinflussen. Je leichter das Teilchen, desto stärker wird es von einer Kraft beschleunigt. Die Elastizität eines Objekts bestimmt den Grad der Geschwindigkeitsdämpfung bei einem Zusammenstoß mit einem anderen Objekt. Der Reibungskoeffizient definiert, wie stark die Geschwindigkeit eines Objekts beeinflußt wird, wenn es in Kontakt mit einem anderen Objekt kommt.
Haar kann auf natürliche Weise mit Hilfe eines Teil­ chensystems simuliert werden, da Haar unter atmosphärischen Bedingungen viele gleiche physikalische Eigenschaften wie ein Teilchen aufweist. Fig. 5 veranschaulicht diesen Punkt. Es ist eine Oberfläche 500 mit vier Emittern 515-530 dargestellt. Je­ der Emitter 515-530 stellt einen Haarbalg dar. Jeder Emitter emittiert ein Teilchen in einer Richtung, die sich von der ei­ nes anderen Haarbalgs in der Oberfläche 500 unterscheidet. Die Bahn des Teilchens ist eine Funktion von der Emissionsrich­ tung, der Masse des Teilchens, der Anfangsgeschwindigkeit und der Schwerkraft (oder irgendeiner anderen Kraft). In diesem Beispiel kreuzen sich die Bahnen der Teilchen.
Offensichtlich wird das Erscheinungsbild von Haar durch die Emission von Tausenden, wenn nicht Millionen dieser Teil­ chen simuliert. Die Bahn (oder Vorgeschichte) jedes Teilchens stellt dabei ein einzelnes Haar dar. Fig. 2 zeigt eine typi­ sche Oberfläche 210 und drei Haare 215, 220, 225, die gemäß der vorliegenden Erfindung von der Oberfläche 210 ausgehen. Jedes Haar weist sieben Segmente von gleicher Länge auf. Die Segmente, die das Haar 215 bilden, sind durch die Bezugszei­ chen a-f gekennzeichnet worden. Es sind zwar sieben Segmente dargestellt, aber dies dient nur zu Erläuterungszwecken. Bei der vorliegenden Erfindung wird ins Auge gefaßt, daß ein Haar von einer beliebigen Anzahl von Segmenten gebildet wird. Teil­ chen werden mit früher emittierten Teilchen verknüpft, um eine kontinuierliche Haarsträhne zu erzeugen. Die Zahl der Haare wird durch die Menge der Teilchen bestimmt, die pro Bild von einer Oberfläche 210 emittiert werden. Durch Vergrößern dieser Menge wird mehr Haar erzeugt. In jeder Sekunde werden mehrere Bilder auf einem Grafiksichtgerät dargestellt.
Die vorliegende Erfindung simuliert eine Verzögerungs­ animation. Diese ist in Fig. 4 allgemein dargestellt. Die Funktion der Verzögerungsanimation wird vom Simulator 610 aus­ geführt. Fig. 4 veranschaulicht die Simulation eines Haars im zeitlichen Ablauf. Drei Zeitrahmen bzw. zeitversetzte Bilder werden mit T₁, T₂ und T₃ bezeichnet. Jedes Segment wird in einem verschiedenen Zeitschritt simuliert. In einem bevorzug­ ten Ausführungsbeispiel gibt es nur einen Zeitschritt pro Bild. Jedes Bild kann jedoch auch mehrere Zeitschritte aufwei­ sen. In jedem Zeitschritt wird die Bahn jedes emittierten Teilchens normiert (ungeachtet dessen, wann es emittiert wur­ de). Die normierten Segmente werden dann zur Simulation eines Haars zusammengefügt. Folglich wird ein Teilchen an der Wurzel eines Haars einige Zeitschritte vor der Emission des Teilchens an der Spitze des Haars emittiert. Das heißt, die Haarspitzen sind gegenüber den Haarwurzeln verzögert. Diese Erscheinung wird als "Verzögerungsanimation" bezeichnet.
Gemäß der vorliegenden Erfindung ist das älteste Teil­ chen (d. h. das Teilchen, welches das letzte Segment in dem Haar bildet) gegenüber dem neusten Teilchen (d. h. dem Teil­ chen, welches das erste Segment in dem Haar bildet) verzögert, wobei die Verzögerungszeit (in Bildern) gleich der Anzahl der Haarsegmente ist, geteilt durch die Zahl der Zeitschritte pro Bild. Zeitschritte sind die Anzahl der ausgeführten Berechnun­ gen (oder die Anzahl der gebildeten Segmente) pro Bild. Wenn daher die Zahl der Haarsegmente gleich acht ist und das System acht Berechnungen pro Bild ausführt, dann erscheint das Haar sehr steif. Wenn dagegen das System eine Berechnung pro Bild ausführt, dann fließt das Haar völlig frei. Dieses Merkmal schafft die Illusion von Haar, das wächst und sich frei in der Atmosphäre bewegt. Wenn sich ein Emitter sehr schnell bewegt, kann das Haar eine Dehnungsneigung aufweisen. Dies läßt sich durch Vergrößern der Schrittzahl pro Bild (d. h. durch Stei­ fermachen des Haars) korrigieren.
Wie wiederum aus Fig. 4 erkennbar, wird von der Ober­ fläche 410 während der Zeit T₁ ein Teilchen mit definierter Masse und einer Geschwindigkeit ungleich null emittiert. In einem bevorzugten Ausführungsbeispiel kann der Bahnwinkel re­ guliert werden. Das emittierte Teilchen würde, wenn es unge­ stört bleibt, einer normalen hyperbolischen Bahn folgen, bis diese durch ein anderes Teilchen oder einen festen Körper (z. B. den Boden oder die Schulter einer Person) beendet oder ge­ stört wird. Bei der vorliegenden Erfindung wird jedoch die Fortbewegung des Teilchens in jedem Zeitschritt gestoppt, wo­ durch der Weg des Teilchens auf eine feste Bahn und/oder Di­ stanz begrenzt wird. Formal wird dieses Verfahren als "Normieren" des Teilchens bezeichnet. Zwanglos bezeichnet man dieses Verfahren als "Schnappen" bzw. "Einrasten" des Teil­ chens auf eine vordefinierte Länge. Einfach ausgedrückt, be­ grenzt die vorliegende Erfindung die Fortbewegung jedes Teil­ chens in jedem Zeitschritt auf eine feste Distanz. Diese Di­ stanz wird als Haarsegment oder einfach als Segment bezeich­ net. Mehrere Haarsegmente bilden ein Haar.
Nachstehend wird die Normierung beschrieben. Ein Teilchen wird emittiert, an dem man Kräfte (z. B. die Schwer­ kraft) angreifen läßt. Trägheit und Impuls des Teilchens wer­ den berechnet. Auf der Grundlage dieser Werte wird für einen gegebenen Zeitschritt eine neue Position des Teilchens ermit­ telt. Als nächstes wird ein durch diese Position definierter Vektor bestimmt. Der Vektor wird durch seine Länge dividiert und mit einer vordefinierten Länge eines Segments multipli­ ziert. Dadurch wird der Vektor auf eine definierte Distanz vergrößert oder verkleinert. Alle Segmente innerhalb jedes Haars haben die gleiche Länge. Dieser Vektor wird dann zur Ausgangsposition addiert, um ein Haarsegment zu bilden, das ebenfalls eine Startposition des Teilchens für den nächsten Zeitschritt definiert. In einem bevorzugten Ausführungsbei­ spiel wird eine getrennte Variable zum Steuerung der Trägheit und der Masse geführt, um die Steifigkeit des Haars zu steu­ ern.
Nach der Normierung wird durch die Emission eines er­ sten Teilchens von der Oberfläche 410 ein Haarsegment A gebil­ det. Jedes Haarsegment ist der Weg eines Teilchens durch einen Zeitschritt. Der Weg des Teilchens ohne Normierung ist durch die Punkte 412 dargestellt. Während eines zweiten Zeitrahmens bzw. Bildes T₂ bewegt sich das erste Teilchen auf seinem Weg weiter, und von der Oberfläche 410 wird ein zweites Teilchen emittiert. Das heißt, das Teilchen, welches das Segment A er­ zeugte, bewegt sich zu einer neuen Position, die nach der Nor­ mierung das Segment A′ erzeugt. Danach wird das Segment A ab­ gelegt. Durch die Emission des zweiten Teilchens wird ein Haarsegment B gebildet. Während eines dritten Zeitrahmens bzw. Bildes T₃ wird von der Oberfläche 410 ein drittes Teilchen emittiert, um ein Haarsegment C zu bilden. Die Haarsegmente A′ und B bewegen sich zu einer neuen Position, die auf der natür­ lichen Bewegung der Teilchen basiert, wodurch Haarsegmente A′′ und B′ erzeugt werden. Alle drei Haarsegmente werden zusammengefügt, ,im ein Haar zu simulieren. Jede Haarsträhne ist auf eine bestimmte Segmentzahl begrenzt, wodurch die Länge des Haars fixiert wird. Das Alter der Teilchen ist an der Ba­ sis (oder Wurzel) eines Haars gleich null und an der Spitze gleich der maximalen Lebensdauer des Teilchens.
Emittierte Teilchen fliegen auseinander, wenn sich der Emitter bewegt oder wenn äußere Kräfte angelegt werden. Zur Lösung dieses Problems wird der Startzeitschritt eines Teil­ chens so eingestellt, daß er der Endzeitschritt des Teilchens ist, das einen Zeitschritt später von der gleichen Stelle emittiert wurde. Diese beiden Positionen werden nicht zusammen gemittelt, so daß das Haar erzeugt werden kann, indem man die Simulation über die gleiche Schrittzahl laufen läßt, wie das Haar Segmente besitzt. Würde man zulassen, daß der Endzeit­ schritt eines Teilchens durch die Position anderer Teilchen beeinflußt wird, dann müßte man die Simulation immer vom An­ fang der Simulation an laufen lassen. Fell, das drei Segmente besitzt, kann z. B. für jedes Bild in einer Animation mit Hilfe von nur drei Schritten des dynamischen Systems erzeugt werden und fließt dennoch auf natürliche Weise, wenn die Ober­ fläche transformiert wird.
Jede Haarsträhne kann "versteift" werden, indem man entweder mehr als ein Segment während eines Bildes simuliert oder die Anzahl der Segmente, die eine Haarsträhne bilden, oh­ ne Verkürzen der Haarsträhnenlänge verringert. Ein Ausdehnen bzw. Strecken der Segmente wegen der Bewegung der Oberfläche kann vermieden werden, indem man die Anzahl der Zeitschritte pro Bild vergrößert. Jedes Segment entspricht einem Zeit­ schritt in der Simulation. Wenn zehn Bilder in der Simulation enthalten sind, wobei jedes Bild einen einzigen Schritt auf­ weist, dann ist die Spitze gegenüber der Wurzel um zehn Bilder verzögert. Wenn man alle zehn Zeitschritte in ein einziges Bild bringt, dann ist die Spitze gegenüber der Wurzel nur um ein Bild verzögert, wodurch ein sehr steifes Haar erzeugt wird. Die Steifigkeit kann daher durch Veränderung der Anzahl der Zeitschritte pro Bild gesteuert werden.
Ein Nutzer kann die Feinheit der Segmentierung von Haa­ ren einstellen (ein Kompromiß zwischen Qualität und Geschwin­ digkeit), ohne die Länge des Haars zu beeinflussen. Das heißt, die Zahl der Segmente, die ein Haar bilden, kann verringert werden. Die Normierung des Teilchenweges wird auf die Teil­ chenposition angewandt, aber die für die Berechnung der näch­ sten Schritte verwendete Geschwindigkeit wird nicht modifi­ ziert.
Der Weg jedes Haars wird durch ein Kraftfeld (oder Be­ wegungsfeld) geführt. Die Verwendung und die Implementierung von Kraftfeldern sind dem Fachmann im allgemeinen wohlbekannt. In einem bevorzugten Ausführungsbeispiel der vorliegenden Er­ findung werden Kraftfelder zum Formen von Haar und zur Ab­ stoßung, wenn auch zur reibungslosen Abstoßung, verwendet. Die Kraftfelder werden im allgemeinen mit Hilfe von Pfeilen darge­ stellt. Im wesentlichen sind Kräfte Objekte in dreidimensiona­ len Räumen, die für einen gegebenen Punkt im Raum eine Rich­ tung und einen Intensitäts- bzw. Feldstärkewert definieren. Mit Hilfe von Kraftfeldern kann im dreidimensionalen Raum ein Fluß (z. B. ein Volumenfluß) definiert werden. Da alle Haare durch Kraftfelder beeinflußt werden, bewegen sich die Haare übereinstimmend und neigen dazu, eine Überlappung oder Kolli­ sion zu vermeiden. Abstoßungskräfte dienen zur Behandlung von Kollisionen zwischen Objekten. Es wird ein Feld erzeugt, das größer ist als das von dem Haar zu vermeidende Objekt (z. B. eine Schulter). Dadurch entfällt die Notwendigkeit, Haar-Haar- Kollisionen, die bei herkömmlichen Systemen typisch sind, zu berechnen und zu verfolgen. Das heißt, die vorliegende Erfin­ dung stützt sich nicht auf Haar-Haar-Kollisionen, um die Ge­ samtgestalt des Haars beizubehalten. Im wesentlichen erfordert die vorliegende Erfindung, daß jedes Haar wohlbekannten Prin­ zipien der Teilchendynamik folgt.
Unterschiedliche Kraftfelder erzeugen verschiedene Haartypen. Zum Beispiel kann ein Satz von Wirbelkräften, die zylinderähnlich sind, zur Erzeugung eines geformten (oder tou­ pierten) Haars verwendet werden. Durch Verstärken des radialen Charakters dieser Kräfte kräuselt bzw. lockt sich das Haar. Ein alternatives Verfahren besteht darin, daß man das Teilchen sich relativ zu seiner Oberfläche spiralförmig winden läßt, indem man eine Drehbewegung um die Bahnrichtung des Teilchens hinzufügt. Das letztere Verfahren erzeugt Haare, die sich nicht zusammen kräuseln. Vielmehr hat jedes Haar seine eigene, einmalige Locke.
III. Gestalten eines Haars
Sobald der Simulator 610 eine Menge normierter Segmente erzeugt, wird nach der vorliegenden Erfindung ein Bild des Haars gestaltet. Fig. 3 stellt ein bevorzugtes Ausführungsbei­ spiel zur Gestaltung von Haar dar. Diese Funktion wird von dem Gestalter 620 ausgeführt. Um jedes der Haarsegmente a-g herum, die das Haar 215 bilden, wird jeweils ein Volumen 310-340 er­ zeugt. Natürlich wird für jedes von der Oberfläche 210 emit­ tierte Haar eine Menge von Volumina erzeugt. So wird jedes Haar in Form einer Volumendichte modelliert. Beim Modellieren von Haar als Volumendichte wird die räumliche Kohärenz von na­ türlichem Haar ausgenutzt. Das heißt, daß dicht nebeneinander­ liegende Haare dazu neigen, sich zu bewegen und zusammenzubal­ len.
Um ein "Volumen" um jedes Haarsegment herum zu schaf­ fen, erzeugt die vorliegende Erfindung eine Menge "unscharfer Segmente" (Fuzzy-Segment). Ein unscharfes Segment ist eine Verallgemeinerung des Verfahrens der sphärischen "Klecks"-Integration, das in der Dissertation von Dr. Jos Stam, "Multi-Scale Stochastic Mo­ deling of Complex Natural Phenomena" (Stochastische Mehrska­ lenmodellierung komplexer Naturerscheinungen", University of Toronto, veröffentlicht im Winter 1995, beschrieben wird, die hier als Ganzes zur Bezugnahme einbezogen wird.
Fig. 7 stellt die Dichte eines unscharfen Segments 710 dar. Zu beachten ist, daß das unscharfe Segment ein dreidimen­ sionales Volumen ist. Die maximale Dichte jedes unscharfen Segments liegt in der Mitte. Die Dichte an den Enden jedes un­ scharfen Volumens nimmt linear ab, bis die Dichte null am äußersten Rand des unscharfen Segments erreicht ist. Wenn sich daher zwei oder mehr unscharfe Segmente überlappen, um ein Haar zu bilden, dann ist die Dichte in jedem Punkt innerhalb des Haars gleich.
Jedes unscharfe Segment ist kegelförmig, woraus sich ein kegelförmiges Haar ergibt. Der Durchmesser des Endes jedes unscharfen Segments nimmt linear ab. Dies wird auch in Fig. 3 veranschaulicht. Der Durchmesser "A" ist größer als der Durch­ messer "B", der seinerseits größer ist als der Durchmesser "C". Der Durchmesser "H" ist daher der kleinste Durchmesser. In einem alternativen Ausführungsbeispiel kann die Konizität von der Wurzel zur Spitze linear zunehmen. Die unscharfen Seg­ mente werden jeweils so miteinander verbunden, daß eine naht­ lose Stoßstelle entsteht. Wie oben erörtert, hat jedes un­ scharfe Segment in der Mitte eine hohe (optische) Dichte und ist am Rande lichtdurchlässig. Somit bleibt die Dichte im Überlappungsbereich zweier unscharfer Segmente konstant. In einem alternativen Ausführungsbeispiel nimmt die Dichte von der Wurzel zur Spitze linear ab. Bei der vorliegenden Erfin­ dung wird ferner eine Änderung der Dichte von der Wurzel zur Spitze oder von einem unscharfen Segment zum anderen ins Auge gefaßt.
Leider sehen große Volumina nicht wie Haar aus. Daher wird zur Simulation von Haarbüscheln eine Texturabbildung ver­ wendet. Texturen verändern das Aussehen einer Oberfläche durch Veränderung ihres Erscheinungsbildes. In Fig. 3 sind sieben unscharfe Segmente 310-340 dargestellt. Jedes unscharfe Seg­ ment weist eine auf seine Oberfläche abgebildete Textur auf. Zum Beispiel ist das unscharfe Segment 315 mit einer kreuz­ schraffierten Textur 350 dargestellt.
In einem bevorzugten Ausführungsbeispiel wird quer über das Haar (d. h. über jedes unscharfe Segment) ein zweidimen­ sionales Rauschen abgebildet. Die Anwendung eines zweidimen­ sionalen Rauschens auf eine Oberfläche dürfte für den Fachmann auf diesem Gebiet offensichtlich sein. Dies verleiht das Aus­ sehen von überlappendem Haar. Die Textur wird vom unscharfen Wurzelsegment bis zum unscharfen Spitzensegment abgebildet. Das Rauschen ist daher von der Wurzel bis zur Spitze kontinu­ ierlich. In einem bevorzugten Ausführungsbeispiel wird für je­ des Haar ein verschiedenes Rauschen verwendet. Bei der vorlie­ genden Erfindung wird daher eine Indexzahl für jedes Haar ge­ führt.
Bei der Anwendung des zweidimensionalen Rauschens wird sowohl eine Farbmodulation als auch eine Dichtemodulation be­ nutzt. So sieht ein Betrachter die Effekte der Dichtemodula­ tion deutlicher, wo die unscharfe Röhre dünner ist. Das heißt, Haare, die durch die Rauschfunktion innerhalb eines unscharfen Segments an der Spitze eines Haars geschaffen werden, sind für einen Betrachter leichter sichtbar als Haare innerhalb eines unscharfen Segments an der Haarwurzel. Haarbüschel innerhalb eines unscharfen Segments an der Wurzel eines Haars erscheinen dichter. In einem bevorzugten Ausführungsbeispiel wird bei der vorliegenden Erfindung ferner die Farbe des Haars mit der Dichtedifferenz multipliziert. So sieht ein Betrachter bei dickem Haar eine stärkere Farbdetailänderung als bei dünneren Haarabschnitten. So führt die Selbstabschattung des Haars da­ zu, daß ein Betrachter eine Farbänderung sieht. Durch Einstel­ len des Schlankheitsverhältnisses (oder des uv-Maßstabs) der Textur kann das Aussehen des Haars weiter verändert werden.
In einem bevorzugten Ausführungsbeispiel der vorliegen­ den Erfindung wird die Texturabbildung im Gesichtsfeld (d. h. im Blickwinkel eines Betrachters, auch als Bildschirmfeld be­ zeichnet) projiziert. Mit anderen Worten, die Haartextur (d. h. das Rauschen) wird auf eine zweidimensionale Ebene abgebil­ det, die durch die Mitte des unscharfen Segments geht und stets senkrecht zum Auge des Betrachters orientiert ist. Die­ ses Verfahren ist schneller als die Abbildung der Textur auf das gesamte unscharfe Segment. Dieses Verfahren zeigt jedoch eine Tendenz, unerwünschte Artefakte zwischen dem unscharfen Wurzelsegment und der Oberfläche zu erzeugen. Im Gegensatz dazu schneidet ein glatt texturiertes Volumen die Oberfläche fehlerlos. Daher wird in einem alternativen Ausführungsbei­ spiel gemäß der vorliegenden Erfindung eine Texturabbildung auf die gesamte Oberfläche des unscharfen Segments ausgeführt, da dieses Verfahren zu weniger Aliasing-Problemen führt (aber die Erzeugung von mehr Systemressourcen erfordert). Außerdem wird jedem Scheitelpunkt der unscharfen Segmente eine Farbe zugeordnet. Zum Glätten der Farbe zwischen je zwei unscharfen Segmenten wird interpoliert.
Das Aussehen von Haar hat viele charakteristische Merk­ male gemeinsam mit Dichtefeldern. In der Tat wird von jeder Haarsträhne Licht gestreut und absorbiert. Die Streuungseigen­ schaften eines Mediums sind durch seine Phasenfunktion p(s·s′) charakterisiert. Die Streuung ist stark von der Orientierung jedes Haars abhängig. Folglich ist die Phasenfunktion nicht von der Differenz zwischen Einfalls- und Ausfallswinkel abhän­ gig. Im folgenden wird eine kurze Beschreibung eines Verfah­ rens gegeben, das in einem bevorzugten Ausführungsbeispiel zur Abschattung und Beleuchtung benutzt wird. Abschattung und Be­ leuchtung von Haar sind dem Fachmann wohlbekannt. Bei der vorliegenden Erfindung wird ein beliebiges bekanntes oder zukünftig zu ent­ wickelndes Verfahren zur Abschattung und Beleuchtung von Haar ins Auge gefaßt. Wegen einer allgemeinen Diskussion der Ab­ schattung und Beleuchtung siehe Stam, "Multi-Scale Stochastic Modeling of Complex Natural Phenomena" (Stochastische Mehrska­ lenmodellierung komplexer Naturerscheinungen", University of Toronto, veröffentlicht im Winter 1995.
Haar ist sichtbar, weil jede Haarsträhne Licht reflek­ tiert und bricht. Die Effekte der Brechung und der Mehrfachre­ flexion können als Lichtstreuung innerhalb eines Dichtefeldes von Haaren modelliert werden. Dieses Modell ist jedoch nicht vollständig, da oft stark gerichtete Reflexionen von Haar sichtbar sind. Dieser Effekt ist bei pomadisiertem Haar beson­ ders augenscheinlich. Wie aus Fig. 8 erkennbar, wird angenom­ men, daß jede Haarsträhne 810 eine geringe Breite aufweist und daß die Verteilung von reflektiertem Licht, das auf die aus einer Richtung s einfallende Intensität zurückzuführen ist, gleich dem auf die Richtung t des Haars 810 ausgerichteten "Reflexionskegel" ist. Dies entspricht der Addition eines von der Richtung der Haarsträhne 810 abhängigen Terms pspec zur Phasenfunktion:
Pspec(s·s′,t) = pspecδ(s′·t-(-s·t)) =pspecδ((s′+s)·t) (1)
Folglich müssen die Schießvorgänge von Oberflächen und Licht­ quellen zu den unscharfen Segmenten, die das Haar 810 bilden, entsprechend verändert werden. Jedes Haar wird als ein Dichte­ feld dargestellt, das um ein Segment zv = z₀ + vt herum defi­ niert ist:
H(x) = W(distH(x), σ),
wobei distH die kürzeste Entfernung zum Haarsegment angibt und W ein Glättungskern ist. Der am nächsten liegende Punkt auf dem Segment (wobei angenommen wird, daß die Richtung t nor­ miert ist) ist gleich der Projektion des Vektors x-z₀ auf das Segment:
zclosest= z₀ + ((x-z₀)·t)t
Falls dieser Punkt nicht innerhalb des Haarsegments liegt, ist Zclosest einer der Endpunkte des Segments. Folglich ist die Entfernung gleich:
dH(x) = |(x-z₀) + ((x-z₀)·t)t|
Ein Integrationsverfahren zur Berechnung der Lichtdurchlässig­ keit, die auf eine Gesamtheit bzw. ein Ensemble derartiger un­ scharfer Segmente zurückzuführen ist, wird im folgenden ange­ geben.
Zur Berechnung der von einem einzelnen unscharfen Segment her rührenden optischen Dicke längs eines Strahls xu = x₀ + us muß das folgende Integral berechnet werden:
Wir approximieren dieses Integral durch
wobei d₁ die kürzeste Entfernung des Strahls zu dem unscharfen Segment, d₃ die halbe Entfernung, welche der Strahl durch das abgeschnittene unscharfe Segment (siehe Fig. 9) durchläuft, und u* der dem unscharfen Segment am nächsten liegende Punkt auf dem Strahl ist. Die kürzeste Entfernung zum unscharfen Segment wird mit Hilfe der Bedingung berechnet, daß die Diffe­ renz zwischen dem Strahl und dem Segment xu-zv sowohl zur Strahlrichtung als auch zur Richtung des unscharfen Segments orthogonal sein muß:
(xu-zv)·s = 0 und (xu-zv)·t = 0
Durch Auflösen nach u und v erhält man:
Der Nenner 1-(s·t)² verschwindet, wenn der Strahl und das Segment in einer Linie liegen, und in diesem Falle ist die kürzeste Entfernung zum Beispiel durch d₁ = |x₀-zclosest| gegeben. Im allgemeinen ist dann die kürzeste Entfernung durch d₁ = |xu*-zv*| gegeben. Aus der Geometrie von Fig. 9 folgt, daß die Entfernung längs des Strahls durch
gegeben ist, wobei R der Radius des abgeschnittenen unscharfen Segments und ψ der Winkel zwischen der Richtung des Segments und der Strahlrichtung ist, und daher gilt
Die von vielen unscharfen Segmenten herrührende optische Dicke erhält man durch Aufsummieren der Beiträge von jedem der Seg­ mente.
Die Haarsegmente werden in einer Vorlaufphase beleuch­ tet, wobei die resultierende Farbe am Scheitelpunkt jedes Seg­ ments im Cache-Speicher abgespeichert wird. Diese Farbe wird bei der Gestaltung unter Verwendung des Parameters v quer über das Segment interpoliert. Während der Vorlaufphase werden von jedem Segmentscheitelpunkt Schattenfühler zu jedem Licht abge­ schossen. Durch Akkumulieren bzw. Aufsummieren der Gesamtdich­ te unscharfer Segmente, welche die Schattenfühler schneiden, kann der Selbstabschattungsgrad des Haars bestimmt werden. Zur Simulation von Mehrfachstreuungseffekten mit minimalen Berech­ nungen wird bei der vorliegenden Erfindung vereinfachend ange­ nommen, daß das Licht in der gleichen Richtung streut. Der Grad dieser völlig gerichteten Streuung wird mit einem Diapha­ nitäts- bzw. Durchsichtigkeitsparameter gesteuert. Der Durch­ sichtigkeitsparameter skaliert einfach die Durchsichtigkeit der unscharfen Segmente während der Vorlaufbeleuchtungsphase. Je höher die Durchsichtigkeit, desto mehr Licht kann durch die Haare gelangen. Eine von anderen Objekten herrührende Abschat­ tung wird gleichfalls für die Schattenfühler berechnet. Die Integration der Quellenintensität ist dann ähnlich derjenigen für die Kleckse, die in der oben zitierten Arbeit von Stam, Abschnitt 5.3.2, beschrieben wird.
Eine Hardware-Implementierung der vorliegenden Erfin­ dung könnte die Abschattung durch Gestalten einer Dickenabbil­ dung für jedes Licht berechnen. Die Dickenabbildung würde wäh­ rend der Vorlaufphase anstelle der Schattenfühler verwendet. Die Gestaltung des beleuchteten Haars kann dann durch Umwan­ deln jedes unscharfen Segments in einen Streifen erfolgen, wo­ bei eine Hardware-Durchsichtigkeits- und Farbabbildung verwen­ det wird. Der Streifen ist ein flaches, polygonales Profil der Röhre, das entlang dem Sichtvektor abgeflacht ist.
Es versteht sich, daß die Ausführungsbeispiele der vor­ liegenden Erfindung in Hardware, Software oder einer Kombina­ tion aus beiden implementiert werden können. In einem solchen Ausführungsbeispiel würden die verschiedenen Komponenten und Schritte in Hardware und/oder Software implementiert, um die Funktionen der vorliegenden Erfindung auszuführen. In solchen Ausführungsbeispielen der vorliegenden Erfindung können jede gegenwärtig verfügbare oder in Zukunft zu entwickelnde Com­ putersoftwaresprache und/oder Hardwarekomponenten verwendet werden. Insbesondere können die oben diskutierten Ablaufdia­ gramme für die Erstellung von Software-Ausführungsbeispielen besonders gut verwendbar sein.
Die Erfindung ist zwar insbesondere unter Bezugnahme auf ihre bevorzugten Ausführungsbeispiele dargestellt und be­ schrieben worden, aber die Fachleute werden erkennen daß ver­ schiedene Änderungen in Form und Details daran vorgenommen werden können, ohne vom Grundgedanken und vom Schutzumfang der Erfindung abzuweichen.

Claims (7)

1. Verfahren zur Simulation von Haar mit den folgenden Schritten:
  • (1) Emission mehrerer Teilchen von einem einzelnen Punkt auf einer Oberfläche, wobei jedes der Teilchen eine Masse und eine Geschwindigkeit ungleich null aufweist, wobei die mehreren Teilchen zeitlich nacheinander emittiert werden;
  • (2) Normieren jedes der mehreren Teilchen, um eine Menge normierter Segmente zu bilden, wodurch jedes normierte Segment eine feste Länge aufweist; und
  • (3) Zusammenfügen der Menge normierter Segmente zur Si­ mulation eines Haars, wodurch das Segment an der Spitze des Haars gegenüber dem Segment an der Haarwurzel verzögert wird.
2. Verfahren nach Anspruch 1, das ferner die Wiederho­ lung der Schritte (1) bis (3) für weitere Punkte auf der Ober­ fläche aufweist.
3. Verfahren nach Anspruch 2, das ferner eine zufällige Einstellung des Bahnwinkels für jeden Punkt auf der Oberfläche aufweist.
4. Verfahren nach einem der Ansprüche 1 bis 3, das ferner den Schritt zur Längeneinstellung jedes der Segmente zur Einstellung der Steifigkeit des Haars aufweist.
5. Verfahren nach einem der Ansprüche 1 bis 4, das ferner den Schritt zum Formen des Haars mit einem Kraftfeld aufweist.
6. Verfahren nach einem der Ansprüche 1 bis 5, das ferner eine Emission jedes der mehreren Teilchen unter Hinzufügen eines Drehmoments um die Bahnrichtung jedes der Teilchen aufweist, um dadurch jedem der Teilchen eine spiralförmige Bewegung relativ zu der Oberfläche zu ermöglichen.
7. Vorrichtung zur Durchführung eines Verfahrens nach einem der Ansprüche 1 bis 6.
DE19654809A 1996-01-02 1996-12-31 System und Verfahren zum Erzeugen von Haar mit einem Computergrafiksystem Withdrawn DE19654809A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US08/582,070 US5777619A (en) 1996-01-02 1996-01-02 Method for simulating hair using particle emissions

Publications (1)

Publication Number Publication Date
DE19654809A1 true DE19654809A1 (de) 1997-07-03

Family

ID=24327716

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19654809A Withdrawn DE19654809A1 (de) 1996-01-02 1996-12-31 System und Verfahren zum Erzeugen von Haar mit einem Computergrafiksystem

Country Status (4)

Country Link
US (1) US5777619A (de)
JP (1) JPH09305653A (de)
DE (1) DE19654809A1 (de)
GB (1) GB2310578B (de)

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997031338A1 (fr) * 1996-02-20 1997-08-28 Sega Enterprises, Ltd. Generateur d'images, procede de generation d'images et support d'enregistrement d'images
US5909218A (en) * 1996-04-25 1999-06-01 Matsushita Electric Industrial Co., Ltd. Transmitter-receiver of three-dimensional skeleton structure motions and method thereof
US6014151A (en) * 1997-11-05 2000-01-11 Animation Science Method for allowing a particle to follow a path
US6348924B1 (en) 1999-03-10 2002-02-19 Silicon Graphics, Inc. Method and apparatus for interactively painting volumetric particle flow paths and controlling a flow of the flow paths
US8624888B2 (en) * 1999-08-06 2014-01-07 Sony Corporation Screen space optimization techniques for use in a hair/fur pipeline
US7880744B2 (en) * 1999-08-06 2011-02-01 Sony Corporation Geometric instance techniques for use in a hair/fur pipeline
US8717362B2 (en) * 1999-08-06 2014-05-06 Sony Corporation Sub-patch optimization techniques for use in a hair/fur pipeline
US9070228B2 (en) 1999-08-06 2015-06-30 Sony Corporation Instanced hair database for use in a hair/fur pipeline
US8711151B2 (en) * 1999-08-06 2014-04-29 Sony Corporation Hair motion compositor system for use in a hair/fur pipeline
US8624889B2 (en) * 1999-08-06 2014-01-07 Sony Corporation Multiple instantiable effects in a hair/fur pipeline
US8810582B2 (en) 1999-08-06 2014-08-19 Sony Corporation Hair caching optimization techniques for use in a hair/fur pipeline
US6952218B1 (en) * 1999-08-06 2005-10-04 Sony Corporation Method and apparatus for the digital creation of fur effects
FR2802679B1 (fr) * 1999-12-21 2002-02-08 Oreal Systeme et procede d'analyse et de simulation previsionnelle de l'evolution d'une zone pileuse, et plus particulierement du cuir chevelu humain
FR2802678B1 (fr) * 1999-12-21 2002-02-08 Oreal Systeme et procede d'analyse et de simulation previsionnelle de l'evolution temporelle d'une zone pileuse, et plus particulierement du cuir chevelu humain
JP2001283085A (ja) * 2000-03-31 2001-10-12 Advance Co Ltd 美容システム
JP2001357415A (ja) * 2000-04-13 2001-12-26 Sony Corp 画像処理装置および方法、記録媒体、並びにプログラム
US6747660B1 (en) * 2000-05-12 2004-06-08 Microsoft Corporation Method and system for accelerating noise
KR20020049383A (ko) * 2000-12-19 2002-06-26 이형민 헤어스타일 생성 시스템 및 이를 이용한 헤어스타일 생성방법
US7206729B2 (en) * 2000-12-29 2007-04-17 Pixar Inertial field generator: a method for controllably coupling kinematic character motions to dynamically simulated elements
KR100420833B1 (ko) * 2001-08-06 2004-03-02 김진수 유연한 물체의 시뮬레이션 장치 및 방법과 그 프로그램소스를 저장한 기록매체
US7091971B2 (en) 2001-10-29 2006-08-15 Ati Technologies, Inc. System, method, and apparatus for multi-level hierarchical Z buffering
US7427991B2 (en) * 2002-02-12 2008-09-23 Sony Corporation System and process for digital generation, placement, animation and display of feathers and other surface-attached geometry for computer generated imagery
US7098910B2 (en) * 2003-05-14 2006-08-29 Lena Petrovic Hair rendering method and apparatus
KR100500897B1 (ko) * 2003-09-03 2005-07-14 한국전자통신연구원 방향을 갖는 질점과 일반화된 스프링 모델을 이용한비정형 물체의 애니메이션 방법
EP1569172A3 (de) * 2004-02-26 2006-10-04 Samsung Electronics Co., Ltd. Datenstruktur zur Animation von Stoff, sowie Gerät und Verfahren zur Darstellung von dreidimensionalen Grafikdaten unter Verwendung der Datenstruktur
US7468730B2 (en) * 2004-03-25 2008-12-23 Pixar Volumetric hair simulation
US7948485B1 (en) * 2005-12-12 2011-05-24 Sony Computer Entertainment Inc. Real-time computer simulation of water surfaces
US7567251B2 (en) * 2006-01-10 2009-07-28 Sony Corporation Techniques for creating facial animation using a face mesh
US7884826B1 (en) * 2006-06-08 2011-02-08 Pixar Maintaining the groom
US7701469B2 (en) 2007-02-23 2010-04-20 Sony Ericsson Mobile Communications Ab Extension of display lifetime
JP5145391B2 (ja) * 2010-09-14 2013-02-13 株式会社コナミデジタルエンタテインメント 画像処理装置、画像処理装置の制御方法、及びプログラム
US9202312B1 (en) 2014-07-18 2015-12-01 Restoration Robotics, Inc. Hair simulation method
US9824464B2 (en) * 2014-08-11 2017-11-21 Corel Corporation Methods and systems for generating graphical content through physical system modelling
US10685472B1 (en) 2019-01-31 2020-06-16 Adobe Inc. Animation brushes
CN113345098B (zh) * 2021-06-30 2022-12-30 广东时谛智能科技有限公司 一种可交互式编辑的实时毛发材质生成方法
CN115641375B (zh) * 2022-12-07 2023-04-11 腾讯科技(深圳)有限公司 虚拟对象的毛发处理方法、装置、设备及存储介质
CN116071454A (zh) * 2022-12-22 2023-05-05 北京字跳网络技术有限公司 发丝处理方法、装置、设备及存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5404426A (en) * 1991-05-21 1995-04-04 Hitachi, Ltd. Method of displaying hair style and apparatus for the same
US5500925A (en) * 1992-12-01 1996-03-19 Xaos Tools Dynamic image processing using particle systems

Also Published As

Publication number Publication date
GB2310578B (en) 2000-07-26
GB9627095D0 (en) 1997-02-19
US5777619A (en) 1998-07-07
JPH09305653A (ja) 1997-11-28
GB2310578A (en) 1997-08-27

Similar Documents

Publication Publication Date Title
DE19654809A1 (de) System und Verfahren zum Erzeugen von Haar mit einem Computergrafiksystem
DE19654807A1 (de) System und Verfahren zum Erzeugen von Haar unter Verwendung texturierter unscharfer Segmente in einem Computergrafiksystem
DE69924700T2 (de) Verfahren zur Darstellung von durch Oberflächenelemente repräsentierten grafischen Objekten
DE69224499T2 (de) Dreidimensionale graphische Verarbeitung
DE69924699T2 (de) Verfahren zur Schaffung von als Oberflächenelemente dargestellten grafischen Objekten
DE112007002991B4 (de) Computergraphikschattenvolumen unter Verwendung von hierarchischem Okklusions-Culling
DE60107130T2 (de) Sichtbarkeitsprojektion und Bildrekonstruktion für Oberflächenelemente
DE69812732T2 (de) Verfahren und Gerät zur schnellen Wiedergabe von durch Computer erzeugten Bildern von komplexen Strukturen
DE69907415T2 (de) Bestimmung sichtbarer objekte für interaktive visualisation
DE69524330T2 (de) Anordnung von Knotenverbindungstruktur in einem Raum mit negativer Krümmung
Hsu et al. Drawing and animation using skeletal strokes
Deussen et al. Computer-generated pen-and-ink illustration of trees
DE69807479T2 (de) Erzeugung eines Bildes eines dreidimensionalen Objekts
US6348924B1 (en) Method and apparatus for interactively painting volumetric particle flow paths and controlling a flow of the flow paths
Markosian et al. Art-based rendering with continuous levels of detail
DE69227095T2 (de) Bewegungen zur Umwandlung von konkaven Polyedern in ihre konvexen Hüllen
DE69924230T2 (de) Verfahren zur Modellierung von durch Oberflächenelemente dargestellten grafischen Objekten
DE69514820T2 (de) Verfahren zum steuern des levels von details in einer rechnergenerierten bildschirmanzeige einer komplexen struktur
DE19807013A1 (de) Volumetrisches Vorabschneidungsverfahren, das eine minimale Anzahl von Abtastpunkten durch ein Volumen gewährleistet
DE68928630T2 (de) Grafiksystem
US9710966B2 (en) Styling of computer graphics hair through volumetric flow dynamics
DE69226617T2 (de) Reihung und Planung von Bewegungen für das Umwandeln von konkaven Polyedern in ihre konvexen Hüllen
DE69520273T2 (de) Datenverarbeitungsverfahren zur Darstellung einer dreidimensionalen Oberfläche
Andersen et al. Hybrid fur rendering: combining volumetric fur with explicit hair strands
EP3188131B1 (de) Verfahren und visualisierungsvorrichtung zur volumetrischen visualisierung eines dreidimensionalen objekts

Legal Events

Date Code Title Description
8141 Disposal/no request for examination