DE69831822T2 - Verfahren und System zur Bestimmung und/oder Verwendung von Beleuchtungskarten in Herstellung von Bildern - Google Patents

Verfahren und System zur Bestimmung und/oder Verwendung von Beleuchtungskarten in Herstellung von Bildern Download PDF

Info

Publication number
DE69831822T2
DE69831822T2 DE1998631822 DE69831822T DE69831822T2 DE 69831822 T2 DE69831822 T2 DE 69831822T2 DE 1998631822 DE1998631822 DE 1998631822 DE 69831822 T DE69831822 T DE 69831822T DE 69831822 T2 DE69831822 T2 DE 69831822T2
Authority
DE
Germany
Prior art keywords
scene
color
texture
vertex
determined
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.)
Expired - Fee Related
Application number
DE1998631822
Other languages
English (en)
Other versions
DE69831822D1 (de
Inventor
Alain M. Montreal Laferriere
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.)
Avid Technology Inc
Original Assignee
Avid Technology 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
Priority claimed from US08/946,053 external-priority patent/US6226005B1/en
Application filed by Avid Technology Inc filed Critical Avid Technology Inc
Publication of DE69831822D1 publication Critical patent/DE69831822D1/de
Application granted granted Critical
Publication of DE69831822T2 publication Critical patent/DE69831822T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)

