DE112011105126T5 - Texturkartierungsvorrichtung - Google Patents

Texturkartierungsvorrichtung Download PDF

Info

Publication number
DE112011105126T5
DE112011105126T5 DE112011105126.3T DE112011105126T DE112011105126T5 DE 112011105126 T5 DE112011105126 T5 DE 112011105126T5 DE 112011105126 T DE112011105126 T DE 112011105126T DE 112011105126 T5 DE112011105126 T5 DE 112011105126T5
Authority
DE
Germany
Prior art keywords
texture
information
polygon
coordinates
pixel
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.)
Pending
Application number
DE112011105126.3T
Other languages
English (en)
Inventor
Satoshi Sakurai
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of DE112011105126T5 publication Critical patent/DE112011105126T5/de
Pending legal-status Critical Current

Links

Images

Classifications

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

Landscapes

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

Abstract

Eine Bereichsinformations-Erzeugungseinheit (1) erzeugt mehrere Stücke von Bereichsinformationen, die jeweils einen Teilbereich eines Texturbilds zeigen. Eine Polygoninformations-Erzeugungseinheit (2) erzeugt Polygoninformationen enthaltend mehrere Stücke von Scheitelpunktinformationen und einen Bereichs-ID. Eine Aufbereitungseinheit (3) führt eine Interpolation bei den Texturkoordinaten der Scheitelpunkte eines Polygons in einem Ausgangsbild durch, um jedem Pixel, das sich innerhalb des Polygons befindet, Texturkoordinaten zuzuweisen, und erhält weiterhin Bereichsinformationen durch Bezugnahme auf einen Bereichs-ID, der den Polygoninformationen hinzugefügt ist, und wandelt die jedem Pixel des Ausgangsbilds zugewiesenen Texturkoordinaten in einer solchen Weise um, dass die Texturkoordinaten in den Bereich fallen.

