DE69728207T2 - Dreidimensionales Bildverarbeitungsgerät - Google Patents

Dreidimensionales Bildverarbeitungsgerät Download PDF

Info

Publication number
DE69728207T2
DE69728207T2 DE69728207T DE69728207T DE69728207T2 DE 69728207 T2 DE69728207 T2 DE 69728207T2 DE 69728207 T DE69728207 T DE 69728207T DE 69728207 T DE69728207 T DE 69728207T DE 69728207 T2 DE69728207 T2 DE 69728207T2
Authority
DE
Germany
Prior art keywords
model data
dimensional image
coordinate transformation
data
information
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
DE69728207T
Other languages
English (en)
Other versions
DE69728207D1 (de
Inventor
Mamoru Noda-shi Oda
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.)
Sharp Corp
Original Assignee
Sharp 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 Sharp Corp filed Critical Sharp Corp
Publication of DE69728207D1 publication Critical patent/DE69728207D1/de
Application granted granted Critical
Publication of DE69728207T2 publication Critical patent/DE69728207T2/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/005General purpose rendering architectures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)
  • Processing Or Creating Images (AREA)
  • Image Input (AREA)
  • Digital Computer Display Output (AREA)

Description

  • Hintergrund der Erfindung
  • (1) Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft eine dreidimensionale Bildverarbeitungsvorrichtung für dreidimensionale Computergraphik, um ein Bilderzeugung in Übereinstimmung mit Bildzeichnungsinstruktionen von einer Haupt-CPU zu bewirken.
  • (2) Beschreibung des Standes der Technik
  • Computergraphik (nachstehend als CG abzukürzen) ist die Technologie zum Erzeugen einer Bilddarstellung auf der Anzeige aus dem Ergebnis, das von dem Computer berechnet und verarbeitet wird, so dass es möglich ist, eine virtuelle Welt oder das, was in der realen Welt nicht gesehen werden kann, weil diese Technologie Bilder elektronisch erzeugt, zu visualisieren. Somit kann die CG als ein Auslegungswerkzeug in verschiedenen Industriezweigen, wie etwa der Architektur, der elektrischen Industrie, dem Maschinenbau etc., wie auch als ein Darstellungswerkzeug für wissenschaftliche Simulationen und Strukturanalyse verwendet werden. Weiter wird diese Technik auch zur Herstellung von TV-Programmen und TV-Spielen verwendet, womit sie der breiten Öffentlichkeit zugänglicher wird. Kürzlich hat dies Aufmerksamkeit als eine Basistechnik für virtuelle Realität und Multimedia erlangt.
  • Da eine dreidimensionale CG eine enorme Menge an Verarbeitungsdaten handhabt, werden die Daten nicht nur durch die Haupt-CPU (zentrale Verarbeitungseinheit) in dem Computer verarbeitet, sondern der Bildverarbeitungsprozess wird bewirkt, indem zugeordnete Hardware, ein zugeordneter dreidimensionaler Bildprozessor vorhanden ist, um eine verbesserte Verarbeitungsgeschwindigkeit zu erreichen. 1 zeigt ein Blockdia gramm eines typischen herkömmlichen dreidimensionalen Bildprozessors. Dieses dreidimensionale Bildverarbeitungssystem schließt eine Haupt-CPU 10 als eine Steuerbetriebseinheit, einen Hauptspeicher 12, einen dreidimensionalen Bildprozessor 30 und eine CRT 18 als eine Anzeigeeinrichtung mit einem Systembus 14 ein, der die Haupt-CPU 10, den Hauptspeicher 12 und den dreidimensionalen Bildprozessor 30 verbindet, um Daten dazwischen zu übertragen.
  • Der dreidimensionale Bildprozessor 30 schließt eine Beobachtungstransformationsschaltung 31, eine Texturverarbeitungsschaltung 32, eine Schattierungsverarbeitungsschaltung 33, eine Pixelverarbeitungsschaltung 34 und eine Bildspeicher- und Videosteuerschaltung 35 ein.
  • Als Nächstes wird der Gesamtbetrieb des dreidimensionalen Bildverarbeitungssystems beschrieben werden. Die Beschreibung wird unter Bezugnahme auf 2 ausgeführt, die ein Flussdiagramm ist, das den Betrieb der Haupt-CPU zeigt. Ein Hauptspeicher 12 speichert Daten zum Ausbilden des Modells und der Merkmale eines Objekts, das zu zeichnen ist, um ein dreidimensionales Bild einer Bilddarstellung zu schaffen. Dieses Objekt wird in Polygone, wie etwa Dreiecke, Rechtecke, etc. geteilt, und für die Scheitel, die jedes Polygon ausbilden, werden Daten in Koordinatenwerte, Farben, etc. daten-formatiert. Diese werden als Polygondaten in dem Hauptspeicher 12 gespeichert.
  • Die Haupt-CPU 10 liest diese Polygondaten aus dem Hauptspeicher 12 über den Systembus 14 aus, um die folgende Verarbeitung gemäß einer Software oder eines dreidimensionalen Bildverarbeitungsprogramms auszuführen. Auf der Grundlage der Information, die die Position eines Beobachtungspunkts, die Beobachtungsrichtung und einen Winkel einer Beobachtung betrifft, die zum Zeichnen des Bilds auf dem CRT-Schirm gegeben werden, wird ein Augenkoordinatensystem durch eine Koordinatentransformation (Schritt S21) eingerichtet. Nachdem die Anzeige gelöscht ist (Schritt S22), werden die Polygondaten, d. h. die Modelldaten eines Objekts in jene des Augenkoordinatensystems (Schritts S23) transformiert, und darauf wird eine Texturumgebung eingerichtet (Schritt S24). Ein Einrichten der Texturumgebung bedeutet das Einrichtungen zweidimensionaler Bilder, die auf die Polygone anzuwenden sind. Die somit transformierten und zugewiesenen Polygondaten (die die Texturdaten einschließen) werden zu einem dreidimensionalen Bildprozessor 30 über den Systembus 14 übertragen (Schritt S25). Bei einem Schritt S26 wird überprüft, ob die Polygondaten sämtlich übertragen worden sind, und wenn die Übertragung noch nicht beendet ist, wird der Betrieb zu dem Schritt S25 zurückgebracht, wohingegen, wenn der beendet ist, die Übertragung bei einem Schritt S27 angehalten wird. Dann instruiert die Haupt-CPU 10 den dreidimensionalen Bildprozessor 30, ein Bildzeichnen zu starten (Schritt S28).
  • Die Polygondaten, die zu dem dreidimensionalen Bildprozessor 30 gesendet sind, werden in die zweidimensionalen Koordinatendaten an dem Bildrahmen konvertiert, und die Daten werden einer unterschiedlichen Verarbeitung, wie etwa einem Abschneiden, Verdeckten-Linien/Verdeckten-Oberflächen-Beerbeitungen, unterworfen. Die Daten durchlaufen weiter einen Umgebungsbeleuchtungsprozess zum Bestimmen eines Modells einer Umgebungslichtquelle und zum Identifizieren ihrer Position. Als Nächstes werden Bilder, die Texturen und Muster, wie etwa Holzmaserung etc., auf die Polygone mittels einer Texturverarbeitungsschaltung 32 abgebildet. In der Schattierungsverarbeitungsschaltung 33 wird der Oberflächenausdruck von Objekten geschaffen. Spezifisch bringt dieser Prozess eine Interpolation zwischen benachbarten Teilen von Farbdaten an jedem Scheitel von Polygonen und eine Schaffung von Schatten auf den Oberflächen der Polygone mit sich. Darauf führt die Pixelverarbeitungsschaltung 34 einen Tiefenvergleich durch, in welchem, wenn zwei oder mehrere Objekte einander überlappen, ihre z-Koordinatenwerte (es wird angenommen, dass die z-Achse die Beobachtungsrichtung ist) verglichen werden, um die Pixel auszuwählen, von denen bestimmt worden ist, dass sie weniger entfernt sind. Weiter wird ein Mischprozess zum Darstellen der Transparenz eines Objekts auch durchgeführt. Dieses Bildsignal wird einmal in den Bildspeicher gespeichert und dann auf der CRT durch die Bildspeicher- und Videosteuerschaltung 35 angezeigt.
  • Die CPU 10 überprüft bei einem Schritt S29, ob das Programm beendet worden ist, und falls nicht, wird der Betrieb zu dem Schritt S22 zurückgebracht, wohingegen dann, wenn es durchgeführt ist, der Betrieb angehalten wird.
  • In dem obigen herkömmlichen Verarbeitungsschema werden, um ein Objekt darzustellen, die Modelldaten in jene des Augenkoordinatensystems konvergiert, das der Position eines Beobachtungspunkts, der Beobachtungsrichtung und dergleichen zugeordnet ist. Die somit konvertierten Daten werden über den Systembus 14 zu dem dreidimensionalen Bildprozessor 30 übertragen, um so in das Bild geformt zu werden. Jedoch muss in Übereinstimmung mit diesem Schema, wann immer die Position des Auges geändert wird, die Haupt-CPU 10 eine Koordinatentransformation bewirken, und die konvertierten Modelldaten müssen in den dreidimensionalen Bildprozessor 30 übertragen werden. Auf diese Weise nimmt, da die Modelldaten, die ein Objekt innerhalb des Gesichtsfelds ausbilden, zu dem dreidimensionalen Bildprozessor 30 jedes Mal übertragen werden müssen, wenn die Position eines Beobachtungspunkts wie auch die Beobachtungsrichtung etc. geändert wird, die Last auf dem Systembus 14 bezüglich der Datenübertragung zu, was die Verarbeitungsrate des Gesamtsystems absenkt. Insbesondere dann, wenn das herkömmliche System auf ein virtuelles Realitätssystem angewandt wird, in welchem die Position eines Beobachtungspunkts, die Beobachtungsrichtung und dergleichen oft geändert werden müssen, fällt nicht nur die Verarbeitungsrate aufgrund der zuvor erwähnten Übertragungslast ab, sondern die Verarbeitung außer jener des CG-Prozesses kann auch nicht ausgeführt werden.
  • Beispielsweise erfordert die Übertragung eines Wortes (32 Bit) über den Systembus 30 Nanosekunden. Da 49 Worte für jedes der Polygone benötigt werden, bedarf es, wenn Polygondaten von zehntausend Dreiecken übertragen werden, 1470 Nanosekunden (10.000 × 30 ns = 1,470 ns). Jedes Mal, wenn die Position eines Beobachtungspunkts und/oder die Beobachtungsrichtung geän dert wird, wird die oben erwähnte Zeit nur für eine Datenübertragung benötigt, und die Haupt-CPU 10 benötigt zusätzliche Zeit zum Bewirken von Koordinatentransformationen etc.. Dementsprechend ist, wenn die zu übertragende Datenmenge zunimmt, die meiste Kapazität der Haupt-CPU und des Systembusses durch die CG-Verarbeitung belegt.
  • Die EP 0599 579 offenbart eine Vorrichtung zur Video-Signalverarbeitung, und insbesondere eine Vorrichtung, um ein Bild zu erzeugen, das eine Textur oder eine Verzierung auf seiner Oberfläche aufweist.
  • Die US 5159 665 offenbart einen Graphikbeschleuniger, der in der Lage ist, mit einer Anzahl unterschiedlicher CPUs zu arbeiten, wie auch bei Geschwindigkeiten zu arbeiten, die den CPUs zugeordnet sind.
  • Zusammenfassung der Erfindung
  • Es ist wünschenswert, eine dreidimensionale Bildverarbeitungsvorrichtung bereitzustellen, in welcher die Zeichnungsgeschwindigkeit eines dreidimensionalen Bilds und die Verarbeitungskapazität des Systems verbessert werden, indem die Menge einer Information, die von der CPU übertragen wird, verringert wird.
  • Gemäß der vorliegenden Erfindung ist eine dreidimensionale Bildverarbeitungsvorrichtung nach Anspruch 1 bereitgestellt.
  • Vorzugsweise schließt die Vorrichtung eine Hilfs-Modelldaten-Speichereinrichtung ein, die Modelldaten zu der Modelldaten-Speichereinrichtung übermittelt, falls erforderlich.
  • Vorzugsweise ist die Vorrichtung derart aufgebaut, dass die Modelldaten-Speichereinrichtung einen Multiplex-Aufbau aufweist, so dass sie aus einem Speicherabschnitt für die Modelldaten, die für eine Koordinatentransformation zu verwenden sind, und einem Speicherabschnitt für die Modelldaten, die von der Hilfs-Modelldaten-Speichereinrichtung zu übermitteln sind, besteht.
  • Vorzugsweise ist die Vorrichtung derart aufgebaut, dass die Hilfs-Modelldaten-Speichereinrichtung ausgelegt ist, Modelldaten von außerhalb über eine Kommunikationsleitung zu empfangen.
  • Da es möglich ist, ein dreidimensionales Bild zu speichern, indem zuerst ein Teil der Modelldaten in die Modelldaten-Speichereinrichtung gespeichert wird, und darauf nur die Information für eine Koordinatentransformation eingegeben wird, wird es ermöglicht, die zu dem dreidimensionalen Bildprozessor übertragene Datenmenge deutlich zu verringern. Weiter ist es nicht mehr notwendig, dass die Haupt-CPU selbst in dem dreidimensionalen Bildverarbeitungssystem Koordinatentransformationen von Modelldaten durchführt, wie es in dem Stand der Technik unter Verwendung von Software ausgeführt wird, womit es möglich ist, die Last für die Haupt-CPU beträchtlich zu verringern.
  • Weiter ermöglicht die Hinzufügung einer Informationsanalysiereinrichtung zum Trennen einer gegebenen Information in Modelldaten und eine Information für eine Koordinatentransformation eine Trennung der Information, die über einen einzelnen Bus übertragen wird, in Modelldaten, und eine Information für eine Koordinatentransformation in dem dreidimensionalen Bildprozessor. Somit sollte die Haupt-CPU nur die Information aussenden, was eine Verringerung ihrer Belastung verwirklicht.
  • Weiter wird es, wenn eine Hilfs-Modelldaten-Speichereinrichtung bereitgestellt wird, möglich, eine viel höhere Menge von Modelldaten handzuhaben, was es ermöglicht, eine hohe Kapazität einer Bildverarbeitung durchzuführen. Außerdem ist es durch ein Bereitstellen einer Modelldaten-Speichereinrichtung in einem Multiplex-Aufbau möglich, das System auch während der Datenübertragung von der Hilfs-Modelldaten-Speichereinrichtung zu der Modelldaten-Speichereinrichtung zu betreiben. Wenn eine mit einer Kommunikationsfunktion ausgestattete Modelldaten- Speichereinrichtung zu der Hilfs-Modelldaten-Speichereinrichtung hinzugefügt wird, wird es möglich, Daten mit externen Systemen auszutauschen.
  • Damit die vorliegende Erfindung einfacher verstanden wird, werden spezifische Ausführungsformen davon nun unter Bezugnahme auf die zugehörigen Zeichnungen beschrieben werden.
  • Kurze Beschreibung der Zeichnungen
  • In den Zeichnungen zeigen:
  • 1 ein Blockdiagramm, das ein System zeigt, in welchem eine herkömmliche, typische dreidimensionale Bildverarbeitung verwendet wird;
  • 2 ein Flussdiagramm, das den Betrieb einer Haupt-CPU zeigt;
  • 3 ein Blockdiagramm, das ein System gemäß der ersten Ausführungsform zeigt, in welchem eine dreidimensionale Bildverarbeitungsvorrichtung verwendet wird;
  • 4 ein Blockdiagramm, das ein Beispiel eines Befehlsanalysators zeigt;
  • 5 ein Flussdiagramm, das den Betrieb einer Haupt-CPU des dreidimensionalen Bildverarbeitungssystems zeigt;
  • 6 ein Blockdiagramm, das ein System gemäß der zweiten Ausführungsform zeigt, in welcher eine dreidimensionale Bildverarbeitungsvorrichtung verwendet wird; und
  • 7 ein Blockdiagramm, das ein System gemäß der dritten Ausführungsform zeigt, in welcher eine dreidimensionale Bildverarbeitungsvorrichtung verwendet wird.
  • Die 1. Ausführungsform
  • 3 ist ein Blockdiagramm, das wesentliche Komponenten eines Systems gemäß der ersten Ausführungsform der dreidimensionalen Bildverarbeitungsvorrichtung zeigt. Dieses dreidimensionale Bildverarbeitungssystem weist eine grundlegende Konfiguration auf, die im Wesentlichen ähnlich zu jener des Standes der Technik ist. Deswegen sind die gleichen Bezugszeichen den entsprechenden Komponenten ohne eine detaillierte Beschreibung zugewiesen.
  • Der dreidimensionale Bildprozessor 16 besteht aus einem Koordinatentransformationsabschnitt 16a, der einen Befehlsanalysator 20, einen Modelldaten-Akkumulationsspeicher 21, einen Koordinatentransformationsprozessor 22 und einen Bilderzeugungsabschnitt 16b aufweist, der die gleiche Konfiguration wie in dem dreidimensionalen Bildprozessor 30 des Standes der Technik aufweist. Eine Information von der Haupt-CPU 10, die zwei Arten, d. h. Modelldaten und eine Information für eine Koordinatentransformation einschließt, wird über einen Systembus 14 in den Befehlsanalysators 20 eingegeben, wo sie in Modelldaten und eine Information für eine Koordinatentransformation getrennt wird. Modelldaten werden in dem Modelldaten-Akkumulationsspeicher 21 gespeichert, wohingegen eine Information für eine Koordinatentransformation in den Koordinatentransformationsprozessor 22 eingegeben wird. Der Koordinatentransformationsprozessor 22 liest die Modelldaten aus dem Modelldaten-Rkkumulationsspeicher 21 aus, und diese werden einem Koordinatentransformationsprozess auf der Grundlage der Information für eine Koordinatentransformation unterworfen und zu dem Bilderzeugungsabschnitt 16b ausgegeben. Der Bilderzeugungsabschnitt 16b führt die gleiche Bildverarbeitung durch, wie in dem Stand der Technik beschrieben. Hier bestehen die Modelldaten (Polygondaten) aus Polygonen, die ein Objekt darstellen, das zu Bild-verarbeiten ist, d. h. Koordinatenwerten ihrer Scheitel, Farben der Scheitel, Texturkoordinatenwerten, einer Information über die Richtungen der Normalen der Polygone. Die Information für eine Koordinatentransformation besteht aus der Position des Beobachtungspunkts, der Beobachtungsrichtung und dem Winkel der Beobachtung.
  • 4 ist ein Blockdiagramm, das ein Beispiel des Befehlsanalysators zeigt. Der Befehlsanalysator 20 schließt einen Modelldaten-Befehlsspeicher 41, einen Befehlskomparator 42, einen Inverter 43 und Gatter 44 und 45 ein. Der Modelldaten-Befehlsspeicher 41 weist zuvor abgespeicherte Definitionsbefehle bezüglich der Modelle und Datenformate auf. Der Befehlskomparator 42 vergleicht, wenn ein Befehl und Daten über den Befehlsdatenbus empfangen werden, sie mit den Definitionsbefehlen und Datenformaten. Wenn der Vergleich eine Übereinstimmung zeigt, wird das Eingangssignal ausgesendet, wie es ist, und wenn er einen Unterschied zeigt, wird der Eingangs invertiert und ausgegeben. An dem Gatter 45 wird, wenn das Vergleichsergebnis und das Signal, das über den Befehlsbus übertragen wird, eine Übereinstimmung zeigen, es zu dem Modelldaten-Akkumulationsspeicher ausgesendet. Das Gatter 44 vergleicht das Signal des Vergleichsergebnisses, das in dem Inverter 43 invertiert ist, mit dem Signal von dem Befehlsdatenbus und gibt das Signal zu dem Koordinatentransformationsprozessor 22 aus, wenn es eine Übereinstimmung zeigt.
  • Als Nächstes wird der Betrieb dieses dreidimensionalen Bildverarbeitungssystems im Detail beschrieben werden, wobei auf die Verarbeitung der Haupt-CPU fokussiert wird. 5 ist ein Flussdiagramm, das den Betrieb der Haupt-CPU zeigt. Zuerst beginnt die CPU, einen Registrierungsprozess von Modelldaten durchzuführen (Schritt S1). Sobald dieser Prozess beendet ist, wird dieser Prozess nicht wieder benötigt, außer in dem Fall, wo die Modelldaten selbst zu ändern sind. Dann wird eine Texturumgebung eingerichtet (Schritt S2), und darauf wird begonnen, Polygondaten zu registrieren (Schritt S3). Die Haupt-CPU 2 liest die Polygondaten aus dem Hauptspeicher 12 über den Systembus 14 aus und sendet sie zu dem dreidimensionalen Bildprozessor 16 über den Systembus 14 aus. Die Daten werden in den Befehlsanalysator 20 über den Befehlsdatenbus eingegeben. Wie in 4 gezeigt, vergleicht der Befehlskomparator 42 die Polygondaten mit den Modelldefinitionsbefehlen und Datenformaten, die in dem Modellbefehlsspeicher 51 gespeichert sind. Wenn manche der Daten damit übereinstimmen, werden diese Teile der Daten ausgegeben, wie sie sind und über das Gatter 45 ge sendet, um in dem Modelldaten-Akkumulationsspeicher 21 gespeichert zu werden. Da das Ausgangssignal aus dem Befehlskomparator 42 vor dem Gatter 44 invertiert wird, wird dieses einen Unterschied zu dem Signal auf dem Befehlsdatenbus zeigen, wodurch es nicht ausgegeben wird.
  • Auf diese Weise wird überprüft, ob sämtliche Polygondaten in den Modelldaten-Akkumulationsspeicher 21 gespeichert worden sind (Schritt S4). Falls nicht, kehrt der Betrieb zu dem Schritt S3 zurück, um den Speicherbetrieb der Polygondaten fortzusetzen. Wenn sämtliche der Polygondaten gespeichert worden sind, wird die Registrierung der Modelldaten bei dem Schritt 55 beendet.
  • Als Nächstes gibt die Haupt-CPU 10 einen Ausführungsbefehl für eine dreidimensionale CG-Verarbeitung, und eine Bildverarbeitung wird durchgeführt. Spezifisch überträgt die Haupt-CPU 10 eine Information für eine Koordinatentransformation (die Position des Beobachtungspunkts, die Beobachtungsrichtung und den Winkel der Beobachtung) zu dem dreidimensionalen Bildprozessor 16 über den Systembus 14. Wie in 4 gezeigt, werden die Daten in dem Befehlsanalysator 20 mit der Information in dem Modelldaten-Befehlsspeicher verglichen, wobei die Information für eine Koordinatentransformation, die nicht die Modelldaten sind, invertiert und ausgegeben wird. Da das Signal in dem Inverter 43 invertiert wird, stimmt das Signal mit dem Signal auf dem Befehlsdatenbus überein, womit es über das Gatter 44 zu dem Koordinatentransformationsprozessor 22 ausgegeben wird. Da das Signal, das aus dem Befehlskomparator 42 ausgegeben wird, nicht zu dem Signal auf dem Befehlsdatenbus passt, wird dieses nie aus dem Gatter 45 ausgegeben werden.
  • Der Koordinatentransformationsprozessor 22 richtet eine Transformation eines Beobachtungskoordinatensystems auf der Grundlage der Information für eine Koordinatentransformation ein (Schritt S6). Dann wird die Anzeigeeinheiten, d. h. die CRT 18, einmal gelöscht (Schritt S7). Der Koordinatentransformationsprozessor 22 liest die Polygondaten, die in dem Modelldaten-Akkumulationsspeicher 21 gespeichert sind, aus, so dass die Daten in jene in dem zugewiesenen Beobachtungskoordinatensystem transformiert werden können (Schritt S8). Die somit in das Beobachtungskoordinatensystem konvertierten Polygondaten werden zu dem Bildverarbeitungsabschnitt 16b ausgesendet (Schritt S9). Der Bilderzeugungsabschnitt startet, eine ähnliche Verarbeitung zu jener durchzuführen, die in dem Stand der Technik beschrieben ist (Schritt S10). Die Haupt-CPU 10 überprüft in einem Schritt S11, ob das Programm beendet worden ist. Falls nicht, wird der Betrieb zu dem Schritt S7 zurückgegeben, wohingegen, wenn es ausgeführt ist, der Betrieb angehalten wird.
  • Auf diese Weise ist es nur, wenn die Haupt-CPU 10 zuerst die Modelldaten in den Modelldaten-Akkumulationsspeicher 21 speichert und dann die Information für eine Koordinatentransformation in den dreidimensionalen Bildprozessor 16 eingibt, möglich, ein dreidimensionales Bild zu erzeugen. Deswegen ist es möglich, die Menge an Daten, die über den Systembus 14 übertragen wird, beträchtlich zu verringern, wodurch die Datenübertragungszeit verkürzt wird und die Verarbeitungsgeschwindigkeit deutlich verbessert wird. Diese Verringerung in der Menge übertragener Daten kann für die Datenübertragung für eine andere Verarbeitung verwendet werden. Weiterhin ist es nicht mehr notwendig, dass die Haupt-CPU 10 Koordinatentransformationen der Modelldaten durchführt, wie es in dem Stand der Technik ausgeführt wird, somit ist es möglich, die Belastung der Haupt-CPU 10 beträchtlich zu verringern, was eine Spanne für eine andere Verarbeitung herstellt und was es ermöglicht, dass die CPU effizient verwendet wird. Auf diese Weise ist das Verfahren für Multimedia äußerst wirksam, das verschiedene Prozesse parallel bewirken muss.
  • Weiter ermöglicht die Einbeziehung des Befehlsanalysators 20 zum Trennen einer gegebenen Information in Modelldaten und eine Information für eine Koordinatentransformation eine Diskriminierung und Trennung der übertragenen Daten in Modelldaten und eine Information für eine Koordinatentransformation in dem dreidimensionalen Bildprozessor 16. Somit sollte die Haupt-CPU 10 nur die beiden Arten von Daten zu dem dreidimensionalen Bildprozessor 16 über den Systemdatenbus 14 aussenden, wodurch eine Verringerung in seiner Belastung verwirklicht wird.
  • Die 2. Ausführungsform
  • 6 ist ein Blockdiagramm, das ein System gemäß der zweiten Ausführungsform zeigt, in welcher eine dreidimensionale Bildverarbeitungsvorrichtung verwendet wird.
  • Sie schließt einen Hilfsspeicher-Controller 11 und einen Hilfsspeicher 13 ein. Kein Hauptspeicher 12 in der oben erwähnten ersten Ausführungsform wird verwendet. Der Hilfsspeicher 13 kann betrachtet werden, eine Massenspeicherkapazität aufzuweisen, wie etwa eine magnetooptische Platte, eine CD-ROM, eine ROM-Kassette etc., und speichert Polygondaten und Texturdaten. Die Haupt-CPU 10 steuert den Hilfsspeicher 13 über den Hilfsspeichercontroller 11.
  • Wenn eine große Menge von Polygondaten und Texturdaten vorhanden ist, ist es in manchen Fällen unmöglich, alle in den Modelldaten-Rkkumulationsspeicher zu speichern. In diesem Fall sind sämtliche der Daten zuvor in den Hilfsspeicher 13 gespeichert worden. Die Haupt-CPU 10 überträgt die Polygondaten von dem Hilfsspeicher 13 in den Modelldaten-Rkkumulationsspeicher 21, falls erforderlich. Diese Funktion lässt es zu, dass das System Teile von Modelldaten handhabt, die nicht durch die Kapazität des Modelldaten-Akkumulationsspeichers 21 begrenzt sind.
  • Ein Problem kann dahingehend auftreten, dass das System nicht während der Übertragung von dem Hilfsspeicher 13 zu dem Modelldaten-Rkkumulationsspeicher 21 verwendet werden kann, aber dieses Problem kann durch ein Bereitstellen des Modelldaten-Akkumulationsspeichers 21 in einen Multiplex-Aufbau gelöst werden. Mit anderen Worten werden eine Mehrzahl von Modelldaten-Akkumulationsspeichern 21 bereitgestellt, und die Modelldaten werden von dem Hilfsspeicher 13 zu einem freien Modelldaten-Akkumulationsspeicher 21 übertragen. Texturdaten, die mit den Modelldaten erforderlich sind, werden von dem Hilfs speicher 13 zu dem Speicher in der Texturverarbeitungsschaltung 32 übertragen.
  • Die 3. Ausführungsform
  • 7 ist ein Blockdiagramm, das ein System gemäß der dritten Ausführungsform zeigt, in welcher eine dreidimensionale Bildverarbeitung verwendet wird. Diese Ausführungsform ist diejenige, in welcher ein mit einer Kommunikationsfunktion ausgestatteter Modelldaten-Akkumulationsspeicher 15 mit dem Modelldaten-Akkumulationsspeicher 21 in der Weise der ersten Ausführungsform verbunden ist. Die Haupt-CPU 10 gibt Befehle zu dem mit einer Kommunikationsfunktion ausgestatteten Modelldaten-Akkumulationsspeicher 15 über den Systembus 14. Eine Kommunikationsleitung 17 ist mit dem mit einer Kommunikationsfunktion ausgestatteten Modelldaten-Akkumulationsspeicher 15 verbunden, um so eine Datenübertragungsanforderung nach Modelldaten an ein externes System zu übertragen. Das externe System, das die Datenübertragungsanforderung nach Modelldaten empfangen hat, überträgt die angeforderten Modelldaten. Der mit einer Kommunikationsfunktion ausgestattete Modelldaten-Akkumulationsspeicher 15 empfängt die übertragenen Modelldaten über die Kommunikationsleitung 17 und speichert sie. Die akkumulierten Modelldaten werden zu dem Modelldaten-Akkumulationsspeicher 21 übertragen, so dass die Daten durch den gleichen Betrieb wie in der ersten Ausführungsform Bild-verarbeitet werden.
  • Da dieses System Modelldaten über die Kommunikationsleitung empfängt, um so ein dreidimensionales Zeichnen auf der Grundlage der empfangenen Modelldaten durchzuführen, wird es, auch wenn das System die Modelldaten nicht hat, die in dem entfernten System gehalten werden, möglich, die Modelldaten, die in der entfernten Station gehalten werden, durch ein Übertragen einer Anforderung nach Modelldaten an das entfernte System zu empfangen. Weiter ist es, wenn die entfernte Station das gleiche System aufweist, möglich, dreidimensionale Bilder von der entfernten Station durch eine wechselseitige Übertragung und einen Empfang von Modelldaten anzuzeigen, wodurch eine effiziente Multimedia-Einrichtung gebildet wird.
  • Wie bis hierhin beschrieben, ist es möglich, ein dreidimensionales Bild zu erzeugen, indem einmal ein Teil der Modelldaten in der Modelldaten-Speichereinrichtung gespeichert wird, und darauf ist es, indem nur die Information für eine Koordinatentransformation eingegeben wird, möglich, die übertragene Menge von Daten beträchtlich zu verringern, womit es ermöglicht wird, die Datenübertragungszeit zu verkürzen und eine verbesserte Verarbeitungsgeschwindigkeit zu erreichen. Diese Verringerung kann für die Datenübertragung für eine andere Verarbeitung verwendet werden. Weiter ist es nicht mehr notwendig, dass die Haupt-CPU Koordinatentransformationen von Modelldaten durchführt, wie es in dem Stand der Technik ausgeführt wird, womit es möglich ist, die Belastung der Haupt-CPU beträchtlich zu verringern, eine Spanne für eine andere Verarbeitung zu erzeugen und es zu ermöglichen, dass die CPU effizient verwendet wird. Auf diese Weise ist dieses Verfahren äußerst effektiv für Multimedia, das verschiedene Prozesse parallel bewirken muss.
  • Weiter ermöglicht die Einbeziehung eines Befehlsanalysators zum Trennen einer gegebenen Information in Modelldaten und eine Information für eine Koordinatentransformation eine Trennung der übertragenen Information in Modelldaten und eine Information für eine Koordinatentransformation in dem dreidimensionalen Bildprozessor. Somit sollte die Haupt-CPU nur die beiden Arten von Daten zu dem dreidimensionalen Bildprozessor über den Systemdatenbus aussenden, was eine Verringerung in ihrer Belastung verwirklicht.
  • Weiter ist es, wenn eine Hilfs-Modelldaten-Speichereinrichtung bereitgestellt wird, möglich, eine viel größere Menge von Modelldaten handzuhaben, wodurch das System in die Lage versetzt wird, Teile von Modelldaten zu handhaben, die nicht durch die Kapazität der Modelldaten-Speichereinrichtung beschränkt sind. Außerdem ist es, indem eine Modelldaten-Speichereinrichtung in einem Multiplex-Aufbau bereitgestellt wird, möglich, das Problem zu beseitigen, dass das System während der Datenübertra gung von der Hilfs-Modelldaten-Speichereinrichtung zu der Modelldaten-Speichereinrichtung unzugänglich wird.
  • Schließlich kann, wenn eine mit einer Kommunikationsfunktion ausgestattete Modelldaten-Speichereinrichtung bereitgestellt wird, das System Modelldaten über die Kommunikationsleitung empfangen und ein dreidimensionales Zeichnen auf der Grundlage der empfangenen Modelldaten durchführen. Deswegen wird es, auch wenn das System nicht die Modelldaten hat, die in dem entfernten System gehalten werden, möglich, die Modelldaten, die in der entfernten Station gehalten werden, durch ein Übertragen einer Anforderung nach Modelldaten zu dem entfernten System zu empfangen. Weiter ist es, wenn die entfernte Station das gleiche System aufweist, möglich, dreidimensionale Bilder von der entfernten Station durch eine wechselseitige Übertragung und einen Empfang von Modelldaten anzuzeigen, womit eine effiziente Multimedia-Einrichtung gebildet wird.