Description

  • GEBIET DER ERFINDUNG
  • Die vorliegende Erfindung betrifft ein Verfahren und ein System zum Wiedergeben von Bildern. Die vorliegende Erfindung betrifft insbesondere ein Verfahren und ein System zum Bestimmen von Beleuchtungskarten zur Verwendung beim Wiedergeben von Bildern und ein Wiedergabegerät, das derartige Beleuchtungskarten verwendet.
  • HINTERGRUND DER ERFINDUNG
  • Wiedergabegeräte, die Bilder erzeugen, sind wohlbekannt. Derartige Geräte empfangen eine Definition eines zu erzeugenden Bildes, die häufig als eine Szenedefinition bezeichnet wird, und erzeugen daraus ein Bild zur Speicherung und/oder zur Ausgabe an geeignete Ausgabemittel. Ein derartiges Wiedergabegerät ist das Gerät "Mental ray", das in dem Produkt SoftImage|3D enthalten ist, das vom Anmelder der vorliegenden Erfindung vertrieben wird und hochwertige photoähnliche Bilder erzeugen kann.
  • Eines der Probleme bei Wiedergabegeräten für hochwertige Bilder ist die rechentechnische Komplexität bei der Wiedergabe eines derartigen Bildes, die zur Folge hat, dass wesentliche Zeiten erforderlich sind, um jedes Bild wiederzugeben. Während häufig eine spezielle Wiedergabehardware und/oder verteilte Verarbeitungssysteme verwendet werden, um die Wiedergabezeiten zu verkürzen, bleiben die Wiedergabezeiten insbesondere dann ein Problem, wenn Bilder in Echtzeit und/oder auf kostengünstigen Systemen oder auf Spielsystemen, wie etwa SEGA Saturn, Sony PlayStation und Nintendo 64 Systeme, die eine eingeschränkte Wiedergabehardware besitzen und trotzdem anspruchsvolle Wiedergabeanforderungen haben, wiedergegeben werden sollen.
  • Bekannte Wiedergabegeräte, wie etwa die oben erwähnte Wiedergabeeinrichtung in dem Produkt SoftImage|3D empfangen eine Szenedefinition als Eingabe und erzeugen ein entsprechendes Wiedergabebild als Ausgang. Derartige Szenedefinitionen können geometrische Definitionen für verschiedene 3D-Objekte und ihre Orte in der Szene, die Werkstoffmerkmale dieser Objekte (d. h. Oberflächenrauigkeit, Farbe, Lichtdurchlässigkeit usw.), die Anzahl, den Ort und die Farbe von Lichtquellen in der Szene, den Standpunkt und die Position, von dem die Szene betrachtet wird, die gewöhnlich als Kamerabetrachtungspunkt bezeichnet wird, usw. enthalten. In dem Produkt SoftImage|3D und in anderen Systemen werden die Faktoren, die zur Schattierung bzw. Farbtongebung bei der Wiedergabe einer Szene berücksichtigt werden müssen, in einer Struktur angeordnet, die als ein "Schatten- bzw. Farbtonbaum" bezeichnet wird. Informationen über Schatten- bzw. Farbtonbäume können in verschiedenen Publikationen gefunden werden, u. a. in "Advanced Animation and Rendering Techniques, Theory and Practice", Kap. 14 von Alan Watt und Mark Watt, 1992, ACM Press, deren Inhalte hier durch Literaturhinweis eingeschlossen sind. Bei der Wiedergabeeinrichtung "Mental ray" können verschiedenen im Voraus definierte oder benutzerdefinierte Prozedurfunktionen, die als "Mental ray Schatten- bzw. Farbtonbildner" bezeichnet werden, definiert und in dem Schatten- bzw. Farbtonbaum enthalten sein, um zu ermöglichen, dass spezielle Wiedergabeeffekte in dem Wiedergabeprozess enthalten sind. "Mental ray Schatten- bzw. Farbtonbildner" können auf Wunsch mit verschiedenen Szenenelementen verknüpft sein, die Werkstoffe, Texturen bzw. Strukturen, Beleuchtungseinrichtungen usw. enthalten.
  • Es ist bekannt, dass in Systemen, wie etwa SoftImage|3D, die rechentechnische Komplexität der Wiedergabe von vielen 3D-Objekten verringert werden kann, indem eine schachbrettartige Unterteilung der 3D-Objekte erfolgt, um eine Polygonnetz-Darstellung des definierten Objekts zu erhalten, und indem die Polygone in diesem Netz wiedergegeben werden, um eine vernünftige Näherung des 3D-Objekts zu erhalten. Eine Kugel kann z. B. durch ein Netz aus dreieckigen Polygonen dargestellt werden, die die Kugel genau modellieren, wobei der Grad der Entsprechung zwischen dem Netz und dem Objekt im Allgemeinen durch die Anzahl von Polygonen in dem Netz bestimmt wird.
  • Bei SoftImage|3D enthalten die Polygone, die in den schachbrettartigen Netzen zur Darstellung von Objekten verwendet werden, dreieckige Polygone, da das aus Gründen der Effektivität und Einfachheit vorzuziehen ist, wobei die folgende Erläuterung hauptsächlich derartige schachbrettartige Polygonnetze betrifft. Einem Fachmann ist jedoch klar, dass die vorliegende Erfindung nicht auf die Verwendung von Netzen mit dreieckigen Polygonen beschränkt ist und auf Wunsch bei Polygonen mit einer größeren Seitenzahl verwendet werden kann. Die Umsetzung eines Objekts in eine schachbrettartige Darstellung ist wohlbekannt und wird an dieser Stelle nicht weiter beschrieben.
  • Die Wiedergabe von Objekten, die durch Polygone dargestellt sind, kann durch Abtastzeilen- oder Strahlverfolgung ausgeführt werden. Bei der Strahlverfolgung wird die abschließende Farbe an jedem Bildelement des Wiedergabebildes festgelegt, indem ein Lichtstrahl von dem Bildelement "abgefeuert" wird, um die Reflexionen, Brechungen, Mental ray Schatten- bzw. Farbtonbildner usw. zu bestimmen, die zu der abschließenden Farbe beitragen. Obwohl sie rechentechnisch aufwändig ist, kann die Strahlverfolgung sehr realistische Ergebnisse erzielen.
  • Bei der Abtastzeilen-Wiedergabe wird bei jedem Bildelement ermittelt, ob sich Objekte vor oder hinter dem aktuellen Bildelement befinden (Tiefensortierung), um festzustellen, ob sie "sichtbar" sind. Sichtbare Objekte werden dargestellt und nicht sichtbare Objekte werden weggelassen. Obwohl die Abtastzeilen-Wiedergabe rechentechnisch weniger aufwändig ist und häufig durch spezielle Graphikhardware unterstützt wird, hat sie im Allgemeinen eine Wiedergabe mit geringerer Qualität als die Strahlverfolgung zur Folge.
  • Ein Teil der Bewertung eines Schatten- bzw. Farbtonbaumes sowohl bei der Abtastzeilen-Wiedergabe als auch bei der Strahlverfolgungs-Wiedergabe ist die Bestimmung der Vertex-, Scheitelpunkt- bzw. Spitzen-Schattierung bzw. -Farbtongebung. Bei der Vertex-, Scheitelpunkt- bzw. Spitzen-Schattierung bzw. -Farbtongebung wird die abschließende Farbe durch Abtastzeilen- oder Strahlverfolgung lediglich an den Vertex- bzw. Scheitelpunkten oder Spitzen jedes Polygons bestimmt, die in dem Wiedergabebild sichtbar sind. Die festgelegten abschließenden Farben werden dann zum Ausgleichen des Polygons linear interpoliert. Die wiedergegebenen abschließenden Farben an den Vertex- bzw. Scheitelpunkten oder Spitzen werden aus den Vertex- bzw. Scheitelpunkts- oder Spitzennormalen in Bezug auf die Lichtquellen, die definierten Oberflächenmerkmale usw. festgelegt. Die Wiedergabehardware funktioniert gewöhnlich in der Weise, dass sie die lineare Interpolation für den Ausgleich des Polygons bei vorgegebenen Vertex- bzw. Scheitelpunkts- oder Spitzenfarben ausführt.
  • Während die Modellierung von Objekten mit Polygonnetzen die Wiedergabekomplexität verringern kann, ist die Berechnung von Vertex- bzw. Scheitelpunkts- oder Spitzen-Farbinformationen durch beliebige Mittel, insbesondere durch Strahlverfolgung, trotzdem rechentechnisch aufwändig.
  • Ein weiteres allgemeines Merkmal bei Wiedergabebildern ist die Verwendung von Oberflächen mit Textur- oder Strukturabbildungen. Das Versehen einer Oberfläche oder eines Objekts mit Textur- oder Strukturabbildungen umfasst das Projizieren einer zweidimensionalen Textur bzw. Struktur (eines Bildes) auf Objekte und/oder Oberflächen, wobei Objekte mit Textur- oder Strukturabbildungen häufig für den Zweck der Wiedergabe als schachbrettartige Objekte dargestellt werden. Textur- oder Strukturbilder können ein beliebiges Muster oder Bild, z. B. photographische Bilder von Prominenten, Muster, eine Holzmaserung, Marmor usw. darstellen, enthalten und dienen im Allgemeinen dazu, ein realistisches abschließendes Bild oder einen gewünschten Spezialeffekt zu erhalten. Wenn Objekte und Oberflächen mit Textur- oder Strukturabbildungen wiedergegeben werden, muss jedoch der Abtastzeilenprozess, Strahlverfolgungsprozess oder ein anderer Wiedergabeprozess jedes Polygon oder jeden Abschnitt eines Polygons in dem schachbrettartigen Netz, das bzw. der die Wiedergabe eines Bildelements in dem Textur- bzw. Strukturbild beeinflusst, berücksichtigen und das ist ebenfalls rechentechnisch aufwändig.
  • Es sollte ein System und ein Verfahren geben, mit denen Wiedergabegeräte Bilder einer gewünschten Qualität bei kürzeren Wiedergabezeiten erzeugen können.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Es ist eine Aufgabe der vorliegenden Erfindung, ein neuartiges System und ein neuartiges Verfahren zum Wiedergeben von Bildern zu schaffen, die wenigstens einen Nachteil des Standes der Technik vermeiden oder mindern.
  • Gemäß einem ersten Aspekt der vorliegenden Erfindung wird ein Verfahren geschaffen, das im Anspruch 1 definiert ist. Bevorzugte Merkmale des Verfahrens sind in den Ansprüchen 2 bis 16 definiert.
  • Gemäß einem zweiten Aspekt der vorliegenden Erfindung wird ein Wiedergabegerät geschaffen, das im Anspruch 17 definiert ist.
  • Gemäß einem weiteren Aspekt der vorliegenden Erfindung wird ein System geschaffen, das im Anspruch 18 definiert ist. Bevorzugte Merkmale des Systems sind in den Ansprüchen 19 und 20 definiert.
  • Gemäß einer Ausführungsform der vorliegenden Erfindung wird ein Verfahren zum Bestimmen einer Beleuchtungskarte geschaffen, die bei der Wiedergabe einer Szenedefinition verwendet wird, um ein Bild zu erhalten, wobei das Verfahren die folgenden Schritte umfasst:
    • (i) aus einer Szenedefinition werden die Anzahl und die Orte von allen Lichtquellen, die für die Szene definiert sind, bestimmt;
    • (ii) aus der Szenedefinition werden die Orte von allen Objekten in der Szene bestimmt und jedes Objekt wird als ein schachbrettartiges Polygonnetz dargestellt;
    • (iii) an allen Objekten werden Beleuchtungswerte an Punkten, die von Interesse sind, bestimmt; und
    • (iv) die Beleuchtungswerte werden in einer Beleuchtungskarte für die Szenedefinition gespeichert.
  • KURZBESCHREIBUNG DER ZEICHNUNG
  • Bevorzugte Ausführungsformen der vorliegenden Erfindung werden nun lediglich beispielhaft unter Bezugnahme auf die beigefügten Figuren beschrieben, wobei:
  • 1 eine schematische Darstellung eines Textur- bzw. Strukturbildes aus 3 × 3 Bildelementen im uv-Raum ist;
  • 2 eine schematische Darstellung eines ebenen Objekts zeigt, das vier Polygone in einer 2 × 2 Anordnung enthält;
  • 3 eine schematische Darstellung eines schachbrettartigen Polygonnetzes zeigt, das verwendet wird, um das Objekt von 2 in einem uv-Koordinatenraum darzustellen;
  • 4 eine schematische Darstellung einer Projektion des Textur- bzw. Strukturbildes von 1 auf das schachbrettartige Polygonnetz von 3 zeigt;
  • die 5a bis 5m schematische Darstellungen der Kategorien der Überschneidung zeigen, die zwischen einem dreieckigen Polygon in einem schachbrettartigen Polygonnetz und einem viereckigen Textur- bzw. Strukturbildelement auftreten kann;
  • 6 eine schematische Darstellung einer Datenstruktur zeigt, die bei einer Ausführungsform der vorliegenden Erfindung verwendet wird;
  • die 7a und 7b einen Ablaufplan zeigen, der einen Prozess gemäß einer Ausführungsform der vorliegenden Erfindung darstellt;
  • 8 einen Ablaufplan zeigt, der einen Prozess gemäß einer weiteren Ausführungsform der vorliegenden Erfindung darstellt;
  • 9 eine schematische Darstellung einer Datenstruktur zeigt, die bei einer weiteren Ausführungsform der vorliegenden Erfindung verwendet wird;
  • die 10a und 10b einen Ablaufplan zeigen, der einen Prozess gemäß einer weiteren Ausführungsform der vorliegenden Erfindung darstellt; und
  • 11 einen Ablaufplan zeigt, der einen Prozess gemäß einer weiteren Ausführungsform der vorliegenden Erfindung darstellt.
  • GENAUE BESCHREIBUNG DER ERFINDUNG
  • Die vorliegende Erfindung dient zur Berechnung einer Beleuchtungskarte entweder durch Bestimmen der Beiträge jeder Lichtquelle in einer Szene oder durch Ausführen einer vollständigen Bewertung aller aktiven Komponenten eines Schatten- bzw. Farbtonbaumes, der für die Szene definiert ist. Der hier verwendete Ausdruck "Schatten- bzw. Farbtonbaum" soll eine geeignete Datenstruktur umfassen, in welcher Komponenten gespeichert sind, die von einem Wiedergabegerät beim Erzeugen eines Wiedergabebildes zu berücksichtigen sind. Es wird ferner in Betracht gezogen, dass ein derartiger Schatten- bzw. Farbtonbaum eine Vielzahl von Komponenten enthalten kann, von denen lediglich einige zu einem bestimmten Zeitpunkt "aktiv" sind. Ein Schatten- bzw. Farbtonbaum kann z. B. verschiedene Komponenten aufweisen, die spiegelnde Farbinformationen betreffen, diese Komponenten können jedoch inaktiv sein, wenn ein Benutzer das Wiedergabegerät anweist, Spiegelungen zu ignorieren.
  • Eine Beleuchtungskarte repräsentiert die Beleuchtungsinformationen an Punkten, die von Interesse sind, in einer Szene, die wiedergegeben werden soll, und diese Beleuchtungskarte kann dann von dem Wiedergabegerät verwendet werden, um das abschließende Wiedergabebild zu erhalten. In diesem Fall gibt das Wiedergabegerät die Szene wieder ohne weitere Berücksichtigung der Wirkung der Licht quellen, die für die Szene an irgendeinem Objekt definiert sind, für welches eine Beleuchtungskarte definiert ist, und das hat eine rechentechnisch weniger komplexe Wiedergabe und dadurch eine verkürzte Wiedergabedauer zur Folge.
  • Eine Beleuchtungskarte ist unabhängig von dem Kamerastandpunkt und deswegen ist eine Beleuchtungskarte, die für ein Objekt definiert ist, für die Wiedergabe dieses Objekts in einem Bild nützlich, wobei sich die Lichtquellen und andere Komponenten des Schatten- bzw. Farbtonbaums, die bei der Bestimmung der Beleuchtungskarte verwendet werden, nicht ändern. Indem eine vorgegebene Beleuchtungskarte verwendet wird, ist somit die Verarbeitungszeit für das Wiedergabegerät beim nachfolgenden Wiedergeben eines Bildes verkürzt, wodurch möglich wird, dass das Wiedergabegerät entweder die Szenedefinition schneller oder eine komplexere Szene in einer vorgegebenen Zeitdauer verarbeiten kann.
  • Beleuchtungskarten sind ferner unabhängig von dem Werkstoff von Polygonen und/oder Textur- bzw. Strukturbildern, die bei der Textur- bzw. Strukturabbildung verwendet werden. Nachdem eine Beleuchtungskarte bestimmt wurde, kann somit der Werkstoff von Objekten und/oder Textur- bzw. Strukturbildern wunschgemäß geändert und wiedergegeben werden, ohne dass die Notwendigkeit der Bestimmung einer neuen Beleuchtungskarte besteht.
  • Die Herstellung einer Beleuchtungskarte erfordert im Allgemeinen die Bestimmung von Punkten, die von Interesse sind, in der Szene und die Bestimmung eines Beleuchtungswertes in der Szene an diesen Punkten, die von Interesse sind. Bei Objekten ohne Textur- bzw. Strukturbilder entsprechen die Punkte, die von Interesse sind, den Vertex- oder Scheitelpunkten bzw. Spitzen der Polygone in dem Netz, das das Objekt repräsentiert. Bei Objekten mit Textur- bzw. Strukturbildern ist die Bestimmung der Punkte, die von Interesse sind, komplexer und wird an dieser Stelle zunächst mit der folgenden Erläuterung des einfacheren Falls von Polygonnetzen ohne Textur- bzw. Strukturbilder dargestellt.
  • Bei dieser Ausführungsform der vorliegenden Erfindung für Oberflächen mit Textur- bzw. Strukturbildern wählt der Benutzer eine oder mehrere Textur- bzw. Strukturkarten, für die Beleuchtungswerte bestimmt werden sollen. Bei dem Produkt SoftImage|3D kann die Auswahl ausgeführt werden, indem ein oder mehrere Textur- bzw. Strukturknoten in der schematischen Ansicht der Szenedefinition ausgewählt werden, obwohl ein beliebiges anderes geeignetes Verfahren zum Auswählen eines zu berücksichtigenden Textur- bzw. Strukturbildes außerdem verwendet werden kann, was für einen Fachmann offensichtlich ist. Anschließend werden das Objekt oder die Objekte, auf denen das Textur- bzw. Strukturbild kartographiert werden soll, unter Verwendung eines geeigneten Schachbrett-Algorithmus in eine Polygonnetz-Darstellung umgesetzt, wenn sie nicht bereits in einer derartigen Darstellung vorliegen.
  • Bei dem oben erwähnten System SoftImage|3D und anderen Systemen kann eine Textur- bzw. Strukturabbildung durch eine Projektion oder durch eine uv-Abbildung (d. h. im uv-Raum) ausgeführt werden. Bei der Projektion können ebene, zylindrische oder sphärische Projektionen verwendet werden, wobei eine Erläuterung derartiger Projektionstechniken in dem oben erwähnten Dokument "Advanced Animation and Rendering Techniques, Theory and Practice" von Watt & Watt angegeben ist, dessen Inhalt hier durch Literaturhinweis eingeschlossen ist. Wenn die uv-Abbildung verwendet wird, wird das Textur- bzw. Strukturbild im uv-Koordinatenraum dargestellt oder in diesen umgesetzt, wobei "u" die horizontale Achse des Textur- bzw. Strukturbildes repräsentiert und im Bereich von 0,0 bis 1,0 liegt, und "v" die vertikale Achse repräsentiert und ebenfalls im Bereich von 0,0 bis 1,0 liegt. Die Koordinaten des Polygons bzw. der Polygone, an denen eine uv-Textur- bzw. Strukturabbildung ausgeführt werden soll, werden vom xyz-Raum in den uv-Raum umgesetzt, wenn sie nicht bereits in uv-Koordinaten ausgedrückt werden, und die Abbildung wird anschließend ausgeführt.
  • 1 zeigt eine schematische Darstellung eines Textur- bzw. Strukturbildes 40 mit einer Auflösung von 3 × 3 Bildelementen. Einem Fachmann ist klar, dass die Größe des Textur- bzw. Strukturbildes zur Klarheit der Erläuterung ausgewählt wurde und tatsächlich im Allgemeinen Textur- bzw. Strukturbilder mit viel größeren Abmessungen verwendet werden.
  • 2 zeigt eine schematische Darstellung eines 3D-Objekts 60, das in diesem Fall ein Polygonnetz mit vier Polygonen ist. Einem Fachmann ist wiederum klar, dass das Objekt 60 zur Klarheit ausgewählt wurde und 3D-Objekte mit größerer Komplexität bei der vorliegenden Erfindung verwendet werden können und tatsächlich verwendet werden. Das 3D-Objekt kann z. B. ein Polygonnetz, NURBS oder eine zusammengesetzte Oberfläche usw. enthalten.
  • 3 zeigt das Ergebnis der Umsetzung des Polygons 60 zu einer schachbrettar tigen Darstellung 80 im uv-Raum, wobei das Objekt durch acht dreieckige Polygone 84 bis 112 repräsentiert ist und die Koordinaten der Vertex- oder Scheitelpunkten bzw. Spitzen jedes Dreiecks im uv-Raum angegeben sind.
  • 4 zeigt das Ergebnis der Projektion des Textur- bzw. Strukturbildes 40 auf die schachbrettartige Darstellung 80 eines 3D-Objekts 60. Die Vertex- oder Scheitelpunkte bzw. Spitzen des Polygons 108 liegen z. B. bei (0,0; 0,5), (0,5; 0,0) und (0,5, 0,5). Während bei diesem Beispiel ein Textur- bzw. Strukturbild 40 vollständig auf dem Objekt 60 kartographiert ist, ist es für einen Fachmann klar, dass das nicht der Fall sein muss und das Textur- bzw. Strukturbild 40 bei Bedarf beschnitten sein kann, so dass lediglich ein rechtwinkliger Bereich des Textur- bzw. Strukturbildes 40, der von Interesse ist, auf dem Objekt 60 kartographiert ist.
  • Anschließend wird der Bereich, der von jedem Bildelement der Textur bzw. Struktur auf dem Objekt 60 belegt ist, aus du = 1.0/Breite und dv = 1,0/Höhe bestimmt, wobei Breite die horizontale Auflösung des beschnittenen Bereichs des Textur- bzw. Strukturbildes 40 (in Bildelementen) und Höhe die vertikale Auflösung des beschnittenen Bereichs des Textur- bzw. Strukturbildes 40 (in Bildelementen) ist und der von einem Polygon-Bildelement belegte Bereich somit (du·dv) ist.
  • Der nächste Schritt besteht darin, Daten für die Punkte, die auf dem Objekt von Interesse sind, zu erhalten, wobei ein Punkt, der von Interesse ist und bei jeder Überschneidung zwischen einem Polygon auf dem Objekt und einem Bildelement in dem beschnittenen Bereich des Textur- bzw. Strukturbildes 40 auftritt, nachfolgend als ein Texel bezeichnet wird. Jeder Punkt, der von Interesse ist, besitzt ein zugehöriges Gewicht bzw. eine zugehörige Gewichtung, wobei das Gewicht der Größe des Bereichs der Überschneidung in Bezug auf den Gesamtbereich des Texels entspricht. Es gibt mehrere mögliche Kategorien der Überschneidung zwischen einem Polygon und einem Texel, wie in den 5a bis 5h gezeigt ist, wobei der Bereich der Überscheidung durch ein schraffiertes Polygon repräsentiert ist.
  • 5a zeigt den trivialen Fall, bei dem kein Überschneidungsbereich zwischen dem Polygon 120 und dem Bereich des Texels 124 auftritt und somit das Polygon 120 ein Gewicht null für dieses Texel hat und für dieses Texel keine Informationen gespeichert werden. 5b zeigt den anderen trivialen Fall einer vollständigen Überschneidung zwischen dem Polygon 120 und den Bereich des Texels 124, was ein Gewicht von 100% zur Folge hat.
  • Die 5c, 5d und 5e zeigen Beispiele eines einzelnen Vertex- oder Scheitelpunktes bzw. einer einzelnen Spitzen des Polygons 120, die in den Bereich des Texels 124 fallen. In diesen Fällen kann das Polygon, das den Bereich der Überschneidung repräsentiert, vier oder fünf Vertex- oder Scheitelpunkte bzw. Spitzen aufweisen, wie jeweils in diesen Figuren gezeigt ist. Um das Gewicht für ein Polygon 120 zu bestimmen, wird der Überschneidungsbereich durch geeignete Mittel bestimmt. In der vorliegenden Ausführungsform der Erfindung wird der Überschneidungsbereich unter Verwendung des Algorithmus bestimmt, der auf den Seiten 5 und 6 des Abschnitts 1.1 des Dokuments "Graphics Gems II" von James Avro, beschrieben ist, das durch Academic Press, Inc., San Diego, CA veröffentlicht wurde, dessen Inhalt hier durch Literaturhinweis eingeschlossen ist und bei dem lediglich die Koordinaten der Vertex- oder Scheitelpunkte bzw. Spitzen bekannt sein müssen, um diesen Bereich dieses Polygons zu berechnen.
  • Die Vertex- oder Scheitelpunkte bzw. Spitzen des Überschneidungsbereichs (der in den Figuren das schraffierte Polygon ist) kann auf irgendeine geeignete Weise bestimmt werden und das wird in der vorliegenden Ausführungsform der Erfindung unter Verwendung des Algorithmus ausgeführt, der durch Mukesh Prasad in dem oben erwähnten Referenzdokument "Graphic Gems II" auf den Seiten 7 bis 9 des Abschnitts 1.2 beschrieben ist.
  • Die 5f und 5g zeigen Beispiele, bei denen zwei Vertex- oder Scheitelpunkte bzw. Spitzen des Polygons 120 in das Texel 124 fallen, was zur Folge hat, dass die Form des Überschneidungsbereichs vier oder fünf Vertex- oder Scheitelpunkte bzw. Spitzen aufweist, wie jeweils gezeigt ist, und der Bereich dieser Überschneidungspolygone wird in der gleichen, oben beschriebenen Weise bestimmt.
  • 5h zeigt ein Beispiel eines Falls, bei dem alle Vertex- oder Scheitelpunkte bzw. Spitzen des Polygons 120 in das Texel 124 fallen, was zur Folge hat, dass der Überschneidungsbereich der Form (und dem Bereich) des Polygons 120 entspricht.
  • Die 5i und 5j zeigen Beispiele, bei denen keine Vertex- oder Scheitelpunkte bzw. Spitzen, sondern eine Kante des Polygons 120 das Texel 124 überschneidet, was zur Folge hat, dass die Form des Überschneidungsbereichs drei bzw. vier Vertex- oder Scheitelpunkte bzw. Spitzen aufweist. Die 5k und 5l zeigen Bei spiele, bei denen keine Vertex- oder Scheitelpunkte bzw. Spitzen, sondern zwei Kanten des Polygons 120 das Texel 124 überschneiden, was zur Folge hat, dass die Form des Überschneidungsbereichs vier bzw. fünf Vertex- oder Scheitelpunkte bzw. Spitzen aufweist.
  • Schließlich zeigt 5m ein Beispiel, bei dem keine Vertex- oder Scheitelpunkte bzw. Spitzen, sondern drei Kanten des Polygons 120 das Texel 124 überschneiden, was zur Folge hat, dass die Form des Überschneidungsbereichs sechs Vertex- oder Scheitelpunkte bzw. Spitzen aufweist.
  • Eine Datenstruktur, die mit dem Bezugszeichen 140 in 6 angegeben ist, wird anschließend für jedes Texel in dem beschnittenen Bereich des Textur- bzw. Strukturbildes 40 erzeugt, der das vollständige Textur- bzw. Strukturbild 40 oder irgendeinen rechteckigen Unterbereich davon umfassen kann. Datenstrukturen 140 speichern Informationen, die jedes Texel betreffen, einschließlich Informationen, die die Punkte betreffen, die für die Texel von Interesse sind, wie nachfolgend beschrieben wird.
  • Jede Datenstruktur 140 speichert einen diffusen Farbwert 144, der für das Texel im normierten RGB-Farbraum bestimmt wird (d. h. R liegt zwischen 0,0 und 1,0, B liegt zwischen 0,0 und 1,0 und G liegt zwischen 0,0 und 1,0), einen Umgebungsfarbwert 148, der für das Texel im normierten RGB-Farbraum bestimmt wird, die Anzahl 152 von Punkten, die für das Texel von Interesse sind, und einen Zeiger 156 auf eine verknüpfte Liste 160 von Datenstrukturen 164, die Informationen für jeden von diesen Punkten, die von Interesse sind, speichern.
  • Wie gezeigt ist, enthält jeder Knoten 164 in der verknüpften Liste 160 eine Position 168, die das ermittelte Zentrum des Überschneidungsbereichs zwischen dem jeweiligen Polygon und dem Texel im xyz-Koordinatenraum ist, eine Oberflächennormale 172, die an der Position 168 im xyz-Koordinatenraum ermittelt wurde, ein Gewicht 176 und einen Zeiger 180 zum nächsten Knoten. Die verknüpfte Liste 160 wird abgeschlossen, wenn der Zeiger 180 eine Null ist. Die Verfahren zum Bestimmen der oben genannten relevanten Werte für jeden Knoten 164 und die Datenstruktur 140 werden nachfolgend erläutert.
  • Der Wert für das Gewicht 176 in jedem Knoten 164 wird als der Bereich der Überschneidung zwischen dem Polygon und dem Texel in Bezug auf den Ge samtbereich bestimmt. In 4 würde z. B. das Gewicht für den Überschneidungsbereich zwischen dem Polygon 96 und dem oberen rechten Texel unter der Voraussetzung, dass die Vertex- oder Scheitelpunkte bzw. Spitzen des Polygons der Überschneidung lauten {(0,5, 0,0), (1,0, 0,0), (1,0, 1,0), (0,0, 1,0) und (0,0, 0,5)}, mit einem Wert von 0,875 ermittelt oder
  • Figure 00120001
  • Es ist klar, dass die Summe der Gewichte 176 jedes Knotens 164 für ein Texel den Wert 1 nicht übersteigen kann.
  • Bei dreieckigen schachbrettartigen Polygonen wird die Position 186 in der nachfolgend beschriebenen Weise bestimmt. Wenn keine dreieckigen schachbrettartigen Polygone als schachbrettartige Netzpolygone verwendet werden, wie etwa rechteckige Polygone oder dergleichen, kann eine beliebige geeignete Technik zum Bestimmen der Position 186 und des Normalenvektors 172 verwendet werden, was für einen Fachmann klar ist.
  • Für dreieckige Polygone wird zunächst das Zentrum des Überschneidungsbereichs ermittelt durch Summieren der u-Komponente jedes Vertex- oder Scheitelpunkts bzw. jeder Spitze in dem Überschneidungsbereich und Dividieren des Ergebnisses durch die Anzahl der Vertex- oder Scheitelpunkte bzw. Spitzen, um die u-Koordinate des Zentrums zu erhalten, sowie durch Ausführen eines ähnlichen Prozesses bei der v-Komponente, um die v-Koordinate des Zentrums zu erhalten. Anschließend werden die Schwerpunktkoordinaten für das Zentrum des Überschneidungsbereichs in dem Polygon unter Verwendung des Zentrums in uv-Koordinaten, das oben ermittelt wurde, und der uv-Koordinaten der Vertex- oder Scheitelpunkte bzw. Spitzen des Polygons ermittelt.
  • Wie für einen Fachmann klar ist, ist ein Schwerpunkt-Koordinatensystem ein Koordinatensystem, das sich auf eine vorgegebene Menge von Punkten bezieht, wobei eine Erläuterung von Schwerpunkt-Koordinatensystem angegeben ist im Kapitel 10 des Dokuments "Geometric Concepts for Geometric Design" von Wolfgang Boehm & Hartmut Prautzsch, veröffentlicht in A K Peters Ltd., (ISBN 1-56881-004-0) "Coordinate-Free Geometric Programming", Tony Derose, Technical Report 89-09-16, Department of Computer Science and Engineering, University of Washington, Seattle, 1994 und im Dokument "On-Line Computer Graphics Notes" auf der Internetseite http://muldoon.cs.ucdavis.edu/GraphicsNotes/Barycentric-Coordinates/Barycentric-Coordinates.html, die durch die Universität von Kalifornien, Davis veröffentlicht wurden, wobei die Inhalte dieser Publikationen hier durch Literaturhinweis eingeschlossen sind. Das berechnete Schwerpunktzentrum wird dann mit den uv- und den xyz-Raumkoordinaten der Vertex- oder Scheitelpunkte bzw. Spitzen des Polygons verwendet, um das Zentrum des Überschneidungsbereichs im xyz-Raum zu erhalten. Das ist der Positionswert 168, der im Knoten 164 gespeichert ist.
  • Anschließend werden die oben ermittelten Schwerpunktkoordinaten des Zentrums mit den Normalen der Vertex- oder Scheitelpunkte bzw. Spitzen des Polygons verwendet, um eine interpolierte Oberflächennormale am ermittelten Zentrum im xyz-Raum zu erhalten.
  • Wenn die Berechnung der Werte für die Knoten 164 abgeschlossen ist, werden die Werte 144 und 148, die die diffuse Farbe bzw. die Umgebungsfarbe repräsentieren, für die Datenstruktur 140 ermittelt. Die diffuse Farbe 144 wird aus Gleichung 1 im Anhang A bestimmt, wobei: der Mischungswert wird für das Texel entweder global für das Textur- bzw. Strukturbild für jedes einzelne Texel oder durch eine Kombination von beiden definiert und definiert die relativen Beiträge der diffusen Farbe des Werkstoffs und der diffusen Farbe des Texels zur diffusen Farbe; die diffuse Farbe des Werkstoffs ist die diffuse Farbe, die für das Objekt definiert ist, auf dem die Textur bzw. Struktur aufgebracht wird; die Bildpunktfarbe ist die diffuse Farbe, die für das Texel in dem Textur- bzw. Strukturbild definiert ist; und der diffuse Faktor des Texels ist eine Variable, die im Bereich von 0,0 bis 1,0 in geeigneter Weise eingestellt ist und auf Wunsch zur Einstellung der Intensität der diffusen Farbe verwendet wird.
  • In ähnlicher Weise wird die Umgebungsfarbe 148 aus Gleichung 2 im Anhang A ermittelt, wobei: der Mischungswert oben beschrieben wurde; die Umgebungsfarbe des Werkstoffs die Umgebungsfarbe ist, die für das Objekt definiert ist, auf dem die Textur bzw. Struktur aufgebracht wird; der Umgebungsfaktor der Textur bzw. Struktur dem oben beschriebenen diffusen Faktor der Textur bzw. Struktur ähnlich ist und ermöglicht, die Intensität der Umgebungsfarbe auf Wunsch zu än dern; die Bildelementfarbe ist die Farbe des Texels; und die Umgebungsfarbe der Szene ist eine globale Umgebungsfarbe, die für die Szene definiert sein kann. In der vorliegenden Ausführungsform der Erfindung wird jede Farbe im normierten RGB-Farbraum ausgedrückt wird (wobei die R-, G- und B-Werte jeweils zwischen 0,0 und 1,0 liegen). Wenn in dem Produkt SoftImage|3D ein Objekt keinen Werkstoff besitzt, der ausdrücklich dafür definiert ist, wird ein Standardwerkstoff (mit Umgebungsfarbe und diffuser Farbe) verwendet.
  • Nachdem die Werte in den Datenstrukturen 140 und in ihren entsprechenden Knoten 164 ermittelt wurden, werden die Punkte, die von Interesse sind, wiedergegeben. Im Einzelnen wird die Szenedefinition geprüft, um die Anzahl von Lichtquellen und ihre Positionen festzustellen. Wenn in der vorliegenden Ausführungsform der Erfindung für eine Szene keine Lichtquellen definiert sind, wird eine Standardlichtquelle verwendet, wobei die Lichtquelle in einem unendlichen Abstand von de Szenenelementen angeordnet ist.
  • Bei der gegenwärtig bevorzugten Ausführungsform der Erfindung wird der Prozess für die Erzeugung von Datenstrukturen 140 und Knoten 164 und die Bestimmung ihrer entsprechenden Werte für jedes einzelne Polygon ausgeführt. Im Einzelnen wird eine rechtwinklige Begrenzungszelle der Texel für ein Polygon in dem schachbrettartigen Netz festgelegt, wobei die Begrenzungszelle jene Texel definiert, die sich mit einem bestimmten Polygon überschneiden können. Jedes der in der Begrenzungszelle befindlichen Texel wird dann nacheinander betrachtet und wenn das betrachtete Texel sich mit dem Polygon überschneidet, wird eine Datenstruktur 140 erzeugt, falls für das Texel noch keine Datenstruktur vorhanden ist, und ein Knoten 164 wird mit geeigneten Werten erzeugt und der verknüpften Liste 160 für das Texel hinzugefügt und der Wert 152, der die Anzahl der Punkte, die für das Texel von Interesse sind, repräsentiert, wird in der geeigneten Datenstruktur 140 aktualisiert. Wenn alle Texel in der Begrenzungszelle für ein Polygon betrachtet wurden, wird der Prozess für das nächste Polygon wiederholt.
  • Wenn alle Polygone behandelt wurden, setzt sich der Wiedergabeprozess fort, wie in den 7a und 7b gezeigt ist. Im Einzelnen wird jedes Texel in dem beschnittenen Abschnitt des Textur- bzw. Strukturbildes 40, für das eine Datenstruktur 140 erzeugt worden ist, nacheinander betrachtet. Wie gezeigt ist, wird im Schritt 200 ein erstes Texel ausgewählt und im Schritt 204 werden sowohl die abschließende Farbe als auch das Gesamtgewicht für das Texel auf null initialisiert. Im Schritt 208 wird festgestellt, ob Punkte, die von Interesse sind, für das Texel definiert wurden. Wenn keine Punkte, die von Interesse sind, vorhanden sind, die für das Texel definiert wurden, geht der Prozess zum Schritt 248 in 7b.
  • Wenn im Schritt 208 festgestellt wird, dass ein Punkt oder mehrere Punkte, die von Interesse sind, für das Texel definiert wurden, geht der Prozess zum Schritt 220, in dem ein erster Punkt, der für das Texel von Interesse ist, ausgewählt wird und das Gewicht 176, das für diesen Punkt, der von Interesse ist, bestimmt wurde, wird im Schritt 224 zu dem Wert des Gesamtgewichts akkumuliert. Im Schritt 228 wird eine erste Lichtquelle aus den für die Szene definierten Lichtquellen ausgewählt. Wenn, wie oben erwähnt wurde, für eine Szene keine Lichtquelle definiert ist, wird von dem Prozess eine Standardlichtquelle in einem unendlichen Abstand verwendet.
  • Im Schritt 232 wird die Lichtfarbe an der Position 168 festgelegt unter Verwendung eines Normalenvektors 172 für den Punkt, der von Interesse ist, und das Produkt aus dieser festgelegten Lichtfarbe und dem Gewicht 176 und der diffuse Farbwert 144 werden zu dem abschließenden Farbwert für das Texel hinzuaddiert. Im Schritt 236 wird festgestellt, ob noch irgendwelche Lichtquellen berücksichtigt werden müssen, und wenn ja, werden die Schritte 228 und 232 für alle verbleibenden Lichtquellen wiederholt, wobei die Produkte aus den Lichtfarben und dem Gewicht in dem abschließenden Farbwert für das Texel akkumuliert (aufsummiert) werden.
  • Im Schritt 240 wird festgestellt, ob noch irgendwelche Punkte, die von Interesse sind, für das betrachtete Texel berücksichtigt werden müssen. Wenn noch Punkte, die von Interesse sind, verbleiben, die berücksichtigt werden müssen, wiederholt der Prozess die Schritte 220 bis 240 nacheinander für alle verbleibenden Punkte, die von Interesse sind.
  • Wenn alle Punkte, die von Interesse sind, für ein Texel verarbeitet wurden, geht der Prozess zum Schritt 248, in dem das Produkt aus dem diffusen Farbwert 144 und der Differenz zwischen einem Gewicht und dem akkumulierten Gesamtgewicht zu dem abschließenden Farbwert hinzuaddiert wird, wobei der Prozess anschließend zum Schritt 250 geht, in dem das Produkt aus dem Gesamtgewicht und dem Umgebungsfarbwert zu dem abschließenden Farbwert hinzuaddiert wird.
  • Im Schritt 216 wird festgestellt, ob alle Texel in einer Datenstruktur 140 berücksichtigt wurden. Wenn noch zu Texel berücksichtigen sind, wiederholt der Prozess nacheinander die Schritte 200 bis 150 für jedes Texel. Andernfalls endet der Wiedergabeprozess im Schritt 252 durch Ersetzen der Farbinformationen, die in jedem Texel des Textur- bzw. Strukturbildes gespeichert sind, durch den entsprechenden abschließenden Farbwert, der durch den Prozess bestimmt wurde.
  • Die Gleichung 3 im Anhang A zeigt die Berechnung der abschließenden Farbe, die verwendet wird, um die Texel-Farbinformationen im Schritt 252 zu ersetzen, genauer. In der Gleichung ist "nbp" die Anzahl der Punkte, die für das Texel von Interesse sind, "nbl" ist die Anzahl von Lichtquellen, die für die Szene definiert ist, Umgebungsfarbe ist der Umgebungsfarbwert 148, diffuse Farbe ist der diffuse Farbwert 144 und Lichtquellej ist der Wert der Lichtquelle für die Position 168 und die Normale 172. Wie oben erwähnt wurde, werden im Produkt SoftImage|3D Farben als R-, G- und B-Werte ausgedrückt, die im Bereich von 0,0 bis 1,0 liegen, deswegen werden die Ergebnisse von Gleichung 3 bei Bedarf so beschränkt, dass sie im Bereich von 0,0 bis 1,0 liegen, d. h. rot = 1.031 wird auf rot = 1,0 gerundet, blau = –0,01 wird auf 0,0 gerundet usw.
  • Die Wiedergabe des abschließenden Bildes wird dann in irgendeiner geeigneten Weise realisiert, wie etwa mit dem oben erwähnten Wiedergabegerät "Mental ray", unter Verwendung der modifizierte Version das Textur- bzw. Strukturbildes 40, das sich aus diesen Ausführungsform der vorliegenden Erfindung ergibt, sowie mit dem Wiedergabegerät, das so beschaffen ist, dass sein Farbtongebungsmodul deaktiviert ist, d. h. im Fall des Wiedergabegerät "Mental ray" auf "konstant" gestellt ist, so dass der Beitrag von Lichtquellen in der Szene von dem Wiedergabegerät nicht weiter berücksichtigt werden.
  • Wie für einen Fachmann klar ist, indem die Beleuchtungswerte für das Textur- bzw. Strukturbild 40 im Voraus angegeben werden, werden die rechentechnischen Anforderungen für das Wiedergabegerät verringert. Wie außerdem klar ist, ist das modifizierte Textur- bzw. Strukturbild 40 von dem Kamerastandpunkt unabhängig, wodurch der Standpunkt geändert werden kann, ohne dass das Textur- bzw. Strukturbild 40 weiter modifiziert werden muss und das Wiedergabegerät den Beitrag der Lichtquellen, die in der Szene definiert sind, berücksichtigen muss.
  • Es sollte angemerkt werden, dass die vorliegende Erfindung in der oben beschrie benen Ausführungsform, bei der lediglich der Beitrag von Lichtquellen berücksichtigt wird, keine Spiegelungsinformationen für Objekte erzeugt. In vielen Fallen ist das kein unzulässiger Nachteil, wenn Spiegelungen und Spiegelungseffekte nicht erwünscht sind.
  • Es wird jedoch in Erwägung gezogen, dass Spiegelungen dann, wenn sie erwünscht sind, von dem Wiedergabegerät zum Zeitpunkt der Wiedergabe bestimmt und mit den Informationen, die gemäß der vorliegenden Erfindung erzeugt werden, kombiniert werden können, was einem Fachmann klar ist, jedoch auf Kosten einer Verlängerung der Wiedergabezeit im Vergleich zur Wiedergabezeit des gleichen Bildes ohne Spiegelungen. Wenn Spiegelungen lediglich für eine begrenzte Anzahl von Objekten in einer Szene erwünscht sind, könnte dieser Anstieg der Wiedergabezeit kein wesentliches Problem darstellen.
  • Die Ausführungsform, die nachfolgend beschrieben wird und die alle aktiven Komponenten des Schatten- bzw. Farbtonbaumes bewertet, der für die Szene definiert ist, wird auf Wunsch Spiegelungen erzeugen.
  • Der oben beschriebene Prozess umfasst im Wesentlichen die Berechnung von Informationen, die hier als "Beleuchtungskarte" bezeichnet werden, die den Beitrag der Lichtquellen der Szene zu den Punkten, die in der Szene von Interesse sind, repräsentiert und die Farben der Objekte an diesen Punkten, die von Interesse sind, mit den Beleuchtungskartenwerten kombiniert, um neue Farbwerte für das Textur- bzw. Strukturbild zu erhalten. Die vorliegende Erfindung dient jedoch außerdem zur Speicherung der Beleuchtungskartenwerte, um eine Vorab-Wiedergabe des Beitrags der Lichtquellen der Szene unabhängig von der Textur bzw. Struktur zu ermöglichen. Durch Modifizieren des oben beschriebenen Prozesses kann die vorliegende Erfindung insbesondere eine Beleuchtungskarte erzeugen, die anschließend bei Bedarf mit irgendeinem Textur- bzw. Strukturbild kombiniert werden kann.
  • Um eine Beleuchtungskarte zu erzeugen, wird der Prozess der 7a und 7b in der folgenden Weise modifiziert. Im Schritt 232 wird das Produkt aus der Lichtfarbe und dem Gewicht 176 mit dem Beleuchtungswert für das Texel akkumuliert (summiert). Wenn im Schritt 240 festgestellt wird, dass für das Texel keine weiteren Punkte, die von Interesse sind, berücksichtigt werden müssen, geht der Prozess nicht wie zuvor zu den Schritten 248 und 250, sondern zum Schritt 216. Die Schritte 248 und 250, die sich mit den Umgebungs- und diffusen Beiträgen beschäftigen, sind nicht erforderlich und werden bei dieser Ausführungsform weggelassen. Wenn im Schritt 216 keine weiteren Texel berücksichtigt werden müssen, endet der Prozess im Schritt 252 mit der Speicherung der resultierenden Beleuchtungswerte, um die Beleuchtungskarte zu erhalten. Die Berechnung der Beleuchtungswerte für eine Beleuchtungskarte ist in der Gleichung 4 des Anhangs A genauer dargestellt, wobei "nbp" und "nbl" die gleichen Größen wie zuvor repräsentieren. Es sollte angemerkt werden, dass Texel in diesem Prozess lediglich geometrische Platzhalter sind, die verwendet werden, um Informationen zu bestimmen, die die Überschneidungen betreffen, die dann, wenn ein Textur- bzw. Strukturbild auf den entsprechenden Objekten kartographiert wird, auftreten.
  • Um eine Beleuchtungskarte bei der Wiedergabe einer Szene zu verwenden, werden die Beleuchtungswerte in der Beleuchtungskarte mit der Texelfarbe der Texel in der Textur- bzw. Strukturbildkarte 40 und wahlweise mit einer Umgebungsfarbe kombiniert, um die Wiedergabefarbe zu erhalten, wie in Gleichung 5 vom Anhang A gezeigt ist.
  • Nachdem eine Beleuchtungskarte für eine Szene bestimmt wurde, können Texturen bzw. Strukturen nach Bedarf geändert und/oder ersetzt werden. Eine Szene kann z. B. mit Wänden wiedergegeben werden, auf die eine Textur bzw. Struktur der Holzmaserung kartographiert wird. Die Szene kann dann erneut wiedergegeben werden, z. B. als eine andere Einstellung in einem Spiel, wobei an den Wänden eine Marmortextur bzw. -struktur kartographiert ist. In jedem Fall wird die gleiche Beleuchtungskarte bi dem Wiedergabeprozess verwendet und dadurch wird, nachdem für eine Szene eine Beleuchtungskarte bestimmt wurde, die Wiedergabezeit zum Wiedergeben dieser Szene verringert. Es wird angenommen, dass bei Wiedergabegeräten wie jenen, die in Spielsystemen verwendet werden, wie etwa SEGA Saturn, Sony Play Station, Nintendo 64 oder dergleichen, die Verwendung von Beleuchtungskarten besonders nützlich ist, obwohl die vorliegende Erfindung nicht auf derartige Anwendungsarten beschränkt ist.
  • Wie oben erwähnt wurde, kann die vorliegende Erfindung außer bei der Bestimmung von Wiedergabefarben für Objekte mit Textur- bzw. Strukturabbildungen außerdem verwendet werden, um Objekte ohne Textur- bzw. Strukturabbildungen wiederzugeben. Insbesondere in dem oben erwähnten Produkt SoftImage|3D und vielen anderen Produkten werden Objekte aus Polygonnetzen, die zum Darstellen des Objekts verwendet werden, abgebildet. Wenn derartige Objekte wiedergegeben werden, ohne dass eine Textur- bzw. Strukturabbildung auf sie projiziert ist, bestimmt das Wiedergabegerät für jedes sichtbare Polygon in dem Netz die Wiedergabefarbe an allen Vertex- bzw. Scheitelpunkten oder Spitzen des Polygons und den Normalenvektor des Polygons, wobei diese Wiedergabefarben über die Polygonoberfläche linear interpoliert werden. Die lineare Interpolation von Vertex- bzw. Scheitelpunkt- oder Spitzenfarben über eine Polygonoberfläche ist eine allgemein verwendete Operation, die die Wiedergabehardware häufig bereitstellt, wobei sie als Eingaben die Vertex- bzw. Scheitelpunkt- oder Spitzenfarben und den Normalenvektor des Polygons empfängt und anschließend die Wiedergabefarben für die angezeigten Bildelemente des Polygons bestimmt. Obwohl eine derartige Wiedergabehardware die Zeit, die zum Wiedergeben eines Objekts erforderlich ist, bedeutend verbessern kann, muss das Wiedergabegerät trotzdem die Vertex- bzw. Scheitelpunkt- oder Spitzenfarben für jedes sichtbare Polygon bestimmen und das kann bei vielen Systemen eine bedeutende Rechenleistung darstellen.
  • In einer weiteren Ausführungsform der vorliegenden Erfindung kann dementsprechend eine Beleuchtungskarte zum Wiedergeben von Objekten, die als Polygone repräsentiert werden, bestimmt werden. Dieser Prozess beginnt damit, dass der Benutzer das Objekt oder Objekte auswählt, für die eine Beleuchtungskarte bestimmt werden soll. Bei dem Produkt SoftImage|3D kann diese Auswahl aus einer schematischen Ansicht der Hierarchie von Objekten in einer Szene oder durch die Auswahl einer Betriebsart "Alle Objekte" ausgeführt werden. Bei Bedarf kann natürlich jedes weitere geeignete Verfahren zum Auswählen von Objekten, die zu berücksichtigen sind, verwendet werden. Nachdem die zu berücksichtigenden Objekte ausgewählt wurden, setzt sich der Prozess in der nachfolgend beschriebenen Weise fort.
  • Bei dieser Ausführungsform, die der oben beschriebenen Ausführungsform der Textur- bzw. Strukturabbildung ähnlich ist, sind die Punkte, die von Interesse sind, die Vertex- bzw. Scheitelpunkten oder Spitzen jedes Polygons und die Beleuchtungskarte enthält für jeden von diesen Vertex- bzw. Scheitelpunkten oder jede Spitze einen Beleuchtungswert. Diese Beleuchtungskarte kann mit den Vertex- bzw. Scheitelpunkt- oder Spitzenfarben kombiniert werden, um eine abschließende Farbe zu erhalten, oder kann unabhängig von den Vertex- bzw. Scheitelpunkt- oder Spitzenfarben für eine spätere Verwendung gespeichert werden. Wie bei der oben beschriebenen Ausführungsform verringert die Bestimmung und Verwendung der Beleuchtungskarte die Berechnungen, die von dem Wiedergabegerät ausgeführt werden müssen, wodurch die Wiedergabezeit verkürzt wird oder in der gleichen Zeit eine komplexere Szene wiedergegeben werden kann.
  • Die Bestimmung der abschließenden Farbwerte der Vertex- bzw. Scheitelpunkte oder Spitzen der Polygonnetzobjekte ist in 8 dargestellt. Im Einzelnen wird im Schritt 300 ein erster Vertex- bzw. Scheitelpunkt oder eine erste Spitze ausgewählt und im Schritt 304 werden die anfänglichen diffusen und Umgebungsfarben des Vertex- bzw. Scheitelpunktes oder der Spitze bestimmt und summiert. Der anfängliche diffuse Wert ist die diffuse Farbe, die für den Werkstoff definiert ist, aus dem das Objekt aufgebaut ist. In ähnlicher Weise ist die anfängliche Umgebungsfarbe das Produkt aus der Umgebungsfarbe für den Werkstoff und der Umgebungsfarbe der Szene. Im Schritt 306 wird der abschließende Farbwert auf den Umgebungsfarbwert initialisiert. Anschließend wird im Schritt 308 eine Lichtquelle in der Szene ausgewählt und im Schritt 312 wird die Lichtfarbe für die ausgewählte Lichtquelle an dem Vertex- bzw. Scheitelpunkt oder an der Spitze bestimmt, mit dem diffusen Farbwert des Werkstoffs multipliziert und zur abschließenden Farbe hinzuaddiert.
  • Im Schritt 316 wird festgestellt, ob irgendwelche Lichtquellen noch berücksichtigt werden müssen, und der Prozess kehrt zum Schritt 308 zurück, wenn weitere Lichtquellen, die für die Szene definiert sind, vorhanden sind, die noch nicht berücksichtigt wurden. Wenn alle Lichtquellen berücksichtigt wurden, geht der Prozess zum Schritt 320, in dem festgestellt wird, ob weitere Vertex- bzw. Scheitelpunkte oder Spitzen zur Verarbeitung verbleiben. Wenn ein oder mehrere Vertex- bzw. Scheitelpunkte oder Spitzen zur Verarbeitung verbleiben, kehrt der Prozess zum Schritt 300 zurück. Wenn alle Vertex- bzw. Scheitelpunkte oder Spitzen verarbeitet wurden, endet der Prozess im Schritt 324, in dem die abschließenden Farbwerte in geeigneter Weise gespeichert werden.
  • Die Speicherung der abschließenden Farbwerte kann in einer temporären Datei, in den Definitionen der Polygonnetze oder als die Definition eines neuen Werkstoffs, dem die Vertex- bzw. Scheitelpunkte oder Spitzen der Netzpolygone zugewiesen sein können, oder in einer weiteren geeigneten Weise erfolgen, die einem Fachmann erscheint.
  • Es ist offensichtlich, dass der Prozess von 8 ähnlich, jedoch einfacher als der Prozess der 7a und 7b ist, der für Oberflächen mit Textur- bzw. Strukturabbildungen verwendet wird. Wie bei dem Prozess der 7a und 7b kann diese Ausführungsform der vorliegenden Erfindung ferner außerdem in einfacher Weise modifiziert werden, um an Stelle von abschließenden Farbwerten eine Beleuchtungskarte zu erzeugen. Um eine Beleuchtungskarte zu erzeugen, wird im Einzelnen der anfängliche Umgebungsfarbwert im Schritt 304 auf null gesetzt und die Beleuchtungswerte, die mit der Gleichung 6 vom Anhang A berechnet werden, werden im Schritt 324 als eine Beleuchtungskarte gespeichert, die anschließend verwendet werden kann, um abschließende Farbwerte für Polygon-Vertex- bzw. Scheitelpunkte oder Spitzen unter Verwendung von Gleichung 7 vom Anhang A zu erzeugen.
  • Wie oben erwähnt wurde, wird in einer weiteren Ausführungsform der vorliegenden Erfindung an Stelle der Bestimmung der Beleuchtungsinformationen, indem lediglich der Beitrag von allen Lichtquellen auf den betrachteten Punkt, der von Interesse ist, berücksichtigt wird, eine Bewertung der aktiven Komponenten des gesamten Schatten- oder Farbtonbaumes für die Szene verwendet. Im Einzelnen werden die aktiven Komponenten des "Schatten- oder Farbtonbaumes" an einem Punkt, der von Interesse ist, bewertet, indem ein Strahl längs der Oberflächennormalen zu dem Punkt, der von Interesse ist, "abgefeuert" wird. Wie für einen Fachmann klar ist, kann der sich ergebende Beleuchtungswert wie bei der oben beschriebenen Ausführungsform die abschließende Farbe einschließlich die Farbe und/oder die Textur bzw. Struktur repräsentieren oder kann anschließend mit der Objektfarbe oder einer Textur bzw. Struktur kombiniert werden, um eine abschließende Farbe zu erhalten. Die Strahlverfolgung und die Bewertung von Schatten- oder Farbtonbäumen ist wohlbekannt und wird an dieser Stelle nicht näher erläutert.
  • Der Beleuchtungswert, der durch die vollständige Bewertung des Schatten- oder Farbtonbaumes bestimmt wird, enthält bei dem Wiedergabegerät "Mental ray" außerdem die Wirkungen von allen aktiven "Mental ray Schatten- bzw. Farbtonbildnern", die auf die Szene angewendet werden, um Werkstoff, Atmosphäre oder andere Wirkungen zu definieren. Die Bestimmung des Beleuchtungswertes durch die vollständige Bewertung der aktiven Komponenten eines Schatten- oder Farbtonbaumes ist der oben erläuterten Bewertung recht ähnlich, wobei die erforderliche Datenstruktur in 9 gezeigt ist und der Prozess in 10 dargestellt ist.
  • Wie bei der Ausführungsform, bei der lediglich der Beitrag der Lichtquellen berücksichtigt wird, die oben unter Bezugnahme auf 6 beschrieben wurde, zeigt 9 die Datenstruktur 400, die für jedes Texel in dem beschnittenen Bereich des Textur- bzw. Strukturbildes 40 erzeugt wird. Jede Datenstruktur 400 speichert einen Farbwert 404, der für das Texel im normierten RGB-Farbraum bestimmt wurde, die Anzahl 408 der Punkte, die für das Texel von Interesse sind, und einen Zeiger 412 zu einer verknüpften Liste 414 von Datenstrukturen 416, die Informationen für jeden dieser Punkte die von Interesse sind, speichern.
  • Wie gezeigt ist, enthält jede Datenstruktur 416 für einen Punkt, der von Interesse ist, eine Position 420, die das ermittelte Zentrum des Bereichs der Überschneidung zwischen dem entsprechenden Polygon und dem Texel im xyz-Koordinatenraum ist, und eine Oberflächennormale 424, die an der Position 424 im xyz-Raum bestimmt wurde und die Normale ist, längs der der Strahl bei der Strahlverfolgungsoperation "abgefeuert" wird. Außerdem enthält die Datenstruktur 416 ein Gewicht 428 und einen Zeiger 432 zu der nächsten Datenstruktur 416 in der verknüpften Liste 414.
  • Der Prozess zum Erzeugen der Beleuchtungskarte durch Bewerten der aktiven Komponenten des Schatten- oder Farbtonbaumes ist in den 10a und 10b gezeigt. Bei dieser Ausführungsform werden alle Texel in dem beschnittenen Bereich des Textur- bzw. Strukturbildes 40, für die eine Datenstruktur 416 erzeugt wurde, nacheinander betrachtet. Wie gezeigt ist, wird im Schritt 500 ein erstes Texel ausgewählt und im Schritt 505 werden die Werte der abschließenden Farbe und des Gewichts auf null initialisiert. Im Schritt 508 wird festgestellt, ob das Texel Punkte besitzt, die von Interesse sind und dafür definiert sind. Wenn keine Punkte vorhanden sind, die von Interesse sind, geht der Prozess zum Schritt 532, der nachfolgend beschrieben wird.
  • Wenn das betrachtete Texel einen oder mehrere Punkte besitzt, die von Interesse sind und dafür definiert wurden, wird der Prozess fortgesetzt, indem alle Punkte, die von Interesse sind, nacheinander betrachtet werden. Im Schritt 512 wird ein erster Punkt, der von Interesse ist, ausgewählt und das Gewicht, das dem Punkt zugeordnet ist, wird im Schritt 516 zu dem Wert des Gesamtgewichts hinzuaddiert. Im Schritt 520 wird die Farbe an dem Punkt, der von Interesse ist, durch Bewerten aller aktiven Komponenten des Schatten- oder Farbtonbaumes bestimmt und das Produkt aus der bestimmten Farbe und dem Gewicht wird zu dem Wert der abschließenden Farbe hinzuaddiert. Im Schritt 524 wird festgestellt, ob zusätzliche Punkte, die von Interesse sind, noch berücksichtigt werden müssen. Wenn derartige Punkte, die von Interesse sind, verbleiben, werden die Schritte 512 bis 524 für jeden Punkt, der von Interesse ist, wiederholt. Wenn alle Punkte, die von Interesse sind, berücksichtigt wurden, wird im Schritt 532 festgestellt, ob das Gesamtgewicht kleiner als 1,0 ist. Wenn diese Bedingung unwahr ist, wird der Prozess mit dem Schritt 542 fortgesetzt, wie nachfolgend beschrieben wird, und wenn diese Bedingung wahr ist, wird der Prozess mit dem Schritt 536 fortgesetzt, in dem festgestellt wird, ob die Gesamtzahl der Punkte, die für das Texel von Interesse sind, größer als null ist und ob ein Merker ANTIALIAS unwahr ist.
  • Der Merker ANTIALIAS ermöglicht einem Benutzer zu definieren, ob der Prozess den Beitrag der ursprünglichen diffusen Texelfarbe in dem abschließenden Wert enthalten sollte, und wird vor dem Beginn des Prozesses gesetzt. Es ist für einen Fachmann klar, dass ein derartiger Merker ANTIALIAS außerdem bei Bedarf bei der Ausführungsform der vorliegenden Erfindung, die oben unter Bezugnahme auf die 7a und 7b beschrieben wurde, verwendet werden kann. Das Verfahren zum Implementieren eines derartigen Merkmals ANTIALIAS ist im Wesentlichen identisch mit dem unmittelbar zuvor beschriebenen Verfahren und ist für einen Fachmann klar.
  • Wenn im Schritt 536 beide Bedingungen wahr sind, geht der Prozess zum Schritt 540, in dem die abschließende Farbe auf den abschließenden Farbwert, geteilt durch das Gesamtgewicht, gesetzt wird. Wenn eine der Bedingungen im Schritt 536 unwahr ist, geht der Prozess zum Schritt 548, in dem die abschließende Farbe auf die abschließende Farbe plus dem Produkt aus der diffusen Farbe des Texels und der Differenz zwischen 1,0 und dem ermittelten Gesamtgewicht gesetzt wird. In jedem Fall geht dann der Prozess zum Schritt 542, in dem festgestellt wird, ob zusätzliche Texel zur Betrachtung verbleiben. Wenn ein oder mehrere Texel noch zu betrachten sind, werden die Schritte 500 bis 548 für jedes verbleibende Texel wiederholt. Wenn alle Texel betrachtet wurden, endet der Prozess im Schritt 544.
  • Wie zuvor kann die Speicherung der abschließenden Farbwerte in einer temporären Datei, in den Definitionen der Polygonnetze oder als die Definition eines neuen Werkstoffs, dem Vertex- bzw. Scheitelpunkte oder Spitzen der Netzpolygone zu geordnet werden können, oder in irgendeiner weiteren geeigneten Weise ausgeführt werden, wie für einen Fachmann klar ist.
  • 11 zeigt die Modifikation an dem Prozess von 10, um eine Beleuchtungskarte aus Vertex- bzw. Scheitelpunkt- oder Spitzenfarben durch Strahlverfolgung für Objekte, die als Polygonnetz repräsentiert werden, zu bestimmen. Wie gezeigt ist, beginnt der Prozess im Schritt 600, wobei ein erster Vertex- bzw. Scheitelpunkt oder eine erste Spitze zur Betrachtung ausgewählt wird. Die abschließende Strahlverfolgungsfarbe wird im Schritt 608 bestimmt und der Prozess wiederholt die Schritte 600 bis 612, bis alle Vertex- bzw. Scheitelpunkte oder Spitzen verarbeitet wurden, woraufhin der Prozess im Schritt 616 endet.
  • Es wird angenommen, dass es unter bestimmten Umständen erwünscht sein kann, den Prozess der 7a und 7b mit dem Prozess von 10 zu kombinieren und dem Prozess vor der Bestimmung des Beleuchtungswertes eine Prüfung anzufügen, um festzustellen, ob für diese Bestimmung eine Bewertung der aktiven Komponenten des Schatten- oder Farbtonbaumes für die Szene auszuführen ist.
  • Es ist klar, dass die vorliegende Erfindung ein System und ein Verfahren zum Bestimmen einer Beleuchtungskarte und zum Verwenden von Beleuchtungskarten schafft, um die Berechnungen zu verringern, die von dem Wiedergabegerät für die Wiedergabe der Szene ausgeführt werden müssen, wodurch die Wiedergabezeit verkürzt wird. Die Beleuchtungskarte kann entweder mit Informationen des Textur- bzw. Strukturbildes oder der Werkstofffarbe kombiniert werden oder unabhängig von Informationen des Textur- bzw. Strukturbildes oder der Werkstofffarbe gespeichert und anschließend bei Bedarf damit kombiniert werden.
  • Die oben beschriebenen Ausführungsformen der Erfindung sollen Beispiele der vorliegenden Erfindung sein und Änderungen und Modifikationen können daran durch einen Fachmann ausgeführt werden, ohne vom Umfang der Erfindung, der lediglich durch die beigefügten Ansprüche definiert ist, abzuweichen.
  • ANHANG A
    • diffuse Farbe = ((1,0 – Mischungswert) × diffuse Farbe des Werkstoffs) + (Mischungswert × diffuser Faktor der Textur × Bildelementfarbe) (1) Umgebungsfarbe = (((1,0 – Mischungswert) × Umgebungsfarbe des Werkstoffs) + (Mischungswert × Umgebungsfaktor der Textur × Bildelementfarbe) × Umgebungsfarbe der Szene) (2)
      Figure 00250001
      abschließende Farbe = Beleuchtungswert × Bildelementfarbe[+ Umgebungsfarbe] (5)
      Figure 00250002
      abschließende Farbe = Umgebungsfarbe + Beleuchtungswert × diffuse Farbe (7)