Description

  • GEBIET DER ERFINDUNG
  • Die vorliegende Erfindung bezieht sich auf eine Texturkartierungsvorrichtung, die Farbinformationen von jedem Pixel bestimmt, das sich innerhalb eines Polygons befindet, durch Verwendung eines Texturbildes, wenn das Polygon in einem Grafiksystem oder dergleichen gezeichnet wird.
  • HINTERGRUND DER ERFINDUNG
  • In der Computergrafik ist eine Texturkartierung zum, damit die Ausdrucksstärke eines Polygons, das hauptsächlich verwendet wird, um ein dreidimensionales Modell auszudrücken, zu verbessern, die Zuweisung eines zweidimensionalen Bildes zu der Innenseite des Polygons, um das Polygon zu zeichnen, bekannt. Wenn ein Polygon unter Verwendung der Texturkartierung gezeichnet wird, werden Daten enthaltend die Positionskoordinaten von jedem von Scheitelpunkten innerhalb eines Ausgangsbildes und Koordinaten innerhalb eines Texturbildes, die mit jedem der Scheitelpunkte in Korrespondenz gebracht sind (nachfolgend als Texturkoordinaten bezeichnet), vorbereitet. Dann werden jedem Pixel, das sich innerhalb des Polygons befindet, das die Scheitelpunkte in einem Ausgangsbild verbindet, Texturkoordinaten zugewiesen, die von den Texturkoordinaten der Scheitelpunkte interpoliert sind. Schließlich wird ein Pixelwert aus dem Texturbild herausgezogen durch Verwenden der Texturkoordinaten, die jedem vorgenannten Pixel zugewiesen sind, und zu dem Ausgangsbild kopiert, so dass ein Ausgangsbild, in welchem die Innenseite des Polygons mit demselben Muster als das Texturbild gefüllt ist, erhalten wird.
  • Bei der Texturkartierung kann das Texturbild wiederholt innerhalb des Polygons kartiert werden, indem jedem Scheitelpunkt Texturkoordinaten, die einen Bereich überschreiten, in welchem das Texturbild definiert ist, zugewiesen werden. Daher ist es bekannt, wenn ein Bild mit einem identischen Muster innerhalb des Polygons wiederholt gezeichnet wird, da keine Notwendigkeit besteht, ein Texturbild vorzubereiten, in welchem das Muster wiederholt gezeichnet wird, und nur ein Texturbild ausreichend ist, ein Bild mit einem einzigen Muster innerhalb des Polygons wiederholt zu zeichnen, dass das Datenvolumen verringert werden kann.
  • Andererseits ist bekannt, dass, wenn unterschiedliche Texturbilder jeweils auf mehrere Polygone kartiert werden, die Verwendung eines Verfahrens zum Kombinieren der mehreren Texturbilder in ein einzelnes Texturbild und die Zuweisung von Texturkoordinaten in dem einzelnen Texturbild, in welchem die mehreren Texturbilder kombiniert sind, zu jedem der Scheitelpunkte jedes Polygons, um das Texturbild zu zeichnen, es möglich wird, das einzelne Texturbild mit einer höheren Geschwindigkeit zu zeichnen, als wenn ein Verfahren zum Vorbereiten der mehreren Texturbilder, um diese Texturbilder zu zeichnen, verwendet wird. Jedoch führt, wenn das vorgenannte einzelne Texturbild, in das die mehreren Texturbilder kombiniert sind, verwendet wird, das Spezifizieren von Texturkoordinaten außerhalb des Bereichs, in welchem das Texturbild definiert ist, zu Wiederholungen des Kartierens des gesamten einzelnen Texturbilds, in das die mehreren Texturbilder kombiniert sind, auf die Polygone, und jedes noch zu kombinierende Texturbild, d. h., ein Teil des einzelnen Texturbilds, in das die mehreren Texturbilder kombiniert sind, kann nicht wiederholt auf die Polygone kartiert werden.
  • Um dieses Problem zu lösen, addiert, wenn Texturkoordinaten, die jedem Pixel innerhalb eines Polygons zuzuweisen sind, auf einem Ausgangsbild berechnet werden, eine herkömmliche Texturkartierungsvorrichtung, die beispielsweise im Patentdokument 1 beschrieben ist, einen Vorgang des Setzens von Bits höherer Ordnung der Texturkoordinaten auf 0 und fügt eine Versetzung für die Texturkoordinaten hinzu, um einen rechtwinkligen Bereich aus einem Texturbild auszuwählen und nur diesen Bereich wiederholt auf das Polygon zu kartieren.
  • Dokument nach dem Stand der Technik
  • Patentdokument
    • Patentdokument 1: Veröffentlichung Nr. Hei 8-110952 einer nicht geprüften japanischen Patentanmeldung
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • DURCH DIE ERFINDUNG ZU LÖSENDE PROBLEME
  • Jedoch sind, da die herkömmliche Vorrichtung, die in dem vorgenannten Patentdokument 1 beschrieben ist, wiederholt Texturkoordinaten mit niedrigeren Bits der Texturkoordinaten vorsieht, jeweils die Höhe und die Breite des rechteckigen Bereichs auf eine Potenz von 2 beschränkt. Daher besteht ein Problem dahingehend, dass, wenn mehrere Texturbilder in ein einzelnes Texturbild kombiniert werden und nur ein Teil des einzelnen Texturbilds, in das die mehreren Texturbilder kombiniert sind, durch Anwendung des vorgenannten Verfahrens wiederholt auf Polygone kartiert wird, es erforderlich ist, vorher jedes der noch zu kombinierenden Texturbilder zu vergrößern oder zu verkleinern, und jeweils die Höhe und die Breite des rechteckigen Bereichs auf eine Potenz von 2 zu setzen. Ein weiteres Problem besteht darin, dass, wenn ein Texturbild verkleinert wird, die Bildqualität verschlechtert wird, und umgekehrt, wenn ein Texturbild vergrößert wird, die Texturbildgröße des kombinierten Ergebnisses zunimmt und die Datenmenge mit dieser Zunahme vergrößert wird.
  • Die vorliegende Erfindung wurde gemacht, um diese Probleme zu lösen, und es ist daher eine Aufgabe der vorliegenden Erfindung, eine Texturkartierungsvorrichtung zu schaffen, die die Zeitdauer, die erforderlich ist, um eine Vergrößerung oder Verkleinerung von jeweils der Breite und der Höhe eines rechteckigen Bereichs auf eine Potenz von 2 vorher durchzuführen, verkürzen kann, und dann ein Texturbild mit einer erforderlichen Bildqualität, das mit einer minimalen Größe ausgedrückt wird, verwenden kann.
  • MITTEL ZUM LÖSEN DES PROBLEMS
  • Gemäß der vorliegenden Erfindung ist eine Texturkartierungsvorrichtung vorgesehen, welche enthält: eine Bereichsinformations-Erzeugungseinheit zum Erzeugen mehrerer Stücke von Bereichsinformationen, die jeweils einen Teilbereich eines Texturbilds zeigen; eine Polygoninformations-Erzeugungseinheit zur Erzeugung von Polygoninformationen enthaltend mehrere Stücke von Scheitelpunktinformationen, die jeweils Koordinaten eines Scheitelpunkts in einem Ausgangsbild enthalten, und Texturkoordinaten, die in Korrespondenz mit dem Scheitelpunkt gebracht sind, und einen Bereichs-ID zum Spezifizieren eines der mehreren Stücke von Bereichsinformationen; eine Rasterungseinheit zum Erzeugen von Pixelinformationen enthaltend Positionskoordinaten, Texturkoordinaten und einen Bereichs-ID für jedes von sämtlichen Pixeln, die sich innerhalb eines Polygons des Ausgangsbilds befinden, wobei das Polygon durch die Polygoninformationen gezeigt wird; eine Texturkartierungseinheit zum Verarbeiten der Texturkoordinaten der Pixelinformationen durch Verwendung der Bereichsinformationen, die durch den Bereichs-ID der Pixelinformationen spezifiziert sind, und zum Erhalten eines Pixelwerts aus dem Texturbild durch Verwendung der verarbeiteten Texturkoordinaten und Bestimmen eines Pixelwerts eines Pixels in dem Ausgangsbild, wobei das Pixel durch die Positionskoordinaten der Pixelinformationen gezeigt wird, durch Verwendung des hierdurch erhaltenen Pixelwerts; und eine Ausgabeeinheit zum Ausgeben eines Ausgangssignals der Texturkartierungseinheit zu einer Bildanzeigevorrichtung.
  • VORTEILE DER ERFINDUNG
  • Da die Texturkartierungsvorrichtung gemäß der vorliegenden Erfindung mehrere Stücke von beliebigen Bereichen in dem Texturbild als Bereichsinformationen erzeugt und die Texturkoordinaten der Pixelinformationen durch Verwendung der durch den Bereichs-ID der Pixelinformationen spezifizierten Bereichsinformationen verarbeitet, und auch einen Pixelwert aus dem Texturbild erhält durch Verwendung der verarbeiteten Texturkoordinaten, und den Pixelwert des Pixels in dem Ausgangsbild bestimmt, das durch die Positionskoordinaten der Pixelinformationen spezifiziert ist, durch Verwendung des erhaltenen Pixelwerts, kann die Texturkartierungsvorrichtung wiederholt einen rechteckigen Bereich mit einer beliebigen Breite und einer beliebigen Höhe in dem Texturbild auf das Polygon kartieren. Daher kann, da die Texturkartierungsvorrichtung die Zeitdauer, die zum vorhergehenden Durchführen einer Vergrößerung oder Verkleinerung von jeweils der Breite und der Höhe des rechteckigen Bereichs auf eine Potenz von 2 erforderlich ist, verkürzen kann und eine Zunahme der Bildgröße oder eine Verschlechterung der Bildqualität, die sich aus der Vergrößerung oder Verkleinerung jeweils der Breite und der Höhe des rechteckigen Bereichs ergibt, verhindern kann, die Texturkartierungsvorrichtung das Texturbild mit einer erforderlichen Bildqualität, die mit einer minimalen Größe ausgedrückt wird, verwenden.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • 1 ist ein Blockschaltbild, das eine Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 1 der vorliegenden Erfindung zeigt;
  • 2 ist eine erläuternde Zeichnung, die ein Koordinatensystem, das ein Texturbild definiert, und ein Beispiel für das Texturbild in der Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 1 der vorliegenden Erfindung zeigt;
  • 3 ist einer erläuternde Zeichnung, die ein Beispiel für Bereichsinformationen über einen ein Texturbild definierenden Bereich in der Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 1 der vorliegenden Erfindung zeigt;
  • 4 ist eine erläuternde Zeichnung, die ein Beispiel für Daten der in 3 gezeigten Bereichsinformationen in der Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 1 der vorliegenden Erfindung zeigt;
  • 5 ist eine erläuternde Zeichnung, die ein Beispiel für ein Koordinatensystem, das ein Ausgangsbild definiert, und das Ausgangsbild in einem anfänglichen Zustand in der Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 1 der vorliegenden Erfindung zeigt;
  • 6 ist eine erläuternde Zeichnung, die ein Beispiel für Polygoninformationen zeigt, die von einer Polygoninformations-Erzeugungseinheit in der Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 1 der vorliegenden Erfindung erzeugt wurden;
  • 7 ist eine erläuternde Zeichnung, die ein Ausgangsbild zeigt, das als ein Ergebnis des Zeichnens der in 6 gezeigten Polygoninformationen durch Verwendung des in 2 gezeigten Texturbilds und der in 4 gezeigten Bereichsinformationen erhalten wurde, in der Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 1 der vorliegenden Erfindung;
  • 8 ist ein Flussdiagramm, das einen von einer Rasterungseinheit in der Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 1 der vorliegenden Erfindung durchgeführten Prozess zeigt;
  • 9 ist eine erläuternde Zeichnung, die ein Ergebnis der Neuordnung der in 6 gezeigten Polygoninformationen durch die Rasterungseinheit in der Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 1 der vorliegenden Erfindung zeigt;
  • 10 ist eine erläuternde Zeichnung, die ein Beispiel für die von der Rasterungseinheit in der Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 1 der vorliegenden Erfindung ausgegebenen Pixelinformationen zeigt;
  • 11 ist ein Flussdiagramm, das einen durch eine Texturkoordinaten-Interpolationseinheit in der Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 1 der vorliegenden Erfindung durchgeführten Prozess zeigt;
  • 12 ist eine erläuternde Zeichnung, die eine Positionsbeziehung zwischen Punkten und einem Pixel zeigt, die von der Texturkoordinaten-Interpolationseinheit in der Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 1 der vorliegenden Erfindung verwendet werden;
  • 13 ist ein Flussdiagramm, das einen Prozess zeigt, der von einer Texturkartierungseinheit in der Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 1 der vorliegenden Erfindung durchgeführt wird;
  • 14 ist eine erläuternde Zeichnung, die ein Ergebnis der Verarbeitung der in 10 gezeigten Pixelinformationen durch die Texturkartierungseinheit in der Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 1 der vorliegenden Erfindung zeigt;
  • 15 ist eine erläuternde Zeichnung, die eine Beziehung zwischen den Positionskoordinaten der in 14 gezeigten Pixelinformationen und Texturkoordinaten in der Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 1 der vorliegenden Erfindung zeigt;
  • 16 ist eine erläuternde Zeichnung, die ein anderes Beispiel für die von der Polygoninformations-Erzeugungseinheit in der Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 1 der vorliegenden Erfindung erzeugten Polygoninformationen zeigt;
  • 17 ist eine erläuternde Zeichnung, die ein Beispiel für Pixelinformationen zeigt, die als ein Ergebnis des Eingebens der in 16 gezeigten Polygoninformationen in die Rasterungseinheit in der Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 1 der vorliegenden Erfindung ausgegeben werden;
  • 18 ist ein Blockschaltbild, das die Hauptkomponenten einer Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 2 der vorliegenden Erfindung zeigt;
  • 19 ist ein Flussdiagramm, das einen durch eine Texturkombinationseinheit in der Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 2 der vorliegenden Erfindung durchgeführten Prozess zeigt;
  • 20 ist eine erläuternde Zeichnung, die ein Beispiel für mehrere Texturbilder zeigt, die in die Texturkombinationseinheit in der Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 2 der vorliegenden Erfindung eingegeben werden;
  • 21 ist eine erläuternde Zeichnung, die ein Beispiel für mehrere Stücke von Polygoninformationen zeigt, die in die Texturkombinationseinheit in der Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 2 der vorliegenden Erfindung eingegeben werden;
  • 22 ist eine erläuternde Zeichnung, die ein Ausgangsbild zeigt, das als ein Ergebnis des Zeichnens der mehreren in 21 gezeigten Stücke von Polygoninformationen durch Verwendung der in 20 gezeigten Texturbilder in der Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 2 der vorliegenden Erfindung erhalten wurde;
  • 23 ist eine erläuternde Zeichnung, die ein Beispiel für ein Texturbild zeigt, das als ein Ergebnis des Kombinierens der mehreren in 20 gezeigten Texturen durch die Texturkombinationseinheit in der Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 2 der vorliegenden Erfindung erhalten wurde; und
  • 24 ist eine erläuternde Zeichnung, die Bereichsinformationen zeigt, die von der Texturkombinationseinheit erzeugt wurden, wenn die in 20 gezeigten Texturbilder in der Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 2 der vorliegenden Erfindung kombiniert werden.
  • AUSFÜHRUNGSBEISPIELE DER ERFINDUNG
  • Nachfolgend werden, um die Erfindung im Einzelnen zu erläutern, die bevorzugten Ausführungsbeispiele der vorliegenden Erfindung mit Bezug auf die begleitenden Zeichnungen erläutert.
  • Ausführungsbeispiel 1
  • 1 ist ein Blockschaltbild, das eine Texturkartierungsvorrichtung gemäß diesem Ausführungsbeispiel zeigt. Die in dieser Figur gezeigte Texturkartierungsvorrichtung besteht aus einer Bereichsinformations-Erzeugungseinheit 1, einer Polygoninformations-Erzeugungseinheit 2, einer Aufbereitungseinheit 3, einer Ausgabeeinheit 4, einem Bereichsspeicher 5, einem Texturspeicher 6 und einem Ausgangsbildspeicher 7.
  • Die Bereichsinformations-Erzeugungseinheit 1 erzeugt Stücke von Bereichsinformationen, die jeweils einen beliebigen rechteckigen Bereich innerhalb eines Texturbilds zeigen, weist jedem der Stücke von Bereichsinformationen einen ID zu und speichert diese Stücke von Bereichsinformationen in dem Bereichsspeicher 5. Die Polygoninformations-Erzeugungseinheit 2 erzeugt Polygoninformationen enthaltend zumindest mehrere Stücke von Scheitelpunktinformationen und einen Bereichs-ID, der eines der vorgenannten Stücke von Bereichsinformationen spezifiziert. Die Aufbereitungseinheit 3 erzeugt ein Ausgangsbild in dem Ausgangsbildspeicher 7 durch wiederholtes Kartieren eines Teils des Texturbilds, das innerhalb des rechteckigen Bereichs existiert, der durch den Bereichs-ID der von der Polygoninformations-Erzeugungseinheit 2 erzeugten Polygoninformationen bestimmt ist, in das Innere eines Polygons in dem Ausgangsbild, um die Farbe jedes innerhalb des vorgenannten Polygons befindlichen Pixels zu bestimmen. Die Ausgabeeinheit 4 gibt das in dem Ausgangsbildspeicher 7 erzeugte Ausgangsbild zu einer Bildanzeigevorrichtung 8 aus. Weiterhin speichert der Bereichsspeicher 5 die Stücke von Bereichsinformationen, und der Texturspeicher 6 speichert das Texturbild. Zusätzlich speichert der Ausgangsbildspeicher 7 das von der Aufbereitungseinheit 3 erzeugte Ausgangsbild. Weiterhin zeigt die Bildanzeigevorrichtung 8 das Ausgangsbild an.
  • Als Nächstes wird die Arbeitsweise jeder Einheit der Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 1 erläutert. Zuerst wird die Arbeitsweise der Bereichsinformations-Erzeugungseinheit 1 unter Verwendung der 2 bis 4 erläutert. Die Bereichsinformations-Erzeugungseinheit 1 erzeugt mehrere Stücke von Bereichsinformationen, die jeweils einen beliebigen rechteckigen Bereich innerhalb des in dem Texturspeicher 6 gespeicherten Texturbilds zeigen, und sieht einen spezifischen ID für jedes der mehreren Stücke von Bereichsinformationen vor, und speichert diese Stücke von Bereichsinformationen in dem Bereichsspeicher 5. In diesem Fall wird angenommen, dass das Texturbild in dem Texturspeicher 6 als ein zweidimensionales Feld von Pixelwerten, die jeweils Farbinformationen zeigen, aufgezeichnet ist und in einen Bereich von 0,0 ≤ u 1,0 und 0,0 ≤ v ≤ 1,0 in dem zweidimensionalen Raum fällt, der durch Koordinatenachsen u und v ungeachtet der Auflösung definiert ist. Genauer gesagt, wenn das Texturbild aus M×N Pixeln besteht, ist die Länge jedes Pixels in einer u-Achsenrichtung und die in einer v-Achsenrichtung gleich 1/M bzw. 1/N. Es wird weiterhin angenommen, dass die Koordinaten der Mittenposition jedes Pixels die Position des Pixels anzeigen.
  • 2 ist ein Diagramm, das ein Beispiel für den Raum, der das Texturbild definiert, und das Texturbild zeigt. Jede Bereichsinformation wird durch vier numerische Werte (uR, vR, wR, hR) ausgedrückt, und diese numerischen Werte zeigen die kleinste u-Koordinate und die kleinste v-Koordinate des entsprechenden Bereichs bzw. die Breite in der u-Achsenrichtung und die Breite in der v-Achsenrichtung des entsprechenden Bereichs. Ein Verfahren zum Bestimmen jeder Bereichsinformation ist beliebig. Beispielsweise kann ein Programmierer jede Bereichsinformation bestimmen durch Verwendung eines Verfahrens zum manuellen Spezifizieren jedes Bereichs. 3 zeigt ein Beispiel für ein Ergebnis der Erzeugung von Stücken von Bereichsinformationen innerhalb des Texturbilds, und 4 zeigt die Stücke von Bereichsinformationen von 3, die in dem Bereichsspeicher 5 gespeichert sind.
  • Als Nächstes wird die Arbeitsweise der Polygoninformations-Erzeugungseinheit 2 unter Verwendung der 5 bis 7 erläutert. Die Polygoninformations-Erzeugungseinheit 2 erzeugt Polygoninformationen enthaltend mehrere Stücke von Scheitelpunktinformationen, die ein Polygon bilden, und einen Bereichs-ID zum Spezifizieren eines Bereichs, der von der Bereichsinformations-Erzeugungseinheit 1 erzeugt wurde, und gibt die Polygoninformationen zu der Aufbereitungseinheit 3 aus. Jede Scheitelpunktinformation besteht aus zumindest Positionskoordinaten, die die Position eines Scheitelpunkts in dem Ausgangsbild zeigen, und Texturkoordinaten. Weiterhin ist die Anzahl von Scheitelpunkten, die das Polygon bilden, beliebig. Bei diesem Ausführungsbeispiel wird ein dreieckiges Polygon als ein Beispiel für das Polygon erläutert.
  • In diesem Beispiel sind die Scheitelpunkte, die die Polygoninformationen bilden, durch A, B bzw. C bezeichnet, die Positionskoordinaten und die Texturkoordinaten des Scheitelpunkts A sind durch xA, yA bzw. uA, vA bezeichnet, die Positionskoordinaten und die Texturkoordinaten des Scheitelpunkts B sind durch xB, yB bzw. uB, vB bezeichnet, und die Positionskoordinaten und die Texturkoordinaten des Scheitelpunkts C sind durch xC, yC bzw. uC, vC bezeichnet. Es wird angenommen, dass das Ausgangsbild in dem Ausgangsbildspeicher 7 als ein zweidimensionales Feld von Pixelwerten aufgezeichnet ist und in einen Bereich von 0,0 ≤ x ≤ 1,0 und 0,0 ≤ y ≤ 1,0 im zweidimensionalen Raum fällt, der durch die Koordinatenachsen x und y ungeachtet der Auflösung ausgedrückt wird.
  • 5 zeigt das Koordinatensystem des Ausgangsbilds und ein Beispiel des Ausgangsbilds, das als weiß initialisiert ist. Die Texturkoordinaten, die jede Scheitelpunktinformation bilden, werden als Koordinaten ausgedrückt, die durch den Punkt in der unteren linken Ecke in dem rechteckigen Bereich, der durch den vorgenannten Bereichs-ID spezifiziert ist, der als (u, v) = (0,0; 0,0) angenommen wird, und den Punkt in der oberen rechten Ecke des rechteckigen Bereichs, der als (u, v) = (1,0; 1,0) angenommen wird, definiert sind, und, wenn irgendeine der Texturkoordinaten einen Wert hat, der gleich oder kleiner als 0,0 oder gleich oder größer als 1,0 ist, wird das Texturbild innerhalb des vorgenannten rechteckigen Bereichs wiederholt in das Polygon kartiert. Beispielsweise wird, wenn die Texturkoordinaten des Scheitelpunkts A als (uA; vA) = (0,5; 0,5) spezifiziert sind, der Punkt entsprechend der Mitte des Bereichs durch den vorgenannten Bereichs-ID auf den Scheitelpunkt A kartiert.
  • 6 zeigt ein Beispiel für die Polygoninformationen, und 7 zeigt das Ausgangsbild, das ein Ergebnis des Zeichnens des in 6 gezeigten Beispiels unter Verwendung des in 2 gezeigten Texturbilds sein sollte. Ein Verfahren zum Erzeugen von Scheitelpunktkoordinaten, die die Polygoninformationen bilden, ist beliebig. Beispielsweise erzeugt ein Programmierer die Scheitelpunktkoordinaten jedes Polygons in einem dreidimensionalen Polygonmodell, das der Programmierer durch Verwendung von Modellierungssoftware oder dergleichen bildet, durch Ausführen einer Projektionsumwandlung der Scheitelpunktkoordinaten auf den das Ausgangsbild definierenden Raum. Ein Verfahren zum Erzeugen eines ID und von Texturkoordinaten, die die Polygoninformationen bilden, ist beliebig. Beispielsweise erzeugt der Programmierer einen ID und Texturkoordinaten durch direktes Spezifizieren des ID und der Texturkoordinaten.
  • Als Nächstes wird die Arbeitsweise einer Rasterungseinheit 31, die die Aufbereitungseinheit 3 bildet, unter Verwendung der 8 bis 10 erläutert. 8 ist ein Flussdiagramm, das einen Verlauf des Prozesses zeigt, der von der Rasterungseinheit 31 durchgeführt wird. Die Rasterungseinheit 31 vergleicht die y-Koordinaten der Scheitelpunkte des Polygons miteinander und sortiert die Scheitelpunkte in aufsteigender Reihenfolge ihrer y-Koordinaten und benennt die hierdurch sortierten Scheitelpunkte neu als A, B und C (Schritt ST311). 9 zeigt ein Ergebnis des Anwendens des Schritts ST311 auf die in 6 gezeigten Polygoninformationen. Zusätzlich wird ein Zeiger P, der einen Bezug zu einem Pixel des Ausgangsbilds zeigt, vorbereitet, und die Rasterungseinheit setzt den Bezugsbestimmungsort des Zeigers P auf das Pixel, das in dem Ausgangsbild und innerhalb des Polygons existiert und das dem Scheitelpunkt A am nächsten ist (Schritt ST312). Als Nächstes interpoliert eine Texturkoordinaten-Interpolationseinheit 311 Texturkoordinaten (uP, VP) von den Texturkoordinaten der Scheitelpunkte A, B und C gemäß den Positionskoordinaten des Pixels, auf das der Zeiger P hinweist, um die Texturkoordinaten (uP, vP) zu berechnen (Schritt ST313), und gibt die hierdurch berechneten Texturkoordinaten, den Bereichs-ID des vorgenannten Polygons und die Positionskoordinaten des vorgenannten Pixels als Pixelinformationen zu einer Texturkartierungseinheit 32 aus (Schritt ST314). 10 zeigt einige Beispiele für die ausgegebenen Pixelinformationen.
  • Nach dem Ausgeben der Pixelinformationen setzt die Rasterungseinheit den Bezugsbestimmungsort des Zeigers P auf das Pixel, das in der positiven Richtung der x-Achse dem vorhergehenden Pixel am nächsten ist (Schritt ST315). Zu dieser Zeit kehrt, wenn das Pixel, auf das der Zeiger P hinweist, sich innerhalb des Polygons befindet, die Rasterungseinheit zum Schritt ST313 zurück (Schritt ST316). Demgegenüber setzt, wenn das Pixel, auf das der Zeiger P hinweist, sich außerhalb des Polygons befindet, die Rasterungseinheit den Bezugsbestimmungsort des Zeigers P auf das Pixel, das dem vorhergehenden Pixel in der positiven Richtung der y-Achse am nächsten ist (Schritt ST317). Zu dieser Zeit beendet, wenn die y-Koordinate des Pixels, auf das der Zeiger P hinweist, größer als die des Scheitelpunkts C ist, die Rasterungseinheit den Prozess, anderenfalls setzt die Rasterungseinheit den Prozess fort (Schritt ST318). Schließlich ändert die Rasterungseinheit den Bezugsbestimmungsort des Zeigers P zu dem Pixel, das die kleinste x-Koordinate unter den Pixeln hat, die sich auf derselben y-Koordinate wie das Pixel, auf das der Zeiger P hinweist, und innerhalb des Polygons befinden, und kehrt dann zum Schritt ST313 zurück (Schritt ST319).
  • Die Arbeitsweise der Texturkoordinaten-Interpolationseinheit 311, die die Rasterungseinheit 31 bildet, wird unter Verwendung der 11 und 12 erläutert. 11 ist ein Flussdiagramm, das den Ablauf des Prozesses, der von der Texturkoordinaten-Interpolationseinheit 311 durchgeführt wird, zeigt. Die Texturkoordinaten-Interpolationseinheit 311 berechnet die beiden Kreuzungspunkte zwischen einer geraden Linie, die sich von der Position des Pixels, auf das der Zeiger P hinweist, parallel zu der x-Achse erstreckt, und den Seiten des Polygons, und drückt den Kreuzungspunkt mit einer kleineren x-Koordinate als einen Punkt D aus und drückt auch den anderen mit einer größeren x-Koordinate als einen Punkt E aus (Schritt ST3111). 12 ist ein Diagramm, das eine Positionsbeziehung zwischen dem Zeiger P, dem Punkt D und dem Punkt E zeigt.
  • Als Nächstes drückt die Texturkoordinaten-Interpolationseinheit die Positionskoordinaten des Punkts D als (xD, yD) aus und interpoliert Texturkoordinaten (uD, vD) an der Position des Punkts D von den Texturkoordinaten der Scheitelpunkte A, B und C durch Verwendung der nächsten Gleichung, um die Texturkoordinaten (uD, vD) zu berechnen (Schritt ST3112).
  • Wenn der Punkt D auf der Seite AB ist: uD = uA × (yB – yD)/(yB – yA) + uB × (yD – yA)/(yB – yA) vD = vA × (yB – yD)/(yB – yA) + vB × (yD – yA)/(yB – yA)
  • Wenn der Punkt D auf der Seite BC ist: uD = uB × (yC – yD)/(yC – yB) + uC × (yD – yB)/(yC – yB) vD = vB × (yC – yD)/(yC – yB) + vC × (yD – yB)/(yC – yB)
  • Wenn der Punkt D auf der Seite AC ist: uD = uA × (yC – yD)/(yC – yA) + uC × (yD – yA)/(yC – yA) vD = vA × (yC – yD)/(yC – yA) + vC × (yD – yA)/(yC – yA)
  • In gleicher Weise drückt die Texturkoordinaten-Interpolationseinheit die Positionskoordinaten des Punkts E als (xE, yE) aus und interpoliert Texturkoordinaten (uE, vE) an der Position des Punkts E von den Texturkoordinaten der Scheitelpunkte A, B und C durch Verwendung desselben Verfahrens wie desjenigen, das die Texturkoordinaten-Interpolationseinheit zu der Zeit des Berechnens von (uD, vD) verwendet, um die Texturkoordinaten (uE, vE) zu berechnen. Schließlich drückt die Texturkoordinaten-Interpolationseinheit die Positionskoordinaten des Pixels, auf das Zeiger P hinweist, als (xP, yP) aus und interpoliert Texturkoordinaten (uP, vP) an der Position des Pixels, auf das der Zeiger P hinweist, von den Texturkoordinaten (uD, vD) und (uE, vE) unter Verwendung der nächsten Gleichung, um die Texturkoordinaten (uP, vP) zu berechnen, und führt dann die Texturkoordinaten zu der Rasterungseinheit 31 zurück (ST3113). uP = uD × (xE – xP)/(xE – xD) + uE × (xP – xD)/(xE – xD) vP = vD × (xE – xP)/(xE – xD) + vE × (xP – xD)/(xE – xD)
  • Die Arbeitsweise der Texturkartierungseinheit 32, die die Aufbereitungseinheit 3 bildet, wird unter Verwendung der 13 bis 15 erläutert. 13 ist ein Flussdiagramm, das einen Verlauf des von der Texturkartierungseinheit 32 durchgeführten Prozesses zeigt. Die Texturkartierungseinheit 32 erhält die Bereichsinformationen (uR, vR, wR, hR), die durch den von der Rasterungseinheit 31 ausgegebenen Bereichs-ID der Pixelinformationen gezeigt werden, von dem Bereichsspeicher 5 (Schritt ST321). Die Texturkartierungseinheit verarbeitet dann die Texturkoordinaten (uP, vP) der Pixelinformationen, um unter Verwendung der nächsten Gleichung (uP', vP') zu berechnen. uP' = uR + fract(uP) × wR vP' = vR + fract(vP) × hR, in denen fract(r) einen Wert zeigt, der ein Ergebnis des Subtrahierens der größten von ganzen Zahlen, die eine reelle Zahl r nicht überschreiten, von der reellen Zahl r ist. Die Texturkartierungseinheit überschreibt dann die Texturkoordinaten (uP, vP) der Pixelinformationen durch (uP', vP'), um die Texturkoordinaten zu aktualisieren (Schritt ST322). 14 zeigt das Ergebnis der Aktualisierung der in 10 gezeigten Pixelinformationen im Schritt ST322.
  • Nach der Aktualisierung der Texturkoordinaten zieht die Texturkartierungseinheit 32 unter Verwendung der aktualisierten Texturkoordinaten einen Pixelwert aus dem Texturbild heraus und setzt den Pixelwert in das durch die Positionskoordinaten der Pixelinformationen gezeigte Pixel in dem Ausgangsbild ein (Schritt ST324). Da jedoch die Texturkoordinaten der Pixelinformationen nicht notwendigerweise die Mittenposition eines Pixels des Texturbilds zeigen, wenn ein Pixelwert erhalten wird, zieht die Texturkartierungseinheit einen angemessenen Pixelwert heraus durch Verwendung eines Verfahrens zum Durchführen einer Interpolation bei den Pixelwerten mehrerer Pixel, die Koordinaten nahe den vorgenannten Texturkoordinaten haben.
  • Weiterhin kann, wenn jeder Pixelwert des Ausgangsbilds bestimmt wird, anstelle des Einsetzens eines von dem Texturbild erhaltenen Pixelwerts in ein entsprechendes Pixel des Ausgangsbilds, so wie es ist, die Texturkartierungseinheit Farbinformationen, die andere als der von dem Texturbild erhaltene Pixelwert sind, für das Polygon vorsehen und die Farbinformationen verwenden, beispielsweise, indem ein Aufhellungsprozess bei dem Polygon durchgeführt wird, um Farbinformationen zu dem Polygon hinzuzufügen und die Farbinformationen mit dem Pixelwert, der von dem Texturbild erhalten wurde, zu mischen, und dann die gemischte Farbe auszugeben. 15 zeigt eine Entsprechung zwischen der Position des Ausgangsbilds, die durch die in 14 gezeigten Positionskoordinaten jeder Pixelinformation gezeigt ist, und der Position des Texturbilds, die durch die Texturkoordinaten gezeigt ist.
  • Obgleich die Aufbereitungseinheit 3, die die vorbeschriebene Operation durchführt, hauptsächlich aus einer GPU (Grafikverarbeitungseinheit) besteht, kann die Aufbereitungseinheit nicht Informationen über jedes Polygon handhaben, wie einen Bereichs-ID jeder Polygoninformation, da die meisten GPUs Polygoninformationen als einen Satz von Informationsstücken über jeden Scheitelpunkt handhaben. In diesem Fall nimmt, obgleich die Aufbereitungseinheit so ausgebildet werden kann, dass sie Informationen über jedes Polygon stützt durch Ändern der Konfiguration der Polygoninformationen, die die Polygoninformations-Erzeugungseinheit erzeugt, und einen Bereichs-ID für jede Scheitelpunktinformation vorsieht, die Anzahl von Variablen zu. Um dieses Problem zu lösen, kann die Texturkartierungsvorrichtung in einer solchen Weise gebildet sein, dass die Polygoninformations-Erzeugungseinheit 2 eine Variable erzeugt, die eine Kombination aus einem Bereichs-ID und Texturkoordinaten ist, und diese Variable anstelle von Texturkoordinaten empfängt, und die Texturkartierungseinheit 32 die Variable in den Bereichs-ID und die Texturkoordinaten zerlegt.
  • Genauer gesagt ist beispielsweise kein Bereichs-ID für die Polygoninformationen, die die Polygoninformations-Erzeugungseinheit 2 ausgibt, vorgesehen, und die Texturkoordinaten (uA, vA), (uB, vB) und (uC, vC) jeder Scheitelpunktinformation werden ersetzt durch (uA'', vA''), (uB'', vB'') und (uC'', vC''), wie jeweils durch die folgenden Gleichungen gezeigt ist. uA'' = Bereichs-ID × 100 + uA vA'' = vA uB'' = Bereichs-ID × 100 + uB vB'' = vB uC'' = Bereichs-ID × 100 + uC vC'' = vC, worin 0 ≤ uA, uB und uC ≤ 100,0. In 16 sind die in 6 gezeigten Polygoninformationen gezeigt, in denen die Texturkoordinaten gemäß dem vorgenannten Verfahren ersetzt sind.
  • Die Rasterungseinheit 31 interpoliert weiterhin die Texturkoordinaten uP'' und vP'' jedes Pixels von den Texturkoordinaten der Scheitelpunkte gemäß demselben Prozess wie demjenigen, den die Rasterungseinheit zu der Zeit des Berechnens von uP und vP verwendet, um die Texturkoordinaten uP'' und vP'' zu berechnen. 17 zeigt Stücke von Pixelinformationen, die Ergebnisse der Verarbeitung der in 16 gezeigten Stücke von Polygoninformationen durch die Rasterungseinheit 31 sind.
  • Danach kann die Texturkartierungseinheit 32 dasselbe Ergebnis erhalten wie dasjenige, das in dem Fall des Vorsehens eines Bereichs-ID für jede Polygoninformation durch Berechnen der Texturkoordinaten (uP', vP') im Schritt ST322 zu derselben Zeit erhalten wurde, zu der die Texturkartierungseinheit einen Bereichs-ID durch Verwendung der nächsten Gleichung rekonstruiert. Bereichs-ID = floor(u/100) uP' = uR + fract(uP'') × wR vP' = vR + fract(vP'') × hR, worin floor(r) die größte von ganzen Zahlen ist, die eine reelle Zahl r nicht überschreiten.
  • Schließlich wird die Arbeitsweise der Ausgabeeinheit 4 erläutert. Nachdem die Texturkartierungseinheit 32 den Prozess bei jedem von sämtlichen Stücken von Polygoninformationen, die die Polygoninformations-Erzeugungseinheit 2 erzeugt hat, beendet hat, gibt die Ausgabeeinheit 4 das in dem Ausgangsbildspeicher 7 gespeicherte Ausgangsbild zu der Bildanzeigevorrichtung 8 aus. Als eine Folge zeigt die Bildanzeigevorrichtung 8 das in dem Ausgangsbildspeicher 7 gespeicherte Ausgangsbild an.
  • Wie vorher erläutert wurde, kann, da die Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 1 enthält: die Bereichsinformations-Erzeugungseinheit zum Erzeugen mehrerer Stücke aus Bereichsinformationen, die jeweils einen Teilbereich eines Texturbildes zeigen; die Polygoninformations-Erzeugungseinheit zum Erzeugen von Polygoninformationen enthaltend mehrere Stücke aus Scheitelpunktinformationen, die jeweils Koordinaten eines Scheitelpunkts in einem Ausgangsbild und Texturkoordinaten, die in Korrespondenz mit dem Scheitelpunkt gebracht sind, enthalten, und einen Bereichs-ID zum Spezifizieren eines der mehreren Stücke von Bereichsinformationen; die Rasterungseinheit zum Erzeugen von Pixelinformationen enthaltend Positionskoordinaten, Texturkoordinaten und einen Bereichs-ID für jedes von sämtlichen Pixeln, die sich innerhalb eines Polygons in dem Ausgangsbild befinden, wobei das Polygon durch die Polygoninformationen gezeigt wird; die Texturkartierungseinheit zum Verarbeiten der Texturkoordinaten der Pixelinformationen durch Verwendung der Bereichsinformationen, die durch den Bereichs-ID der Pixelinformationen spezifiziert sind, und zum Erhalten eines Pixelwerts aus dem Texturbild durch Verwendung der verarbeiteten Texturkoordinaten und Bestimmen eines Pixelwerts eines Pixels in dem Ausgangsbild, wobei das Pixel durch die Positionskoordinaten der Pixelinformationen gezeigt werden, durch Verwendung des hierdurch erhaltenen Pixelwerts; und die Ausgabeeinheit zum Ausgeben eines Ausgangssignals der Texturkartierungseinheit zu der Bildanzeigevorrichtung, die Texturkartierungsvorrichtung wiederholt einen rechteckigen Bereich mit einer beliebigen Breite und einer beliebigen Höhe in dem Texturbild auf das Polygon kartieren. Daher kann, da die Texturkartierungsvorrichtung die Zeitdauer, die zum vorhergehenden Durchführen einer Vergrößerung oder Verkleinerung von jeweils der Breite und der Höhe des rechteckigen Bereichs zu einer Potenz von 2 erforderlich ist, verkürzen, und sie kann eine Zunahme der Bildgröße oder Verschlechterung der Bildqualität, die sich aus der Vergrößerung oder Verkleinerung von jeweils der Breite und der Länge des rechteckigen Bereichs ergibt, verhindern, und die Texturkartierungsvorrichtung kann das Texturbild mit der erforderlichen Bildqualität, das mit einer minimalen Größe ausgedrückt wird, verwenden.
  • Weiterhin kann, da bei der Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 1 nach dem Projizieren der Position jedes Scheitelpunkts auf zweidimensionale Koordinaten in dem Ausgangsbild durch Durchführen einer Projektionsumwandlung bei den Polygoninformationen mit Positionskoordinaten, die im dreidimensionalen Raum gemäß einer Position eines virtuellen Betrachtungspunkts zu einer Zeit des Zeichnens die Polygoninformations-Erzeugungseinheit die Polygoninformationen zu der Rasterungseinheit ausgibt, die Texturkartierungsvorrichtung die Polygoninformationen mit einem hohen Grad von Genauigkeit erzeugen.
  • Zusätzlich kann, da bei der Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 1 für jedes von sämtlichen Pixeln, die sich innerhalb des durch die Polygoninformationen gezeigten Polygons in dem Ausgangsbild befinden, die Rasterungseinheit Texturkoordinaten von den Texturkoordinaten jedes Scheitelpunkts gemäß einer Positionsbeziehung zwischen der Position jedes Scheitelpunkts, der die Polygoninformationen bildet, und der Position des Pixels interpoliert, um Texturkoordinaten zu berechnen, und die Koordinaten der Position des Pixels und des Bereichs-ID, die die Polygoninformationen als Pixelinformationen haben, ausgibt, die Texturkartierungsvorrichtung die Polygoninformationen mit einem hohen Grad von Genauigkeit erzeugen.
  • Weiterhin kann, da bei der Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 1 die Texturkartierungseinheit die Texturkoordinaten der Pixelinformationen, die die Rasterungseinheit in einer solchen Weise ausgibt, dass die Texturkoordinaten in ein Rechteck fallen, das durch die Bereichsinformationen gezeigt wird, die durch den Bereichs-ID der Pixelinformationen spezifiziert sind, verarbeitet und einen Pixelwert aus dem Texturbild durch Verwendung der hierdurch verarbeiteten Texturkoordinaten erhält, die Texturkartierungsvorrichtung leicht die Texturkartierung mit Zuverlässigkeit durchführen.
  • Zusätzlich kann, da bei der Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 1 die Polygoninformations-Erzeugungseinheit den Bereichs-ID nicht hält, der die Polygoninformationen als ein Element der Polygoninformationen direkt bildet, sondern jede Scheitelpunktinformation in einer solchen Weise verarbeitet, dass der Bereichs-ID anhand der in die Texturkartierungseinheit eingegebenen Pixelinformationen rekonstruiert werden kann, wodurch der Bereichs-ID als ein Teil der Scheitelpunktinformationen gehalten wird, die Texturkartierungsvorrichtung dieselben Ergebnisse erhalten wie diejenigen, die die Texturkartierungsvorrichtung in dem Fall des Vorsehens eines Bereichs-ID für jede Polygoninformation erhält.
  • Weiterhin kann, da bei der Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 1 die Texturkartierungseinheit einen Indes des Bereichs-ID der Polygoninformationen anhand der in diese eingegebenen Pixelinformationen rekonstruiert und die Bereichsinformationen durch Verwendung des hierdurch rekonstruierten Index erhält, die Texturkartierungsvorrichtung dieselben Ergebnisse erhalten wie diejenigen, die die Texturkartierungsvorrichtung in dem Fall des Vorsehens eines Bereichs-ID für jede Polygoninformation erhält.
  • Ausführungsbeispiel 2
  • Bei dem Ausführungsbeispiel 1 erzeugt die Bereichsinformations-Erzeugungseinheit 1 Stücke von Bereichsinformationen, die jeweils einen beliebigen rechteckigen Bereich in einem Texturbild zeigen, und speichert die Stücke von Bereichsinformationen in dem Bereichsspeicher 5, erzeugt die Polygoninformations-Erzeugungseinheit 2 Polygoninformationen enthaltend Scheitelpunktinformationen mit Texturkoordinaten in jedem Bereich, der als ein Raum von 0,0 ≤ u ≤ 1,0 und 0,0 ≤ v ≤ 1,0 angenommen wird, und einen Bereichs-ID zum Spezifizieren eines Bereichs, und danach zeichnet die Aufbereitungseinheit 3 ein Polygon durch Verwendung der Polygoninformationen, der Stücke von Bereichsinformationen und des Texturbilds.
  • Jedoch enthält, da Texturbilder, von denen jedes wiederholt auf ein Polygon kartiert wird, jeweils als einzelne Texturbilder vorbereitet werden, wenn ein Polygonmodell durch Verwendung eines allgemeinen Modellierungswerkzeugs oder dergleichen gebildet wird, das Polygonmodell mehrere Stücke von Polygoninformationen und mehrere Texturbilder. Daher wird gemäß dem Ausführungsbeispiel 2 ein Beispiel von, anhand mehrerer Texturbilder und mehrerer Stücke von Polygoninformationen, automatischem Erzeugen eines einzelnen Texturbilds und mehrerer Stücke von Polygoninformationen, die es ermöglichen, dasselbe Zeichnungsergebnis wie das des Zeichnens der vorgenannten mehreren Texturbilder und der vorgenannten mehreren Stücke von Polygoninformationen erhalten, und Eingeben des einzelnen Texturbilds und der mehreren Stücke von Polygoninformationen in eine Aufbereitungseinheit 3, einen Bereichsspeicher 5 und einen Texturspeicher 6 erläutert.
  • 18 ist ein Blockschaltbild von Hauptkomponenten einer Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 2. Die Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 2 enthält zusätzlich eine Texturkombinationseinheit 9 zum Empfangen mehrerer Stücke von Polygoninformationen und mehrerer Texturbilder als ihre Eingangssignale, anstelle der Bereichsinformations-Erzeugungseinheit 1 und der Polygoninformations-Erzeugungseinheit 2 gemäß dem Ausführungsbeispiel 1. Genauer gesagt, die Texturkombinationseinheit 9 empfängt mehrere Texturbilder, die jeweils ein Bild und einen eindeutigen ID enthalten, und Polygoninformationen enthaltend Textur-IDs, die jeweils die mehreren Texturbilder und mehreren Stücke von Scheitelpunktinformationen spezifizieren, und erzeugt ein einzelnes Texturbild und mehrere Stücke von Bereichsinformationen anhand der mehreren Texturbilder, und erzeugt auch neue Polygoninformationen enthaltend einen Bereichs-ID zum Spezifizieren eines Bereichs und mehrerer Stücke von Scheitelpunktinformationen. Da die anderen Komponenten der Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 2 dieselben sind wie diejenigen gemäß dem Ausführungsbeispiel 1, wird die Erläuterung der anderen Komponenten im Folgenden weggelassen.
  • Als Nächstes wird die Arbeitsweise der Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 2 erläutert. Da die Arbeitsweise von jeder Komponente gemäß dem Ausführungsbeispiel 2 mit Ausnahme der Texturkombinationseinheit 9 dieselbe wie die gemäß dem Ausführungsbeispiel 1 ist, wird nur die Arbeitsweise der Texturkombinationseinheit 9 nachfolgend erläutert. Nachfolgend wird die Arbeitsweise der Texturkombinationseinheit 9 unter Verwendung der 19 bis 24 erläutert. 19 ist ein Flussdiagramm, das einen Ablauf des von der Texturkombinationseinheit 9 durchgeführten Prozesses zeigt. Jedes in die Texturkombinationseinheit eingegebene Texturbild hat einen eindeutigen ID zum Identifizieren des auf ein Polygon zu kartierenden Texturbilds zusätzlich zu einem Bild, das als ein Feld von Pixelwerten im zweidimensionalen Raum von 0,0 ≤ u ≤ 1,0 und 0,0 ≤ v ≤ 1,0 definiert ist und das ähnlich dem im Ausführungsbeispiel 1 erläuterten ist. 20 ist ein Diagramm, das zwei Texturbilder mit unterschiedlichen Auflösungen als ein Beispiel für die eingegebenen Texturbilder zeigt.
  • Aus Gründen der Einfachheit wird weiterhin angenommen, dass die eingegebenen Polygoninformationen ein dreieckiges Polygon zeigen, das aus drei Scheitelpunkten A, B und C besteht, gleich dem im Ausführungsbeispiel 1 gezeigten. Die Polygoninformationen können einen Textur-ID, der ein zu kartierendes Texturbild zeigt, Stücke von Scheitelpunktinformationen xA, yA, uA und vA über den Scheitelpunkt A, Stücke von Scheitelpunktinformationen xB, yB, uB und vB über den Scheitelpunkt B und Stücke von Scheitelpunktinformationen xC, yC, uC und vC über den Scheitelpunkt C enthalten. 21 ist ein Diagramm, das zwei Stücke von Polygoninformationen als ein Beispiel für die einzugebenden Polygoninformationen zeigt. 22 ist ein Diagramm, das ein Ergebnis des Zeichnens der in 21 gezeigten Polygoninformationen durch Verwendung der in 20 gezeigten Texturen durch eine Zeichnungsvorrichtung zeigt.
  • Gemäß 19 kombiniert die Texturkombinationseinheit 9 die Texturbilder in ein neues Texturbild, während ein Bereich von 0,0 ≤ u ≤ 1,0 und 0,0 ≤ v ≤ 1,0 als ein rechteckiger Bereich enthaltend das neue Texturbild, zu welchem die Texturbilder kombiniert sind, gesetzt wird, und zeichnet das neue Texturbild in dem Texturspeicher 6 auf (Schritt ST91). 23 ist ein Diagramm, das ein Beispiel für das Kombinieren der zwei in 20 gezeigten Texturen in einer solchen Weise zeigt, dass die beiden Texturen in einer horizontalen Richtung angeordnet werden. Ein Verfahren zum Kombinieren der Texturbilder ist beliebig. Beispielsweise werden die Texturbilder kombiniert durch Verwendung eines Verfahrens zum Optimieren der Position jedes der Texturbilder in einer solchen Weise, dass die Größe des Rechtecks enthaltend das neue Bild, zu welchem die Texturbilder kombiniert werden, minimiert ist.
  • Die Texturkombinationseinheit 9 zeichnet dann einen rechteckigen Bereich, der durch jedes der Bilder besetzt ist, in dem neuen Bild, zu dem die Bilder kombiniert sind, und den ID von jedem der Bilder, in dem Bereichsspeicher 5 als Bereichsinformationen auf (Schritt ST92). 24 zeigt die anhand des 21 gezeigten Texturbilds erzeugten Bereichsinformationen.
  • Schließlich setzt die Texturkombinationseinheit 9 die Textur-IDs der Polygoninformationen als den Bereichs-ID, so wie er ist, und gibt den Bereichs-ID zu der Aufbereitungseinheit 3 aus (Schritt ST93). Die Scheitelpunktkoordinaten jedes Polygons sind zweidimensional. Als eine Alternative können die Scheitelpunktkoordinaten jedes Polygons drei- oder höherdimensional sein, und die Texturkartierungsvorrichtung kann beispielsweise eine Projektionsumwandlung von jedem Polygon auf den zweidimensionalen Raum, der das Ausgangsbild im Schritt ST93 definiert, durchführen.
  • Wie vorher erläutert wurde, kann, da die Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 2 enthält: die Texturkombinationseinheit zum Empfangen mehrerer Texturbilder, die jeweils ein Bild und einen eindeutigen ID enthalten, und von Polygoninformationen enthaltend Textur-IDs, die jeweils die mehreren Texturbilder und mehrere Stücke von Scheitelpunktinformationen spezifizieren, und zum Erzeugen eines einzelnen Texturbilds und mehrerer Stücke von Bereichsinformationen anhand der mehreren Texturbilder, und auch zum Erzeugen neuer Polygoninformationen enthaltend einen Bereichs-ID, der einen Bereich und mehrere Stücke von Scheitelpunktinformationen spezifiziert; die Rasterungseinheit zum Erzeugen von Pixelinformationen enthaltend Positionskoordinaten, Texturkoordinaten und einen Bereichs-ID für jedes von sämtlichen Pixeln, die sich innerhalb eines Polygons, das durch die neuen Polygoninformationen gezeigt ist, in einem Ausgangsbild befinden; die Texturkartierungseinheit zum Verarbeiten der Texturkoordinaten der Pixelinformationen durch Verwenden der Bereichsinformationen, die durch den Bereichs-ID der Pixelinformationen spezifiziert sind, und zum Erhalten eines Pixelwerts aus dem Texturbild, das durch die Texturkombinationseinheit erzeugt wurde, durch Verwendung der hierdurch verarbeiteten Texturkoordinaten und Bestimmen eines Pixelwerts eines Pixels in dem Ausgangsbild, das durch die Positionskoordinaten der Pixelinformationen spezifiziert ist, durch Verwendung des hierdurch erhaltenen Pixelwerts; und die Ausgabeeinheit zum Ausgeben eines Ausgangssignals der Texturkartierungseinheit zu der Bildanzeigevorrichtung, die Texturkartierungsvorrichtung wiederholt einen rechteckigen Bereich mit einer beliebigen Breite und einer beliebigen Höhe in einem Texturbild auf ein Polygon kartieren, selbst in einem System, das Texturbilder, von denen jedes wiederholt auf ein Polygon als einzelne Texturbilder kartiert wird, vorbereitet.
  • Weiterhin kann, da bei der Texturkartierungsvorrichtung gemäß dem Ausführungsbeispiel 2 die Texturkombinationseinheit die mehreren Texturbilder zu einem einzelnen Texturbild kombiniert und einen Bereich in dem einzelnen Texturbild erzeugt, das durch jedes der Texturbilder, das noch zu kombinieren ist, besetzt ist, als Bereichsinformationen erzeugt, die Texturkartierungsvorrichtung leicht Polygoninformationen zuverlässig erzeugen.
  • Während die Erfindung anhand ihrer bevorzugten Ausführungsbeispiele beschrieben wurde, ist darauf hinzuweisen, dass eine beliebige Kombination von zwei oder mehr der vorbeschriebenen Ausführungsbeispiele durchgeführt werden kann, verschiedene Änderungen bei einer beliebigen Komponente gemäß einem der vorbeschriebenen Ausführungsbeispiele vorgenommen werden können und eine beliebige Komponente gemäß einem der vorbeschriebenen Ausführungsbeispiele weggelassen werden kann innerhalb des Bereichs der Erfindung.
  • GEWERBLICHE ANWENDBARKEIT
  • Wie vorstehend beschrieben ist, bestimmt, wenn ein Polygon gezeichnet wird, die Texturkartierungsvorrichtung gemäß der vorliegenden Erfindung die Farbinformationen jedes Pixels, das sich innerhalb des Polygons befindet, durch Verwendung eines Texturbilds, und ist geeignet für ein Texture Mapping in der Computergrafik.
  • ERLÄUTERUNGEN DER BEZUGSZAHLEN
    • 1 Bereichsinformations-Erzeugungseinheit, 2 Polygoninformations-Erzeugungseinheit, 3 Aufbereitungseinheit, 4 Ausgabeeinheit, 5 Bereichsspeicher, 6 Texturspeicher, 7 Ausgangsbildspeicher, 8 Bildanzeigevorrichtung, 9 Texturkombinationseinheit, 31 Rasterungseinheit, 32 Texturkartierungseinheit, 311 Texturkoordinaten-Interpolationseinheit.

