-
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.