-
Die Erfindung betrifft Videospielsysteme. Insbesondere betrifft die Erfindung ein neuartiges Videospielsystem mit einer Vibrationen in Antwort auf Spielbilder erzeugenden Vibrationsquelle, welche in einem Betätigungssignale an ein Videospielgerät übermittelnden Steuerorgan vorgesehen ist.
-
Herkömmliche gewerblich genutzte Videospielgeräte umfassen ein sogenanntes körperlich spürbares Spielgerät, das bereits im praktischen Einsatz ist und dazu ausgelegt ist, Vibrationen an einem Sitz des Spielers zu erzeugen oder den Sitz zu kippen, um das Interesse an dem Spiel weiter zu steigern.
-
Zwischenzeitlich gibt es ein Steuerorgan, das beispielsweise in dem am 10. Dezember 1987 offengelegten
japanischen Gebrauchsmuster mit der Offenlegungsnummer S62-194389 offenbart ist und einen Elektromagnet aufweist, welcher in einem Steuerknüppel (Joystick) angeordnet ist, um in Folge einer Betätigung des Elektromagneten Schwingungen an dem Steuerknüppel zu erzeugen. Es ist vorstellbar, daß ein Spiel verfügbar ist, bei dem Vibrationen auf die Hand eines Spielers übertragen werden, indem ein vibrationserzeugendes Steuerorgan mit einem Heim-Videospielgerät verbunden wird.
-
Im Stand der Technik ist jedoch kein Hinweis auf gegenseitige Zusammenhänge zwischen den auf einer Anzeige angezeigten Spielbildern und hierfür erzeugten Vibrationen zu finden. Daher ist es schwierig, den Stand der Technik für ein Heim-Videospielsystem zu nutzen. Zudem ist das vorstehend angesprochene körperlich spürbare Spielgerät zur Erzeugung von Vibrationen am Sitz vorgesehen und kann somit nicht für ein Heim-Videospielsystem ohne einen solchen Sitz verwendet werden.
-
Aus der Druckschrift
JP 09-164270 A ist ein Videospielsystem mit einem Handsteuergerät für ein Spiel bekannt, das einen Vibrator umfasst, so dass man eine Rückkopplung von einem Videobild erhalten kann. Ein Vibrationserzeugungsmuster wird einem Ereignis in dem Videospiel zugeordnet, wobei verschiedene Pegel der Vibrationsintensität angewendet werden können. Die intensive oder schwache Vibration in D1 wird durch die Amplitude des Treiberstroms bestimmt.
-
In
WO 97/12357 A1 sind verschiedene Arten der Definitionen von Kraft- und Host-Befehlen gezeigt, die als Rückkopplungsmuster des Steuergeräts dienen.
-
Aufgabe der Erfindung ist es daher, ein Videospielsystem bereitzustellen, das in einer auf Spielbilder bezogenen Weise Vibrationen auf einen Spieler zu übertragen vermag. Gelöst wird diese Aufgabe durch ein Videospielsystem nach Anspruch 1 und durch ein Videospielsystem nach Anspruch 7. Besondere Ausführungsarten sind in den Unteransprüchen angegeben.
-
Es ist ein Videospielsystem mit einem Videospielgerät und einem Steuerorgan vorgesehen, wobei das Videospielgerät ein Verarbeitungsmittel zum Erzeugen von Spielbildern umfaßt, welche auf einer Anzeige in Abhängigkeit von einem Betätigungszustand des Steuerorgans und nach Maßgabe eines in einem Speichermedium gespeicherten Spielprogramms angezeigt werden, wobei das Steuerorgan in einem Zustand verwendet wird, in dem es von der Hand eines Spielers gegriffen ist, und umfaßt:
- – eine Mehrzahl von Betätigungsschaltern zum Bestimmen einer Bewegung eines Spielerobjekts,
- – eine Vibrationsquelle zur Erzeugung mechanischer Vibrationen und
- – eine Treiberschaltung zum Antreiben der Vibrationsquelle in Antwort auf ein von dem Videospielgerät geliefertes Befehlssignal,
wobei das Speichermedium umfaßt:
- – ein Spielerobjektbilderzeugungsprogramm zur Erzeugung eines Bilds des Spielerobjekts, das in Antwort auf eine Betätigung mindestens eines der Betätigungsschalter verändert wird,
- – ein weiteres Objektbilderzeugungsprogramm zur Erzeugung eines Bilds mindestens eines weiteren sich im Umgebungsbereich des Spielerobjekts befindenden Objekts,
- – ein Vibrationserzeugungszustandserfassungsprogramm zur Erfassung eines Vibrationserzeugungszustands auf Grundlage eines Anzeigezustands des Spielerobjektbilds und des weiteren Objektbilds und
- – ein Vibrationssteuerprogramm zur Erzeugung von Daten zur Steuerung der Vibrationsquelle in Antwort auf eine Erfassung des Vibrationserzeugungszustands nach Maßgabe des Vibrationserzeugungszustandserfassungsprogramms,
und wobei das Verarbeitungsmittel die Spielbilder nach Maßgabe des Spielerobjektbilderzeugungsprogramms und des weiteren Objektbilderzeugungsprogramms erzeugt und über die Treiberschaltung die Vibrationsquelle dazu veranlaßt, nach Maßgabe des Vibrationssteuerprogramms mechanische Vibrationen zeitsynchron zur Erzeugung von Einzelbildern auf der Anzeige zu erzeugen.
-
Desweiteren ist ein Videospielsystem mit einem Videospielgerät und einem Steuerorgan zur Zuführung eines Betätigungssignals an das Videospielgerät vorgesehen, wobei das Steuerorgan in einem Zustand verwendet wird, indem es von der Hand eines Spielers gegriffen ist, und eine Mehrzahl von Betätigungsschaltern zur Bestimmung einer Bewegung eines Spielerobjekts, eine Vibrationsquelle zur Erzeugung mechanischer Vibrationen sowie eine Treiberschaltung zum Antreiben der Vibrationsquelle in Antwort auf ein von dem Videospielgerät geliefertes Befehlssignal umfaßt, wobei das Videospielgerät umfaßt:
- – ein Spielerobjektbilderzeugungsmittel zur Erzeugung eines Bilds des Spielerobjekts, das in Antwort auf eine Betätigung mindestens eines der Betätigungsschalter verändert wird,
- – ein Vibrationserzeugungszustandserfassungsmittel zur Erfassung eines Vibrationserzeugungszustands auf Grundlage eines Betätigungszustands der Betätigungsschalter des Steuerorgans und
- – ein Vibrationserzeugungsmittel, um in Antwort auf eine Erfassung des Vibrationserzeugungszustands durch das Vibrationserzeugungszustandserfassungsmittel die Vibrationsquelle über die Treiberschaltung dazu zu veranlassen, zeitsynchron zur Erzeugung von Einzelbildern auf einer Anzeige mechanische Vibrationen zu erzeugen.
-
Der Vibrationserzeugungszustand wird in Abhängigkeit vom Zustand des Spielerobjektbilds und weiterer Objektbilder (beispielsweise ob sie aufeinandertreffen o. dgl.) erfaßt. Wenn dieser Zustand erfaßt wird, wird die in dem Steuerorgan enthaltene Vibrationsquelle durch die Treiberschaltung angetrieben.
-
Außerdem ist es möglich, Vibrationen in Abhängigkeit vom Zustand der Betätigungsschalter des Steuerorgans zu erzeugen, und zwar unabhängig vom Zustand des Spielerobjekts und der weiteren Objekte.
-
Es können Vibrationen von der Vibrationsquelle des Steuerorgans in Abhängigkeit vom Zustand der Spielbilder erzeugt werden. Dementsprechend ist ein Spiel mit größerer Realitätsnähe möglich.
-
Die Erfindung wird im folgenden anhand der beigefügten Zeichnungen näher erläutert. Es stellen dar:
-
1 schematisch ein Videospielsystem nach einer Ausführungsform der Erfindung,
-
2 ein Blockdiagramm, das ein Videospielgerät der 1 im Detail zeigt,
-
3 ein Blockdiagramm, das eine Steuerorgan-Steuerschaltung der
-
2 im Detail zeigt,
-
4 ein Blockdiagramm, das das Steuerorgan und einen Vibrationskassetteneinsatz der 1 im Detail zeigt,
-
5 im Detail den Vibrationskassetteneinsatz,
-
6 einen Schaltplan, der eine in dem Vibrationskassetteneinsatz enthaltene Vibrationserzeugungsschaltung zeigt,
-
7 einen Speicherplan in einem externen ROM,
-
8 einen Speicherplan in einem RAM,
-
9 ein Flußdiagramm, das den Gesamtbetriebsablauf der Ausführungsform der 1 zeigt,
-
10 ein Flußdiagramm, das eine Subroutine zur Erfassung eines Vibrationserzeugungszustands zeigt,
-
11 ein Flußdiagramm, das eine Subroutine zur Feststellung eines Aufeinandertreffens zeigt,
-
12 ein Flußdiagramm, das eine Vibrationserzeugungssubroutine zeigt,
-
13 die Kollision eines Spielerobjekts mit einem Feindobjekt,
-
14 den Zustammenstoß des Spielerobjekts mit einem stationären Objekt,
-
15 ein Diagramm, das ein Vibrationsmuster zur Erzeugung intensiver und kurzer Vibrationen zeigt,
-
16 ein Diagramm, das ein Vibrationsmuster zur Erzeugung schwacher und langanhaltender Vibrationen zeigt, und
-
17 einen Speicherplan im RAM einer Ausführungsform der Erfindung.
-
In 1 erkennt man, daß ein Videospielsystem bei einer Ausführungsform ein Videospielgerät 10, eine ROM-Kassette 20 als Beispiel eines Speichermediums, eine mit dem Videospielgerät 10 verbundene Anzeige 30 sowie ein Steuerorgan 40 umfaßt. Das Steuerorgan 40 ist lösbar mit einem Vibrationskassetteneinsatz 50 versehen.
-
Das Steuerorgan 40 besitzt einen Aufbau mit mehreren Schaltern oder Knöpfen, welche an einem Gehäuse 41 vorgesehen sind, das mit einer oder beiden Händen gegriffen werden kann. Speziell umfaßt das Steuerorgan 40 Griffstücke 41L, 41C, 41R, welche linksseitig, rechtsseitig bzw. in der Mitte des Gehäuses 41 nach unten abstehen, wobei in einer oberen Fläche des Gehäuses 41 ein Bedienungsbereich gebildet ist. In diesen Bedienungsbereich sind ein analog betätigbarer Steuerknüppel (nachfolgend ”analoger Steuerknüppel” genannt) 45 in einem zentralen unteren Teil des Bedienungsbereichs, ein kreuzförmiger digitaler Richtungsschalter (nachfolgend ”Kreuzschalter” genannt) 46 auf der linken Seite sowie mehrere Druckknopfschalter 47A, 47B, 47C, 47D, 47E und 47F auf der rechten Seite vorgesehen.
-
Der analoge Steuerknüppel 45 wird zur Eingabe einer Bewegungsrichtung und/oder einer Bewegungsgeschwindigkeit oder eines Bewegungsbetrags eines Spielerobjekts (eines von einem Spieler über das Steuerorgan 40 bedienbaren Objekts) verwendet, und zwar bestimmt durch den Betrag und die Richtung der Schrägstellung des Steuerknüppels. Der Kreuzschalter 46 wird zur Angabe einer Bewegungsrichtung des Spielerobjekts anstelle des Steuerknüppels 45 verwendet. Die Knopfschalter 47A und 47B werden zur Angabe einer Bewegung des Spielerobjekts verwendet. Die Knopfschalter 47C–47D werden zum Umschalten des Blickpunkts einer dreidimensionalen Bildkamera oder zur Einstellung der Geschwindigkeit des Spielerobjekts o. dgl. verwendet. Ein Startschalter 47S ist nahe der Mitte des Bedienungsbereichs angeordnet. Dieser Startschalter 47S wird betätigt, wenn ein Spiel gestartet wird. An der Rückseite des mittleren Griffstücks 41C ist ein Schalter 47Z angeordnet. Dieser Schalter 47Z wird beispielsweise als Schußauslöseschalter in einem Schießspiel verwendet. Oben links und oben rechts sind an einer Seitenfläche des Gehäuses 41 Schalter 47L und 47R angeordnet.
-
Nebenbei bemerkt können die oben angesprochenen Knopfschalter 47C–47F neben dem Zweck der Umschaltung des Kamerablickpunkts auch zur Steuerung der Bewegungsgeschwindigkeit (z. B. Beschleunigung oder Verlangsamung) des Spielerobjekts in einem Schieß- oder Actionspiel verwendet werden. In jedem Fall können die Schalter 47A–47F, 47S, 47Z, 47L und 47R hinsichtlich ihrer Funktion beliebig in Abhängigkeit von einem Spielprogramm festgelegt werden.
-
2 ist ein Blockdiagramm des Videospielsystems bei der Ausführungsform der 1. Das Videospielgerät 10 enthält eine zentrale Verarbeitungseinheit (nachfolgend ”CPU” genannt) 11 sowie einen Koprozessor (”reality coprocessor”: nachfolgend ”RCP” genannt) 12. Der RCP 12 umfaßt eine Bussteuerschaltung 121 zur Steuerung von Bussen, einen Signalprozessor (”reality signal processor”: nachfolgend ”RSP” genannt) 122 zur Durchführung von Polygonkoordinatentransformationen, Schattierungsbearbeitungen usw. sowie einen Wiedergabeprozessor (”reality display processor”: nachfolgend ”RDP” genannt) 123 zur Rasterung von Polygondaten in ein anzuzeigendes Bild und Umwandlung derselben in eine in einem Bildspeicher speicherbare Datenform (Punktdaten).
-
Der RCP 12 ist mit einem Kassettenverbinder 13 zum entladbaren Einladen der ROM-Kassette 20 mit einem darin enthaltenen externen ROM 21, mit einem Plattenlaufwerkverbinder 197 zum lösbaren Anbringen eines Plattenlaufwerks 29 sowie mit einem RAM 14 verbunden. Der RCP 12 ist ferner mit DACs (Digital/Analog-Wandler) 15 und 16 zur Ausabe eines Tonsignals bzw. eines Bildsignals verbunden, welche von der CPU 11 zu verarbeiten sind. Der RCP 12 ist zudem mit einer Steuerorgan-Steuerschaltung 17 verbunden, um Betätigungsdaten über ein oder mehrere Steuerorgane 40 und/oder Daten des Vibrationskassetteneinsatzs 50 seriell zu übermitteln.
-
Die in dem RCP 12 enthaltene Bussteuerschaltung 121 führt eine Parallel-Seriell-Wandlung an einem in einem parallelen Signal von der CPU über einen Bus gelieferten Befehl durch, um hierdurch ein serielles Signal an die Steuerorgan-Steuerschaltung 17 zu liefern. Die Bussteuerschaltung 121 wandelt außerdem ein von der Steuerorgan-Steuerschaltung 17 eingegebenes serielles Signal in ein paralleles Signal um, wobei sie über den Bus eine Ausgabe an die CPU 11 abgibt. Die Daten, die für einen von dem Steuerorgan 40 ausgelesenen Betätigungszustand (Betätigungssignal oder Betätigungsdaten) repräsentativ sind, werden von der CPU 11 verarbeitet und zeitweilig in dem RAM 14 gespeichert. Mit anderen Worten umfaßt das RAM 14 einen Speicherplatz zum zeitweiligen Speichern der von der CPU 11 zu verarbeitenden Daten, so daß es dazu benutzt wird, Daten über die Bussteuerschaltung 121 gleichmäßig auszulesen und einzuschreiben.
-
Der Ton-DAC 15 ist mit einem Verbinder 195 verbunden, welcher an einer Hinterseite des Videospielgeräts 10 angeordnet ist. Der Bild-DAC 16 ist mit einem Verbinder 196 verbunden, welcher ebenfalls an der Hinterseite des Videospielgeräts 10 vorgesehen ist. Der Verbinder 195 ist mit einem Lautsprecher 31 verbunden, während der Verbinder 196 mit einer Anzeige 30 verbunden ist, etwa einem TV-Empfänger oder einer Kathodenstrahlröhre.
-
Die Steuerorgan-Steuerschaltung 17 ist mit einem Steuerorgan-Verbinder 18 verbunden, welcher an der Vorderseite des Videospielgeräts 10 angeordnet ist. Der Verbinder 18 ist über eine Verbindungsbuchse lösbar mit dem Steuerorgan 40 verbunden. Die Verbindung des Steuerorgans 40 mit dem Verbinder 18 bringt das Steuerorgan in elektrische Verbindung mit dem Videospielgerät 10 und ermöglicht dadurch das Senden/Empfangen von Daten oder den Datentransfer zwischen diesen.
-
Die Steuerorgan-Steuerschaltung 17 wird dazu verwendet, Daten seriell zwischen dem RCP 12 und dem Verbinder 18 zu senden und zu empfangen. Die Steuerorgan-Steuerschaltung 17 umfaßt, wie in 3 gezeigt, eine Datenübertragungssteuerschaltung 171, eine Sendeschaltung 172, eine Empfangsschaltung 173 sowie ein RAM 174 zum temporären Speichern von Sende- und Empfangsdaten. Die Datenübertragungssteuerschaltung 171 umfaßt eine Parallel/Seriell-Wandlungsschaltung sowie eine Seriell/Parallel-Wandlungsschaltung, um beim Datentransfer das Datenformat umzuwandeln, und sie führt ferner eine Schreib/Lese-Steuerung an dem RAM 174 durch. Die Seriell/Parallel-Wandlungsschaltung wandelt die von dem RCP 12 gelieferten seriellen Daten in parallele Daten um und liefert diese an das RAM 174 oder die Sendeschaltung 172. Die Parallel/Seriell-Wandlungsschaltung wandelt die von dem RAM 174 oder der Empfangsschaltung 173 gelieferten Daten in serielle Daten um, um diese an den RCP 12 zu liefern. Die Sendeschaltung 172 wandelt die Befehle zum Lesen von Signalen von dem Steuerorgan 40 sowie die Schreibdaten (parallele Daten) für den Vibrationskassetteneinsatz 50 in serielle Daten um, die an Kanäle CH1–CH4 zu liefern sind, welche den jeweiligen Steuerorganen 40 entsprechen. Die Empfangsschaltung 173 empfängt Betätigungszustandsdaten der Steuerorgane, die über entsprechende Kanäle CH1–CH4 eingegeben werden, sowie Daten, welche von dem Vibrationskassetteneinsatz 50 gelesen werden, als serielle Daten, um diese in parallele Daten umzuwandeln, welche an die Datenübertragungssteuerschaltung 171 zu liefern sind. Die Datenübertragungssteuerschaltung 171 schreibt in das RAM 174 Daten, welche von dem RCP 12 übermittelt werden, Daten des Steuerorgans, welche von der Empfangsschaltung 173 empfangen werden, oder Daten, welche von dem Vibrationskassetteneinsatz 50 ausgelesen werden, und liest Daten aus dem RAM 174 auf Grundlage eines Befehls von dem RCP 12 aus, um diese an den RCP 12 zu übermitteln.
-
Das RAM 174 umfaßt, obwohl nicht gezeigt, Speicherplätze für die jeweiligen Kanäle CH1–CH4. Jeder der Speicherplätze wird mit einem Befehl für den Kanal, Sendedaten und/oder Empfangsdaten belegt.
-
4 ist ein detaillierter Schaltplan des Steuerorgans 40 und des Vibrationskassetteneinsatzes 50. Das Gehäuse des Steuerorgans 40 enthält eine Betätigungssignalverarbeitungsschaltung 44, um einen Betätigungszustand des Steuerknüppels 45, der Schalter 46, 47 usw. zu erfassen und die erfaßten Daten an die Steuerorgan-Steuerschaltung 17 zu übermitteln. Die Betätigungssignalverarbeitungsschaltung 44 umfaßt eine Empfangsschaltung 441, eine Steuerschaltung 442, eine Schaltersignalerfassungsschaltung 443, eine Zählschaltung 444, eine Steuerknüppelanschluß-Steuerschaltung 446, eine Rücksetzschaltung 447 sowie ein NICHT-ODER-Gatter 448. Die Empfangsschaltung 441 wandelt ein serielles Signal, etwa ein von der Steuerorgan-Steuerschaltung 17 übermitteltes Steuersignal oder Schreibdaten für den Vibrationskassetteneinsatz 50, in ein paralleles Signal um, um dieses an die Steuerschaltung 442 zu liefern. Die Steuerschaltung 442 erzeugt ein Rücksetzsignal, um über das NICHT-ODER-Gatter 448 Zählwerte eines X-Achsen-Zählers 444X und eines Y-Achsen-Zählers 444Y in dem Zähler 444 (auf 0) zurückzusetzen, wenn das von der Steuerorgan-Steuerschaltung 17 übermittelte Steuersignal ein Signal zum Rücksetzen von X-, Y-Koordinaten des Steuerknüppels 45 ist.
-
Der Steuerknüppel 45 umfaßt X-Achsen- und Y-Achsen-Photounterbrecher, um eine Hebelschrägstellung in X-Achsen- und Y-Achsen-Komponenten zu zerlegen, wobei sie zur Schrägstellung zahlenmäßig proportionale Impulse erzeugen. Die Impulssignale werden jeweils dem Zähler 444X bzw. dem Zähler 444Y zugeführt. Der Zähler 444X zählt die Zahl der Impulse, die in Antwort auf einen Schrägstellungsbetrag erzeugt werden, wenn der Steuerknüppel 45 in X-Achsen-Richtung geneigt wird. Der Zähler 444Y zählt die Zahl der Impulse, die in Antwort auf einen Schrägstellungsbetrag erzeugt werden, wenn der Steuerknüppel 45 in V-Achsen-Richtung geneigt wird. Dementsprechend dienen der resultierende X-Achsen- und Y-Achsen-Vektor, die durch die Zählwerte der Zähler 444X und 444Y bestimmt sind, dazu, eine Bewegungsrichtung und eine Koordinatenposition des Spielerobjekts oder einer Heldfigur oder eines Laufzeigers zu bestimmen. Im übrigen werden die Zähler 444X und 444Y rockgesetzt, wenn von der Rücksetzsignalerzeugungsschaltung 447 bei Einschalten des Betriebs ein Rücksetzsignal geliefert wird oder von der Schaltersignalerfassungsschaltung 443 durch gleichzeitiges Drucken zweier vorbestimmter Schalter ein Rücksetzsignal geliefert wird.
-
Die Schaltersignalerfassungsschaltung 443 antwortet auf einen von der Steuerschaltung 442 in einem Intervall mit einer konstanten Periode (z. B. einem 1/30-Sekunden-Intervall als TV-Bildperiode) gelieferten Schalterzustandsausgabebefehl, um ein in Abhängigkeit vom Druckzustand des Kreuzschalters 46 und der Schalter 47A–47Z veränderliches Signal zu lesen. Das Lesesignal wird an die Steuerschaltung 442 geliefert. Die Steuerschaltung 442 antwortet auf ein Auslesebefehlssignal für Betätigungszustandsdaten von der Steuerorgan-Steuerschaltung 17, um in einem vorbestimmten Datenformat die Betätigungszustandsdaten betreffend die Schalter 47A–47Z sowie die Zählwerte der Zähler 444X und 444Y an die Sendeschaltung 445 zu liefern. Die Sendeschaltung 445 wandelt das von der Steuerschaltung 442 ausgegebene parallele Signal in ein serielles Signal um und übermittelt es über eine Umwandlungsschaltung 43 und eine Signalleitung 42 an die Steuerorgan-Steuerschaltung 17. Die Steuerschaltung 442 ist über die Steuerknüppelanschluß-Steuerschaltung 446 mit einem Adreßbus und einem Datenbus sowie mit einem Anschlußverbinder 46 verbunden. Die Steuerknüppelanschluß-Steuerschaltung 446 führt nach Maßgabe eines Befehls von der CPU 11 eine Dateneingabe-/-ausgabesteuerung (oder eine Sende-/Empfangssteuerung) durch, wenn der Vibrationskassetteneinsatz 50 mit dem Anschlußverbinder 46 verbunden ist.
-
Der Vibrationskassetteneinsatz 50 ist so strukturiert, daß ein RAM 51 mit dem Adreßbus und dem Datenbus verbunden ist und dieses RAM 51 mit einer Batterie 52 verbunden ist. Das RAM 51 ist ein RAM mit einer Kapazität (z. B. 256 kBit), die beispielsweise kleiner als die Hälfte der über den Adreßbus zugreifbaren maximalen Speicherkapazität ist. Das RAM 51 soll spielbezogene Sicherungsdaten speichern und hält wegen der Anlegung der elektrischen Energie der Batterie 52 die Sicherungsdaten auch dann, wenn der Vibrationskassetteneinsatz 50 von dem Anschlußverbinder 46 abgetrennt ist. In dem Vibrationskassetteneinsatz 50 ist eine Vibrationserzeugungsschaltung 53 angeordnet.
-
Es wird nun mit Bezug auf 5 der Vibrationskassetteneinsatz im Detail erläutert. Der Vibrationskassetteneinsatz 50 umfaßt ein Gehäuse 501 sowie einen an dem Gehäuse 501 angebrachten Rückdeckel 502. Der von dem Gehäuse 501 und dem Rückdeckel 502 gebildete Vibrationskassetteneinsatz 50 ist demontierbar in einem Öffnungsbereich des in 1 gezeigten Steuerorgans 40 angebracht.
-
In dem Gehäuse 501 ist ein Substrat 503 aufgenommen. Auf dem Substrat 503 sind neben dem vorgenannten RAM 51 und der Sicherungsbatterie 52 eine Batterie 504 sowie eine Treiberschaltung 505 angeordnet, die Bestandteil der Vibrationserzeugungsschaltung 53 der 4 sind. Das Substrat 503 weist in einem Randbereich eine Vielzahl von Anschlüssen 506 auf, und zwar so, daß diese Anschlüsse 506 mit einem Verbinder (nicht gezeigt) verbindbar sind, der in dem Öffnungsbereich des Steuerorgans 40 ausgebildet ist. Über diese Anschlüsse 506 werden von der CPU 11 (2), d. h. der Steuerorgan-Steuerschaltung 17 des Videospielgeräts 10, gelieferte Daten und Adressen empfangen.
-
An dem Rückdeckel 502 ist eine Vibrationsquelle 507 befestigt, die Bestandteil der Vibrationserzeugungsschaltung 53 ist. Die Vibrationsquelle 507 verwendet bei dieser Ausführungsform einen Motor zur Erzeugung von Vibrationen. Es ist jedoch selbstverständlich möglich, neben einem Motor andere Vorrichtungen, etwa ein Solenoid, zu verwenden, um durch die Anlegung von Energie Vibrationen zu erzeugen. Im übrigen sind ”FM16”, ”FM23”, ”FM25”, ”FM29” oder ”CM-5”, die von Tokyo Parts Industry Co., Ltd. hergestellt werden, als Vibrationserzeugungsmotor erhältlich. Wo ein ”FM”-Motor verwendet wird, ist ein Exzenterglied an einer in einem zylindrischen Gehäuse eingebauten Drehwelle angebracht. Wenn die Drehwelle gedreht wird, rotiert das Exzenterglied und erzeugt Vibrationen an dem Gehäuse. Wenn ein ”CM”-Motor verwendet wird, ist eine Ankerspule exzentrisch angeordnet. Durch Drehen des Ankers werden Vibrationen hervorgerufen. Wenn im übrigen ein Solenoid verwendet wird, treten Schwingungen aufgrund der Hin- und Herbewegung eines in dem Solenoid angeordneten Magnetkerns auf.
-
In jedem der Fälle wird die in obiger Weise ausgebildete Vibrationsquelle 507 mit Energie von der Batterie 504 versorgt und von der Treiberschaltung 505 angesteuert, wodurch Vibrationen hervorgerufen werden. Die von der Oszillationsquelle 507 verbrauchte Energie ist vergleichsweise groß. Dementsprechend ist bei dieser Ausführungsform die Batterie 504 gesondert von der Sicherungsbatterie 52 (4) vorgesehen. Hierdurch bedingt kann ein lösbar an dem Rückdeckel 502 angebrachter Batteriedeckel 508 bei verbrauchter Batterie 504 geöffnet werden, um die Batterie 504 gegen eine neue austauschen zu können. Es versteht sich, daß die beiden Batterien 52 und 504 zur gemeinsamen Verwendung ein und dieselbe sein können.
-
In einem nicht gezeigten Steuerorgankabel kann zusätzlich eine Energieleitung enthalten sein, so daß vom Hauptkörper der Bildverarbeitungsvorrichtung oder dem Videospielgerät 10 über die Anschlüsse 506 Energie über die Energieleitung zu der Vibrationsquelle 507 geliefert werden kann. In einem solchen Fall ist es überflüssig zu sagen, daß die Kapazität der Energieleitung unter Berücksichtigung der für die Vibrationsquelle 507 benötigten Energie geeignet festgelegt ist.
-
Die Vibrationsquelle 507 ist bei dieser Ausführungsform an dem Rückdeckel 502 angebracht, so daß die durch die Vibrationsquelle 507 hervorgerufenen Vibrationen ohne Dämpfung unmittelbar an die Hand eines Spielers weitergegeben werden. Dabei werden die von der Vibrationsquelle 507 erzeugten Schwingungen über den Rückdeckel 502 auf den in Kontakt mit dem Rückdeckel 502 stehenden Öffnungsbereich des Steuerorgans 40 übertragen, wodurch das Steuerorgan 40 seinerseits in Schwingungen versetzt wird. Als Folge werden die von der Vibrationsquelle 507 erzeugten Vibrationen auf die das Steuerorgan 40 greifende Hand des Spielers übertragen. Es ist daher möglich, die Vibrationsquelle 507 an einer beliebigen Stelle innerhalb des Gehäuses 501 anzuordnen, vorausgesetzt, daß die Vibrationen der Vibrationsquelle 507 über das Steuerorgan 40 auf die Hand des Spielers übertragen werden.
-
Diese Ausführungsform ordnet die Vibrationsquelle 507 zudem dadurch in dem Steuerorgan 40 an, daß der Vibrationskassetteneinsatz 50 an dem Steuerorgan 40 angebracht wird. Allerdings kann die Vibrationserzeugungsschaltung 53 (4), d. h. die Vibrationsquelle 507, die Treiberschaltung 505, die Batterie 504 usw., in das Gehäuse des Steuerorgans 40 eingebaut sein, ohne den Vibrationskassetteneinsatz 50 zu verwenden.
-
Es wird nun unter Bezugnahme auf 6 die Treiberschaltung 505 im Detail erläutert, die ein Bestandteil der Vibrationserzeugungsschaltung 53 ist. Die Treiberschaltung 505 umfaßt einen Decoder mit einem NICHT-UND-Gatter 510. Dieses NICHT-UND-Gatter 510 erhält über einen Adreßbus, d. h. die Anschlüsse 506 (5), Adreßdaten A2–A14 von der CPU 11 (2) des Videospielgeräts 10. Wenn bei dem Spielsystem dieser Ausführungsform sämtliche Adressen A0–A15 auf ”1” sind, d. h. wenn die CPU 11 einen Adreßbereich FFFF bestimmt, wird ein Vibrationsmodus begründet, um Daten von der CPU 11 zur Ansteuerung der Vibrationsquelle 507 auszugeben. Dies bedeutet, daß der Ausgang des Decoders, also des NICHT-UND-Gatters 510, ”0” wird, wenn die CPU-Adresse FFFF angegeben wird. Diese Ausgabe des NICHT-UND-Gatters 510 wird an ein NICHT-UND-Gatter 511 geliefert. Da das NICHT-UND-Gatter 511 ferner mit einem Schreibsignal WE und einem Chipfreigabesignal CE von der CPU 11 beliefert wird, antwortet das NICHT-UND-Gatter 511 auf die Ausgabe des NICHT-UND-Gatters 510 und die Signale WE und CE, indem es ein Verriegelungssignal an ein Verriegelungsglied 512 liefert. Wenn folglich die CPU 11 die FFFF-Adresse angibt, also im Vibrationsmodus ist, verriegelt das Verriegelungsglied 512 die CPU-Dateninformation D0 über den Datenbus oder die Anschlüsse 506. Diese CPU-Dateninformation D0 wird als ”1” ausgegeben, wenn Vibrationen durch die Vibrationsquelle 507 hervorgerufen werden sollen, und als ”0”, wenn keine Vibrationen erzeugt werden sollen. Das Verriegelungsglied 512 weist einen Ausgang auf, welcher über einen Widerstand 513 mit der Basis eines Treibertransistors 514 verbunden ist. Wenn der Ausgang des Verriegelungsglieds 512 ”1” ist, ist der Transistor 514 eingeschaltet, wogegen der Transistor 514 ausgeschaltet ist, wenn der Ausgang ”0” ist. Das Einschalten des Transistors 514 bewirkt den Fluß eines Treiberstroms von der Batterie 504 zu der Vibrationsquelle 507 (Vibrationsmotor). Auf diese Weise werden Vibrationen durch die Vibrationsquelle 507 erzeugt.
-
7 ist ein Speicherplan, der einen Speicherraum des in der ROM-Kassette 20 (1) enthaltenen externen ROM 21 zeigt. Das externe ROM 21 umfaßt beispielsweise eine Mehrzahl von Speicherbereichen (nachfolgend lediglich als ”Bereiche” bezeichnet), etwa einen Programmbereich 22, einen Zeichencodebereich 23, einen Bilddatenbereich 24 sowie einen Tonspeicherbereich 25, wie dies in 7 gezeigt ist, um so verschiedene Programme in einer festgelegten Weise im voraus abzuspeichern.
-
Der Programmbereich 22 ist mit Programmen besetzt, welche zur Verarbeitung von Spielbildern, Spieldaten u. dgl. nach Maßgabe eines Spielinhalts benötigt werden. Speziell umfaßt der Programmbereich 22 Speicherbereiche 22a–22h, um Betriebsprogramme für die CPU 11 in einer festgelegten Weise im voraus abzuspeichern. Ein Hauptprogrammbereich 22a ist beispielsweise mit einem in der später erläuterten 9 gezeigten Hauptroutinenabarbeitungsprogramm für ein Spiel besetzt. Ein Steueranschlußdatenbestimmungsprogrammbereich 22b ist mit einem Programm zur Verarbeitung von Betätigungsdaten des Steuerorgans 40 besetzt. Ein Schreibprogrammbereich 22c ist mit einem Schreibprogramm besetzt, mittels dessen die CPU 11 bewirkt, daß der RCP 12 einen Schreibvorgang zum Beschreiben eines Bildspeichers und eines Z-Puffers durchführt. Beispielsweise ist der Schreibprogrammbereich 22c mit einem Programm besetzt, um in einen Bilddatenbereich 201 (8) des RAM 14 Chrominanzdaten als Bilddaten einzuschreiben, die auf Beschaffenheitsdaten beruhen, und zwar für eine Mehrzahl von beweglichen Objekten oder Hintergrundobjekten, welche in einer Hintergrundszene anzuzeigen sind. Ein Bewegungsprogrammbereich 22d ist mit einem Steuerprogramm besetzt, mittels dessen die CPU 11 bewirkt, daß der RCP 12 die Position eines sich bewegenden Körpers in einem dreidimensionalem Raum variiert. Ein Kamerasteuerprogrammbereich 22e ist mit einem Kamerasteuerprogramm besetzt, welches steuert, in welcher Richtung und/oder Position die beweglichen Objekte einschließlich des Spielerobjekts oder die Hintergrundobjekte in dem dreidimensionalem Raum abzubilden sind. Ein Spielerobjektprogrammbereich 22f ist mit einem Programm besetzt, welches die Anzeige eines seitens des Spielers zu bedienenden Objekts steuert. Ein Feindobjektprogrammbereich 22g ist mit einem Programm besetzt, welches die Anzeige eines das Spielerobjekt attackierenden Feindobjekts steuert. Ein Hintergrundprogrammbereich 22h ist mit einem Hintergrunderzeugungsprogramm besetzt, mittels dessen die CPU bewirkt, daß der RCP 12 eine dreidimensionale Hintergrundszene erschafft.
-
Der Zeichencodebereich 23 ist ein Bereich, um eine Mehrzahl von Zeichencodearten zu speichern, beispielsweise eine Mehrzahl von Arten von Zeichenpunktdaten, die Codes entsprechen. Die in dem Zeichencodebereich 23 gespeicherten Zeichencodedaten werden zur Anzeige eines Anweisungstextes für den Spieler im Verlauf eines Spiels benutzt.
-
Der Bilddatenbereich 24 wird mit Bilddaten, etwa Koordinatendaten einer Vielzahl von Polygonen für jedes der Hintergrundobjekte und/oder der beweglichen Objekte, und mit Beschaffenheitsdaten und außerdem mit einem Anzeigesteuerprogramm besetzt, um diese Objekte stationär an einer vorbestimmten Stelle oder in einem Bewegungszustand anzuzeigen.
-
Der Tonspeicherbereich 25 wird mit Tondaten, etwa Sätzen zur tonalen Ausgabe einer Mitteilung, Toneffekten, Spielmusikstücken, usw., in einer für eine Szene geeigneten Weise besetzt.
-
Das Speichermedium oder die externe Speichervorrichtung kann im übrigen verschiedene Arten von Speichermedien, etwa CD-ROMs oder Magnetplatten, alternativ oder zusätzlich zu der ROM-Kassette 20 verwenden. In einem solchen Fall ist ein Plattenlaufwerk 29 (2) vorgesehen, um erforderlichenfalls verschiedene Daten (inklusive Programmdaten und Daten zur Bildpräsentation) für ein Spiel von einem optischen oder magnetischen Plattenspeichermedium, etwa einer CD-ROM oder einer Magnetplatte, zu lesen oder darauf zu schreiben. Das Plattenlaufwerk 29 liest ähnlich dem externen ROM 21 Daten aus einer Programmdaten magnetisch oder optisch speichernden magnetischen bzw. optischen Platte aus und übermittelt diese Daten an das RAM 14.
-
8 ist ein Speicherplan, der einen Speicherraum des RAM 14 zeigt. Das RAM 14 umfaßt einen Bilddatenbereich 201 und einen Programmdatenbereich 202. Der Bilddatenbereich 201 umfaßt, obwohl dies nicht gezeigt ist, einen Einzelbildspeicher zum zeitweiligen Speichern eines Einzelbilds von Bilddaten sowie einen Z-Pufferbereich zum Speichern der Tiefendaten auf einer Punktbasis in dem Einzelbildspeicherbereich. Der Programmdatenbereich 202 ist ein Bereich zum zeitweiligen Speichern eines Programms. Die dem Bereich des ROM 21 zugeordneten Programmdaten (7) werden, soweit erforderlich, vorübergehend in dem Programmdatenbereich 202 gespeichert, so daß die CPU 11 und der RCP 12 (2) durch Zugriff auf den Programmbereich des RAM 14 mit einem Spiel fortfahren können. In ähnlicher Weise ist der Bilddatenbereich 201 ein Bereich, um, soweit erforderlich, die in dem ROM 21 gespeicherten Bilddaten vorübergehend zu speichern, auf die seitens der CPU 11 oder des RCP 12 direkt zugegriffen werden kann. Dies bedeutet, daß der Bilddatenbereich 201 Koordinatendaten und Beschaffenheitsdaten einer Vielzahl von Polygonen speichert, die stationäre Objekte und/oder bewegliche Objekte bilden, welche zur Spielbildanzeige in dem externen ROM 21 gespeichert sind. Vor der Bildverarbeitung werden beispielsweise Daten betreffend einen Kurs oder Stufen von dem externen ROM 21 zu dem Bilddatenbereich 201 übertragen.
-
Ein Steuerorgandatenspeicherbereich 141 speichert vorübergehend Betätigungszustandsdaten, die für einen von dem Steuerorgan 40 gelesenen Betätigungszustand repräsentativ sind.
-
Ein Steuerzeichen-/Registerbereich 142 setzt ferner Steuerzeichen, wie erforderlich, oder speichert Variablen oder Konstanten, während die CPU 11 ein Programm ausführt. Die Steuerzeichen, die in diesem Steuerzeichen-/Registerbereich 142 gesetzt werden können, umfassen ein Vibrationsspielsteuerzeichen F1, ein Aufeinandertreffen-Steuerzeichen F2, ein Steuerzeichen F3 für ein vorhergehendes Einzelbild sowie ein Vibrationssteuerzeichen F4.
-
Das Vibrationsspielsteuerzeichen F1 soll darstellen, ob ein gerade gespieltes Spiel eine Szene enthält, bei der durch die Vibrationsquelle 507 des Vibrationskassetteneinsatzes 50 Vibrationen zu erzeugen sind. Das Vibrationsspielsteuerzeichen F1 wird auf ”1” gesetzt, wenn eine solche Szene existiert, und auf ”0” in anderen Fällen als diesem Fall. Das Aufeinandertreffen-Steuerzeichen F2 wird auf ”1” gesetzt, wenn zwei Objekte gemäß einer später erläuterten Routine zur Feststellung eines Aufeinandertreffens (11) kollidieren oder einander berühren, und auf ”0” für andere Fälle als diesen Fall. Das Steuerzeichen F3 für das vorherige Einzelbild legt fest, ob das Aufeinandertreffen-Steuerzeichen F2 bei einem um ein Einzelbild auf der Anzeige 30 vorhergehenden Einzelbild auf ”1” gesetzt war, d. h. ob zwei Objekte bei einem unmittelbar vorhergehenden Einzelbild miteinander kollidierten oder einander berührten. Das Steuerzeichen F3 für das vorhergehende Einzelbild wird auf ”1” gesetzt, wenn beim unmittelbar vorhergehenden Einzelbild die Feststellung eines Aufeinandertreffens erfolgte, und auf ”0” in anderen Fällen als diesem Fall. Das Vibrationssteuerzeichen F4 wird auf ”1” gesetzt, wenn seitens der Vibrationsquelle 507 Vibrationen zu erzeugen sind, und auf ”0” in anderen Fällen als diesem Fall.
-
Eine Variable n_add ist ein Inkrementwert für jedes Einzelbild, um einen Zählwert n eines Zählers CT in einer nachher erläuterten Vibrationserzeugungszustandserfassungsroutine (10) zu erhöhen, während eine Variable n_add_m ein durch den Inkrementwert n_add variierter Wert ist. Der Zähler CT weist eine Datengröße von 32 Bit auf, so daß er die Vibrationsquelle 507 (5) zur Erzeugung von Vibrationen antreibt, wenn sein Zählwert n wie bei einem 256-Zähler (8 Bit Binärzähler) ”255” übersteigt. Variablen ax, ay und az sind Beschleunigungskomponenten in Richtung einer X-Achse, Y-Achse bzw. Z-Achse des Spielerobjekts. Variablen fx, fy und fz sind Werte der mit Konstanten accx, accy und accz multiplizierten Beschleunigungskomponenten ax, ay bzw. az.
-
Die Variablen n_add und n_add_m können Konstanten sein. Bei der vorliegenden Ausführungsform ist die Variable n_add auf ”255” oder ”150” festgelegt. Die Variable n_add_m ist dagegen beispielsweise auf ”20” oder ”10” festgelegt.
-
9 ist ein Hauptflußdiagramm für das Videospielsystem der vorliegenden Ausführungsform. Bei Einschalten der Energie versetzt die CPU das Videospielgerät 10 in einem ersten Schritt S1 in einen vorbestimmten Anfangszustand. Beispielsweise überträgt die CPU 11 aus den in dem Programmbereich 22 des externen ROM 21 gespeicherten Spielprogrammen ein Startprogramm zu dem Programmbereich 202 des RAM 14 und setzt jeden Parameter auf einen Anfangswert, wonach die Schritte der 9 nacheinander ausgeführt werden.
-
Die Operation des Hauptflußdiagramms der 9 wird beispielsweise zu jedem Einzelbild (1/60 Sekunde) oder alle zwei oder drei Einzelbilder ausgeführt, wobei Schritte S2–S14 wiederholt ausgeführt werden, bevor der Weg freigemacht ist.
-
Geht das Spiel zu Ende, ohne den Weg erfolgreich frei zu machen, wird in einem dem Schritt S14 folgenden Schritt S15 ein Spielendeprozeß durchgeführt. Wenn der Weg erfolgreich freigemacht wurde, geht der Prozeß vom Schritt S13 zum Schritt S1.
-
Dies bedeutet, daß im Schritt S1 eine Anzeige für einen Spielwegbildschirm und/oder einen Wegwählbildschirm erfolgt. Sofern jedoch ein Spiel nach Einschalten der Energie gestartet wird, wird ein erster Wegbildschirm angezeigt. Wenn der erste Weg freigemacht ist, wird ein nächster Weg festgelegt.
-
Nach dem Schritt S1 wird in einem Schritt S2 ein Steuerorganprozeß durchgeführt. In diesem Prozeß wird erfaßt, ob der Steuerknüppel 45, der Kreuzschalter 46 oder die Schalter 47A–47Z des Steuerorgans 40 betätigt sind oder nicht. Erfaßte Daten (Steuerorgandaten) über diesen Betätigungszustand werden eingelesen, und die so gelesenen Steuerorgandaten werden in den Steuerorgandatenbereich 141 des RAM 14 eingeschrieben.
-
In einem Schritt S3 wird ein Prozeß zur Anzeige des Spielerobjekts durchgeführt. Dieser Prozeß dient grundsätzlich dazu, die Position, Richtung, Form und Lage des Spielerobjekts in Abhängigkeit von einem Betätigungszustand des von dem Spieler manipulierten Steuerknüppels 45 und vom Vorhandensein oder Fehlen von Attacken seitens eines Feinds zu variieren. Beispielsweise werden zu variierende Polygondaten durch Berechnung auf Basis eines von dem Speicherbereich 22f (7) des externen ROM 21 übermittelten Programms, von seitens des Speicherbereichs 24 übermittelten Polygondaten des Spielerobjekts und von Steuerorgandaten, d. h. einem Betätigungszustand des Steuerknüppels 45, ermittelt. Mehreren auf diese Weise erhaltener Polygone werden durch Bilddaten bewirkte Farben verliehen.
-
In einem Schritt S4 wird ein Kameraprozeß durchgeführt. Beispielsweise erfolgt eine Berechnung für einen Blickpunkt auf die jeweiligen Objekte, so daß bei Betrachtung durch einen Kamerasucher eine Blicklinie oder ein Blickfeld unter einem Winkel steht, den der Spieler mit dem Steuerknüppel 45 bestimmt.
-
In einem Schritt S5 wird ein Feindobjektprozeß durchgeführt. Dieser Prozeß wird auf Basis der von dem Speicherbereich 22g und dem Speicherbereich 24 (7) übermittelten Polygondaten eines Feindobjekts und nach Maßgabe eines teilweise übermittelten Programms durchgeführt. Beispielsweise wird ein Feindobjekt hinsichtlich der Anzeigeposition und/oder der Anzeigeform durch Berechnung der Polygondaten so bestimmt, daß sich das Feindobjekt bewegt, um das Spielerobjekt zu attackieren oder dessen Vorwärtsbewegung zu blockieren, während die Bewegung des Spielerobjekts beurteilt wird, wodurch ein in dieser Weise variiertes Feindobjektbild angezeigt wird. Hierdurch bedingt wird sich das Feindobjekt so bewegen, daß es einen bestimmten Effekt auf das Spielerobjekt hat.
-
In einem Schritt S6 wird ein Hintergrundobjektprozeß (Stationärobjektprozeß) durchgeführt. Dieser Prozeß dient zur Berechnung der Anzeigeposition und -form eines stationären Objekts auf Grundlage eines von dem Speicherbereich 22h teilweise übermittelten Programms und auf Grundlage von seitens des Speicherbereichs 24 (7) übermittelten Polygondaten des stationären Objekts.
-
In einem Schritt S7 führt der RSP 122 einen Wiedergabe- bzw. Umsetzungsprozeß durch. Dies bedeutet, daß der RCP 12 unter Steuerung der CPU 11 einen Umwandlungsprozeß (Koordinatentransformationsprozeß und Einzelbildspeicherwiedergabeprozeß) an Bilddaten zur Anzeige eines beweglichen Objekts und eines stationären Objekts auf Grundlage der jeweiligen Beschaffenheitsdaten für das bewegliche Objekt, beispielsweise ein Feindobjekt, das Spielerobjekt, usw., und für das stationäre Objekt, etwa einen Hintergrund, durchführt, die in dem Bilddatenbereich 201 des RAM 14 gespeichert sind. Speziell werden einer Mehrzahl von Polygonen für jedes der beweglichen Objekte und der stationären Objekte Farben gegeben.
-
In einem Schritt S8 führt die CPU 11 einen Tonprozeß auf Grundlage von Tondaten durch, etwa Botschaften, Musikstücken, Toneffekten, usw.
-
In einem nächsten Schritt S9 führt die CPU 11 einen Vibrationszustandserfassungsprozeß durch. Dies bedeutet, daß der RCP 12 in diesem Schritt S9 die Subroutine der 10 ausführt, und zwar auf Grundlage der Bilddaten des Spielerobjekts und des Feindobjekts oder des stationären Objekts oder auf Grundlage der von dem Steuerorgan 40 gelieferten Betätigungsdaten, wodurch erfaßt wird, ob ein Zustand, in dem seitens der Vibrationsquelle 507 Vibrationen erzeugt werden sollen, hergestellt ist oder nicht. Die Vibrationszustandserfassungssubroutine wird im übrigen anhand der 10 später im einzelnen erläutert.
-
In einem nächsten Schritt S10 antwortet die CPU 11 auf die Erfassung eines Vibrationserzeugungszustands im Schritt S9, um die in 12 gezeigte Subroutine auszuführen, wodurch durch die Vibrationsquelle 507 Vibrationen hervorgerufen werden. Dieser Schritt S10 wird anhand der 12 ebenfalls im Detail erläutert.
-
In einem Schritt S11 liest die CPU 11 die in dem Einzelbildspeicherbereich des RAM 14 als Folge des Umsetzungsprozesses im Schritt S7 gespeicherten Bilddaten. Dies bewirkt, daß das Spielerobjekt, das bewegliche Objekt, das stationäre Objekt u. dgl. auf einem Anzeigeschirm der Anzeige 30 (1, 2) angezeigt werden.
-
In einem Schritt S12 werden die im Schritt S8 vom RCP 12 tonmäßig verarbeiteten Tondaten ausgelesen, um hierdurch einen Ton auszugeben, etwa ein Musikstück, einen Toneffekt, ein Gespräch o. dgl.
-
In einem Schritt S13 wird ermittelt, ob der Weg freigemacht ist oder nicht (Wegfreimachungserfassung). Wenn der Weg nicht freigemacht ist, wird sodann in einem Schritt S14 ermittelt, ob das Spiel zu Ende ist oder nicht. Falls das Spiel nicht zu Ende ist, geht der Prozeß zurück zum Schritt S2, um die Schritte S2 bis S14 zu wiederholen, bis ein Zustand des Spielendes erfaßt wird. Falls ein Spielendezustand erfaßt wird, bei dem eine Zahl dem Spieler gestatteter Fehler eine vorbestimmte Häufigkeit erreicht oder das Leben des Spielerobjekts um einen vorbestimmten Betrag aufgebraucht ist, wird sodann in einem anschließendem Schritt S15 ein Spielendeprozeß durchgeführt, um eine Spielfortsetzung, die Abspeicherung von Sicherungsdaten o. dgl. zu wählen.
-
Falls im übrigen im Schritt S13 der Zustand erfaßt wird, daß der Weg freigemacht ist (z. B. Besiegen eines Herrschers), geht der Prozeß nach der Wegfreimachungsverarbeitung zurück zum Schritt S1.
-
Bezugnehmend auf 10 ermittelt die CPU 11 in einem ersten Schritt S101 der Subroutine zur Erfassung eines Vibrationserzeugungszustands, ob das Spielerobjekt auf ein beeinflussendes Objekt oder Hindernis (andere bewegliche Objekte, stationäre Objekte wie Boden, Seeoberfläche, Wand, Feindobjekte, angreifende Objekte, usw.) trifft (kollidiert oder berührt) oder nicht. Diese Begegnungserfassung wird nach Maßgabe der Subroutine der 11 durchgeführt.
-
In einem Schritt S201 in 11 ermittelt die CPU 11, ob ABS(OBJ2x – OBJ1x) ≤ OBJ1r erfüllt ist oder nicht, also ob zwei Objekte aufeinander in einem X-Koordinatensystem treffen oder nicht. OBJ1 ist ein Objekt, von dem festgestellt werden soll, ob auf es getroffen wird, was bei der vorliegenden Ausführungsform das Spielerobjekt ist. OBJ2 ist ein sich zu OBJ1 hin bewegendes Objekt, was bei der vorliegenden Ausführungsform ein Begleitobjekt, ein Feindobjekt, ein stationäres Objekt oder ein von dem Feindobjekt abgeschossenes Angriffsobjekt ist. OBJ1x ist ein X-Koordinatenwert von OBJ1, während OBJ2x ein X-Koordinatenwert von OBJ2 ist. OBJ1x und OBJ2x können auf einer Spielraumkoordinate oder einer Spielerkoordinate liegen, vorausgesetzt, daß sie X-Koordinatenwerte ein und desselben Koordinatensystems sind. ABS () stellt den Absolutwert der Ziffer innerhalb () dar. OBJ1r ist ein Wert, der für die halbe Länge einer Seite eines Würfels repräsentativ ist, wenn OBJ1 als Würfel angesehen wird. Mit anderen Worten ist OBJ1r ein Wert, der einen Treffbereich für OBJ1 angibt. Wenn ABS(OBJ2x – OBJ1x) ≤ OBJ1r erfüllt ist, geht der Prozeß weiter zu einem Schritt S202.
-
In dem Schritt S202 ermittelt die CPU 11, ob ABS(OBJ2y – OBJ1y) ≤ OBJ1r erfüllt ist oder nicht, also ob zwischen zwei Objekten in einem Y-Koordinatensystem eine Begegnung stattfindet oder nicht. OBJ1y ist ein Y-Koordinatenwert von OBJ1, während OBJ2y ein Y-Koordinatenwert von OBJ2 ist. OBJ1y und OBJ2y können auf einer Spielraumkoordinate oder einer Spielerkoordinate liegen, vorausgesetzt, daß sie Y-Koordinatenwerte ein und desselben Koordinatensystems sind. Wenn ABS(OBJ2y – OBJ1y) ≤ OBJ1r erfüllt ist, rückt der Prozeß vor zu einem Schritt S203.
-
In dem Schritt S203 ermittelt die CPU 11, ob ABS(OBJ2z – OBJ1z) ≤ OBJ1r gilt oder nicht, also ob eine Begegnung zwischen zwei Objekten im Z-Koordinatensystem stattfindet oder nicht. OBJ1z ist ein Z-Koordinatenwert von OBJ1, während OBJ2z ein Z-Koordinatenwert von OBJ2 ist. OBJ1z und OBJ2z können auf einer Spielraumkoordinate oder einer Spielerkoordinate liegen, vorausgesetzt, daß sie Z-Koordinatenwerte ein und desselben Koordinatensystems sind. Wenn ABS(OBJ2z – OBJ1z) ≤ OBJ1r erfüllt ist, geht der Prozeß weiter zu einem Schritt S204.
-
In dem Schritt S204 stellt die CPU 11 fest, daß zwischen OBJ2 und OBJ1 eine Begegnung stattfindet und setzt das Aufeinandertreffen-Steuerzeichen F2 in dem Steuerzeichenbereich 142 des RAM 14 auf ”1”.
-
Wenn dagegen im Schritt 201 ABS(OBJ2x – OBJ1x) ≤ OBJ1r nicht erfüllt ist, kehrt der Prozeß zu einer vorherigen Routine zurück. Wenn in Schritt 202 ABS(OBJ2y – OBJ1y) ≤ OBJ1r nicht erfüllt ist, kehrt der Prozeß zu der vorherigen Routine zurück. Wenn in Schritt S203 ABS(OBJ2z – OBJ1z) ≤ OBJ1r nicht erfüllt ist, kehrt der Prozeß zu der vorherigen Routine zurück.
-
Falls im Schritt S101 in 10 erfaßt wird, daß das Spielerobjekt keinem anderen Objekt begegnet, wenn also im Schritt S101 ”NEIN” festgestellt wird, ermittelt die CPU 11 in einem nächsten Schritt S102, ob der Spieler das Steuerorgan 40 manipuliert, um eine Beschleunigung des Spielerobjekts zu starten, oder nicht. Der Beschleunigungsstart wird beispielsweise durch Drücken des Knopfs 47A (1) bewirkt, wenn das Spielerobjekt ein ”Jet-Ski” bei einem ”Wellenrennen” ist. Wenn das Spielerobjekt ”Mario” ist, erfolgt der Beschleunigungsstart, indem der Steuerknüppel 45 (1) nach vorne gekippt wird. Dementsprechend zieht die CPU 11 in diesem Schritt S102 die Daten in dem Steuerorgan-Datenbereich 141 des RAM 14 hinzu und ermittelt, ob eine Betätigung des Knopfs 47A oder des Steuerknüppels 45 vorliegt oder nicht.
-
Falls im Schritt S102 ”NEIN” bestimmt wird, ermittelt die CPU 11 in einem nächsten Schritt S103, ob sich das Spielerobjekt (”Jet-Ski” bei dem ”Wellenrennen” dieser Ausführungsform) in Kontakt mit der Wasseroberfläche befindet oder nicht. Im Schritt S103 wird die Subroutine zur Erfassung eines Aufeinandertreffens der 11 verwendet, um zu ermitteln, ob sich das Spielerobjekt (”Jet-Ski”) in Kontakt mit der Wasseroberfläche befindet oder nicht.
-
In der in 10 gezeigten Subroutine zur Erfassung eines Vibrationserzeugungszustands erfolgt eine Erfassung im Hinblick auf jeden der drei Vibrationserzeugungszustände, d. h. jeden der Schritte S101, S102 und S103, wie sie oben erläutert wurden. Falls in jedem der Schritte S101, S102 und S103 ”NEIN” bestimmt wird, also falls kein Vibrationserzeugungszustand erfaßt wird, setzt die CPU 11 in einem Schritt S104 in 10 den Registerwert n_add des Steuerzeichen-/Registerbereichs 142 des RAM 14 auf ”0” zurück. Gleichzeitig stellt die CPU 11 in einem nächsten Schritt S105 das Steuerzeichen F3 des Steuerzeichen-/Registerbereichs 142 für das vorhergehende Einzelbild auf ”0”. Dies bedeutet, daß der Zählwert n des Zählers CT für jedes Einzelbild mit ”0” addiert wird, um den Inkrementwert n_add des Zählers CT auf ”0” einzustellen. Mit anderen Worten wird der Zähler CT überhaupt nicht erhöht, wenn in allen Schritten S101, S102 und S103 ”NEIN” bestimmt wird. Wie später erläutert wird, treten Vibrationen auf, wenn der Zählwert des Zählers CT beispielsweise ”255” übersteigt. Dementsprechend werden im obigen Fall keine Schwingungen seitens der Vibrationsquelle 507 erzeugt.
-
Da im übrigen im oben angesprochenen Schritt S101 ”NEIN” festgestellt wird, wird das Steuerzeichen F3 für das vorhergehende Einzelbild im Schritt S105 rückgesetzt.
-
Wenn in einem der Schritte S101, S102 und S103 ”JA” festgestellt wird, wird ein Vibrationserzeugungszustand begründet und ein Vibrationserzeugungsprozeß nach Maßgabe des entsprechenden Vibrationserzeugungszustands durchgeführt.
-
Falls dabei im Schritt S101 festgestellt wird, daß das Spielerobjekt einem anderen Objekt begegnet, werden Schritte S106 bis S110 ausgeführt, um seitens der Vibrationsquelle 507 intensive Vibrationen zu erzeugen. Wird im Schritt S102 ein Beschleunigungsstart erfaßt, werden durch Schritte S111 bis S113 schwache Vibrationen erzeugt. Wenn im Schritt S103 erfaßt wird, daß sich das Spielerobekt (z. B. ”Jet-Ski”) in Kontakt mit der Wasseroberfläche befindet, werden Schritte S114 bis S117 ausgeführt, um schwache Vibrationen zu erzeugen, welche einen Zustand repräsentieren, bei dem der ”Jet-Ski” sich auf Wellen springend bewegt.
-
Wenn in dem zuvor angesprochenen Schritt S101 ”JA” festgestellt wird, wenn also festgestellt wird, daß das Spielerobjekt mit einem anderen Objekt kollidiert oder in Kontakt gelangt, ermittelt die CPU 11, ob das Steuerzeichen F3 für das vorhergehende Einzelbild auf ”0” steht oder nicht. In diesem Schritt S106 wird also festgestellt, ob das Spielerobjekt auch im vorhergehenden Einzelbild mit einem anderen Objekt kollidierte oder nicht. Wenn im Schritt S106 ”JA” festgestellt wird, wenn also festgestellt wird, daß im vorhergehenden Einzelbild keine Kollision oder kein Kontakt des Spielerobjekts stattfand, jedoch im momentanen Einzelbild eine Kollision oder ein Kontakt des Spielerobjekts mit einem anderen Objekt erfaßt wird, setzt die CPU 11 in einem nächsten Schritt S107 den Inkrementwert n_add des Steuerzeichen-/Registerbereichs 142 des RAM 14 beispielsweise auf ”255”, um intensive Vibrationen zu erzeugen.
-
Dies bedeutet, daß in dem Schritt S107 ein größerer Inkrementwert n_add eingestellt wird, um intensive Vibrationen hervorzurufen, wenn das Spielerobjekt mit einem Feindobjekt kollidiert oder mit diesem in Berührung kommt, wie in 13 gezeigt, oder wenn das Spielerobjekt in ein Feindobjekt oder ein stationäres Objekt hineinstößt oder damit in Berührung kommt, wie in 14 gezeigt.
-
Sodann stellt die CPU 11 in einem Schritt S108 einen Änderungswert n_add_m des Inkrementwerts n_add auf ”20” ein. Wenn eine Kollosion oder ein Kontakt mit einem anderen Objekt stattfindet, wird der Inkrementwert n_add im Schritt S107 auf ”255” eingestellt und der Änderungswert n_add_m im Schritt S108 auf ”20” eingestellt, um intensive Vibrationen zu erzeugen. Wenn der Änderungswert n_add_m wertmäßig groß ist, wird der Inkrementwert n_add in kurzer Zeit ”0”, während es lange dauert, bis der Inkrementwert n_add ”0” erreicht, wenn der Änderungswert n_add_m klein ist. Wenn daher der Variationswert n_add_m groß ist, halten die von der Vibrationsquelle 107 hervorgerufenen Vibrationen für eine lange Zeit an. In einem dem Schritt S108 folgenden Schritt S109 setzt die CPU 11 das Steuerzeichen F3 für das vorhergehende Einzelbild auf ”1”. Da im momentanen Einzelbild für das Spielerobjekt eine Begegnung erfaßt wird, wird also das Steuerzeichen F3 für das vorhergehende Einzelbild zu diesem Zeitpunkt auf ”1” gesetzt.
-
Wenn im übrigen in dem zuvor angesprochenen Schritt S106 ”NEIN” erfaßt wird, wenn also das Steuerzeichen F3 für das vorhergehende Einzelbild ”1” ist, wenn also auch im vorangehenden Einzelbild eine Kollosion oder ein Kontakt des Spielerobjekts erfaßt wurde, wird der Inkrementwert n_add in einem Schritt S110 auf ”0” rückgesetzt. Wenn also das Spielerobjekt auch im vorhergehenden Einzelbild ein anderes Objekt berührte oder mit diesem kollidierte, wird der Inkrementwert n_add in dem Schritt S110 zu ”0” gemacht, um ein fortwährendes Auftreten der Vibrationen zu verhindern.
-
Wenn im Schritt S102 ein Beschleunigungsstart des Spielerobjekts erfaßt wird, setzt die CPU 11 in einem nächsten Schritt S111 den Inkrementwert n_add beispielsweise auf ”150”, um schwache Vibrationen zu erzeugen. Wenn demnach eine Beschleunigung des Spielerobjekts gestartet wird, wird der Inkrementwert n_add des Zählers CT auf ”150” eingestellt, was kleiner als der Wert des Schritts S107 ist, um anders als im Fall der oben erläuterten Erfassung eines Aufeinandertreffens vergleichsweise geringe Vibrationen zu erzeugen. Die CPU 11 stellt sodann den Änderungswert n_add_m in einem Schritt S112 auf ”10” ein. In einem Schritt S113 wird das Steuerzeichen F3 für das vorhergehenden Einzelbild zu ”0” gemacht. Dieser Schritt S113 ist also ein Schritt, der auszuführen ist, wenn im zuvor erläuterten Schritt S101 ”NEIN” festgestellt wird; dementsprechend wird das Steuerzeichen F3 für das vorhergehende Einzelbild anders als beim obigen Schritt S109 zu ”0” gemacht.
-
Ferner werden, falls im Schritt S103 erfaßt wird, daß sich das Spielerobjekt, nämlich ”Jet-Ski” bei der vorliegenden Ausführungsform, in Kontakt mit der Wasseroberfläche befindet, in einem nächsten Schritt S114 Multiplikationsberechnungen für die Werte fx, fy und fz vorgenommen. Die CPU 11 be-rechnet in einem Schritt S115 eine Quadratwurzel (Dezimalbruch abgeschnitten) aus ”fx × fx + fy × fy + fz × fz” als Inkrementwert n_add des Zählers CT. In diesen Schritten S114 und S115 werden also die Beschleunigungskomponenten ax, ay und az des Spielerobjekts in X-Achsen-Richtung, Y-Achsen-Richtung bzw. Z-Achsen-Richtung bestimmt, um die Werte fx, fy und fz proportional zu den Beschleunigungskomponenten zu bestimmen. In Abhängigkeit von diesen Proportionalwerten und Multiplikationswerten wird ein Inkrementwert n_add im Bereich von ”0” bis ”255” berechnet. In einem Schritt S116 wird der Änderungswert n_add_m des Inkrementwerts n_add auf beispielsweise ”10” festgelegt. Wenn sich also das Spielerobjekt ”Jet-Ski” in Kontakt mit der Wasseroberfläche befindet, wird der Änderungswert n_add_m auf den relativ kleinen Wert ”10” eingestellt, um für eine vergleichsweise lange Zeit eine Wirkung hervorzurufen. Da im obigen Schritt S101 ”NEIN” bestimmt wurde, wird in diesem Fall auch das Steuerzeichen F3 für das vorhergehende Einzelbild in einem anschließenden Schritt S117 zu ”0” gemacht.
-
In einem ersten Schritt S120 in 12, die eine Vibrationserzeugungssubroutine zeigt, ermittelt die CPU 11, ob das Vibrationsspielsteuerzeichen F1 in dem Steuerzeichen-/Registerbereich 142 des RAM 14 auf ”1” steht oder nicht, ob also ein gerade gespieltes Spiel ein Vibrationen beinhaltendes Spiel ist oder nicht. Falls in diesem Schritt S120 ”JA” bestimmt wird, blickt die CPU 11 auf den Steuerorgandatenbereich 141 des RAM 14 und ermittelt, ob der Vibrationskassetteneinsatz 50 (1, 4) in das Steuerorgan 40 eingeladen ist oder nicht. Wenn das Spiel ein Spiel mit Vibrationen ist und der Vibrationskassetteneinsatz 50 in das Steuerorgan 40 eingeladen ist, ermittelt die CPU 11 in einem nächsten Schritt S122. ob Vibrationen zwangsweise gestoppt werden sollen, trotzdem ein Vibrationserzeugungszustand hergestellt ist, oder nicht, ob also die Vibrationen zurückgestellt werden oder nicht.
-
Falls in diesem Schritt S122 ”NEIN” bestimmt wird, macht die CPU 11 den Zählwert n des Zählers CT in einem nächsten Schritt S123 zu ”n + n_add”. Der Zählwert n des Zählers CT wird also nach Maßgabe des Inkrementwerts n_add erhöht.
-
In einem nächsten Schritt S124 wird der Inkrementwert n_add nach Maßgabe des Änderungswerts n_add_m modifiziert. Der Inkrementwert n_add wird dabei in diesem Schritt S124 bei jedem Einzelbild der Anzeige 30 um den Änderungswert n_add_m gemindert. Demgemäß besitzt der Zählwert n des Zählers CT einen mit Voranschreiten der Einzelbilder abnehmenden Inkrementwert, der Zählwert n nimmt letztlich nicht mehr zu. Mit anderen Worten sind die von der Vibrationsquelle 507 hervorgerufenen Vibrationen anfänglich groß (intensiv) und nehmen nach und nach ab (werden schwächer), bis am Ende keine Vibrationen mehr auftreten.
-
In einem Schritt S125 wird ermittelt, ob der Zählwert n des Zählers CT ”255” überschreitet oder nicht. Falls in diesem Schritt S125 ”JA” festgestellt wird, wird der Zählwert des Zählers CT zu ”n–256” gemacht. Wenn also im Schrit S125 festgestellt wird, daß der Zählwert n des Zählers CT ”255” übersteigt, wird in einem nächsten Schritt S126 ”256” von dem Zählwert n abgezogen. In einem Schritt S127 setzt die CPU 11 das Vibrationssteuerzeichen F4 auf ”1”. Da im obigen Schritt S125 erfaßt wurde, daß der Zählwert n des Zählers CT ”255” übersteigt, wird das Vibrationssteuerzeichen F4 in diesem Schritt S127 auf ”1” gesetzt.
-
In einem nächsten Schritt S128 wird ermittelt, ob das Vibrationssteuerzeichen F4 auf ”1” steht oder nicht. Da Vibrationen erzeugt werden, indem im obigen Schritt S127 das Vibrationssteuerzeichen F4 auf ”1” gesetzt wird, gibt die CPU 11 in einem nächsten Schritt S129 ”1” an alle Adressen A2–A14 bis auf eine Adresse A15 aus und gibt das Schreibsignal sowie das Chipfreigabesignal aus. Das Registrierglied oder NICHT-UND-Gatter 511 (6) besitzt dementsprechend in diesem Schritt S129 ein Ausgangssignal, und das Verriegelungsglied 512 verriegelt das Datenbit D0 der CPU 11. Da in dem Schritt S129 Vibrationen von der Vibrationsquelle 507 erzeugt werden sollen, wird das Datenbit D0 der CPU 11 als ”1” ausgegeben. Demgemäß wird von dem Verriegelungsglied 512 (6) ”1” verriegelt. In Antwort darauf wird der Transistor 514 eingeschaltet, um der Vibrationsquelle oder dem Vibrationsmotor 507 Energie von der Batterie 504 zuzuführen und auf diese Weise Vibrationen in der Vibrationsquelle 507 oder dem Vibrationskassetteneinsatz 50 hervorzurufen, d. h. an dem Steuerogan 40.
-
Wenn im übrigen im Schritt S125 ”NEIN” festgestellt wird, wird das Vibrationssteuerzeichen F4 in einem Schritt S130 auf ”0” rückgesetzt. Wenn also der Zählwert n des Zählers CT ”255” nicht übersteigt, wird das Vibrationssteuerzeichen F4 in einem Rücksetzzustand gehalten.
-
Wenn im Schritt S128 das Vibrationssteuerzeichen F4 nicht auf ”1” steht, wenn also das Vibrationssteuerzeichen F4 auf ”0” steht, gibt die CPU 11 in einem Schritt S131 ”0” an das Datenbit D0 aus, um die Vibrationen zu stoppen. Folglich wird von dem Verriegelungsglied 511 ”0” verriegelt und der Transistor 514 abgeschaltet. Dementsprechend hat die Vibrationsquelle 507 keinen Strom, und von der Vibrationsquelle 507 werden keine Vibrationen erzeugt.
-
Wenn beispielsweise das Spielerobjekt mit einem Feindobjekt oder einem stationären Objekt (
13,
14) kollidiert oder in Kontakt gelangt, wird ”255” als Inkrementwert n_add des Zählwerts n des Zählers CT im Schritt S107 festgelegt und ”20” als Änderungswert n_add_m im Schritt S108 festgelegt. Der Zählwert n des Zählers CT übersteigt ”255” über vier aufeinanderfolgende Einzelbilder hinweg, ausgenommen das erste Einzelbild, wie in Tabelle 1 und
15 gezeigt. Daher wird die Vibrationsquelle
507 kontinuierlich über die aufeinanderfolgenden vier Einzelbilder hinweg angetrieben; anschließend übersteigt der Zählwert n ”255” alle zwei Teilbilder. Die Vibrationsquelle
507 wird alle zwei Einzelbilder angetrieben und erzeugt vergleichsweise intensive Vibrationen. Tabelle 1
| Beispiel für intensive Vibrationen |
Einzelbild | n | n_add | n_add_m | Vibrationssignal |
1 | 255 | 255 | 20 | 0 |
2 | 234 | 235 | 20 | 1 |
3 | 193 | 215 | 20 | 1 |
4 | 132 | 195 | 20 | 1 |
5 | 51 | 175 | 20 | 1 |
6 | 206 | 155 | 20 | 0 |
7 | 85 | 135 | 20 | 1 |
8 | 200 | 115 | 20 | 0 |
9 | 39 | 95 | 20 | 1 |
10 | 114 | 75 | 20 | 0 |
11 | 169 | 55 | 20 | 0 |
12 | 204 | 35 | 20 | 0 |
13 | 219 | 15 | 20 | 0 |
14 | 219 | 0 | 20 | 0 |
15 | 219 | 0 | 20 | 0 |
16 | 219 | 0 | 20 | 0 |
17 | 219 | 0 | 20 | 0 |
18 | 219 | 0 | 20 | 0 |
19 | 219 | 0 | 20 | 0 |
20 | 219 | 0 | 20 | 0 |
-
Wenn jedoch eine Beschleunigung für das Spielerobjekt gestartet wird, werden vergleichsweise schwache Vibrationen erzeugt. Dementsprechend wird ”150” im Schritt S111 als Inkrementwert n_add festgelegt und ”10” im Schritt S112 als Änderungswert n_add_m festgelegt. Folglich überschreitet der Zählwert n in diesem Fall ”255” jedes zweite Einzelbild, wie in Tabelle 2 (
16) gezeigt, so daß die Vibrationsquelle
507 jedes zweite Einzelbild angetrieben wird und die Vibrationen bei den folgenden zwei Einzelbildern ausgesetzt werden. Beim nächsten Einzelbild wird die Vibrationsquelle
507 angetrieben; anschließend werden die Vibrationen für zwei Einzelbilder ausgesetzt. Tabelle 2
| Beispiel für schwache Vibrationen |
Einzelbild | n | n_add | n_add_m | Vibrationssignal |
1 | 150 | 150 | 10 | 0 |
2 | 34 | 140 | 10 | 1 |
3 | 164 | 130 | 10 | 0 |
4 | 28 | 120 | 10 | 1 |
5 | 138 | 110 | 10 | 0 |
6 | 238 | 100 | 10 | 0 |
7 | 72 | 90 | 10 | 1 |
8 | 152 | 80 | 10 | 0 |
9 | 222 | 70 | 10 | 0 |
10 | 26 | 60 | 10 | 1 |
11 | 76 | 50 | 10 | 0 |
12 | 116 | 40 | 10 | 0 |
13 | 146 | 30 | 10 | 0 |
14 | 166 | 20 | 10 | 0 |
15 | 176 | 10 | 10 | 0 |
16 | 176 | 0 | 10 | 0 |
17 | 176 | 0 | 10 | 0 |
18 | 176 | 0 | 10 | 0 |
19 | 176 | 0 | 10 | 0 |
20 | 176 | 0 | 10 | 0 |
-
Wenn also intensive Vibrationen erzeugt werden, wird die Vibrationsquelle 507 über mehrere Einzelbilder hinweg kontinuierlich angetrieben; die Vibrationen werden sodann bei einer Ansteuerung alle zwei Einzelbilder allmählich herabgesetzt. Wenn schwache Vibrationen erzeugt werden sollen, wird die Vibrationsquelle 507 alle zwei Einzelbilder angetrieben; sodann werden die Vibrationen bei einer Ansteuerung alle drei Einzelbilder nach und nach herabgesetzt. Es ist jedoch überflüssig zu sagen, daß der Inkrementwert n_add und der Änderungswert n_add_m, also das obige Vibrationserzeugungsmuster, in beliebiger Weise festgelegt werden können.
-
Im übrigen wird in einem dritten Vibrationserzeugungszustand, d. h. wenn sich das Spielerobjekt (”Jet-Ski”) in Kontakt mit der Wasseroberfläche befindet, der Inkrementwert n_add als Funktion der Beschleunigung des Spielerobjekts festgelegt, wobei in Abhängigkeit von dieser Beschleunigung intensive oder schwache Vibrationen erzeugt werden.
-
Zudem wird bei der vorstehenden Ausführungsform der Zählwert n des Zählers CT nach Maßgabe des Inkrementwerts n_add oder des Änderungswerts n_add_m variiert, indem das Flußdiagramm der 12 ausgeführt wird, um intensive oder schwache Vibrationen zu erzeugen, wie dies in 15 oder 16 gezeigt ist. Wenn der Zählwert n ”255” übersteigt, wird das Vibrationssteuerzeichen F4 auf ”1” gesetzt, um die Vibrationsquelle 507 anzutreiben. Bei der vorliegenden Ausführungsform wird also durch Berechnung in Echtzeit ermittelt, ob seitens der Vibrationsquelle 507 Schwingungen erzeugt werden sollen.
-
Dagegen können aus dem Programmbereich 22a des externen ROM 21 ausgelesene Daten für intensive und schwache Vibrationsmuster auch in dem Steuerzeichen-/Registerbereich 142 des RAM 14 gespeichert werden, wie beispielsweise in 17 gezeigt. Indem diese Vibrationsmusterdaten selektiv ausgelesen werden, kann die Vibrationsquelle 507 auf Grundlage dieser Musterdaten gesteuert werden. Es kann angenommen werden, daß die Daten für ein intensives Vibrationsmuster ein Vibrationssignal ”0111101010000000” in einer Einzelbildfolge von Einzelbildern 1–16 in der vorgenannten Tabelle 1 verwenden. Unterdessen können die Daten für ein schwaches Vibrationsmuster ein Vibrationssignal ”0101001001000000” in einer Einzelbildfolge von Einzelbildern 1–16 in der vorgenannten Tabelle 2 verwenden. Im übrigen können auch Daten für mittlere Vibrationsmuster abgespeichert werden, so wie erforderlich.
-
Beispielsweise wird die Vibrationsquelle 507 dann, wenn im Schritt S101 in 10 eine Kollision oder ein Kontakt des Spielerobjekts erfaßt wird, bei Auslesung der Daten für das intensive Vibrationsmuster nicht durch das erste Einzelbild angetrieben. Allerdings wird die Vibrationsquelle 507 über die folgenden vier Einzelbilder hinweg und dann jedes zweite Einzelbild angetrieben; anschließend wird der Antrieb beendet. Wenn beispielsweise im Schritt S102 in 10 ein Beschleunigungsstart erfaßt wird oder im Schritt S103 ein Kontakt mit der Wasseroberfläche erfaßt wird, werden die Daten für das schwache Vibrationsmuster ausgelesen. Folglich wird die Vibrationsquelle 507 während der ersten vier Einzelbilder zu jedem zweiten Einzelbild angetrieben und sodann jedes dritte Einzelbild angetrieben; anschließend wird der Antrieb beendet.
-
Bei der vorigen Ausführungsform werden Vibrationen von der Vibrationsquelle 507 des in das Steuerorgan 40 eingeladenen Vibrationskassetteneinsatzes 50 erzeugt, wenn das Spielerobjekt auf ein anderes Objekt o. dgl. trifft. Dabei können in zeitlicher Beziehung zu diesen Vibrationen den Spielbildern Schwingungen visuell verliehen werden. In einem solchen Fall können die Spielbildschwingungen auf der Anzeige 30 mit größerer Schnelligkeit wahrgenommen werden als die von dem Vibrationskassetteneinsatz 50 des Steuerorgans 40 hervorgerufenen mechanischen Vibrationen. Demnach können im Schritt S10 in 9 mechanische Vibrationen von dem Vibrationskassetteneinsatz 50 erzeugt werden und anschließend mit einer Verzögerung von ein oder zwei Einzelbildern oder mehr die Spielbilder in den Schritten S4 oder S7 in 9 mit visuellen Schwingungen untermalt werden.
-
Wenn beispielsweise im Schritt S101 der 10 erfaßt wird, daß das Spielerobjekt in Kontakt mit einem anderen Objekt gelangt oder mit diesem kollidiert, vibriert die Anzeige 30 auf dem gesamten Bildschirm, da intensive Schwingungen an den Spielbildern erzeugt werden. In diesem Fall können die visuellen Koordinaten für die zuvor angesprochene Kamera während des Kameraprozesses des Schritts S4 in 9 bitweise variiert werden.
-
Wenn im Schritt S102 oder S103 in 10 ein Zustand zur Erzeugung schwacher Vibrationen erfaßt wird, werden an dem Spielbild schwache Schwingungen angeregt. Es werden dann lediglich dem Spielerobjektbild Schwingungen verliehen, die auf der Anzeige 30 angezeigt werden. In einem solchen Fall kann die das Spielerobjekt bildende Vielzahl an Polygonsätzen in dem Umsetzungsprozeß im Schritt S7 in 9 in einer mittleren Koordinatenposition bitweise variiert werden.
-
Ob einem Spielbild Schwingungen verliehen werden sollen, kann zudem anhand eines Zustands ermittelt werden, ob im Schritt S128 in 12 ”F4 = 1” erfaßt wird. Wenn also das Vibrationssteuerzeichen F4 auf ”1” steht, werden dem Spielbild Schwingungen verliehen, während dann, wenn das Steuerzeichen auf ”0” steht, keine Schwingungen in dem Spielbild erzeugt werden.
-
Obwohl die vorliegende Erfindung im Detail beschrieben und dargestellt wurde, ist es ohne weiteres zu verstehen, daß dies lediglich veranschaulichend und beispielhaft ist und nicht in beschränkender Weise aufzufassen ist.
-
Ein Videospielsystem umfaßt ein Videospielgerät, ein Speichermedium und ein Steuerorgan. Eine in dem Videospielgerät enthaltene zentrale Verarbeitungseinheit (CPU) erfaßt einen Vibrationserzeugungszustand, bei dem ein Spielerobjekt mit einem Feindobjekt oder einem stationären Objekt kollidiert oder in Kontakt gelangt. Bei Erfassung dieses Vibrationserzeugungszustands treibt die CPU eine in dem Steuerorgan enthaltene Vibrationsquelle an, wodurch Vibrationen an dem Steuerorgan erzeugt werden.