Claims (8)

  1. Texturkartierungsvorrichtung, welche aufweist: eine Bereichsinformations-Erzeugungseinheit zum Erzeugen mehrerer Stücke von Bereichsinformationen, die jeweils einen Teilbereich eines Texturbilds zeigen; eine Polygoninformations-Erzeugungseinheit zum Erzeugen von Polygoninformationen enthaltend mehrere Stücke von Scheitelpunktinformationen, die jeweils Koordinaten eines Scheitelpunkts in einem Ausgangsbild und Texturkoordinaten, die in Korrespondenz mit dem Scheitelpunkt gebracht sind, enthalten, und ein Bereichs-ID zum Spezifizieren eines der mehreren Stücke von Bereichsinformationen; eine Rasterungseinheit zum Erzeugen von Pixelinformationen enthaltend Positionskoordinaten, Texturkoordinaten und ein Bereichs-ID für jedes von allen Pixeln, die sich innerhalb eines Polygons in dem Ausgangsbild befinden, welches Polygon durch die Polygoninformationen gezeigt ist; eine Texturkartierungseinheit zum Verarbeiten der Texturkoordinaten der Pixelinformationen durch Verwendung der Bereichsinformationen, die durch den Bereichs-ID der Pixelinformationen spezifiziert sind, und zum Erhalten eines Pixelwerts aus dem Texturbild durch Verwendung der verarbeiteten Texturkoordinaten und Bestimmen eines Pixelwerts eines Pixels in dem Ausgangsbild, welches Pixel gezeigt wird durch die Positionskoordinaten der Pixelinformationen, durch Verwendung des hierdurch erhaltenen Pixelwerts; und eine Ausgabeeinheit zum Ausgeben eines Ausgangssignals der Texturkartierungseinheit zu einer Bildanzeigevorrichtung.
  2. Texturkartierungsvorrichtung nach Anspruch 1, bei der nach dem Projizieren von Positionen der Scheitelpunkte auf zweidimensionale Koordinaten in dem Ausgangsbild, in dem eine Projektionsumwandlung bei den Polygoninformationen mit Positionskoordinaten, die im dreidimensionalen Raum definiert sind, gemäß einer Position eines virtuellen Betrachtungspunkts zu der Zeit des Zeichnens durchgeführt wird, die Polygoninformations-Erzeugungseinheit die Polygoninformationen zu der Rasterungseinheit ausgibt.
  3. Texturkartierungsvorrichtung nach Anspruch 1, bei der die Rasterungseinheit für jedes von allen Pixeln, die sich innerhalb des durch die Polygoninformationen gezeigten Polygons in dem Ausgangsbild befinden, Texturkoordinaten von den Texturkoordinaten jedes Scheitelpunkts gemäß einer Positionsbeziehung zwischen der Position jedes Scheitelpunkts, die die Polygoninformationen bildet, und einer Position des Pixels interpoliert, um die Texturkoordinaten zu berechnen, und Koordinaten der Position des Pixels und den Bereichs-ID, die die Polygoninformationen als Pixelinformationen haben, ausgibt.
  4. Texturkartierungsvorrichtung nach Anspruch 1, bei der die Texturkartierungseinheit die Texturkoordinaten der Pixelinformationen, die die Rasterungseinheit ausgibt, in einer solchen Weise verarbeitet, dass die Texturkoordinaten in ein Rechteck fallen, das durch die Bereichsinformationen, die durch den Bereichs-ID der Pixelinformationen spezifiziert sind, gezeigt wird, und einen Pixelwert aus dem Texturbild durch Verwendung der hierdurch verarbeiteten Texturkoordinaten erhält.
  5. Texturkartierungsvorrichtung nach Anspruch 1, bei der die Polygoninformations-Erzeugungseinheit nicht den Bereichs-ID hält, der die Polygoninformationen als ein Element der Polygoninformationen direkt bildet, sondern jede Scheitelpunktinformation in einer solchen Weise verarbeitet, dass der Bereichs-ID anhand der in die Texturkartierungseinheit eingegebenen Pixelinformationen rekonstruiert werden kann, wodurch der Bereichs-ID als ein Teil der Scheitelpunktinformationen gehalten wird.
  6. Texturkartierungsvorrichtung nach Anspruch 5, bei der die Texturkartierungseinheit einen Index des Bereichs-ID der Polygoninformationen anhand der in diese eingegebenen Pixelinformationen rekonstruiert und die Bereichsinformationen durch Verwendung dies hierdurch rekonstruierten Indexes erhält.
  7. Texturkartierungsvorrichtung, welche aufweist: eine Texturkombinationseinheit zum Empfangen mehrerer Texturbilder, die jeweils ein Bild und einen eindeutigen ID enthalten, und von Polygoninformationen enthaltend Textur-IDs, die jeweils die mehreren Texturbilder und mehrere Stücke von Scheitelpunktinformationen spezifizieren, und zum Erzeugen eines einzelnen Texturbilds und mehrerer Stücke von Bereichsinformationen aus den mehreren Texturbildern, und auch zum Erzeugen neuer Polygoninformationen enthaltend einen Bereichs-ID, der einen Bereich und mehrere Stücke von Scheitelpunktinformationen spezifiziert; eine Rasterungseinheit zum Erzeugen von Pixelinformationen enthaltend Positionskoordinaten, Texturkoordinaten und einen Bereichs-ID für jedes von allen Pixeln, die sich innerhalb eines durch die neuen Polygoninformationen gezeigten Polygons in einem Ausgangsbild befinden; eine Texturkartierungseinheit zum Verarbeiten der Texturkoordinaten der Pixelinformationen durch Verwenden von Bereichsinformationen, die durch den Bereichs-ID der Pixelinformationen spezifiziert sind, und zum Erhalten eines Pixelwerts aus dem Texturbild, das durch die Texturkombinationseinheit erzeugt wurde, durch Verwendung der hierdurch verarbeiteten Texturkoordinaten und Bestimmung eines Pixelwerts eines Pixels in dem Ausgangsbild, das durch die Positionskoordinaten der Pixelinformationen spezifiziert ist, durch Verwendung des hierdurch erhaltenen Pixelwerts; und eine Ausgabeeinheit zum Ausgeben eines Ausgangssignals der Texturkartierungseinheit zu einer Bildanzeigevorrichtung.
  8. Texturkartierungsvorrichtung nach Anspruch 7, bei der die Texturkombinationseinheit die mehreren Texturbilder zu einem einzelnen Texturbild kombiniert und einen Bereich in dem einzelnen Texturbild erzeugt, der durch jedes der Texturbilder, das noch zu kombinieren ist, als Bereichsinformationen besetzt ist.