Claims (20)

  1. Verfahren zur Herstellung einer Beleuchtungskarte zur Verwendung bei der Wiedergabe einer Szene, wobei die Szene aufweist, zumindest ein Objekt, das durch ein Netz von Polygonen dargestellt ist, wobei das Verfahren die Schritte des Identifizierens von Punkten aufweist, die für jeden Polygon von Interesse sind; wobei für jeden Punkt, der von Interesse ist, ein Beleuchtungswert bestimmt wird, und jeder Beleuchtungswert in der Beleuchtungskarte gespeichert wird.
  2. Verfahren nach Anspruch 1, wobei das Objekt nach seiner Textur bzw. Struktur zu kartographieren ist, das die Schritte aufweist: (i) ein Textur- bzw. Strukturbild wird ausgewählt, das zu dem Objekt zu kartographieren ist und das Textur- bzw. Strukturbild und das Netz von Polygonen werden in einem gemeinsamen bzw. allgemeinen Koordinatensystem dargestellt; (ii) der Ort von, die Fläche von und das Gewicht von der Überschneidung zwischen jedem Bildelement in der Textur- bzw. Strukturkarte und jedem Polygon in dem Polygonnetz wird bestimmt, wobei das Gewicht dem Verhältnis der Fläche der Überschneidung relativ zu der Gesamtfläche des Bildelements entspricht; (iii) für jede bestimmte Fläche der Überschneidung wird das Produkt der Beleuchtungsinformation an dem bestimmten Ort der Überschneidung und das Gewicht der Fläche der Überschneidung bestimmt; (iv) jedes Produkt, das im Schritt (iii) bestimmt worden ist, wird für jedes jeweilige Bildelement summiert, um einen Beleuchtungswert zu erhalten; (v) der Beleuchtungswert wird für jedes Bildelement gespeichert.
  3. Verfahren nach Anspruch 2, wobei die Beleuchtungsinformation im Schritt (iii) bestimmt wird durch: (a) sämtliche aktiven Komponenten werden innerhalb eines Schatten- bzw Farbtonbaumes für die Szene bewertet, oder (b) die Summe des Produktes des Beitrages von jeder Lichtquelle, die für die Szene an dem bestimmten Platz der Überschneidung definiert ist, wird bestimmt und im Schritt (iv) wird der Beleuchtungswert durch Summieren jeder besagten Summe von den Produkten erhalten.
  4. Verfahren nach Anspruch 3, wobei im Schritt (iii) das Produkt ferner mit einem diffusen Farbwert, der eine gewünschte Mischung der diffusen Farbe des Texel-Bildelements und der diffusen Farbe des Objekts bevor summiert wird, multipliziert wird, und im Schritt (iv) wird zu dem Beleuchtungswert das Produkt der Differenz zwischen den gesamten bestimmten Gewichten und der gesamten Fläche des Bildelementes und die diffuse Farbe und ein Umgebungsfarbfehler, der eine gewünschte Mischung der Umgebungsfarbe des Texel-Bildelements und der Umgebungsfarben des Objektes darstellt, hinzu addiert, und im Schritt (v) stellt der gespeicherte Beleuchtungswert eine abschließende Farbe dar.
  5. Verfahren nach Anspruch 4, wobei die gespeicherten Beleuchtungswerte gespeichert werden, indem Farbwerte in dem Textur- bzw. Strukturbild ersetzt werden.
  6. Verfahren nach Anspruch 3, wobei das ausgewählte Textur- bzw. Strukturbild geometrische Platzhalter ohne Farbinformation aufweist, und bei der Verwendung bzw. im Gebrauch die gespeicherten Beleuchtungswerte mit einem anderen ausgewählten Textur- bzw. Strukturbild kombiniert werden, welches Farbinformationen enthält, um abschließende Farbwerte zu erhalten.
  7. Verfahren nach Anspruch 1, das die Schritte aufweist: (i) zumindest ein Objekt wird ausgewählt; (ii) die Vertexe bzw. die Spitzen oder Scheitelpunkte und die Scheitelpunkts- bzw. Spitzennormalen werden für jedes Polygon in dem Netz von Polygonen für das Objekt bestimmt; (iii) für jeden Vertex bzw. Scheitelpunkt oder jede Spitze von jedem Polygon wird ein Beleuchtungswert bestimmt; (iv) der Beleuchtungswert wird für jeden Vertex, bzw. jeden Scheitelpunkt bzw. jede Spitze bestimmt.
  8. Verfahren nach Anspruch 7, wobei im Schritt (iii) der Beleuchtungswert bestimmt wird, indem für jedes helle Licht, das für die Szene an dem Vertex bzw. Scheitelpunkt bzw. der Spitze mit der entsprechenden Scheitelpunkt- bzw. Spitzennormalen definiert ist, bestimmt wird, und die bestimmten hellen Farben werden für jeden Vertex bzw. Scheitelpunkt bzw. jede Spitze summiert, um den Beleuchtungswert zu erhalten.
  9. Verfahren nach Anspruch 7, wobei im Schritt (iii) der Beleuchtungswert durch Bewerten der aktiven Komponenten eines Schatten- bzw. Farbtonbaumes für die Szene bestimmt wird.
  10. Verfahren nach Anspruch 8, wobei im Schritt (iii) der Beleuchtungswert einen abschließenden Farbwert aufweist, der gleich dem Produkt des erhaltenden Beleuchtungswertes und einer diffusen Farbe ist, die für das Objekt definiert ist, und/oder wobei der abschließende Farbwert ferner einen Umgebungsfarbwert aufweist, der für das Objekt definiert ist, welcher zu dem Produkt hinzugefügt wird.
  11. Verfahren nach Anspruch 7 oder 8, wobei die Beleuchtungswerte in der Definition des Netzes von Polygonen oder in der Definition der diffusen Farben für das Objekt gespeichert sind.
  12. Verfahren nach Anspruch 8, wobei eine abschließende Farbe für jeden Vertex bzw. Scheitelpunkt bzw. jede Spitze aufeinander folgend von dem Produkt des gespeicherten Beleuchtungswertes und einer diffusen Farbe, definiert für das Objekt, erhalten wird.
  13. Verfahren nach einem der voranstehenden Ansprüche, das den Schritt aufweist, das von einer Szenendefinition die Anzahl von Lichtquellen und der Ort von jeder Lichtquelle, definiert für die Szene, bestimmt wird.
  14. Verfahren nach Anspruch 13, wobei der Beleuchtungswert durch Bestimmen des Beitrags von jeder der bestimmten Lichtquellen, oder durch Bewerten der aktiven Komponenten eines Schattenbaumes für die Szene bestimmt wird.
  15. Verfahren nach Anspruch 14, wobei die Punkte, die von Interesse sind, zu den Überschneidungsflächen zwischen Bildelementen in einem Textur bzw. einem Strukturbild, das zu dem Objekt zu kartographieren ist, und Polygonen in dem schachbrettartigen Netz korrespondieren, und die Beiträge werden für jedes Bildelement in dem Textur- bzw. Strukturbild bestimmt und sind die gewichtete Summe für jedes Polygon, mit welchem sich das Bildelement überschneidet.
  16. Verfahren nach Anspruch 1, wobei die Punkte, die von Interesse sind, die Vertexe bzw. Scheitelpunkte bzw. Spitzen von Polygonen in dem Polygonnetz, oder die Überschneidungen zwischen Bildelementen in einem Textur- bzw. Strukturbild, das zu kartographieren ist, in Bezug auf zumindest ein Objekt und die Polygone in dem Polygonnetz aufweisen.
  17. Wiedergabegerät zur Erzeugung eines Bildes von einer Szenedefinition, wobei das Wiedergabegerät angepasst ist, um eine Beleuchtungskarte zu benutzen, die für die Szene durch ein Verfahren gemäß irgendeinem der voranstehenden Ansprüche erzeugt worden ist.
  18. System zur Wiedergabe von Bildern von einer Szene, die zumindest ein Objekt hat, das als ein Netz von Polygonen dargestellt wird, wobei das System aufweist, Mittel zum Bestimmen eines Beleuchtungswertes für jeden Punkt, der von Interesse ist, auf dem Polygonnetz; Mittel zum Bereitstellen der Beleuchtungswerte als eine Beleuchtungskarte für die Szene und ein Wiedergabegerät, das angepasst ist, um die Beleuchtungskarte zusammen mit einer Definition von der Szene zu empfangen und um die Beleuchtungskarte beim Wiedergeben eines Bildes von der Szene zu verwenden.
  19. System nach Anspruch 19, wobei die Punkte, die von Interesse sind, die Vertexe bzw. die Scheitelpunkte bzw. Spitzen von Polygonen in dem Polygonnetz oder die Überschneidungen zwischen Bildelementen in einem Textur- bzw. Strukturbild, das zu kartographieren ist, zu dem zumindest einem Objekt und die Polygone in dem Polygonnetz aufweisen.
  20. System nach Anspruch 19 oder Anspruch 20, wobei der Beleuchtungswert durch Bestimmen des Beitrages von jeder eine Anzahl von Lichtquellen in der Szenedefinition oder durch Bewerten der aktiven Komponenten eines Schatten- bzw. Farbtonbaumes für die Szene bestimmt wird.
