DE69632578T2 - Computer-grafiksystem zum schaffen und verbessern von texturabbildungssystemen - Google Patents

Computer-grafiksystem zum schaffen und verbessern von texturabbildungssystemen Download PDF

Info

Publication number
DE69632578T2
DE69632578T2 DE69632578T DE69632578T DE69632578T2 DE 69632578 T2 DE69632578 T2 DE 69632578T2 DE 69632578 T DE69632578 T DE 69632578T DE 69632578 T DE69632578 T DE 69632578T DE 69632578 T2 DE69632578 T2 DE 69632578T2
Authority
DE
Germany
Prior art keywords
data
dimensional object
view
perspective
texture
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 - Lifetime
Application number
DE69632578T
Other languages
English (en)
Other versions
DE69632578D1 (de
Inventor
F. David DEBRY
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.)
PTC Inc
Original Assignee
Parametric Technology Corp
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 Parametric Technology Corp filed Critical Parametric Technology Corp
Publication of DE69632578D1 publication Critical patent/DE69632578D1/de
Application granted granted Critical
Publication of DE69632578T2 publication Critical patent/DE69632578T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping

Description

  • Hintergrund und Zusammenfassung der Erfindung
  • Im allgemeinen beinhalten Computer-Grafiksysteme die Darstellung von Daten auf dem Schirm einer Kathodenstrahlröhre (CRT), um dynamische Bilder zu erreichen. Typischerweise bestehen die Anzeigen aus einem rechteckigen Feld aus Tausenden von einzelnen Bildelementen (Bildpunkte oder Pels). Jeder Bildpunkt im Feld stellt verarbeitete Bildpunktdaten dar, z. B. Daten, welche Farbe, Helligkeit und Tiefe darstellen.
  • Bildpunktdaten können der CRT von einem sogenannten "Bildspeicher" zugeführt werden, der in der Lage ist, Daten mit hoher Geschwindigkeit zu senden oder zu empfangen. Verschiedene Arten der Organisation und Abtastung von Bildspeichern zur bildpunktweisen Ansteuerung von Anzeigen sind veröffentlicht in einem Lehrbuch mit dem Titel "Computer Graphics: Principles And Practice", Second Edition, Foley, Van Dam, Feiner & Hughes, herausgegeben 1990 durch Addison-Wesley Publishing Company.
  • Um nacheinander Bildpunkte "darzustellen" oder zu "schreiben", indem man den Bildschirm der CRT anregt, werden häufig Rastermuster sowohl beim Fernsehen als auch im Bereich der Computergraphik genutzt. Rastermuster-Abläufe können analog zum Muster der westlichen Lesemethode verstanden werden, d. h. Bildpunkte werden wie Wörter einer nach dem anderen, von links nach rechts und Zeile für Zeile von oben nach unten abgetastet. Somit zeichnet der Strahl der CRT ein Rastermuster Bildpunkt für Bildpunkt, Zeile für Zeile, Bild für Bild, um eine dynamische Darstellung zu erreichen. Systeme für solche Darstellungen sind ausführlich im oben erwähnten Foley-Lehrbuch beschrieben.
  • Im allgemeinen werden, um eine dynamische Graphikanzeige zu unterstützen, dreidimensionale Geometriedaten, die Objekte oder Primitive (z. B. Vielecke und Dreiecke) repräsentieren, in einem Hauptspeicher, z. B. in der Form einer Platte, gespeichert. Die Geometriedaten (dreidimensional oder 3D) werden verarbeitet, um ausgewählte Daten zur Verfügung zu stellen, die dann in zweidimensionale (2D) Anzeigedaten umgewandelt werden, welche jeden einzelnen Bildpunkt festlegen. Somit werden graphische Bilder aus einfachen Formen (typischerweise Dreiecke), die Objekte definieren, erzeugt.
  • Um Bildpunkte für die Anzeige zu erzeugen, werden die ausgewählten Primitive unter Berücksichtigung eines bestimmten Blickwinkels bearbeitet und werden in einem Prozess, der "Rasterung" genannt wird, zerlegt, um ihren Beitrag zum jeweiligen Bildpunkt zu bestimmen. Während die Primitive verarbeitet werden, wird die Dominanz zwischen sich überdeckenden Objekten aufgelöst. Z. B. kann ein dominantes Objekt die Oberfläche eines verdeckten Objekts verbergen. Somit werden die Primitive einzeln in Bezug auf die kumulative Bestimmung der im Bildspeicher gespeicherten Bildpunkte berücksichtigt, bis alle Objekte berücksichtigt wurden. Gleichzeitig mit der Verarbeitung der Primitive können Texturen, wie aus einem Texturspeicher, z. B. einem Speicher, der eine Textur enthält, in den Bildpunkten berücksichtigt werden.
  • Betrachtet man den Graphikablauf etwas genauer, so werden die Primitive typischerweise im dreidimensionalen "Modell"- oder "Welt"-Raum, der durch ein Koordinatensystem definiert ist, gespeichert. Der Weltraum wird zusammen mit geometrischen Transformationen im oben erwähnten Foley-Lehrbuch in Kapitel 5 behandelt. Eine solche Transformation beinhaltet Normierung, so dass ein Bildraum in einen kanonischen Bildraum übergeführt wird. Transformierte Primitive werden auf den kanonischen Bildraum zugeschnitten und dann weiter in den zweidimensionalen Bildschirmraum zur Darstellung transformiert. Im allgemeinen werden diese ersten Arbeitsschritte in einem geometrischen Untersystem, das häufig als "Frontend" des graphischen Anzeigesystems bezeichnet wird, durchgeführt. D. h., das Frontend-Untersystem durchläuft das Anzeigemodell und überträgt die Primitive in den Bildschirmraum. Strukturen und Verfahren eines solchen Untersystems werden im oben erwähnten Foley-Lehrbuch in Kapitel 18 diskutiert. Mit den Daten aus dem Frontend-System fortfahrend erzeugt ein sogenanntes "Backend"-Untersystem das endgültige Bild, indem es jedes Primitive rastert, bestimmt, welches Primitive beim jeweiligen Bildpunkt sichtbar ist und die ausgewählten Bildpunkte entsprechend einfärbt. Solche Verfahren werden im oben erwähnten Foley-Lehrbuch in Kapitel 18 diskutiert. Das Dokument Pearson D.: "Texture mapping in model-based image coding" Signal Processing. Image Communication, Vol. 2, No. 4, 1. Dezember 1990, Seite 377–395, legt eine Methode offen, mit der die Struktur vom Bild eines Ojbekts gespeichert wird und anschließend auf die Oberfläche eines Computermodells dessel ben Objekts abgebildet wird.
  • Da Objekte aus Vielecken gebildet werden, können Objekte in eine größere Anzahl Vielecke, z. B. Dreiecke, aufgeteilt werden, um einen höheren Detailreichtum in Computergraphikbildern zu erreichen. Indes haben die praktischen Einschränkungen solcher Aufteilungen die Entwicklung eines anderen Zugangs, bekannt als "Texturierung", veranlasst. Im wesentlichen steht eine Textur, bestehend aus einzelnen Elementen, genannt "Texel" (von Textur-Pixel), in einem zweidimensionalen Raum zur Verfügung, der im allgemeinen durch rechtwinkligen Koordinaten "u" und "v" bestimmt ist. Im Wesentlichen wird ein Primitives, wenn man die Textur darauf abbildet, strukturiert, wie z. B. mit dem Muster von Ziegeln oder sogar einem Bild. Eine ausführliche Abhandlung über Texturen und ihre Abbildung gibt es im oben erwähnten Foley-Lehrbuch in Kapitel 16.
  • Obwohl Texturierungstechniken inzwischen weit verbreitet zum Einsatz kommen, birgt die Erzeugung von Texturen, die sich auf dreidimensionale (3D-)Objekte beziehen, verschiedene Probleme. Man beachte, dass, wie oben dargestellt, das Objekt oder Modell für ein Bild im Weltraum existiert und dreidimensional ist, während die Textur, die auf das Modell aufgebracht werden soll, im zweidimensionalen Texturraum existiert. Man betrachte einige Techniken, die in der Vergangenheit eingesetzt wurden, um die Textur für eine gewünschte Darstellung zu erhalten.
  • In Übereinstimmung mit einem früheren Verfahren ist es üblich, dass ein 3D-Modell von einer Person und ein 2D-Bild des zu modellierenden Objekts von einer anderen Person geschaffen wird. Einer dritten Person wird die Aufgabe zugeteilt, das 2D-Bild so zu verändern, dass es zu dem 3D-Modell passt, oder umgekehrt. Da die beiden, Objekt und Bild, getrennt geschaffen wurden, ist diese Aufgabe typischerweise schwierig und zeitaufwändig mit schlechtem Ergebnis. Dieses Verfahren kann als Analogon dazu gesehen werden, die Fotographie des Gesichts einer Person so zu strecken, dass sie korrekt auf den Kopf einer Schaufensterpuppe passt.
  • In einem anderen Ansatz wird das 3D-Modell als Graphik erstellt und dargestellt. Die 2D-Textur wird ebenfalls dargestellt.
  • In einem interaktiven Verfahren modifiziert ein Benutzer die 2D-Textur und betrachtet dann die Ergebnisse, wenn diese auf das Modell aufgebracht wird. Diese Vorgehensweise ist analog dazu, eine Orange zu schälen, die Schale flach hinzulegen und dann eine Karte der Erde so darauf zu malen, dass diese richtig dargestellt wird, wenn die Schale wieder auf die Orange gelegt wird. Die Beschränkung besteht darin, dass Farbe nur auf die Schale aufgebracht werden kann, wenn diese flach liegt. Wiederum ist das Verfahren umständlich und zeitaufwändig.
  • Nach einem weiteren Ansatz wird ein 3D-Modell erzeugt und dargestellt. Die Orientierung des Modells unter Berücksichtigung eines bestimmten Blickwinkels wird genutzt, um es vom 3D-Modellraum in den 2D-Texturraum abzubilden. Farbe, Transparenz und andere Daten werden direkt auf die ausgewählte Ansicht des 3D-Modells aufgebracht. Die Daten werden dann über die Abbildung in die Textur umgewandelt. Das Problem bei diesem Verfahren ist, dass es blickwinkelabhängig ist. D. h., sobald das Modell skaliert, gedreht, verschoben oder anderweitig bewegt wird, sind die Daten in der Textur nutzlos. Die Abbildung vom 3D-Modellraum auf den 2D-Texturraum existiert nur für eine Orientierung. Außerdem beschädigt dieses Verfahren, wenn eine dauerhafte Abbildung bereits definiert wurde (eine von der Orientierung unabhängige Abbildung), die vorige Abbildung. Das physische Analogon wäre die Orange, die ihre Farbe verliert, wenn sie bewegt wird. Insbesondere würde, wenn der Umriss der Kontinente auf der Orangenschale als vorläufige Struktur definiert wäre, dieser Umriss in der Textur bei Bewegung zerstört.
  • Natürlich wurden auch andere Verfahren vorgeschlagen, die auch Hybriden der oben beschriebenen Verfahren beinhalten. Z. B. wurde vorgeschlagen, ein Modell aus "Mikro-Polygon" zu verwenden, wobei jeder Vertex eines jeden Mikro-Polygons die Texturdaten speichert. Als Folge daraus ist das Problem der Blickwinkelabhängigkeit gelöst; jedoch beeinträchtigt diese Methode die Geräteleistung. Man beachte, dass die Daten eigentlich nicht als Texturdaten gespeichert werden, sondern als Vieleck-Vertex-Daten. Demnach kann der Detailreichtum eines Modells nicht durch eine einfache Vergrößerung der Textur erhöht werden. Das System kann auch Einschränkungen bei der Behandlung komplizierter Modelle haben.
  • Grundsätzlich ist das System der vorliegenden Erfindung dafür vorgesehen, die Probleme von früheren, oben erwähnten Systemen zu lösen. Die Erfindung ist im Verfahrensanspruch 1 und im Systemanspruch 9 dargelegt. Insbesondere, wie unten ausführlich dargelegt, können Daten direkt auf dem Modell angeordnet werden, so dass die Anpassung korrekt durchgeführt werden kann. Ebenso wird, wie unten offengelegt, das Aufbringen neuer Daten auf die Textur existierende Abbildungen zwischen Modell und Texturraum nicht zerstören. Statt dessen werden die neuen oder frischen Daten entsprechend der existierenden Abbildungen zwischen Modell- und Texturraum auf die Textur aufgebracht. Des weiteren ist die Abtastungsauflösung der Daten nicht durch die geometri sche oder durch Vielecke bestimmte Auflösung eines Modells bestimmt, sondern durch die Auflösung des Texturraums, der unabhängig von der Modellauflösung skaliert werden kann.
  • Gemäß der vorliegenden Ausführungsform setzt das System Geometriedaten für ein 3D-Modell, z. B. einen Würfel, einen animierten Kopf oder einen Erdball, zusammen mit einer festgelegten Abbildung in den 2D-Texturraum, z. B. in uv-Koordinaten, voraus. Wie offengelegt, nutzt das System die Geometriedaten, um eine Darstellung des 3D-Modells zur Verfügung zu stellen. Danach werden ergänzende Daten, wie z. B. die Farbe des Modells, zur Verfügung gestellt. Neue ergänzende Daten werden dann zur Verfügung gestellt, z. B. indem man mit einem "Pinsel" Farbe direkt auf das dargestellte Modell aufbringt. Zu beachten ist, dass die neuen ergänzenden Daten in der Form von Texturdaten von einer Vielzahl an Quellen, außer von einem Pinsel, z. B. von einer Bildverarbeitung oder einem Datenmanipulationssystem zur Verfügung gestellt werden können. Ebenso ist zu beachten, dass die ergänzenden Daten und die neuen ergänzenden Daten nicht nur Strukturen sein können, sondern jede Art von Phänomen oder Information. Insbesondere können die ergänzenden Daten Strukturen oder sichtbare Daten (Farbe, Transparenz usw.), Transformations- oder Deformationssysteme für 3D-Daten (wie z. B. bump maps und displacement maps) oder Transformations- oder Deformationssysteme für 2D-Daten (wie z. B. Systemkerne zur Bildverarbeitung) sein; ebenso ist der Gebrauch von NURBs (nicht gleichförmige rationale B-Splines) zu beachten, wie er auf Seite 502 des Foley-Lehrbuchs, auf das verwiesen wurde, behandelt wird.
  • Verfolgt man das anschauliche Beispiel des Farbauftrags oder der Farbdaten auf dem Modell, so ist es offensichtlich, dass bestimmte ausgewählte Bildpunkte der Anzeige betroffen sind. Dementsprechend werden die Farbdaten von jedem dieser Bildpunkte in einem sogenannten "versteckten Bildschirm"-Raum abgespeichert. Nachdem die Farben abgespeichert wurden, sucht sich das System die maßgeblichen Vielecke, z. B. vorne liegende, die von den Bildpunkten berührt werden, aus. Mit Hilfe von Transformationen werden die maßgeblichen Vielecke schließlich als Texel im Texturraum ausfindig gemacht. In der vorliegenden Ausführungsform werden die Texel, um sie in die Textur hinein zu mischen, gerastert. Insbesondere werden die Texel, wie unten ausführlich beschrieben wird, auf die Geometriedaten zurückgeführt, um für das Vieleck in Verarbeitung Bildpunkte im Bildschirmraum anzugeben. Ist ein Bildpunkt sichtbar (basierend auf dem Inhalt des Bildspeichers), werden die neuen Daten ("Farbauftrag") in den Bildspeicher-Inhalt hinein gemischt. Danach kann die Abbildung effektiv angewandt werden, um zu strukturieren oder irgendwie anders Primitive, die verschieden angeordnet und aus verschiedenen Blickwinkeln betrachtet werden, zu behandeln.
  • Kurzbeschreibung der Zeichnungen
  • In den Zeichnungen, die einen Teil dieser Beschreibung bilden, sind beispielhafte Ausführungsformen der Erfindung dargestellt. Dabei zeigt:
  • 1 ein Blockdiagramm und eine Illustration eines Systems, das gemäß der vorliegenden Erfindung aufgebaut ist;
  • 2 eine schematische Darstellung einer Textur, wie sie mittels des Systems der 1 entwickelt wurde;
  • 3 ein Blockdiagramm, das eine andere Darstellung des Systems der 1 zeigt, wobei Speicher und Verarbeitungsstrukturen detailliert dargestellt sind;
  • 4 ein Flussdiagramm, das einen Arbeitsprozess für das System von 1 und 3 erläutert;
  • 5 ein Diagramm, das einen Ablauf des Systems von 1 und 3 erläutert;
  • 6 ein Blockdiagramm einer Komponente eines Teils des Systems, wie es in 3 erläutert wird; und
  • Beschreibung der bevorzugten Ausführungsform
  • Wie oben angegeben, wird hierin ausführlich eine veranschaulichende Ausführungsform der vorliegenden Erfindung offengelegt. Dennoch können Bildanzeigen, Datenprozessoren, kreative Formate, Ausgestaltungen der Anzeige oder Bilddaten, Speicherungs- und Transformationsmethoden, ebenso wie andere Elemente, die gemäß der vorliegenden Erfindung genutzt werden, auf vielerlei Art verwirklicht werden, wobei einige dieser Arten durchaus anders als das vorliegende Ausführungsbeispiel sein können. Folglich sind die hier offengelegten spezifischen Strukturen und funktionalen Details lediglich dargestellt; dennoch werden sie insofern als beste Ausführungsform zum Zwecke der Offenlegung angesehen und stellen eine Basis für die Ansprüche dar, welche den Geltungsbereich der vorliegenden Erfindung definieren.
  • Zunächst wird unter Bezug auf 1 ein Erdball G auf einer graphischen Anzeige dargestellt. Wie ausführlich unten dargestellt, bezieht die Darstellung des Erdballs G 3D-Geometriedaten, die eine Kugel definieren, und zweidimensionale Strukturdaten, die die Landmassen L umreisen, mit ein. Ebenso können, wie unten ausführlich beschrieben wird, die Strukturdaten in der Form einer zweidimensionalen Textur M, ähnlich wie in 2 veranschaulicht, gespeichert werden.
  • Um einleitend die Funktion des dargestellten Ausführungsbeispiels zu betrachten, soll angenommen werden, dass das Bedürfnis besteht, auf dem Erdball G zu "malen" oder ihn zu kolorieren. Um diesen Arbeitsvorgang zum Zwecke der Beschreibung zu vereinfachen, soll in einem ersten Schritt angenommen werden, dass einfach ein neuer blauer Punkt SL im Westen der Vereinigten Staaten platziert werden soll, der z. B. Salt Lake City bezeichnet. Verschiedene Verfahren, einschließlich Malen mit einem Pinsel, sind gut bekannt, um den Punkt SL auf dem Erdball aufzubringen. In Übereinstimmung damit werden die Daten, sobald der Punkt SL auf dem Erdball aufgebracht ist, verarbeitet und der Punkt SL, entsprechend der Geometriedaten des Erdballs G skaliert, zur Textur M hinzugefügt. Entsprechend kann der Punkt SL dann auf dem Erdball G aus verschiedenen Blickwinkeln und in verschiedenen Positionen dargestellt werden.
  • Das Verfahren zur Datenverarbeitung ist, wie unten offen gelegt wird, umfangreich und würde typischerweise wesentlich mehr Daten als nur den Punkt SL beinhalten. Z. B. könnte es wünschenswert sein, den Erdball im Bereich der Meere blau "anzumalen", die einzelnen Staaten der Landmassen L mit unterschiedlichen Farben zu versehen und alle größeren Städte durch Punkte zu kennzeichnen. Solche Arbeitsabläufe beinhalten nur Erweiterungen des unten beschriebenen, vereinfachten Arbeitsablaufs, um den Punkt SL in die Textur M aufzunehmen (2).
  • Der Verarbeitungsablauf und die Strukturen, um ausgehend vom Punkt SL auf dem Erdball den Punkt SL in der Textur M zu erhalten, werden unten ausführlich behandelt. Dennoch soll zunächst der Aufbau des Graphiksystems von 1 betrachtet werden. Ein Datenträger mit Geometriedaten 10 (1, oben links) speichert echte 3D-Geometriedaten für Anzeigen. Um die Datenwege zu kennzeichnen, ist die Platte 10 mit einem Geometrieprozessor 12 verbunden, der als Computergraphik-Frontend (Nutzerseitiger Zwischenrechner) vorgesehen ist. D. h., dass der Geometrieprozessor 12 ausgewählte Primitive, z. B. Dreiecke oder NURBs, die auf der Platte 10 gespeichert sind, in den Bildschirmraum transformiert, um die Daten auf einer Anzeige darzustellen. Frontend-Graphikprozessoren zur Benutzung hierin sind gut bekannt und werden in Kapitel 18 des oben erwähnten Foley-Lehrbuchs behandelt. Hinsichtlich der Anzeige des Erdballs G, bearbeitet der Geometrieprozessor 12 diejenigen Daten, die die Kugel G definieren.
  • Diejenigen Daten, welche eine Kugel darstellen, werden vom Geometrieprozessor 12 an einen Rendering-Prozessor 14 weitergegeben, der als Backend- oder Rasterungsprozessor zur Ausgabe der Bilder in einen Bildspeicher 16, indem er die Primitive, die die Kugel darstellen, rastert, betrachtet werden kann. Der Vorgang beinhaltet, festzustellen, welche Primitive zu jedem Bildpunkt beitragen, dann die Bildpunkte entsprechend zu schattieren und zu texturieren. Zur Texturierung ist der Rendering-Prozessor 14 mit einem Texturspeicher 18 verbunden, der Texturen, wie z. B. die Karte M von 2 ohne den Punkt SL (neue Daten), enthält. Wie oben angedeutet, sind geeignete Variationen des Rendering-Prozessors 14 und des Texturspeichers 18 aus dem Stand der Technik bekannt, wie im erwähnten Foley-Lehrbuch offengelegt.
  • Die vom Rendering-Prozessor 14 an den Bildspeicher 16 weitergegebenen Bildpunktdaten bauen ein Abbild des Bil des auf und steuern dementsprechend eine Anzeigeeinheit 20 an, die den Erdball G bildlich darstellt. Wie oben angedeutet, ist das System gemäß der Programmierung oder der Bedienelemente, in der Lage, den Erdball G verschiedenartig zu bewegen und dabei die Darstellung zu ergänzen und den Blickwinkel des Erdballs G zu verändern. Solche Methoden sind gut bekannt; jedoch ist das System demgemäß in der Lage, den Erdball G zusammen mit dem Punkt SL (neue ergänzende Daten) zu texturieren und diese Textur in den Texturspeicher 18 einzubringen, wobei die Umrisse der Landmassen L (alte oder existierende ergänzende Daten) zusammen mit dem Punkt SL erhalten bleiben. Vorweg werden nun einige Erläuterungen, die die Verarbeitung betreffen, um eine Bilddarstellung durch die Einheit 20 zu erhalten, als angebracht erachtet.
  • Wie oben angedeutet, entstehen die Einzelbildpunkte im Bildspeicher 16, indem zahlreiche Dreiecke (Vielecke oder andere 3D-Primitive) darauf getestet werden, ob sie in der Anzeige erscheinen und zum Bildpunkt beitragen. Die endgültige Darstellung eines jeden Bildpunktes entsteht im Bildspeicher 16, basierend auf allen möglichen behandelten Dreiecken. Im allgemeinen werden die Dreiecke von den Datenträgern 10 mit Geometriedaten bezogen, im dreidimensionalen Modellraum vom Geometrieprozessor 12 vorprozessiert und dem Rendering-Prozessor 14 vorgelegt. Dominierende Oberflächen der Dreiecke werden dann durch den Rendering-Prozessor 14 in den 2D-Bildschirmraumraster konvertiert, um den Bildspeicher 16 zu laden. Bei diesem Arbeitsablauf, der Methoden nutzt, die aus dem Stand der Technik bekannt sind, wird die Textur M (2), die die Landmassen L skizziert, aufgebracht. Dementsprechend steuert der Bildspeicher 16 die Anzeigeeinheit 20 an, um das Bild des Erdballs G ohne den Punkt SL darzustellen.
  • Wie oben erwähnt existieren verschiedene Vorrichtungen, um Farben wie den Punkt SL auf dem Erdball G aufzubringen. Insbesondere ist solch einer Vorrichtung eine Texturdatenquelle 22 zugeordnet und kann auch einen Pinsel beinhalten, wie es in einer anhängigen US-Patentanmeldung mit dem Titel "Real Time Image Generation System For Simulating Physical Paint, Drawing Media, and Feature Modelling With 3D Graphics" unter der Anmeldenummer 08/195,112 offengelegt wird.
  • Verfolgt man das obige Beispiel weiter, so kann die Texturdatenquelle 22 verwendet werden, um den blauen Punkt SL mit Hilfe des Prozessors 14 dem Bildspeicher 16 zuzuführen. Die aufgetragene Farbe (der blaue Punkt SL) wird separat in einem versteckten Bildschirmspeicher 24 gespeichert. Insbesondere wird die aufgetragene Rohfarbe im versteckten Bildschirmspeicher 24 für genau bezeichnete Bildpunkte des Bildspeicherbereichs, der den blauen Punkt SL trägt, angegeben. Dabei ist zu beachten, dass ein "versteckter" Bildschirmspeicher nicht notwendig ist, wenn die Daten anderweitig vorliegen.
  • Ist der Punkt SL im versteckten Bildschirmspeicher 24 gespeichert, im Bildspeicher 16 abgebildet und auf dem Erdball G dargestellt, so fährt das System fort, den Punkt SL der Textur M hinzuzumischen (2). Dieser Arbeitsablauf wird zuerst etwas allgemein beschrieben, dann aber mehr im Detail, wobei Bezug auf die verschiedenen betroffenen Koordinatensysteme genommen wird (3). Zuerst schließt der Arbeitsablauf die Verarbeitung von Vielecken oder anderen Primitiven ein.
  • Vielecke von dem Datenträger 10 werden nacheinander behandelt. D. h.: alle Vielecke, die zum Bild des Erdballs G beitragen, werden auf Bedeutung für den Punkt SL unter sucht. Insbesondere werden die Vielecke darauf untersucht, ob sie im Bild des Erdballs G im Vordergrund liegen. Relevante Vielecke werden dann vom 3D-Modellraum in den 2D-Bildschirmraum projiziert und darauf überprüft, ob sie in der Nähe des Punktes SL liegen. Vielecke in der Nähe des Punktes SL (durch Vertices bestimmt) werden in den Texturraum projiziert (Texturspeicher 18), um die für den Punkt SL wichtigen Texel zu bestimmen. Die relevanten Texel werden dann gerastert und der Inhalt der entsprechenden Texel mit den Farbdaten des blauen Punktes SL gemischt. Die gemischten Daten werden dann in der Textur M (2) abgespeichert, was eine effektive und vielfach nutzbare Beigabe zur Textur ergibt.
  • Wie unten ausführlich beschrieben, werden die Abläufe zwischen den Speichereinheiten (10, 16, 18 und 24) von den Prozessoren (12, 14 und 26) zusammenwirkend durchgeführt. Um die Strukturen und den Prozessablauf ausführlicher zu verfolgen, wird nun Bezug auf 3 genommen, die die Prozessoren in Bezug auf die Räume der Speichereinheiten darstellt.
  • In 3 stellen Würfel und Blöcke den Speicher für die verschiedenen Raumkoordinaten dar. Insbesondere stellt ein Texturspeicherblock 30 einen 2D-Raum für Texturen zur Verfügung. Ein Modellspeicherwürfel 32 stellt einen 3D-Speicher für Geometriedaten zur Verfügung. Ein Speicherwürfel für den normierten Raum 34 stellt einen 3D-Raum für normierte Geometriedaten zur Verfügung, und ein Bildschirmraum-Speicherblock 36 (Bildspeicher) stellt einen 2D-Speicher für die Darstellung oder Schirmdaten zur Verfügung. Zusätzlich stellt ein versteckter Bildschirmspeicherblock 38 eine zweidimensionale Ablage für die aufgetragene Farbe zur Verfügung. Dieses Verfahren funktioniert auch mit 3D- Texturräumen.
  • Als Hilfe für das Verständnis werden jeder der Speicher in 3, ihr Inhalt und die Verarbeitungsschritte alphabetisch bezeichnet. Z. B. enthält der Speicherblock 30 die Texeldaten a (Textur) im 2D-Texturraum b. Der Speicherwürfel 32 enthält 3D-Geometriedaten d im 3D-Modellraum e. Der Speicherwürfel 34 enthält die im normierten 3D-Raum h enthaltenen, transformierten Objektdaten g. Der Speicherblock 36 enthält die Bilddaten j im 2D-Bildschirmraum k. Daten werden auch noch dem Block m bereitgestellt, abgespeichert als Farbdaten n.
  • Die Bewegung der Daten von einem Speicher zum anderen beinhaltet Transformationen, wie oben allgemein beschrieben wurde. Z. B. kann die Transformationsabbildung zwischen 2D-Texturraum b und 3D-Modellraum e entweder implizit oder explizit erfolgen und kann oder kann nicht global umkehrbar sein. Auf jeden Fall sind Daten fallweise umkehrbar.
  • Die Arbeitsabläufe, Transformationen eingeschlossen, sind ebenso alphabetisch durchnummeriert. Insbesondere führt der Frontend-Prozessor 12 die Transformationen c zwischen dem Texturblock 30 und dem Modellraumwürfel 32 durch. Transformationen zwischen dem Modellraumwürfel 32 und dem normierten Würfel 34 sind als f bezeichnet. Die Transformationen i erfolgen zwischen dem normierten Raumwürfel 34 und dem Bildschirmraumblock 36. Wie unten ausführlich beschrieben, werden alle diese Operationen vom Abbildungsprozessor 26 kontrolliert, der auch die Rasterung durchführt. Dabei ist zu beachten, dass in unterschiedlichen Implementierungen die verschiedenen Operationen unterschiedlich zugewiesen werden können. Im wesentlichen sind die einzelnen Operationen, wie die verschiedenen Transformationen und die Rasterung, gut bekannt, wie es auch die Strukturen für ihre Ausführung sind. Es ist die Anordnung, in der die Prozesse hiervon ausgeführt werden, die das gewünschte Resultat bringt.
  • Es soll im offengelegten Ablauf zuerst die Entwicklung einer Anzeige ins Auge gefasst werden. Die Darstellung von Vielecken (nicht dargestellt), die wiederum ein geometrisches Kästchen 42 begrenzen (3), werden in eine normierte Version umgewandelt, das als normiertes Kästchen 44 durch die Daten g im Raum h dargestellt sind. Vom normierten Raum h wird die Kästchendarstellung 44 in eine Kästchendarstellung 46 (Daten j im Raum k) umgewandelt. Wiederum ist zu beachten, dass die Kästchendarstellung aus Vielecken (Dreiecke – nicht dargestellt) besteht, die eigentlich die transformierten Daten bilden.
  • Die Transformationen der Daten von einem Speicher in einen anderen beinhalten Matrizenoperationen, die aus dem Stand der Technik bekannt sind. Insbesondere unter diesem Gesichtspunkt sei auf Kapitel 18 und den Anhang des oben erwähnten Foley-Lehrbuchs verwiesen. Solche Transformationen werden von den Prozessoren 12 und 14 in Vorwärtsrichtung und von eben diesen Prozessoren zusammen mit dem Abbildungsprozessor 26 in Rückrichtung durchgeführt. Rekapitulierend stehen, in einigen Fällen jedoch nicht notwendigerweise, Daten zur Verfügung, die in eine Folge von Dreiecken aufgegliedert wurden. Die Daten d, die das Kästchen 42 definieren, werden im Normalfall vom Frontend-Prozessor 12 normiert, um die Daten g zur Verfügung zu stellen, die den Würfel 44 beschreiben. Das normierte Kästchen 44 wird dann texturiert und gerastert, um die Daten, die den Würfel 46 beschreiben, darzustellen, wie er durch die Daten j im Raum k dargestellt wird. Somit ist der Würfel 46 also dargestellt, indem Daten von dem geometrischen Kästchen 42 und der Abbildung 48 benutzt werden.
  • Angenommen, die blaue Farbe, die den Punkt 40 bestimmt, würde auf das Kästchen 46 mittels der Eingabe 50 aufgebracht, wobei eine Quelle für Texturdaten genutzt wird, wie sie hinsichtlich 1 beschrieben ist. Im wesentlichen wird der Punkt 40 auf dem Würfel 46 dargestellt und die Farbdaten werden im Bildschirmraum k wie in einem Bildspeicher gespeichert. Die Farbe (oder andere gewünschte Daten) wird ebenso in einem versteckten Bildschirmraum n als Daten m gespeichert.
  • Nachdem ein Bild (Kästchen 46) dargestellt und z. B. Farbe oder Farbauftrag (Punkt 40) aufgebracht wurde, arbeitet das System daran, den Punkt 40 in die Textur aufzunehmen, die sich im Texturspeicher 30 (3) befindet. Von dieser Stelle können dann die Daten des Punktes 40 zusammen mit jeder anderen Textur gezielt auf unterschiedliche Darstellungen des Würfels 46 aufgebracht werden.
  • Die Operationen, um den Punkt 40 in die Textur b (Texturspeicher 30) aufzunehmen, können bis zu einem gewissen Grad zusammengefasst werden. Insbesondere eine erste Operation beinhaltet, diejenigen Vielecke im Modellraum e aufzufinden, die den Punkt enthalten. Diese Suchaufgabe kann durchgeführt werden, indem Vielecke nacheinander vom Modellraum in den Bildschirmraum zur Überprüfung überführt werden. Nachdem ein ausgewähltes Vieleck (oder Vielecke) identifiziert wurde, werden die Texel innerhalb des Vielecks, die mit dem Bildpunkt zusammenfallen, die den Punkt 40 festlegen, ausfindig gemacht und gerastert. Diese Operation wird nun ausführlich behandelt, wobei gleichzeitig Bezug auf die 3 und 4 genommen wird. In dieser Hinsicht veranschaulicht die 4 die logischen Operationen, die durch die kooperative Betätigung des Frontend-Prozessors 12 (3), des Backend-PROZESSORS 14 und des Abbildungsprozessors 26 durchgeführt werden.
  • Das Verfahren, um die (für den Punkt 40) maßgeblichen Vielecke auszuwählen oder zu identifizieren, beinhaltet das Überprüfen der Vielecke, wie sie im Modellraum e gespeichert sind. Folglich, wie durch Block 60 (4) angedeutet, wird jedes Vieleck zur Vorbereitung einer Abfrageoperation, wie sie durch Block 62 dargestellt ist, durch die Funktion f (Prozessor 12) von den Daten d in die Daten g übergeführt. Die Abfrageoperation f entscheidet, ob ein zur Diskussion stehendes Vieleck "im Vordergrund" ist oder nicht. Im wesentlichen wird ein Vieleck, wenn es nicht "im Vordergrund" ist, nicht in der Anzeige erscheinen und kann verworfen werden. Andernfalls muss ein Vieleck, wenn es "im Vordergrund" ist, weiterhin in Erwägung gezogen werden und das Verfahren wird mit Weitergabe der Daten g' zu Block 64 fortgesetzt, wo die Operation i ausgeführt wird.
  • Wie in Block 64 dargestellt, werden die Daten g' (ein Beispiel für ein im Vordergrund liegendes Vieleck) in eine Bildpunktdarstellung umgewandelt (Daten j, gespeichert im Bildschirmraum k) (3). Zu beachten ist, dass die Transformation auf die Polygon-Vertices angewandt wird, um den Bereich des Vielecks im Bildschirmraum zu definieren, wie es in Block 64 angedeutet ist. Die Daten j, die charakteristisch für das Vieleck sind, werden in der Form j' einer Abfrage zur Verfügung gestellt, wie es in Block 66 (4) dargestellt ist. Die Abfrage bestimmt insbesondere die Nähe von Bildpunkten (Daten j') zum Punkt 40, insbesondere den aufgebrachten neuen Daten, z. B. einen Farbauftrag. Wenn die Bildpunkte nicht im Bereich oder der Gegend des Farbauftrags sind, kann das Vieleck verworfen werden und der Arbeitsablauf beginnt mit dem nächsten Vieleck von vorne. Andernfalls, wenn der Bereich des Farbauftrags bestimmt ist, wird das Vieleck weiter bearbeitet. Insbesondere werden die Daten j' zurücktransformiert, um bestimmte Bildpunkte in der Textur, wie in Block 68 angedeutet, zu identifizieren. Gemäß 3 und 4 beinhaltet die Verarbeitung von Block 68 Rücktransformationen über die Abläufe i, f und c, um diejenigen Texel in einem zur Überprüfung ausgewählten Vieleck, die die aufgebrachte Farbe tragen, zu identifizieren. Der nächste Arbeitsschritt beinhaltet im allgemeinen die Rasterung der Vieleckdaten a', wie es Block 70 zeigt. Die Rasterung beinhaltet die Behandlung der einzelnen Texel (als a' in Beziehung zum Vieleck gekennzeichnet), um diese einzufärben. Folglich werden die einzelnen Texel nacheinander entsprechend der Arbeitsschritte, die in 4 unter Block 70 veranschaulicht sind, verarbeitet. Die Texel werden nacheinander, bis alle überprüft sind, bearbeitet, wonach der Arbeitsablauf zur Behandlung eines neuen Vielecks (Block 60) zurückspringt.
  • Betrachtet man die Schritte zur Rasterung der Texel, so werden die Daten a' (die ein Texel angeben) durch die Operation wieder mit den Geometriedaten identifiziert, wie es Block 72 zeigt. Dieser Arbeitsschritt wird durch den Prozessor 12 durchgeführt, wie es in 3 veranschaulicht ist.
  • Im wesentlichen wird das Texel umgerechnet, um Bildpunktdaten d' im Modellraum e anzugeben. Zu beachten ist, dass diese "Bildpunktdaten", abhängig von den zuvor erwähnten Transformationen, auch mehrere Bildpunkte oder Teile von Bildpunkten sein können. Nun wird eine weitere Transformation durchgeführt, wie sie in Block 74 dargestellt wird. Insbesondere werden die Daten der Bildpunkte d' in den Bildschirmraum übergeführt, wo sie die Bildpunktdaten j''' kennzeichnen. Im Bildschirmraum k werden die Bildpunktdaten j''' auf Sichtbarkeit überprüft, wie es im Ab frageblock 76 dargestellt ist. Sind die Pixeldaten nicht sichtbar, so werden sie verworfen. Andernfalls wird ein Bildpunkt identifiziert, der festlegt, dass das ihm entsprechende Texel den Farbauftrag erhalten soll. Insbesondere wird das existierende Texel, das Inhalt haben kann oder nicht, mit den Daten m gemischt, die dem Farbauftrag im versteckten Bildschirmraum n entsprechen. Der Arbeitsschritt ist in 4 durch den Block 78 dargestellt. Demzufolge wurde der Inhalt des Farbauftrags (die hinzugefügte Eigenschaft) der Textur für spätere und eindeutige Texturierungsaufgaben hinzugefügt. Nach Beendigung dieser Operation, schreitet der Prozess zum letzten Abfrageblock 80, um zu überprüfen, ob oder ob nicht das Texel das letzte des Vielecks war. Wenn dem so ist, ist die Verarbeitung des Vielecks beendet und der Prozess springt zurück zu dem Arbeitsschritt, der als Block 60 dargestellt ist. Andernfalls müssen noch weitere Texel des Vielecks durch Rasterung verarbeitet werden, demzufolge der Arbeitsablauf bei Block 72 mit der Behandlung des nächsten Texels fortgesetzt wird.
  • Als teilweise Wiederholung sind Rasterungsmethoden im oben erwähnten Foley-Lehrbuch beschrieben und in diesem Zusammenhang Rasterungsmethoden in Bezug auf ein Vieleck auf Seite 884 veranschaulicht. Im Wesentlichen kann nach der Identifizierung eines Vielecks 86 (5) die Rasterung die sukzessive Behandlung von getrennten, in Betracht kommenden Bildpunktbereichen 88 beinhalten. Es sei z. B. angenommen, dass nur die Spitze 90 des Vielecks 86 in der Anzeige sichtbar ist. Z. B. kann der untere Teil des Vielecks 86 durch ein anderes, teilweise dargestelltes Vieleck 92 verdeckt sein. In diesem Fall werden die dem Bildpunktbereich 88 entsprechenden Texel identifiziert, um den aufgebrachten Farbauftrag zu erhalten. Wie oben angedeutet, werden die Bildpunktbereiche 88 nacheinander während der Rasterung und anschließenden Bestimmung, ob sie gemischt werden müssen, behandelt. Insbesondere wird der Test, ob ein Vieleck verdeckt ist, durchgeführt, wobei die Tiefeninformationen ("z-Buffer") beim 3D-Rendering-Prozess beibehalten werden.
  • Die Ausführung des oben beschriebenen Verfahrens als, wie vorgeschlagen, kooperative Verarbeitung, wird durch die Prozessoren 12 und 14 zusammen mit dem Abbildungsprozess 26 erreicht. Die Aufgaben des Frontend- 12 und Backend-Prozessors 14 sind wohl bekannt; die Arbeitsweise des Abbildungsprozessors 26 hingegen verdient weitere Beachtung. In diesem Zusammenhang sei darauf hingewiesen, dass jede der großen Zahl an Verwirklichungen dazu eingesetzt werden kann, das Verfahren auszuführen. Dennoch kann, wie es zum Zwecke der Erklärung und Veranschaulichung genau beschrieben wurde, der Prozessor 26 diejenige Form annehmen, die in 6 dargestellt ist.
  • Eine Steuerungseinheit 100 (6) steuert die oben ausführlich beschriebenen Abläufe im Umfeld eines datenverarbeitenden Systems (1). In diesem Zusammenhang ist die Steuerungseinheit 100, wie dargestellt, mit dem Frontend-Prozessor 12, dem Rendering- oder Backend-Prozessor 14, dem Texturspeicher 18, dem Bildspeicher 16 und dem versteckten Bildschirmspeicher 24 verbunden. Zusätzlich nimmt die Steuerungseinheit bi-direktionale Anschlüsse zu einem Komparator 102 und einer Rasterungseinheit 104 auf. Wiederum sei festgehalten, dass diese Funktionalität auch von Komponenten eines existierenden Prozessors ausgeführt werden können; wie auch immer steuert die Steuerungseinheit 100, wie hier offen gelegt, den Komparator 102, der den im Abfrageblock 66 in 4 dargestellten Test durchführt. Die Rasterungseinheit 104 führt entsprechend den Rasterungsprozess durch, der in Block 70 ausführlich beschrieben ist und die Arbeitsschritte der Blöcke 72, 75, 76, 78 und 80 enthält. Somit wird ein ganzheitliches System erreicht, um den oben ausführlich beschriebenen, anschaulichen Arbeitsablauf auszuführen.
  • Entsprechend können Modelldaten in Zusammenarbeit mit einem Computergraphiksystem verwendet werden, um graphische Bilder, die mit Texturen belegt sind, zu entwickeln und weiterhin können, in Übereinstimmung hiermit, Farbaufträge oder andere Formen von neuen Abbildungen auf ein Bild aufgebracht werden, um in die Textur hineingemischt zu werden. Insbesondere beinhalten die Arbeitsschritte das Testen der Modelldaten in Beziehungen zu den neuen Abbildungsdaten oder zum Farbauftrag, um bestimmte Modelldaten zu ermitteln, die dann transformiert und untersucht werden, um einen bestimmten Bildpunktbereich zu ermitteln, der dann den Farbauftrag erhält. Entsprechend wird ein effektives und geeignetes System zur Verfügung gestellt, um Texturen oder ähnliche Arten von Daten in einer Abbildung zusammen zu bringen, um sie im Zusammenhang mit graphischen Bildern zu nutzen.
  • Im Hinblick auf die obige Beschreibung ist es offensichtlich, dass das System der vorliegenden Erfindung tatsächlich in Computergraphiksystemen zum Einsatz kommen kann, um effektiv und ökonomisch neue Zusatzdaten (als Ergänzung zu Geometriedaten in einer Anzeige) für verschiedene Zwecke zusammen zu bringen. Obwohl die vorliegende Ausführungsform in erster Linie für eine Ausgestaltung oder für ein System zur Texturierung vorgesehen ist, ist es offensichtlich, dass das System verschiedenet ausgeführt werden kann, um verschiedenen anderen Aufgaben, die die Vereinigung neuer Daten beinhalten, zu genügen. Des Weiteren ist es offensichtlich, dass, während die vorliegende Ausführungsform sich aus besonderen Elementen und Anordnungen zusammensetzt, jegliche Art von Struktur oder Ablaufsvaria tionen ebenso genutzt werden können. Dementsprechend wird der Geltungsbereich hiervon als wie in den unten dargelegten Ansprüchen dargelegt, erachtet.

Claims (11)

  1. Verfahren zum Aktualisieren von Struktur-Abbildungen auf einem Computersystem, die einem strukturierten, dreidimensionalen Objekt entsprechend, beinhalten die Schritte: Bereitstellen eines ersten Satzes von Struktur-Abbildungen, die dem strukturierten, dreidimensionalen Objekt entsprechen; Auswählen einer ersten Orientierung des strukturierten, dreidimensionalen Objekts; Anzeigen des orientierten, dreidimensionalen Objekts in einer ersten perspektivischen Ansicht auf einem Computer-Bildschirm; Anwenden von Zusatz-Daten, die Strukturdaten und/oder Sichtdaten und/oder Transformationsdaten und/oder Deformationsdaten und/oder NURB-Splines enthalten, auf die erste, perspektivische Ansicht des orientierten, dreidimensionalen Objekts auf dem Computer-Display; gekennzeichnet durch Zusammenfassen des ersten Satzes entsprechender Struktur-Abbildungen für das dreidimensionale Objekt mit den Zusatz-Daten zum Bereitstellen eines zweiten Satzes entsprechender Struktur-Abbildungen für das dreidimensionale Objekt.
  2. Verfahren nach Anspruch 1, gekennzeichnet durch die Schritte: Auswählen einer zweiten Orientierung des strukturierten, dreidimensionalen Objekts; Anzeigen des zweiten orientierten, dreidimensionalen Objekts in einer zweiten perspektivischen Ansicht auf einem Computer-Display einschließlich der Zusatz-Daten nach Maßgabe der zweiten perspektivischen Ansicht.
  3. Verfahren nach Anspruch 1, gekennzeichnet durch die Schritte: Bereitstellen dreidimensionaler Modell-Daten, die dem strukturierten, dreidimensionalen Objekt entsprechen, wobei die dreidimensionalen Modell-Daten drei kontinuierliche Dimensionen besitzen; wobei der Schritt des Anzeigens in einer zweiten perspektivischen Ansicht beinhaltet, dass die dreidimensionalen Modell-Daten in den Raum des zweiten Satzes von Struktur-Abbildungen transformiert werden, um Abbildungs-Ortsdaten bereitzustellen, dass die Abbildungs-Ortsdaten hinsichtlich einer Bild-Sichtbarkeit überprüft werden, um sichtbare Abbildungsorte in der zweiten perspektivischen Ansicht zu identifizieren, und dass die sichtbaren, neuen Daten an den identifizierten, sichtbaren Abbildungsorten der zweiten perspektivischen Ansicht eingefügt werden.
  4. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der Anwendungsschritt ein Anwenden der Zusatz-Daten mit einem Pinsel beinhaltet.
  5. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Zusatz-Daten ein Bild sind.
  6. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Zusatz-Daten eine Unebenheits-Abbildung sind.
  7. Verfahren nach Anspruch 3, dadurch gekennzeichnet, dass die dreidimensionalen Modell-Daten die Form eines Polygon-Gitters haben.
  8. Verfahren nach Anspruch 3, dadurch gekennzeichnet, dass der Transformations-Schritt ein Transformieren dreidimensionaler Polygone in zweidimensionale Bildelemente (Pixel) beinhaltet.
  9. Computergraphik-System zum Aktualisieren von Struktur-Abbildungen auf einem Computersystem, die einem strukturiertem, dreidimensionalen Objekt entsprechen und einen ersten Satz von Struktur-Abbildungen aufweisen, mit: Mitteln zum Auswählen einer ersten Orientierung des strukturierten, dreidimensionalen Objekts; Mitteln zum Anzeigen des orientierten, dreidimensionalen Objekts in einer ersten perspektivischen Ansicht auf einem Computer-Bildschirm; Mitteln zum Anwenden von Zusatz-Daten, die Strukturdaten und/oder Sichtdaten und/oder Transformationsdaten und/oder Deformationsdaten und/oder NURB-Splines enthalten, auf die erste, perspektivische Ansicht des orientierten, dreidimensionalen Objekts auf dem Computer-Display; gekennzeichnet durch Mittel zum Zusammenfassen des ersten Satzes entsprechender Struktur-Abbildungen für das dreidimensionale Objekt mit den Zusatz-Daten zum Bereitstellen eines zweiten Satzes entsprechender Struktur-Abbildungen für das dreidimensionale Objekt.
  10. System nach Anspruch 9, gekennzeichnet durch: Mittel zum Auswählen einer zweiten Orientierung des strukturierten, dreidimensionalen Objekts; Mittel zum Anzeigen des zweiten orientierten, dreidimensionalen Objekts in einer zweiten perspektivischen Ansicht auf einem Computer-Display einschließlich der Zusatz-Daten nach Maßgabe der zweiten perspektivischen Ansicht.
  11. System nach Anspruch 9, gekennzeichnet durch: Mittel zum Bereitstellen dreidimensionaler Modell-Daten, die dem strukturierten, dreidimensionalen Objekt entsprechen, wobei die dreidimensionalen Modell-Daten drei kontinuierliche Dimensionen besitzen; wobei die Mittel zum Anzeigen einer zweiten perspektivischen Ansicht Mittel beinhalten zum Transformieren der dreidimensionalen Modell-Daten in den Raum des zweiten Satzes von Struktur-Abbildungen, um Abbildungs-Ortsdaten bereitzustellen, und zum Überprüfen der Abbildungs-Ortsdaten hinsichtlich einer Bild-Sichtbarkeit, um sichtbare Abbildungsorte in der zweiten perspektivischen Ansicht zu identifizieren, und zum Einfügen der sichtbaren, neuen Daten an den identifizierten, sichtbaren Abbildungsorten der zweiten perspektivischen Ansicht.
DE69632578T 1995-03-02 1996-02-15 Computer-grafiksystem zum schaffen und verbessern von texturabbildungssystemen Expired - Lifetime DE69632578T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US39816895A 1995-03-02 1995-03-02
US398168 1995-03-02
PCT/US1996/002123 WO1996027169A1 (en) 1995-03-02 1996-02-15 Computer graphics system for creating and enhancing texture maps

Publications (2)

Publication Number Publication Date
DE69632578D1 DE69632578D1 (de) 2004-07-01
DE69632578T2 true DE69632578T2 (de) 2005-06-09

Family

ID=23574266

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69632578T Expired - Lifetime DE69632578T2 (de) 1995-03-02 1996-02-15 Computer-grafiksystem zum schaffen und verbessern von texturabbildungssystemen

Country Status (11)

Country Link
US (1) US5838331A (de)
EP (1) EP0812447B1 (de)
JP (1) JPH11511875A (de)
KR (1) KR100415474B1 (de)
CN (1) CN1182491A (de)
AT (1) ATE268031T1 (de)
AU (1) AU4985096A (de)
CA (1) CA2214433A1 (de)
CZ (1) CZ273297A3 (de)
DE (1) DE69632578T2 (de)
WO (1) WO1996027169A1 (de)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6786420B1 (en) 1997-07-15 2004-09-07 Silverbrook Research Pty. Ltd. Data distribution mechanism in the form of ink dots on cards
JP2937937B2 (ja) * 1997-04-21 1999-08-23 核燃料サイクル開発機構 三次元オブジェクトデータ処理方法
US6618117B2 (en) 1997-07-12 2003-09-09 Silverbrook Research Pty Ltd Image sensing apparatus including a microcontroller
US6803989B2 (en) 1997-07-15 2004-10-12 Silverbrook Research Pty Ltd Image printing apparatus including a microcontroller
US7110024B1 (en) 1997-07-15 2006-09-19 Silverbrook Research Pty Ltd Digital camera system having motion deblurring means
US6948794B2 (en) 1997-07-15 2005-09-27 Silverbrook Reserach Pty Ltd Printhead re-capping assembly for a print and demand digital camera system
AUPO802797A0 (en) 1997-07-15 1997-08-07 Silverbrook Research Pty Ltd Image processing method and apparatus (ART54)
AUPO850597A0 (en) 1997-08-11 1997-09-04 Silverbrook Research Pty Ltd Image processing method and apparatus (art01a)
US6486886B1 (en) * 1997-07-15 2002-11-26 Silverbrook Research Pty Ltd Bump map compositing for simulated digital painting effects
US7705891B2 (en) 1997-07-15 2010-04-27 Silverbrook Research Pty Ltd Correction of distortions in digital images
US6624848B1 (en) 1997-07-15 2003-09-23 Silverbrook Research Pty Ltd Cascading image modification using multiple digital cameras incorporating image processing
US6879341B1 (en) 1997-07-15 2005-04-12 Silverbrook Research Pty Ltd Digital camera system containing a VLIW vector processor
US6690419B1 (en) 1997-07-15 2004-02-10 Silverbrook Research Pty Ltd Utilising eye detection methods for image processing in a digital image camera
US6985207B2 (en) 1997-07-15 2006-01-10 Silverbrook Research Pty Ltd Photographic prints having magnetically recordable media
US6268865B1 (en) * 1998-01-13 2001-07-31 Disney Enterprises, Inc. Method and apparatus for three-dimensional painting
AUPP702098A0 (en) 1998-11-09 1998-12-03 Silverbrook Research Pty Ltd Image creation method and apparatus (ART73)
US6456287B1 (en) * 1999-02-03 2002-09-24 Isurftv Method and apparatus for 3D model creation based on 2D images
DE60045319D1 (de) * 1999-02-05 2011-01-13 Samsung Electronics Co Ltd Verfahren und Vorrichtung zum Wiederauffinden von Texturbildern
AUPQ056099A0 (en) 1999-05-25 1999-06-17 Silverbrook Research Pty Ltd A method and apparatus (pprint01)
US6560633B1 (en) 1999-06-10 2003-05-06 Bow Street Software, Inc. Method for creating network services by transforming an XML runtime model in response to an iterative input process
US6792605B1 (en) 1999-06-10 2004-09-14 Bow Street Software, Inc. Method and apparatus for providing web based services using an XML Runtime model to store state session data
US6456291B1 (en) * 1999-12-09 2002-09-24 Ati International Srl Method and apparatus for multi-pass texture mapping
EP1134554B1 (de) * 2000-03-17 2009-02-18 Panasonic Corporation Kartenanzeige- und Navigationsvorrichtung
GB0007974D0 (en) * 2000-04-01 2000-05-17 Discreet Logic Inc Processing image data
US6667746B1 (en) * 2000-09-26 2003-12-23 Ati International, Srl Pre-blending textures
US6917842B2 (en) * 2001-02-20 2005-07-12 Canon Kabushiki Kaisha Information processing apparatus and method
US6825838B2 (en) * 2002-10-11 2004-11-30 Sonocine, Inc. 3D modeling system
JP2004252603A (ja) * 2003-02-18 2004-09-09 Canon Inc 三次元データ処理方法
US20050017982A1 (en) * 2003-07-23 2005-01-27 Kane Francis James Dynamic imposter generation with MIP map anti-aliasing
US7151545B2 (en) * 2003-08-06 2006-12-19 Landmark Graphics Corporation System and method for applying accurate three-dimensional volume textures to arbitrary triangulated surfaces
CN101355968A (zh) * 2005-11-08 2009-01-28 安斯泰来制药有限公司 治疗血小板减少的组合物和方法
US7439988B1 (en) * 2005-12-05 2008-10-21 Nvidia Corporation Apparatus, system, and method for clipping graphics primitives with respect to a clipping plane
US7616218B1 (en) 2005-12-05 2009-11-10 Nvidia Corporation Apparatus, system, and method for clipping graphics primitives
US7714877B1 (en) 2005-12-19 2010-05-11 Nvidia Corporation Apparatus, system, and method for determining clipping distances
US7420572B1 (en) 2005-12-19 2008-09-02 Nvidia Corporation Apparatus, system, and method for clipping graphics primitives with accelerated context switching
US8564590B2 (en) * 2007-06-29 2013-10-22 Microsoft Corporation Imparting three-dimensional characteristics in a two-dimensional space
US9858245B2 (en) * 2013-01-28 2018-01-02 The Boeing Company Panoptic visualization of elements of a complex system using a model viewer
KR101435325B1 (ko) * 2013-04-10 2014-08-27 한국과학기술원 깊이 맵 생성 방법 및 장치
WO2016103067A1 (en) * 2014-12-22 2016-06-30 Husqvarna Ab Garden mapping and planning via robotic vehicle
CN105488840B (zh) * 2015-11-26 2019-04-23 联想(北京)有限公司 一种信息处理方法及电子设备

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2140257B (en) * 1980-12-04 1985-09-18 Quantel Ltd Video image creation
US4514818A (en) * 1980-12-04 1985-04-30 Quantel Limited Video image creation system which simulates drafting tool
US4602286A (en) * 1982-01-15 1986-07-22 Quantel Limited Video processing for composite images
GB2157122B (en) * 1982-01-15 1986-09-24 Quantel Ltd Image composition system
US4646251A (en) * 1985-10-03 1987-02-24 Evans & Sutherland Computer Corporation Computer graphics, parametric patch parallel subdivision processor
US4855934A (en) * 1986-10-03 1989-08-08 Evans & Sutherland Computer Corporation System for texturing computer graphics images
US5251160A (en) * 1988-02-23 1993-10-05 Evans & Sutherland Computer Corporation System for blending surfaces in geometric modeling
US5038223A (en) * 1988-02-29 1991-08-06 Canon Kabushiki Kaisha Image processing method and apparatus for imparting a pictorial or painter-like effect
US5245432A (en) * 1989-07-31 1993-09-14 Imageware Research And Development Inc. Apparatus and method for transforming a digitized signal of an image to incorporate an airbrush effect
US5255352A (en) * 1989-08-03 1993-10-19 Computer Design, Inc. Mapping of two-dimensional surface detail on three-dimensional surfaces
US5192208A (en) * 1989-08-21 1993-03-09 General Electric Company Radar simulation for use with a visual simulator
US5237647A (en) * 1989-09-15 1993-08-17 Massachusetts Institute Of Technology Computer aided drawing in three dimensions
US5155813A (en) * 1990-01-08 1992-10-13 Wang Laboratories, Inc. Computer apparatus for brush styled writing
GB9008946D0 (en) * 1990-04-20 1990-06-20 Crosfield Electronics Ltd Image processing apparatus
US5179638A (en) * 1990-04-26 1993-01-12 Honeywell Inc. Method and apparatus for generating a texture mapped perspective view
US5233684A (en) * 1990-06-26 1993-08-03 Digital Equipment Corporation Method and apparatus for mapping a digital color image from a first color space to a second color space
US5566283A (en) * 1990-09-03 1996-10-15 Dainippon Printing Co., Ltd. Computer graphic image storage, conversion and generating apparatus
US5504845A (en) * 1990-09-10 1996-04-02 Modacad, Inc. Method for remodeling and rendering three-dimensional surfaces
US5307452A (en) * 1990-09-21 1994-04-26 Pixar Method and apparatus for creating, manipulating and displaying images
US5315709A (en) * 1990-12-03 1994-05-24 Bachman Information Systems, Inc. Method and apparatus for transforming objects in data models
US5230039A (en) * 1991-02-19 1993-07-20 Silicon Graphics, Inc. Texture range controls for improved texture mapping
JP3082289B2 (ja) * 1991-05-14 2000-08-28 富士ゼロックス株式会社 画像処理装置
US5325473A (en) * 1991-10-11 1994-06-28 The Walt Disney Company Apparatus and method for projection upon a three-dimensional object
US5469536A (en) * 1992-02-25 1995-11-21 Imageware Software, Inc. Image editing system including masking capability
US5469535A (en) * 1992-05-04 1995-11-21 Midway Manufacturing Company Three-dimensional, texture mapping display system
US5359526A (en) * 1993-02-04 1994-10-25 Hughes Training, Inc. Terrain and culture generation system and method
US5490240A (en) * 1993-07-09 1996-02-06 Silicon Graphics, Inc. System and method of generating interactive computer graphic images incorporating three dimensional textures
US5471572A (en) * 1993-07-09 1995-11-28 Silicon Graphics, Inc. System and method for adding detail to texture imagery in computer generated interactive graphics
US5550960A (en) * 1993-08-02 1996-08-27 Sun Microsystems, Inc. Method and apparatus for performing dynamic texture mapping for complex surfaces
US5566284A (en) * 1993-12-22 1996-10-15 Matsushita Electric Industrial Co., Ltd. Apparatus and method for mip-map generation using low-pass filtering based on resolution ratio
US5592597A (en) * 1994-02-14 1997-01-07 Parametric Technology Corporation Real-time image generation system for simulating physical paint, drawing media, and feature modeling with 3-D graphics

Also Published As

Publication number Publication date
WO1996027169A1 (en) 1996-09-06
KR100415474B1 (ko) 2004-03-18
EP0812447A4 (de) 1998-07-15
CZ273297A3 (cs) 1998-06-17
CA2214433A1 (en) 1996-09-06
AU4985096A (en) 1996-09-18
JPH11511875A (ja) 1999-10-12
US5838331A (en) 1998-11-17
EP0812447B1 (de) 2004-05-26
CN1182491A (zh) 1998-05-20
KR19980702692A (ko) 1998-08-05
DE69632578D1 (de) 2004-07-01
ATE268031T1 (de) 2004-06-15
EP0812447A1 (de) 1997-12-17

Similar Documents

Publication Publication Date Title
DE69632578T2 (de) Computer-grafiksystem zum schaffen und verbessern von texturabbildungssystemen
DE69830767T2 (de) Verfahren und Vorrichtung zum Zusammensetzen geschichteter synthetischer graphischer Filter
DE102020000810A1 (de) 3D-Objektrekonstruktion unter Nutzung einer fotometrischen Netzdarstellung
DE69924700T2 (de) Verfahren zur Darstellung von durch Oberflächenelemente repräsentierten grafischen Objekten
EP2005259B1 (de) Verfahren zum rendern und generieren computer-generierter videohologramme in echtzeit
DE112004000377B4 (de) Verfahren und Vorrichtung Bildsegmentierung in einer dreidimensionalen Arbeitsumgebung
DE69924699T2 (de) Verfahren zur Schaffung von als Oberflächenelemente dargestellten grafischen Objekten
DE102005050846A1 (de) Perspektiveneditierwerkzeuge für 2-D Bilder
DE19709220A1 (de) System und Verfahren für eine beschleunigte Verdeckungsauslese
DE69735181T2 (de) Verfahren und Vorrichtung für virtuelle Architektur
DE102006021118B4 (de) Rendern von anatomischen Strukturen mit ihrem nahen Umgebungsbereich
DE102013114176A1 (de) Tessellieren von Oberflächendatensegmenten beim kachelbasierten Rendern von Computergrafik
DE602004003111T2 (de) Tiefen-basiertes Antialiasing
DE102006023633A1 (de) Gleichzeitige Projektion von mehrfach verzweigten Gefäßen und ihrer Umgebung auf einem einzigen Bild
DE102018125472A1 (de) Grafikprozessor, der Abtastungs-basiertes Rendering durchführt, und Verfahren zum Betreiben desselben
DE19708679A1 (de) Bilddarstellungsverfahren und Vorrichtung zur Durchführung des Verfahrens
DE10085297B4 (de) Verfahren und Vorrichtung zur Erzeugung einer Bewegungsillusion
EP2457219B1 (de) Verfahren und anordnung zur generierung von darstellungen anisotroper eigenschaften sowie ein entsprechendes computerprogramm und ein entsprechendes computerlesbares speichermedium
DE102019101871A1 (de) Verfahren und Vorrichtung zum Gewinnen von Abtastpositionen von Textuieroperationen
DE19723063A1 (de) Verfahren zum Halten eines zusammenhängenden Texturspeichers zur Cachekohärenz
DE69830766T2 (de) Verfahren und Vorrichtung zum Bestimmen des Anwendungsumfangs geschichteter synthetischer graphischer Filter
DE102022112888A1 (de) Benutzerschnittstellen und Verfahren zum Erzeugen eines neuen Artefakts auf der Grundlage vorhandener Artefakte
DE69910980T2 (de) Antialiasing mit unterabtastung für textur-raender
DE19620858A1 (de) Computergraphiksystem mit Pixel-Tiefenhinweisgebung
DE60025957T2 (de) Verfahren und vorrichtung zur gewährleistung der abwärts-kompatibilität in einem bucket-darstellungssystem

Legal Events

Date Code Title Description
8364 No opposition during term of opposition