Claims (5)

  1. Dreidimensionale Bildverarbeitungsvorrichtung (16), umfassend: eine Modelldaten-Speichereinrichtung (21) zum Speichern von Modelldaten eines Objekts, die einer Bildverarbeitung zu unterwerfen sind; eine Koordinatentransformationseinrichtung (16a, 22) zum Transformieren der Modelldaten, die aus der Speichereinrichtung (21) ausgelesen werden, in ein Koordinatensystem zum Erzeugen eines dreidimensionalen Bilds; eine Bilderzeugungseinrichtung (16b) zum Erzeugen eines dreidimensionalen Bilds auf der Grundlage des transformierten Koordinatensystems; eine Informationsanalysiereinrichtung (20) zum Trennen eines gegebenen Teils einer Information in Modelldaten und eine Koordinatentransformationsinformation, wobei Modelldaten zu der Modelldaten-Speichereinrichtung (21) gesendet werden, während die Koordinatentransformationsinformation zu der Koordinatentransformationseinrichtung (16a, 22) gesendet wird; wobei die Modelldaten einmal in der Modelldaten-Speichereinrichtung (21) gespeichert werden und darauf die Bildverarbeitung auf der Grundlage eines gegebenen Teils einer Koordinatentransformationsinformation durchgeführt wird.
  2. Dreidimensionale Bildverarbeitungsvorrichtung nach Anspruch 1, weiter umfassend: eine Hilfs-Modelldaten-Speichereinrichtung (13), die Modelldaten zu der Modelldaten-Speichereinrichtung (21) übertragen, falls erforderlich.
  3. Dreidimensionale Bildverarbeitungsvorrichtung nach Anspruch 2, wobei die Modelldaten-Speichereinrichtung (21) einen Multiplex-Aufbau aufweist, so dass sie aus einem Speicherabschnitt für die Modelldaten, die für eine Koordinatentransformation zu verwenden sind, und einem Speicherabschnitt für die Modelldaten, die von der Hilfs-Modelldaten-Speichereinrichtung (13) zu übertragen sind, besteht.
  4. Dreidimensionale Bildverarbeitungsvorrichtung nach Anspruch 2 oder 3, wobei die Hilfs-Modelldaten-Speichereinrichtung (13) ausgelegt ist, Modelldaten von außerhalb über eine Kommunikationsleitung zu empfangen.
  5. Verfahren zur dreidimensionalen Bildverarbeitung, umfassend: Eingeben eines gegebenen Teils einer Information in eine Informationsanalysiereinrichtung und Trennen derselben in Modelldaten und eine Koordinatentransformationsinformation, Speichern der Modelldaten einmal in einer Modelldaten-Speichereinrichtung, und Senden der Koordinatentransformation zu einer Koordinatentransformationseinrichtung; Auslesen der Modelldaten aus der Modelldatenspeichereinrichtung und Unterwerfen derselben einem Koordinatentransformationsprozess auf der Grundlage der Koordinatentransformationsinformation, um ein transformiertes Koordinatensystem zu erzeugen; und Erzeugen eines dreidimensionalen Bilds aus einem gegebenen Teil einer Koordinatentransformationsinformation.
DE69728207T 1996-05-15 1997-05-15 Dreidimensionales Bildverarbeitungsgerät Expired - Lifetime DE69728207T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP12056296A JP3402926B2 (ja) 1996-05-15 1996-05-15 3次元画像処理装置
JP12056296 1996-05-15

Publications (2)

Publication Number Publication Date
DE69728207D1 DE69728207D1 (de) 2004-04-29
DE69728207T2 true DE69728207T2 (de) 2005-02-03

Family

ID=14789388

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69728207T Expired - Lifetime DE69728207T2 (de) 1996-05-15 1997-05-15 Dreidimensionales Bildverarbeitungsgerät

Country Status (4)

Country Link
US (1) US6222548B1 (de)
EP (1) EP0807901B1 (de)
JP (1) JP3402926B2 (de)
DE (1) DE69728207T2 (de)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3001538B1 (ja) 1998-10-08 2000-01-24 コナミ株式会社 ビデオゲーム装置、ビデオゲームにおけるモデル表示方法及びビデオゲームにおけるモデル表示プログラムが記録された可読記録媒体
US7245302B1 (en) * 2003-10-30 2007-07-17 Nvidia Corporation Processing high numbers of independent textures in a 3-D graphics pipeline
US20070070077A1 (en) * 2005-09-26 2007-03-29 Silicon Integrated Systems Corp. Instruction removing mechanism and method using the same
CN103310021B (zh) * 2013-07-04 2016-11-16 江西交通咨询公司 一种基于三维坐标互换的模型动态加载方法

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5265197A (en) * 1988-12-23 1993-11-23 Kabushiki Kaisha Toshiba Geometric modeling apparatus
US5444550A (en) 1989-04-28 1995-08-22 Canon Kabushiki Kaisha Image processing apparatus
DE69032768D1 (de) * 1989-08-25 1998-12-24 Hitachi Ltd Verfahren und Gerät zur Bilderzeugung
US5148521A (en) * 1989-10-23 1992-09-15 International Business Machines Corporation Pick data queue for pipelined graphics system
US5159665A (en) 1989-11-27 1992-10-27 Sun Microsystems, Inc. Graphics accelerator system
US5421028A (en) 1991-03-15 1995-05-30 Hewlett-Packard Company Processing commands and data in a common pipeline path in a high-speed computer graphics system
US5299309A (en) * 1992-01-02 1994-03-29 Industrial Technology Research Institute Fast graphics control system capable of simultaneously storing and executing graphics commands
US5821940A (en) * 1992-08-03 1998-10-13 Ball Corporation Computer graphics vertex index cache system for polygons
US5751289A (en) * 1992-10-01 1998-05-12 University Corporation For Atmospheric Research Virtual reality imaging system with image replay
US5511165A (en) 1992-10-23 1996-04-23 International Business Machines Corporation Method and apparatus for communicating data across a bus bridge upon request
US5581665A (en) * 1992-10-27 1996-12-03 Matsushita Electric Industrial Co., Ltd. Three-dimensional object movement and transformation processing apparatus for performing movement and transformation of an object in a three-diamensional space
CA2103395C (en) 1992-11-24 2004-08-17 Masakazu Suzuoki Apparatus and method for providing texture of a moving image to a surface of an object to be displayed
JP3098342B2 (ja) 1992-11-26 2000-10-16 富士通株式会社 並列処理装置における処理順序指定方式
JPH06325151A (ja) * 1993-03-17 1994-11-25 Fujitsu Ltd アニメーション編集装置
US5392393A (en) 1993-06-04 1995-02-21 Sun Microsystems, Inc. Architecture for a high performance three dimensional graphics accelerator
CA2127053C (en) * 1993-07-02 2005-01-04 Makoto Furuhashi Method and apparatus for time-sharing cpu system bus in image generation system
US5687307A (en) * 1993-09-21 1997-11-11 Canon Kabushiki Kaisha Computer graphic animation in which texture animation is independently performed on a plurality of objects in three-dimensional space
JPH07146952A (ja) * 1993-11-22 1995-06-06 Konami Kk 3次元画像処理装置
US5592597A (en) * 1994-02-14 1997-01-07 Parametric Technology Corporation Real-time image generation system for simulating physical paint, drawing media, and feature modeling with 3-D graphics
JPH07244470A (ja) * 1994-03-03 1995-09-19 Fujitsu Ltd 図形表示装置
JP3632705B2 (ja) * 1994-08-31 2005-03-23 ソニー株式会社 対話型画像提供方法、サーバ装置、提供方法、ユーザ端末、受信方法、画像提供システム、および画像提供方法