DE1998631822 1997-01-31 1998-01-27 Verfahren und System zur Bestimmung und/oder Verwendung von Beleuchtungskarten in Herstellung von Bildern Expired - Fee Related DE69831822T2 (de)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US79259697A 1997-01-31 1997-01-31
US792596 1997-01-31
US90519897A 1997-08-01 1997-08-01
US905198 1997-08-01
US946053 1997-10-07
US08/946,053 US6226005B1 (en) 1997-01-31 1997-10-07 Method and system for determining and/or using illumination maps in rendering images

Publications (2)

Publication Number Publication Date
DE69831822D1 DE69831822D1 (de) 2005-11-17
DE69831822T2 true DE69831822T2 (de) 2006-07-13

Family

ID=27419898

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1998631822 Expired - Fee Related DE69831822T2 (de) 1997-01-31 1998-01-27 Verfahren und System zur Bestimmung und/oder Verwendung von Beleuchtungskarten in Herstellung von Bildern

Country Status (4)

Country Link
EP (1) EP0856815B1 (de)
JP (1) JP4111577B2 (de)
CA (1) CA2227502C (de)
DE (1) DE69831822T2 (de)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6226005B1 (en) 1997-01-31 2001-05-01 LAFERRIèRE ALAIN M Method and system for determining and/or using illumination maps in rendering images
US6377274B1 (en) * 1999-07-15 2002-04-23 Intel Corporation S-buffer anti-aliasing method
GB2371460B (en) * 2001-01-19 2004-12-22 Pixelfusion Ltd Computer graphics
CN102636827B (zh) * 2012-04-20 2014-08-06 杭州星华反光材料有限公司 抗破坏反光布的制作方法
US9905046B2 (en) * 2014-04-03 2018-02-27 Intel Corporation Mapping multi-rate shading to monolithic programs
KR20170034727A (ko) 2015-09-21 2017-03-29 삼성전자주식회사 그림자 정보 저장 방법 및 장치, 3d 렌더링 방법 및 장치
CN113144611B (zh) * 2021-03-16 2024-05-28 网易(杭州)网络有限公司 场景渲染方法及装置、计算机存储介质、电子设备
CN113628313A (zh) * 2021-08-23 2021-11-09 广东三维家信息科技有限公司 装修效果图生成方法、装置、电子设备及存储介质
CN113658316B (zh) * 2021-10-18 2022-03-08 北京市商汤科技开发有限公司 三维模型的渲染方法和装置、存储介质及计算机设备
CN114022607B (zh) * 2021-11-19 2023-05-26 腾讯科技(深圳)有限公司 一种数据处理方法、装置以及可读存储介质
JPWO2023089777A1 (de) * 2021-11-19 2023-05-25
CN115830208B (zh) * 2023-01-09 2023-05-09 腾讯科技(深圳)有限公司 全局光照渲染方法、装置、计算机设备和存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5173948A (en) * 1991-03-29 1992-12-22 The Grass Valley Group, Inc. Video image mapping system
US5852446A (en) * 1995-06-30 1998-12-22 Matsushita Electric Industrial Co., Ltd. Rendering apparatus and rendering method, and mapping apparatus and mapping method

