DE69912576T2 - Filter zum transformieren von 3d-daten in einer hardware beschleunigten architektur - Google Patents

Filter zum transformieren von 3d-daten in einer hardware beschleunigten architektur Download PDF

Info

Publication number
DE69912576T2
DE69912576T2 DE69912576T DE69912576T DE69912576T2 DE 69912576 T2 DE69912576 T2 DE 69912576T2 DE 69912576 T DE69912576 T DE 69912576T DE 69912576 T DE69912576 T DE 69912576T DE 69912576 T2 DE69912576 T2 DE 69912576T2
Authority
DE
Germany
Prior art keywords
data
filter
stereoscopic
frame buffer
point
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
DE69912576T
Other languages
English (en)
Other versions
DE69912576D1 (de
Inventor
Guy Bar-Nahum
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.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips Electronics NV
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 Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Priority claimed from PCT/IB1999/001104 external-priority patent/WO2000000934A2/en
Application granted granted Critical
Publication of DE69912576D1 publication Critical patent/DE69912576D1/de
Publication of DE69912576T2 publication Critical patent/DE69912576T2/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/005General purpose rendering architectures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/275Image signal generators from 3D object models, e.g. computer-generated stereoscopic image signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/161Encoding, multiplexing or demultiplexing different image signal components
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/286Image signal generators having separate monoscopic and stereoscopic modes

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)

Description

  • TECHNISCHER BEREICH
  • Die vorliegende Erfindung bezieht sich auf Computersysteme, die Graphiken erzeugen und insbesondere auf das Erzeugen von 3-domensionalen (3D) Graphiken.
  • STAND DER TECHNIK
  • Software Applikationsprogramme, die verbesserte Graphiken verwendet, sind immer wichtiger geworden. So benutzen beispielsweise Video-Spiele oft eine immer größer werdende Anzahl 3D Graphiken zur Wiedergabe an einem typischen PC-Monitor. Diese graphischen Applikationen erfordern, dass das Computersystem 3D Aufbereitungs-Software enthält zum Unterstützen des graphischen Inhaltes. 1 ist ein Blockschaltbild, das ein herkömmliches Computersystem darstellt zum Durchführen typischer graphischer Applikationsprogramme und zum Wiedergeben der Graphiken.
  • In 1 kann das Computersystem 10 beispielsweise als ein PC auf Pentium-Basis implementiert werden, wobei ein Windows 9x oder ein Windows NT Operationssystem von Microsoft Corporation angewandt wird. Das Computersystem 100 umfasst einen Software-Teil 12 und einen Hardware-Wiedergabeteil 14. Der Software-Teil 12 umfasst ein Applikationsprogramm 16, eine Operationssystem 3D Aufbereitungsmaschine 18 und eine einen dritten Teil 2-dimensionalen (2D) Wiedergabetreiberstufe 20. Die Applikation 16 erzeugt Funktionsaufrufe zu dem Operationssystem (OS) des Computersystems 10 zum Durchführen von OS-Diensten. Insbesondere erzeugt die Applikation 16 Funktionsaufrufe zu der 3D Aufbereitungsmaschine, auch als graphisches Modul bezeichnet, und zwar über die definierte Applikationsprogrammiererschnittstelle (API) des Operationssystems.
  • Die 3D Aufbereitungsmaschine 18 führt Operationen durch, die mit Graphiken assoziiert sind, beispielsweise Befolgung des Zustandes eines Szene, Speicherung von Geometrie und Strukturen in den internen Darstellungen, Anpassung der Aufbereitungsmaschine 18 entsprechend den Applikationsaufrufen usw. Die 3D Aufbereitungsmaschine 18 manipuliert die 3D Objekte, die sie verarbeitet unter Verwendung von Puffern, wie Stencilpuffern und Z-Puffern und einem oder mehreren 2D Endergebnispuffern für das aufbereitete Frame. Nach der Durchführung der 3D Aufbereitung instruiert die Applikation 16 die 3D Aufbereitungsmaschine 18 zum Aufbereiten der Szene in einen resultierenden Frame-Puffer über die 2D Wiedergabetreiberstufe 20. Die 3D Aufbereitungsmaschine kommuniziert mit der 2D Wiedergabetreiberstufe 20 über das API des Operationssystems. Die 3D Aufbereitungsmaschine 18 bereitet die 3D Szene zu einem endgültigen 2D Bild in dem Frame-Puffer, typischerweise in dem 2D Wiedergabeadapter 22. Der 2D Wiedergabeadapter verwandelt danach die Videodaten in dem Frame-Puffer zu analogen Videosignalen (RGB) und der Wiedergabemonitor 24 gibt das endgültige Bild wieder.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Ein Nachteil der die Software aufbereitenden Architektur aus 1 ist, dass der Ausgang der 3D Aufbereitungsmaschine 18 vorwiegend ein 2-dimensionales (2D) Bild in einem Frame-Puffer des 2D Wiedergabeadapters 22 ist. Das 2D Bild wird danach zum Monitor 24, wie einem herkömmlichen PC Monitor, ausgeliefert. Auf entsprechende Weise ist die Software-aufbereitende Architektur nicht imstande, einen stereoskopischen 3D Inhalt zu erzeugen.
  • Auf zusätzliche Weise können in anderen Systemen, bei denen Hardware-aufbereitende Architekturen benutzt werden, 3D Beschleunigungsanordnungen verwendet werden zum Durchführen einiger oder aller Aufbereitungsanträge in Hardware. Der resultierende Ausgang der 3D Aufbereitung ist dennoch vorwiegend ein 2D Bild in dem Frame-Puffer des 3D Beschleunigers. Auf entsprechende Weise ist bei Systemen, die Hardware-aufbereitende Architekturen verwenden, das System nicht imstande, einen stereoskopischen 3D Inhalt zu erzeugen.
  • Es gibt ein Bedürfnis nach einer Anordnung in einem Computersystem, das die Erzeugung stereoskopischer 3D Bilder für graphische Objekte ermöglicht, beispielsweise für am Kopf getragene Wiedergabeanordnungen. Es gibt ebenfalls ein Bedürfnis nach einer Anordnung, die es ermöglicht, dass stereoskopische 3D Bilder erzeugt und ausgeliefert werden, und zwar unter Verwendung herkömmlicher Hardware-Treiberstufen und 3D Beschleunigungs-Hardware.
  • Dieses und andere Bedürfnisse werden erfüllt durch die vorliegende Erfindung, wobei ein stereoskopisches Filter Aufrufe von einem graphischen Modul eines Operationssystems zu einer Wiedergabe-Treiberstufe abfängt, die 3D Aufbereitungsvorgänge an einem graphischen Objekt beantragen. Das Filter erzeugt dann stereoskopische Bildda ten für ein Gesichtspunkt des linken Auges und ein Gesichtspunkt des rechten Auges, das danach in einem Frame-Puffer gespeichert wird. Der Ausgang der Wiedergabe-Treiberstufe kann dann in analoge Videosignale umgewandelt und zu einer stereoskopischen Wiedergabeanordnung ausgeliefert werden.
  • Nach einem Aspekt der vorliegenden Erfindung wird ein Verfahren geschaffen zum Erzeugen von 3D Daten für ein graphisches Objekt. Das Verfahren umfasst das in einem 3D Aufbereitungsmodul Erzeugen eines Funktionsaufrufantrags für einen 3D Aufbereitungsvorgang für das graphische Objekt. Das Verfahren umfasst ebenfalls das Empfangen des Funktionsaufrufantrags durch ein Filter und das Erzeugen einer Anzahl Gesichtspunktdaten für das 3D graphische Objekt.
  • Ein anderer Aspekt der vorliegenden Erfindung schafft ein vom Computer lesbares Medium, das gespeicherte Instruktionssequenzen umfasst, die von einem Prozessor durchgeführt werden sollen. Die Instruktionen sorgen dafür, dass der Prozessor einen Funktionsaufruf empfängt, der einem 3D Aufbereitungsmodul erzeugt worden ist, worin ein 3D Vorgang für ein graphisches Objekt beantragt wird. Die Instruktionen sorgen ebenfalls dafür, dass der Prozessor eine Anzahl Gesichtspunktdaten für das graphische Objekt erzeugt.
  • Andere Aufgabe und Vorteile der vorliegenden Erfindung dürften dem Fachmann aus den nachfolgenden Beschreibung klar werden. Die dargestellten und beschriebenen Ausführungsformen schaffen eine Erläuterung der besten Mode zum Durchführen der vorliegenden Erfindung. Die vorliegende Erfindung ist imstande, Modifikationen in mehreren Hinsichten durchzuführen, dies alles aber im Rahmen der vorliegenden Erfindung. Auf entsprechende Weise soll die Zeichnung als illustrativ und nicht als beschränkend betrachtet werden.
  • KURZE BESCHREIBUNG DER ZEICHNUNG
  • Ausführungsbeispiele der Erfindung sind in der Zeichnung dargestellt und werden im vorliegenden Fall näher beschrieben. Es zeigen:
  • 1 ein Blockschaltbild eines herkömmlichen Computer-Wiedergabesystems, wobei Software-Aufbereitung angewandt wird,
  • 2 ein Blockschaltbild eines Beispiels eines Computersystems, bei dem die vorliegende Erfindung angewandt werden kann,
  • 3 ein Flussdiagramm der Wirkungsweise eines Beispiels des Computersystems nach einer Ausführungsform der vorliegenden Erfindung,
  • 4A4C eine Darstellung mehrerer horizontaler stereoskopischer Moden, die bei der vorliegenden Erfindung angewandt werden können,
  • 5A5C eine Darstellung mehrerer vertikaler stereoskopischer Moden, die bei der vorliegenden Erfindung angewandt werden können,
  • 6A6B eine Darstellung der Gesichtspunktaufbereitung,
  • 7A7C eine Darstellung der Gesichtspunktaufbereitung nach einer Ausführungsform der vorliegenden Erfindung,
  • 8 eine Darstellung eines virtuellen Gesichtspunktmodells, das in einem Zuschauermodell verwendet wird,
  • 9 eine modifizierte Projektion für das Objekt aus 8,
  • 10 eine Darstellung eines linken Gesichtskoordinatensystems für die Projektion in 9,
  • 11 ein vereinfachtes Blockschaltbild eines Computersystems, wobei die vorliegende Erfindung angewandt werden kann.
  • DETAILLIERTE BESCHREIBUNG DER ERFINDUNG
  • Die vorliegende Erfindung schafft eine Anordnung und ein Verfahren zum Erzeugen stereoskopischer 3D Graphiken unter Verwendung eines stereoskopischen Filters. Das stereoskopische Filter ist ein Software-Modul, integriert in dem Operationssystem eines Computersystems und ist vorgesehen zum Abfangen von Funktionsaufrufen zu einer 3D Hardware-Beschleunigungstreiberstufe. Das Filter erzeugt Gesichtspunktdaten für das linke Auge und für das rechte Auge und liefert die Daten zu einer Wiedergabe-Treiberstufe aus, und zwar zur Speicherung in einem Frame-Puffer.
  • Nach einer Ausführungsform der vorliegenden Erfindung aus 2 umfasst das Computersystem 100 Software 40, die ein Operationssystem benutzt wird, das die Durchführung der Applikation 16 unterstützt, und einen Hardwareteil 50, wie nachstehend beschrieben. Das Operationssystem umfasst eine 3D Aufbereitungsmaschine 18, wie oben im Zusammenhang mit der 1 detailliert beschrieben worden ist, zum Erzeugen von Graphiken für die Software-Applikation 16. Insbesondere erzeugt die Applikation 16 Funk tionsaufrufe für die 3D Graphik-Aufbereitungsmaschine 18, auch als Graphik-Modul bezeichnet, über die definierte API des Operationssystems.
  • Die 3D Aufbereitungsmaschine 18 führt Vorgänge durch, die mit Graphiken assoziiert sind und ist in einer Hardware-beschleunigten Aufbereitungsmode konfiguriert. Das heißt, die 3D Aufbereitungsmaschine 18 ist vorgesehen zum Erzeugen von Funktionsaufrufen zu einer Wiedergabe-Treiberstufe. Insbesondere überträgt die 3D Aufbereitungsmaschine 18 Funktionsaufrufen, über ein API, gemeint für die 3D Beschleunigungstreiberstufe 28, welche die Durchführung eines Graphiken-relatierten Vorgangs für ein graphisches Objekt beantragen.
  • Das stereoskopische Filter 26 ist ein Software-Teil und wird von dem OS des Computersystems 100 auf eine Art und Weise entsprechend der Ladung einer herkömmlichen Wiedergabe-Treiberstufe geladen. Das stereoskopische Filter 26 erscheint der 3D Aufbereitungsmaschine 18 als eine herkömmliche Dritte Wiedergabe-Treiberstufe, vorgesehen zum Durchführen der graphischen Vorgänge, die von der 3D Aufbereitungsmaschine 18 aufgerufen worden sind. An sich ist das stereoskopische Filter 26 für die 3D Aufbereitungsmaschine 18 transparent.
  • Die Hardware-Beschleunigungstreiberstufe 28 ist als einzelnes Code-Modul implementiert, das die 3D Aufbereitungsmaschine 18 verlängert. Auf entsprechende Weise läuft sie in dem Kontext der 3D Aufbereitungsmaschine des Operationssystems. Die 3D Beschleunigungstreiberstufe 28 zeigt ebenfalls eine Schnittstelle, über eine Anordnung von Eingangspunkten, die von der 3D Aufbereitungsmaschine 18 des Operationssystems als Routine-Aufruf aufgerufen werden. Das stereoskopische Filter 26 benutzt diese Schnittstelle und benutzt die gleichen Eingangspunkte wie die 3D Beschleunigungstreiberstufe 28.
  • So sind beispielsweise in einem Microsoft Windows Operationssystem die 3D Aufbereitungsmaschine 18 und die 3D Hardware-Beschleunigungstreiberstufe 28 als eine dynamische Kopplungsbibliothek ("dynamic link library", DLL) implementiert worden. An sich hat jedes durchführbare Codemodul Eingangspunkte durchgeführter Funktionen, mit denen ein externer Code gekoppelt werden und aufrufen kann. Durch Implementierung der gleichen erforderlichen Eingangspunkte in dem stereoskopischen Filter 26 benutzt die 3D Aufbereitungsmaschine 18 das stereoskopische Filter 26, als wäre es die herkömmliche OEM-Treiberstufe.
  • Auf entsprechende Weise fängt das stereoskopische Filter 26 die Funktionsaufrufe ab, die für die 3D Hardware-Beschleunigungstreiberstufe 28 gemeint sind und führt mehrere graphische Vorgänge durch, beispielsweise Initialisierungs-, Aufbereitungs- und Modeänderungsaktivitäten. Obschon die 3D Aufbereitungsmaschine zum Erzeugen von Funktionsaufrufen zu der 3D Hardware-Beschleunigungstreiberstufe 28 ausgebildet ist, ist der wirkliche 3D Beschleuniger 30 nicht erforderlich. Das wirkliche 3D Aufbereiten kann in Software dadurch durchgeführt werden, dass zu der 3D Aufbereitungsmaschine 18 zurückgerufen wird um die Anträge in Software zu emulieren. Aber für Illustrationszwecke umfasst die in 2 dargestellte Ausführungsform den 3D Beschleuniger 30.
  • In 2 steuert die 3D Hardware-Beschleunigungstreiberstufe 28 den 3D Beschleuniger 30. Die 3D Beschleunigungstreiberstufe 28 liefert Daten zu dem 3D Beschleuniger in Form von Videodaten und Steuerdaten. Der 3D Beschleuniger umfasst typischerweise einen Frame-Puffer 31 zum Speichern der Videodaten und einen Digital-Analogwandler 32 (DAC) zum Umwandeln der Videodaten in analoge RGB-Signale.
  • Der stereoskopische Filter 26 Software-Vorgang benutzt drei Hauptsätze von Eingangspunkten:
    • 1) Lade-Eingangspunkte – umfassend: das Laden des stereoskopischen Filters 26 durch das Computersystem 100 und andere Initialisierungsaktivitäten, die das einwandfreie Filtern der Anträge von der 3D Aufbereitungsmaschine 18 gewährleisten.
    • 2) Mode-Einstell-Eingangspunkte – diese ermöglichen es, dass eine spezielle stereoskopische Mode eingestellt wird. Dies ändert die Verwaltung des 2D Frame-Puffers 31 von dem einen Gesichtspunkt in einen linken und einen rechten Gesichtspunkt für die stereoskopische Wiedergabe.
    • 3) Laufzeit-Eingangspunkte – umfassend die erforderliche Umwandlung der Objektgeometrie eines einzigen Gesichtspunktes in einen linken und einen rechten Gesichtspunkt in der definierten stereoskopischen Mode.
  • 3 ist ein Flussdiagramm, das die Wirkungsweise des Computersystems 100 nach 2 darstellt. In dem Schritt 60 wird das stereoskopische Filter 26 auf die gleiche Weise wie das Laden einer herkömmlichen Hardware-Beschleunigungstreiberstufe in das Computersystem 100 geladen. So registriert beispielsweise die Installationsprozedur das stereoskopische Filter 26 in der Systemdatei als die 3D Beschleunigungstreiberstufe 28 für das System. Es kann sein, dass eine andere Initialisierung erforderlich ist, und zwar ab hängig von der bestimmten, verwendeten 3D Aufbereitungsmaschine 18. So haben beispielsweise verschiedene 3D Aufbereitungsmaschinen 18 verschiedene Mechanismen zum zu gewährleisten, dass die Maschine immer die Treiberstufe aufruft, in dem vorliegenden Fall das stereoskopische Filter 26, für jede beliebige Aufbereitungsaktivität.
  • Das stereoskopische Filter 26 arbeitet um zu gewährleisten, dass die 3D Aufbereitungsmaschine nicht versucht das Bild unmittelbar in den 2D Frame-Puffer hinein aufzubereiten. Es gibt mehrere Möglichkeiten, wie das stereoskopische Filter 26 dies erledigen kann. So kann beispielsweise das stereoskopische Filter 26 sich selber als durch eine Anordnung verwaltete Oberflächentreiberstufe ausweisen oder als eine völlig beschleunigte Treiberstufe für die 3D Aufbereitungsmaschine 18. Das stereoskopische Filter 26 verarbeitet danach die Geometrie-Funktionsaufrufe von der 3D Aufbereitungsmaschine 18.
  • Die Geometrie-Funktionsaufrufe bilden die 3D Objekte in 2D Pixel in dem Frame-Puffer 31 ab. Das stereoskopische Filter 26 leitet danach die eingegebenen 3D Objekte in das Zuschauermodell zum Erzeugen zweier Ansichten und von dort in neu formatierte 2D Puffer, wie nachstehend detailliert beschrieben wird.
  • Nach dem Laden des stereoskopischen Filters 26 definiert das stereoskopische Filter 26 in dem Schritt 62 eine spezielle stereoskopische Mode in dem Frame-Puffer 31. Für eine gestimmte stereoskopische Mode werden die Gesichtspunkt-Frames für das linke und das rechte Auge in den Frame-Puffer 31 gepackt. Die spezielle Mode kann eine zeilenweise horizontale stereoskopische Mode sein. So stellt in den 4A4C die 4A ein graphisches Objekt das, wie dies in einem herkömmlichen Frame-Puffer gespeichert ist. 4B stellt eine Mode dar, worin der Frame-Puffer die doppelte Länge des herkömmlichen Frame-Puffers hat. In diesem Fall wird der physikalische Frame-Puffer 31 in zwei Frames aufgeteilt und jede Zeile in dem physikalischen Puffer wird aufgeteilt zum Enthalten einer linken und einer rechten Zeile, wie in 4B dargestellt. Auf alternative Weise kann, wenn die Frame-Puffergrößenbeschränkungen es nicht erlauben, dass die wirkliche Länge des Frame-Puffers verdoppelt wird, das linke und das rechte Frame in der X-Richtung komprimiert werden, wie dies in 4C dargestellt ist, und zwar zum Beibehalten der ursprünglichen Frame-Pufferzeilenlänge.
  • Auf alternative Weise kann die stereoskopische Mode eine Frame-weise vertikale stereoskopische Mode sein. So stellt beispielsweise in den 5A5C die 5A ein graphisches Objekt dar, wie dies in einem herkömmlichen Frame-Puffer gespeichert ist. 5B stellt eine Mode dar, worin der Frame-Puffer der doppelten Höhe des herkömmlichen Frame-Puffers entspricht. In diesem Fall wird der physikalische Frame-Puffer 31 in zwei Gebiete aufgeteilt. Die obere Hälfte hält das Frame für das linke Auge (oder das Frame für das rechte Auge) und die untere Hälfte hält das Frame für das rechte Auge (oder das Frame für das linke Auge), wie dies in 5B dargestellt ist. Auf alternative Weise kann, wenn die Größenbegrenzungen des Frame-Puffers 31 es nicht erlauben, dass die wirkliche Höhe des Frame-Puffers verdoppelt wird, das linke und das rechte Frame in der Y-Richtung komprimiert werden, wie dies in 5C dargestellt ist, und zwar zum Beibehalten der ursprünglichen Frame-Puffer-Spaltengröße.
  • Andere bekannte stereoskopische Moden, die ein linkes und ein rechtes Bild halten, können ebenfalls in dem stereoskopischen Filter 26 implementiert werden, und zwar abhängig von der betreffenden verwendeten stereoskopischen Wiedergabeanordnung 34. Der Digital-Analogwandler (DAC) 32, der typischerweise in dem 3D Beschleuniger 30 untergebracht ist, tastet den Frame-Puffer 31 ab und erzeugt ein analoges Videosignal, das aus dem linken Frame mit dem nachfolgenden rechten Frame besteht. Die stereoskopische Wiedergabeanordnung 34 decodiert das analoge Signal und extrahiert das separate Bild aus dem Signal.
  • Da die Konfiguration des Frame-Puffers 31 durch das stereoskopische Filter 26 geändert werden kann, kann mehr Speicherraum oder anderer Speicherraum erforderlich sein. Das stereoskopische Filter 26 ist derart ausgelegt, dass es eine Mode definiert, die eine Speicherkapazität hat, die den Anforderungen entspricht. In dem Schritt 64 wird die Laufzeitstufe des stereoskopischen Filters 26 durchgeführt. Das heißt, das stereoskopische Filter 26 fängt den Geometrieantrag von der 3D Aufbereitungsmaschine 18 ab. In einem Ausführungsbeispiel wie oben beschrieben kann das stereoskopische Filter 26 sich selber als eine von einer Anordnung verwaltete Treiberstufe ausweisen zum Eliminieren direkter Eingaben in den Frame-Puffer 31, wird die 3D Aufbereitungsmaschine 18 nicht versuchen, unmittelbar in den Puffer 31 zu emulieren und das stereoskopische Filter 26 zu umgehen.
  • Das stereoskopische Filter 26 empfängt die Aufbereitungsanträge von der 3D Aufbereitungsmaschine 18. Die 3D Aufbereitungsmaschine 18 versieht typischerweise die Aufbereitungsanträge mit 3D Objekten, dargestellt als Argumente. Die speziellen Einzelheiten, wie die 3D Daten codiert werden, variieren zwischen den verschiedenen Maschinenimplementierungen. Jede 3D Maschine soll aber ihre atomare 3D Geometrieterminolo gie definieren, da dies die Bausteine für die 3D Szene sind. Bekannte gemeinsame 3D Objektdarstellungen benutzen Punkte in dem Raum, die Polygone darstellen, meistens Dreiecke, welche die Objektoberfläche zusammensetzen zum Bilden eines 3D Objektes.
  • Daraufhin modifiziert in dem Schritt 66 das stereoskopische Filter 26 die 3D Objekt-Geometrieanträge dadurch, dass Geometriewerte für jedes Auge erzeugt werden. Jedes 3D Objekt in der Szene wird durch einen Zuschauermodell-Algorithmus in dem stereoskopischen Filter 26 modifiziert, und zwar zum Reflektieren einer Projektion von einem anderen Punkt in dem Raum.
  • Die vorliegende Erfindung wird im Zusammenhang mit einer Zuschauermodell-Darstellung eines 3D Objektes in Bezug auf die schlussendlichen Aufbereitungsgesichtspunkte beschrieben. Es gibt viele mögliche Zuschauermodelle, die in dem stereoskopischen Filter 26 implementiert werden können. Jedes betreffende Zuschauermodell betont andere Aspekte der 3D Tiefenperzeption und modelliert andere Kopf- und Augenkonfigurationen. In den nachfolgenden Beschreibung werden nur die Eingänge, die für das stereoskopische Filter erforderlich sind, und die Ausgänge davon beschrieben, damit die vorliegende Erfindung nicht unnötig verwickelt gemacht wird. Gegeben die hier beschriebenen Aufgaben können die betreffenden Einzelheiten der Zuschauermodell-Verarbeitung auf einfache Weise implementiert werden, und zwar auf Basis der spezifischen verwendeten 3D Aufbereitungsmaschine 18, sowie auf Basis anderer Systembegrenzungen.
  • In der Zuschauermodellverarbeitung wird jedes 3D Objekt in zwei Instanzen oder Gesichtspunkte getrennt, und zwar einen linken und einen rechten Gesichtspunkt. Die gegebene Zielprojektionsebene der 3D Geometrie wird durch zwei neue Projektionsebenen ersetzt, für jedes Auge eine. Die genaue Beziehung der 3D Stelle der neuen Ebenen zu der ursprünglichen Projektionsebene ist das Zuschauermodell. Die speziellen Einzelheiten des Zuschauermodells sind abhängig von der Geometriedarstellung der OS 3D Aufbereitungsmaschinendarstellung und von der An und Weise, wie die 3D Aufbereitungsmaschine 18 die Ziel 2D Aufbereitungsebene spezifiziert.
  • So ersetzt beispielsweise bei einem System, das die 3D Szene in eine Projektion eines Punktes in dem Raum aufbereitet, die Zuschauermodelldarstellung des stereoskopischen Filters 26 den Aufbereitungsantrag von der 3D Aufbereitungsmaschine 18 durch zwei verschiedene Aufbereitungsanträge zu der 3D Beschleunigungstreiberstufe 30.
  • Die 6A6B illustrieren die 3D Aufbereitung, wobei eine normale Gesichtspunktaufbereitung angewandt wird, und zwar ohne das stereoskopische Filter und die 7A7C illustrieren die Gesichtspunktaufbereitung, wobei das stereoskopische Filter 26 verwendet wird. Wie in 7C dargestellt, verlagert das stereoskopische Filter 26 den beantragten Gesichtspunkt nach links für den linken Gesichtspunkt und ordnet das Ergebnis dem linken Frame in dem Frame-Speicher 31 zu. Die zweiten Anträge behandeln den rechten Gesichtspunkte auf gleiche Weise. In dem Zuschauermodell des stereoskopischen Filters 26 erzeugen nur Gesichtspunktaufbereitungsanträge zwei Gesichtspunkte, einen für jedes Auge, und die resultierenden Augen-Frames werden in dem Frame-Puffer 31 gespeichert.
  • Auf alternative Weise wird in einer Festpunkt-Aufbereitungsmaschine die Szene immer in die XY-Ebene aufbereitet, wobei die Geometrie in der XYZ-kartesischen Raum ist und jeder Punkt in der Szene verschoben wird zum Darstellen eines linken Gesichtspunktes und auch für den rechten Gesichtspunkt. Die genaue Verschiebung ist abhängig von der Lage der Augen in dem Raum.
  • Es sind andere Modelle bekannt, die benutzt werden können zum Erzeugen physikalischer Gesichtspunkte für 3D Objekte in dem Raum. Für Erläuterungszwecke ist die nachfolgende Zuschauermodelltransformation ein Beispiel, das Verarbeitungsschritte durch das stereoskopische Filter 26 zeigt. In dem Beispiel wird das Modell abgestimmt auf einen Fall, in dem die 3D Aufbereitungsmaschine eine Aufbereitung der 3D Objekte aus der XYZ-Darstellung in die XY-Ebene beantragt.
  • 8 zeigt eine Modelldarstellung eines virtuellen Augenbrennpunktes. Gegeben die Breite und die Höhe der Ziel-2D-Ebene W × H, wird der Punkt in dem Raum an der Stelle n, wie in 8 dargestellt, derart gesetzt, dass er weit genug entfernt ist von der Projektionsebene und in der Mitte der Ziel-XY-Ebene. Dieser Punkt, h, emuliert den Augenbrennpunkt. Zum Schaffen eines einzelnen linken und rechten Bildes wird der Augenbrennpunkt nach links und nach rechts verlagert und das stereoskopische Filter 26 verlagert die XYZ-Stelle des 3D Objektes gegenüber dem verlagerten Punkt.
  • Der Brennpunkt wird in der Richtung der X-Achse um den betrag d verlagert. Die Koordinaten für das linke Auge werden (W/2 – d, H/2, h) und (W/2 + d, H/2, h) für das rechte Auge. Das stereoskopische Filter 26 benutzt dann den neuen Brennpunkt zum Erzeugen eines neuen Koordinatensystems X'Y'Z', wie in 9 dargestellt, das die Y- Achse mit dem ursprünglichen XYZ-Koordinatensystem teilt, wird aber um den Winkel α in Richtung des neuen Brennpunktes versetzt zum abermaligen Speichern der zentralen Lage W/2 auf der X'-Achse und H/2 auf der Y-Achse. Für den neuen Gesichtspunkt wird das umgewandelte 3D Objekt in dem neuen Koordinatensystem X'Y'Z' dargestellt und in den Gesichtspunkt 2D Puffer aufbereitet.
  • Obschon das obenstehende Modell durch die Parameter h und d definiert wurde, welche die Tiefenperzeption des Zuschauers profilieren, kann das stereoskopische Filter 26 das Modell allein auf Basis der Kippwinkels α parameterisieren.
  • 10 erläutert eine Draufsicht der linken Projektionsebene aus 9. Weil das neue X'Y'Z'-Koordinatensystem die Y-Achse mit dem ursprünglichen Koordinatensystem teilt sind die Y-Werte des 3D Punktes nach wie vor dieselben. Aus 10 werden die nachfolgenden Gleichungen in Bezug auf α definiert:
    • i) sinα = k/(z + 1) = 1/(x' + k)
    • ii) cosα = z'/(z + 1) = x/(x' + k)
    • iii) tanα = 1/x = k/z'
  • Aus der Gleichung iii), 1 = xtanα und aus der Gleichung ii) z' = (z + 1)cosα = (z + xtanα)cosα = zcosα + xsinα. Weiterhin aus der Gleichung iii) k = z'tanα = zsinα + xsinαtanα und aus der Gleichung ii) x' = (x – kcosα)/cosα = x/cosα – k = x(1/cosα – sinαsinα/cosα) – zsinα = xcosα – zsinα. Unter Anwendung der obengenannten Gleichungen erhält das stereoskopische Filter 26 die nachfolgenden neuen Koordinaten für den linken Gesichtspunkt:
    • iv) x' = xcosα – zsinα, z' = zcosα + xsinα, und y' = y
  • Das stereoskopische Filter 26 berechnet danach das rechte Bild für den gleichen Punkt durch Spiegelung der Ergebnisse aus dem linken Gesicht. Das heißt, das stereoskopische Filter 26 spiegelt den Punkt nach links, von (x, y, z) nach (W – x, y, z). Danach berechnet das stereoskopische Filter 26 den linken Wert für den Punkt, und zwar unter Anwendung der oben stehenden Gleichung iv) Transformation. Zum Schluss spiegelt das stereoskopische Filter den resultierenden Punkt wieder zurück nach rechts, aus (x', y', z') zu (W – x', y', z').
  • Nach der Berechnung des linken und des rechten Wertes für den Punkt verlagert das stereoskopische Filter den linken und den rechten Punkt zu ihrer richtigen Stelle in der stereoskopischen Mode. Die Transformationseinzelheiten sind abhängig von dem genauen Format des Frame-Puffers 31 in der stereoskopischen Mode, die durch das stereoskopische Filter 26 eingestellt wird, wie oben beschrieben. Wenn beispielsweise die horizontale Mode mit derselben Pufferlänge wie in 4B verwendet wird, platziert das stereoskopische Filter das linke Gesicht in die linke Hälfte des ursprünglichen Frame-Puffers und das linke Bild in die rechte Hälfte. Auf diese Weise würde der linke Punk (x', y', z') nach (x'/2, y', z') verlagern, während ein rechter Punkt nach (W/2 + x'/2, y', z') verlagert werden würde. Andere Moden würden den Y-Wert mit oder ohne Maßstab ändern. Zum Schluss leitet das stereoskopische Filter 26 die neue Geometrie in die Aufbereitungsstufe in der 3D Beschleunigungstreiberstufe 28.
  • In 3 richtet in dem Schritt 68, nachdem die Daten des Gesichtspunktes des linken und des rechten Auges erzeugt worden sind, das stereoskopische Filter 26 das 3D Objekt zu der 3D Beschleunigungstreiberstufe 28 zum Aufbereiten des Objektes für das linke Auge in das linke Frame und des Objektes für das rechte Auge in das rechte Frame in dem Frame-Puffer 31. Der 2D Inhalt wird dupliziert um in dem linken sowie in dem rechten Frame-Puffer zu erscheinen.
  • Danach speichert in dem Schritt 70 die 3D Beschleunigungstreiberstufe die Objektdaten in den Frame-Puffer 31 entsprechend der stereoskopischen Mode, die vorher eingestellt wurde, die Objektdaten in dem Frame-Puffer 31. In dem Schritt 72 liefert der DAC 32 analoge RGB-Signale zu der stereoskopischen Wiedergabeanordnung 34. Die speziellen Implementierungseinzelheiten der stereoskopischen Wiedergabeanordnung 34 variieren abhängig von der verwendeten Anordnung. Die stereoskopische Wiedergabeanordnung 34 ist aber entworfen worden zum Erzeugen eines realistischen stereoskopischen Effektes in dem Kopf des Zuschauers, gegeben, dass die zwei Frames einwandfrei verlagert worden sind zum Übereinstimmen mit dem Abstand zwischen den Augen.
  • So kann beispielsweise eine am Kopf getragene Wiedergabeanordnung verwendet werden, die für jedes Auge einen einzelnen Monitor hat. Bei dieser An von Wiedergabeanordnung wird das RGB-Signal moduliert zum Schaffen eines Effektes, das Tiefe simulierte.
  • Auf alternative Weise kann auch eine Projektionssystem-Wiedergabeanordnung verwendet werden, die zwei Bilder projiziert. Bei einer derartigen Wiedergabeanordnung benutzt der Zuschauer eine spezielle Brille, die das eine Bild absperrt und das andere Bild zu dem Auge durchlässt, wodurch jedem Auge ein anderes Bild zugeführt wird. Eine gemeinsame Implementierung benutzt eine andere Farbe oder eine Polarisierung mit Farb- oder Polarisationsfiltern auf der Brille.
  • Auf jeden Fall kann das stereoskopische Filter 26 mit jeder beliebigen Wiedergabeanordnung benutzt werden, da der RGB-Videosignalausgang von DAC 32 erzeugt wird zum Erfüllen von Industrie-Normen.
  • Obenstehend ist ein Verfahren und eine Anordnung beschrieben worden zum Erzeugen stereoskopischer 3D Bilder für graphische Objekte unter Anwendung einer Hardware-beschleunigten Aufbereitungsarchitektur. Das Computersystem 100 nach 2 kann beispielsweise als ein PC auf Pentium-Basis implementiert werden, wobei ein Windows 9x oder Windows NT Operationssystem von Microsoft Corporation verwendet wird. Das stereoskopische Filter beschränkt sich aber nicht auf die Verwendung eines speziellen Operationssystems. So ist beispielsweise 11 ein vereinfachtes Blockschaltbild eines Computersystems 200, nach dem eine Ausführungsform der vorliegenden Erfindung implementiert werden kann. Das Computersystem 200 umfasst einen Bus 210 oder ein anderes Kommunikationsmedium zum Kommunizieren von Information und einen Prozessor 202 der mit dem Bus 210 zum Verarbeiten von Information gekoppelt ist. Das Computersystem 200 umfasst weiterhin einen RAM oder eine andere dynamische Speicheranordnung 204 (als Hauptspeicher bezeichnet), der mit dem Bus 210 gekoppelt ist zum Speichern von Information und von Instruktionen, die von dem Prozessor 202 durchgeführt werden müssen. Der Hauptspeicher 204 kann ebenfalls zur Speicherung vorübergehender Variablen oder anderer Zwischeninformation während der Durchführung von Instruktionen von dem Prozessor 202 verwendet werden. Das Computersystem 200 umfasst ebenfalls einen ROM und/oder eine andere statische Speicheranordnung 206, die mit dem Bus 210 gekoppelt ist zum Speichern statischer Information und Instruktionen für den Prozessor 202. Eine Datenspeicheranordnung 208, wie eine Magnetscheibe oder eine optische Platte und der entsprechende Plattenspieler können mit dem Bus 210 gekoppelt sein zum Speichern von Information und von Instruktionen.
  • Auf vorteilhafte Weise kann das stereoskopische Filter nach der vorliegenden Erfindung derart konfiguriert werden, dass es mit jeder beliebigen 3D Aufbereitungsmaschine zusammenarbeiten kann, wie OpenGL oder Direct3D von Microsoft Corporation. Aber mit einer bestimmten 3D Aufbereitungsmaschine soll eine spezifische stereoskopische Filterimplementierung verwendet werden, da die Schnittstelle mit spezifischen Schnittstellenpunkten der Aufbereitungsmaschine zusammenarbeitet. Weiterhin beschränkt sich das stereoskopische Filter 26 nicht darauf, dass es mit jeder bestimmten 3D Beschleunigungstreiberstufe verwendet wird, da die Kommunikation zwischen dem Filter und der Beschleunigungstreiberstufe über dieselbe veröffentlichte API läuft.
  • Zusätzlich kann das stereoskopische Filter auf vorteilhafte Weise mit jedem beliebigen fremden 3D Beschleuniger oder Video-Adapter verwendet werden. Das stereoskopische Filter ist derart konfiguriert, dass es die stereoskopische Mode auf Basis der wirklich verwendeten Anordnung einstellt. Weiterhin ist das stereoskopische Filter mit jeder beliebigen stereoskopischen Wiedergabeanordnung verwendbar, welche die stereoskopische Mode unterstützt. Ein weiterer Vorteil der vorliegenden Erfindung ist, dass OS Software und fremde Elemente nicht geändert zu werden brauchen um mit dem stereoskopischen Filter zusammenzuarbeiten, wodurch viel Zeit und Kosten, assoziiert mit der Anpassung der jeweiligen Software und Hardware-Elemente, gespart wird.
  • Ein wichtiger Aspekt der vorliegenden Erfindung in Bezug auf das oben beschriebene Zuschauermodell ist die Möglichkeit, den Gesichtspunkt des Zuschauers zu jeder beliebigen Stelle in dem 3D Raum zu ändern. Der Benutzter steuert dann das stereoskopische Filter, damit er imstande ist, innerhalb der Szene sich zu verlagern, und zwar auf eine An und Weise, die unabhängig ist von dem 3D Inhalt auf dem Applikationspegel. Auf diese Weise steigert die vorliegende Erfindung den Steuersinn des Benutzers. Weiterhin steigert dies auch den Rahmen der Interaktivität mit dem eintreffenden 3D Inhalt. Ein Problem bei der Änderung des Gesichtspunktes ist, dass die 3D Aufbereitungsmaschine das 3D Geometriemodell optimieren kann, beispielsweise in Termen erforderlicher Berechnungen, durch Zentrierung auf einen bestimmten Gesichtspunkt. Diese Annäherung eliminiert Einzelheiten, die von diesem spezifischen Gesichtspunkt aus nicht sichtbar sind. Dies kann verschiedene Einzelheitpegel umfassen, und zwar abhängig von dem Abstand von dem Gesichtspunkt, sowie die Eliminierung von Polygonen, die in Gebieten mit versteckter Fläche zurückbleiben. Im Grunde können 3D Aufbereitungsmaschinen, die 3D Modelle völlig aufbereiten, durch das 3D Filter nach der vorliegenden Erfindung manipuliert werden und den Gesichtspunkt unabhängig von der Applikation ändern, ohne dass Artefakte erzeugt werden.
  • Ein zusätzlicher Aspekt der vorliegenden Erfindung ist, dass das stereoskopische Filter verallgemeinert werden kann zum Schaffen mehrerer (zweier oder mehr) Bilder auf Basis desselben 3D Inhaltes, aber aufbereitet aus verschiedenen Gesichtspunkten. Im Grunde werden dann die oben anhand der Formeln i)–iv) beschriebenen Berechnungen durch andere Annäherungen ersetzt. So erzeugt beispielsweise in einer Software-Applikation für mehrere Benutzer, beispielsweise ein Videospiel, wobei verschiedene Benutzer als Team in einer virtuellen Umgebung vor demselben Objekt arbeiten, das Filter verschiedene Bilder aus dem Objekt, und zwar auf Basis des einzigen 3D Inhaltes und auf Basis der verschiedenen Gesichtspunkten. Die für jeden einzelnen Benutzer erzeugten Bilder können, aber brauchen nicht, von stereoskopischer An sein. So können beispielsweise die Bilder viele monokulare Bilder sein.
  • Es sei bemerkt, dass es mehrere Möglichkeiten gibt die Datentransformationen, die durch das Filter in der stereoskopischen Betriebsart durchgeführt werden, zu implementieren. Eine An und Weise ist, Bilder für das linke Auge und Bilder für das rechte Auge dadurch zu erzeugen, dass die oben beschriebenen Transformationen durchgeführt werden, d. h. das Finden des neuen Brennpunktes und das Erzeugen zweier verschiedener Bilder, die eines des anderen Spiegelbild sind. Auf alternative Weise kann das Brennpunktbild als das Bild für das linke (oder rechte) Auge genommen werden und eine Version davon, die horizontal über einen Abstand W verschoben worden ist, wird als Bild für das rechte (oder linke) Auge genommen.
  • In dieser Beschreibung sind nur bestimmte bevorzugte Ausführungsformen beschrieben und dargestellt worden, aber, wie oben erwähnt, dürfte es einleuchten, dass die vorliegende Erfindung in mehreren Kombinationen und Umgebungen angewandt werden kann und dass im Rahmen der vorliegenden Erfindung Änderungen oder Modifikationen durchaus möglich sind.

