DE69722535T2 - Verfahren und Gerät zum Schaffen von Texturdaten - Google Patents

Verfahren und Gerät zum Schaffen von Texturdaten Download PDF

Info

Publication number
DE69722535T2
DE69722535T2 DE69722535T DE69722535T DE69722535T2 DE 69722535 T2 DE69722535 T2 DE 69722535T2 DE 69722535 T DE69722535 T DE 69722535T DE 69722535 T DE69722535 T DE 69722535T DE 69722535 T2 DE69722535 T2 DE 69722535T2
Authority
DE
Germany
Prior art keywords
texture data
texture
memory
data
read
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
DE69722535T
Other languages
English (en)
Other versions
DE69722535D1 (de
Inventor
Hiroyuki Shinagawa-ku Ozawa
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Application granted granted Critical
Publication of DE69722535D1 publication Critical patent/DE69722535D1/de
Publication of DE69722535T2 publication Critical patent/DE69722535T2/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
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping

Description

  • Die vorliegende Erfindung bezieht sich auf ein neues und verbessertes Verfahren und Gerät zum Lesen und zum Bildaufbereiten von Texturdaten zur Verwendung bei einem Texturabbildungsverfahren, welches den Ausdruck in einem dreidimensionalen Computergrafiksystem wesentlich verbessert. Insbesondere kann die vorliegende Erfindung bei verschiedenen Gebieten angewendet, beispielsweise bei CAD-Systemen (computer-unterstützte Konstruktion) und Spielmaschinen angewandt werden.
  • Textur-Abbilden wird dazu verwendet, um Texturdaten, beispielsweise Muster oder natürliche Bilder auf einem Objekt bei Computergrafik anzuordnen. Dieses Objekt wird üblicherweise unter Verwendung mehrerer Polygone gebildet, beispielsweise eines dreiecksförmigen Polygons oder eines quadratischen Polygons. Daher kann unter Verwendung der Texturabbildung ein realistisches Bild erzeugt werden. Beispielsweise sei der Zustand betrachtet, wo ein Objekt in Quadratform-Texturdaten sich dreht. Da wie oben erwähnt üblicherweise ein Objekt aus mehreren Polygonen, beispielsweise Dreiecken gebildet wird, werden die Texturdaten als Polygoneinheit abgebildet. In bezug auf diese Texturdatenabbildung werden die Texturdaten vorher in einem Speicher gespeichert, und die Texturabbildung wird durch Lesen der Texturdaten von dem Speicher gemäß der berechneten Speicheradressierung durchgeführt.
  • Ein Beispiel einer vor kurzem vorgeschlagenen Texturabbildungsoperation ist folgendes:
    • 1) Texturkoordinaten (S1, T1, Q1), S2, T2, Q2) und (S3, T3, Q3) werden zu Scheitelpunkten eines Dreiecks bestimmt.
    • 2) durch lineare Interpolation der Texturkoordinaten der Scheitel des Dreiecks werden Texturkoordinaten (S, T, Q) eines Innenpunkts des Dreiecks erhalten.
    • 3) durch Durchführen von Teilungsoperationen von U = S/Q und V = T/Q wird einer Speicheradresse (U, V) erhalten.
    • 4) Texturdaten werden dann vom Speicher mit der Speicheradresse, die im Schritt 3 erhalten wurde, gelesen und auf dem Dreieck angeordnet.
  • Bei einem herkömmlichen Computergrafiksystem werden die Texturdaten in einer Weise abgebildet, dass ein Texturdateniesegerät Texturdaten von einem herkömmlichen Speicher liest. Da jedoch die Lesegeschwindigkeit von Texturdaten vom Speicher nicht zufriedenstellend hoch ist, wird die Leistung des Texturabbildungsgeräts eingeschränkt. Um dieses Problem zu lösen, kann eine Cache-Einheit, welche vorübergehend Texturdaten speichert, zwischen dem Texturdaten-Lesegerät und dem Speicher angeordnet werden. In diesem Fall kann das Datenlesegerät Texturdaten von der Cache-Einheit mit hoher Geschwindigkeit lesen.
  • Bei diesem Aufbau können, wenn die Größe von Texturdaten kleiner ist als die Speicherkapazität der Cache-Einheit die Texturdaten mit hoher Geschwindigkeit gelesen werden. Wenn jedoch die Größe der Texturdaten größer ist als die Speicherkapazität der Cache-Einheit, sollten, um die Texturdaten in der Cache-Einheit zu ändern, die Texturdaten vom Speicher gelesen werden und dann in die Cache-Einheit geschrieben werden. Somit arbeitet die Cache-Einheit nicht effektiv als Einrichtung zum Liefern von Erfassungsdaten mit hoher Geschwindigkeit.
  • Da außerdem der Schaltungsaufwand der Cache-Einheit groß ist, wenn diese verwendet wird, kann eine kleine Texturabbildungseinheit nicht erreicht werden.
  • Entsprechende Merkmale der vorliegenden Erfindung sind in den Patentansprüchen 1 und 8 herausgestellt.
  • Ausführungsformen der vorliegenden Erfindung erfüllen eine lang existierende Notwendigkeit nach verbesserten Verfahren und einem Gerät zum Texturdatenlesen und zur Bildaufbereitung, wobei die oben beschriebenen Schwierigkeiten in Verbindung mit Systemen, die bisher verfügbar waren, vermieden werden.
  • Kurz und allgemein ausgedrückt liefern Ausführungsformen der Erfindung ein neues und verbessertes Texturlese- und Bildaufbereitungssystem für eine nicht aufwendige Hochgeschwindigkeitstextur-Abbildungseinheit, ohne die Notwendigkeit, einen großen Schaltungsaufwand wie eine Cache-Einheit zu verwenden.
  • Insbesondere werden bei einem Merkmal der vorliegenden Erfindung, wenn eine Speicheradresse eines Pixels, für welche Texturdaten von einem Speicher gelesen werden, die gleiche ist wie die Speicheradresse eines Pixels, welches dazu benachbart ist, Texturdaten nicht vom Speicher gelesen, und, wenn die Speicheradresse des Pixels, für welche Texturdaten vom Speicher gelesen werden, von der Speicheradresse des Pixels, welches dazu benachbart ist, verschieden ist, werden Texturdaten, die gelesen wurden, wieder verwendet, um so die Häufigkeit der Speicherzugriffsoperation zu reduzieren.
  • Beispielhaft und nicht notwendigerweise einschränkend liefert eine Ausführungsform der Erfindung ein Texturdaten-Lesegerät zum Lesen von Texturdaten, die von einem Speicher abgebildet werden, wobei das Texturdaten-Lesegerät eine Speicheradresse eines Pixels, für welche Texturdaten vom Speicher gelesen werden, und eine Speicheradresse eines Pixels, welches dazu benachbart ist, vergleicht, auf den Speicher mit der Adresse des Pixels zugreift, die neuen Texturdaten nur dann liest, wenn die Speicheradresse des Pixels von der Speicheradresse des Pixels, welches dazu benachbart ist, verschieden ist, und die gespeicherten Texturdaten bevorzugt als das Lesen neuer Texturdaten vom Speicher wieder verwendet, wenn die Speicheradresse des Pixels die gleiche ist wie die Speicheradresse des Pixels, welches dazu benachbart ist, solange Pixel mit der gleichen Adresse sich fortsetzen.
  • Eine andere Ausführungsform der Erfindung liefert ein Texturdaten-Lesegerät zum Lesen von Texturdaten, die abzubilden sind, von einem Speicher, welches eine Speicheradress-Vergleichseinrichtung aufweist, um eine Speicheradresse eines Pixels, für welches Texturdaten vom Speicher gelesen werden, mit einer Speicheradresse eines Pixels, welches dazu benachbart ist, zu vergleichen und um zu bestimmen, ob Texturdaten vom Speicher zu lesen sind oder nicht, eine Vergleichsergebnis-Speichereinrichtung, um Information, die zeigt, ob Texturdaten, die neu aus dem Speicher gelesen werden, verwendet werden, oder Texturdaten, die aus dem Speicher gelesen werden, wieder verwendet werden, entsprechend dem Vergleichsergebnis der Speicheradress-Vergleichseinrichtung, eine Speicherzugriffseinrichtung, um auf den Speicher entsprechend dem Vergleichsergebnis der Speicheradress-Vergleichseinrichtung zuzugreifen und um Texturdaten vom Speicher zu lesen, eine Texturdaten-Speichereinrichtung, um die Texturdaten, die vom Speicher gelesen werden, durch die Speicherzugriffseinrichtung, zu speichern, und eine Texturdaten-Restrukturiereinrichtung, um gewünschte Texturdaten von der Texturdaten-Speichereinrichtung zu lesen, die der Information entsprechen, welche in der Vergleichsergebnis-Speichereinrichtung gespeichert sind, wobei, wenn eine Speicheradresse eines Pixels, für welche Texturdaten vom Speicher gelesen werden, die gleiche ist wie eine Speicheradresse des Pixels, welches benachbart dazu ist, Texturdaten nicht vom Speicher gelesen werden, sondern Texturdaten von Pixel mit der gleichen Adresse wieder verwendet werden.
  • Eine weitere Ausführungsform der Erfindung stellt ein Bildaufbereitungsgerät bereit, welches mehrere Speicher aufweist, und mehrere Texturdaten-Leseeinheiten, um Textur- daten von Speichern zu lesen, wobei die Texturdaten-Leseeinheiten mit den Speichern parallel verbunden sind, Texturdaten von mehreren Pixel von den Speichern gelesen werden, wobei alle Texturdaten-Leseeinheiten eine Speicheradresse eines Pixels, für welche Texturdaten vom Speicher gelesen werden, mit einer Speicheradresse eines Pixels, welches dazu benachbart ist, vergleicht, auf den Speicher mit der Speicheradresse des Pixels zugreift, neue Texturdaten lediglich dann liest, wenn die Speicheradresse des Pixels von der Speicheradresse des Pixels, welches dazu benachbart ist, verschieden ist, und die gespeicherten Texturdaten bevorzugt als das Lesen neuer Texturdaten vom Speicher wieder verwendet, wenn die Speicheradresse des Pixels die gleiche ist, wie die Speicheradresse des Pixels, welches dazu benachbart ist, solange wie Pixel mit der gleichen Speicheradresse sich fortsetzen.
  • Bei Ausführungsformen der vorliegenden Erfindung werden, wenn eine Speicheradresse eines Pixels, für welches Texturdaten von einem Speicher gelesen werden, die gleiche ist wie eine Speicheradresse eines Pixels, welches dazu benachbart ist, Texturdaten nicht vom Speicher gelesen. Wenn die Speicheradresse des Pixels, für welche Texturdaten vom Speicher gelesen werden, von der Speicheradresse des Pixels, welches dazu benachbart ist, verschieden ist, werden Texturdaten, die gelesen wurden, wieder verwendet. Damit wird die Häufigkeit der Speicherzugriffsoperation reduziert.
  • Folglich erfüllen Ausführungsformen der Erfindung eine lang existierende Notwendigkeit nach neuen und verbesserten einfachen und wirksamen Verfahren und ein Gerät, um Texturdaten zu lesen und aufzubereiten.
  • Ausführungsformen der Erfindung werden anschließend beispielhaft mit Hilfe der beiliegenden Zeichnungen beschrieben, in denen:
  • 1 ein Blockdiagramm einer Ausführungsform der vorliegenden Erfindung ist;
  • 2A und 2B schematische Diagramme sind, um ein Beispiel der Operation der Ausführungsform der vorliegenden Erfindung zu erläutern;
  • 3A und 3B schematische Diagramme sind, um die Operation eines Vier-Punkt-Interpolationsprozesses gemäß einer Ausführungsform der vorliegenden Erfindung zu erläutern;
  • 4 ein Blockdiagramm ist, welches ein Bildaufbereitungsgerät mit einem Texturdaten-Lesegerät zeigt, die alle eine Ausführungsform der vorliegenden Erfindung bilden;
  • 5 ein Blockdiagramm ist, welches ein Bildaufbereitungsgerät mit mehreren Texturdaten-Lesegeräten gemäß einer anderen Ausführungsform der vorliegenden Erfindung zeigt;
  • 6 schematische Diagramme zeigt, um das allgemeine Konzept der Texturabbildung zu erläutern; und
  • 7A und 7B Blockdiagramm sind, die den Aufbau eines vor kurzem vorgeschlagenen Texturdaten-Lesegeräts zeigen.
  • Gemäß den beiliegenden Zeichnungen bezeichnen gleiche Bezugszeichen gleiche oder entsprechende Teile durchwegs in den Figuren.
  • Der Aufbau und die Wirkungsweise eines vor kurzem vorgeschlagenen Texturdatenabbildungs-/Lese- und Bildaufbereitungssystems sind in 6, 7A und 7B gezeigt. Textur-Abbilden wird dazu verwendet, um Texturdaten, beispielsweise Muster oder natürliche Bilder auf einem Objekt bei Computergrafik anzuordnen. Dieses Objekt wird üblicherweise unter Verwendung mehrerer Polygone gebildet, beispielsweise eines dreiecksförmigen Polygons oder eines quadratischen Polygons. Daher kann unter Verwendung der Texturabbildung ein realistisches Bild erzeugt werden. Beispielsweise sei der Zustand betrachtet, wo ein Objekt in Quadratform-Texturdaten sich dreht. Da wie oben erwähnt üblicherweise ein Objekt aus mehreren Polygonen, beispielsweise Dreiecken gebildet wird, werden die Texturdaten als Polygoneinheit abgebildet. In Bezug auf diese Texturdatenabbildung werden die Texturdaten vorher in einem Speicher gespeichert, und die Texturabbildung wird durch Lesen der Texturdaten von dem Speicher gemäß der berechneten Speicheradressierung durchgeführt.
  • Ein Beispiel einer Texturabbildungsoperation ist folgendes:
    • 1) Texturkoordinaten (S1, T1, Q1), S2, T2, Q2) und (S3, T3, Q3) werden zu Scheitelpunkten eines Dreiecks bestimmt.
    • 2) durch lineare Interpolation der Texturkoordinaten der Scheitel des Dreiecks werden Texturkoordinaten (S, T,Q) eines Innenpunkts des Dreiecks erhalten.
    • 3) durch Durchführen von Teilungsoperationen von U = S/Q und V = T/Q wird einer Speicheradresse (U, V) erhalten.
    • 4) Texturdaten werden dann vom Speicher mit der Speicheradresse, die im Schritt 3 erhalten wurde, gelesen und auf dem Dreieck angeordnet.
  • Bei einem herkömmlichen Computergrafiksystem werden die Texturdaten in einer Weise abgebildet, dass ein Texturdatenlesegerät 51 Texturdaten von einem herkömmlichen Speicher 52 liest. Da jedoch die Lesegeschwindigkeit von Texturdaten vom Speicher 52 nicht zufriedenstellend hoch ist, wird die Leistung des Texturabbildungsgeräts eingeschränkt.
  • Um dieses Problem zu lösen, kann eine Cache-Einheit 53, welche vorübergehend Texturdaten speichert, zwischen dem Texturdaten-Lesegerät 51 und dem Speicher 52 angeordnet werden. In diesem Fall kann das Datenlesegerät 51 Texturdaten von der Cache-Einheit 53 mit hoher Geschwindigkeit lesen.
  • Bei diesem Aufbau können, wenn die Größe von Texturdaten kleiner ist als die Speicherkapazität der Cache-Einheit, die Texturdaten mit hoher Geschwindigkeit gelesen werden. Wenn jedoch die Größe der Texturdaten größer ist als die Speicherkapazität der Cache-Einheit, sollten, um die Texturdaten in der Cache-Einheit zu ändern, die Texturdaten vom Speicher gelesen werden und dann in die Cache-Einheit geschrieben werden. Somit arbeitet die Cache-Einheit nicht effektiv als Einrichtung zum Liefern von Erfassungsdaten mit hoher Geschwindigkeit.
  • Da außerdem der Schaltungsaufwand der Cache-Einheit groß ist, wenn diese verwendet wird, kann eine kleine Texturabbildungseinheit nicht erreicht werden.
  • Bei Computergrafik wird, wenn ein Bild gezeichnet wird, dieses in Abtastzeilen unterteilt und in der Reihenfolge der Abtastzeilen gezeichnet. Somit wird das typische Dreieckspolygon in aufeinanderfolgende Abtastzeilen zur Anzeige unterteilt. Anschließend wird bei einer Ausführungsform der Erfindung der Fall, wo Texturdaten einer Abtastzeile von einem Speicher gelesen werden, beschrieben.
  • Wie man am besten in 1 sieht, liest das Gerät Texturdaten von einem Speicher. Das in 1 gezeigt Gerät besteht aus einem Texturdaten-Lesegerät und einem Speicher 14. Das Texturdaten-Lesegerät 12 besteht aus einer Speicheradress-Vergleichseinheit 15, einer Vergleichsergebnis-Speichereinheit 16, einer Speicherzugriffseinheit 17, einer Texturdaten-Speichereinheit 18 und einer Texturdaten-Restrukturierungseinheit 19. Eine Speicheradresse (U, V) wird zur Speicheradress-Vergleichseinheit 15 über einen Eingangsanschluss 11 geliefert.
  • Die Speicheradress-Vergleichseinheit 15 ist ein Speicheradresskomparator, der die vorhandene Speicheradresse eines Pixels, die zu betrachten ist, und für welche Texturdaten vom Speicher 14 gelesen sind, und die vorherige Speicheradresse eines Pixels benachbart dazu vergleicht und bestimmt, ob Texturdaten vom Speicher zu lesen sind oder nicht. Das Vergleichsergebnis wird durch die Vergleichergebnis-Speichereinheit 16 bereitgestellt. Außerdem wählt die Speicheradress-Vergleichseinheit 15 lediglich die Speicheradresse (U, V) der Texturdaten aus, die vom Speicher 14 gelesen werden sollten, gemäß dem Vergleichsergebnis, und beliefert dann die Speicherzugriffseinheit 17 mit der ausgewählten Adresse (U, V). Das heißt, wenn die vorhandene Speicheradresse des vorhandenen Pixels, welches zu lesen ist, sich gegenüber der vorherigen Speicheradresse des dazu benachbarten Pixels unterscheidet, wird die vorhandene Speicheradresse des vorhandenen Pixels, welches zu lesen ist, zur Speicherzugriffseinheit 17 geliefert, und die Information, welche das Ergebnis darstellt, wird simultan der Vergleichergebnis-Speichereinheit 16 bereitgestellt. Wenn dagegen die vorhandene Speicheradresse des vorhandenen Pixels, welches zu lesen ist, die gleiche ist wie die vorherige Speicheradresse des dazu benachbarten Pixels, wird die vorhandene Speicheradresse des vorhandenen Pixels, die zu lesen ist, nicht der Speicherzugriffseinheit 17 bereitgestellt. Anstelle davon wird lediglich die Information, die das Ergebnis darstellt, der Vergleichsergebnis-Speichereinheit 16 bereitgestellt.
  • Die Vergleichsergebnis-Speichereinheit 16 ist ein Vergleichsergebnisspeicher, der die Information speichert, die das Ergebnis zeigt, welches von der Speicheradress-Vergleichseinheit 15 geliefert wird. Diese Information zeigt das Ergebnis im Hinblick darauf, ob die Texturdaten zu verwenden sind, die neu vom Speicher gelesen werden, oder die Texturdaten, die vorher vom Speicher gelesen wurden.
  • Die Speicherzugriffseinheit 17 ist eine Speicherzugriffseinrichtung, welche auf den Speicher 14 zugreift und die Texturdaten C (U, V) vom Speicher 14 gemäß der gelieferten Speicheradresse von der Speicheradress-Vergleichseinheit 15 liest.
  • Die Texturdaten-Speichereinrichtung 18 ist ein Texturdatenspeicher, der die Texturdaten C (U, V) speichert, die vom Speicher 17 durch die Speicherzugriffseinheit 17 gelesen werden.
  • Die Texturdaten-Umstrukturierungseinheit 19 ist eine Texturdaten-Restrukturierungseinheit, die gewünschte Texturdaten C (U, V) von der Texturdaten-Speichereinheit 18 gemäß der Vergleichsergebnisinformation liest, die in der Vergleichsergebnis-Speichereinheit 16 gespeichert ist. Das heißt, wenn die Information von der Vergleichsergebnis-Speichereinheit 16 zeigt, dass die vorhandene Speicheradresse des vorhandenen Pixels, welches zu lesen ist, die gleiche ist wie die vorherige Speicheradresse des dazu benachbarten Pixels, werden die Texturdaten, die der vorherigen Speicheradresse des dazu benachbarten Pixel entsprechen, rekursiv in der Texturdaten-Umstrukturierungseinheit 19 verwendet. Diese Operation wird anschließend weiter ausführlich beschrieben.
  • Somit werden im Texturlesegerät 12, wenn die vorhandene Speicheradresse eines vorhandenen Pixels, für welches Texturdaten vom Speicher 14 gelesen werden, die gleiche ist wie die vorherige Speicheradresse eines dazu benachbarten Pixels, Texturdaten nicht vom Speicher 14 gelesen. Bevorzugt werden die Texturdaten, die der vorherigen Speicheradresse des benachbarten Pixels entsprechen, die gelesen wurden, wieder verwendet. Wenn jedoch die vorhandene Speicheradresse eines vorhandenen Pixels, für welches Texturdaten von einem Speicher 14 gelesen werden, sich von der vorherigen Speicheradresse des dazu benachbarten Pixels unterscheidet, werden Texturdaten, die der vorhandenen Speicheradresse des vorhandenen Pixels entsprechen, vom Speicher 14 gelesen, und die neu gelesenen Texturdaten werden verwendet. Folglich wird bei der vorliegenden Ausführungsform die Häufigkeit, mit der auf den Speicher zugegriffen wird, wesentlich reduziert.
  • Anschließend wird mit Hilfe von 2 ein Beispiel der Verarbeitung, die durch die Struktur, die in 1 gezeigt ist, erzielt wird, beschrieben. Die Speicheradress-Vergleichseinheit 15, die in 1 gezeigt ist, vergleicht eine vorhandene Speicheradresse eines vorhandenen Pixels, für welche Texturdaten vom Speicher gelesen werden, mit einer Speicheradresse eines Pixels benachbart dazu und bestimmt, ob Texturdaten vom Speicher zu lesen sind oder nicht.
  • Wie in 2 gezeigt ist, vorausgesetzt, dass es fünf Pixel auf einer Abtastzeile gibt, und dass Speicheradressen (U, V) (einschließlich des Dezimalteils) zum Lesen von Texturdaten vom Speicher 14 wie folgt sind:
    (1,4, 1,2), (1,9, 1,7), (2,4, 2,2), (2,9, 207), (3,4, 3,2)
  • Die Speicheradresswerte können in ganze Zahlen wie folgt abgerundet werden:
    (1, 1), (2, 2), (2, 2), (3, 3 ), (3, 3)
  • Um somit die Texturdaten für fünf Pixel zu erhalten, sollte die Leseoperation für den Speicher 14 fünfmal durchgeführt werden.
  • Wenn eine Speicheradresse eines jeden Pixels und eine Speicheradresse eines vorhergehenden Pixels, welches dazu benachbart ist, verglichen werden, ist die Speicheradresse des dritten Pixels die gleiche wie die Speicheradresse des zweiten Pixels. Die Speicheradresse des fünften Pixels ist außerdem die gleiche wie die Speicheradresse des vierten Pixels. Somit bestimmt die Speicheradress-Vergleichseinheit 15 die Wiederverwendungs-Texturdaten des zweiten Pixels für das dritte Pixel und die Texturdaten des vierten Pixels für das fünfte Pixel und sendet dadurch lediglich die folgenden drei Speicheradressen zur Speicherzugriffseinheit 17, wie in 1 gezeigt ist.
    (1, 1), (2, 2), (3, 3)
  • Außerdem sendet die Speicheradress-Vergleicheinheit 15 Information Info, die zeigt, dass die Texturdaten, die neu vom Speicher 14 gelesen werden, verwendet werden, oder dass Texturdaten, die vom Speicher 14 gelesen wurden, für jedes Pixel verwendet werden, zur Vergleichsergebnis-Speichereinheit 16.
  • Als Ergebnis der Information Info, die zu liefern ist, als Beispiel der Information Info, die zu liefern ist, vorausgesetzt, dass ein Pixel, für welches Texturdaten, die neu vom Speicher gelesen werden, verwendet werden, mit "1" bezeichnet ist, und dass ein Pixel, für welches Texturdaten, die vom Speicher gelesen wurden, wieder verwendet wird, mit "0" bezeichnet wird, kann die Information Info mit einem Bit dargestellt werden. Die Information Info besteht aus Daten eines Bits für jede Datenabtastung, beispielsweise ein Bit, d. h., Info1 als Vergleichsergebnis des ersten Pixels, Info2 als Vergleichsergebnis des zweiten Pixels, Info3 als Vergleichsergebnis des dritten Pixels, Ino4 als Vergleichsergebnis des vierten Pixels, und Infos als Vergleichsergebnis des fünften Pixels. Im Beispiel der Pixel auf der Abtastzeile, die in 2 gezeigt ist, ist die Information Info gleich "1, 1, 0, 1, 0".
  • Die Vergleichsergebnis-Speichereinheit 16, die in 1 gezeigt ist, ist ein FIFO-Pufferspeicher (first in – first out) der die Information Info speichert, die zeigt, dass die Texturdaten neu vom Speicher gelesen werden, verwendet werden, oder die Texturdaten des unmittelbar vorhergehenden Pixels wiederverwendet werden, welches von der Speicheradress-Vergleicheinheit 15 empfangen werden. Die Vergleichsergebnis-Speichereinheit 16 liest nacheinander die Information Info, die einer Anfrage entspricht, die von der Texturdaten-Restrukturierungseinheit 19 empfangen wird, die in 1 gezeigt ist.
  • Die Speicherzugriffseinheit 17, die in 1 gezeigt ist, greift auf den Speicher 14 entsprechend der bereitgestellt Speicheradresse der Speicheradress-Vergleichseinheit 15 zu und liest die Texturdaten vom Speicher 14.
  • In dem Beispiel der fünf Pixel auf der Abtastzeile, die in 2 gezeigt ist, werden Texturdaten vom Speicher 14 gemäß den drei Speicheradressen (1, 1), (2, 2), (3, 3) gelesen, die von der Speicheradress-Vergleichseinheit 15 empfangen werden.
  • Wenn angenommen wird, dass die Texturdaten, die gelesen wurden, mit C (U, V) bezeichnet sind, werden drei Texturdaten C (1, 1), C (2, 2) und C (3, 3) zur Texturdaten-Speichereinheit 18 geliefert, die in 1 gezeigt ist.
  • Die Texturdaten-Speichereinheit 18, die in 1 gezeigt ist, ist ein FIFO-Pufferspeicher, der Texturdaten speichert, die vom Speicher 14 durch die Speicherzugriffseinheit 17 gelesen werden. Die Texturdaten, die in der Texturdaten-Speichereinheit 18 gespeichert sind, werden nacheinander gemäß einer Anfrage gelesen, die von Texturdaten-Restrukturierungseinheit 19 empfangen wird.
  • Die Texturdaten-Restrukturierungseinheit 19, die in 1 gezeigt ist, liest gewünschte Texturdaten von der Texturdaten-Speichereinheit 18 entsprechend der Information, die in der Vergleichsergebnis-Speichereinheit 16 gespeichert ist.
  • In dem Beispiel der fünf Pixel auf der Abtastzeile, die in 2 gezeigt ist, speichern die Vergleichsergebnis-Speichereinheit 16 und die Texturdaten-Speichereinheit 18 die folgenden Daten.
  • Vergleichergebnis-Speichereinheit: 1, 1, 0, 1, 0
  • Texturdaten-Speichereinheit: C (1, 1), C (2, 2), C (3, 3)
  • Anschließend wird in der Texturdaten-Umstrukturierungseinheit 19 ein Verfahren zum Umstrukturieren von Texturdaten für fünf Pixel mit der Information, die in der Vergleichsergebnis-Speichereinheit 16 und in der Texturdaten-Speichereinheit 18 gespeichert ist, beschrieben.
  • Erstes Pixel: die Information für das erste Pixel (Ino1) wird von der Vergleichsergebnis-Speichereinheit 16 gelesen. Da diese Information die "1" zeigt, werden erste Texturdaten C (1, 1) von der Texturdaten-Speichereinheit 18 gelesen und die gelesenen Texturdaten C (1, 1) werden verwendet.
  • Zweites Pixel: anschließend wird die Information für das zweite Pixel (Ino2) von der Vergleichsergebnis-Speichereinheit 16 gelesen. Da diese Information ebenfalls die "1" zeigt, werden neue Texturdaten C (2, 2) von den Texturdaten-Speichereinheiten 18 gelesen, und die gelesenen Texturdaten C (2, 2) werden verwendet.
  • Drittes Pixel: anschließend wird die Information für das dritte Pixel (Ino3) von der Vergleichsergebnis-Speichereinheit 16 gelesen. Da diese Information ebenfalls die "0" zeigt, werden neue Texturdaten nicht von der Texturdaten-Speichereinheit 18 gelesen, sondern, anstelle der neuen Texturdaten werden die Texturdaten C (2, 2), die gelesen wurden, wieder verwendet.
  • Viertes Pixel: danach wird die Information für das vierte Pixel (Ino4) von der Vergleichsergebnis-Speichereinheit 16 gelesen. Da diese Information ebenfalls die "1" zeigt, werden neue Texturdaten C (3, 3) von den Texturdaten-Speichereinheiten 18 gelesen, und die gelesenen Texturdaten C (3, 3) werden verwendet.
  • Fünftes Pixel: anschließend wird die Information für das fünfte Pixel (Ino5) von der Vergleichsergebnis-Speichereinheit 16 gelesen. Da diese Information ebenfalls die "0" zeigt, werden neue Texturdaten nicht von der Texturdaten-Speichereinheit 18 gelesen, son dern, anstelle der neuen Texturdaten werden die Texturdaten C (3, 3), die gelesen wurden, wieder verwendet.
  • Auf diese Art und Weise werden die folgenden Texturdaten für fünf Pixel mit der Speicherzugriffsoperation, die lediglich dreimal vorkommt, umstrukturiert.
    C (1, 1), C (2, 2), C (2, 2), C (3, 3), C (3, 3)
  • Gemäß der vorliegenden Ausführungsform werden, wenn die vorhandene Speicheradresse eines Pixels, die zu lesen ist, für welche Texturdaten vom Speicher gelesen werden, die gleiche ist wie die vorherige Speicheradresse eines Pixels, welches dazu benachbart ist, Texturdaten nicht vom Speicher gelesen. Anstelle davon werden die Texturdaten, die für ein Pixel mit der gleichen Speicheradresse gelesen wurden, wieder verwendet. Da somit die Anzahl der Zyklen der Speicherzugriffsoperationen reduziert wird, wird, sogar wenn ein Speicher mit niedriger Geschwindigkeit verwendet wird, ein Texturdaten-Lesegerät, welches mit hoher Geschwindigkeit arbeitet, bereitgestellt.
  • Zusätzlich können Ausführungsformen der Erfindung für den Fall angewandt werden, wo die Texturdaten, die der Speicheradresse eines Pixels, welches zu lesen ist, entsprechen, interpoliert werden, wobei die vier Sätze von Texturdaten benachbart zu der Speicheradresse verwendet werden, wie in 3 gezeigt ist, um somit Texturdaten hoher Qualität zu erzeugen.
  • Anschließend wird ein Beispiel, bei dem die Texturdaten, die der bereitgestellten Speicheradresse eines Pixels, welches zu lesen ist, entsprechen, von den vier Sätzen der Texturdaten mit der Struktur, die in 1 gezeigt ist, interpoliert werden, beschrieben.
  • Wenn vier benachbarte Pixel interpoliert werden, werden vier Sätze an Texturdaten von den vier entsprechenden Speicheradressen gelesen, die am engsten benachbart zu einer Speicheradresse jedes laufenden Pixels sind. Wenn angenommen wird, dass der Dezimalteil einer bestimmten Speicheradresse als (U0, V0) abgerundet wird, werden Texturdaten von den vier Speicheradressen (U0, V0), (U0+1, V0), (U0, V0+1) und (U0+1, V0+1) gelesen.
  • Im Beispiel, welches in 3 gezeigt ist, sollten Texturdaten mit den folgenden zwanzig Speicheradressen gelesen werden.
  • Figure 00110001
  • Figure 00120001
  • Die Speicheradress-Vergleichseinheit 15, die in 1 gezeigt ist, empfängt die vorhandene Speicheradresse des Pixels, welches zu lesen ist, und berechnet die vier Speicheradressen, die der vorhandenen Speicheradresse benachbart sind. Die Speicheradress-Vergleichseinheit 15 vergleicht die vier Speicheradressen, die der vorhandenen Speicheradresse des Pixels, welches zu lesen ist, benachbart sind und die vier Speicheradressen, die der vorherigen Speicheradresse des Pixels, welches benachbart dazu ist, benachbart ist, und eliminiert redundante Speicheradressen als die gleiche Speicheradresse. Lediglich unterschiedliche Speicheradressen, die nicht beseitigt sind, werden der Speicherzugriffseinheit 17 bereitgestellt.
  • In dem Beispiel, welches in 3 gezeigt ist, sendet die Speicheradress-Vergleichseinheit 15 die folgenden 10 Speicheradressen zur Speicherzugriffseinheit 17.
  • Figure 00120002
  • Zusätzlich beliefert die Speicheradress-Vergleichseinheit 15 die Vergleichsergebnis-Speichereinheit 16 mit der Information 1 und der Information 2 als die Information, die das Vergleichsergebnis zeigt. Die Information 1 und die Information 2 ist für die Texturdaten-Restrukturierungseinheit 19 notwendig, die in 1 gezeigt ist, um die Texturdaten zu restrukturieren.
  • Die Information 1 als erste Information ist eine Vier-Bit-Information, die zeigt, dass Texturdaten, die neu vom Speicher gelesen werden, verwendet werden, oder Texturdaten, die gelesen werden, nochmals für jedes Pixel gelesen werden.
  • Die Information 2 als zweite Information ist eine Zwei-Bit-Information von niedrigwertigeren Bits von U, V der Speicheradresse (U, V) jedes Pixels.
  • Im Beispiel, welches in 3 gezeigt ist, wird die folgende Information eines jeden Pixels zur Vergleichsergebnis-Speichereinheit 16 geliefert. Die Relation zwischen jeder Information (Information 1 und Information 2) der Tabelle und der vier Speicheradressen wird in der Reihenfolge angegeben von (U0, V0), (U0+1, V0), (U0, V0+1), (U0+1, V0+1).
  • Figure 00130001
  • Anschließend werden, um die Erläuterung zu vereinfachen, (0, 0), (1, 0), (0, 1) und (1, 1) der Information 2 mit A, B, C bzw. D bezeichnet. Somit wird die obige Tabelle umgeschrieben wie folgt:
  • Figure 00130002
  • In den oben beschriebenen Beispiel wird ein Pixel, für welches Texturdaten, die neu vom Speicher gelesen werden, verwendet werden, mit "1" bezeichnet, und ein Pixel, für welches die Texturdaten, die vorher vom Speicher gelesen wurden, wieder verwendet werden, mit "0" bezeichnet.
  • In der Tabelle zeigt an der Speicheradresse (U0, V0) des dritten Pixels die Information 1, dass auf den Speicher nicht zugegriffen wird und dass die Texturdaten wieder verwendet werden. Außerdem zeigt die Information, dass die Texturdaten an der Speicheradresse (U0, V0) die gleiche ist wie die Speicheradresse (U0+1, V0+1) des zweiten Pixels (erstes Pixel).
  • Die Speicherzugriffseinheit 17, die in 1 gezeigt ist, liest Texturdaten vom Speicher gemäß der Speicheradresse (U, V), die von der Speicheradress-Vergleichseinheit 15 empfangen wird und sendet die Texturdaten C (U, V), die der bereitgestellten Speicheradresse entsprechen, zu der Texturdaten-Speichereinheit 18, die in 1 gezeigt ist.
  • Im Beispiel, welches in 3 gezeigt ist, liest die Speicherzugriffseinheit 17 Texturdaten C (U, V) vom Speicher 14, die den folgenden Speicheradressen entsprechen, die von der Speicheradress-Vergleichseinheit 15 empfangen werden, und sendet die Texturdaten C zur Texturdaten-Speichereinheit 18.
  • Speicheradresse:
    Figure 00140001
  • Texturdaten:
    Figure 00140002
  • Die Texturdaten-Speichereinheit 18, die in 1 gezeigt ist, ist ein FIFO-Pufferspeicher, welcher die Texturdaten C (U, V) speichert, die von der Speicherzugriffseinheit 17 empfangen werden.
  • Wenn vier benachbarte Punkte interpoliert werden, werden Texturdaten, die den vier Speicheradressen eines jeden Pixels entsprechen, gespeichert. Entsprechend den niedrigwertigsten Bits der Texturadresse werden (U, V), (C (0, 0), C (1, 0), C (0, 1) und C (1, 1) in A, B, C bzw. D gespeichert, die vier FIFO-Texturdaten-Speichereinheiten 18 sind.
  • In dem Beispiel, welches in 3 gezeigt ist, werden die folgenden Texturdaten C (U, V) in A, B, C und D gespeichert:
  • Figure 00140003
  • Die Texturdaten-Umstrukturierungseinheit 19, die in 1 gezeigt ist, liest gewünschte Texturdaten, die in der Texturdaten-Speichereinheit 18 gespeichert sind, entsprechend der Information, die in der Vergleichergebnis-Speichereinheit 16 gespeichert ist.
  • Bei dem Verfahren zum Umstrukturieren von Texturdaten wird bestimmt, ob neue Texturdaten von der Texturdaten-Speichereinheit 18 gelesen werden oder ob Texturdaten gemäß der Information 1 der Vergleichsergebnis-Speichereinheit 16 wieder verwendet werden. Zusätzlich wird von welchen der A, B, C oder D der FIFO-Texturdaten-Speichereinheiten 18 Texturdaten gelesen werden, gemäß der Information 2 der Vergleichsergebnis-Speichereinheit 16.
  • Bei dem in 3 gezeigten Beispiel werden die Information und die Texturdaten (U, V) von der Vergleichsergebnis-Speichereinheit 16 und der Texturdaten-Speichereinheit 18 der Reihe nach gelesen. Damit werden vier Texturdaten pro Pixel (eine Gesamtzahl von 20 Texturdaten) umstrukturiert.
  • Erstes Pixel:
  • Von der Vergleichsergebnis-Speichereinheit: Information 1 (1111) und Information 2 (DCBA)
    Von der Texturdaten-Speichereinheit:
    Neue Texturdaten C (1, 1) werden von D gelesen.
    Neue Texturdaten C (2, 1) werden von C gelesen.
    Neue Texturdaten C (1, 2) werden von B gelesen.
    Neue Texturdaten C (2, 2) werden von A gelesen.
  • Zweites Pixel:
  • Von der Vergleichsergebnis-Speichereinheit: Information 1 (0000) und Information 2 (DCBA)
    Von der Texturdaten-Speichereinheit:
    Texturdaten C (1, 1), die von D gelesen werden, werden wieder verwendet.
    Texturdaten C (2, 1), die von C gelesen werden, werden wieder verwendet.
    Texturdaten C (1, 2), die von B gelesen werden, werden wieder verwendet.
    Texturdaten C (2, 2), die von A gelesen werden, werden wieder verwendet.
  • Drittes Pixel:
  • Von der Vergleichsergebnis-Speichereinheit: Information 1 (0111) und Information 2 (ABCD)
    Von der Texturdaten-Speichereinheit:
    Texturdaten C (2, 2), die von A gelesen werden, werden wieder verwendet.
    Neue Texturdaten C (3, 2) werden von B gelesen.
    Neue Texturdaten C (2, 3) werden von C gelesen
    Neue Texturdaten C (3, 3) werden von D gelesen
  • Viertes Pixel:
  • Von der Vergleichsergebnis-Speichereinheit: Information 1 (0000) und Information 2 (ABCD)
    Von der Texturdaten-Speichereinheit:
    Texturdaten C (2, 2), die von A gelesen werden, werden wieder verwendet
    Texturdaten C (3, 2), die von B gelesen werden, werden wieder verwendet
    Texturdaten C (2, 3), die von C gelesen werden, werden wieder verwendet
    Texturdaten C (3, 3), die von D gelesen werden, werden wieder verwendet
  • Fünftes Pixel:
  • Von der Vergleichsergebnis-Speichereinheit: Information 1 (0111) und Information 2 (DCBA)
    Von der Texturdaten-Speichereinheit:
    Texturdaten C (3, 3), die von D gelesen werden, werden wieder verwendet
    Neue Texturdaten C (4, 3) werden von C gelesen
    Neue Texturdaten C (3, 4) werden von B gelesen
    Neue Texturdaten C (4, 4) werden von A gelesen.
  • Wie oben beschrieben kann gemäß der vorliegenden Ausführungsform, da 20 Texturdaten mit einem 10-maligen Speicherzugriff umstrukturiert werden können, sogar, wenn vier benachbarte Punkte interpoliert werden, die Häufigkeit der Speicherzugriffsoperation vermindert werden. Damit kann ein Texturdaten-Lesegerät, welches mit hoher Geschwindigkeit arbeitet, erhalten werden.
  • 4 ist ein Blockdiagramm, welches den Aufbau eines Bildaufbereitungsgeräts 40 zeigt, welches das oben beschriebene Texturdaten-Lesegerät gemäß einer Ausführungsform der vorliegenden Erfindung hat. Das Bildaufbereitungsgerät 24 besteht aus einer XY-Verarbeitungseinheit 31, die XY-Koordinaten (X, Y) verarbeitet, einer Farbverarbeitungseinheit 32, welche Farbwerte (R, G, B) verarbeitet, einer Texturverarbeitungseinheit 33, welche Texturkoordinaten (S, T, Q) verarbeitet, und einer Mischeinheit 24, welche Ausgangsdaten der Farbverarbeitungseinheit 32 und der Texturverarbeitungseinheit 33 berechnet und eine Farbe erzeugt. Das Bildaufbereitungsgerät 24 ist mit einem Texturspeicher 25 verbunden, welcher Texturdaten speichert, und einem Rahmenspeicher 24, welcher Zeichendaten speichert.
  • Die XY-Verarbeitungseinheit 31 erzeugt XY-Koordinaten (x, y) in einem Dreieckpolygon mit XY-Koordinaten (X, Y) von drei Scheitelpunkten des Dreiecks, die von einem Eingangsanschluss 21 empfangen werden. Die Farbverarbeitungseinheit 32 interpoliert die Farbwerte (R, G, B) der drei Scheitel des Dreieckpolygons, welches von dem Eingangsanschluss 22 empfangen wird, linear, erhält einen Farbwert Cf eines jeden Pixels im Dreieck und gibt den Farbwert Cf an die Mischeinheit 34 aus.
  • Die Texturverarbeitungseinheit 33 besteht aus einer Texturadress-Erzeugungseinheit 35 und einem Texturdaten-Lesegerät 36 gemäß der Ausführungsform der vorliegenden Erfindung (1 gezeigt). Die Texturadress-Erzeugungseinheit 35 erzeugt ein Texturadresse (U, V) in einem Dreieckpolygon mit Texturkoordinaten (S, T, Q) von drei Scheitelpunkten des Dreiecks, die vom Eingangsanschluss 23 empfangen werden, und sendet diese Texturadresse (U, V) zum Texturdaten-Lesegerät 36. somit leist das Texturdaten-Lesegerät 36 Texturdaten Ct vom Texturspeicher 25 und sendet die Texturdaten Ct zur Mischeinheit 34.
  • Die Mischeinheit 34 führt einen Additionsbetrieb oder einen Subtraktionsbetrieb für die Ausgangsdaten Cf der Farbverarbeitungseinheit 32 und die Ausgangsdaten Ct der Texturverarbeitungseinheit 33 durch und erzeugt eine neue Farbe C.
  • Die neue Farbe C, die durch die oben beschriebenen Verarbeitungseinheiten erzeugt wird, wird in den Rahmenpuffer 26 entsprechend den XY-Koordinaten (x, y) geschrieben, die durch die XY-Verarbeitungseinheit 31 erzeugt werden. Somit wird ein Bildaufbereitungsgerät gebildet.
  • Das Bildaufbereitungsgerät 24 kann Texturdaten mit einer hohen Geschwindigkeit mit einem Speicher mit niedriger Geschwindigkeit bevorzugt zu einer groß-volumigen Schaltung, beispielsweise einem Texturcache lesen. Damit können Texturdaten mit hoher Geschwindigkeit mit einer kleinen Schaltung abgebildet werden.
  • Außerdem können bei Ausführungsformen der Erfindung Texturdaten unabhängig für jede Abtastzeile gelesen werden. 5 ein Blockdiagramm, welches den Aufbau eines Bildaufbereitungsgeräts mit mehreren Bildaufbereitungsgeräten 24 zeigt, die in 4 gezeigt sind.
  • XY-Koordinaten (X, Y) von drei Scheitelpunkten eines Dreiecks, Farbwerte (R, G, B) von drei Scheitelpunkten des Dreiecks, und Texturkoordinaten (S, T, Q) der drei Scheitel des Dreiecks werden von einem Eingangsanschluss 41 zu einem Hochgeschwindigkeits-Bild aufbereitungsgerät 42 geliefert. Das Hochgeschwindigkeits-Bildaufbereitungsgerät hat mehrere Bildaufbereitungsgeräte 24, um so verschiedene Abtastzeilen parallel zu verarbeiten. Die Eingangssignale werden zu den Bildaufbereitungsgeräten 241 bis 24n geliefert. Alle Bildaufbereitungsgeräte 241 bis 24n führen die oben beschriebene Verarbeitung durch. Die Texturspeicher 251 bis 25n erzeugen neue Farben C1 bis Cn und schreiben diese Farben in einen Rahmenpuffer 26 entsprechend den XY-Koordinaten (x1, y1) bis (xn, yn). Damit kann ein Hochgeschwindigkeits-Bildaufbereitungsgerät, welches Signale mehrmals höher als das Bildaufbereitungsgerät 24 verarbeitet, erhalten werden.
  • Gemäß der obigen Beschreibung von Ausführungsformen der Erfindung werden, wenn eine Speicheradresse eines Pixels, für welches Texturdaten von einem Speicher gelesen werden, die gleiche ist wie die Speicheradresse eines Pixels, welches benachbart dazu ist, Texturdaten nicht vom Speicher gelesen. Wenn die Speicheradresse des Pixels, für welches Texturdaten vom Speicher gelesen wird, von der Speicheradresse des Pixels, welches benachbart dazu ist, verschieden ist, werden Texturdaten, die gelesen wurden, wieder verwendet, um so die Häufigkeit der Speicherzugriffsoperation zu reduzieren. Damit wird eine klein-volumige Hochgeschwindigkeits-Texturabbildungsoperation erreicht, ohne die Notwendigkeit, einen groß-volumigen Schaltungsaufbau, beispielsweise eine Cache-Einheit zu verwenden.
  • Folglich erfüllen Ausführungsformen der Erfindung einen langbestehenden Wunsch nach einer verbesserten Bilddatenverarbeitung, die effizienter Texturdaten abbilden, lesen und aufbereiten kann.
  • Aus der obigen Beschreibung wird deutlich, dass, obwohl eine bestimmte Ausführungsform der Erfindung gezeigt und beschrieben wurde, verschiedene Modifikationen durchgeführt werden können, ohne den Rahmen der Erfindung zu verlassen.

Claims (13)

  1. Texturdaten-Lesegerät (12), um Texturdaten zu lesen, die von einem Speicher (14, 25) abgebildet werden sollen, wobei das Gerät aufweist: eine Speicheradress-Vergleichseinrichtung (15), um eine Speicheradresse eines laufenden Pixels, für welches Texturdaten vom Speicher (14) gelesen werden, mit einer Speicheradresse eines anderen Pixels, welches benachbart dazu ist, zu vergleichen; eine Speicherzugriffseinrichtung (17), um auf den Speicher mit der Speicheradresse des laufenden Pixels zuzugreifen; und eine Texturdaten-Umstrukturierungseinrichtung (19), um neue Texturdaten lediglich dann zu lesen, wenn die Speicheradresse des laufenden Pixels von der Speicheradresse des Pixels, welches benachbart dazu ist, verschieden ist, und um gespeicherte Texturdaten bevorzugt zum Lesen neuer Texturdaten vorn Speicher wiederzuverwenden, wenn die Speicheradresse des Pixels die gleiche ist wie die Speicheradresse des Pixels, welches benachbart dazu ist, solange, wie Pixel mit der gleichen Speicheradresse sich fortsetzen.
  2. Texturdaten-Lesegerät nach Anspruch 1, welches aufweist: eine Vergleichsergebnis-Speichereinrichtung (16), um Information zu speichern, die zeigt, ob Texturdaten, die vor kurzem vom Speicher gelesen wurden, verwendet werden, oder Texturdaten, die vorher vom Speicher gelesen wurden, wieder verwendet werden, als Antwort auf ein Vergleichsergebnis der Speicheradress-Vergleichseinrichtung (15); und eine Texturdaten-Speichereinrichtung (18), um die Texturdaten, die vom Speicher durch die Speicherzugriffseinrichtung gelesen wurden, zu speichern.
  3. Texturdaten-Lesegerät nach Anspruch 2, welches eine Speicheradresse von Texturdaten für jedes Pixel in einem Dreieck eingibt.
  4. Bildaufbereitungsgerät, welches aufweist: mehrere Speicher (251 25n ); und mehrere Texturdaten-Lesegeräte (241 24n ) gemäß Anspruch 1, 2 oder 3, um Texturdaten von den Speichern zu lesen, wobei die Texturdaten-Lesegeräte mit den Speichern parallel verbunden sind.
  5. Bildauibereitungsgerät zum Erzeugen von Zeichnungsbilddaten, wobei das Gerät aufweist: eine Koordinatenverarbeitungseinheit (21), um Scheitelpunktdaten eines Polygons zu empfangen, welches Koordinaten der Scheitelpunkte aufweist, und um Koordinatendaten zu erzeugen, welche Koordinaten in dem Polygon darstellen, von den Koordinaten der Scheitelpunkte des Polygons; eine Farbwert-Verarbeitungseinheit (32), um Scheitelpunktdaten des Polygons zu empfangen, die Farbwerte der Scheitelpunkte umfassen, und um Farbwerte im Polygon von den Farbwerten der Scheitelpunkte des Polygons zu erzeugen; eine Texturspeicher (25), um Texturdaten zu speichern; eine Texturadress-Erzeugungseinheit (35), um Scheitelpunktdaten des Polygons zu empfangen, die Texturkoordinaten der Scheitelpunkte enthalten, und um Texturadressen im Polygon von den Texturkoordinaten der Scheitelpunkte des Polygons zu erzeugen, wobei sich die Texturadressen auf Texturdaten im Texturspeicher beziehen; ein Texturdaten-Lesegerät (36) nach Anspruch 1, 2 oder 3, um Texturdaten von dem Texturspeicher gemäß jeder Texturadresse zu lesen; und eine Mischeinheit (34), um die Farbwerte und die Texturdaten zu mischen und um neue Farbdaten zu erzeugen; wodurch die Koordinatendaten und die neuen Farbdaten zum Zeichnen eines Bilds übertragen werden.
  6. Bildaufbereitungsgerät zum Zeichnen von Bilddaten, wobei das Gerät mehrere Bildaufbereitungseinheiten aufweist, die parallel angeordnet sind, um Scheitelpunktdaten eines Polygons zu empfangen und um Daten zum Zeichnen eines Bilds zu erzeugen, wobei jede Bildaufbereitungseinheit einen Texturspeicher (251 25n ) und ein Texturdaten-Lesegerät (241 24n ) gemäß Anspruch 1, 2 oder 3 aufweist, um Texturdaten vom Texturspeicher zu lesen.
  7. Bildauibereitungsgerät nach Anspruch 5 oder 6, welches eine Einrichtung aufweist, um Daten für vier Pixel, die dem laufenden Pixel benachbart sind, zu interpolieren, um die Bildauflösung zu verbessern.
  8. Verfahren zum Lesen von Texturdaten, die von einem Speicher (15; 25) abgebildet werden sollen, wobei das Verfahren folgende Schritte aufweist: Vergleichen (15) einer vorhandenen Speicheradresse eines laufenden Pixels, welches zu lesen ist, für welches Texturdaten vom Speicher zu lesen sind, mit einer vorherigen Speicheradresse eines anderen Pixels, welches benachbart dazu ist, um zu bestimmen, ob die Texturdaten zu lesen sind oder nicht; und Umstrukturieren (19) der Texturdaten, wobei die Texturdaten vom Speicher gemäß der vorhandenen Speicheradresse gelesen werden oder die Texturdaten, die gemäß der vorherigen Speicheradresse gelesen werden, als Antwort auf das Vergleichsergebnis des Vergleichsschritts wieder verwendet werden.
  9. Verfahren nach Anspruch 8, wobei der Umstrukturierungsschritt (19) Texturdaten vom Speicher gemäß der vorhandenen Speicheradresse liest, wenn die vorhandene Speicheradresse gegenüber der früheren Speicheradresse verschieden ist, und die Texturdaten, welche gemäß der vorherigen sequentiellen Speicheradresse gelesen werden, wieder verwendet, wenn die gegenwärtige Speicheradresse die gleiche ist wie die vorherige Speicheradresse.
  10. Verfahren nach Anspruch 9, wobei der Vergleichsschritt (19) Information erzeugt, die entscheidend ist, ob oder nicht die Texturdaten zu lesen sind, und die Speicheradresse auswählt, um die Texturdaten vom Speicher als Antwort auf das Vergleichsergebnis zu lesen.
  11. Verfahren nach Anspruch 10, weiches folgende Schritte aufweist: Speichern der Information; Zugreifen (17) auf Texturdaten gemäß der ausgewählten Speicheradresse; und Speichern (18) der Texturdaten, die durch den Zugriffsschritt gelesen werden; wodurch der Umstrukturierungsschritt (19) Texturdaten dadurch umstrukturiert, indem neue Texturdaten gelesen werden, oder Texturdaten, die früher gelesen wurden, gemäß dem Vergleichergebnis wieder verwendet.
  12. Verfahren nach einem der Ansprüche 8 bis 11, welches Interpolationsdaten für vier benachbarte Pixel aufweist, um die Bildauflösung zu steigern.
  13. Bildaufbereitungsverfahren zum Erzeugen von Zeichenbilddaten, wobei das Verfahren folgende Schritte aufweist: Empfangen von Scheitelpunktdaten eines Polygons, welches Koordinaten der Scheitelpunkte enthält; Erzeugen (21) von Koordinatendaten, die Koordinaten im Polygon darstellen, von den Koordinaten der Scheitelpunkte des Polygons; Empfangen von Scheitelpunktdaten des Polygons, die Farbwerte der Scheitelpunkte enthalten; Erzeugen (32) von Farbwerten im Polygon von den Farbwerten der Scheitelpunkte des Polygons; Empfangen von Scheitelpunktdaten des Polygons, die Texturkoordinaten der Scheitelpunkte enthalten; Erzeugen (35) von Texturadressen im Polygon von den Texturkoordinaten der Scheitelpunkte des Polygons, wobei sich die Texturadressen auf Texturdaten im Texturspeicher beziehen; Lesen von Texturdaten vom Texturspeicher gemäß jeder Texturadresse durch ein Texturdaten-Leseverfahren nach einem der Ansprüche 8 bis 12; und Mischen (34) der Farbwerte und der Texturdaten und Erzeugen neuer Farbdaten.
DE69722535T 1996-08-30 1997-08-28 Verfahren und Gerät zum Schaffen von Texturdaten Expired - Lifetime DE69722535T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP24913396A JP3586991B2 (ja) 1996-08-30 1996-08-30 テクスチャ・データ読出装置およびレンダリング装置
JP24913396 1996-08-30

Publications (2)

Publication Number Publication Date
DE69722535D1 DE69722535D1 (de) 2003-07-10
DE69722535T2 true DE69722535T2 (de) 2004-04-29

Family

ID=17188426

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69722535T Expired - Lifetime DE69722535T2 (de) 1996-08-30 1997-08-28 Verfahren und Gerät zum Schaffen von Texturdaten

Country Status (8)

Country Link
US (1) US6133923A (de)
EP (1) EP0827114B1 (de)
JP (1) JP3586991B2 (de)
CN (1) CN1121018C (de)
AU (1) AU736560B2 (de)
CA (1) CA2214063C (de)
DE (1) DE69722535T2 (de)
MY (1) MY114047A (de)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4343344B2 (ja) 1998-09-11 2009-10-14 キヤノン株式会社 ラスタ形式のグラフィックオブジェクトを用いたイメージの高速レンダリング方法
AU744091B2 (en) * 1998-09-11 2002-02-14 Canon Kabushiki Kaisha Processing graphic objects for fast rasterised rendering
AU743218B2 (en) * 1998-09-11 2002-01-24 Canon Kabushiki Kaisha Fast renering techniques for rasterised graphic object based images
US6384823B1 (en) * 1999-01-05 2002-05-07 C. Michael Donoghue System and method for real-time mapping and transfer of coordinate position data from a virtual computer-aided design workspace to the real workspace
US6919895B1 (en) * 1999-03-22 2005-07-19 Nvidia Corporation Texture caching arrangement for a computer graphics accelerator
US6297833B1 (en) * 1999-03-23 2001-10-02 Nvidia Corporation Bump mapping in a computer graphics pipeline
GB2374775B (en) 2001-04-19 2005-06-15 Discreet Logic Inc Rendering animated image data
US6812928B2 (en) 2002-01-30 2004-11-02 Sun Microsystems, Inc. Performance texture mapping by combining requests for image data
DE10318390A1 (de) * 2003-04-23 2004-12-30 Volkswagen Ag Verfahren, Vorrichtung und Computerprogrammprodukt zum virtuellen Positionieren von Bauteilen
JP3883522B2 (ja) * 2003-05-09 2007-02-21 任天堂株式会社 ゲーム装置およびゲームプログラム
JP3934081B2 (ja) * 2003-05-12 2007-06-20 任天堂株式会社 ゲーム装置およびゲームプログラム
US7573599B2 (en) * 2004-05-20 2009-08-11 Primax Electronics Ltd. Method of printing geometric figures
CN101059760B (zh) * 2006-04-20 2014-05-07 意法半导体研发(上海)有限公司 Opengl到opengl│es翻译器和opengl│es仿真器
US7652672B2 (en) 2006-06-29 2010-01-26 Mediatek, Inc. Systems and methods for texture management
US8207978B2 (en) * 2006-06-29 2012-06-26 Intel Corporation Simplification of 3D texture address computation based on aligned, non-perspective objects
US8022960B2 (en) * 2007-02-22 2011-09-20 Qualcomm Incorporated Dynamic configurable texture cache for multi-texturing
JP5307923B1 (ja) * 2012-08-20 2013-10-02 株式会社gloops ゲームサーバ、ゲーム制御方法、プログラム、及びゲームシステム
US9886734B2 (en) * 2013-04-25 2018-02-06 Intel Corporation Techniques for graphics data prefetching
US9449362B2 (en) * 2013-09-06 2016-09-20 Intel Corporation Techniques for reducing accesses for retrieving texture images

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4821212A (en) * 1984-08-08 1989-04-11 General Electric Company Three dimensional texture generator for computed terrain images
GB2240015A (en) * 1990-01-15 1991-07-17 Philips Electronic Associated Texture memory addressing
GB2267203B (en) * 1992-05-15 1997-03-19 Fujitsu Ltd Three-dimensional graphics drawing apparatus, and a memory apparatus to be used in texture mapping
GB2270243B (en) * 1992-08-26 1996-02-28 Namco Ltd Image synthesizing system
US5606650A (en) * 1993-04-22 1997-02-25 Apple Computer, Inc. Method and apparatus for storage and retrieval of a texture map in a graphics display system
JPH08110952A (ja) * 1994-10-07 1996-04-30 Yamaha Corp テクスチャマッピング装置
JP3081774B2 (ja) * 1995-05-24 2000-08-28 シャープ株式会社 テクスチャーパターンメモリ回路
US5751292A (en) * 1995-06-06 1998-05-12 Hewlett-Packard Company Texture mapping method and system
US5880737A (en) * 1995-08-04 1999-03-09 Microsoft Corporation Method and system for accessing texture data in environments with high latency in a graphics rendering system
GB9518696D0 (en) * 1995-09-13 1995-11-15 Philips Electronics Nv Image texture mapping
US5781197A (en) * 1996-07-26 1998-07-14 Hewlett-Packard Company Method for maintaining contiguous texture memory for cache coherency
US5828382A (en) * 1996-08-02 1998-10-27 Cirrus Logic, Inc. Apparatus for dynamic XY tiled texture caching
US5987567A (en) * 1996-09-30 1999-11-16 Apple Computer, Inc. System and method for caching texture map information
US5831640A (en) * 1996-12-20 1998-11-03 Cirrus Logic, Inc. Enhanced texture map data fetching circuit and method
US5852451A (en) * 1997-01-09 1998-12-22 S3 Incorporation Pixel reordering for improved texture mapping

Also Published As

Publication number Publication date
EP0827114A3 (de) 2000-11-29
CN1177784A (zh) 1998-04-01
CA2214063A1 (en) 1998-02-28
EP0827114B1 (de) 2003-06-04
CA2214063C (en) 2006-10-24
JPH1079043A (ja) 1998-03-24
US6133923A (en) 2000-10-17
MY114047A (en) 2002-07-31
CN1121018C (zh) 2003-09-10
DE69722535D1 (de) 2003-07-10
AU3529297A (en) 1998-03-05
EP0827114A2 (de) 1998-03-04
AU736560B2 (en) 2001-08-02
JP3586991B2 (ja) 2004-11-10

Similar Documents

Publication Publication Date Title
DE69722535T2 (de) Verfahren und Gerät zum Schaffen von Texturdaten
DE3486494T2 (de) Graphisches Musterverarbeitungsgerät
DE19827726B4 (de) Verfahren und Vorrichtung zum Liefern von Polygonpixelunterabtastinformationen unter Verwendung einer Inkrementaleinrichtung
DE69633477T2 (de) Bildspeicher für graphische Daten
DE3518416A1 (de) Speicher- und prozessorsystem mit schnellem zugriff zur rasteranzeige
DE69529500T2 (de) Verwendung von abgetasteten Bildern in einem Bildzusammensetzungssystem
DE3619420A1 (de) Computer-displayeinrichtung
EP0038411A2 (de) Einrichtung zur Speicherung und Darstellung graphischer Information
DE19715491A1 (de) Interpolationsverfahren und -vorrichtung zur schnellen Bildvergrößerung
DE3338167A1 (de) Verfahren und vorrichtung zur speicherung von bilddaten in einer speichereinrichtung eines layout-abtastsystems
DE3713627C2 (de)
DE69633716T2 (de) Hochgeschwindigkeitssystem zur Skalierung von Bildern
DE69635368T2 (de) Hochgeschwindigkeitssystem zur Ausrichtung und Verlegung von Schwellenmatrizen während der Erzeugung von binären Halbtonbildern
DE69533911T2 (de) Verfahren und Gerät zum Erzeugen von Bildern
DE3716752C2 (de)
DE60033589T2 (de) Bildverarbeitung
DE19653438A1 (de) Bildanzeige-Steuerungsvorrichtung
DE69730923T2 (de) Verfahren und Gerät zur Bilderzeugung
DE3933253A1 (de) Einrichtung und verfahren zur durchfuehrung von booleschen rasteroperationen an quellen- und zieldaten
DE112013004757T5 (de) Grafik-Rendering-Gerät
DE69912034T2 (de) Bildverarbeitungsgerät
DE3705124A1 (de) Anzeigeprozessor und videoverarbeitungsuntersystem fuer computergraphik
DE4019660C2 (de) Bildabgabesystem
DE602004004755T2 (de) Datenspeicherungsvorrichtung, Datenspeichersteuervorrichtung, Verfahren zum Steuern der Datenspeicherung, und Programm zur Steuerung einer Datenspeicherung
DE3941550A1 (de) Schaltungsanordnung zum zerlegen einer auf einem computer-ausgabedisplay anzuzeigenden graphikfigur

Legal Events

Date Code Title Description
8364 No opposition during term of opposition