Also Published As

Publication number Publication date
CA2227502C (en) 2006-06-13
EP0856815B1 (de) 2005-10-12
CA2227502A1 (en) 1998-07-31
EP0856815A3 (de) 1999-01-07
EP0856815A2 (de) 1998-08-05
JP4111577B2 (ja) 2008-07-02
DE69831822D1 (de) 2005-11-17
JPH113436A (ja) 1999-01-06

Similar Documents

Publication Publication Date Title
DE112007002991B4 (de) Computergraphikschattenvolumen unter Verwendung von hierarchischem Okklusions-Culling
DE69329049T2 (de) Methode zur Verarbeitung von Daten, die dreidimensionale graphische Objekte repräsentieren
DE69126611T2 (de) Bilderzeugungsgerät
DE69919145T2 (de) Stochastiches detailniveau in einer rechneranimation
DE68928941T2 (de) Bilderzeugungsgerät
DE69924700T2 (de) Verfahren zur Darstellung von durch Oberflächenelemente repräsentierten grafischen Objekten
US6226005B1 (en) Method and system for determining and/or using illumination maps in rendering images
DE69934289T2 (de) Bild-prozessor, spiele-maschine, bild-verarbeitungs-verfahren, und aufnahme-medium
DE3620508C2 (de) Verfahren und Vorrichtung zum Erzeugen eines elektronischen Videobildsignals
DE69328464T2 (de) Methode zur Berechnung der Beleuchtung für Daten dreidimensionaler Objekte
DE3650129T2 (de) Verfahren zur Kantenglättung für Rechnerbilderzeugungssystem.
DE60120474T2 (de) Rasterung von dreidimensionalen bildern
DE60107130T2 (de) Sichtbarkeitsprojektion und Bildrekonstruktion für Oberflächenelemente
DE69534751T2 (de) Bilddatenerzeugungsverfahren, Bilddatenverarbeitungsvorrichtung und Aufzeichnungsmedium
DE69130545T2 (de) System zur Erzeugung einer texturierten Perspektivsicht
DE69924699T2 (de) Verfahren zur Schaffung von als Oberflächenelemente dargestellten grafischen Objekten
DE69127516T2 (de) Verfahren und Gerät zur Bilderzeugung
DE69831822T2 (de) Verfahren und System zur Bestimmung und/oder Verwendung von Beleuchtungskarten in Herstellung von Bildern
DE69331486T2 (de) Bilddatenverarbeitung
DE69722139T2 (de) Dreidimensionale abbildung von bildtexturen
DE69123739T2 (de) Bildgenerator
DE69531536T2 (de) Synthetisches bilderzeugungsverfahren mit sphärischem puffer
DE69924230T2 (de) Verfahren zur Modellierung von durch Oberflächenelemente dargestellten grafischen Objekten
EP0862141A2 (de) Bilddarstellungsverfahren und Vorrichtung zur Durchführung des Verfahrens
DE69606177T2 (de) Verfahren und gerät zur texturabbildung

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee