DE69933406T2 - Bilderzeugungsvorrichtung, Bilderzeugungsverfahren und computerlesbares Aufzeichnungsmedium für Bilderzeugungsprogramm - Google Patents

Bilderzeugungsvorrichtung, Bilderzeugungsverfahren und computerlesbares Aufzeichnungsmedium für Bilderzeugungsprogramm Download PDF

Info

Publication number
DE69933406T2
DE69933406T2 DE69933406T DE69933406T DE69933406T2 DE 69933406 T2 DE69933406 T2 DE 69933406T2 DE 69933406 T DE69933406 T DE 69933406T DE 69933406 T DE69933406 T DE 69933406T DE 69933406 T2 DE69933406 T2 DE 69933406T2
Authority
DE
Germany
Prior art keywords
polygon
character
coordinates
image
model
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
DE69933406T
Other languages
English (en)
Other versions
DE69933406D1 (de
Inventor
Masahiko Kobe-shi Higashiyama
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.)
Konami Digital Entertainment Co Ltd
Original Assignee
Konami 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 Konami Corp filed Critical Konami Corp
Application granted granted Critical
Publication of DE69933406D1 publication Critical patent/DE69933406D1/de
Publication of DE69933406T2 publication Critical patent/DE69933406T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • A63F13/10
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/45Controlling the progress of the video game
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/50Lighting effects
    • G06T15/60Shadow generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/30Polynomial surface description
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • A63F2300/6646Methods for processing data by generating or executing the game program for rendering three dimensional images for the computation and display of the shadow of an object or character

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Computer Graphics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Geometry (AREA)
  • Algebra (AREA)
  • Architecture (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Image Generation (AREA)
  • Processing Or Creating Images (AREA)

Description

  • Die vorliegende Erfindung betrifft Bilderzeugungsvorrichtungen, die auf Videospielmaschinen angewandt werden, die beispielsweise ein Kassettenaufzeichnungsmedium oder dgl. verwenden, in welchem eine optische Platte, eine magnetische Platte oder ein Halbleiterspeicher, enthaltend Programmdaten, verwendet wird, und Bilderzeugungsverfahren dafür und Aufzeichnungsmedien, die Bildaufzeichnungsprogramme enthalten.
  • Viele Spielsysteme wurden vorgeschlagen, wie beispielsweise ein System, bestehend aus einer Spielkonsole für einen Heimgebrauch und einen Fernsehmonitor, eine Spielmaschine zum kommerziellen Gebrauch, und ein System, bestehend aus einem Personal Computer oder Arbeitsplatzcomputer bzw. einer Work Station, einer Anzeige und einer Schall- bzw. Tonausgabevorrichtung.
  • Diese Spielsysteme enthalten jeweils eine von einem Spieler betätigte Regel- bzw. Steuereinrichtung bzw. einen Controller, ein Aufzeichnungsmedium, das Spielprogrammdaten enthält, eine zentrale Verarbeitungseinheit (CPU) zum Durchführen einer Regelung bzw. Steuerung für die Erzeugung von Schall bzw. Ton und Bildern basierend auf den Spielprogrammdaten, einen Prozessor zum Erzeugen von Bildern, einen Prozessor zum Erzeugen von Schall bzw. Ton, einen Monitor zum Anzeigen von Bildern und einen Lautsprecher zum Ausgeben des erzeugten Tons. In vielen Fällen umfassen diese Typen von Aufzeichnungsmedium einen Compakt-Disk-Nur-Lese- Speicher (CD-ROM), einen Halbleiterspeicher und eine Kassette, die einen eingebauten Halbleiterspeicher aufweist.
  • In diesen Spielsystemen bestehen im allgemeinen dreidimensionale Modelle als Gegenstände bzw. Objekte, die auf einem Schirm angezeigt sind bzw. werden, aus Polygonen, wie einer Vielzahl von zweidimensionalen virtuellen, dreieckigen oder quadratischen Figuren und die Polygone, auf welche Texturen, wie beispielsweise zweidimensionale Bilddaten eingefügt bzw. gepastet sind, sind bzw. werden am Monitor angezeigt. Normalerweise werden die Texturen, die auf den Polygonen einzufügen sind, gesondert festgelegt und im voraus in einem Speicher gespeichert.
  • In dem Fall, wo die Spielsysteme einen zweidimensionalen Charakter und Hintergrundmodelle hinter dem Charakter bzw. der Figur verwenden, macht es ein Schattieren sehr schwierig zu bestimmen, ob der Charakter an oder vor den Hintergrundmodellen ist.
  • Damit der Charakter bzw. die Figur klar bzw. deutlich angezeigt werden kann, um vor den Hintergrundmodellen angeordnet zu sein, wird verlangt, daß ein Schatten des Charakters, der auf den Hintergrundmodellen ausgebildet ist, angezeigt wird.
  • W.J. Bouknight: "A Procedure for Generation for Threedimensional Half-toned Computer Graphics Presentation", Mitteilungen des ACM, September 1970, Band 13, Nr. 9, Seiten 527–536 offenbart einen Algorithmus zum Erzeugen von computergenerierten halbgetönten Präsentationen bzw. Darstellungen von dreidimensionalen polygonalen Oberflächenstrukturen.
  • P. Atherton et al.: "Polygon Shadow Generation", Proceedings International Conference on Computer Graphics and Interactive Techniques, August 1978, Band 12, Seiten 275–281 offenbart ein Verfahren zum Erzeugen von Schatten unter Verwendung einer polygonalen Koordinatendatenbasis.
  • Es ist das Ziel der Erfindung, eine Bilderzeugungsvorrichtung zum Anzeigen bzw. Darstellen eines Charakter- bzw. Figurschattens ohne eine Betriebsbelastung bzw. -last zu erhöhen, ein Bilderzeugungsverfahren dafür, und ein computerlesbares Aufzeichnungsmedium zur Verfügung zu stellen, enthaltend ein Bilderzeugungsprogramm.
  • Dieses Ziel wird durch eine Bilderzeugungsvorrichtung zum Anzeigen eines Charakters bzw. einer Figur, die die in Anspruch 1 geoffenbarten Merkmale aufweist, ein Bilderzeugungsverfahren, das die in Anspruch 4 geoffenbarten Merkmale aufweist, und ein computerlesbares Aufzeichnungsmedium erfüllt, das die in Anspruch 5 geoffenbarten Merkmale aufweist. Bevorzugte Ausführungsformen sind in den abhängigen Unteransprüchen definiert.
  • Gemäß der vorliegenden Erfindung wird eine Bilderzeugungsvorrichtung zum Anzeigen eines Schattens eines zweidimensionalen Charakter- bzw. Figurbilds auf Hintergrundmodellen, ein Bilderzeugungsverfahren dafür, und ein computerlesbares Aufzeichnungsmedium bereitgestellt, enthaltend ein Bilderzeugungsprogramm.
  • Gemäß der vorliegenden Erfindung kann ein Schatten eines Spielcharakters bzw. einer Spielfigur an Modellen angezeigt bzw. dargestellt werden, wodurch der Charakter bzw. die Figur klar bzw. deutlich angezeigt werden kann, um vor den Modellen zu sein.
  • Gemäß der vorliegenden Erfindung kann ein Schatten eines Spielcharakters an dreidimensionalen Modellen angezeigt werden, wodurch der Charakterschatten mit gesteigerter Realität bzw. Wirklichkeitstreue angezeigt werden kann.
  • Gemäß der vorliegenden Erfindung kann ein Schatten eines Spielcharakters, der durch eine virtuelle Lichtquelle verursacht ist, an einem Modellbereich angezeigt werden, wodurch der Charakter- bzw. Figurschatten mit Realität bzw. Wirklichkeitstreue angezeigt bzw. dargestellt werden kann, und die Koordinaten eines gemeinsamen Polygons, wodurch der Charakterschatten mit Realität angezeigt werden kann, und die Koordinaten eines gemeinsamen Polygons, welches durch einen Bereich ausgebildet ist, in welchem ein projiziertes Polygon einem Charakter- bzw. Figurpolygon überlagert ist bzw. wird, sind bzw. werden zweidimensional gefunden, wodurch eine Zunahme in der Betriebsbelastung verhindert werden kann.
  • 1 ist ein Blockdiagramm, das ein Spielsystem gemäß einer Ausführungsform der vorliegenden Erfindung zeigt.
  • 2 ist eine Zeichnung, die einen Videospielschirm zeigt.
  • 3 ist eine Zeichnung, die einen Videospielschirm zeigt.
  • 4 ist ein Blockdiagramm, das die funktionellen Blöcke einer zentralen Be- bzw. Verarbeitungsanlage und Teile des in 1 gezeigten Spielsystems zeigt.
  • 5 ist eine Zeichnung, die eine Koordinatentransformation illustriert bzw. veranschaulicht.
  • 6 ist eine Zeichnung, die eine Bestimmung einer Überlagerung von Polygonen illustriert.
  • 7 ist eine Zeichnung, die eine Überlagerung eines Charakter- bzw. Figurpolygons und eines projizierten Polygons illustriert.
  • 8 ist eine Zeichnung, die eine Überlagerung eines Charakterpolygons und eines projizierten Polygons illustriert.
  • 9 ist ein Flußdiagramm, das ein Beispiel eines Prozesses bzw. Verfahrens zum Anzeigen eines Schattens zeigt.
  • 10 ist ein Flußdiagramm, das ein Beispiel eines Prozesses zum Anzeigen bzw. Darstellen eines Schattens zeigt.
  • 11 ist ein Flußdiagramm, das ein Beispiel eines Prozesses zum Anzeigen eines Schattens zeigt.
  • 1 zeigt ein Spielsystem 1 gemäß einer Ausführungsform der vorliegenden Erfindung.
  • Das Spielsystem 1 beinhaltet eine Haupteinheit, einen Fernseh-(TV)-Monitor 2 zum Ausgeben von Spielbildern, eine Verstärkungsschaltung 3 und einen Lautsprecher 4 zum Ausgeben von Spielschall bzw. -ton und ein Aufzeichnungsmedium 5, enthaltend Spieldaten, bestehend aus Bild-, Schall-, Ton-, und Programmdaten. Das Aufzeichnungsmedium 5 ist beispielsweise eine sogenannte "Nur-Lese-Speicher-(ROM)-Kassette", in welchem ein ROM, enthaltend die Spieldaten und die Programmdaten eines Betriebssystem in einem Kunststoffgehäuse aufgenommen ist, eine optische Platte, oder eine flexible Magnetplatte bzw. -diskette.
  • In der Haupteinheit ist ein Bus bzw. eine Hauptleitung 7, bestehend aus einem Adreßbus, einem Datenbus und einem Regel- bzw. Steuerbus (nicht gezeigt) an eine CPU 6 ange schlossen. Ein Direktzugriffs-Speicher (RAM) 8, Interface (I/F) Schaltungen 9 und 10, ein Signalbe- bzw. -verarbeitungsprozessor 11, ein Bildprozessor 12, und I/F Schaltungen bzw. Schaltkreise 13 und 14 sind an den Bus 7 angeschlossen. Eine Regel- bzw. Steuereinrichtung bzw. ein Controller 16 ist mit der I/F Schaltung 10 über eine Betätigungs- bzw. Betriebsinformations-I/F-Schaltung 15 angeschlossen. Ein Digital-zu-Analog-(D/A)-Wandler bzw. -Konverter 17 ist an die I/F Schaltung 13 angeschlossen, und ein D/A-Wandler 18 ist an die I/F Schaltung 14 angeschlossen.
  • Der RAM 8, die I/F Schaltung 9 und das Aufzeichnungsmedium 5 bilden eine Speichereinheit 19 aus. Die CPU 6, der Signalprozessor 11 und der Bildprozessor 12 bilden eine Regel- bzw. Steuereinrichtung 20 zum Regeln bzw. Steuern des Fortschritts bzw. Fortgangs des Spiels aus. Die I/F Schaltung 10, die Betriebsinformations-I/F-Schaltung 15 und die Regel- bzw. Steuereinrichtung 16 bilden eine Betriebseingabeeinheit 21 aus. Der TV Monitor 2, die I/F Schaltung 13 und der D/A-Wandler 17 bilden eine Bildanzeigeeinheit 22 aus. Die Verstärkungsschaltung 3, der Lautsprecher 4, die I/F Schaltung 14, und der D/A-Wandler 18 bilden eine Schall- bzw. Tonausgabeeinheit 23 aus.
  • Der Signalprozessor 11 führt hauptsächlich eine Berechnung in einem dreidimensionalen Raum, eine Berechnung für eine Transformation von einer Position in einem dreidimensionalen Raum in eine Position in einem pseudo-dreidimensionalen Raum, eine Beleuchtungsberechnung, und die Generierung bzw. Erzeugung und ein Be- bzw. Verarbeiten von Schall- bzw. Tondaten durch.
  • Der Bildprozessor 12 führt basierend auf einem Ergebnis einer Berechnung durch den Signalprozessor 11 das Schreiben von Bilddaten durch, die im Anzeigebereich des RAM 8 zu rendern bzw. wiederzugeben sind, beispielsweise das Schreiben von Texturdaten auf einen Bereich des RAM 8, der durch Polygone spezifiziert ist. Das Schreiben der Texturdaten wird unten beschrieben.
  • Die Regel- bzw. Steuereinrichtung 16 weist einen Startknopf 16a, einen A-Knopf 16b, einen B-Knopf 16c, eine Kreuztaste 16d, einen Regel- bzw. Steuerschalthebel 16e, einen linken Trigger- bzw. Auslöseknopf 16f, einen rechten Auslöseknopf 16g, einen C1-Knopf 16h, einen C2-Knopf 16i, einen C3-Knopf 16j, einen C4-Knopf 16k, einen Verbinder 16m und einen Tiefeauslöseknopf 16n auf.
  • Eine Speicherkarte oder dgl. zum temporären bzw. vorübergehenden Speichern des Fortgangs des Spiels kann in dem Verbinder 16m eingesetzt werden.
  • Die Form des Spielsystems 1 unterscheidet sich abhängig von seinem Zweck.
  • Mit anderen Worten sind in dem Fall, wo das Spielsystem 1 für einen Gebrauch zu Hause beabsichtigt ist, der TV Monitor 2, die Verstärkungsschaltung 3 und der Lautsprecher 4 gesondert von der Haupteinheit bereitgestellt. In dem Fall, wo das Spielsystem 1 für einen kommerziellen Gebrauch beabsichtigt ist, sind alle in 1 gezeigten Komponenten in einem Gehäuse integriert.
  • In dem Fall, wo das Spielsystem 1 einen Personal Computer oder eine Work Station als ihren Kern aufweist, entspricht der TV Monitor 2 einer Anzeige für den Computer oder die Work Station, entspricht der Bildprozessor 12 einem Teil der Spielprogrammdaten, die auf dem Aufzeichnungsmedium 5 aufgezeichnet sind, oder der Hardware einer Zusatzplatte, die in einen Erweiterungs- bzw. Zusatzschlitz des Computers oder der Work Station eingesetzt ist, und die I/F Schaltungen 9, 10, 13 und 14, die D/A-Wandler 17 und 18 und die Betriebsinformations-I/F-Schaltung 15 entsprechen der Hardware einer Zusatzplatte, die in einen Erweiterungsschlitz des Computers oder der Work Station eingesetzt ist. Der RAM 8 entspricht dem Hauptspeicher des Computers oder der Work Station, oder jedem Bereich eines Erweiterungsspeichers.
  • In der ersten Ausführungsform wird der Fall, wo das Spielsystem 1 für einen Heimgebrauch beabsichtigt ist, beschrieben.
  • Der Betrieb des Spielsystems 1 wird kurz beschrieben.
  • Wenn das Spielsystem 1 mit Energie bzw. Leistung versorgt ist bzw. wird, indem ein Hauptleistungsschalter (nicht gezeigt) eingeschaltet wird, liest die CPU 6, basierend auf einem Betriebssystem, das auf dem Aufzeichnungsmedium 5 aufgezeichnet ist, Bild-, Ton- und Spielprogrammdaten vom Aufzeichnungsmedium 5. Ein Abschnitt oder die Gesamtheit der Bild-, Ton- und Spielprogrammdaten, die durch die CPU 6 gelesen werden, ist bzw. wird im RAM 8 gespeichert.
  • Anschließend fährt die CPU 6 mit dem Spiel fort, basierend auf den Spielprogrammdaten, die im RAM 8 gespeichert sind, und auf Instruktionen bzw. Anweisungen, die durch die Regel- bzw. Steuereinrichtung 16 durch einen Spielteilnehmer eingegeben sind bzw. werden. Mit anderen Worten, die CPU 6 generiert bzw. erzeugt basierend auf Instruktionen von dem Spielteilnehmer über die Regel- bzw. Steuereinrichtung 16 Befehle als Aufgaben für ein Rendern bzw. Wiedergeben und eine Tonausgabe.
  • Basierend auf den erzeugten Befehlen führt der Signalprozessor 11 eine Berechnung der Position eines Spielcharakters bzw. einer Spielfigur in einem dreidimensionalen Raum (ähnlich in einem zweidimensionalen Raum), eine Illuminations- bzw. Beleuchtungsberechnung, und die Generierung bzw. Erzeugung und ein Be- bzw. Verarbeiten von Schallbzw. Tondaten durch.
  • Als nächstes führt basierend auf einem Ergebnis der Berechnung der Bildprozessor 12 das Schreiben von Bilddaten durch, die im Anzeigebereich des RAM 8 zu rendern sind. Die Bilddaten, die im RAM 8 geschrieben sind, werden an den D/A-Wandler 17 über die I/F Schaltung 13 geliefert. Die gelieferten Bilddaten werden in analoge Videosignale durch den D/A-Wandler 17 umgewandelt. Die Videosignale werden an den TV Monitor 2 geliefert, und werden als ein Bild auf dem Schirm des TV Monitors 2 angezeigt bzw. dargestellt.
  • Die Schall- bzw. Tondatenausgabe von dem Signalprozessor 11 wird an den D/A-Wandler 18 über die I/F Schaltung 14 geliefert. Die gelieferten Tondaten werden in analoge Tonsignale umgewandelt, und werden als Ton von dem Lautsprecher 4 über die Verstärkungsschaltung 3 ausgegeben.
  • Als nächstes wird das Schreiben von Texturdaten durch den Bildprozessor 12 unter Bezugnahme auf 1 beschrieben.
  • Wie oben beschrieben, führt der Signalprozessor 11 eine Berechnung basierend auf Befehlen von der CPU 6 durch, und der Bildprozessor 12 führt basierend auf einem Ergebnis der Berechnung das Schreiben von Bilddaten durch, die im Anzeigebereich des RAM 8 zu rendern sind.
  • Der RAM 8 weist einen Nicht-Anzeigebereich und den Anzeigebereich (Rahmenpuffer) auf. Im Nicht-Anzeigebereich wird Information, die auf dem Aufzeichnungsmedium 5 aufgezeichnet ist, wie beispielsweise Polygondaten, Texturauswahldaten, und Farbdaten (Texturdaten) gespeichert.
  • Die Polygone sind zweidimensionale virtuelle polygonale Figuren, die Gegenstände bzw. Objekte ausbilden bzw. darstellen, die in dem Spielraum bereitgestellt sind, d.h., Modelle und Spielcharaktere bzw. -figuren. In der ersten Ausführungsform werden Dreiecke und Vierecke als die Polygone verwendet. Die Texturen sind zweidimensionale Bilder, die auf den Polygonen eingefügt bzw. gepastet sind, so daß Bilder ausgebildet werden. Die Farbdaten spezifizieren die Farben der Texturen.
  • Die Polygondaten, welche Koordinatendaten an Scheiteln sind, die die Polygone ausbilden, und die Texturauswahldaten, welche Texturen entsprechend den Polygonen auswählen, werden gespeichert, um integriert bzw. aufgenommen zu werden.
  • Befehle zum Rendern bzw. Wiedergeben, die durch die CPU 6 generiert bzw. erzeugt werden, enthalten Befehle, die Polygone verwenden, um dreidimensionale Bilder zu rendern, und Befehle zum Rendern von gewöhnlichen zweidimensionalen Bildern.
  • Jeder Befehl, der Polygone verwendet, um ein dreidimensionales Bild zu rendern, besteht aus Polygon-Scheitel-Adreßdaten in dem Nicht-Anzeigebereich des RAM 8; Texturadreßdaten, die eine Position des RAM 8 repräsentieren bzw. darstellen, bei welcher die Texturdaten, die auf einem Polygon einzufügen sind, gespeichert sind; Farbadreßdaten, die eine Position im Anzeigebereich des RAM 8 repräsentieren, an welcher die Farbdaten, die die Farbe einer Textur repräsentieren, gespeichert sind bzw. werden; und Glanz- bzw. Helligkeitsdaten, die den Glanz bzw. die Helligkeit der Textur repräsentieren.
  • Unter diesen Daten werden die Polygon-Scheitel-Adreßdaten in dem Nicht-Anzeigebereich des RAM 8 durch zweidimensionale Polygon-Scheitel-Koordinatendaten unter Verwendung des Signalprozessors 11 ersetzt, um basierend auf Bewegungsmengen- bzw. -größendaten und Rotationsmengen- bzw. -größendaten an einem Schirm (Blick- bzw. Gesichtspunkt), Koordinatentransformation und die Transformation einer perspektivischen Projektion von Polygon-Scheitel-Koordinatendaten in einem dreidimensionalen Raum von der CPU 6 durchzuführen.
  • Die zweidimensionalen Polygon-Scheitel-Adreßdaten repräsentieren eine Adresse in dem Anzeigebereich des RAM 8. Der Bildprozessor 12 schreibt Texturdaten, die durch zuvor zugewiesene Texturadreßdaten in einem Bereich des Anzeigebereichs des RAM 8 repräsentiert sind, welche durch drei oder vier Polygon-Scheitel-Adreßdaten repräsentiert sind. Dadurch werden Gegenstände, die durch ein Einfügen bzw. Pasten von Texturen an Polygonen ausgedrückt werden, am Schirm des TV Monitors 2 angezeigt.
  • Das Videospiel, das durch das Spielsystem 1 durchgeführt wird, wird kurz unter Bezugnahme auf 2 und 3 beschrieben. 2 und 3 zeigen Videospielschirme.
  • Im Videospiel bewegt sich ein vorderer Charakter bzw. eine vordere 31 umher, wie dies in 2 gezeigt ist. Der vordere Charakter 31 ist ein Graffito, das aus dem Körper bzw. einer Karosserie eines Busses 32 herauskommt, und besteht zweidimensional aus einem Polygon.
  • Hintergrundmodelle, die weiter bzw. entfernter als der vordere Charakter 31 von einem Blick- bzw. Gesichtspunkt bereitgestellt sind, wie beispielsweise der Bus 32 (gezeigt in 2), und hölzerne Wände 33 und 34, und ein Boden 35 (in 3 gezeigt), bestehen dreidimensional aus einer Mehrzahl von Polygonen.
  • In 2 und 3 ist ein Schatten 36 des vorderen Charakters 31, der durch Licht von einer virtuellen Lichtquelle verursacht ist, angezeigt.
  • In 2 wird der Schatten 36 der vorderen 31 angezeigt, wobei sein Abschnitt bzw. Anteil entlang der Oberfläche des Busses 32 verloren ist. In 3 sind ein Schatten 36a an der Wand 33 als ein Hintergrund, ein Schatten 36b an der Wand 34 senkrecht zu der Wand 33, und ein Schatten 36c an einem Boden 35 als Schatten 36 einer vorderen 31 angezeigt.
  • 4 zeigt ein funktionelles Blockdiagramm der CPU 6, und Abschnitte des Spielsystems 1. In 4 sind Komponenten zwischen dem Bus 7 und jedem Block nicht gezeigt.
  • In 4 enthält das Aufzeichnungsmedium 5 ein Programm für ein Spiel, das in einem Spielraum (virtuellen dreidimensionalen Raum) durchgeführt wird. Das Programm enthält die Koordinaten eines Polygons, das zweidimensional die vordere Figur (2) ausbildet, die Koordinaten von Poly- gonen, die dreidimensional den Bus 32 (2) und die Wände 33 und 34, und den Boden 35 (3) ausbilden bzw. aufbauen, und die Koordinaten einer virtuellen Lichtquelle.
  • Das Programm beinhaltet Texturen, die verschiedene Lagen bzw. Stellungen der vorderen 31, wie in 2 und 3 gezeigt, angeben bzw. andeuten, und Texturen, die die jeweiligen Hintergrundmodelle angeben.
  • Das Programm enthält Daten, die Schatten repräsentieren, als Daten, die die Farben der Texturen spezifizieren.
  • Die CPU 6 enthält Projektionsmittel 61 und Farbdaten-Festlegungsmittel 62.
  • Die Projektionsmittel 61 beinhalten Koordinatentransformationsmittel 71, Überlagerungs-Festlegungs- bzw. -Bestimmungsmittel 72, Polygonbetätigungsmittel 73, Texturbetätigungsmittel 74, und Koordinaten-Umkehrtransformationsmittel 75, und führen ein Be- bzw. Verarbeiten für ein Anzeigen von Spielcharakter- bzw. -figurschatten durch.
  • Betreffend ein Anzeigen von Spielcharakterschatten ist es erforderlich, daß der Schatten eines Spielcharakters nur angezeigt wird, wo der Charakter bzw. die Figur auf einem Hintergrundmodell überlagert wird, ohne angezeigt zu werden, wo der Charakter überlagert ist. Demgemäß werden die Überlagerungsabschnitte durch die Projektionsmittel 61 gefunden.
  • Die Koordinatentransformationsmittel 71 projizieren jeden Scheitel von Polygonen, die die Hintergrundmodelle (nachfolgend als "Modellpolygone" erwähnt) ausbilden, auf eine Ebene, die Polygone (nachfolgend als "Charakter- bzw. Figurpolygone" erwähnt) enthalten, die die vordere 31 ausbilden bzw. darstellen.
  • Die Projektion wird durchgeführt, indem die Koordinaten von Punkten gefunden werden, an welchen gerade Linien zwischen den Scheiteln eines Polygonmodells 41 und einer virtuellen Quelle 42 eine Ebene 44 schneiden bzw. kreuzen, die ein Charakter- bzw. Figurpolygon 43 enthält. Ein Polygon 45, das aus den jeweiligen Punkten besteht, wird nachfolgend als ein "projiziertes Polygon" erwähnt bzw. bezeichnet.
  • Die Überlagerungs-Bestimmungsmittel 72 (in 4 gezeigt) bestimmen, ob das Projektionspolygon 45 (in 5 gezeigt) auf das Charakterpolygon 43 (in 5 gezeigt) überlagert ist.
  • Wenn die Überlagerungs-Bestimmungsmittel 72 bestimmt haben, daß das projizierte Polygon 45 auf das Charakterpolygon 43 überlagert ist bzw. wird, berechnen die Polygonbetätigungsmittel 73 eine Scheitelliste eines gemeinsamen Polygons, das durch Überlagerung des Charakterpolygons 43 und des projizierten Polygons 45 ausgebildet ist.
  • Die Scheitelliste weist Koordinatendaten an den Scheiteln des gemeinsamen Polygons, und Daten über die Scheitel auf. Zum Erzeugen des gemeinsamen Polygons ist es erforderlich, daß nicht nur die Koordinatendaten an den Scheiteln, sondern auch die Ordnung der Scheitel bekannt ist. Demgemäß wird das gemeinsame Polygon durch ein Berechnen der Scheitelliste erzeugt. In dieser Ausführungsform ist bzw. wird die Ordnung des gemeinsamen Polygons eingestellt, um im Uhrzeigersinn zu sein.
  • Die Texturbetätigungsmittel 74 berechnen Unterschiede zwischen den Scheiteln des gemeinsamen Polygons und den Scheiteln des Charakterpolygons 43, und berechnen basierend auf den Unterschieden die Texturkoordinaten des gemeinsamen Polygons.
  • Dieses Be- bzw. Verarbeiten wird durchgeführt, damit in der Textur, die den vorderen Charakter 31 angibt, nur ein Bereich, der dem gemeinsamen Polygon entspricht, auf ein inverses bzw. umgekehrt projiziertes Polygon gepastet werden kann (unten beschrieben). Dadurch kann der Schatten 36, dessen Teil entlang der Form des Busses 32 verloren ist bzw. wird, angezeigt werden, wie dies in 2 gezeigt ist.
  • Die Koordinaten-Umkehrtransformationsmittel 75 erhalten ein umgekehrt projiziertes Polygon, indem das erhaltene Polygon auf die Ebene des ursprünglichen Polygons projiziert wird.
  • Diese Projektion wird durchgeführt, ähnlich der Projektion durch die Koordinaten-Transformationsmittel 71, indem die Koordinaten von Punkten gefunden werden, an welchen Linien zwischen den Scheiteln des gemeinsamen Polygons und der virtuellen Lichtquelle 42 eine Ebene schneiden bzw. kreuzen, die das Modellpolygon 41 enthält.
  • Die Farbdaten-Festlegungsmittel 62 legen als Texturfarbdaten, die auf das gemeinsame Polygon zu pasten sind, Farbdaten (die auf dem Aufzeichnungsmedium 5 aufgezeichnet sind) fest, die einen Schatten repräsentieren.
  • Der Bildprozessor 12 fügt eine Textur basierend auf festgelegten bzw. eingestellten Texturkoordinaten auf ein umgekehrt projiziertes Polygon ein, das durch ein Projizieren des gemeinsamen Polygons auf die Ebene des ursprünglichen Modellpolygons erhalten wird. Gleichzeitig schreibt der Bildprozessor 12 Farbdaten, die einen festgelegten Schatten repräsentieren, in den Anzeigebereich des RAM 8.
  • Zum Erhalten von Texturfarbdaten, durch ein Mischen der Farbdaten, die einen festgelegten Schatten repräsentieren, und Farbdaten auf dem Hintergrundmodell bei einem vorbestimmten Verhältnis, und Schreiben der erhaltenen Farbdaten in dem Anzeigebereich des RAM 8 kann ein Schatten mit mehr virtueller Realität angezeigt werden.
  • Unter Bezugnahme auf 6 bis 8 wird ein Prozeß für ein Anzeigen eines Schattens basierend auf den in 9 bis 11 gezeigten Flußdiagrammen beschrieben.
  • 6 zeigt eine Polygonüberlagerungsbestimmung. 7 und 8 zeigen eine Überlagerung des Charakterpolygons 43 und des projizierten Polygons 45. 9 zeigt einen Prozeß zum Darstellen bzw. Anzeigen eines Schattens.
  • In 9 werden in Schritt ST100 die Koordinaten eines Modellpolygons, die auf dem Aufzeichnungsmedium 5 aufgezeichnet sind, gelesen und im RAM 8 gespeichert. In Schritt ST110 bestimmt der Prozeß, ob das Modellpolygon im Schirm des TV Monitors 2 angezeigt wird, wenn eine festgelegte Position als ein Blick- bzw. Gesichtspunkt verwendet wird. Wenn kein Modellpolygon in dem Schirm des Monitors 2 angezeigt wird ("NEIN" in Schritt ST110), kehrt der Prozeß zu Schritt ST100 zurück, und die Koordinaten eines Polygons, die das nächste Modell ausbilden, werden gelesen.
  • Wenn es die Koordinaten des gelesenen Polygons im Schirm des TV Monitors 2 gibt ("JA" in Schritt ST110), werden die Scheitel des Polygons auf eine Ebene projiziert, die ein Charakterpolygon enthält, und die Koordinaten von Schnittpunkten werden berechnet (Schritt ST120).
  • In Schritt ST130 werden maximale und minimale x- und y-Koordinaten des projizierten Polygons berechnet.
  • Beispielsweise im Fall eines Polygons, bestehend aus Scheiteln A0, A1, A2 und A3,
    wird ein Maximum von x-Koordinaten repräsentiert durch xmax,
    wird ein Minimum von x-Koordinaten repräsentiert durch xmin,
    wird ein Maximum von y-Koordinaten repräsentiert durch ymax, und
    wird ein Minimum von y-Koordinaten repräsentiert durch ymin.
  • Zurück auf 9 verweisend, bestimmt in Schritt ST140 der Prozeß bzw. das Verfahren, ob das projizierte auf das Charakterpolygon überlagert ist. Mit anderen Worten, durch ein Verwenden der maximalen und minimalen x- und y-Koordinaten des projizierten Polygons und des Charakterpolygons wird bestimmt, ob beide Polygone aufeinander überlagert sein bzw. werden können.
  • Beispielsweise bestimmt, wenn betreffend das projizierte Polygon,
    ein Maximum von x-Koordinaten repräsentiert wird durch mxmax,
    ein Minimum von x-Koordinaten repräsentiert wird durch mxmin,
    ein Maximum von y-Koordinaten repräsentiert wird durch mymax, und
    ein Minimum von y-Koordinaten repräsentiert wird durch mymin, und
    betreffend das Charakterpolygon,
    ein Maximum von x-Koordinaten repräsentiert wird durch cxmax,
    ein Minimum von x-Koordinaten repräsentiert wird durch cxmin,
    ein Maximum von y-Koordinaten repräsentiert wird durch cymax, und
    ein Minimum von y-Koordinaten repräsentiert wird durch cymin,
    unter den folgenden Ungleichungen:
    cxmax < mxmin;
    cxmin > mxmax;
    cymax < mymin; und
    cymin > mymax;
    eine Ungleichung erfüllt wird, der Prozeß, daß beide Polygone nicht aufeinander überlagert sein bzw. werden können.
  • Wenn beide Polygone nicht überlagert sein können ("NEIN" in Schritt ST140), kehrt der Prozeß zu Schritt ST100 zurück.
  • Wenn beide Polygone überlagert sein können ("JA" in Schritt ST140), werden eine Scheitelliste an bzw. auf dem Charak terpolygon, und eine Scheitelliste an bzw. auf dem projizierten Polygon in Schritt ST150 erzeugt.
  • Eine Scheitelliste an dem Charakterpolygon 43, das in 7 gezeigt ist, wird dargestellt durch
    C0(Cvtx0) – C1(Cvtx1) – C2(Cvtx2) – C3(Cvtx3) – C0(Cvtx0) –.
  • Eine Scheitelliste am Polygon 45, das in 7 gezeigt ist, wird dargestellt durch
    M0(Mvtx0) – M1(Mvtx1) – M2(Mvtx2) – M3(Mvtx3) – M0(Mvtx0) –.
  • In diesen numerischen Ausdrücken repräsentieren Cvtx0, Cvtx1, Cvtx2 und Cvtx3 Koordinatendaten an Scheiteln C0, C1, C2 bzw. C3, und repräsentieren Mvtx0, Mvtx1, Mvtx2, und Mvtx3 Koordinatendaten an Scheiteln M0, M1, M2 bzw. M3.
  • In Schritt ST160 (in 9 gezeigt) wird ein Liniensegment (nachfolgend als ein "Modelliniensegment" bezeichnet bzw. erwähnt), das eine Seite des projizierten Polygons 45 ausbildet, herbeigeholt.
  • In Schritt ST170 (in 10 gezeigt) wird beispielsweise durch ein Verwenden einer bekannten Flag-Status-Bestimmungstechnik bestimmt, ob das Modelliniensegment jedes Liniensegment (nachfolgend als ein "Charakterliniensegment" erwähnt) schneidet bzw. kreuzt, das das Charakterpolygon 43 ausbildet.
  • Wenn beide Liniensegmente nicht schneiden bzw. kreuzen ("NEIN" in Schritt ST170), schreitet der Prozeß zu Schritt ST180 fort. Wenn beide Liniensegmente schneiden bzw. kreuzen ("JA" in Schritt ST170), werden die Koordinatenpunkte, an welchen beide Liniensegmente schneiden bzw. kreuzen, in Schritt ST190 berechnet.
  • In Schritt ST200 bestimmt der Prozeß, ob der Anfangspunkt des Modelliniensegments außerhalb des Charakterpolygons 43 liegt. Wenn es nicht den Anfangspunkt außerhalb des Charakterpolygons 43 gibt ("NEIN" in Schritt ST200), schreitet der Prozeß zu Schritt ST230 fort.
  • Wenn in Schritt ST200 der Anfangspunkt des Modelliniensegments außerhalb des Charakterpolygons 43 ist ("JA" in Schritt ST200), werden in Schritt ST220 die Koordinatendaten (in der Scheitelliste des projizierten Polygons) an dem Anfangspunkt des Modellsegments, die geschnitten bzw. gekreuzt haben, durch Koordinatendaten an Scheiteln eines Schnitts bzw. Schnittpunkts ersetzt, und die ersetzten Koordinatendaten werden mit der Scheitelliste am Charakterpolygon 43 kombiniert. Der Prozeß kehrt zu Schritt ST170 zurück, und er bestimmt, ob das Modelliniensegment mit einem anderen Charaktersegment schneidet bzw. kreuzt.
  • In Schritt ST230 werden die Koordinatendaten (in der Scheitelliste des Charakterpolygons 43) am Anfangspunkt des Charakterliniensegments, die geschnitten bzw. gekreuzt haben, durch Koordinatendaten an Scheiteln eines Schnitts ersetzt, und die ersetzten Koordinatendaten werden mit der Scheitelliste am projizierten Polygon kombiniert. Der Prozeß kehrt zu Schritt ST170 zurück, und er bestimmt, ob das Modelliniensegment mit einem anderen Charaktersegment kreuzt bzw. schneidet.
  • In Schritt ST180 bestimmt der Prozeß, ob kein Modelliniensegment, das herbeizuholen ist, detektiert wird. Wenn ein Modelliniensegment detektiert wird ("NEIN" in Schritt ST180), wird das nächste Modelliniensegment herbeigeholt (Schritt ST240), bevor der Prozeß zu Schritt ST170 zurückkehrt. Wenn kein Modelliniensegment detektiert wird ("JA" in Schritt ST180), schreitet der Prozeß zu Schritt ST250 fort (in 11 gezeigt).
  • Unter Bezugnahme auf 7 werden die Schritte ST160 bis ST240 beschrieben. In 7 werden Koordinatendaten am Scheitel P0 eines Schnitts dargestellt bzw. repräsentiert durch Pvtx0, und Koordinatendaten am Scheitel P1 eines Schnitts werden dargestellt durch Pvtx1.
  • Wenn das Modelliniensegment M0M1 in Schritt ST160 herbeigeholt wird, werden die Koordinatendaten Pvtx0 am Scheitel P0 eines Schnittpunkts in Schritt ST190 berechnet, weil das Liniensegment ein Charakterliniensegment C1C2 schneidet bzw. kreuzt. Da der Endpunkt M1 des Modelliniensegments M0M1 außerhalb ist, schreitet der Prozeß von Schritt ST200 zu Schritt ST230 fort.
  • In Schritt ST230 werden in der folgenden Scheitelliste am Charakterpolygon 43:
    C0(Cvtx0) – C1(Cvtx1) – C2(Cvtx2) – C3(Cvtx3) – C0(Cvtx0) –.
  • Koordinatendaten am Anfangspunkt C1 des Charakterliniensegments C1C2, die gekreuzt bzw. geschnitten haben, durch Koordinatendaten am Scheitel P0 des Schnittpunkts ersetzt. Dadurch wird die Scheitelliste am Charakterpolygon 43 wie folgt ausgedrückt:
    C0(Cvtx0) – C1(Pvtx0) – C2(Cvtx2) – C3(Cvtx3) – C0(Cvtx0) –.
  • Außerdem werden in der folgenden Scheitelliste am projizierten Polygon 45:
    M0(Mvtx0) – M1(Mvtx1) – M2(Mvtx2) – M3(Mvtx3) – M0(Mvtx0) –.
  • Listen nach Koordinatendaten Pvtx0 (in der Scheitelliste am Charakterpolygon 43) am Scheitel P0 des Schnittpunkts mit dem Anfangspunkt M0 des Modelliniensegments M0M1 kombiniert, die gekreuzt bzw. geschnitten haben.
  • Dadurch wird die gewünschte Scheitelliste:
    M0(Mvtx0) – C1(Pvtx0) – C2(Cvtx2) – C3(Cvtx3) – C0(Cvtx0) – C1(Pvtx0) –.
    temporär bzw. zeitlich vorübergehend erhalten.
  • In Schritt ST240 werden Modelliniensegmente M1M2 und M2M3 herbeigeholt. Die gewünschte Scheitelliste ändert sich nicht, da beide Liniensegmente nicht das Charakterliniensegment schneiden bzw. kreuzen ("NEIN" in Schritt ST170).
  • Wenn ein Modelliniensegment M3M0 in Schritt ST240 herbeigeholt wird, werden die Koordinatendaten Pvtx1 am Scheitel P1 des Schnittpunkts in Schritt ST190 berechnet, weil das Liniensegment M3M0 das Charakterliniensegment C2C3 schneidet bzw. kreuzt. Der Anfangspunkt M3 des Liniensegments M3M0 ist außerhalb des gemeinsamen Polygons. Demgemäß schreitet der Prozeß von Schritt ST200 zu Schritt ST220 fort.
  • In Schritt ST220 werden in der Scheitelliste am projizierten Polygon 45 Koordinatendaten am Anfangspunkt M3 des Liniensegments M3M0, die geschnitten bzw. gekreuzt haben, durch Koordinatendaten am Scheitel P1 eines Schnittpunkts ersetzt.
  • In der temporär bzw. vorübergehend erhaltenen gewünschten Scheitelliste wird ein Scheitel, der Koordinatendaten am Scheitel P1 eines Schnittpunkts aufweist, d.h. Scheitel M3 mit dem Anfangspunkt des Liniensegments C2C3 kombiniert.
  • Dadurch wird schließlich die gewünschte Scheitelliste:
    M0(Mvtx0) – C1(Pvtx0) – C2(Cvtx2) – M3(Pvtx1) – M0(Mvtx0) – C1(Pvtx0) –.
    erhalten.
  • Diese Scheitelliste weist Koordinatendaten an den Scheiteln des gemeinsamen Polygons auf (dem Schattierungsabschnitt, der in 7 gezeigt ist), das durch einen Schnitt des Charakterpolygons 43 und des projizierten Polygons 45 ausgebildet ist, und Daten über die Ordnung bzw. Reihenfolge der Scheitel.
  • Die Schritte ST160 bis ST240 für eine andere Überlagerung des Charakterpolygons 43 und des projizierten Polygons 45 sind bzw. werden unter Bezugnahme auf 8 beschrieben. In 8 werden Koordinatendaten am Scheitel Q0 eines Schnitts durch Qvtx0 repräsentiert, und Koordinaten am Scheitel Q1 eines Schnitts werden durch Qvtx1 repräsentiert.
  • Wenn das Modelliniensegment M0M1 in Schritt ST160 herbeigeholt wird, bestimmt der Prozeß negativ ("NEIN" in Schritt ST170), da das Modelliniensegment M0M1 nicht das Charakterpolygon 43 kreuzt bzw. schneidet, und das nächste Modelliniensegment M1M2 wird herbeigeholt. Da das herbeigeholte Liniensegment M1M2 das Charakterliniensegment C0C1 schneidet bzw. kreuzt, werden in Schritt ST190 Koordinatendaten Qvtx0 am Scheitel Q0 eines Schnittpunkts berechnet. Der Anfangspunkt M1 des Modelliniensegments M1M2 ist außerhalb des gemeinsamen Polygons. Demgemäß schreitet der Prozeß von Schritt ST200 zu Schritt ST220 fort.
  • Im Schritt ST220 werden in der folgenden Scheitelliste an dem projizierten Polygon 45:
    M0(Mvtx0) – M1(Mvtx1) – M2(Mvtx2) – M3(Mvtx3) – M0(Mvtx0) –.
    die Koordinatendaten am Ausgangs- bzw. Anfangspunkt M1 des Modelliniensegments M1M2, die gekreuzt bzw. geschnitten haben, durch die Koordinatendaten am Scheitel Q1 des Schnitts ersetzt. Dadurch ist die Scheitelliste an dem projizierten Polygon 45 wie folgt:
    M0(Mvtx0) – M1(Qvtx0) – M2(Mvtx2) – M3(Mvtx3) – M0(Mvtx0) –.
  • In der folgenden Scheitelliste am Charakterpolygon 43:
    C0(Cvtx0) – C1(Cvtx1) – C2(Cvtx2) – C3(Cvtx3) – C0(Cvtx0) –.
    wird der Scheitel basierend auf den Koordinatendaten Qvtx von Scheitel Q0 des Schnitts in der Scheitelliste an dem projizierten Polygon 45 mit dem Anfangspunkt C0 des Charakter- bzw. Figurliniensegments C0C1 kombiniert, das geschnitten bzw. gekreuzt hat.
  • Dadurch wird die temporäre gewünschte Scheitelliste:
    C0 (Cvtx0) – M1 (Qvtx0) – M2 (Mvtx2) – M3 (Mvtx3) – M0 (Mvtx0) – M1(Qvtx0) –.
    erhalten.
  • Wenn das Modelliniensegment M2M3 in Schritt ST240 herbeigeholt ist, werden die Koordinatendaten Qvtx1 am Scheitel Q1 des Schnitts in Schritt ST190 berechnet, weil das herbeigeholte Liniensegment das Charakterliniensegment C3C0 schneidet bzw. kreuzt. Der Endpunkt M3 des Modelliniensegments M2M3 ist außerhalb des gemeinsamen Polygons. Dem gemäß schreitet der Prozeß von Schritt ST210 zu Schritt ST230 fort.
  • In Schritt ST230 sind bzw. werden in der Scheitelliste am Charakterpolygon 43 die Koordinatendaten am Anfangspunkt C3, welcher außerhalb des Charakterliniensegments C3C0 ist, durch die Koordinatendaten am Scheitel Q1 des Schnitts ersetzt.
  • In der temporären gewünschten Scheitelliste ist bzw. wird ein Scheitel, der die Koordinatendaten am Charakterpolygonscheitel Q1 des Schnitts, d.h. Scheitel C3, aufweist, mit dem Anfangspunkt M2 weiter innen als das Modelliniensegment M2M3 kombiniert, das gekreuzt bzw. geschnitten hat.
  • Dadurch wird die endgültige gewünschte Scheitelliste:
    C0(Cvtx0) – M1(Qvtx0) – M2(Mvtx2) – C3(Qvtx1) – C0(Cvtx0) – M1(Qvtx0) –.
    erhalten.
  • Die erhaltene gewünschte Scheitelliste weist Koordinatendaten an bzw. über Scheiteln des gemeinsamen Polygons (dem in 8 gezeigten Schattierungsteil), das durch einen Schnitt des Charakterpolygons 43 und des projizierten Polygons 45 ausgebildet ist, und Daten über die Ordnung der Scheitel auf.
  • Zurück auf 11 verweisend, werden der Schritt ST250 und die anschließenden Schritte beschrieben.
  • In Schritt ST250 wird ein Scheitel (beispielsweise Scheitel M0 in 7) aus der erhaltenen Scheitelliste herbeigeholt. In Schritt ST260 wird der Unterschied zwischen dem herbeigeholten Scheitel und einem Referenz- bzw. Bezugsscheitel (beispielsweise Scheitel C0 in 7) des Charakterpolygons 43 gefunden und die Texturkoordinaten des herbeigeholten Scheitels werden basierend auf dem Unterschied gefunden.
  • Der Scheitel wird von einer im Charakterpolygon enthaltenen Ebene auf die ursprüngliche Polygonebene in Schritt ST120 projiziert, und die Koordinaten eines Schnittpunkts werden in Schritt ST270 gefunden.
  • In Schritt ST280 wird bestimmt, ob ein Scheitel, der herbeizuholen ist, detektiert worden ist. Wenn ein Scheitel, der herbeizuholen ist, detektiert wird ("NEIN" in Schritt ST280), wird der nächste Scheitel (beispielsweise Scheitel P0 in 7) in der Scheitelliste in Schritt ST290 herbeigeholt, und der Prozeß kehrt zu Schritt ST260 zurück.
  • Wenn kein Scheitel, der herbeizuholen ist, detektiert wird ("JA" in Schritt ST280), werden Daten auf der erhaltenen Scheitelliste und die Texturkoordinatendaten von der CPU 6 an den Bildprozessor 12 in Schritt ST300 gesandt.
  • Als nächstes wird in Schritt ST310 bestimmt, ob ein Polygonmodell detektiert worden ist. Wenn ein Polygonmodell detektiert worden ist ("NEIN" in Schritt ST310), kehrt der Prozeß zu Schritt ST100 zurück (in 9 gezeigt). Wenn kein Polygonmodell detektiert worden ist ("JA" in Schritt ST310), endet der Prozeß.
  • Für die Hintergrundmodelle, wie beispielsweise den Bus 32 (in 2 gezeigt), die hölzernen Wände 33 und 34, und den Boden 35 (in 3 gezeigt), wird der oben beschriebene Prozeß durchgeführt.
  • Wie oben beschrieben, kann gemäß dieser Ausführungsform durch ein Anzeigen des Schattens 36 des zweidimensionalen vorderen Charakters 31 auf Hintergrundmodellen der vordere Charakter 31 klar bzw. deutlich angezeigt werden, um näher zu einem Blick- bzw. Gesichtspunkt zu sein als die Hintergrundmodelle, nämlich der Bus 32 (in 2 gezeigt) und die hölzernen Wände 33 und 34 (in 3 gezeigt).
  • Durch ein Anzeigen des Schattens 36 auf dreidimensionale Hintergrundmodelle kann die virtuelle Realität des Schattens 36 gesteigert werden.
  • Durch ein Projizieren eines Modellpolygons auf eine Ebene, die ein Charakterpolygon enthält, so daß ein projiziertes Polygon berechnet wird, und ein Bestimmen in einem zweidimensionalen System, ob das Charakterpolygon auf dem projizierten Polygon überlagert ist, kann ein gemeinsames Polygon leicht ohne eine Zunahme in einer Berechnungsbelastung berechnet werden.
  • Die vorliegende Erfindung ist nicht auf die oben beschriebene Ausführungsform beschränkt. Jedoch können die folgenden Modifikationen (1) bis (3) der vorliegenden Erfindung verwendet werden.
    • (1) Nicht nur Koordinatendaten, die tatsächlich zum Rendern an einem Monitor verwendet werden, sondern auch vereinfachte Koordinatendaten, die notwendigerweise Minimumformdaten enthalten, können als Koordinatendaten über Polygone verwendet werden, die Hintergrundmodelle ausbilden.
    • (2) Die Position einer virtuellen Lichtquelle kann festgelegt sein, um weit bzw. entfernt von einem vorderen Charakter zu sein, beispielsweise an einer ungefähr unendlichen entfernten Position. In diesem Fall kann eine virtuelle Wirkung, in welcher ein Schatten, der durch Sonnenlicht ausgebildet ist, ausgedrückt bzw. dargestellt wird, erhalten werden.
    • (3) Die funktionellen Blöcke der Projektionsmittel 61 können die folgenden Funktionen aufweisen. Die Koordinatentransformationsmittel 71 finden die Scheitel eines dreidimensional transformierten Polygons, das aus Punkten besteht, an welchen gerade Linien zwischen den Scheiteln eines Charakterpolygons und einer virtuellen Lichtquelle ein Modellpolygon schneiden bzw. kreuzen. Die Überlagerungs-Bestimmungsmittel 72 bestimmen, ob das dreidimensional transformierte Polygon auf das Modellpolygon überlagert ist. Die Polygon-Betriebs- bzw. -Betätigungsmittel 73 berechnen ein Überlagerungspolygon, das aus einem Bereich besteht, an welchem das dreidimensional transformierte Polygon auf das Modellpolygon überlagert ist.
  • Die Textur-Betätigungsmittel 74 projizieren das Überlagerungspolygon auf eine Ebene, die das Charakterpolygon enthält, ähnlich einer Projektion durch die Koordinatentransformationsmittel 71 in der oben beschriebenen Ausführungsform. Die Texturbetätigungsmittel 74 berechnen Unterschiede zwischen den Koordinaten des projizierten Polygons und den Koordinaten des Charakterpolygons, und berechnen basierend auf dem Unterschied die Texturkoordinaten des Überlagerungspolygons.
  • Auch kann in dieser Modifikation ein Schatten wie in der oben beschriebenen Ausführungsform angezeigt bzw. darge stellt werden. Diese Modifikation beseitigt die Notwendigkeit für die Koordinaten-Umkehrtransformationsmittel 75 als einen funktionellen Block der Projektionsmittel 61.

Claims (5)

  1. Bilderzeugungsvorrichtung zum Verwenden eines Blick- bzw. Gesichtspunkts bzw. Blickwinkels als einen Bezug, um das Bild eines Spielcharakters bzw. einer Spielfigur (31) und das Bild eines Modells hinter dem Spielcharakter (31) in einem virtuellen dreidimensionalen Raum zu erzeugen und um die Bilder auf Anzeigemitteln (2) anzuzeigen, wobei die Bilderzeugungsvorrichtung umfaßt: Modell-Polygon-Speichermittel (5) zum Speichern der Koordinaten von Modell-Polygonen, die das Modellbild ausbilden bzw. darstellen; Charakter-Polygon-Speichermittel (5) zum Speichern der Koordinaten eines zweidimensionalen Charakter-Polygons, der das Charakterbild ausbildet; Modell-Textur-Speichermittel (5) zum Speichern einer Textur, die das Modellbild anzeigen; Charakter-Textur-Speichermittel (5) zum Speichern einer Textur, die das Charakterbild anzeigt; Lichtquellen-Speichermittel (5) zum Speichern der Koordinaten einer virtuellen Lichtquelle, die in dem dreidimensionalen Raum zur Verfügung gestellt ist; und Projektionsmittel (61) zum Berechnen der Form des Charakterpolygons, welches auf das Modellbild durch die virtuelle Lichtquelle projiziert ist; gekennzeichnet durch Koordinaten-Transformationsmittel (71) zum Berechnen der Koordinaten eines projizierten Polygons, aufweisend Punkte, an welchen gerade Linien zwischen den Scheiteln von jedem Modellpolygon und der virtuellen Lichtquelle eine Ebene schneiden bzw. kreuzen, die das Charakterpolygon enthält; Polygon-Betriebs- bzw. Betätigungsmittel (73) zum Berechnen der Koordinaten eines gemeinsamen Polygons, das durch eine Fläche bzw. einen Bereich ausgebildet ist, auf welcher(m) das projizierte Polygon dem Charakterpolygon überlagert ist; Textur-Betätigungsmittel (74) zum Berechnen der Texturkoordinaten des gemeinsamen Polygons basierend auf Unterschieden zwischen den Koordinaten des Charakterpolygons und den Koordinaten des gemeinsamen Polygons; und Koordinaten-Umkehrtransformationsmittel (75) zum Berechnen der Koordinaten eines invers projizierten Polygons bestehend aus Punkten, an welchen gerade Linien zwischen den Koordinaten des gemeinsamen Polygons und der virtuellen Lichtquelle eine Ebene schneiden bzw. kreuzen, welche das Modell-Polygon enthält; und Farbdaten-Festlegungs- bzw. Setzmittel (62) zum Festlegen bzw. Setzen von Farbdaten auf dem umgekehrt projizierten Polygon, um den Schatten (36) darzustellen.
  2. Bilderzeugungsvorrichtung nach Anspruch 1, wobei das Modellbild, das in den Modell-Polygon-Speichermitteln (5) gespeichert ist, eine Mehrzahl von dreidimensionalen Modellpolygonen als die Modellpolygone umfaßt.
  3. Bilderzeugungsvorrichtung nach einem der Ansprüche 1 oder 2, wobei die Farbdaten-Festlegungsmittel (62) als die Farbdaten, die den Schatten (36) des Charakters (31) darstellen, Daten verwenden, die durch ein Erhöhen der Konzentration von Farbdaten auf dem Texturbild erhalten sind, das in den Modelltextur-Speichermitteln gespeichert ist.
  4. Bilderzeugungsverfahren zum Verwenden eines Blick- bzw. Gesichtspunkts bzw. Blickwinkels als einen Bezug, um das Bild eines Spielcharakters bzw. einer Spielfigur (31) und das Bild eines Modells hinter dem Spielcharakter in einem virtuellen dreidimensionalen Raum zu erzeugen, und um die Bilder auf Anzeigemitteln (2) anzuzeigen, wobei das Bilderzeugungsverfahren die Schritte umfaßt: Speichern der Koordinaten von Modellpolygonen, die das Modellbild ausbilden bzw. darstellen; Speichern der Koordinaten eines zweidimensionalen Charakter-Polygons, das das Charakterbild ausbildet; und Finden bzw. Auffinden bzw. Ermitteln bzw. Erlangen der Form bzw. Gestalt des Charakterbilds als ein zweidimensionales Bild, welches auf das Modellbild als ein dreidimensionales Bild durch eine virtuelle Lichtquelle projiziert wird, die in dem virtuellen dreidimensionalen Raum zur Verfügung gestellt wird; gekennzeichnet durch ein Berechnen der Koordinaten eines projizierten Polygons bestehend aus Punkten, an welchen gerade Linien zwischen den Scheiteln von jedem Modellpolygon und der virtuellen Lichtquelle eine Ebene schneiden bzw. kreuzen, die das Charakterpolygon enthält; ein Berechnen der Koordinaten eines gemeinsamen Polygons, das durch einen Bereich ausgebildet wird, auf welchem das projizierte Polygon dem Charakterpolygon überlagert wird; ein Berechnen der Texturkoordinaten des gemeinsamen Polygons basierend auf Unterschieden zwischen den Koordinaten des Charakterpolygons und den Koordinaten des gemeinsamen Polygons; und ein Berechnen der Koordinaten eines umgekehrt projizierten Polygons aufweisend Punkte, an welchen gerade Linien zwischen den Koordinaten des gemeinsamen Polygons und der virtuellen Lichtquelle eine Ebene schneiden bzw. kreuzen, die das Modellpolygon enthält; und Festlegen bzw. Setzen von Farbdaten auf dem umgekehrt projizierten Polygon, um den Schatten (36) darzustellen.
  5. Computer-lesbares Aufzeichnungsmedium, enthaltend ein Bilderzeugungsprogramm zum Verwenden eines Blick- bzw. Gesichtspunkts bzw. Blickwinkels als einen Bezug, um das Bild eines Spielcharakters bzw. einer Spielfigur (31) und das Bild eines Modells hinter dem Spielcharakter in einem virtuellen dreidimensionalen Raum zu erzeugen, und um die Bilder auf Anzeigemitteln (2) anzuzeigen, wobei das Bilderzeugungsprogramm umfaßt ein Speichern der Koordinaten von Modellpolygonen, die das Modellbild ausbilden bzw. darstellen; ein Speichern der Koordinaten eines zweidimensionalen Charakterpolygons, das das Charakterbild ausbildet; und einen Schritt zum Finden der Form bzw. Gestalt des Charakterbilds als ein zweidimensionales Bild, welches auf das Modellbild als ein dreidimensionales Bild durch eine virtuelle Lichtquelle projiziert wird, die in dem virtuellen dreidimensionalen Raum zur Verfügung gestellt wird; gekennzeichnet durch ein Berechnen der Koordinaten eines projizierten Polygons aufweisend Punkte, an welchen gerade Linien zwischen den Scheiteln von jedem Modellpolygon und der virtuellen Lichtquelle eine Ebene schneiden bzw. kreuzen, die das Charakterpolygon enthält; ein Berechnen der Koordinaten eines gemeinsamen Polygons, das durch einen Bereich ausgebildet wird, auf welchem das projizierte Polygon dem Charakterpolygon überlagert wird; ein Berechnen der Texturkoordinaten des gemeinsamen Polygons basierend auf Unterschieden zwischen den Koordinaten des Charakterpolygons und den Koordinaten des gemeinsamen Polygons; und ein Berechnen der Koordinaten eines umgekehrt projizierten Polygons bestehend aus Punkten, an welchen gerade Linien zwischen den Koordinaten des gemeinsamen Polygons und der virtuellen Lichtquelle eine Ebene schneiden bzw. kreuzen, die das Modellpolygon enthält; und Festlegen bzw. Setzen von Farbdaten auf dem umgekehrt projizierten Polygon, um den Schatten (36) darzustellen.
DE69933406T 1998-03-19 1999-03-18 Bilderzeugungsvorrichtung, Bilderzeugungsverfahren und computerlesbares Aufzeichnungsmedium für Bilderzeugungsprogramm Expired - Lifetime DE69933406T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP10071063A JP2976963B2 (ja) 1998-03-19 1998-03-19 画像作成装置、画像作成方法、画像作成プログラムが記録された可読記録媒体およびビデオゲーム装置
JP7106398 1998-03-19

Publications (2)

Publication Number Publication Date
DE69933406D1 DE69933406D1 (de) 2006-11-16
DE69933406T2 true DE69933406T2 (de) 2007-08-16

Family

ID=13449705

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69933406T Expired - Lifetime DE69933406T2 (de) 1998-03-19 1999-03-18 Bilderzeugungsvorrichtung, Bilderzeugungsverfahren und computerlesbares Aufzeichnungsmedium für Bilderzeugungsprogramm

Country Status (7)

Country Link
EP (1) EP0948978B1 (de)
JP (1) JP2976963B2 (de)
KR (1) KR100647861B1 (de)
CN (1) CN1129872C (de)
DE (1) DE69933406T2 (de)
HK (1) HK1022443A1 (de)
TW (1) TW457110B (de)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3599268B2 (ja) * 1999-03-08 2004-12-08 株式会社ソニー・コンピュータエンタテインメント 画像処理方法、画像処理装置及び記録媒体
JP3369159B2 (ja) 2000-02-17 2003-01-20 株式会社ソニー・コンピュータエンタテインメント 画像描画方法、画像描画装置、記録媒体及びプログラム
JP3641578B2 (ja) * 2000-08-31 2005-04-20 コナミ株式会社 ゲーム用3次元画像処理方法、装置、ゲーム用3次元画像処理プログラムを記録したコンピュータ読み取り可能な記録媒体及びビデオゲーム装置
JP2002222436A (ja) * 2000-11-22 2002-08-09 Sony Computer Entertainment Inc オブジェクト制御方法、コンピュータに実行させるためのオブジェクト制御処理プログラム、コンピュータに実行させるためのオブジェクト制御処理プログラムを記録したコンピュータ読み取り可能な記録媒体、オブジェクト制御処理プログラムを実行するプログラム実行装置
US6924798B2 (en) * 2001-05-22 2005-08-02 Intel Corporation Real-time multi-resolution shadows
JP4065507B2 (ja) * 2002-07-31 2008-03-26 キヤノン株式会社 情報提示装置および情報処理方法
JP2004246877A (ja) * 2003-01-24 2004-09-02 Sega Corp ゲームのキャラクタに画像を投影するプログラム、そのプログラムが組み込まれたゲーム機、及びそのプログラムが格納された記録媒体
EP1962980A1 (de) * 2005-12-16 2008-09-03 Koninklijke Philips Electronics N.V. Schattenerzeugungsvorrichtung und -verfahren
JP4612031B2 (ja) * 2007-09-28 2011-01-12 株式会社コナミデジタルエンタテインメント 画像生成装置、画像生成方法、ならびに、プログラム
JP4852555B2 (ja) * 2008-01-11 2012-01-11 株式会社コナミデジタルエンタテインメント 画像処理装置、画像処理方法、ならびに、プログラム
EP3036602A4 (de) 2013-08-22 2017-04-12 Hewlett-Packard Development Company, L.P. Projektives rechnersystem

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58121091A (ja) * 1982-01-14 1983-07-19 池上通信機株式会社 立体感表示方式
US5415549A (en) * 1991-03-21 1995-05-16 Atari Games Corporation Method for coloring a polygon on a video display
JP3442181B2 (ja) * 1995-02-17 2003-09-02 株式会社ナムコ 3次元ゲーム装置及び画像合成方法
JP3667393B2 (ja) * 1995-08-04 2005-07-06 株式会社ナムコ 3次元ゲーム装置及び画像合成方法
US6157733A (en) * 1997-04-18 2000-12-05 At&T Corp. Integration of monocular cues to improve depth perception

Also Published As

Publication number Publication date
TW457110B (en) 2001-10-01
CN1231460A (zh) 1999-10-13
CN1129872C (zh) 2003-12-03
HK1022443A1 (en) 2000-08-11
JP2976963B2 (ja) 1999-11-10
EP0948978B1 (de) 2006-10-04
JPH11272882A (ja) 1999-10-08
KR19990077421A (ko) 1999-10-25
KR100647861B1 (ko) 2006-11-24
DE69933406D1 (de) 2006-11-16
EP0948978A3 (de) 2001-04-18
EP0948978A2 (de) 1999-10-13

Similar Documents

Publication Publication Date Title
DE60300788T2 (de) Bild mit Feldtiefe aus Z-Pufferbilddaten und Alphamischung
DE69816789T2 (de) Verfahren und system zur gestengesteuerten optionsauswahl
DE69917723T2 (de) Videospielvorrichtung, Verfahren zum Umschalten der Blickpunktlage auf einem Bildschirm eines Videospiels, und Aufzeichnungsmedium für Blickpunktlageumschaltungs-Videospielprogramm
DE69935955T2 (de) Steurungsvorrichtung für Hintergrundschall, Steuerungsverfahren für Hintergrundschall, lesbarer Aufzeichnungsträger mit einem Steuerungsprogramm für Hintergrundschall, und Videospielvorrichtung
DE69833482T2 (de) Verfahren und vorrichtung zur bildverarbeitung
DE602004003979T2 (de) Verfahren zur Steuerung einer virtuellen Kamera in einem dreidimensionalen Videospiel
DE69732211T2 (de) Bildverarbeitungseinheit für spiele
DE19853676B4 (de) Bilderzeugungsvorrichtung
DE69724075T2 (de) Bildverarbeitungsgerät, spielmaschine mit diesem bildverarbeitungsgerät, bildverarbeitungsverfarhen und -medium
DE69333508T2 (de) Vorrichtung und Verfahren zur Verarbeitung von Videosignalen
DE69936332T2 (de) Videospielvorrichtung
DE112007002991B4 (de) Computergraphikschattenvolumen unter Verwendung von hierarchischem Okklusions-Culling
DE69730645T2 (de) Datenverarbeitungsverfahren und -gerät
DE60035382T2 (de) Spielvorrichtung, Spieldarstellungskontrollverfahren und computerlesbares Aufzeichungsmedium
DE60115034T2 (de) Verfeinerung von dreidimensionalen polygonalen gitterdaten
DE60037075T2 (de) Verfahrung zum Generieren von Schatten in Videospielen
DE60131797T2 (de) Spielsystem und entsprechendes computerlesbares Aufzeichungsmedium
DE60115796T2 (de) Verfahren und Gerät zur dreidimensionalen Bildverarbeitung
DE69933406T2 (de) Bilderzeugungsvorrichtung, Bilderzeugungsverfahren und computerlesbares Aufzeichnungsmedium für Bilderzeugungsprogramm
DE69818888T2 (de) Gerät und Verfahren zur Bildverarbeitung
DE60024775T2 (de) Spielautomat
DE19646194A1 (de) Echtzeit-Wiedergabeverfahren zum wahlweisen Ausführen von Erhebungskartierungs- und Phong-Schattierungsprozessen und zugehörige Vorrichtung
DE69937714T2 (de) Bilderzeugungsgerät, Verfahren zum Umschalten zwischen dargestellten Szenen für das Bilderzeugungsgerät, computerlesbares Aufzeichnungsmedium mit einem Programm zum Umschalten zwischen dargestellten Szenen und Videospielvorrichtung
DE69936173T2 (de) Video-Angelspielvorrichtung
DE19906995A1 (de) Erzeugen von Anpaßdaten für einen virtuellen Szenenaufbau

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: KONAMI DIGITAL ENTERTAINMENT CO., LTD, TOKIO/T, JP