-
Die
vorliegende Erfindung bezieht sich auf eine dreidimensionale (3D)
Bildverarbeitungstechnik eines Anwendens einer spezifischen Bildverarbeitung,
um ein Modell, das in einem simulierten 3D Raum angeordnet ist,
auf einem Monitor anzuzeigen bzw. darzustellen, nachdem es wiedergegeben
wurde, wobei diese Technik beispielsweise an Bildern von Videospielsystemen
und Computergraphiken (CG) angewandt wird.
-
HINTERGRUND
DER ERFINDUNG UND STAND DER TECHNIK
-
In
den letzten Jahren wurden zahlreiche Spielsysteme verbreitet, in
welchen Charaktere bzw. Figuren in einem simulierten 3D Raum angezeigt sind,
der auf einem Monitorschirm ausgebildet wurde. Einige derartiger
Spielsysteme sind bekannt, daß sie
Autorennen, Skifahren, Surfen, Motorbootfahren, Snowboarding, Skateboarding
usw. simulieren.
-
Weiters
differiert in diesen Spielen, in welchen ein Charakter auf einer
Bodenoberfläche
oder Wasseroberfläche
läuft (oder
gleitet) die Anwesenheit bzw. Darbietung des Spiels stark in Abhängigkeit davon,
wie realistisch eine Änderung
in einem Hintergrundbild ausgedrückt
ist, die aus der Bewegung des Charakters resultiert.
-
Insbesondere
in einem Autorennspiel, in welchem ein Charakter bzw. eine Figur
auf einem schmutzigen Kurs fährt,
einem Ski- oder Snowboardspiel, in welchem ein Charakter auf einer
Piste oder Neigung gleitet oder einem CG-Bild gleitet, kann eine bessere
Darbietung bzw. Erscheinung gegeben werden, wenn eine Spur erzeugt
wird, die auf dem Boden ausgebildet ist, während der Charakter fährt (oder gleitet), mit
dem Ergebnis, daß Spiele
und CG-Bilder, die reich an Einfallsreichtum bzw. Raffinesse sind, realisiert
werden können.
-
JP-10201947
offenbart als nächstliegender Stand
der Technik ein Ausbilden von Reifenspuren eines Fahrzeugs, welches
in einer virtuellen 3D Welt bremst oder gleitet bzw. schleudert.
Die Spuren sind von konstanter Breite. Sie werden durch Polygone modelliert,
die durch ein Muster überlagert
sind.
-
ZUSAMMENFASSUNG
DER ERFINDUNG
-
Im
Hinblick auf die obige Situation ist ein Ziel bzw. Gegenstand der
vorliegenden Erfindung, eine Bildverarbeitungsverfahren und eine
Vorrichtung zum realistischen und einfachen Ausbilden bzw. Erzeugen
einer Spur, die auf einer Bodenoberfläche oder einer Wasseroberfläche ausgebildet
wird, wenn ein Charakter fährt
oder gleitet, ein lesbares Speichermedium, das ein 3D Bildverarbeitungsprogramms,
und ein Videospielsystem zur Verfügung zu stellen.
-
Um
das obige Ziel zu erreichen, umfaßt gemäß der vorliegenden Erfindung,
wie sie in den anhängigen
Ansprüche
definiert ist, ein Gerät
zur dreidimensionalen Bildverarbeitung zur Ausbildung eines Bilds
einer Spur, die eine erste variable Breite aufweist und auf einer
Bodenoberfläche
oder einer Wasseroberfläche
ausgebildet ist, wenn sich ein 3D Modell, das eine zweite Breite
aufweist, in Kontakt mit der Bodenoberfläche oder der Wasseroberfläche bewegt,
Positionsberechnungsmittel bzw. -einrichtungen zum Berechnen von
Positionen an einander gegenüberliegenden
Breitseiten der Spur, die durch den Kontakt des 3D Modells mit der
Bo den- oder Wasseroberfläche
ausgebildet wird, zu bestimmten Zeitintervallen, Polygon ausbildende
Mittel zum Ausbilden von Polygonen für die Spur durch ein aufeinanderfolgendes
Bestimmen der berechneten Positionen an den einander gegenüberliegenden
Breitseiten als Scheitel, Polygonspeichermittel zum Speichern der
generierten bzw. erzeugten Polygone, Texturspeichermittel zum Speichern
von Texturen, die an den Polygonen anzuhaften sind, und Texturanhaftungsmittel
zum Anhaften der Texturen, die in den Texturspeichermitteln gespeichert
sind, an die Polygone. Mit der obigen Konstruktion können die
Polygone für
die Spur leicht durch aufeinanderfolgendes Bestimmen als die entsprechenden
Scheitel die Positionen an den gegenüberliegenden, breiten bzw. Breitseiten
generiert werden, wo die Spur auszubilden ist. Ein Bild der Spur
kann realistisch und einfach durch ein Anhaften der Textur an diese
Polygone ausgebildet werden.
-
Diese
und andere Gegenstände,
Merkmale und Vorteile der vorliegenden Erfindung werden beim Lesen
der folgenden, detaillierten Beschreibung und aus den beiliegenden
Zeichnungen noch offensichtlicher werden.
-
KURZE BESCHREIBUNG
DER ZEICHNUNGEN
-
1 ist eine Blockdiagramm,
das eine Ausbildung eines Videospielsystems gemäß der vorliegenden Erfindung
zeigt,
-
2 ist ein Blockdiagramm,
das einen wesentlichen Abschnitt einer 3D Bildverarbeitungsvorrichtung
zeigt,
-
3 ist ein Flußdiagramm,
das eine Zusammenfassung einer 3D Bildverarbeitung gemäß der Erfindung
zeigt,
-
4A und 4B sind Diagramme, die ein Verfahren
zum Berechnen von Positionen an den gegenüberliegenden Breitseiten eines
Orts zeigen, wo eine Spur auszubilden ist,
-
5 ist ein Flußdiagramm,
das ein Verfahren zum Berechnen der Positionen an den gegenüberliegenden
Breitseiten des Orts zeigt, wo eine Spur auszubilden ist,
-
6A bis 6C sind Diagramme, die ein Beispiel zeigen,
wie Polygone einer Spur generiert bzw. erzeugt werden,
-
7 ist ein Flußdiagramm,
das ein Verfahren einer transparenten Verarbeitung einer Textur und
einer Verarbeitung für
ein Anhaften von Texturen an Polygone zeigt,
-
8 ist ein Diagramm eines
Schirms, das ein Beispiel einer Spur zeigt, die erzeugt wird, wenn ein
Snowboard in einem Bereich gleitet, der unterschiedliche Oberflächenarten
einer Neigung bzw. Piste aufweist, und
-
9 ist ein Diagramm eines
Schirms, das ein Beispiel einer Spur zeigt, die erzeugt wird, wenn das
Snowboard von der Oberfläche
der Piste springt.
-
DETAILLIERTE
BESCHREIBUNG DER BEVORZUGTEN AUSBILDUNGEN DER VORLIEGENDEN ERFINDUNG
-
1 ist Blockdiagramm, das
eine Ausbildung eines Videospielsystems gemäß der vorliegenden Erfindung
zeigt. Dieses Spielsystem 1 ist mit einer Hauptspieleinheit,
einem Fernsehmonitor 2 zum Anzeigen bzw. Darstellen von
Bildern eines Spiels, einer Verstärkungsschaltung 3 und
einem Lautsprecher 4 zum Ausgeben von Toneffekten und dgl.
während
eines Spiels, und einem Speichermedium 5 versehen, das
Spieldaten, umfassend Bilddaten, Tondaten und Programmdaten speichert.
Das Speichermedium 5 kann eine sogenannte ROM-Kassette,
in welcher ein ROM, der die Spieldaten speichert, und Programmdaten
eines Betriebssystems in einem Plastikgehäuse enthalten sind, eine optische
Diskette oder eine flexible Diskette sein. In Abhängigkeit
von der Art des Spiel systems 1 kann eine eingebaute Art
eines ROM oder dgl. verwendet werden.
-
Die
Hauptspieleinheit ist derart konstruiert, daß Busse 7, umfassend
Adreßbusse,
Datenbusse und Steuer- bzw. Regelbusse bzw. Leiterbahnen mit einer
CPU 6 verbunden sind; ein RAM 8, Schnittstellen-
bzw. Interfaceschaltungen 9, 10, ein Signalprozessor 11,
ein Bildprozessor 12 und Interfaceschaltungen 13, 14 mit
den Bussen 7 verbunden sind; eine Steuer- bzw. Regeleinheit
bzw. ein Controller 16 mit der Interfaceschaltung 10 über eine
Betriebsinformations-Interfaceschaltung 15 verbunden ist;
ein Digital-Analog (D/A) Wandler 17 mit der Interfaceschaltung 13 verbunden
ist; und ein D/A-Wandler 18 mit der Interfaceschaltung 14 verbunden
ist.
-
Eine
Speichereinheit 19 ist durch den RAM 8, die Interfaceschaltung 9 und
das Speichermedium 5 aufgebaut; eine Steuer- bzw. Regeleinheit 20 zum Steuern
bzw. Regeln des Fortschritts des Spiels ist durch die CPU 6,
den Signalprozessor 11 und den Bildprozessor 12 konstruiert;
eine Betriebs- bzw. Operationseingabeeinheit 21 ist durch
die Interfaceschaltung 10, die Betriebsinformations-Interfaceschaltung 15 und
die Steuer- bzw. Regeleinheit 16 aufgebaut bzw. konstruiert;
eine Bildanzeigeeinheit 22 ist durch den Fernsehmonitor 2,
die Interfaceschaltung 13 und den D/A-Wandler 17 aufgebaut; und eine
Tonausgabeeinheit 23 ist durch die Verstärkungsschaltung 3,
den Lautsprecher 4, die Interfaceschaltung 14 und
den D/A-Wandler 18 konstruiert.
-
Der
Signalprozessor 11 führt
hauptsächlich eine
Berechnung von Positionen von Charakteren bzw. Figuren in einen
simulierten 3D Raum, eine Berechnung von Transformationen einer Position
in dem simulierten 3D Raum zu der einen in einem simulierten zweidimensionalen
(2D) Raum, eine Lichtquellenberechnung und ein Lesen und Kombinieren von
verschiedenen Tondaten durch.
-
Der
Bildprozessor 12 positioniert Polygone, die ein Bild, das
auszubilden ist, in einem Anzeigebereich des RAM 8 formen,
und führt
ein Bearbeiten bzw. Ausbilden, wie ein Texturaufzeichnen an diesen Polygonen
basierend auf dem Berechnungsergebnis des Signalprozessors 11 durch.
-
Die
Steuer- bzw. Regeleinheit 16 ist mit verschiedenen Knöpfen zum
Auswählen
von Spielinhalten, Instruieren des Starts des Spiels und Instruieren von
Tätigkeiten,
einer Richtung usw. an einen Hauptcharakter versehen.
-
Die
Art des Spielsystems 1 differiert in Abhängigkeit
von seiner Anwendung. Spezifisch sind der Fernsehmonitor 2,
die verstärkende
bzw. Verstärkungsschaltung 3 und
die Lautsprecher 4 von der Hauptspieleinheit in dem Fall
getrennt, daß das Spielsystem 1 zur
Heimverwendung konstruiert ist, während alle diese Elemente,
die in 1 gezeigt sind,
als eine Einheit in einem Gehäuse
in dem Fall enthalten sind, daß das
Spielsystem 1 für
eine geschäftliche
Verwendung konstruiert ist.
-
In
dem Fall, daß das
Spielsystem 1 mit einem Personal Computer oder einer Arbeitsstation
als ein Kern ausgebildet ist, entspricht der Fernsehmonitor 2 einem
Computerdisplay, der Bildprozessor 12 entspricht einem
Teil der Spielprogrammdaten, die in dem Speichermedium 5 oder
der Hardware oder auf einem Erweiterungsboard gespeichert sind,
das an einem Erweiterungsschlitz des Computers festgelegt ist, und die
Interfaceschaltungen 9, 10, 13, 14,
die D/A-Wandler 17, 18 und die Betriebsinformations-Interfaceschaltung 15 entsprechen
Hardware auf einem Erweiterungsboard bzw. einer Zusatzkarte, das bzw.
die an dem Erweiterungsschlitz des Computers festgelegt ist. Weiters
entspricht der RAM 8 einem Hauptspeicher des Computers
oder den entsprechenden Bereichen auf einem Erweiterungs- bzw. Erstreckungsspeicher.
-
Ein
Fall, wo das Spielsystem 1 zur Heimverwendung konstruiert
ist, wird unten beschrieben.
-
Zuerst
wird die Arbeitsweise des Spielsystems 1 kurz beschrieben.
Wenn ein Leistungsschalter (nicht gezeigt) eingeschaltet wird, um
das Videospielsystem 1 zu aktivieren, liest die CPU 6 Bilddaten,
Tondaten und Spielprogrammdaten aus dem Speichermedium 5 in Übereinstimmung
mit dem Betriebssystem, das in dem Speichermedium 5 gespeichert
ist. Ein Teil oder alle gelesenen Bilddaten, Tondaten und Spielprogrammdaten
sind bzw. werden in dem RAM 8 gespeichert.
-
Danach
wird das Spiel durch die CPU 6 in Übereinstimmung mit den Spielprogrammdaten,
die in dem RAM 8 gespeichert sind, und Inhalten von Instruktionen,
die durch den Spielteilnehmer über
die Steuer- bzw. Regeleinheit 16 eingegeben sind, fortgeführt. Mit
anderen Worten werden Befehle wie Aufgaben zum Ausbilden von Bildern
und Ausgeben von Tönen
geeignet in Übereinstimmung
mit Inhalten von Instruktionen generiert bzw. erzeugt, die durch
den Spielteilnehmer über
die Steuer- bzw. Regeleinheit 16 eingegeben werden.
-
Der
Signalprozessor 11 führt
eine Berechnung von Positionen von Charakteren bzw. Figuren in dem
3D Raum (selbstver ständlich
gilt dasselbe für den
2D Raum), eine Lichtquellenberechnung, ein Lesen und Kombinieren
von verschiedenen Tondaten in Übereinstimmung
mit diesen Befehl durch.
-
Nachfolgend
schreibt der Bildprozessor 12 die Bilddaten, die in dem
Anzeigebereich des RAM 8 auszubilden sind, basierend auf
dem Berechnungsergebnis des Signalprozessors 11 auszubilden
sind. Die Bilddaten, die in dem RAM 8 geschrieben sind, werden über die
Interfaceschaltung 13 dem D/A-Wandler 17 zugeführt, welcher
dann die Bilddaten dem Fernsehmonitor 2 zuführt, um
sie als ein Bild auf dem Schirm des Fernsehmonitors 2 anzuzeigen, nachdem
sie in ein analoges Videosignal umgewandelt wurden.
-
Andererseits
werden die Tondaten, die von dem Signalprozessor 11 ausgegeben
werden, über die
Interfaceschaltung 14 dem D/A-Wandler 18 zugeführt, welcher
diese wiederum in ein analoges Tonsignal (über ein Filter oder dgl.) umwandelt.
Das umgewandelte bzw. konvertierte Signal wird als ein Spielton
von dem Lautsprecher 4 als einen Ton ausbildende Mittel über die
Verstärkungsschaltung 3 ausgegeben.
Die Spieltöne
beziehen sich auf BGMs, verschiedene Toneffekte, Präsentationstöne, Stimmen usw.
-
2 ist ein Blockdiagramm,
das einen wesentlichen Abschnitt einer ein 3D Bild verarbeitenden Vorrichtung
zeigt. Der Signalprozessor 11 ist mit einer Kontaktbeurteilungs- bzw. -abschätzungseinheit 114 zum
Abschätzen
bzw. Bestimmen, ob ein 3D Modell in Kontakt mit einer Boden- oder
Wasseroberfläche
ist oder nicht, einer Positionsberechnungseinheit 111 zum
Berechnen von Positionen an den gegenüberliegenden Breitseiten einer
Spur, die durch den Kontakt des 3D Modells mit der Boden- oder Wasseroberfläche ausgebildet wird,
einer Polygonausbildungseinheit 112 zum Ausbilden von Polygonen
der Spur durch aufeinanderfolgendes Bestimmen der Positionen an
den gegenüberliegenden
Breitseiten, wo die Spur als Scheitel auszubilden ist, und einer Texturauswahleinheit 113 zum
Bestimmen einer Textur entsprechend der Boden- oder Wasseroberfläche, mit
welcher das 3D Modell in Kontakt ist, aus einer Mehrzahl von Texturen
für die
Spur versehen, die in einem Texturspeicher 82 gespeichert
ist, der später zu
beschreiben ist.
-
Die
Kontaktbeurteilungseinheit 114 beurteilt den Kontakt eines
Polygons, das den Boden oder die Wasseroberfläche ausbildet, und eines Polygons, das
das 3D Modell ausbildet, in einem simulierten 3D Raum. In dem Fall,
daß die
zwei Polygone in Kontakt sind, gibt es drei Arten von Kontakten:
punktförmigen bzw.
Punktkontakt, Linienkontakt und Oberflächenkontakt. In dieser Ausbildung
wird ein Oberflächenkontakt
angenommen, wenn die zwei Polygone als in Kontakt befindlich unterschieden
werden.
-
Die
Positionsberechnungseinheit 111 berechnet die Positionen
an den gegenüberliegenden Breitseiten
der Spur, die durch den Kontakt des 3D Modells mit der Boden- oder
Wasseroberfläche
ausgebildet wurde, an Intervallen einer vorbestimmten Zeit (z. B.
jedem Bildrahmen) basierend auf der Blickrichtung und der Bewegungsrichtung
des 3D Modells. In dem Fall, daß die
Konfiguration der Oberfläche
(nachfolgend "Kontaktoberfläche") des 3D Modells
in Kontakt mit der Boden- oder Wasseroberfläche kompliziert ist, können die
Positionen an den gegenüberliegenden
Breitseiten der Spuren, die zu erzeugen ist, berechnet werden, nachdem
eine Verarbeitung zum Annähern
bzw. Abschätzen
der Konfiguration der Kontaktoberfläche an eine einfachere Konfiguration
durchgeführt
wird, wie dies später
beschrieben werden wird.
-
Die
Polygonerzeugungs- bzw. -ausbildungseinheit 112 bestimmt
sukzessive die Positionen an den gegenüberliegenden Breitseiten der
Spur, die durch die Positionsberechnungseinheit 111 berechnet
wurde, als Scheitel eines Polygons, um das Polygon der Spur zu erzeugen.
Hier werden die Positionen an den gegenüberliegenden Breitseiten der
Spur (d. h. zwei Positionen) durch die Positionsberechnungseinheit 111 berechnet,
beispielsweise kann die linke dieser zwei Positionen in bezug auf
die Bewegungsrichtung bestimmt werden als ein Scheitel vor dem rechten
bei einer Bestimmung der entsprechenden Scheitel des Polygons durch
die Polygonausbildungseinheit 112.
-
Die
Texturauswahleinheit 113 wählt eine Textur, die für die Art
der Boden- oder Wasseroberfläche, mit
welcher das 3D Modell in Kontakt ist, aus einer Mehrzahl von Texturen
für die
Spur aus, die in der Texturspeicherung 82 gespeichert sind,
die später
zu beschreiben ist. In dieser Ausbildung ist ein Fall zum Erzeugen
einer Spur, wenn ein Snowboard auf einem Abhang bzw. Gefälle gleitet,
beschrieben. Beispielsweise entsprechen Texturen für tiefe
Spuren Weichschneeabhängen,
wohingegen Texturen für
seichte Spuren Hartschneeabhängen
entsprechen. Die Texturauswahleinheit 113 wählt eine
Textur für
eine tiefe Spur in dem Fall, daß das
Snowboard auf einer Weichschneepiste bzw. einem Weichschneeabhang gleitet,
während
eine Textur für
seichte Spur in dem Fall gewählt
wird, daß es
auf einem Tiefschneeabhang gleitet.
-
Der
Bildprozessor 12 ist mit einer Texturanhafteinheit 121 zum
Anhaften der Textur, die durch die Texturauswahl 113 ausgewählt wurde,
an das Polygon der Spur, die durch die Polygonausbildungseinheit 112 gebildet
ist, und eine Texturtransparentverarbeitungseinheit 122 zum
Anwenden einer transparenten bzw. Transparentverarbeitung an der
Textur in einer schrittweisen Weise versehen.
-
Die
Texturtransparentverarbeitungseinheit 122 wendet die Transparentverarbeitung
in einer spezifischen Anzahl von Schritten an der Textur vor und
nach einer Änderung
in dem Fall an, daß die
Textur, die durch die Texturauswahleinheit 113 gewählt ist,
verändert
wird, wenn das 3D Modell bewegt wird. Die Texturen, welche die Transparentverarbeitung daran
angewandt haben, werden in einer Transparenttexturspeicherung 83,
die später
zu beschreiben ist, gespeichert.
-
Die
Texturanhafteinheit 121 haftet die Textur, die durch die
Texturauswahleinheit 113 ausgewählt ist, an das Polygon der
Spur an, die durch die Polygonausbildungseinheit 112 gebildet
ist. Jedoch werden in dem Fall, daß die Textur, die durch die
Texturauswahleinheit 113 gewählt ist, verändert wird,
wenn das 3D Modell bewegt wird, die Texturen, die durch ein Anwenden
der Transparentverarbeitung in der spezifischen Anzahl von Schritten
der Texturen vor und nach der Veränderung erhalten werden, aus
der transparenten bzw. Transparenttexturspeicherung 83 gelesen
und an einer spezifischen Anzahl von Polygonen vor und nach der Änderung
angehaftet.
-
Der
RAM 8 ist mit einem Polygonspeicher 81 zum Speichern
der Polygone der Spur, die durch die Polygonausbildungseinheit 112 erzeugt
wird, der Texturspeicherung 82 zum Spei chern der Texturen für die Spur,
die an die Polygone der Spur anzuhaften sind, die durch die Polygonausbildungseinheit 112 erzeugt
wird, und der Transparenttexturspeicherung 83 zum Speichern
der Texturen versehen, an welcher die Transparentverarbeitung durch
die Texturtransparentverarbeitungseinheit 122 angewandt
wurde.
-
Die
Polygonspeicherung 81 speichert Koordinaten von Scheiteln
von einer maximalen Anzahl von Polygonen, die im voraus festgelegt
sind, und löscht
Daten an einem Polygon, das eine frühere Erzeugungs- bzw. Ausbildungszeit
besitzt, jedes Mal, wenn ein Polygon durch die Polygonausbildungseinheit 112 erzeugt
wird. Alternativ können
Daten betreffend Polygone, die frühere Erzeugungszeiten aufweisen,
auf einmal an Intervallen einer vorbestimmten Zeit gelöscht werden.
-
In
der folgenden Beschreibung wird die 3D Bild-Verarbeitung gemäß der vorliegenden
Erfindung angewandt, um beispielsweise eine Spur zu erzeugen, die
ein Snowboard auf einem Abhang hinterläßt. 3 ist ein Flußdiagramm, das eine Zusammenfassung
der 3D Bild-Verarbeitung gemäß der vorliegenden
Erfindung zeigt. Zuerst bestimmt die Kontaktbeurteilungseinheit 114,
ob hier irgendein Kontakt zwischen der Neigung bzw. dem Abhang und
dem Snowboard (Schritt ST1) besteht. Wenn irgendein Kontakt abgeschätzt bzw.
beurteilt wird, berechnet die Positionsberechnungseinheit 111 die
Positionen an den gegenüberliegenden
Breitseiten, wo die Spur auszubilden bzw. zu erzeugen ist (Schritt
ST2).
-
Nachfolgend
bestimmt die Polygonausbildungseinheit 112 sukzessive die
Positionen an den gegenüberliegenden
Breitseiten, wo die Spur auszubilden ist, als Scheitel, um das Po lygon
der Spur zu erzeugen, welche dann in der Polygonspeicherung 81 (Schritt
ST3) gespeichert wird. Dann wird die Textur, die für die Art
des Gefälles
bzw. Abhangs geeignet ist, mit welchem das Snowboard in Kontakt
ist, durch die Texturauswahleinheit 113 ausgewählt und aus
der Texturspeicherung 82 (Schritt ST5) ausgelesen. Es wird
dann unterschieden, ob die Textur, die durch die Texturauswahleinheit 113 gewählt ist,
geändert
wurde oder ob das Ergebnis der Kontaktabschätzung bzw. -Beurteilung, die
durch die Kontaktbeurteilungseinheit 114 durchgeführt wurde
(hier, ob der Zustand eines Kontakts von der Abwesenheit eines Kontakts
zu der Anwesenheit eines Kontakts verändert hat) geändert wurde,
wenn bzw. da sich das Snowboard bewegt (Schritt ST7).
-
Wenn
die gewählte
Textur verändert
wurde oder das Ergebnis der Kontaktbeurteilung verändert wurde,
wendet die Texturtransparentverarbeitungseinheit 122 die
Transparentverarbeitung an den Texturen vor und nach der Veränderung
der Textur oder an der Textur an, die gewählt wird, wenn die Anwesenheit
eines Kontakts bestätigt
wurde, und die resultierenden Texturen werden in dem Transparenttexturspeicher 83 (Schritt
ST9) gespeichert. Die Texturanhaftungseinheit 121 liest
die Texturen, an welchen die Transparentverarbeitung ausgeführt wurde,
aus dem Transparenttexturspeicher 83 und haftet diese an
die Polygone vor und nach der Veränderung der Textur an oder
an das Polygon, das ausgebildet wurde, wenn die Anwesenheit bzw.
Vorhandensein eines Kontakts bestätigt bzw. unterschieden wurde
(Schritt ST11).
-
Außer die
zu wählende
Textur wurde verändert
oder das Ergebnis der Kontaktabschätzung wurde verändert, wird
die Textur, die durch die Texturauswahl 113 ausgewählt ist,
an das Polygon durch die Texturanhaftungseinheit 121 angehaftet
(Schritt ST11).
-
Wenn
die Abwesenheit eines Kontakts in Schritt ST1 unterschieden bzw.
festgestellt wurde, dann wird unterschieden, ob sich das Ergebnis
der Kontaktbeurteilung verändert
hat (hier, ob der Zustand eines Kontakts von der Anwesenheit eines Kontakts
zur Abwesenheit eines Kontakts verändert wurde) (Schritt ST12).
Wenn das Ergebnis der Kontaktabschätzung bzw. -Beurteilung verändert wurde, wird
die Transparentverarbeitung auf die Textur angewandt, die gewählt ist,
wenn die Anwesenheit eines Kontakts unterschieden wurde und die
verarbeitete Textur wird in der Transparenttexturspeicherung 83 gespeichert
(Schritt ST9). Die Texturanhaftungseinheit 121 liest die
Textur, an welcher die Transparentverarbeitung von der Transparenttexturspeicherung 83 angewandt
wurde und heftet sie an das Polygon an, das erzeugt wird, wenn die
Anwesenheit eines Kontakts unterschieden wurde (Schritt ST11). Die
Routine endet, wenn das Ergebnis der Kontaktabschätzung nicht
verändert
wurde (wenn die Abwesenheit eines Kontakts unverändert geblieben ist).
-
Durch
die obigen Operationen bzw. Vorgänge
werden die Texturen, an welchen die Transparentverarbeitung angewandt
wurde, an die Polygone, die nach oder vor der Veränderung
der Textur generiert bzw. erzeugt wurden, und das Polygon nach oder
vor der Veränderung
in dem Ergebnis der Kontaktabschätzung
angehaftet. Ein Verfahren und eine Prozedur für ein Berechnen der Positionen
an den gegenüberliegenden
Breitseiten eines eine Spur bzw. spurbildenden Orts werden im Detail
später
unter Bezugnahme auf 4 und 5 beschrieben, und detaillierte Prozeduren
der Tex turtransparentverarbeitung und der Verarbeitung zum Anhaften
der Textur an das Polygon werden später unter Bezugnahme auf 7 beschrieben.
-
4A ist ein Diagramm, das
ein Verfahren zum Berechnen der Positionen an den gegenüberliegenden
Breitseiten des spurbildenden Orts mittels der Positionsberechnungseinheit 111 zeigt.
Koordinatenachsen (X-Achse, Y-Achse) werden so festgelegt, daß eine XY-Koordinatenebene
eine Oberfläche des
Snowboards in Kontakt mit dem Abhang (Kontaktoberfläche) beinhaltet,
das Zentrum des Snowboards an dem Ursprung des Koordinatensystems angeordnet
ist und das Snowboard in (-) X-Achsrichtung schaut bzw. gerichtet
ist. Da die Oberfläche
des Snowboards in Kontakt mit dem Abhang (Kontaktoberfläche) eine
komplizierte Konfiguration aufweist, wird es hier an eine Ellipse
angenähert.
a, b bezeichnen eine Hauptachse und eine Nebenachse der Ellipse.
-
Es
wird angenommen, daß Positionen
an den gegenüberliegenden
Breitseiten des spurbildenden Orts Punkte A01, A02 in dem Fall sind,
daß eine gleitende
bzw. Gleitrichtung des Snowboards eine Richtung eines Vektors V0
((-) X-Achsenrichtung) ist. Hier ist eine X-Koordinaten der Punkte
A01, A02 c. Weiter wird angenommen, daß Positionen an den gegenüberliegenden
Breitseiten der spurbildenden Orte Punkte A21, A22 in dem Fall sind,
daß eine
Gleitrichtung des Snowboards eine Richtung eines Vektors V2 ist
((+) Y-Achsrichtung). Die Positionen an den gegenüberliegenden
Breitseiten des spurbildenden Orts bewegen sich von A01 zu A21 und
von A02 zu A22 entlang eines Umfangs der Ellipse, wie dies in 4A gezeigt ist, wenn die
Gleitrichtung des Snowboards von der Richtung V0 auf jene von V2
verändert
wird. Beispielsweise sind die Positionen an den gegenüberliegenden Breitseiten
des spurbildenden Orts Punkte A11, A12, wenn die Gleitrichtung des Snowboards
eine Richtung eines Vektors V1 ist. Hier wird ein Winkel, der zwischen
dem Vektor V1 und der (-) X-Achsrichtung eingeschlossen wird, mit θ mit einer
Uhrzeigersinnrichtung als einer positiven Richtung angenommen.
-
5 ist ein Flußdiagramm,
das eine Prozedur zum Berechnen der Positionen an den gegenüberliegenden
Breitseiten des spurbildenden Orts mittels der Positionsberechnungseinheit 111 zeigt.
Zuerst wird der Winkel θ zwischen
der Gleitrichtung des Snowboards (Richtung des Vektors V1 in 4A) und der Blickrichtung
des Snowboards ((-) X-Achsrichtung von 4A) mit der Uhrzeigersinnrichtung als
die positive Richtung berechnet (Schritt ST13). Hier liegt der Winkel θ innerhalb
eines Bereichs von –90° bis 90°. Mit anderen
Worten ist eine Winkeldifferenz zwischen der Gleitrichtung und der
Blickrichtung des Snowboards maximal 90°. Nachfolgend werden die X-Koordinaten
der Punkte A11, A12 als die Positionen an den gegenüberliegenden
Breitseiten des spurbildenden Orts in Übereinstimmung mit Gleichung
(1) und (2) berechnet, die in Schritt ST15 gezeigt sind. Es wird
dann unterschieden, ob θ > 0 ist (Schritt ST17).
-
Wenn θ > 0, werden die Y-Koordinaten
der Punkte A11, A12 als die Positionen an den gegenüberliegenden
Breitseiten des spurbildenden Orts in Übereinstimmung mit Gleichung
(3) und (4) berechnet, die in Schritt ST19 gezeigt sind. Andererseits werden,
wenn θ ≤ 0 ist, wie
dies in 4B gezeigt ist, die
Y-Koordinaten der Punkte A11, A12 als die Positionen an den gegenüberliegenden
Breitseiten des spurbildenden Orts in Übereinstimmung mit Gleichung
(5) und (6) berechnet, die in Schritt ST21 gezeigt sind. Wie dies
aus Gleichung (5) und (6) gemeinsam mit 4B gesehen werden kann, werden die Punkte
A11 und A12 in 4A dahingehend
geschalten, daß sich
der Punkt A12 entlang einer oberen Hälfte der Ellipse befindet und
sich der Punkt A11 entlang einer unteren Hälfte der Ellipse befindet.
Auf diese Weise werden die Koordinaten der Punkte A11, A12 als die
Positionen an den gegenüberliegenden Breitseiten
des spurbildenden Orts berechnet.
-
6A bis 6C sind Diagramme, die ein Beispiel zeigen,
wie Polygone einer Spur erzeugt bzw. ausgebildet werden. Polygone
werden in einer Reihenfolge von 6A, 6B und 6C erzeugt. Hier sind Vektoren Va, Vb,
Vc eine Gleitrichtung des Snowboards und die entsprechenden Scheitel
der Polygone werden unter der Annahme bestimmt, daß ein linker
der zwei Punkte des spurbildenden Orts, welcher gleichzeitig in
bezug eine die Gleitrichtung generiert bzw. erzeugt wird, zuerst
generiert wird. In 6A werden
zwei Polygone P1, P2 generiert. Wenn ein Zustand von 6B erreicht ist, werden Scheitel 5, 6 als
Positionen an den gegenüberliegenden
Breitseiten des spurbildenden Orts bestimmt, und ein Polygon P3
wird durch Scheitel 3, 4, 5 ausgebildet,
während
ein Polygon P4 durch Scheitel 4, 5, 6 ausgebildet
wird. Wenn ein Zustand von 6C erreicht
ist bzw. wird, werden Scheitel 7, 8 bestimmt als Positionen
an den gegenüberliegenden
Breitseiten des spurbildenden Orts, und ein Polygon P5 wird durch
Scheitel 5, 6, 7 gebildet, während ein
Polygon P6 durch Scheitel 6, 7, 8 gebildet
wird. Auf diese Weise werden, wenn sich das Snowboard bewegt, zwei Polygone
pro Rahmen erzeugt bzw. gebildet.
-
7 ist ein Flußdiagramm,
das die Prozeduren des Texturtransparentverarbeitens und des Verarbeitens
zum Anhaften der Textur an das Polygon zeigt, wenn die Textur, die
durch die Texturwähleinheit 113 gewählt ist,
verändert
wurde oder das Ergebnis der Kontaktbeurteilung, die durch die Kontaktabschätzungsvorrichtung 119 getätigt wurde,
verändert
wurde, wenn bzw. da sich das Snowboard bewegt. Zuerst wird unterschieden,
ob das Ergebnis der Kontaktabschätzung
bzw. -beurteilung durch die Kontaktabschätzungseinheit 114 getätigt wurden, verändert wurde
(Schritt ST22). Schritt ST23 folgt, wenn das Ergebnis der Kontaktabschätzung nicht verändert wurde.
-
Dann
wird eine Textur TB vor der Änderung der
Textur (oder bevor die Anwesenheit eines Kontakts in die Abwesenheit
eines Kontakt verändert wird)
aus dem Texturspeicher 82 gelesen (Schritt ST23). Die Transparentverarbeitung
wird an der Textur TB in einer spezifischen Anzahl von (hier N) Schritten
vor der Änderung
der Textur angewandt (oder bevor die Anwesenheit eines Kontakts
in die Abwesenheit eines Kontakts verändert wurde), um Texturen TB1,
TB2, ... TBN zu erhalten, die die Transparentverarbeitung daran
angewandt aufweisen, wobei die Texturen dann in dem Transparenttexturspeicher 83 gespeichert
werden (Schritt ST25).
-
Hier
wird angenommen, daß,
je höher
der Zusatz der Texturen TB1, TB2, ... TBN nach den Transparentverarbeitungen
ist, umso intensiver die Transparentverarbeitung angewandt wurde.
Nachfolgend haftet die Texturanhaftungseinheit 121 der
Texturen TB1 bis TBN an N Polygone PB1 bis PBN, die vor einer Grenze
erzeugt werden, wo die Textur verändert wurde (oder einer Grenze,
wo sich die Beurteilung der Anwesenheit oder Abwesenheit des Kontakts
verändert)
(Schritt ST27). Hier sind die Polygone PB1, PB2, ... PBN näher zu der
Grenze, wo die Textur verändert
wird (oder der Grenze, wo sich die Abschätzung betreffend die Anwesenheit
oder Abwesenheit eines Kontakts verändert) (d. h. je höher der Zusatz
derselben ist, umso später
werden sie generiert). Durch die obigen Vorgänge werden, wenn die Grenze,
wo die Textur verändert
ist bzw. wird (die Grenze, wo sich die Abschätzung betreffend die Anwesenheit
oder Abwesenheit eines Kontakts verändert) erreicht ist, die Texturen,
an welchen die intensivere Transparentverarbeitung durchgeführt wurde, angehaftet.
-
Nachfolgend
wird unterschieden, ob die Abschätzung
betreffend die Anwesenheit oder Abwesenheit eines Kontakts, die
durch die Kontaktabschätzungseinheit 114 durchgeführt wurde,
verändert
wurde (Schritt ST28). Außer
die Abschätzung bzw.
Beurteilung betreffend die Anwesenheit oder Abwesenheit eines Kontakts,
die durch die Kontaktabschätzungseinheit 114 durchgeführt wurde,
hat sich verändert,
folgt Schritt ST29.
-
Dann
wird eine Textur TA nach der Änderung der
Textur (oder nachdem die Abwesenheit eines Kontakts in die Anwesenheit
eines Kontakts verändert
wurde) aus dem Texturspeicher 82 gelesen (Schritt ST29).
Die Transparentverarbeitung wird an der Textur TA in einer spezifischen
Anzahl von (hier M) Malen nach der Änderung der Textur (oder bevor die
Abwesenheit eines Kontakts in die Anwesenheit eines Kontakts verändert wird)
angewandt, um Texturen TA1, TA2, ... TAM zu erhalten, die die Transparentverarbeitung
daran angewandt aufweisen, wobei die Texturen dann in dem Transparenttexturspeicher 83 gespeichert
werden (Schritt ST30).
-
Hier
wird angenommen, daß,
je niedriger der Zusatz bzw. das Suffix der Texturen TA1, TA2, ...
TAM ist, die die Transpa rentverarbeitung darauf angewandt aufweisen,
umso intensiver die Transparentverarbeitung angewandt wurde. Nachfolgend
haftet die Texturanhaftungseinheit 121 die Texturen TA1
bis TAM an M Polygone PA1 bis PAM an, die nach der Grenze generiert
wurden, wo die Texturen verändert werden
(oder der Grenze, wo sich die Abschätzung betreffend Anwesenheit
oder Abwesenheit eines Kontakts verändert) (Schritt ST31). Hier
sind die Polygone PA1, PA2, ... PAM näher in dieser Reihenfolge zu
der Grenze, wo sich die Texturen verändert werden (oder der Grenze,
wo die Abschätzung
betreffend die Anwesenheit oder Abwesenheit eines Kontakts verändert) (d.
h. je kleiner bzw. niedriger das Suffix davon ist, desto früher werden
sie ausgebildet).
-
Andererseits
wird, wenn die Abschätzung betreffend
die Anwesenheit oder Abwesenheit eines Kontakts in Schritt ST22
verändert
wurde, unterschieden, ob die Anwesenheit eines Kontakts zu der Abwesenheit
eines Kontakts verändert
wurde (Schritt ST33). Wenn die Anwesenheit eines Kontakts zu der Abwesenheit
eines Kontakts verändert
wurde, folgt Schritt ST23 und diese Routine wird nach den Vorgängen der
Schritte ST25 und ST27 vervollständigt. Wenn
die Abwesenheit eines Kontakts zu der Anwesenheit eines Kontakts
verändert
wurde, folgt Schritt ST29 und diese Routine wird nach den Vorgängen der
Schritte ST30 und ST31 vervollständigt.
-
Durch
die obigen Vorgänge
werden, da die Grenze, wo die Texturen verändert werden (oder die Grenze,
wo sich die Abschätzung
betreffend die Anwesenheit oder Abwesenheit eines Kontakts verändert),
erreicht wird, die Texturen, an welchen die intensivere Transparentverarbeitung
durchgeführt
wurde, angehaftet.
-
8 ist ein Diagramm eines
Schirms, das ein Beispiel einer Spur zeigt, die erzeugt wird, wenn ein
Snowboard in einem Bereich gleitet, der unterschiedliche Oberflächenarten
einer Neigung bzw. eines Hangs aufweist. Der Hang umfaßt bzw.
beinhaltet einen Hang G1, dessen Oberfläche weich und glatt ist, einen
Hang G2, dessen Oberfläche
weich und uneben ist, und einen Hang G3, dessen Oberfläche hart
ist. Durch B1, B2 ist eine Grenzlinie zwischen den Hängen G1
und G2 und eine Grenzlinie zwischen den Hängen G2 und G3 definiert. Ein Snowboard
S gleitet von dem Hang G1 zu dem Hang G2 und weiter von dem Hang
G2 zu dem Hang G3 und eine Spur S1 wird auf dem Hang G1, eine Spur auf
dem Hang G2 und eine Spur S1 auf dem Hang G3 ausgebildet.
-
Die
Spur S1 wird durch ein Anhaften von Texturen an ein unterschiedliches
Bild ausgebildet, da die Oberfläche
des Hangs G1 weich und glatt ist. Die Spur S2 wird durch ein Anhaften
von Texturen an ein Bild erreicht, das ein unregelmäßiges Muster
aufweist, da die Oberfläche
des Hangs G2 weich und uneben ist. Weiters wird die Spur S3 ausgebildet,
indem Texturen eines hell gefärbten
Bilds angehaftet werden, da die Oberfläche des Hangs G3 hart ist. Eine Änderung
in der Spur wird natürlich
ausgedrückt,
da, je näher
sie zu der Grenzlinie B1 (oder Grenzlinie B2) liegt, die umso intensivere
Transparentverarbeitung an der Textur ausgeübt bzw. angewandt wird.
-
9 ist ein Diagramm eines
Schirms, das ein Beispiel einer Spur zeigt, die erzeugt wird, wenn das
Snowboard von der Oberfläche
eines Hangs springt. Polygone QK (K = 1 bis 18) für die Spur
werden aufeinanderfolgend erzeugt, wie dies in 18 gezeigt
ist, wenn das Snowboard S in der Richtung eines Vektors V gleitet.
Wenn das Polygon Q18 ge neriert ist, d. h. wenn die Positionen an
den gegenüberliegenden
Breitseiten, wo die Spur zu erzeugen ist, C1 und C2 werden, springt
das Snowboard S und ist nicht länger
in Kontakt mit dem Hang G. Keine Spur wird nach diesem Zeitpunkt
erzeugt.
-
Hier
wird die Transparentverarbeitung an den Texturen angewandt, die
an 11 Polygone Q8 bis Q18 anzuhaften sind, die vor der Grenzlinie
C1–C2 erzeugt
werden. Je näher
zu der Grenzlinie C1–C2, wird
die umso intensivere Transparentverarbeitung an der Textur angewandt.
Als ein Ergebnis wird die Spur zunehmend seichter, wenn das Snowboard
S sich einem Punkt annähert,
wo das Snowboard S springt, wodurch sie in einer natürlichen
Weise ausgebildet wird.
-
Die
vorliegende Erfindung kann auch wie folgt ausgebildet sein.
- (A) Obwohl das Snowboard auf dem Hang in der vorhergehenden
Ausbildung gleitet, ist die vorliegende Erfindung auch auf einen
Fall anwendbar, wo ein Auto auf einem schmutzigen Kurs fährt, oder
einem Fall, wo ein Surfboard auf dem Wasser gleitet. In einem derartigen
Fall können
Spiele, die eine höhere
Vielseitigkeit aufweisen, zur Verfügung gestellt werden.
- (B) Obwohl die Spur an zwei Positionen in der vorhergehenden
Ausbildung erzeugt wird, kann sie an einer, drei oder mehr Position
ausgebildet werden. In dem Fall von einer Position können die
Polygone für
die Spur leicht erzeugt werden. In dem Fall von drei oder mehr Polygonen
kann eine komplizierte Spur erzeugt werden.
- (C) Obwohl ein maximale Anzahl von vorab festgelegten Polygonen
in der vorhergehenden Ausbildung gespeichert wird, kann eine Zeit,
zu welcher jedes Polygon generiert bzw. erzeugt wird, als ein Erzeugungs-
bzw. Ausbildungszeit gespeichert werden, und die Polygone, die für eine vorbestimmte
Zeit oder länger
bestanden haben, können
von den Speichermitteln durch ein Vergleichen des gegenwärtigen Zeitpunkts
mit der Ausbildungszeit zu spezifischen Zeitintervallen gestrichen
bzw. gelöscht
werden. In dieser Ausbildung kann ein Zustand, wo die Spur stufenweise bzw.
zunehmend verschwindet, während
die Zeit fortschreitet, ausgedrückt
werden. Daher kann eine Spur, welche realistisch ist und eine bessere Anwesenheit
zur Verfügung
stellt, generiert werden, beispielsweise wenn sich ein 3D Modell
auf einer Wasseroberfläche
bewegt.
- (D) Obwohl die Transparentverarbeitung auf die Textur vor und
nach der Änderung
angewandt wird, wenn die zu wählende
Textur verändert
wird, da bzw. wenn sich das Snowboard bewegt, kann sie auf die Textur
entweder vor oder nach der Veränderung
angewandt werden. In dieser Ausbildung können eine Be- bzw. Verarbeitungszeit,
die für
die Texturtransparentverarbeitung erforderlich ist, und die Texturanhaftverarbeitung
verkürzt werden.
- (E) Obwohl die Texturspeicherung zum Speichern der Texturen
in dem RAM 8 in der vorhergehenden Ausbildung zur Verfügung gestellt
ist, kann die Textur von dem Speichermedium 5 zu dem RAM 8 jedesmal
dann transferiert werden, wenn dies in dem Spielverlauf erforderlich
ist. In dieser Ausbildung kann eine notwendige Kapazität des RAM 8 reduziert
werden.
-
Zusammenfassend
bezieht sich die vorliegende Erfindung auf eine dreidimensionale
Bildverarbeitungsvorrichtung zum Ausbilden eines Bilds einer Spur,
die eine Breite aufweist und die auf einer Bodenoberfläche oder
einer Wasseroberfläche
gebildet ist, wenn ein 3D Modell, das eine Breite aufweist, sich in
Kontakt mit der Bodenoberfläche
oder der Wasseroberfläche
bewegt. Die dreidimensionale Bildverarbeitungsvorrichtung bzw. Vorrichtung
zum Be- bzw. Verarbeiten eines dreidimensionalen Bilds umfaßt Positionsberechnungsmittel
zum Berechnen von Positionen an gegenüberliegenden Breitseiten, wo
die Spur zu spezifischen Zeitintervallen zu erzeugen ist, Polygonbildungsmittel
bzw. ein Polygon ausbildende Mittel zum Generieren von Polygonen
der Spur durch aufeinanderfolgendes Bestimmen der berechneten Positionen
an den gegenüberliegenden
Breitseiten als Scheitel, Polygonspeichermittel zum Speichern der
generierten bzw. erzeugten Polygone, Texturspeichermittel zum Speichern
von Texturen, die an die Polygone anzuhaften sind, und Texturanhaftungsmittel
zum Anhaften der Texturen, die in den Texturspeichermitteln gespeichert
sind, an die Polygone. Die Polygone für die Spur können leicht
durch aufeinanderfolgendes Bestimmen als die entsprechenden Scheitel
der Positionen an den gegenüberliegenden
Breitseiten generiert werden, wo die Spur zu erzeugen ist. Ein Bild
der Spur kann realistisch und einfach durch Anhaften der Texturen
an diese Polygone erzeugt werden.
-
In
der vorerwähnten
Vorrichtung können
die Positionsberechnungsmittel konfiguriert sein, um die Positionen
zu berechnen, wo die Spur erzeugt ist, basierend auf der Bewegungsrichtung
des 3D Modells und der Orientierung des 3D Modells in bezug auf
die Bewegungsrichtung desselben. Die Positionen an den gegenüberliegenden
Breitseiten, wo die Spur zu erzeugen ist, können leicht basierend auf der
Blickrichtung und Bewegungsrichtung des 3D Modells berechnet werden.
-
In
der vorerwähnten
Vorrichtung können
die Texturspeichermittel eine Mehrzahl von Texturen für die Spur
speichern und können
Texturauswahlmittel zum Auswählen
einer Textur entsprechend der Bodenoberfläche oder der Wasseroberfläche, mit
welcher sich das 3D Modell in Kontakt befindet, aus der Mehrzahl
von in den Texturspeichermitteln gespeicherten Texturen beinhalten,
und die Texturanhaftungsmittel können
die Textur lesen, die durch die Texturauswahlmittel aus den Texturspeichermitteln gewählt ist,
und haften sie an das Polygon an. In dem Fall, daß das Merkmal
bzw. die Eigenschaft der Bodenoberfläche oder der Wasseroberfläche in Kontakt sich
verändert,
wenn sich das 3D Modell bewegt, kann die Spur einer unterschiedlichen
Textur erzeugt werden. So kann das Bild einer Spur realistisch erzeugt
werden, wodurch eine bessere Darbietung zur Verfügung gestellt wird.
-
Die
vorerwähnte
Vorrichtung kann weiter Texturtransparentverarbeitungsmittel zum
Anwenden einer Transparentverarbeitung an der Textur in einer bestimmten
Anzahl von Stufen bzw. Schritten umfassen, worin die spezifische
Anzahl von Texturen, die die Transparentverarbeitung daran angewandt
aufweisen, durch ein Lesen der Textur nach einer Veränderung
von den Texturspeichermitteln und ein Anwenden der Transparentverarbeitung
an dieser in der spezifischen Anzahl von Stufen mittels der Transparentverarbeitungsmittel
erzeugt werden, wenn die durch die Texturauswahlmittel zu wählende Textur
verändert
wird, wenn sich das 3D Modell bewegt, und die Texturanhaftungsmittel
die Texturen, die die Transparentverarbeitung daran angewandt aufweisen,
an die spezifische Anzahl von Polygonen nach der Änderung
anhaften. In dem Fall, daß sich das
Merkmal, der Oberflächenzustand
und dgl. der Bodenoberfläche
oder der Wasseroberfläche
in Kontakt verändert,
wenn sich das 3D Modell bewegt, werden die Texturen für die Spur,
die auszubilden ist, stufenweise bzw. zunehmend verändert werden.
So kann ein Bild der Spur realistisch erzeugt werden, wodurch eine
bessere Darbietung zur Verfügung
gestellt wird.
-
In
der dreidimensionalen Bildverarbeitungsvorrichtung können die
Polygonspeichermittel konfiguriert sein, um eine Zeit, bei welcher
jedes Polygon erzeugt wird, als eine Generierungs- bzw. Ausbildungszeit
zu speichern, und löschen
das Polygon, welches für
einen vorbestimmten Zeitraum oder länger existiert hat, aus den
Polygonspeichermitteln durch ein Vergleichen einer gegenwärtigen Zeit
und der Ausbildungszeit an spezifischen Zeitintervallen. Da ein
Zustand, wo die Spur graduell bzw. zunehmend im Verlauf der Zeit
beispielsweise in dem Fall verschwindet, daß sich das 3D Modell auf einer
Wasseroberfläche
bewegt, ausgedrückt
werden kann, kann die realistische Spur, welche eine gute Darbietung
zur Verfügung
stellt, erzeugt werden.
-
In
der dreidimensionalen Bildverarbeitungsvorrichtung kann das 3D Modell
ein Modell sein, das von der Bodenoberfläche oder der Wasseroberfläche abhebbar
ist, und Kontaktabschätzungs-
bzw. -beurteilungsmittel zum Abschätzen bzw. Beurteilen, ob das
3D Modell in Kontakt mit der Bodenoberfläche oder der Wasseroberfläche steht,
werden weiter zur Verfügung
gestellt, worin die Positionsberechnungsmittel nicht die Positionen
der Spur berechnen und die Polygonausbildungsmittel nicht die Polygone
erzeugen, wenn die Kontaktabschätzungsmittel
beurteilen, daß das
3D Modell nicht in Kontakt ist. Da keine Spur in dem Fall erzeugt
wird, daß das
3D Modell von der Bodenoberfläche
oder der Wasseroberfläche abgehoben
ist, beispielweise wenn es springt, kann die realistische Spur,
welche eine gute Darbietung zur Verfügung stellt, erzeugt werden.
-
Die
dreidimensionale Bildverarbeitungsvorrichtung kann weiters Texturtransparentverarbeitungsmittel
zum Anwenden einer transparenten Verarbeitung an der Textur in einer
bestimmten Anzahl von Stufen bzw. Schritten umfassen, worin die
bestimmte Anzahl von Texturen, die die Transparentverarbeitung daran
angewandt aufweisen, durch ein Lesen der Textur, die in den Texturspeichermitteln
gespeichert ist, und ein Anwenden der Transparentverarbeitung an
diesen in der vorbestimmten Anzahl von Stufen mittels der Texturtransparentverarbeitungsmittel
generiert wird, wenn eine Beurteilung der Kontaktabschätzungsmittel
betreffend die Anwesenheit oder Abwesenheit eines Kontakts sich
verändert, wenn
sich das 3D Modell bewegt, und die Texturanhaftungsmittel die Texturen,
die die Transparentverarbeitung daran angewandt aufweisen, zu der
bestimmten Anzahl von Polygonen entweder vor oder nach einer Veränderung
anhaften. Da die Texturen, welche an die Polygone für die Spur
vor einer Sprungposition anzuhaften bzw. festzulegen sind, graduell
transparenter, beispielsweise in dem Fall, gemacht werden, daß das 3D
Modell springt, kann die realistische Spur, welche eine gute Darbietung zur
Verfügung
stellt, erzeugt werden.
-
Zusätzlich bezieht
sich eine andere Form der vorliegenden Erfindung auf ein computerlesbares Speichermedium,
das ein dreidimensionales Bildverarbeitungsprogramm zum Erzeugen
eines Bilds einer Spur speichert, die eine Breite aufweist und auf
einer Bodenoberfläche
oder einer Wasseroberfläche
ausgebildet ist, wenn sich ein 3D Modell, das eine Breite aufweist,
in Kontakt mit der Bodenoberfläche
oder der Wasseroberfläche
bewegt. In dem zuvor erwähnten
computerlesbaren Speichermedium umfaßt das Programm die Schritte:
Berechnen von Positionen an gegenüberliegenden Breitseiten bzw.
Seiten in Breitenrichtung, wo die Spur an bestimmten Zeitintervallen
zu erzeugen ist, Erzeugen von Polygonen für die Spur durch aufeinanderfolgendes
Bestimmen der berechneten Positionen an den gegenüberliegenden Breitseiten
als Scheitel, Speichern der erzeugten Polygone, Speichern der Texturen,
die an die Polygone anzuhaften sind, und Anhaften der gespeicherten Texturen
an die Polygone.
-
Weiters
nimmt noch eine andere Form der vorliegenden Erfindung die Form
eines dreidimensionalen Bildverarbeitungsverfahrens zum Erzeugen
eines Bilds einer Spur an, die eine Breite aufweist und auf einer
Bodenoberfläche
oder einer Wasseroberfläche
ausgebildet ist, wenn sich ein 3D Modell, das eine Breite aufweist,
in Kontakt mit der Bodenoberfläche
oder der Wasseroberfläche
bewegt. Das Verfahren umfaßt
die Schritte eines Berechnens von Positionen an gegenüberliegenden
Breitseiten, wo die Spur an bestimmten Zeitintervallen zu erzeugen
ist, eines Erzeugens von Polygonen für die Spur durch ein aufeinanderfolgendes
Bestimmen der berechneten Positionen an den gegenüberliegenden
Breitseiten als Scheitel, eines Speicherns der generierten Polygone,
eines Speicherns der Texturen, die an die Polygone anzuhaften sind,
und eines Anhaftens der gespeicherten Texturen an die Polygone.
-
Darüber hinaus
bezieht sich die vorliegende Erfindung auch auf ein Videospielsystem,
welches irgendeine der zuvor er wähnten
dreidimensionalen Bildverarbeitungsvorrichtung, Bildanzeigemittel
zum Anzeigen bzw. Darstellen von Bildern, Programmspeichermittel
zum Speichern von Spielprogrammdaten und extern betätigbare
Betriebsmittel umfaßt,
worin die Vorrichtung bzw. das Gerät zur dreidimensionalen Bildverarbeitung,
Bilder auf den Bildanzeigemitteln in Übereinstimmung mit den Bildprogrammdaten
anzeigt. Da die Polygone für
die Spur leicht durch ein aufeinanderfolgendes Bestimmen als die entsprechenden
Scheitel der Positionen an den gegenüberliegenden Breitseiten erzeugt
werden können,
wo die Spur zu erzeugen ist, kann ein Videospielsystem, das fähig ist,
realistisch und einfach ein Bild einer Spur zu erzeugen, durch ein
Anhaften der Texturen an diese Polygone realisiert werden.