DE112011105126.3T 2011-04-04 2011-04-04 Texturkartierungsvorrichtung Pending DE112011105126T5 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2011/002001 WO2012137243A1 (ja) 2011-04-04 2011-04-04 テクスチャマッピング装置

Publications (1)

Publication Number Publication Date
DE112011105126T5 true DE112011105126T5 (de) 2014-01-09

Family

ID=46968693

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112011105126.3T Pending DE112011105126T5 (de) 2011-04-04 2011-04-04 Texturkartierungsvorrichtung

Country Status (5)

Country Link
US (1) US9269181B2 (de)
JP (1) JP5657099B2 (de)
CN (1) CN103392190B (de)
DE (1) DE112011105126T5 (de)
WO (1) WO2012137243A1 (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9860520B2 (en) * 2013-07-23 2018-01-02 Sirona Dental Systems Gmbh Method, system, apparatus, and computer program for 3D acquisition and caries detection
CN104880893A (zh) * 2015-06-23 2015-09-02 上海恒润数字科技有限公司 环幕影院放映中修正图像畸变的方法
DE112016006387T5 (de) * 2016-03-15 2018-10-18 Mitsubishi Electric Corporation Texturabbildungsvorrichtung und texturabbildungsprogramm
JP7182863B2 (ja) * 2017-11-02 2022-12-05 キヤノン株式会社 情報生成装置、情報処理装置、制御方法、プログラム、及びデータ構造
GB2569546B (en) * 2017-12-19 2020-10-14 Sony Interactive Entertainment Inc Determining pixel values using reference images
CN109739403B (zh) * 2018-12-28 2020-08-07 北京字节跳动网络技术有限公司 用于处理信息的方法和装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08110952A (ja) 1994-10-07 1996-04-30 Yamaha Corp テクスチャマッピング装置
JP4069486B2 (ja) 1998-03-17 2008-04-02 ソニー株式会社 記憶回路制御装置およびグラフィック演算装置
AU5686299A (en) * 1998-08-20 2000-03-14 Raycer, Inc. Method and apparatus for generating texture
JP3367509B2 (ja) * 1999-12-16 2003-01-14 株式会社セガ 画像生成方法及びこれを用いた画像生成装置
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
JP2009099098A (ja) 2007-10-19 2009-05-07 Toshiba Corp コンピュータグラフィックス描画装置及び描画方法

Also Published As

Publication number Publication date
WO2012137243A1 (ja) 2012-10-11
JPWO2012137243A1 (ja) 2014-07-28
CN103392190B (zh) 2016-01-20
US9269181B2 (en) 2016-02-23
CN103392190A (zh) 2013-11-13
US20130278598A1 (en) 2013-10-24
JP5657099B2 (ja) 2015-01-21

Similar Documents

Publication Publication Date Title
DE3750784T2 (de) Generation eines intrapolierten charakteristischen Wertes zur Anzeige.
DE3855231T2 (de) Prioritätsauflösungssystem zwischen Polygonen mit Antialiasing
DE3854543T2 (de) Prioritätsverwaltung eines Tiefendatenpuffers für Echtzeitrechnersysteme zur Bilderzeugung.
DE68927471T2 (de) Verfahren zur Schattierung eines graphischen Bildes
DE68919024T2 (de) Verfahren und Prozessor zur Abtastumsetzung.
DE3856127T2 (de) Anzeigeverfahren und -vorrichtung für dreidimensionale Computergrafiken
DE69534331T2 (de) Verfahren und Vorrichtung zur Hervorhebung der Einzelheit einer Baumstruktur
DE3689654T2 (de) Rechnergraphik, prozessor für parallele subdivision.
DE4314265B4 (de) Displaysystem
DE60026197T2 (de) Detailgerichtete hierarchische Distanzfelder in der Objektmodellierung
DE69312505T2 (de) Polygonaufrasterung
DE68925399T2 (de) Verfahren und Gerät zur Bildtransformation
DE102005050846A1 (de) Perspektiveneditierwerkzeuge für 2-D Bilder
DE19619288A1 (de) System und Verfahren zur Dreieck-Rasterung mit in zwei Dimensionen verschachtelten Rahmenpuffern
DE69924699T2 (de) Verfahren zur Schaffung von als Oberflächenelemente dargestellten grafischen Objekten
DE102015113240A1 (de) System, verfahren und computerprogrammprodukt für schattierung unter verwendung eines dynamischen objektraumgitters
DE19917092A1 (de) Verfahren zur Rasterisierung eines Graphikgrundelements
DE112012006746T5 (de) Kartenanzeigevorrichtung
DE112011105126T5 (de) Texturkartierungsvorrichtung
DE3315148C2 (de)
DE102018125472B4 (de) Grafikprozessor, der Abtastungs-basiertes Rendering durchführt, und Verfahren zum Betreiben desselben
DE60106301T2 (de) Verfahren und system für die ausfuhr von datenverbänden zu zweidimensionalen oder dreidimensionalen geometrischen entitäten
DE68923191T2 (de) Dreidimensionales graphisches Verarbeitungsgerät.
DE102006023633A1 (de) Gleichzeitige Projektion von mehrfach verzweigten Gefäßen und ihrer Umgebung auf einem einzigen Bild
DE69924230T2 (de) Verfahren zur Modellierung von durch Oberflächenelemente dargestellten grafischen Objekten

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R084 Declaration of willingness to licence