Also Published As

Publication number Publication date
JP3402926B2 (ja) 2003-05-06
EP0807901A3 (de) 1999-08-11
EP0807901B1 (de) 2004-03-24
JPH09305794A (ja) 1997-11-28
US6222548B1 (en) 2001-04-24
DE69728207D1 (de) 2004-04-29
EP0807901A2 (de) 1997-11-19

Similar Documents

Publication Publication Date Title
DE60222175T2 (de) Bildverarbeitungsvorrichtung und dazugehöriges verfahren
DE69722862T2 (de) Bilderzeugungsvorrichtung zur Erzeugung von Pixeldaten für eine Bildanzeige
DE68924389T2 (de) Verfahren und Einrichtung zur Anzeige einer Vielzahl von graphischen Bildern.
DE69333379T2 (de) Vorrichtung und Verfahren zur Verarbeitung von Videosignalen
DE69432385T2 (de) Bilderzeugung
DE69912576T2 (de) Filter zum transformieren von 3d-daten in einer hardware beschleunigten architektur
DE69820143T2 (de) Datenverarbeitungsgerät und -verfahren
DE60105510T2 (de) Bilderzeugungsgerät
DE69029987T2 (de) Verfahren und Gerät zur parallelen Wiedergabe von Polygonen und Pixeln
DE69926986T2 (de) Rechnergrafiken-animationsverfahren und vorrichtung
DE3619420A1 (de) Computer-displayeinrichtung
DE102018125472B4 (de) Grafikprozessor, der Abtastungs-basiertes Rendering durchführt, und Verfahren zum Betreiben desselben
DE69733228T2 (de) Adressgenerator, Bildanzeigegerät, Adressenerzeugungsverfahren und Bildanzeigeverfahren
DE60024514T2 (de) Aufzeichnungsmedium, Verfahren und Einrichtung zur Bildverarbeitung mit integrierten Daten zur Formmodellierung
DE69817926T2 (de) Beleuchtungsberechnungseinheit und Verfahren für dreidimensionalen Graphikbeschleuniger
DE69432507T2 (de) Verfahren und Geräte zur Erzeugung von Zeichnungsdaten
DE68928198T2 (de) Verfahren und Vorrichtung für dreidimensionale Anzeige mit Querschnitt
DE102013014779A1 (de) Textelement-datenstruktur für programmierbare schattierungseinheit für eine graphikverarbeitungseinheit und verfahren zum betreiben davon
DE69720873T2 (de) Speicherzugriffsverfahren und datenprozessor
DE69730923T2 (de) Verfahren und Gerät zur Bilderzeugung
DE69728207T2 (de) Dreidimensionales Bildverarbeitungsgerät
DE102004012516A1 (de) Computersystem zur elektronischen Datenverarbeitung
DE68922093T2 (de) Rechner-Anzeigesysteme mit Fenstern.
DE3837068B4 (de) Bildverarbeitungsverfahren zur Gewinnung eines Schattenbildes
DE68925771T2 (de) Emulatorsystem für eine Anzeige

Legal Events

Date Code Title Description
8364 No opposition during term of opposition