-
ALLGEMEINER STAND DER TECHNIK
-
1. Gebiet der Erfindung
-
Die
vorliegende Erfindung betrifft die Bildverarbeitungstechnologie
in Videospielvorrichtungen.
-
2. Beschreibung des Standes
der Technik
-
Dem
Fortschritt in der Computergrafik(CG)-Technologie zufolge, kann
eine virtuelle Welt nun noch realistischer dargestellt werden. Eine
Videospielvorrichtung wendet solch eine CG-Technologie an.
-
Als
ein Beispiel für
ein Videospiel gibt es ein Schießspiel. Diese Art der Spielvorrichtung
ist im Allgemeinen mit einer Schusswaffeneinheit, einer CPU für Grafikverarbeitung,
einem Bildschirm und so weiter ausgestattet. Wenn ein Spieler die
Schusswaffenspitze auf ein Ziel (Feindcharakter), welches auf dem Bildschirm
erscheint, zielt und den Auslöser
an einer Schusswaffeneinheit zieht, ermittelt die Spielvorrichtung
die Position des Lichtsignals, welches von der Schusswaffeneinheit
ausgestrahlt wird, auf dem Bildschirm und führt, beruhend auf solchen Positionsdaten,
eine Bildverarbeitung durch, wie zum Beispiel die Verarbeitung zum
Zerstören
des Feindcharakters.
-
Als
ein Beispiel für
ein typisches Schusswaffen-Schießspiel gibt es bislang „Virtua
Cop (Handelsmarke)",
welches von Sega Enterprises, Ltd. hergestellt wird. In diesem Schusswaffenspiel
konkurrieren Spieler um Punktzahlen, indem eine Schusswaffeneinheit
benutzt wird und Feindcharaktere, die in dem virtuellen dreidimensionalen
Raum (Spielraum) auf dem Bildschirm erscheinen, niedergeschossen
werden. Hier erscheint ein Feindcharakter auf einer vorgegebenen
Stelle auf dem Bildschirm zu einem vorgegebenen Zeitpunkt. Richtet
der Spieler die Schusswaffenspitze der Schusswaffeneinheit auf den
Feindcharakter, nähert
sich der Standpunkt auf dem Bildschirm dem Feind an und solch ein
Feindcharakter wird vergrößert und
auf dem Bildschirm angezeigt. Aktionen des Feindcharakters werden
von einem Bildverarbeitungsprogramm, welches in einer Spielvorrichtung
geladen ist, kontrolliert und wenn erforderlich, greift der Feindcharakter
den Spieler, der den Bildschirm betrachtet, an.
-
Allerdings
haben die Erfinder durch intensive Studie aufgedeckt, dass die folgenden
Probleme gelöst
werden müssen,
um die Realität
des Spiels zu erhöhen
und das Bild realistischer darzustellen.
-
Erstens
benutzt die Verarbeitung von Explosionsbildern in einem herkömmlichen
Schießspiel zum
Beispiel planare Polygone und sphärische Polygone, um die Menge
der Polygondaten zum Darstellen von Explosionsbildern zu verringern.
Eine Textur von Explosionsbildern ist an diesen Polygonen angebracht
und die Animation von Explosionen wird durch Drehen etc. dieser
Textur verwirklicht. Die Verarbeitung von Explosionsbildern, die
planare Polygone benutzen, ist in der Internationalen Veröffentlichung
Nr.
WO95/35555 offenbart.
Gemäß diesem
Verfahren sind die Polygone, wie beispielsweise Explosionsmuster,
immer in Richtung der Sichtlinie angeordnet, und Unannehmlichkeiten
beim Benutzen von planaren Polygonen (Notwendigkeit, die Ebene immer
in Richtung der Sichtlinie anzuordnen) wurden gelöst, indem
es Kamera-Kontrollmatrix-Verarbeitungsmittel, Objektmatrix-Verarbeitungsmittel
und Objektmusteranzeige-Verarbeitungsmittel umfasst.
-
Dennoch
wird die Abgrenzung zwischen dem Explosionsbild und dem Hintergrund
unnatürlich,
wenn Explosionsbilder mit planaren Polygonen dargestellt werden,
was dazu führt,
dass es dem Bild an Realität
mangelt. Mit anderen Worten besteht eine Schwierigkeit darin, dass
die Abgrenzung zwischen dem Explosionsbild und dem Hintergrund eine
gerade Linie ist.
-
Zudem
wird, wenn Explosionsbilder mit sphärischen Polygonen dargestellt
werden, das Explosionsbild monoton, was dazu führt, dass es dem Bild an Realität mangelt.
Folglich wird ein realistischeres Explosionsbild angestrebt.
-
Zweitens
wurden herkömmlicherweise,
nach dem Verwirklichen von Explosionsbildern durch Kombinieren mehrerer
Polygone, Explosionsmuster, welche all solche Kombinationen betreffen,
in einem vorgeschriebenen Speichergebiet verzeichnet. Zur Erläuterung
hiervon ist ein Bezug auf die 6(A) und 7 erstellt. 6(A) zeigt
vier Kombinationen von Explosionsdaten A1, B1, B2, C1 und C2 (Muster
(1) bis (4)), welche das Explosionsobjekt aufbauen. 7 zeigt
die Explosionsbilder, welche durch die Kombination solcher Explosionsdaten
dargestellt werden. Muster (1) entspricht jeweils 7(A),
Muster (2) 7(B), Muster (3) 7(C) und Muster (4) 7(D).
Herkömmlicherweise
wurden Explosionsdaten für
jedes dieser vier Muster im Voraus verzeichnet, und ein Muster wurde
angezeigt, indem es nach dem Verarbeiten von Explosionsbildern wahlweise
aus den verzeichneten Explosionsmustern ausgewählt wurde.
-
Dennoch
führte
das Verzeichnen von Explosionsdaten für alle Explosionsmuster im
Voraus insofern zu einem Problem, dass sich der nötige Speicher entsprechend
der Erhöhung
in den Variationen der Explosionsmuster erhöht.
-
Drittens
gibt es insofern ein Problem, dass die Bewegung der Charaktere unnatürlich ist,
da die Bewegungsinterpolationsverarbeitung zwischen den zwei verschiedenen
Bewegungen bislang ungenügend
war. Die Bewegungsinterpolationsverarbeitung ist zum Beispiel die
Bildverarbeitung, um zwei Bewegungsänderungen (Änderungen in Bewegungsmustern),
wie zum Beispiel von einer „Angriffsbewegung" zu einer „Fallbewegung", weich zu verbinden,
wenn ein Feindcharakter in einem Angriffsmodus abgeschossen wurde.
Die herkömmliche Bewegungsinterpolationsverarbeitung
wird mit Bezug auf 8(A) erläutert. Wenn
sich der Feindcharakter in einer Angriffsbewegung befindet, greift
der Feindcharakter mit einem vorgegebenen Bewegungsmuster (Bewegungsmuster
M) an. Wird der Feindcharakter durch den Angriff, der von dem Spielercharakter
ausgeführt wurde,
beschädigt,
macht der Feindcharakter eine Umwandlung von einer „Angriffsbewegung" zu einer „Fallbewegung". Für diese „Fallbewegung" sind mehrere Muster
vorgegeben, und eines dieser Muster wird gemäß der Situation des Feindcharakters,
welcher beschädigt
wurde, oder der Spielumgebung zu solch einer Zeit, etc. ausgewählt. Des
Weiteren ist die „Fallbewegung" aus mehreren Bewegungsmustern (Treffermuster
H1, Treffermuster H2, ...) aufgebaut. Die Bewegungsinterpolationsverarbeitung
C wird während
der verschiedenen Frames durchgeführt, wenn die Umwandlung von
dem Bewegungsmuster M zu dem Treffermuster H1 ausgeführt wird.
Folglich kann die Unnatürlichkeit
der plötzlichen
Umwandlung von dem Bewegungsmuster M zu dem Treffermuster H1 gelöst werden,
indem sie während
einer solchen Umwandlung in Zeitlupe sein wird.
-
Trotz
alledem sind die Änderungen
in der Bewegung nur zeitweise verlangsamt und die Unnatürlichkeit
bestand noch, wenn es als Ganzes gesehen wurde, da dieses Verfahren
die Bewegungsinterpolationsverarbeitung C nur während der Umwandlungsperiode
von dem Bewegungsmuster M zu dem Treffermuster H1 durchführt.
-
Viertens
fallen in herkömmlichen
Schießspielen
die Feindcharaktere, welche von Kugeln abgeschossen wurden gerade
nach hinten zurück,
ungeachtet dessen wo die Kugel getroffen hat oder der zerstörenden Kraft
der Kugel. Daher wird, wenn man mit einer Maschinenpistole oder
dergleichen schießt, welche
sukzessive Kugeln abfeuert, das Schießen einfach, da es keine Änderung
in der zweidimensionalen Position des Feindcharakters gibt, was
dazu führt,
dass das Vergnügen
gemindert wird. Dieser Punkt wird mit Bezug auf 9 erläutert. Wie
in 9(A) gezeigt, fällt der Feindcharakter von
der Position E1 zu der Position E2 zurück, ungeachtet der Position,
von der der Feindcharakter abschossen wurde. Die Richtung des Zurückfallens
ist parallel zur Sichtlinie des Spielers. Deshalb zeigt der Spielbildschirm
von der Seite des Spielers gesehen, wie in 9(B) gezeigt,
nur die Änderungen
des Feindcharakters, welcher sich von Position E1 zu E2 bewegt. Da
es vom Spieler gesehen keine Änderung
in der zweidimensionalen Position des Feindcharakters gibt, ist
das Schießen
einfach, und das Vergnügen
ist gemindert.
-
Fünftens ist
dem Spieler, wenn der Feindcharakter angegriffen wird und es nach
der Fallbewegung (Shot-Down-Bewegung) zu einem Gegenangriff kommt,
eine Gelegenheit bereitgestellt, zu schießen, wenn der Feindcharakter
die Angriffsbewegung ganz am Anfang beginnt, was zu dem Problem
führt, dass
das Vergnügen
des Spiels gemindert wird. Dieser Punkt wird mit Bezug auf 11(A) erläutert. Man nehme an, dass der
Feindcharakter in der Angriffsbewegung entsprechend der vorgegebenen
Angriffsschritte M1, M2 ... Mn-1,
Mn angreift. Hier zum Beispiel ist M1 ein Angriffsschritt zum Bereithalten der Schusswaffe,
M2 ist ein Angriffsschritt zum Zielen der Schusswaffe,
M3 ist ein Angriffsschritt zum Abfeuern der
Kugel von der Schusswaffe und so weiter. Man nehme weiter an, dass
der Feindcharakter während des
Angriffsschritts M3, nachdem er von dem
Spielercharakter angegriffen wurde, beschädigt wurde. Der Feindcharakter
wird eine Umwandlung zu der „Shot-Down-Bewegung" ausführen und
wird nach Abschluss einer solchen „Shot-Down-Bewegung" zum ersten Schritt
der Angriffsbewegung zurückkehren,
das heißt
zu Angriffsschritt M1. Danach kann der Feindcharakter,
da er der Reihe nach die Angriffsschritte M1,
M2, ... Mn-1, Mn durchführen
wird, nicht ohne Weiteres gegen den Spielercharakter zum Gegenangriff übergehen.
Mit anderen Worten stellt dies dem Spielercharakter eine Gelegenheit
bereit, anzugreifen, während
der Feindcharakter die Angriffsschritte M1,
M2 durchführt, was zu einem Problem führt, dass
das Vergnügen
des Spiels gemindert wird. Obwohl es möglich ist, die „Shot-Down-Bewegung" zu ignorieren, wenn
der Feindcharakter angegriffen wird, wird dies ebenfalls dazu führen, dass
das Vergnügen
des Spiels gemindert wird, da der Spieler nicht in der Lage sein
wird, das Gefühl
der das Ziel treffenden Kugel zu genießen.
-
Sechstens
gibt es ein Problem in Bezug auf die Flugkurve einer Kugel, welche
von der Sichtlinie des Spielercharakters gesehen wird. Wie in 12(A) gezeigt, zeigten herkömmliche
Schießspiele
die Flugkurve einer Kugel von einem sich bewegenden Spielercharakter
gesehen als eine Flugkurve an, welche den sich nach dem Subtrahieren des
Geschwindigkeitsvektors des Spielercharakters von dem Geschwindigkeitsvektor
der Kugel ergebenden Geschwindigkeitsvektor aufweist. Daher wird
die Geschwindigkeit der äußeren Erscheinung
der Kugel erhöht,
wenn die Bewegungsrichtung der Kugel und die Bewegungsrichtung des
Spielercharakters genau entgegengesetzt waren, und der Spieler ist
nicht in der Lage, auf solch eine Geschwindigkeit zu reagieren.
-
Siebtens
gibt es Problem mit der Beschleunigung der Kollisionsbeurteilung.
Hier ist die Kollisionsbeurteilung die Beurteilung darüber, ob
zwei Objekte miteinander kollidiert sind, und ein Beispiel hiervon
ist die Kollisionsbeurteilung von einer Kugel und einem Gebäude. Diese
Kollisionsbeurteilung wird vereinfacht, indem die Kugel als ein
Liniensegment und das Gebäude
als eine Ebene gestaltet und der Schnittpunkt davon erhalten wird.
Da herkömmliche
Kollisionsbeurteilungen die Kollision einer Kugel (Liniensegmentpolygon)
mit jedem Gebäude
(planares Polygon) beurteilten, wurde die Hochgeschwindigkeits-Spielverarbeitung
aufgrund der übermäßigen Zeit,
die für
die Berechnung beansprucht wurde, verhindert. Bewegt sich des Weiteren, wie
in 13 gezeigt, ein Auto, welches von dem Spieler
betätigt wird,
entlang einer Straße,
welche auf einem Spielraum vorgeformt ist, ist der Bereich, in welchem
sich das Auto bewegen kann, auf die Straße beschränkt. Folglich ist der virtuelle
Bereich für
die Kollisionsbeurteilung, Bereich 1, Bereich 2 und so weiter, entlang der
Straße
abgebildet. Und, wie in 14(A) gezeigt, sind
die Gebäude
(Gebäude
1, Gebäude
2 und so weiter), welche sich innerhalb jedes jeweiligen Bereichs
befinden, im Voraus in Übereinstimmung
damit abgespeichert. Die Kollisionsbeurteilung zwischen der Kugel,
welche von dem Spielercharakter, der das Auto fährt, abgefeuert wurde, und
den zuvor erwähnten
Gebäuden
wird, wie in 14(B) gezeigt, durchgeführt, indem
jeder Bereich geprüft
wird, um zu bestimmen, in welchem Bereich sich die Kugel befindet
(Schritt B1). Diese Bereichsprüfung
wird vorgenommen, indem die Koordinaten der Kugel, welche als Liniensegmentpolygon
gestaltet wurde, und die Koordinaten eines jeden Bereichs miteinander
verglichen werden. Nachdem der Bereich, in dem sich die Kugel befindet,
bestätigt
wurde, wird die Kollisionsbeurteilung in Bezug auf jedes der Gebäude, welches sich
in solch einem Bereich befindet, durchgeführt (Schritt B2). Gemäß dieser
Methode kann die Kollisionsbeurteilung zwischen dem Liniensegmentpolygon,
welches die Kugel darstellt, und dem planaren Polygon, welches das
Gebäude
darstellt, beschleunigt werden, da nur ein planares Polygon innerhalb eines
vorgeschriebenen Bereichs beurteilt werden muss. Dennoch gibt es
insofern eine Schwierigkeit, dass die Kollisionsbeurteilung nicht
in einer Region durchgeführt
werden kann, die nicht solch einen Bereich beinhaltet, da sich der
zuvor erwähnte
Bereich nur in einem begrenzten Bereich des Spielraumes befindet.
Außerdem
gibt es ein anderes Problem mit diesem Verfahren, insofern, dass
Spielprogramme kompliziert sind, da Polygone für die Bereiche gemäß der Spielszenen
bereitgestellt werden müssen.
-
Achtens
gibt es bei Schießspielen
ein Problem mit dem Darstellen von Wellenbewegungen in Folge von
Explosionen der Kugel und Ähnlichem.
Als Techniken zum Darstellen von Wellen zum Beispiel, sind die Musteränderung
und die Texturverschiebung bekannt. Die Musteränderung ist eine Technik zum Anzeigen
von Wellen, indem jeder Zustand der Wellenbewegung gestaltet wird
und jedes Modell in die selbe Position geschoben wird. Mit dieser
Technik gibt es insofern ein Problem, dass die Datenmenge erhöht ist,
da im Voraus Modelle für
jeden Zustand der Welle vorbereitet werden müssen. Die Texturverschiebung
ist eine Technik zum Vorbereiten von Texturen, welche Wellen darstellen,
und zum Anzeigen von Wellen auf Polygonen, indem solche Texturen verschoben
werden. Dennoch ist es nicht möglich, eine
dreidimensionale Welle darzustellen, da sich nur planare Bilder
gemäß dieser
Technik bewegen. Dementsprechend wird eine Technik zum Darstellen
von realistischen dreidimensionalen Wellen mit einer geringen Datenmenge
angestrebt.
-
Neuntens
gibt es insofern ein Problem, dass der Verlauf des Spiels monoton
ist, wenn eine Spielstory aus mehreren Etappen besteht und die Reihenfolge
solcher Etappen in einem Spielprogramm vorbestimmt ist. Deshalb
wird in Betracht gezogen, dass das Vergnügen bei dem Spiel erhöht wird,
falls es möglich
ist, den Verlauf des Spiels gemäß der Absicht
des Spielers zu ändern.
-
Zehntens
gibt es bei herkömmlichen
Spielvorrichtungen zum Beispiel einen Typ, wobei nach der Explosion
eines Feindcharakters eine vorgeschriebene Vibration an den Spieler
abgegeben wird. Bei solchen herkömmlichen
Vorrichtungen wurde die Vibrationserzeugungsvorrichtung durch ein
Soundsignal, welches entsprechend der Sounddaten der Hintergrundmusik
und Ähnlichem
erzeugt wird, betrieben. Dies führte
dazu, dass die Vibrationserzeugungsvorrichtung, welche das vorher
erwähnte Soundsignal
sogar während
der Szenen, die keine Beziehung zu der Explosion der Feind charaktere
hatten, aufnahm, was zu unnatürlichen
Vibrationen führte.
-
EP 0 809 214 offenbart eine
Bilderzeugungsvorrichtung, die ein bilderzeugendes Mittel umfasst, welches
einen von mehreren Feinden auswählt,
die sich innerhalb des Spielraumes bewegen, und erzeugt Bilder von
diesem Feind, welche von einem Standpunkt innerhalb eines imaginären dreidimensionalen
Raumes erfasst werden, ein bilderzeugendes Mittel, welches die Verarbeitung
des Angriffs der Feinde gemäß der Betätigung der
Schusswaffeneinheit umsetzt, und ein Verarbeitungsmittel zum Bewegen
des Standpunkts, welches, gemeinsam damit, dass es den Standpunkt
dazu veranlasst, dem Feind zu folgen, die Position des Feindes ermittelt
und die Steuerung dieser Standpunktbewegung umsetzt.
-
KURZDARSTELLUNG DER ERFINDUNG
-
Die
vorliegende Erfindung wurde angesichts des zuvor erwähnten sechsten
Problems der herkömmlichen
Technik entwickelt. Eine Aufgabe davon ist es, eine Bildverarbeitungsvorrichtung
und ein Informationsaufzeichnungsmedium bereitzustellen, welche
für Schusswaffen-Schießspiele
und dergleichen vorzuziehen sind, welche, verglichen mit den bisherigen
Spielen, in Realität
und Natürlichkeit überlegen
sind und in der Lage sind, das Spielgefühl, wie auch das Interesse
an dem Spiel erheblich zu steigern. Eine weitere Aufgabe der vorliegenden
Erfindung ist es, die Belastung der Operationsverarbeitung während der
Bildverarbeitung zu, reduzieren. Eine weitere Aufgabe ist es, eine
Vibrationserzeugungsvorrichtung zum Erzeugen angemessener Vibrationen
gemäß der Spielszenen
bereitzustellen.
-
Gemäß der vorliegenden
Erfindung ist eine Bildverarbeitungsvorrichtung zum Anzeigen eines Bildes
eines ersten Objekts, welches sich innerhalb eines virtuellen Raumes bewegt,
welches vom virtuellen Standpunkt eines zweiten Objekts, das von
einem Spieler betätigt
wird, gesehen wird, auf einem Bildschirm bereitgestellt, wobei die
Geschwindigkeit des ersten und zweiten Objekts innerhalb des virtuellen
Raumes durch jeweilige Geschwindigkeitsvektoren gegeben sind, umfassend:
Speichermittel zum vorherigen Speichern von Bewegungsmustern des ersten
Objekts; Mittel zum Berechnen des Abstandes zwischen dem ersten
Objekt und dem zweiten Objekt und Ausrechnen eines synthetischen
Geschwindigkeitsvektors, indem man zu dem Geschwindigkeitsvektor
des ersten Objekts einen Vektor addiert, welcher durch Multiplizieren
eines Koeffizienten, der dem Abstand zu dem inversen Vektor des
Geschwindigkeitsvektors des zweiten Objekts entspricht, berechnet
wird; und Bilderzeugungsmittel zum Lesen von Bewegungsmustern aus
dem Speichermittel und Erzeugen von Bildern des ersten Objekts,
gesehen von einem virtuellen Standpunkt eines zweiten Objekts gemäß dem synthetischen
Geschwindigkeitsvektor.
-
Vorzugsweise
ist der Koeffizient (k) ein Koeffizient, der eine inverses Verhältnis zu
dem Abstand aufweist.
-
Vorzugsweise
ist das erste Objekt eine „Kugel".
-
Damit
die vorliegende Erfindung besser verstanden wird, werden nun spezifische
Ausführungsformen
und Beispiele mit Bezug auf die begleitenden Zeichnungen beschrieben
werden.
-
KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
1 ist
eine perspektivische Gesamtansicht der Spielvorrichtung;
-
2 ist
ein Diagramm einer Flugmaschine und eines Spielercharakters, der
solch eine Flugmaschine fliegt;
-
3 ist
ein Blockdiagramm der Spielvorrichtung;
-
4 ist
ein Ablaufplan der Verarbeitungsschritte eines Explosionsbildes;
-
5 ist ein Diagramm, welches den Aufbau des
Explosionsobjekts erläutert;
-
6 ist der Datenaufbau des Explosionsobjekts;
-
7 ist ein Diagramm, welches den Aufbau des
Explosionsobjekts erläutert;
-
8 ist ein erläuterndes Diagramm der Bewegungsinterpolationsverarbeitung;
-
9 ist ein erläuterndes Diagramm einer Feindcharakteraktion,
nachdem dieser abschossen wurde, in herkömmlicher Technik;
-
10 ist ein erläuterndes Diagramm einer Feindcharakteraktion,
nachdem dieser abschossen wurde, in herkömmlicher Technik;
-
11 ist ein erläuterndes Diagramm einer Bewegung,
die halb abgebrochen wurde;
-
12 ist ein erläuterndes Diagramm der Flugkurve
einer Kugel, gesehen von der Sichtlinie des Spielers;
-
13 ist
ein erläuterndes
Diagramm einer Kollisionsbeurteilung in herkömmlicher Technik;
-
14 ist ein erläuterndes Diagramm einer Kollisionsbeurteilung
in herkömmlicher
Technik;
-
15 ist ein erläuterndes Diagramm einer Kollisionsbeurteilung
in der vorliegenden Erfindung;
-
16 ist ein erläuterndes Diagramm einer Kollisionsbeurteilung
in der vorliegenden Erfindung;
-
17 ist ein erläuterndes Diagramm einer Kollisionsbeurteilung
in der vorliegenden Erfindung;
-
18 ist
ein erläuterndes
Diagramm einer Kollisionsbeurteilung in der vorliegenden Erfindung;
-
19 ist ein erläuterndes Diagramm des Aufbaus
eines Objekts, welches eine Wellenbewegung darstellt;
-
20 ist
ein erläuterndes
Diagramm des Aufbaus der Etappen in einem Schießspiel;
-
21 ist eine perspektivische Ansicht des Körpers der
Spielvorrichtung der vorliegenden Erfindung;
-
22 ist
eine Seitenansicht des Körpers der
Spielvorrichtung der vorliegenden Erfindung;
-
23 ist eine Vorderansicht und Flächenansicht
der Spielvorrichtung der vorliegenden Erfindung;
-
24 ist
ein Montageplan der Vibrationserzeugungsvorrichtung; und
-
25 ist
ein Schaltkreisplan des Vibrationserzeugungsmechanismus.
-
BESCHREIBUNG DER BEVORZUGTEN
AUSFÜHRUNGSFORMEN
-
Die
Ausführungsformen
der vorliegenden Erfindung werden nun mit Bezug auf die relevanten Zeichnungen
erläutert.
Die Bildverarbeitungsvorrichtung (Spielvorrichtung) der vorliegenden
Ausführungsform
betrifft ein Schießspiel.
In diesem Schießspiel
wird von einem spielerbetätigten
Spielercharakter, welcher frei innerhalb eines virtuellen dreidimensionalen
Raumes fliegt, um Punktzahlen konkurriert, indem gemäß den Betätigungen
des Spielers eine Flugmaschine geflogen wird und Feindcharaktere (Zielobjekte)
mit einer Maschinenpistole, welche an die Flugmaschine montiert
ist, angegriffen.
-
<Aufbau
der Spielvorrichtung>
-
1 zeigt
die äußere Erscheinung
der Spielvorrichtung. In diesem Diagramm ist ein Spielvorrichtungshauptkörper 1 gezeigt.
Dieser kastenförmige
Spielvorrichtungshauptkörper 1 weist
eine Anzeige 1a auf, die auf der Vorderseite davon bereitgestellt
ist. Lautsprecherinstallationslöcher
sind auf beiden Seiten der Anzeige 1a bereitgestellt, und
Lautsprecher 14 (nicht gezeigt) sind daran angebracht.
-
Ein
Bedienfeld 2 ist auf der Vorderseite des unteren Teils
der Anzeige 1a bereitgestellt, und eine Schusswaffeneinheit 11 ist
auf diesem Bedienfeld 2 bereitgestellt. Diese Schusswaffeneinheit 11 hat
einen Auslöser
und wird von dem Spieler betätigt.
-
Eine
Spielverarbeitungsplatine ist in dem Spielvorrichtungshauptkörper 1 bereitgestellt.
Die Anzeige 1a, die Schusswaffeneinheit 11 des
Bedienfeldes 2 und die Lautsprecher sind mit der Spielverarbeitungsplatine
verbunden. Dadurch ist der Spieler in der Lage, ein Schusswaffen-Schießspiel zu
genießen,
indem er die Anzeige 1a betrachtet und die Schusswaffeneinheit 11 des
Bedienfeldes 2 benutzt.
-
2 ist
ein Gesamtdiagramm einer Flugmaschine 22 und eines Spielercharakters 21,
welcher solch eine Flugmaschine fliegt. Die Flugmaschine 22 ist
mit einer Maschinenpistole 23 ausgestattet, welche auf
die Betätigungen
des Spielercharakters 21 sukzessive Kugeln abfeuert und
den Feind charakter angreift. Feindcharaktere fliegen Flugmaschinen, wie
beispielsweise Lufträder
und Raketenrucksäcke, und
fliegen frei in einer Stadt (innerhalb eines virtuellen dreidimensionalen
Raumes). Der Spielercharakter ist ein Mitglied eines Antiterrortrupps
und ist beauftragt, die Feindcharaktere, welche die Stadt zerstören, zu
vernichten. Die Maschinenpistole 23 kann eine automatische
Maschinenpistole mit unbegrenztem Vorrat an Munition sein.
-
3 ist
ein Blockdiagramm der Spielvorrichtung, welche zu der vorliegenden
Ausführungsform
gehört.
Diese Spielvorrichtung umfasst kurz gesagt eine Anzeige 1a,
eine Schusswaffeneinheit 11, ein Spielverarbeitungsplatine 10,
eine Ausgabevorrichtung 12 und Lautsprecher 14.
-
Die
Spielverarbeitungsplatine umfasst einen Zähler 100, eine CPU
(Hauptprozessoreinheit) 101, ein ROM 102, ein
RAM 103, eine Soundkarte 104, eine E/A-Schnittstelle 106,
eine Scrolldaten-Operationsvorrichtung 107, einen Koprozessor
(Neben-Operationsverarbeitungsvorrichtung) 108, ein Landschaftsraumdaten-ROM 109,
einen Geometalizer 110, ein Formdaten-ROM 111,
eine Zeichnungsvorrichtung 112, ein Texurdaten-ROM 113,
ein Texturabbildungs-RAM 114, einen Bildspeicher 115,
eine Bildsynthesevorrichtung 116 und einen D/A-Wandler 117.
-
Die
CPU 101 ist über
eine Busleitung mit dem ROM 102, welches vorgeschriebene
Programme und Bildverarbeitungsprogramme speichert, dem RAM 103,
welches Daten speichert, der Soundkarte 104, der E/A-Schnittstelle 106,
der Scrolldaten-Operationsvorrichtung 107,
dem Koprozessor 108 und dem Geometalizer 110 verbunden.
Das RAM 103 dient als ein Puffer und führt das Schreiben verschiedener
Befehle (Anzeige des Objekts, etc.) an den Geometalizer und das
Schreiben notwendiger Daten nach Durchführung verschiedener Operationen durch.
-
Die
E/A-Schnittstelle 106 ist mit dem Auslöser der Schusswaffeneinheit 11,
dem Positionssensor und dem Pedalsensor 4 verbunden. Operationssignale
von dem Auslöser
der Schusswaffeneinheit 11, des Positionssensors und des
Pedalsensors 4 werden von der CPU 101 als digitale
Daten gelesen. Die CPU führt
die Bildverarbeitung entsprechend dieser Operationssignale durch.
Auf Empfang der Eingabe der Auslösersignale
von der Schusswaffeneinheit 11, stellt die CPU 101 Vibrationen
zur Ausgabevorrichtung 12 über die E/A-Schnittstelle 106 bereit. Diese
Ausgabevorrichtung ist zum Beispiel aus einer Sound-Vibrationsvorrichtung,
wie beispielsweise einem Standflächenschüttler (unten
im Detail erläutert),
zusammengesetzt und stellt bei den Füßen des Spielers Vibration
bereit. Der Spieler ist aufgrund dieser Vibration in der Lage ein
realistisches Schießspiel zu
genießen.
Die Soundkarte 104 ist mit den Lautsprechern 14 über eine
Endstufe 105 verbunden, und die Soundsignale, die an der
Soundkarte 104 erzeugt werden, werden den Lautsprechern
bereitgestellt, nachdem sie endverstärkt wurden.
-
Nachdem
Operationssignale von der Schusswaffeneinheit 11 entsprechend
eines Programms, welches im ROM 102 erstellt wurde, Landschaftsraumdaten
von dem Landschaftsraumdaten-ROM 109 und
Bewegungsdaten von dem Formdaten-ROM 111 (dreidimensionale
Daten, zum Beispiel „Charaktere,
wie beispielsweise Feindcharaktere und der Spielercharakter" und „Hintergründe, wie beispielsweise
Landschaftsräume,
Himmel, Straßen, Wolkenkratzer
und verschiedene Gebäude") gelesen wurden,
führt die
CPU 101 eine Aktionsberechnung (Simulation) und eine Spezialeffekteberechnung durch.
-
Die
Aktionsberechnung ist zum Simulieren der Bewegung von Charakteren
in einem virtuellen Raum. Nachdem die Koordinatenwerte in dem dreidimensionalen
virtuellen Raum bestimmt sind, werden von dem Geometalizer 110 eine
Konvertierungsmatrix zum Konvertieren dieser Koordinatenwerte in
ein Sichtfeld-Koordinatensystem, und Polygondaten zuge ordnet. Das
Landschaftsraumdaten-ROM 109 ist mit dem Koprozessor 108 verbunden,
und vorgegebene Landschaftsraumdaten werden an den Koprozessor 108 (und
die CPU 101) abgegeben. Der Koprozessor 108 bearbeitet
hauptsächlich
die Operation der Fließkommas.
Folglich führt
der Koprozessor verschiedene Beurteilungen durch, und da solche Beurteilungsergebnisse
der CPU 101 bereitgestellt werden, wird die Berechnungsbelastung
der CPU reduziert.
-
Der
Geometalizer 110 ist mit dem Formdaten-ROM 111 und
mit der Zeichnungsvorrichtung 112 verbunden. Wie oben erwähnt, werden
Formdaten (dreidimensionale Daten, wie beispielsweise Charaktere,
Landschaftsräume
und Hintergründe,
welche aus jeder der Scheitelpunkte angefertigt wurden), welche
aus mehreren Polygonen gebildet sind, in dem Formdaten-ROM 111 im
Vorfeld gespeichert, und diese Formdaten werden an den Geometalizer 110 abgegeben.
Durch das Durchführen
perspektivischer Konvertierung in die Formdaten, die von der Konvertierungsmatrix,
welche von der CPU 101 gesendet wurde, zugeordnet wurden,
erhält
der Geometalizer 110 Daten, welche von dem Koordinatensystem
in dem dreidimensionalen Raum in ein Sichtfeld-Koordinatensystem
umgewandelt wurden.
-
Die
Zeichnungsvorrichtung 112 bringt Texturen an die konvertierten
Formdaten des Sichtfeld-Koordinatensystems an und gibt die Ergebnisse
an den Bildspeicher 115 aus. Aufgrund der Anbringung dieser
Texturen ist die Zeichnungsvorrichtung 112 mit dem Texturdaten-ROM 113 und
dem Texturabbildungs-RAM 114, sowie mit dem Bildspeicher 115 verbunden.
Hier sollen die Polygondaten eine relative oder absolute Datengruppe
jedes Scheitelpunkts eines Polygons (hauptsächlich ein Dreieck oder Viereck),
welches aus einer Anhäufung
mehrerer Scheitelpunkte gebildet ist, bedeuten.
-
Sind
die Polygondaten im Landschaftsraumdaten-ROM 109 gespeichert,
sind sie vergleichsweise ungenau eingestellt, ausreichend zum Durchführen der
beschriebenen Beurteilungen. Sind die Polygondaten andererseits
in dem Formdaten-ROM 111 gespeichert, sind sie in Bezug
auf die formaufbauenden Anzeigen, wie beispielsweise Feinde und
Hintergründe,
präziser
eingestellt.
-
Die
Scrolldaten-Operationsvorrichtung 107 dient dem Steuern
der Scrollrasterdaten von Zeichen oder Ähnlichem (gespeichert im ROM 102).
Diese Operationsvorrichtung 107 und der Bildspeicher 115 ergeben über die
Bildsynthetisierungsvorrichtung 116 und den D/A-Wandler 117 die
Anzeige 1a. Dadurch werden Polygonraster (Simulationsergebnisse),
wie beispielsweise Feinde und Landschaftsräume (Hintergründe) zeitweise
in dem Bildspeicher 115 gespeichert, und Scrollraster von
notwendigen Zeicheninformationen werden gemäß der zugeordneten Priorität synthetisiert,
und endgültige
Framebilddaten werden erzeugt. Diese Bilddaten werden in dem D/A-Wandler 117 in
analoge Signale konvertiert und zu der Anzeige 1a gesendet,
und das Spielbild wird in Echtzeit angezeigt.
-
Das
Schießspielprogramm
in der vorliegenden Ausführungsform
kann so konfiguriert werden, dass es das Spiel durch Lesen solcher
Programme von einem vorgeschriebenen Aufzeichnungsmedium durchführt. Hier
ist ein Informationsaufzeichnungsmedium jede Form physikalischer
Mittel, welches in dem Aufzeichnungsbereich solch eines Mediums
Informationen (ein Spielprogramm zum Beispiel) aufgezeichnet hat,
und beinhaltet eine CD-R, ein Spielmodul, eine Floppy-Disc, ein
Magnetband, eine optische Magnetplatte, ein CD-ROM, ein DVD-ROM,
ein DVD-RAM, ein ROM-Modul, ein RAM-Speichermodul, eine w/batteriebetriebene
Notstromversorgung, ein Flash-Speichermodul,
ein nichtflüchtiges RAM-Modul
und so weiter.
-
Ebenso
beinhaltet dies Kommunikationsmedien der Kabelkommunikationsmedien,
wie beispielsweise Telefonschaltkreise, und Radiokommunikationsmedien,
wie beispielsweise Mikrowellenschaltkreise. Das Internet ist ebenfalls
in das oben erwähnte
Kommunikationsmedium mit eingeschlossen.
-
<Bildverarbeitung
von Explosionsbildern>
-
Die
Bildverarbeitungsschritte von Explosionsbildern einer Kugel und Ähnlichem
in Schießspielen
werden nun mit Bezug auf 4 erläutert. Die CPU 101 gibt
Operationssignale von der Art einer Schusswaffeneinheit 11 und
eines Pedalsensors 4 über
die E/A-Schnittstelle 106 ein (Schritt A1) und zeigt auf
einem Bildschirm eine Flugbedingung einer Kugel an (Schritt A2).
Mit anderen Worten wird die Flugkurve der Kugel in Bezug auf die
Position, die Geschwindigkeit, etc. des Spielercharakters berechnet,
und der Flugzustand der Kugel wird gemäß dieser Kurve auf dem Bildschirm
angezeigt. Als Nächstes
wird die Kollisionsbeurteilung hinsichtlich der Kugel und der Feindcharaktere,
Wolkenkratzer, Brücken,
anderen Gebäuden,
Straßen
etc., welche innerhalb des virtuellen Raumes angeordnet sind, erstellt
(Schritt A3). Die Kollisionsbeurteilung ist die Beurteilung von
Kontakt zwischen zwei Objekten. Für die Kollisionsbeurteilung
werden Polygone für
die jeweiligen Objekte eingestellt, und die Kollisionsbeurteilung
wird gemäß der Kreuzung
dieser Polygone vorgenommen. Wenn eine Kugel mit irgendeinem Objekt
kollidiert, wird ein Explosionsbild der Kugel auf dem Bildschirm
angezeigt (Schritt A4).
-
Die
Bildverarbeitung von Explosionsbildern in S404 wird verwirklicht,
indem sphärische
Polygone (oder dreidimensional aufgebaute Objekte zum Darstellen
von Explosionen) und planare Polygone (oder zweidimensional aufgebaute
Objekte zum Darstellen von Explosionen) kombiniert werden. Dies
wird mit Bezug auf 5 erläutert. In 5 stellen (A), (B) und (C) jeweils die
Zeiten T1, T2, und
T3 im Explosionsbild dar. Um dieses Explosionsbild
zu verwirklichen, werden die Kurven P1 und
P2 von Funken, Rauch, Flammen und Ähnlichem
unter Berücksichtigung
des Einschlagbereichs der Kugel, dem Einschlagwinkel der Kugel,
der Geschwindigkeit der Kugel und so weiter, zuerst eingestellt.
Als Nächstes werden
sphärische
Polygone und planare Polygone so angeordnet, dass die Grenzen davon
in Richtung dieser Kurven P1 und P2 überlappen.
Zum Beispiel werden in der Zeit T1 sphärische Polygone
R1, planare Polygone S1, sphärische
Polygone R2 und planare Polygone R2 so angeordnet, dass sie mit
ihren jeweiligen Grenzen überlappen.
In der Zeit T2 wird das sphärische Polygon
R3 so angeordnet, dass es die Peripherie (die Grenze) des planaren
Polygons S2 bedeckt. Gleichermaßen
wird in der Zeit T3 das planare Polygon
S3 so angeordnet, dass es die Grenze des sphärischen Polygons R3 bedeckt.
Deshalb ist es, indem die Grenzen der planaren Polygone mit sphärischen
Polygonen bedeckt werden, möglich, die
Unnatürlichkeit
der linearen Abgrenzung, die durch Explosionsbilder verursacht wird,
welche nur mit planaren Polygonen verwirklicht wurden, zu überwinden.
-
Als
Nächstes
wird unten die Explosionsverarbeitung des Feindcharakters, welcher
von einer Kugel getroffen wurde, erläutert, das heißt, die
Verarbeitung, in welcher ein Segment (Fragment) des Körpers des
Feindcharakters sich verteilt (Verarbeitung zur Verteilung eines
Abschnitts der Polygone, welche den Feindcharakter aufbauen, welcher
das Zielobjekt ist, innerhalb eines virtuellen dreidimensionalen
Raumes). Zuerst nimmt die CPU Bezug auf das Lebensmaß des Feindcharakters,
der von einer Kugel getroffen wurde. Dieses Lebensmaß zeigt
die verbleibende Energie des Feindcharakters an, und wenn das Lebensmaß gleich
null wird, ist der Feind besiegt. Mit anderen Worten wird der Feindcharakter
aus dem virtuellen dreidimensionalen Raum ausgelöscht. Ist die Lebensenergie
nicht gleich null, ist der Feindcharakter noch am Leben. Folglich
wird ein Bild eines Segments des Körpers des Feindcharakters (Fragment, d.
h. ein Abschnitt der Polygone unter der Gruppe der Polygone, welche
den Feindcharakter aufbauen) angezeigt, welches sich am proximalen
Ende des Bildschirms verteilt.
-
Ist
andererseits die Lebensenergie gleich null, wird ein Bild eines
Segments des Körpers
des Feindcharakters (Fragment) angezeigt, das sich am distalen Ende
des Bildschirms verteilt, weil der Feindcharakter tot ist. Demzufolge
kann der Spieler durch Änderung
der Verteilungsrichtung des Segments (Fragment) des Körpers des
Feindcharakters, leicht beurteilen, ob der Feindcharakter tot oder
lebendig ist. Wenn Feindcharaktere in herkömmlichen Schießspielen
mit Maschinenpistolen oder Ähnlichem
abgeschossen werden, ist es nicht möglich, zu beurteilen, in welcher
Etappe der Feindcharakter besiegt wurde, da das Schießen ununterbrochen
durchgeführt
wird. In der vorliegenden Erfindung jedoch, kann die Beurteilung
darüber,
ob der Feindcharakter tot oder lebendig ist, leicht vorgenommen
werden, da die Verteilungsrichtung des Segments (Fragment) des Körpers des
Feindcharakters während
der Etappen des Abschießens
solch eines Feindcharakters geändert wird.
Folglich ist es leicht, das Spiel fortzusetzen.
-
Des
Weiteren ist die Verteilungsrichtung des Segments (Fragment) des
Körpers
des Feindcharakters nicht auf das oben genannte begrenzt und kann auf
dem Bildschirm ebenso auf die Richtungen links (wenn der Feindcharakter
tot ist) und rechts (wenn der Feindcharakter lebendig ist) aus der
Sichtlinie des Spielers eingestellt werden. Darüber hinaus kann es passend
und optional auf die nach oben und nach unten weisenden Richtungen
und so weiter eingestellt werden.
-
<Datenaufbau
des Explosionsobjekts>
-
Als
Nächstes
wird der Datenaufbau von Explosionsobjekten, welche Explosionen
von Kugeln und Ähnlichem
darstellen, mit Bezug auf 6 erläutert. Das
Explosionsobjekt ist aus einer Vielzahl von Daten aufgebaut. Zum
Beispiel ist ein Explosionsobjekt aus vier Kombinationen von Explosionsdaten
A1, B1, B2, C1 und C2 (Muster (1) bis (4)) aufgebaut. In solch einem
Fall, ist der Datenaufbau des Explosionsobjekts in der vorliegenden
Ausführungsform zum
Beispiel, wie in 6(B) gezeigt, so
aufgebaut, dass alle vier Datenaufbauten A1-B1–C1, A1-B1-C2, A1-B2-C1 und
A1-B2-C2 hierarchisch
angeordnet sind. Mit anderen Worten werden die Explosionsdaten A1,
die allen Explosionsobjekten gemeinsam sind, am Grund platziert,
und dann werden B1 und B2 auf der zweiten Schicht angeordnet, und
C1 und C2 werden auf der dritten Schicht angeordnet. Danach werden
sie gemäß des Verlaufs
der Zeit in der angeordneten Reihenfolge gelöscht.
-
Durch
diese Anordnung ist es möglich,
für die
Explosionsdaten A1 einen Verweis einzustellen, um die Adressen von
B1 und B2 anzuzeigen, und für die
Explosionsdaten B1 und B2 einen Verweis, um jeweils die Adressen
von C1 und C2 anzuzeigen. Gemäß diesem
Datenaufbau ist es im Vergleich zu der herkömmlichen Technik (6(A)) möglich, den Speicher, der notwendig
ist, um Daten von Explosionsobjekten zu speichern, zu verkleinern.
-
Die
vorliegende Erfindung kann für
einen Datenaufbau eines Objekts, welches kein Explosionsobjekt ist,
eingesetzt werden.
-
<Bewegungsinterpolationsverarbeitung>
-
Als
Nächstes
wird die Bewegungsinterpolationsverarbeitung mit Bezug auf 8(B) erläutert. Man nehme an, dass der
Feindcharakter während der „Angriffsbewegung
(Bewegungsmuster M)" beschädigt wurde.
Daraufhin, macht der Feindcharakter eine Umwandlung zu einem Schritt,
welcher der Reihe nach die „Fallbewegung
(Treffermuster H1, H2, ...)" durchführt. Mit
anderen Worten liest die CPU gemäß den Ergebnissen
der Kollisionsbeurteilung die Reihe von Bewegungsbedingungsdaten,
welche vom Zielobjekt vorgenommen wurden, und zeigt dies auf einem
Bildschirm an. Zu solch einer Zeit, wird die Bewegungsinterpolationsverarbeitung
C1 zwischen dem Bewegungsmuster M und dem Treffermuster H1 für einige
Frames durchgeführt.
Als Nächstes
wird die Bewegungsinterpolationsverarbeitung C2 zwischen dem Treffermuster
H1 und dem Treffermuster H2 für
n Frames durchführt. Überdies
wird die Bewegungsinterpolationsverarbeitung C3 zwischen dem Treffermuster
H2 und dem Treffermuster H3 für
n-1 Frames durchgeführt,
und die Bewegungsinterpolationsverarbeitung C4 wird zwischen dem
Treffermuster H3 und dem Treffermuster H4 für n-2 Frames durchgeführt. Dementsprechend
wird, indem man nach und nach die Anzahl der Frames der Interpolation
(Anzahl, welche erforderlich ist, um Interpolationsdaten zu produzieren)
herabsetzt, die Zeitlupe in die normale Geschwindigkeit zurückgesetzt.
Das heißt,
dass die Geschwindigkeit langsamer Wiedergabe allmählich in
die normale Geschwindigkeit zurückgesetzt
wird. Dadurch ist es möglich,
unnatürliche Änderungen
von Bewegungsmustern zu mindern, wodurch ein realistisches Schießspiel präsentiert
wird.
-
Wenn
ein Frame 1/60 sec ist, ist es wünschenswert,
dass der Wert von n oben innerhalb des Bereichs von 1 bis 4 liegt.
-
<Bewegung
des Feindcharakters nachdem, er beschädigt wurde>
-
Als
Nächstes
wird die Bewegung des Feindcharakters, nachdem er beschädigt wurde,
mit Bezug auf 10 erläutert. Diese
Erfindung bezieht sich auf die Bewegung und Aktion des Feindcharakters, nachdem
er von einer Kugel getroffen wurde. In der vorliegenden Erfindung
wird die Drehkraft (Abstand zwischen dem Schwerpunkt des Feindcharakters und
der Einschlagposition der Kugel, multipliziert mit der Kraft der
Kugel), welche von dem Feindcharakter, nachdem er von einer Kugel
getroffen wurde, empfangen wird, berechnet, und der Winkel θ, die Inklination
des Feindcharakters, wird entsprechend einer solchen Drehkraft ausgerechnet.
Dann wird nach der Bewegung die Position E2 von der Posi tion E1
des Feindcharakters, nachdem er von einer Kugel getroffen wurde,
berechnet. Die Bewegung des Feindcharakters, nachdem er, von der
Sichtlinie des Spielers gesehen, von einer Kugel getroffen wurde,
ist in 10(B) gezeigt. Deshalb führt die
Positionsänderung
eines Feindcharakters (Modell) nachdem er von einer Kugel getroffen
wurde, von der Sichtlinie des Spielers gesehen, zu einem zweidimensionalen
Positionswechsel (die Positionsänderung
eines Charakters findet in einer anderen Richtung als der Richtung der
Sichtlinie von einem virtuellen Standpunkt, statt). Folglich wird
es schwierig, mit einer Maschinenpistole zu zielen, wodurch die
Verbesserung der Fähigkeiten
eines Spielers notwendig wird. Mit anderen Worten waren bisher,
als Feindcharaktere, welche von einer Kugel getroffen wurden, von
der Sichtlinie des Spielers gesehen nur zweidimensionale Positionsänderungen
zeigten, ununterbrochene Treffer mit Kugeln möglich. Andererseits verhindert
die vorliegende Ausführungsform
solche leichten ununterbrochenen Treffer.
-
<Halb-Abbruch
von Bewegungen>
-
Als
Nächstes
wird der Halb-Abbruch von Bewegungen erläutert. Nachdem während der
Durchführung
eines Bewegungsmusters (1), welches aus mehreren Bewegungsschritten
ausgeführt
wird, eine Umwandlung zu einem anderen Bewegungsmuster (2) ausgeführt wird,
besteht der Halb-Abbruch von Bewegungen darin, den Bewegungsschritt
M zu solch einer Zeit zu speichern, und das Bewegungsmuster (1)
von solch einem Bewegungsschritt M nach dem Abschluss des Bewegungsmusters
(2) durchzuführen.
Dieser Punkt wird mit Bezug auf 11(B) erläutert. Hier
startet der Feindcharakter die Angriffsbewegung und führt der
Reihe nach jeden der Angriffsschritte M1,
M2, ..., Mn-1, Mn durch. Man nehme an, dass der Feindcharakter
von Kugeln des Spielercharakters getroffen und im Angriffsschritt
M3 beschädigt
wurde. Dann speichert die CPU die Identifikationsinformationen des Angriffsschritts
M3 in dem RAM und führt eine Umwandlung in die Shot-Down-Bewegung
aus. Nach dem Abschluss der Shot-Down-Bewegung
kehrt die CPU entsprechend der Identifikationsinformationen, welche
in dem zuvor erwähnten
RAM gespeichert ist, noch einmal zu der Angriffsbewegung von dem
Angriffsschritt M3 zurück. Gemäß diesem Aufbau, da der Feindcharakter
nach Abschluss der Shot-Down-Bewegung augenblicklich eine Umwandlung
in einen Angriffsmodus ausführt, wird
dem Spieler keine Gelegenheit bereitgestellt, so wie in dem herkömmlichen
Stand der Technik anzugreifen. Deshalb wird verhindert, dass die
Schwierigkeit des Spiels gemindert wird, und das Vergnügen des
Spiels erhöht
sich.
-
Weiterhin
kann, wenn man zu dem Angriffsschritt M3 des
zuvor erwähnten
Beispiels zurückkehrt,
die Einstellung so sein, dass die Rückkehr einige Frames vor oder
nach der Shot-Down-Bewegung vorgenommen wird.
-
Darüber hinaus
kann ein Schwachpunkt eines Feindcharakters eingestellt werden.
In solch einem Fall wird ein Halb-Abbruch von Bewegungen nach der Rückkehr von
der Shot-Down-Bewegung durchgeführt, wenn
die Kugel diesen Schwachpunkt trifft, oder, wenn die Kugel irgendeinen
anderen Punkt als diesen Schwachpunkt trifft, wird der Angriff ohne
eine Umwandlung zu der Shot-Down-Bewegung fortgeführt. Wenn
es wie das Obige eingestellt ist, erhöht sich das Vergnügen des
Spiels, weil der Spieler, damit er das Spiel günstig voranbringt, gezwungen
ist, auf den Schwachpunkt des Feindcharakters zu zielen.
-
<Verfahren
zur Steuerung der Flugkurve der Kugel>
-
Als
Nächstes
wird mit Bezug auf 12 das Verfahren
zur Steuerung der Flugkurve einer Kugel erläutert. Das Verfahren der vorliegenden
Erfindung zur Steuerung der Flugkurve einer Kugel steuert zum Beispiel
die Flugkurve einer Kugel, welche vom Standpunkt des Spielers entsprechend
des Abstands zwischen der Kugel und dem Spielercharakter gesehen
wird. Man nehme an, dass in 12(B) die
Kugel mit einer Geschwindigkeit V1 fliegt
und der Spielercharakter sich mit einer Geschwindigkeit V2 bewegt. Die CPU erhält den Abstand zwischen der
Kugel und dem Spielercharakter von deren Koordinaten. Dann wird,
um die Flugkurve der Kugel, welche vom Standpunkt des Spielers gesehen
wird, zu erhalten, durch Multiplizieren der Geschwindigkeit V2 mit dem Koeffizienten k, welcher ein inverses
Verhältnis zu
dem zuvor erwähnten
Abstand aufweist, ein synthetischer Vektor V3 =
V1 – kV1 erhalten. Dieser synthetische Vektor V3 ist der Geschwindigkeitsvektor der Kugel,
welche vom Standpunkt des Spielers gesehen wird.
-
Gemäß diesem
Aufbau beeinflusst die Geschwindigkeit V2 des
Spielercharakters kaum die Flugkurve der Kugel, wenn der Abstand
zwischen der Kugel und dem Spielercharakter weit ist. Andererseits
wird die Geschwindigkeit der Kugel gemäß der Geschwindigkeit V2 des Spielercharakters angepasst, wenn dieser
Abstand zwischen den beiden nah ist. Folglich kommen Probleme wie
die mit dem herkömmlichen
Stand der Technik nicht auf.
-
<Beschleunigung
der Kollisionsbeurteilung>
-
Als
Nächstes
wird die Beschleunigung der Kollisionsbeurteilung erläutert. Um
die Beschleunigung der Kollisionsbeurteilung zu verwirklichen, unterteilt
die vorliegende Erfindung den Spielbildschirm, das heißt, den
gesamten virtuellen Raum, in Gitter. Dann wird das Einheitsgitter,
in welchem sich ein Objekt, das der Kollisionsbeurteilung unterliegt,
befindet, gesucht, und die Kollisionsbeurteilung wird hinsichtlich
aller sich in solch einem Einheitsgitter befindenden Objekte durchgeführt. Dies
wird mit Bezug auf 15 erläutert. 15(A) ist ein Bild einer Stadt, in einer
vereinfachten und modellierten Form, welches auf dem virtuellen
Raum 70 verwirklicht wurde.
-
Objekte,
wie beispielsweise die Gebäude 201, 202 und 203 sind
darin gezeigt. 15(B) legt einen vorgeschriebenen
dreidimensionalen Bereich 50 innerhalb des virtuellen Raumes
fest und unterteilt diesen dreidimensionalen Bereich 50 in
die Einheitsgitter 51, 52, 53 und so
weiter. Man nehme zum Beispiel an, dass die jeweilige Länge der
Richtungen x, y und z dieser Einheitsgitter 1 ist. 16(A) ist ein Diagramm, welches auf die
Ebene xy projiziert wurde, und 16(B) ist
ein Diagramm, welches auf die Ebene xz projiziert wurde.
-
Die
Kollisionsbeurteilung wird zum Beispiel an einer Kugel und einem
Gebäude,
einem sich bewegenden Charakter und einer Mauer und dergleichen
durchgeführt,
mit anderen Worten, an einem sich bewegenden Objekt und einem Objekt
mit einer festen Position auf dem virtuellen Raum (oder Polygone,
welche ein Objekt bilden, oder Polygone, welche für die Kollisionsbeurteilung
eines solchen Objekts benutzt werden). In diesem Fall wird das sich bewegende
Objekt in Vektoren dargestellt (Liniensegment, welches eine Größe und eine
Richtung aufweist), und die Kollisionsbeurteilung wird mit einem anderen
Objekt (Objekt mit einer festen Position auf dem virtuellen Raum
und einem anderen Objekt außer
dem zuvor erwähnten
sich bewegende Objekt) durchgeführt.
Die Schritte der Kollisionsbeurteilung werden mit Bezug auf 17 erläutert.
Wie in 17(A) gezeigt, werden Objekte,
wie beispielsweise Gebäude,
welche sich in jeder der Einheitsgitter befinden, in eine Liste
gestellt. Die Kollisionsbeurteilung wird gemäß den Schritten, die in 17(B) gezeigt sind, durchgeführt. Zuerst
wird ein Objekt zur Kollisionsbeurteilung, zum Beispiel das Einheitsgitter,
in welchem sich die Kugel befindet, gesucht (Schritt C1). Dieser
Schritt gestaltet die Kugel als einen Vektor und prüft, in welchem
Einheitsgitter sich die Koordinaten der Start- und Endpunkte des
Vektors befinden. Falls ein Einheitsgitter mit einer Kugel vorhanden
ist, führt
es dann als Nächstes
die Kollisionsbeurteilung mit den Polygonen, welche das Objekt bilden,
das sich in solch einem Einheitsgitter befindet, durch (Schritt
C2). Wie in 16(A) gezeigt, wird zum
Beispiel die Kugel, welche sich in dem virtuellen Raum bewegt, durch
einen Vektor 40 dargestellt, und falls dieser Vektor 40 sich
in dem Einheitsgitter 54 befindet, wird die Kollisionsbeurteilung
mit den Polygonen, welche das Objekt 201 bilden, das sich
in dem Einheitsgitter 54 befindet, durchgeführt. Da
dies das Herabsetzen der Anzahl der Polygone, in welchen die Kollisionsbeurteilung
durchgeführt
werden soll, ermöglichen
wird, ist eine Beschleunigung der Verarbeitung möglich.
-
Weiterhin
ist es ebenfalls möglich,
die Kollisionsbeurteilung durchzuführen, indem man einen dreidimensionalen
Bereich um die Peripherie eines optionalen Objekts, welches innerhalb
des virtuellen Raumes angeordnet ist, einrichtet und diesen dreidimensionalen
Bereich in Einheitsgitter unterteilt. Zum Beispiel ist, wie in 18 gezeigt,
ein dreidimensionaler Bereich 60 um die Peripherie des
Automobils 204, welches sich auf dem virtuellen Raum 70 bewegt,
eingerichtet, und dieser dreidimensionale Bereich 60 ist
in die Einheitsgitter 61, 62 und so weiter unterteilt.
Gemäß diesem
Aufbau ist es möglich,
die Anzahl der Polygone, in welchen die Kollisionsbeurteilung durchgeführt werden
soll, herabzusetzen. Darüber
hinaus ist es möglich,
die Kollisionsbeurteilung präziser
und akkurater durchzuführen.
-
Da
es nicht notwendig ist, die Kollisionsbeurteilung mit jedem Objekt,
welches sich innerhalb des virtuellen Raumes befindet, und allen
Polygonen, welche dieses Objekt bilden, durchzuführen, ist folglich, gemäß der vorliegenden
Erfindung, die Menge der Berechnung herabgesetzt, und die Verarbeitungsgeschwindigkeit
ist in hohem Maße
beschleunigt. Da zusätzlich
die Position des Vektors durch Vergleich der Koordinaten leicht
bestimmt werden kann, muss die Kollisionsbeurteilung nur mit den
Vektoren durchgeführt
werden, welche innerhalb des dreidimensionalen Raumes positioniert
sind, und die Berechnungsmenge wird reduziert. Des Weiteren kann
die Anzahl von Einheitsgittern passend auf eine adäquate Anzahl
eingestellt werden, so dass die Berechnungsmenge in Anbetracht der
Größe, der Quantität, der Position,
der Dichte, etc. des Objekts, welches innerhalb des virtuellen Raumes
angeordnet ist, reduziert wird.
-
<Darstellung
von Wellen>
-
Als
Nächstes
wird das Verfahren zum Darstellen von Wellen gemäß der vorliegenden Ausführungsform
mit Bezug auf 18 erläutert. In der vorliegenden
Ausführungsform
werden, wie in 18(A) gezeigt, Polygone,
welche Wellen darstellen, aus einer Ansammlung von zahlreichen rechteckigen
Polygonen P1, P2,
P3 und so weiter gebildet, in welchen die
Längsrichtung
davon die Richtung der Tiefe der Welle ist. Und durch Ändern der
jeweiligen Höhen
h1, h2, h3, ... der rechteckigen Polygone P1, P2, P3,
... gemäß vorgegebenen
Schritten, kann die Bewegung von Wellen dargestellt werden. 18(A), (B) und (C) entsprechen jeweils
der Zeit T1, T2 und
T3. Die Höhen der rechteckigen Polygone
P1, P2, P3, ... werden zum Beispiel als eine einfache
harmonische Bewegung geändert,
so dass Wellenfrequenzen als einfache harmonische Bewegungen dargestellt
werden.
-
<Konfiguration
der Spieletappen>
-
Als
Nächstes
wird mit Bezug auf 19 die Konfiguration
der Spieletappen erläutert.
Die Spieletappen, die zu der vorliegenden Ausführungsform gehören, sind
so konfiguriert, dass die erste Etappe und die letzte Etappe festgelegt
sind, und der Spieler kann dazwischenliegende Etappen passend auswählen. Mit
anderen Worten führt
die Spielvorrichtung nach dem Start des Spiels mit einem vorgegebenen
Programm automatisch die Etappe 1 durch (Schritt D1). Nach Abschluss
der Etappe 1 wird die Punktzahl in Etappe 1 auf dem Bildschirm angezeigt. Danach
wird ein Bildschirm zum Auswählen
der nächsten
Etappe angezeigt, und der Spieler wählt die nächste Etappe aus (Schritt D2).
Wurde zum Beispiel die Etappe 3 ausgewählt, wird die Etappe 3 durchgeführt (Schritt
D3). Danach wird noch einmal eine Umwandlung zu Schritt S192 ausgeführt (Schritt
D4: NEIN), und die nächste
Etappe wird ausgewählt.
So wird, nachdem alle Etappen abgeschlossen wurden (Schritt D4:
JA), die letzte Etappe durchgeführt (Schritt
D5). Nach dem Abschluss der letzten Etappe werden der Gesamtpunktestand
und so weiter angezeigt, und das Spiel wird zu einem Ende gebracht.
-
Dadurch,
dass die dazwischenliegenden Etappen von dem Spieler ausgewählt und
durchgeführt
werden, wird der Fluss des Spiels gemäß der Absicht des Spielers
sein. Des Weiteren wird durch Beschränken der Reihenfolge des Auswählens der Spieletappen
oder der Etappen, welche von dem Spieler in Bezug auf die Punktzahlen
vorheriger Etappen und dergleichen auswählbar sind, das Vergnügen des
Spiels gesteigert.
-
<Auswertungsstandards
der Punktzahlen>
-
Es
gibt vier Auswertungsstandards für
die Punktzahlen in dem Schießspiel,
welches zu der vorliegenden Erfindung gehört.
-
(1) Auswertung pro Feindebene
-
Diese
Auswertung der Punktzahl wird gemäß des Verfahrens zum Niederschießen des
jeweiligen Feindcharakters, der erforderten Zeit für solch einen
Niederschuss, der Anzahl der abgefeuerten Kugeln und so fort vorgenommen.
-
(2) Auswertung pro Feindtruppe
-
Ein
Feindcharakter ist nicht begrenzt darauf, unabhängig zu sein, sondern kann
ebenso in Truppen angreifen. Je kürzer folglich die Zeit ist,
die zum Auslöschen
der Feindtruppe benötigt
wird, desto höher
die Auswertung. Diese Auswertung ist zum Beispiel aus sechs Etappen
zusammengestellt, und der Bonusanteil wird durch die Rangeinordnung
in jeder dieser Etappen bestimmt.
-
(3) Auswertung pro Etappe
-
Eine
Rangeinordnung pro Etappe wird entsprechend der Punktzahl des Spielers
in jeder Etappe vorgenommen.
-
(4) Auswertung pro Spiel
-
Eine
Rangeinordnung pro Spiel wird entsprechend der Gesamtpunktzahl eines
Spiels vorgenommen.
-
Dementsprechend
ist durch Unterteilen der Auswertungsstandards der Punktzahlen in
Feinde, Feindtruppen, etc., die Punktzahlauswertung in verschiedenen
Formen durch die Kombination davon möglich.
-
<Vibrationserzeugungsmechanismus>
-
Die
Vibrationserzeugungsvorrichtung in der Spielvorrichtung der vorliegenden
Erfindung wird mit Bezug auf die 21 bis 25 erläutert. 21 ist eine perspektivische Ansicht eines
Körpers 600 der Spielvorrichtung
und einer Anzeige 701. Der Körper 600 hat eine
Standfläche 603 und
eine Stütze 604, und
verschiedene Betätigungsknöpfe und
Schusswaffen 601 sind an dieser Stütze 604 befestigt.
Der Spieler erschießt
die Feindcharaktere, welche auf der Anzeige 701 angezeigt
werden, indem er diese Schusswaffe 601 betätigt. 22 ist
eine Seitenansicht, 23(A) ist die
Vorderansicht und 23(B) ist eine Flächenansicht
dieses Körpers.
Eine Vibrationsplatte 602 ist an der Position, wo der Spieler/die Spielerin
seine/ihre Füße auf der
Standfläche 603 platziert,
bereitgestellt. Wie in 24 ge zeigt, sind die Vibrationserzeugungsvorrichtungen
(„Standflächenschüttler") 605R und 605L auf
der Rückseite dieser
Vibrationsplatte (Position der Füße des Spielers)
bereitgestellt. Trifft die Kugel den Feindcharakter, erzeugen diese
Standflächenschüttler 605R und 605L gleichzeitig
mit dem Explosionsbild solch eines Feindcharakters, welches auf
der Anzeige 701 angezeigt wird, Vibrationen. Als Standflächenschüttler 605R und 605L können Niederfrequenz-Sound-Vibrationserzeugungsvorrichtungen
benutzt werden. Vorzugsweise wird zum Beispiel der „130-5172"-Übertrager,
hergestellt von Aura company (verkauft von Kaga Denshi Company),
benutzt.
-
Das
Schaltschema des Vibrationserzeugungsmechanismus der vorliegenden
Ausführungsform
wird mit Bezug auf 25 erläutert. Die Soundverarbeitungseinheit 801 umfasst
eine Sound-CPU, einen Soundspeicher, einen D/A-Wandler. In dem Soundspeicher
sind neben den Sounddaten (Wellenformdaten), wie beispielsweise
Hintergrundmusik, welche für
jede Spielszene eingestellt ist, Vibrationswellenformdaten verzeichnet,
welche vorher mit jedem Objekt verknüpft wurden. Soundeffekte, wie
beispielsweise Hintergrundmusik, welche für jede Spielszene vorgegeben
ist, wird von der Sound-CPU erzeugt, welche Sounddaten (Wellenformdaten)
von der Sound-CPU
gemäß dem zuvor
erwähnten
Programm liest, diese Daten D/A-wandelt und Zweikanalsignale an
den Verstärker 802 ausgibt
und das Ergebnis an die Lautsprecher 702R und 702L ausgibt. Des
Weiteren werden tiefe Basstöne
verwirklicht, indem die zuvor erwähnten zwei Kanäle in dem
Verstärker 802 synthetisiert,
dieses synthetisierte Signal durch den Verstärker 803, welcher
einen Tiefpassfilter aufweist, gegeben wird, und dies an einen Tieftonlautsprecher 702C ausgegeben
wird.
-
Dem
entgegengesetzt wird nach dem Erzeugen von Vibrationen synchron
mit dem Explosionsbild der Feindcharaktere und dergleichen, das
folgende Verfahren gewählt.
Trifft eine Kugel einen Feindcharakter und wird ein Befehl zum Erzeugen von
Vibrationen synchron mit der Explosion des Feindcharakters von der
Haupt-CPU (nicht gezeigt) an die Sound-CPU abgegeben, liest die Sound-CPU von
dem Soundspeicher Vibrationswellenformdaten, welche vorher mit jedem
Objekt verknüpft
wurden, D/A-wandelt dies in Zweikanalsignale und gibt Selbiges an
den Verstärker 804 aus.
Signale, welche an dem Verstärker 804 verstärkt werden,
werden in den Standflächenschüttler 605R und 605L eingegeben, um
die Vibrationsplatte 602 vibrieren zu lassen.
-
Gemäß dem Vibrationserzeugungsmechanismus
der vorliegenden Ausführungsform,
werden Sounddaten für
Hintergrundmusik und Vibrationswellenformdaten, welche zu der Explosion
von Objekten gehören,
in dem Soundspeicher so unterteilt und verzeichnet, dass die jeweiligen
Signalwege unterschiedlich sind. Folglich ist es nicht länger notwendig den
Standflächenschüttler mit
Soundsignalen, welche entsprechend den Sounddaten für Hintergrundmusik
erzeugt wurden, vibrieren zu lassen, und passende Vibrationen werden
gemäß der Szene
erzeugt. Darüber
hinaus kann die Unnatürlichkeit
des Standflächenschüttlers,
wenn er unnötigerweise
gemäß dem Sound
der Hintergrundmusik vibriert, ebenfalls gelöst werden.