Claims (14)

  1. Verfahren zum Computer Erzeugen von 3D Daten für ein graphisches Objekt, wobei dieses Verfahren die nachfolgenden Verfahrensschritte umfasst: – das in einem 3D Aufbereitungsmodul (18) Erzeugen eines Funktionsaufrufantrags für einen 3D Aufbereitungsvorgang für ein graphisches Objekt, – das durch ein Filter (26) Empfangen des Funktionsaufrufantrags; und – das in dem Filter Erzeugen einer Anzahl Gesichtspunktdaten für das 3D graphische Objekt.
  2. Verfahren nach Anspruch 1, das die nachfolgenden Verfahrensschritte umfasst: – das in dem Filter Erzeugen (66) Gesichtspunktdaten für das linke Auge für das 3D graphische Objekt; und – das Übertragen (68) von Gesichtspunktdaten für das linke Auge und für das rechte Auge zu einer Wiedergabetreiberstufe (28).
  3. Verfahren nach Anspruch 2, umfassend: das Speichern (70) der Gesichtspunktdaten für das linke Auge und für das rechte Auge in dem Framepuffer (31).
  4. Verfahren nach Anspruch 3, umfassen: das Aufteilen jeder Zeile in dem Framepuffer in zwei Gebiete: und zwar ein erstes Gebiet zum Speichern der Daten für das linke Auge und ein zweites Gebiet zum Speichern der Daten für das rechte Auge (4B, 4C).
  5. Verfahren nach Anspruch 3, umfassend: das Aufteilen des Framepuffers in ein oberes Gebiet und ein unteres Gebiet, wobei das eine Gebiet Daten für das linke Auge speichert und das andere Gebiet Daten für das rechte Auge speichert (5B, 5C).
  6. Verfahren nach Anspruch 2, wobei der Verfahrensschritt der Erzeugung der Gesichtspunktdaten für das linke und das rechte Auge Folgendes umfasst: – das Empfangen von Aufbereitungsanträgen aus dem 3D Aufbereitungsmodul mit 3D Objekten als Argumente; und – das Substituieren einer bestimmten Zielprojektionsebene durch zwei Projektionsebenen, und zwar auf Basis einer Zuschauermodelleingabe (7B, 7C).
  7. Verfahren nach Anspruch 7, wobei die Zuschauermodelleingabe auf der Darstellung des 3D Aufbereitungsmoduls der 3D Objektgeometrie und der Darstellung der Ziel-2D Aufbereitungsebene (10).
  8. Verfahren nach Anspruch 1, wobei dieses Verfahren weiterhin das Konfigurieren des Filters als Hardware beschleunigte Treiberstufe zum Erzeugen eines Ausgangs zu einem Framepuffer umfasst.
  9. Computersystem (100) zum Erzeugen graphischer Daten, wobei dieses System die nachfolgenden Elemente umfasst: – ein graphisches Modul (18), konfiguriert zum Erzeugen graphischer Daten für eine Software Applikation, durchgeführt durch das Computersystem, wobei das graphische Modul konfiguriert ist zum Übertragen von Funktionsaufrufen, die eine Durchführung von 3D graphischen Vorgängen beantragen; – ein Filter (26), konfiguriert zum Empfangen der Funktionsaufrufe und zum Erzeugen einer Anzahl Gesichtspunktdaten eines graphischen Objektes; und – eine Wiedergabetreiberstufe (28), konfiguriert zum Empfangen der Anzahl Gesichtspunktdaten.
  10. Computersystem nach Anspruch 9, wobei der Filter konfiguriert ist zum Erzeugen (66) von Gesichtspunktdaten des graphischen Objektes für das linke Auge und Gesichtspunktdaten für das rechte Auge.
  11. Computersystem nach Anspruch 10, wobei das Filter für die nachfolgenden Vorgänge konfiguriert ist: – das Empfangen von Aufbereitungsanträgen von dem graphischen Modul mit 3D Objekten als Argumente; und – das Substituieren einer bestimmten Zielprojektionsebene durch zwei Projektionsebenen, und zwar auf Basis einer Zuschauermodelleingabe (10).
  12. Computersystem nach Anspruch 11, wobei die Zuschauermodelleingabe auf der Darstellung der 3D Objektgeometrie des graphischen Moduls und auf der Darstellung der Ziel-2D Aufbereitungsebene gründet (10).
  13. Computerlesbares Medium (208), auf dem eine Anzahl Sequenzen von Instruktionen gespeichert sind, wobei die genannte Anzahl Sequenzen von Instruktionen Sequenzen von Instruktionen enthalten, die, wenn von dem Computer durchgeführt, dafür sorgen, dass der Prozessor die nachfolgenden Vorgänge durchführt: – das Empfangen eines Funktionsaufrufs, erzeugt von einem 3D Aufbereitungsmodul (18), wobei eine 3D Wirkung für ein graphisches Objekt beantragt wird; und – das Erzeugen einer Anzahl Gesichtspunktdaten für das graphische Objekt.
  14. Computerlesbares Medium nach Anspruch 13, wobei die genannte Anzahl Sequenzen mit Instruktionen dafür sorgen, dass der Prozessor die nachfolgenden Vorgänge durchführt: – das Erzeugen (66) von Gesichtspunktdaten für das linke Auge und von Gesichtspunktdaten für das rechte Auge; und – das Übertragen (68) von Gesichtspunktdaten für das linke und das rechte Auge zu einer Wiedergabetreiberstufe.
DE69912576T 1998-06-30 1999-06-14 Filter zum transformieren von 3d-daten in einer hardware beschleunigten architektur Expired - Lifetime DE69912576T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/107,918 US6496183B1 (en) 1998-06-30 1998-06-30 Filter for transforming 3D data in a hardware accelerated rendering architecture
US107918 1998-06-30
PCT/IB1999/001104 WO2000000934A2 (en) 1982-08-31 1999-06-14 Filter for transforming 3d data in a hardware accelerated rendering architecture

Publications (2)

Publication Number Publication Date
DE69912576D1 DE69912576D1 (de) 2003-12-11
DE69912576T2 true DE69912576T2 (de) 2004-08-19

Family

ID=22319158

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69912576T Expired - Lifetime DE69912576T2 (de) 1998-06-30 1999-06-14 Filter zum transformieren von 3d-daten in einer hardware beschleunigten architektur

Country Status (7)

Country Link
US (1) US6496183B1 (de)
EP (1) EP1038271B1 (de)
JP (1) JP4364436B2 (de)
KR (1) KR100637612B1 (de)
CN (1) CN1143244C (de)
DE (1) DE69912576T2 (de)
TW (1) TW514836B (de)

Families Citing this family (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7159041B2 (en) * 2000-03-07 2007-01-02 Microsoft Corporation Method and system for defining and controlling algorithmic elements in a graphics display system
JP3841630B2 (ja) * 2000-08-29 2006-11-01 オリンパス株式会社 画像取り扱い装置
US20020154214A1 (en) * 2000-11-02 2002-10-24 Laurent Scallie Virtual reality game system using pseudo 3D display driver
US6874150B2 (en) * 2001-03-01 2005-03-29 Microsoft Corporation Method and system for maintaining connections between surfaces and objects in a graphics display system
US6828975B2 (en) 2001-03-01 2004-12-07 Microsoft Corporation Method and system for managing graphics objects in a graphics display system
US7219352B2 (en) * 2002-04-15 2007-05-15 Microsoft Corporation Methods and apparatuses for facilitating processing of interlaced video images for progressive video displays
JP4718763B2 (ja) * 2002-04-15 2011-07-06 マイクロソフト コーポレーション ビデオ・レンダラーとグラフィックス・デバイス・ドライバの間の相互作用を促進すること
US7451457B2 (en) * 2002-04-15 2008-11-11 Microsoft Corporation Facilitating interaction between video renderers and graphics device drivers
WO2004061544A2 (en) * 2002-11-29 2004-07-22 Bracco Imaging, S.P.A. Method and system for scaling control in 3d displays
US6862530B2 (en) * 2003-04-11 2005-03-01 Schlumberger Technology Corporation System and method for visualizing multi-scale data alongside a 3D trajectory
US7643675B2 (en) * 2003-08-01 2010-01-05 Microsoft Corporation Strategies for processing image information using a color information data structure
US7158668B2 (en) * 2003-08-01 2007-01-02 Microsoft Corporation Image processing using linear light values and other image processing improvements
JP4841250B2 (ja) * 2003-12-19 2011-12-21 ティディヴィジョン コーポレイション エス.エー. デ シー.ヴィ. 3dビデオゲーム・システム
JP2007525907A (ja) 2004-02-27 2007-09-06 ティディヴィジョン コーポレイション エス.エー. デ シー.ヴィ. 立体3dビデオイメージディジタルデコーディングのシステムおよび方法
WO2006114898A1 (en) * 2005-04-25 2006-11-02 Yappa Corporation 3d image generation and display system
KR100932977B1 (ko) * 2005-07-05 2009-12-21 삼성모바일디스플레이주식회사 입체 영상 표시 장치
KR100898287B1 (ko) 2005-07-05 2009-05-18 삼성모바일디스플레이주식회사 입체 영상 표시 장치
KR100913173B1 (ko) * 2005-07-05 2009-08-19 삼성모바일디스플레이주식회사 3d 그래픽 처리장치 및 이를 이용한 입체영상 표시장치
US7505170B2 (en) * 2005-07-13 2009-03-17 Microsoft Corporation Conversions between spool files and PDL within a pipeline of modular filters
US8279221B2 (en) * 2005-08-05 2012-10-02 Samsung Display Co., Ltd. 3D graphics processor and autostereoscopic display device using the same
WO2007064280A1 (en) * 2005-12-01 2007-06-07 Swiftfoot Graphics Ab Computer graphics processor and method for rendering a three-dimensional image on a display screen
US8284204B2 (en) * 2006-06-30 2012-10-09 Nokia Corporation Apparatus, method and a computer program product for providing a unified graphics pipeline for stereoscopic rendering
CN101105746B (zh) * 2006-07-14 2010-05-12 联想(北京)有限公司 采用过滤驱动获取图形设备接口调用的方法
CN101286225B (zh) * 2007-04-11 2010-10-06 中国科学院自动化研究所 一种基于三维纹理硬件加速的海量数据体绘制方法
US8279222B2 (en) * 2008-03-14 2012-10-02 Seiko Epson Corporation Processing graphics data for a stereoscopic display
US8817054B1 (en) * 2008-05-13 2014-08-26 Google Inc. Methods and systems for rendering in a multi-process browser using a shared memory area
USD603445S1 (en) 2009-03-13 2009-11-03 X6D Limited 3D glasses
USD666663S1 (en) 2008-10-20 2012-09-04 X6D Limited 3D glasses
USD624952S1 (en) 2008-10-20 2010-10-05 X6D Ltd. 3D glasses
USRE45394E1 (en) 2008-10-20 2015-03-03 X6D Limited 3D glasses
CA2684513A1 (en) 2008-11-17 2010-05-17 X6D Limited Improved performance 3d glasses
US8542326B2 (en) 2008-11-17 2013-09-24 X6D Limited 3D shutter glasses for use with LCD displays
USD646451S1 (en) 2009-03-30 2011-10-04 X6D Limited Cart for 3D glasses
USD650956S1 (en) 2009-05-13 2011-12-20 X6D Limited Cart for 3D glasses
USD672804S1 (en) 2009-05-13 2012-12-18 X6D Limited 3D glasses
USD692941S1 (en) 2009-11-16 2013-11-05 X6D Limited 3D glasses
USD669522S1 (en) 2010-08-27 2012-10-23 X6D Limited 3D glasses
USD671590S1 (en) 2010-09-10 2012-11-27 X6D Limited 3D glasses
USD662965S1 (en) 2010-02-04 2012-07-03 X6D Limited 3D glasses
KR101085676B1 (ko) * 2010-04-21 2011-11-22 김성도 단안식 3d영상촬영장치 및 3d카메라
US9053562B1 (en) 2010-06-24 2015-06-09 Gregory S. Rabin Two dimensional to three dimensional moving image converter
USD664183S1 (en) 2010-08-27 2012-07-24 X6D Limited 3D glasses
US9578299B2 (en) * 2011-03-14 2017-02-21 Qualcomm Incorporated Stereoscopic conversion for shader based graphics content
KR101227183B1 (ko) * 2011-03-22 2013-01-28 주식회사 넥서스칩스 3d 그래픽 모델 입체 렌더링 장치 및 입체 렌더링 방법
JP5770018B2 (ja) * 2011-06-03 2015-08-26 任天堂株式会社 表示制御プログラム、表示制御装置、表示制御方法及び表示制御システム
CN102681849A (zh) * 2012-05-07 2012-09-19 禹芙蓉 手持移动终端的数字时间3d显示方法
USD711959S1 (en) 2012-08-10 2014-08-26 X6D Limited Glasses for amblyopia treatment
US9992021B1 (en) 2013-03-14 2018-06-05 GoTenna, Inc. System and method for private and point-to-point communication between computing devices
US9875573B2 (en) 2014-03-17 2018-01-23 Meggitt Training Systems, Inc. Method and apparatus for rendering a 3-dimensional scene
CN104200520B (zh) * 2014-08-29 2017-05-10 杭州易上弘网络技术有限公司 一种基于部件模型组合的三维云渲染方法及三维云渲染系统
US20180300840A1 (en) * 2017-04-17 2018-10-18 Joydeep Ray Display link compression by render engine

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1993022699A1 (en) * 1992-04-24 1993-11-11 Depth Enhancement Inc Three-dimensional visualization by altered multiple two-dimensional perspective imagery
DE4416935C2 (de) * 1994-05-13 1996-03-14 Terlutter Rolf Dr Verfahren zum Erzeugen räumlich wirkender Bilder
JP4392060B2 (ja) * 1995-12-19 2009-12-24 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 視差深度依存画素シフト
US5867210A (en) 1996-02-09 1999-02-02 Rod; Samuel R. Stereoscopic on-screen surgical microscope systems
DE69730565T2 (de) * 1996-06-26 2005-02-03 Matsushita Electric Industrial Co., Ltd., Kadoma Gerät zur Erzeugung eines stereoskopischen bewegenden Bildes mittels Computergraphik

Also Published As

Publication number Publication date
KR100637612B1 (ko) 2006-10-24
US6496183B1 (en) 2002-12-17
JP4364436B2 (ja) 2009-11-18
JP2002519792A (ja) 2002-07-02
DE69912576D1 (de) 2003-12-11
TW514836B (en) 2002-12-21
EP1038271A2 (de) 2000-09-27
EP1038271B1 (de) 2003-11-05
CN1143244C (zh) 2004-03-24
KR20010023290A (ko) 2001-03-26
CN1277698A (zh) 2000-12-20

Similar Documents

Publication Publication Date Title
DE69912576T2 (de) Filter zum transformieren von 3d-daten in einer hardware beschleunigten architektur
DE19646194B4 (de) Echtzeit-Wiedergabeverfahren zum wahlweisen Ausführen von Bump-Mapping- und Phong-Schattierungs-Prozessen und zugehörige Vorrichtung
DE69127915T2 (de) System und Verfahren von Prioritätsfarbabbildung
DE112007002991B4 (de) Computergraphikschattenvolumen unter Verwendung von hierarchischem Okklusions-Culling
DE3689271T2 (de) Verfahren zur Bildanzeige.
DE68919867T2 (de) Stereoskopisches Graphik-Anzeigesystem mit mehreren Fenstern zur Darstellung von Mehrfachbildern.
DE19953595B4 (de) Verfahren und Vorrichtung zur Verarbeitung dreidimensionaler Bilder
DE102020110662A1 (de) Simultane positionsbestimmung und kartenerstellung (slam) für mehrere benutzer
DE60300788T2 (de) Bild mit Feldtiefe aus Z-Pufferbilddaten und Alphamischung
DE3873792T2 (de) Elektronische bildverarbeitung.
DE10110358B4 (de) Anordnung und Verfahren zur räumlichen Visualisierung
EP2024793B1 (de) Verfahren und einrichtung zum rendern und generieren computer-generierter videohologramme
DE60120474T2 (de) Rasterung von dreidimensionalen bildern
EP0789328B1 (de) Bildverarbeitungsverfahren zur Darstellung von spiegelnden Objekten und zugehörige Vorrichtung
DE69432385T2 (de) Bilderzeugung
DE3022454A1 (de) Optisches abbildesystem mit computererzeugtem bild fuer einen bodenfesten flugsimulator
DE69732465T2 (de) Bildverarbeitungsgerät und -verfahren
DE60206342T2 (de) Verfahren zur Beurteilung der binokularen Eigenschaften von Brillengläsern, Vorrichtung zur Anzeige dieser Eigenschaften und zugehöriger Apparat
DE69031204T2 (de) "Polygon-mit-Rändern"-Primitivzeichnung in einem graphischen rechnergesteuerten Anzeigesystem
WO2000000934A2 (en) Filter for transforming 3d data in a hardware accelerated rendering architecture
DE19620858B4 (de) Computergraphiksystem mit Pixel-Tiefenhinweisgebung
DE69736342T2 (de) Bilderzeugung unter Verwendung eines Lichtraums
EP0865002B1 (de) Verfahren und Vorrichtung zur Darstellung computermodellierter Objekte
DE60020234T2 (de) Verfahren und vorrichtung zur bildwiedergabe
DE60030401T2 (de) Anzeigetechniken für dreidimensionale virtuelle Realität

Legal Events

Date Code Title Description
8364 No opposition during term of opposition