以下、本発明の実施の形態を図面を参照して説明する。
まず、遊技機の一例であるパチンコ遊技機の全体の構成について説明する。図1はパチンコ遊技機を正面からみた正面図である。なお、以下の実施の形態では、パチンコ遊技機を例に説明を行うが、本発明による遊技機はパチンコ遊技機に限られず、遊技に応じてあらかじめ決められた個数の遊技媒体が景品として払い出されるスロット機などの他の遊技機に適用することもできる。
パチンコ遊技機1は、縦長の方形状に形成された外枠(図示せず)と、外枠の内側に開閉可能に取り付けられた遊技枠とで構成される。また、パチンコ遊技機1は、遊技枠に開閉可能に設けられている額縁状に形成されたガラス扉枠2を有する。遊技枠は、外枠に対して開閉自在に設置される前面枠(図示せず)と、機構部品等が取り付けられる機構板と、それらに取り付けられる種々の部品(後述する遊技盤を除く。)とを含む構造体である。
図1に示すように、パチンコ遊技機1は、額縁状に形成されたガラス扉枠2を有する。ガラス扉枠2の下部表面には打球供給皿(上皿)3がある。打球供給皿3の下部には、打球供給皿3に収容しきれない遊技球を貯留する余剰球受皿4と遊技球を発射する打球操作ハンドル(操作ノブ)5が設けられている。ガラス扉枠2の背面には、遊技盤6が着脱可能に取り付けられている。なお、遊技盤6は、それを構成する板状体と、その板状体に取り付けられた種々の部品とを含む構造体である。また、遊技盤6の前面には遊技領域7が形成されている。
遊技領域7の中央付近には、それぞれが演出用の飾り図柄を可変表示する複数の可変表示部を含む画像表示装置(可変表示装置)9が設けられている。画像表示装置9には、例えば「左」、「中」、「右」の3つの可変表示部(図柄表示エリア)がある。画像表示装置9は、特別図柄表示器8による特別図柄の可変表示期間中に、装飾用(演出用)の図柄としての飾り図柄の可変表示を行う。飾り図柄の可変表示を行う画像表示装置9は、演出制御基板に搭載されている演出制御用マイクロコンピュータと描画プロセッサとによって制御される。画像表示装置9の下部には、始動入賞口14に入った有効入賞球数すなわち保留記憶(始動記憶または始動入賞記憶ともいう。)数を表示する4つの特別図柄保留記憶表示器18が設けられている。特別図柄保留記憶表示器18は、保留記憶数を入賞順に4個まで表示する。特別図柄保留記憶表示器18は、始動入賞口14に始動入賞があるごとに、点灯状態のLEDの数を1増やす。そして、特別図柄保留記憶表示器18は、特別図柄表示器8で可変表示が開始されるごとに、点灯状態のLEDの数を1減らす(すなわち1つのLEDを消灯する)。具体的には、特別図柄保留記憶表示器18は、特別図柄表示器8で可変表示が開始されるごとに、点灯状態をシフトする。なお、この例では、始動入賞口14への入賞による始動記憶数に上限数(4個まで)が設けられているが、上限数を4個以上にしてもよい。
画像表示装置9の上部には、識別情報としての特別図柄を可変表示する特別図柄表示器(特別図柄表示装置)8が設けられている。この実施の形態では、特別図柄表示器8は、例えば0〜9の数字を可変表示可能な簡易で小型の表示器(例えば7セグメントLED)で実現されている。特別図柄表示器8は、遊技者に特定の停止図柄を把握しづらくさせるために、0〜99など、より多種類の数字を可変表示するように構成されていてもよい。また、画像表示装置9は、特別図柄表示器8による特別図柄の可変表示期間中に、装飾用(演出用)の図柄としての飾り図柄の可変表示を行う。
画像表示装置9の下方には、始動入賞口14を形成する可変入賞球装置15が設けられている。可変入賞球装置15は、ソレノイド16によって開状態とされ、開状態になると、始動入賞口14に遊技球が入賞容易になる。始動入賞口14に入賞した遊技球は、遊技盤6の背面に導かれ、始動口スイッチ14aによって検出される。
可変入賞球装置15の下部には、特定遊技状態(大当り状態)においてソレノイド21によって開状態とされる特別可変入賞球装置20が設けられている。特別可変入賞球装置20は開閉板を有し、開閉板が開放状態に制御されることによって大入賞口(可変入賞球装置)が開放状態になる。特別可変入賞球装置20に入賞した入賞球はカウントスイッチ23で検出される。
ゲート32に遊技球が入賞しゲートスイッチ32aで検出されると、普通図柄表示器10の表示の可変表示が開始される。この実施の形態では、左右のランプ(点灯時に図柄が視認可能になる)が交互に点灯することによって可変表示が行われ、例えば、可変表示の終了時に右側のランプが点灯すれば当りになる。そして、普通図柄表示器10における停止図柄が所定の図柄(当り図柄)である場合に、可変入賞球装置15が所定回数、所定時間だけ開状態になる。普通図柄表示器10の近傍には、ゲート32に入った入賞球数を表示する4つのLEDによる表示部を有する普通図柄始動記憶表示器41が設けられている。ゲート32への入賞がある毎に、普通図柄始動記憶表示器41は点灯するLEDを1増やす。そして、普通図柄表示器10の可変表示が開始される毎に、点灯するLEDを1減らす。
遊技盤6には、複数の入賞口(普通入賞口)29,30,33,39が設けられ、遊技球の入賞口29,30,33,39への入賞は、それぞれ入賞口スイッチ29a,30a,33a,39aによって検出される。各入賞口29,30,33,39は、遊技媒体を受け入れて入賞を許容する領域として遊技盤6に設けられる入賞領域を構成している。なお、始動入賞口14や大入賞口も、遊技媒体を受け入れて入賞を許容する入賞領域を構成する。遊技領域7の左右周辺には、遊技中に点滅表示される装飾ランプ25が設けられ、下部には、入賞しなかった遊技球を吸収するアウト口26がある。また、遊技領域7の外側の左右上部には、効果音を発する2つのスピーカ27が設けられている。遊技領域7の外周には、天枠ランプ28a、左枠ランプ28bおよび右枠ランプ28cが設けられている。さらに、遊技領域7における各構造物(大入賞口等)の周囲には装飾LEDが設置されている。天枠ランプ28a、左枠ランプ28bおよび右枠ランプ28cおよび装飾用LEDは、遊技機に設けられている装飾発光体の一例である。
そして、この例では、左枠ランプ28bの近傍に、賞球払出中に点灯する賞球LED51が設けられ、天枠ランプ28aの近傍に、補給球が切れたときに点灯する球切れLED52が設けられている。上記のように、この実施の形態のパチンコ遊技機1には、発光体としてのランプやLEDが各所に設けられている。さらに、プリペイドカードが挿入されることによって球貸しを可能にするプリペイドカードユニット(以下、単に「カードユニット」ともいう。)が、パチンコ遊技機1に隣接して設置される(図示せず)。
カードユニットには、例えば、使用可能状態であるか否かを示す使用可表示ランプ、カードユニットがいずれの側のパチンコ遊技機1に対応しているのかを示す連結台方向表示器、カードユニット内にカードが投入されていることを示すカード投入表示ランプ、記録媒体としてのカードが挿入されるカード挿入口、およびカード挿入口の裏面に設けられているカードリーダライタの機構を点検する場合にカードユニットを解放するためのカードユニット錠が設けられている。
打球発射装置から発射された遊技球は、打球レールを通って遊技領域7に入り、その後、遊技領域7を下りてくる。遊技球が始動入賞口14に入り始動口スイッチ14aで検出されると、図柄の可変表示を開始できる状態であれば、特別図柄表示器8において特別図柄が可変表示(変動)を始めるとともに、画像表示装置9において飾り図柄が可変表示(変動)を始める。図柄の可変表示を開始できる状態でなければ、始動入賞記憶数を1増やす。
特別図柄表示器8における特別図柄の可変表示、および画像表示装置9における飾り図柄の可変表示は、一定時間が経過したときに停止する。停止時の特別図柄(停止図柄)が大当り図柄(特定表示結果)であると、大当り遊技状態に移行する。すなわち、特別可変入賞球装置20が、一定時間経過するまで、または、所定個数(例えば10個)の遊技球が入賞するまで開放する。
遊技球がゲート32に入賞すると、普通図柄表示器10において普通図柄が可変表示される状態になる。また、普通図柄表示器10における停止図柄が所定の図柄(当り図柄)である場合に、可変入賞球装置15が所定時間だけ開状態になる。さらに、確変状態では、普通図柄表示器10における停止図柄が当り図柄になる確率が高められるとともに、可変入賞球装置15の開放時間と開放回数が高められる。
図2は、主基板(遊技制御基板)31における回路構成の一例を示すブロック図である。なお、図2には、払出制御基板37および演出制御基板80等も示されている。主基板31には、プログラムに従ってパチンコ遊技機1を制御する遊技制御用マイクロコンピュータ(遊技制御手段に相当)560が搭載されている。遊技制御用マイクロコンピュータ560は、ゲーム制御(遊技進行制御)用のプログラム等を記憶するROM54、ワークメモリとして使用される記憶手段としてのRAM55、プログラムに従って制御動作を行うCPU56およびI/Oポート部57を含む。この実施の形態では、ROM54およびRAM55は遊技制御用マイクロコンピュータ560に内蔵されている。すなわち、遊技制御用マイクロコンピュータ560は、1チップマイクロコンピュータである。1チップマイクロコンピュータには、少なくともCPU56のほかRAM55が内蔵されていればよく、ROM54は外付けであっても内蔵されていてもよい。また、I/Oポート部57は、外付けであってもよい。
遊技制御用マイクロコンピュータ560には、さらに、ハードウェア乱数を発生する乱数回路503が内蔵されている。
なお、遊技制御用マイクロコンピュータ560においてCPU56がROM54に格納されているプログラムに従って制御を実行するので、以下、遊技制御用マイクロコンピュータ560(またはCPU56)が実行する(または、処理を行う)ということは、具体的には、CPU56がプログラムに従って制御を実行することである。このことは、主基板31以外の他の基板に搭載されているマイクロコンピュータについても同様である。
また、ゲートスイッチ32a、始動口スイッチ14a、カウントスイッチ23、入賞口スイッチ29a,30a,33a,39aからの検出信号を遊技制御用マイクロコンピュータ560に与える入力ドライバ回路58も主基板31に搭載されている。また、可変入賞球装置15を開閉するソレノイド16、および大入賞口を形成する特別可変入賞球装置20を開閉するソレノイド21を遊技制御用マイクロコンピュータ560からの指令に従って駆動する出力回路59も主基板31に搭載されている。さらに、電源投入時に遊技制御用マイクロコンピュータ560をリセットするためのシステムリセット回路(図示せず)や、大当り遊技状態の発生を示す大当り情報等の情報出力信号をホールコンピュータ等の外部装置に対して出力する情報出力回路(図示せず)も主基板31に搭載されている。
また、遊技制御用マイクロコンピュータ560は、特別図柄を可変表示する特別図柄表示器8、普通図柄を可変表示する普通図柄表示器10、特別図柄保留記憶表示器18および普通図柄保留記憶表示器41の表示制御を行う。
この実施の形態では、演出制御基板80に搭載されている演出制御手段(演出制御用マイクロコンピュータで構成される。)が、中継基板77を介して遊技制御用マイクロコンピュータ560からの演出制御コマンドを受信し、飾り図柄を可変表示する画像表示装置9の表示制御を行う。
図3は、中継基板77、演出制御基板80、ランプドライバ基板35および音声出力基板70の回路構成例を示すブロック図である。なお、図3に示す例では、ランプドライバ基板35および音声出力基板70には、マイクロコンピュータは搭載されていないが、マイクロコンピュータを搭載してもよい。また、ランプドライバ基板35および音声出力基板70を設けずに、演出制御に関して演出制御基板80のみを設けてもよい。
演出制御基板80は、演出制御用CPU101およびRAMを含む演出制御用マイクロコンピュータ100を搭載している。なお、RAMは外付けであってもよい。演出制御基板80において、演出制御用CPU101は、内蔵または外付けのROM(図示せず)に格納されたプログラムに従って動作し、中継基板77を介して入力される主基板31からの取込信号(演出制御INT信号)に応じて、入力ドライバ102および入力ポート103を介して演出制御コマンドを受信する。また、演出制御用CPU101は、演出制御コマンドにもとづいて、描画プロセッサ(VDP:ビデオディスプレイプロセッサ)109に画像表示装置9の表示制御を行わせる。
この実施の形態では、演出制御用マイクロコンピュータ100と共動して画像表示装置9の表示制御を行う描画プロセッサ109が演出制御基板80に搭載されている。描画プロセッサ109は、演出制御用マイクロコンピュータ100とは独立したアドレス空間を有し、そこにVRAMをマッピングする。VRAMは、画像データを展開するための描画領域を含む。そして、描画プロセッサ109は、描画領域内の画像データを画像表示装置9に出力する。
演出制御用CPU101は、受信した演出制御コマンドに従ってCGROM(図示せず)から必要なデータを読み出すための指令を描画プロセッサ109に出力する。CGROMは、画像表示装置9に表示されるキャラクタ画像データや動画像データ、具体的には、人物、文字、図形や記号等(飾り図柄を含む)、および背景画像のデータをあらかじめ格納しておくためのROMである。描画プロセッサ109は、演出制御用CPU101の指令に応じて、CGROMから画像データを読み出す。そして、描画プロセッサ109は、読み出した画像データにもとづいて表示制御を実行する。
演出制御コマンドおよび演出制御INT信号は、演出制御基板80において、まず、入力ドライバ102に入力する。入力ドライバ102は、中継基板77から入力された信号を演出制御基板80の内部に向かう方向にしか通過させない(演出制御基板80の内部から中継基板77への方向には信号を通過させない)信号方向規制手段としての単方向性回路でもある。
中継基板77には、主基板31から入力された信号を演出制御基板80に向かう方向にしか通過させない(演出制御基板80から中継基板77への方向には信号を通過させない)信号方向規制手段としての単方向性回路74が搭載されている。単方向性回路として、例えばダイオードやトランジスタが使用される。図3には、ダイオードが例示されている。また、単方向性回路は、各信号毎に設けられる。さらに、単方向性回路である出力ポート571を介して主基板31から演出制御コマンドおよび演出制御INT信号が出力されるので、中継基板77から主基板31の内部に向かう信号が規制される。すなわち、中継基板77からの信号は主基板31の内部(遊技制御用マイクロコンピュータ560側)に入り込まない。なお、出力ポート571は、図2に示されたI/Oポート部57の一部である。また、出力ポート571の外側(中継基板77側)に、さらに、単方向性回路である信号ドライバ回路が設けられていてもよい。
さらに、演出制御用CPU101は、出力ポート105を介してランプドライバ基板35に対してランプを駆動する信号を出力する。また、演出制御用CPU101は、出力ポート104を介して音声出力基板70に対して音番号データを出力する。
ランプドライバ基板35において、ランプを駆動する信号は、入力ドライバ351を介してランプドライバ352に入力される。ランプドライバ352は、ランプを駆動する信号を増幅して天枠ランプ28a、左枠ランプ28b、右枠ランプ28cなどの枠側に設けられている各ランプに供給する。また、枠側に設けられている装飾ランプ25に供給する。
音声出力基板70において、音番号データは、入力ドライバ702を介して音声合成用IC703に入力される。音声合成用IC703は、音番号データに応じた音声や効果音を発生し増幅回路705に出力する。増幅回路705は、音声合成用IC703の出力レベルを、ボリューム706で設定されている音量に応じたレベルに増幅した音声信号をスピーカ27に出力する。音声データROM704には、音番号データに応じた制御データが格納されている。音番号データに応じた制御データは、所定期間(例えば飾り図柄の変動期間)における効果音または音声の出力態様を時系列的に示すデータの集まりである。
図4は、描画プロセッサ109の回路構成を示すブロック図である。図4には、演出制御用CPU101およびCGROM83も示されている。
画像表示装置6の表示制御を実行する際に、演出制御用CPU101は、演出制御コマンドに応じた指令をCPUインタフェース(CPUI/F)92を介して描画プロセッサ109に与える。指令がCGROM83から画像データを読み出す指令であった場合には、描画プロセッサ109の描画回路91は、CGバスインタフェース(CGバスI/F)93に、CGROM83から必要なデータを読み出す指示を与える。デコーダ95は、データ圧縮されているフレーム画像データを伸張して、伸張後のフレーム画像データを描画素材データメモリ96Aに書き込む。また、描画プロセッサ109における描画回路91は、入力したデータに従って画像表示装置9に表示するための画像データを生成し、画像データをフレームバッファ96Bの描画領域に書き込む。そして、表示回路97は、描画領域内の画像データにもとづくR(赤),G(緑),B(青)の画像信号および同期信号を画像表示装置9に出力する。画像表示装置9は、例えば、多数の画素(ピクセル)を駆動するドットマトリクス方式による画面表示を行う。
描画プロセッサ109において、描画素材データメモリ(以下、VRAMRSという。)96Aには、CGROM83から読み出された描画素材データが格納される。描画素材データとして、MPEG2(Moving Picture Experts Group phase 2)方式等で符号化(データ圧縮)された動画像データが復号(伸張)されて得られた動画像データを構成する静止画データや、スプライト画像データが格納される。フレームバッファ(以下、VRAMFBという。)96Bには、表示画面に相当するデータ格納領域である描画領域を確保することが可能である。なお、描画プロセッサ109は、VRAM(ビデオRAM)を内蔵し、VRAMRS96AおよびVRAMFB96Bは、VRAMに形成される。また、以下、描画プロセッサ109が処理を実行するときに、VRAMRS96AとVRAMFB96Bのいずれを使用してもよい場合には、「VRAM」を使用するといった表現を行うことがある。
描画プロセッサ109の内部には、CGバスとVRAMバスとが設けられている。CGROM83とCGバスとの間に、CGバスインタフェース(CGバスI/F)93が設置されている。CGバスにはCPUI/F92も接続され、演出制御用CPU101は、CPUI/F92を介して、CGバスに接続されている部分をアクセスすることができる。具体的には、演出制御用CPU101は、CGバスに接続されている描画制御レジスタ95をアクセスすることができる。
次に、遊技機の動作について説明する。図5は、主基板31における遊技制御用マイクロコンピュータ560が実行するメイン処理を示すフローチャートである。遊技機に対して電源が投入され、リセット信号が入力されるリセット端子の入力レベルがハイレベルになると、遊技制御用マイクロコンピュータ560(具体的には、CPU56)は、プログラムの内容が正当か否か確認するための処理であるセキュリティチェック処理を実行した後、ステップS1以降のメイン処理を開始する。メイン処理において、CPU56は、まず、必要な初期設定を行う。
初期設定処理において、CPU56は、まず、割込禁止に設定する(ステップS1)。次に、割込モードを割込モード2に設定し(ステップS2)、スタックポインタにスタックポインタ指定アドレスを設定する(ステップS3)。そして、内蔵デバイスの初期化(内蔵デバイス(内蔵周辺回路)であるCTC(カウンタ/タイマ)およびPIO(パラレル入出力ポート)の初期化など)を行った後(ステップS4)、RAMをアクセス可能状態に設定する(ステップS5)。なお、割込モード2は、CPU56が内蔵する特定レジスタ(Iレジスタ)の値(1バイト)と内蔵デバイスが出力する割込ベクタ(1バイト:最下位ビット0)から合成されるアドレスが、割込番地を示すモードである。
次いで、CPU56は、入力ポートを介して入力されるクリアスイッチ(例えば、電源基板に搭載されている。)の出力信号の状態を確認する(ステップS6)。その確認においてオンを検出した場合には、CPU56は、通常の初期化処理を実行する(ステップS10〜ステップS15)。
クリアスイッチがオンの状態でない場合には、遊技機への電力供給が停止したときにバックアップRAM領域のデータ保護処理(例えばパリティデータの付加等の電力供給停止時処理)が行われたか否か確認する(ステップS7)。そのような保護処理が行われていないことを確認したら、CPU56は初期化処理を実行する。バックアップRAM領域にバックアップデータがあるか否かは、例えば、電力供給停止時処理においてバックアップRAM領域に設定されるバックアップフラグの状態によって確認される。この例では、バックアップフラグ領域に「55H」が設定されていればバックアップあり(オン状態)を意味し、「55H」以外の値が設定されていればバックアップなし(オフ状態)を意味する。
バックアップありを確認したら、CPU56は、バックアップRAM領域のデータチェック(この例ではパリティチェック)を行う(ステップS8)。ステップS8では、算出したチェックサムと、電力供給停止時処理で同一の処理によって算出され保存されているチェックサムとを比較する。不測の停電等の電力供給停止が生じた後に復旧した場合には、バックアップRAM領域のデータは保存されているはずであるから、チェック結果(比較結果)は正常(一致)になる。チェック結果が正常でないということは、バックアップRAM領域のデータが、電力供給停止時のデータとは異なっていることを意味する。そのような場合には、内部状態を電力供給停止時の状態に戻すことができないので、電力供給の停止からの復旧時でない電源投入時に実行される初期化処理を実行する。
チェック結果が正常であれば、CPU56は、遊技制御手段の内部状態と演出制御手段等の電気部品制御手段の制御状態を電力供給停止時の状態に戻すための遊技状態復旧処理(ステップS41〜S43の処理)を行う。具体的には、ROM54に格納されているバックアップ時設定テーブルの先頭アドレスをポインタに設定し(ステップS41)、バックアップ時設定テーブルの内容を順次作業領域(RAM55内の領域)に設定する(ステップS42)。作業領域はバックアップ電源によって電源バックアップされている。バックアップ時設定テーブルには、作業領域のうち初期化してもよい領域についての初期化データが設定されている。ステップS41およびS42の処理によって、作業領域のうち初期化してはならない部分については、保存されていた内容がそのまま残る。初期化してはならない部分とは、例えば、電力供給停止前の遊技状態を示すデータ(特別図柄プロセスフラグ、確変フラグ、時短フラグなど)、出力ポートの出力状態が保存されている領域(出力ポートバッファ)、未払出賞球数を示すデータが設定されている部分などである。
また、CPU56は、電力供給復旧時の初期化コマンドとしての停電復旧指定コマンドを送信する(ステップS43)。そして、ステップS14に移行する。
なお、この実施の形態では、バックアップフラグとチェックデータとの双方を用いてバックアップRAM領域のデータが保存されているか否か確認しているが、いずれか一方のみを用いてもよい。すなわち、バックアップフラグとチェックデータとのいずれかを、遊技状態復旧処理を実行するための契機としてもよい。
初期化処理では、CPU56は、まず、RAMクリア処理を行う(ステップS10)。なお、RAMクリア処理によって、所定のデータ(例えば大当り判定用乱数を生成するためのカウンタのカウント値のデータ)は0に初期化されるが、任意の値またはあらかじめ決められている値に初期化するようにしてもよい。また、RAM55の全領域を初期化せず、所定のデータ(例えば大当り判定用乱数を生成するためのカウンタのカウント値のデータ)をそのままにしてもよい。また、ROM54に格納されている初期化時設定テーブルの先頭アドレスをポインタに設定し(ステップS11)、初期化時設定テーブルの内容を順次作業領域に設定する(ステップS12)。
ステップS11およびS12の処理によって、例えば、普通図柄判定用乱数カウンタ、普通図柄判定用バッファ、特別図柄バッファ、総賞球数格納バッファ、特別図柄プロセスフラグ、賞球中フラグ、球切れフラグ、払出停止フラグなど制御状態に応じて選択的に処理を行うためのフラグに初期値が設定される。
また、CPU56は、サブ基板(主基板31以外のマイクロコンピュータが搭載された基板。)を初期化するための初期化指定コマンド(遊技制御用マイクロコンピュータ560が初期化処理を実行したことを示すコマンドでもある。)をサブ基板に送信する(ステップS13)。例えば、演出制御用マイクロコンピュータ100は、初期化指定コマンドを受信すると、画像表示装置9において、遊技機の制御の初期化がなされたことを報知するための画面表示、すなわち初期化報知を行う。
また、CPU56は、乱数回路503を初期設定する乱数回路設定処理を実行する(ステップS14)。CPU56は、例えば、乱数回路設定プログラムに従って処理を実行することによって、乱数回路503にランダムRの値を更新させるための設定を行う。
そして、ステップS15において、CPU56は、所定時間(例えば2ms)毎に定期的にタイマ割込がかかるように遊技制御用マイクロコンピュータ560に内蔵されているCTCのレジスタの設定を行なう。すなわち、初期値として例えば2msに相当する値が所定のレジスタ(時間定数レジスタ)に設定される。この実施の形態では、2ms毎に定期的にタイマ割込がかかるとする。
初期化処理の実行(ステップS10〜S15)が完了すると、CPU56は、メイン処理で、表示用乱数更新処理(ステップS17)および初期値用乱数更新処理(ステップS18)を繰り返し実行する。表示用乱数更新処理および初期値用乱数更新処理を実行するときには割込禁止状態に設定し(ステップS16)、表示用乱数更新処理および初期値用乱数更新処理の実行が終了すると割込許可状態に設定する(ステップS19)。この実施の形態では、表示用乱数とは、変動パターンを決定するための乱数であり、表示用乱数更新処理とは、表示用乱数を発生するためのカウンタのカウント値を更新する処理である。また、初期値用乱数更新処理とは、初期値用乱数を発生するためのカウンタのカウント値を更新する処理である。この実施の形態では、初期値用乱数とは、普通図柄に関して当りとするか否か決定するための乱数を発生するためのカウンタ(普通図柄当り判定用乱数発生カウンタ)等の、カウント値の初期値を決定するための乱数である。後述する遊技の進行を制御する遊技制御処理(遊技制御用マイクロコンピュータ560が、遊技機に設けられている画像表示装置、可変入賞球装置、球払出装置等の遊技用の装置を、自身で制御する処理、または他のマイクロコンピュータに制御させるために指令信号を送信する処理、遊技装置制御処理ともいう)において、普通図柄当り判定用乱数のカウント値が1周(普通図柄当り判定用乱数の取りうる値の最小値から最大値までの間の数値の個数分歩進したこと)すると、そのカウンタに初期値が設定される。
タイマ割込が発生すると、CPU56は、図6に示すステップS20〜S34のタイマ割込処理を実行する。タイマ割込処理において、まず、電源断信号が出力されたか否か(オン状態になったか否か)を検出する電源断検出処理を実行する(ステップS20)。電源断信号は、例えば電源基板に搭載されている電圧低下監視回路が、遊技機に供給される電源の電圧の低下を検出した場合に出力する。そして、電源断検出処理において、CPU56は、電源断信号が出力されたことを検出したら、必要なデータをバックアップRAM領域に保存するための電力供給停止時処理を実行する。次いで、入力ドライバ回路58を介して、ゲートスイッチ32a、始動口スイッチ14a、カウントスイッチ23、および入賞口スイッチ29a,30a,33a,39aの検出信号を入力し、それらの状態判定を行う(スイッチ処理:ステップS21)。
次に、CPU56は、特別図柄表示器8、普通図柄表示器10、特別図柄保留記憶表示器18および普通図柄保留記憶表示器41の表示制御を行う表示制御処理を実行する(ステップS22)。特別図柄表示器8および普通図柄表示器10については、ステップS32,S33で設定される出力バッファの内容に応じて各表示器に対して駆動信号を出力する制御を実行する。
次に、遊技制御に用いられる大当り図柄決定用の乱数等の各判定用乱数を生成するための各カウンタのカウント値を更新する処理を行う(判定用乱数更新処理:ステップS23)。CPU56は、さらに、初期値用乱数および表示用乱数を生成するためのカウンタのカウント値を更新する処理を行う(初期値用乱数更新処理,表示用乱数更新処理:ステップS24,S25)。
図7は、各乱数を示す説明図である。各乱数は、以下のように使用される。
(1)ランダム1:特別図柄のはずれ図柄(停止図柄)を決定する(はずれ図柄決定用)
(2)ランダム2:大当りを発生させるときの特別図柄の停止図柄を決定する(大当り図柄決定用)
(3)ランダム3:特別図柄の変動パターン(変動時間)を決定する(変動パターン決定用)
(4)ランダム4:普通図柄にもとづく当りを発生させるか否か決定する(普通図柄当り判定用)
(5)ランダム5:ランダム4の初期値を決定する(ランダム4初期値決定用)
図6に示された遊技制御処理におけるステップS23では、(2)の大当り図柄決定用乱数、および(4)の普通図柄当り判定用乱数を生成するためのカウンタのカウントアップ(1加算)を行う。すなわち、それらが判定用乱数であり、それら以外の乱数が表示用乱数または初期値用乱数である。なお、遊技効果を高めるために、上記(1)〜(5)の乱数以外の乱数も用いるようにしてもよい。また、この実施の形態では、大当り判定用乱数は遊技制御用マイクロコンピュータ560に内蔵されたハードウェア(乱数回路503)が生成する乱数であるが、大当り判定用乱数として、遊技制御用マイクロコンピュータ560によってプログラムにもとづいて生成されるソフトウェア乱数を用いてもよい。
さらに、CPU56は、特別図柄プロセス処理を行う(ステップS26)。特別図柄プロセス処理では、特別図柄表示器8および大入賞口を所定の順序で制御するための特別図柄プロセスフラグに従って該当する処理を実行する。CPU56は、特別図柄プロセスフラグの値を、遊技状態に応じて更新する。
次いで、普通図柄プロセス処理を行う(ステップS27)。普通図柄プロセス処理では、CPU56は、普通図柄表示器10の表示状態を所定の順序で制御するための普通図柄プロセスフラグに従って該当する処理を実行する。CPU56は、普通図柄プロセスフラグの値を、遊技状態に応じて更新する。
また、CPU56は、演出制御用マイクロコンピュータ100に演出制御コマンドを送出する処理を行う(演出制御コマンド制御処理:ステップS28)。
さらに、CPU56は、例えばホール管理用コンピュータに供給される大当り情報、始動情報、確率変動情報などのデータを出力する情報出力処理を行う(ステップS29)。
また、CPU56は、始動口スイッチ14a、カウントスイッチ23および入賞口スイッチ29a,30a,33a,39aの検出信号にもとづく賞球個数の設定などを行う賞球処理を実行する(ステップS30)。具体的には、始動口スイッチ14a、カウントスイッチ23および入賞口スイッチ29a,30a,33a,39aのいずれかがオンしたことにもとづく入賞検出に応じて、払出制御基板37に搭載されている払出制御用マイクロコンピュータに賞球個数を示す払出制御コマンドを出力する。払出制御用マイクロコンピュータは、賞球個数を示す払出制御コマンドに応じて球払出装置97を駆動する。
この実施の形態では、出力ポートの出力状態に対応したRAM領域(出力ポートバッファ)が設けられているのであるが、CPU56は、出力ポートの出力状態に対応したRAM領域におけるソレノイドのオン/オフに関する内容を出力ポートに出力する(ステップS31:出力処理)。
また、CPU56は、特別図柄プロセスフラグの値に応じて特別図柄の演出表示を行うための特別図柄表示制御データを特別図柄表示制御データ設定用の出力バッファに設定する特別図柄表示制御処理を行う(ステップS32)。CPU56は、例えば、特別図柄プロセス処理でセットされる開始フラグがセットされると終了フラグがセットされるまで、変動速度が1コマ/0.2秒であれば、0.2秒が経過する毎に、出力バッファに設定される表示制御データの値を+1する。また、CPU56は、出力バッファに設定された表示制御データに応じて、ステップS22において駆動信号を出力することによって、特別図柄表示器8における特別図柄の可変表示を実行する。
さらに、CPU56は、普通図柄プロセスフラグの値に応じて普通図柄の演出表示を行うための普通図柄表示制御データを普通図柄表示制御データ設定用の出力バッファに設定する普通図柄表示制御処理を行う(ステップS33)。CPU56は、例えば、普通図柄の変動に関する開始フラグがセットされると終了フラグがセットされるまで、普通図柄の変動速度が0.2秒ごとに表示状態(「○」および「×」)を切り替えるような速度であれば、0.2秒が経過する毎に、出力バッファに設定される表示制御データの値(例えば、「○」を示す1と「×」を示す0)を切り替える。また、CPU56は、出力バッファに設定された表示制御データに応じて、ステップS22において駆動信号を出力することによって、普通図柄表示器10における普通図柄の演出表示を実行する。その後、割込許可状態に設定し(ステップS34)、処理を終了する。
以上の制御によって、この実施の形態では、遊技制御処理は2ms毎に起動されることになる。なお、遊技制御処理は、タイマ割込処理におけるステップS21〜S33(ステップS29を除く。)の処理に相当する。また、この実施の形態では、タイマ割込処理で遊技制御処理が実行されているが、タイマ割込処理では例えば割込が発生したことを示すフラグのセットのみがなされ、遊技制御処理はメイン処理において実行されるようにしてもよい。
図8は、大当り判定テーブルとは、ランダムRと比較される大当り判定値が設定されているテーブルである。大当り判定判定テーブルには、通常状態(確変状態でない遊技状態)において用いられる通常時大当り判定テーブル(図8(A)参照)と、確変状態において用いられる確変時大当り判定テーブル(図8(B)参照)とがある。図8(A),(B)の左欄に記載されている数値が大当り判定値である。CPU56は、ランダムRの値がいずれかの大当り判定値と一致すると、大当りとすることに決定する。CPU56は、所定の時期に、乱数回路503のカウント値を抽出して抽出値を大当り判定用乱数値とするのであるが、大当り判定用乱数値が図7に示す大当り判定値に一致すると、特別図柄に関して大当り(確変大当りまたは通常大当り)とすることに決定する。
確変大当りとは、大当り遊技後の遊技状態を、通常状態に比べて大当りとすることに決定される確率が高い状態である確変状態に移行させるような大当りである。通常大当りとは、大当り遊技後の遊技状態を確変状態ではない状態に移行させるような大当りである。なお、確変大当りおよび通常大当りの場合には、ラウンド数は、2R(2ラウンド)大当りおよび突然確変大当りの場合よりも多く、例えば15ラウンドである。
2R大当り(小当り)とは、大当り遊技状態において大入賞口の開放回数が2回まで許容される大当りである。なお、小当り遊技が終了した場合、遊技状態が確変状態に移行することはない。突然確変大当りとは、大当り遊技状態において大入賞口の開放回数が2回まで許容されるが大入賞口の開放時間が極めて短い大当りであり、かつ、大当り遊技後の遊技状態を確変状態に移行させるような大当りである。つまり、この実施の形態では、突然確変大当りと小当りとは、ラウンド数が同じである。
なお、突然確変大当りの大当り遊技では、ラウンド数は、通常大当りおよび確変大当りの場合よりも少なく、かつ、各ラウンドの大入賞口開放許容時間(例えば、通常大当りおよび確変大当りの場合の29秒に対して、0.5秒)は通常大当りおよび確変大当りの場合よりも短いが、ランド数のみを少なくしたり、大入賞口開放許容時間のみを短くするようにしてもよい。
また、確変状態では、普通図柄の停止図柄が当り図柄に決定される確率を高くしたり、可変入賞球装置15の開放時間を長くしたり、開放回数を多くしたりする。
図8は、この実施の形態で用いられる変動パターンの一例を示す説明図である。図8において、「EXT」とは、2バイト構成の演出制御コマンドにおける2バイト目のEXTデータを示す。また、「変動時間」は特別図柄の変動時間(識別情報の可変表示期間)を示す。
「通常変動」は、リーチ態様を伴わない変動パターンである。「通常変動・短縮」は、リーチ態様を伴わない変動パターンであり、かつ、変動時間が「通常変動」よりも短い変動パターンである。「ノーマルリーチ」は、リーチ態様を伴うが表示結果(停止図柄)が大当り図柄にならない変動パターンである。「リーチA」は、「ノーマルリーチ」とは異なるリーチ態様を持つ変動パターンである。リーチ態様が異なるとは、リーチ変動時間(リーチ演出が行われる期間)で画像表示装置9において異なった態様の変動態様(速度や回転方向等)やキャラクタ画像等が現れたり、画像表示装置9における背景図柄が異なることをいう。例えば、「ノーマルリーチ」では単に1種類の変動態様によってリーチ態様が実現されるのに対して、「リーチA」では、変動速度や変動方向が異なる複数の変動態様を含むリーチ態様が実現される。また、「リーチA・短縮」は、「リーチA」に類似したリーチ態様を持つ変動パターンであるが、リーチ変動時間は、「リーチA」に比べて短い。「リーチA・延長」は、「リーチA」に類似したリーチ態様を持つ変動パターンであるが、リーチ変動時間は、「リーチA」に比べて長い。
「リーチB」は、「ノーマルリーチ」および「リーチA」とは異なるリーチ態様を持つ変動パターンである。また、「リーチB・短縮」は、「リーチB」に類似したリーチ態様を持つ変動パターンであるが、リーチ変動時間は、「リーチB」に比べて短い。「リーチB・延長」は、「リーチB」に類似したリーチ態様を持つ変動パターンであるが、リーチ変動時間は、「リーチB」に比べて長い。「リーチC」は、「ノーマルリーチ」、「リーチA」および「リーチB」とは異なるリーチ態様を持つ変動パターンである。「リーチC・短縮」は、「リーチC」に類似したリーチ態様を持つ変動パターンであるが、リーチ変動時間は、「リーチC」に比べて短い。
また、「スーパーリーチA」は、「ノーマルリーチ」、「リーチA」、「リーチB」および「リーチC」とは異なるリーチ態様を持つ変動パターンであり、例えば動画像によるリーチ態様を持つ変動パターンである。「スーパーリーチB」は、「ノーマルリーチ」、「リーチA」、「リーチB」、「リーチC」および「スーパーリーチA」とは異なるリーチ態様を持つ変動パターンであり、例えば動画像によるリーチ態様を持つ変動パターンである。「リーチA・突確」は、「ノーマルリーチ」、「リーチA」、「リーチB」、「リーチC」、「スーパーリーチA」および「スーパーリーチB」とは異なるリーチ態様を持つ変動パターンである。なお、「リーチA・突確」のリーチ態様は、「リーチA」に類似するリーチ態様である。
この実施の形態では、通常大当りの場合には、遊技制御用マイクロコンピュータ560は、「リーチA・短縮」、「リーチA」、「リーチB・短縮」、「リーチB」、「リーチC・短縮」、「リーチC」、「スーパーリーチA」または「スーパーリーチB」を選択する。また、確変大当りの場合には、遊技制御用マイクロコンピュータ560は、「リーチA・延長」、「リーチB・延長」、「リーチC・短縮」、「リーチC」、「スーパーリーチA」または「スーパーリーチB」を選択する。突然確変大当りの場合には、「リーチA・突確」を選択する。
また、時短状態では、「通常変動・短縮」、「リーチA・短縮」、「リーチB・短縮」、および「リーチC・短縮」の変動パターンが選択される。非時短状態では、それ以外の変動パターンが選択される。ただし、「リーチA・突確」の変動パターンは、時短状態でも非時短状態でも使用される。
なお、この実施の形態では、大当りが発生し、大当り遊技が終了すると、その後、100回の特別図柄の変動(可変表示)の実行が完了するまで、遊技状態は時短状態になる。また、可変表示が終了すると大当り遊技が開始されるときの特別図柄の可変表示を開始するときに、確変状態にすることに決定された場合には、大当り遊技が終了すると遊技状態が確変状態に移行される。なお、そのときの遊技状態が確変状態であれば、確変状態が継続することになる。
確変状態に移行されたら、その後、100回の特別図柄の変動(可変表示)の実行が完了するまでは、確変状態かつ時短状態である。また、大当り遊技が終了した後の非確変状態において、100回の特別図柄の変動(可変表示)の実行が完了すると遊技状態は通常状態(確変状態でなく、かつ、時短状態でない遊技状態)に移行する。
次に、遊技制御用マイクロコンピュータ560から演出制御用マイクロコンピュータ100に対する制御コマンドの送出方式について説明する。図10は、主基板31から演出制御基板80に送信される演出制御コマンドの信号線を示す説明図である。図10に示すように、この実施の形態では、演出制御コマンドは、演出制御信号CD0〜CD7の8本の信号線で主基板31から中継基板77を介して演出制御基板80に送信される。また、主基板31と演出制御基板80との間には、取込信号(演出制御INT信号)を送信するための演出制御INT信号の信号線も配線されている。
この実施の形態では、演出制御コマンドは2バイト構成であり、1バイト目はMODE(コマンドの分類)を表し、2バイト目はEXT(コマンドの種類)を表す。MODEデータの先頭ビット(ビット7)は必ず「1」に設定され、EXTデータの先頭ビット(ビット7)は必ず「0」に設定される。なお、そのようなコマンド形態は一例であって他のコマンド形態を用いてもよい。例えば、1バイトや3バイト以上で構成される制御コマンドを用いてもよい
図11に示すように、演出制御コマンドの8ビットの演出制御コマンドデータは、演出制御INT信号に同期して出力される。演出制御基板80に搭載されている演出制御用マイクロコンピュータ100は、演出制御INT信号が立ち上がったことを検知して、割込処理によって1バイトのデータの取り込み処理を開始する。従って、演出制御用マイクロコンピュータ100から見ると、演出制御INT信号は、演出制御コマンドデータの取り込みの契機になる信号に相当する。
演出制御コマンドは、演出制御用マイクロコンピュータ100が認識可能に1回だけ送出される。認識可能とは、この例では、演出制御INT信号のレベルが変化することであり、認識可能に1回だけ送出されるとは、例えば演出制御コマンドデータの1バイト目および2バイト目のそれぞれに応じて演出制御INT信号が1回だけパルス状(矩形波状)に出力されることである。なお、演出制御INT信号は図11に示された極性と逆極性であってもよい。
図12は、遊技制御用マイクロコンピュータ560が送信する演出制御コマンドの内容の一例を示す説明図である。図12に示す例において、コマンド8001(H)〜800E(H)は、特別図柄の可変表示に対応して画像表示装置9において可変表示される飾り図柄の変動パターンを指定する演出制御コマンド(変動パターンコマンド)である。なお、変動パターンを指定する演出制御コマンドは、変動開始を指定するためのコマンドでもある。従って、演出制御用マイクロコンピュータ100は、コマンド8001(H)〜800E(H)のいずれかを受信すると、画像表示装置9において飾り図柄の可変表示を開始するように制御する。なお、この実施の形態では、特別図柄の可変表示と飾り図柄の可変表示とは同期(可変表示開始時期および可変表示終了時期が同じ。)しているので、飾り図柄の変動パターン(変動時間)を決定することは、特別図柄の変動パターン(変動時間)を決定することも意味する。
コマンド8C01(H)〜8C05(H)は、大当りとするか否か、および大当り遊技の種類を示す演出制御コマンドである。演出制御用マイクロコンピュータ100は、コマンド8C01(H)〜8C05(H)の受信に応じて飾り図柄の表示結果を決定するので、コマンド8C01(H)〜8C05(H)を表示結果特定コマンドという。
コマンド8F00(H)は、飾り図柄の可変表示(変動)を終了して表示結果(停止図柄)を導出表示することを示す演出制御コマンド(図柄確定指定コマンド)である。演出制御用マイクロコンピュータ100は、図柄確定指定コマンドを受信すると、飾り図柄の可変表示(変動)を終了して表示結果を導出表示する。なお、導出表示とは、図柄を最終的に停止表示させることである。
コマンド9000(H)は、遊技機に対する電力供給が開始されたときに送信される演出制御コマンド(初期化指定コマンド:電源投入指定コマンド)である。コマンド9200(H)は、遊技機に対する電力供給が再開されたときに送信される演出制御コマンド(停電復旧指定コマンド)である。遊技制御用マイクロコンピュータ560は、遊技機に対する電力供給が開始されたときに、バックアップRAMにデータが保存されている場合には、停電復旧指定コマンドを送信し、そうでない場合には、初期化指定コマンドを送信する。
コマンド9F00(H)は、客待ちデモンストレーションを指定する演出制御コマンド(客待ちデモ指定コマンド)である。
コマンドA001〜A004(H)は、ファンファーレ画面を表示すること、すなわち大当り遊技の開始を指定する演出制御コマンド(大当り開始指定コマンド:ファンファーレ指定コマンド)である。大当り開始指定コマンドには、大当りの種類に応じて、大当り開始1指定〜大当り開始指定4指定コマンドがある。コマンドA1XX(H)は、XXで示す回数目(ラウンド)の大入賞口開放中の表示を示す演出制御コマンド(大入賞口開放中指定コマンド)である。A2XX(H)は、XXで示す回数目(ラウンド)の大入賞口閉鎖を示す演出制御コマンド(大入賞口開放後指定コマンド)である。
コマンドA301(H)は、大当り終了画面を表示すること、すなわち大当り遊技の終了を指定するとともに、非確変大当り(通常大当り)であったことを指定する演出制御コマンド(大当り終了1指定コマンド:エンディング1指定コマンド)である。コマンドA302(H)は、大当り終了画面を表示すること、すなわち大当り遊技の終了を指定するとともに、確変大当りであったことを指定する演出制御コマンド(大当り終了2指定コマンド:エンディング2指定コマンド)である。
演出制御基板80に搭載されている演出制御用マイクロコンピュータ100(具体的には、演出制御用CPU101)は、主基板31に搭載されている遊技制御用マイクロコンピュータ560から上述した演出制御コマンドを受信すると、図12に示された内容に応じて画像表示装置9の表示状態を変更したり、ランプの表示状態を変更したり、音声出力基板70に対して音番号データを出力したりする。
図13は、演出制御コマンドの送信タイミングの一例を示す説明図である。図13に示すように、遊技制御用マイクロコンピュータ560は、変動開始時に、変動パターンコマンドおよび表示結果特定コマンドを送信する。そして、可変表示時間が経過すると、図柄確定指定コマンドを送信する。
なお、変動パターンコマンドを送信する前に、遊技状態(例えば、通常状態/時短状態/確変状態)に応じた画像表示装置9における背景画像を指定する背景指定コマンドを送信するようにしてもよい。また、表示結果特定コマンドに続いて保留記憶数を示す演出制御コマンドを送信するようにしてもよい。
図14は、主基板31に搭載される遊技制御用マイクロコンピュータ560(具体的には、CPU56)が実行する特別図柄プロセス処理(ステップS26)のプログラムの一例を示すフローチャートである。上述したように、特別図柄プロセス処理では特別図柄表示器8および大入賞口を制御するための処理が実行される。特別図柄プロセス処理において、CPU56は、始動入賞口14に遊技球が入賞したことを検出するための始動口スイッチ14aがオンしていたら、すなわち始動入賞が発生していたら、始動口スイッチ通過処理を実行する(ステップS311,S312)。そして、ステップS300〜S307のうちのいずれかの処理を行う。
ステップS300〜S307の処理は、以下のような処理である。
特別図柄通常処理(ステップS300):特別図柄プロセスフラグの値が0であるときに実行される。遊技制御用マイクロコンピュータ560は、特別図柄の可変表示が開始できる状態になると、保留記憶数(始動入賞記憶数)を確認する。保留記憶数は保留記憶数カウンタのカウント値により確認できる。保留記憶数が0でない場合には、大当りとするか否か決定する。大当りとすることに決定した場合には、大当りフラグをセットする。そして、内部状態(特別図柄プロセスフラグ)をステップS301に対応した値(この例では1)に更新する。
変動パターン設定処理(ステップS301):特別図柄プロセスフラグの値が1であるときに実行される。特別図柄の可変表示後の停止図柄を決定する。また、変動パターンを決定し、その変動パターンにおける変動時間(可変表示時間:可変表示を開始してから表示結果が導出表示(停止表示)するまでの時間)を特別図柄の可変表示の変動時間とすることに決定する。また、特別図柄の変動時間を計測する変動時間タイマをスタートさせる。そして、内部状態(特別図柄プロセスフラグ)をステップS302に対応した値(この例では2)に更新する。
表示結果特定コマンド送信処理(ステップS302):特別図柄プロセスフラグの値が2であるときに実行される。演出制御用マイクロコンピュータ100に、表示結果特定コマンドを送信する制御を行う。そして、内部状態(特別図柄プロセスフラグ)をステップS303に対応した値(この例では3)に更新する。
特別図柄変動中処理(ステップS303):特別図柄プロセスフラグの値が3であるときに実行される。変動パターン設定処理で選択された変動パターンの変動時間が経過(ステップS301でセットされる変動時間タイマがタイムアウトすなわち変動時間タイマの値が0になる)すると、内部状態(特別図柄プロセスフラグ)をステップS304に対応した値(この例では4)に更新する。
特別図柄停止処理(ステップS304):特別図柄プロセスフラグの値が4であるときに実行される。特別図柄表示器8における可変表示を停止して停止図柄を導出表示させる。また、演出制御用マイクロコンピュータ100に、図柄確定指定コマンドを送信する制御を行う。そして、大当りフラグがセットされている場合には、内部状態(特別図柄プロセスフラグ)をステップS305に対応した値(この例では5)に更新する。大当りフラグがセットされていない場合には、内部状態(特別図柄プロセスフラグ)をステップS300に対応した値(この例では0)に更新する。なお、演出制御用マイクロコンピュータ100は、遊技制御用マイクロコンピュータ560が送信する図柄確定指定コマンドを受信すると画像表示装置9において飾り図柄が停止されるように制御する。
大入賞口開放前処理(ステップS305):特別図柄プロセスフラグの値が5であるときに実行される。大入賞口開放前処理では、大入賞口を開放する制御を行う。具体的には、カウンタ(例えば大入賞口に入った遊技球数をカウントするカウンタ)などを初期化するとともに、ソレノイド21を駆動して大入賞口を開放状態にする。また、タイマによって大入賞口開放中処理の実行時間を設定し、内部状態(特別図柄プロセスフラグ)をステップS306に対応した値(この例では6)に更新する。なお、大入賞口開放前処理は各ラウンド毎に実行されるが、第1ラウンドを開始する場合には、大入賞口開放前処理は大当り遊技を開始する処理でもある。
大入賞口開放中処理(ステップS306):特別図柄プロセスフラグの値が6であるときに実行される。大当り遊技状態中のラウンド表示の演出制御コマンドを演出制御用マイクロコンピュータ100に送信する制御や大入賞口の閉成条件の成立を確認する処理等を行う。大入賞口の閉成条件が成立し、かつ、まだ残りラウンドがある場合には、内部状態(特別図柄プロセスフラグ)をステップS305に対応した値(この例では5)に更新する。また、全てのラウンドを終えた場合には、内部状態(特別図柄プロセスフラグ)をステップS307に対応した値(この例では7)に更新する。
大当り終了処理(ステップS307):特別図柄プロセスフラグの値が7であるときに実行される。大当り遊技状態が終了したことを遊技者に報知する表示制御を演出制御用マイクロコンピュータ100に行わせるための制御を行う。また、遊技状態を示すフラグ(例えば、確変フラグ)をセットする処理を行う。そして、内部状態(特別図柄プロセスフラグ)をステップS300に対応した値(この例では0)に更新する。
図15は、画像表示装置9の表示画面における「左」、「中」、「右」の各可変表示部において可変表示される複数種類の飾り図柄の一例を示す説明図である。この実施の形態では、画像表示装置9の表示画面に設けられた「左」、「中」、「右」の各可変表示部において、「1」〜「9」の数字を示す図柄が、例えば略菱形といった所定の図形と組み合わされて可変表示される。飾り図柄のそれぞれには、対応する図柄番号が付されている。なお、図15に示す飾り図柄は基本形であって、それらが変形されて画像表示装置9に表示される場合がある。
以下、画像表示装置9における表示演出を説明する。
この実施の形態では、画像表示装置9に、静止画像を表示可能であるとともに、動画像を表示可能である。
図16および図17は、2つの動画像を合成して画像表示装置9に表示する例を示す説明図である。図16に示す例では、第1の動画像である動画像Aを表示させるための動画像Aデータは、フレーム画像a1〜a30の30フレーム(30コマ)の画像データ(フレーム画像データ)で構成されている。よって、33ms/秒で再生を行った場合には、1秒の動画像表示を実現できる。また、第2の動画像である動画像Bを表示させるための動画像Bデータは、フレーム画像b1〜b33の33フレーム(33コマ)の画像データ(フレーム画像データ)で構成されている。よって、33ms/秒で再生を行った場合には、1.1秒の動画像表示を実現できる。
なお、この実施の形態では、画像表示装置9に表示されるものを「動画像」といい、「動画像」を得るためのディジタルデータを動画像データという。また、動画像を構成する各コマを「フレーム画像」といい、「フレーム画像」を得るためのディジタルデータをフレーム画像データという。
図17は、図16に示す動画像Aと動画像Bとを合成して画像表示装置9に表示する場合の表示例を説明するための説明図である。図17に示すそれぞれの矩形は、画像表示装置9の表示画面を示す。図17(A)には、動画像Aを単独で画像表示装置9に表示する場合の表示例が示されている。図17(A)において、33ms毎に左から右にフレーム画像a1〜a30の表示が移り変わっていくとする。図17(B)には、動画像Bを単独で映像表示装置9に表示する場合の表示例が示されている。図17(B)において、33ms毎に左から右にフレーム画像b1〜b33の表示が移り変わっていくとする。
一例として、図17(C)は、動画像Aと動画像Bとを合成するときに、フレーム画像a1とフレーム画像b1とが合成されたタイミングで画像表示装置9に表示される画像を示す。また、図17(D)は、フレーム画像a30とフレーム画像b2とが合成されたタイミングで画像表示装置9に表示される画像を示す。
動画像Aを構成するフレーム画像a1〜a30と動画像Bを構成するフレーム画像b1〜b33とを順次1コマずつ合成していくと、30×33=990コマの異なる画像(33ms/秒で再生すると11秒分)が得られる。つまり、動画像Aデータと動画像Bデータとを用いて、11秒の動画像を再生することができる。
また、図17に示す例では、動画像が重なるように合成される。すなわち、VRAMFB96Bの描画領域において、同じ領域に動画像Aデータと動画像Bデータとが書き込まれる。なお、以下、描画領域に画像データを書き込むことを、「描画する」という。また、描画領域内の画像データに対応した画像が画像表示装置9に表示される。
図18に示すように、動画像Aを構成するフレーム画像を描画する領域と動画像Bを構成するフレーム画像を描画する領域とをずらしてもよい。図18には、フレーム画像a1が描画された領域からずれた領域にフレーム画像b2が描画される例が示されている。そのような制御によって、動画像Aと動画像Bがずれて合成された合成動画像が画像表示装置9に表示される。
図19は、この実施の形態における画像データの構造を示す説明図である。画像データの各画素は、α値と、R(赤)値、G(緑)値、およびB(青)値のデータで構成される。α値は、透明度を示す値であり、例えば、0〜1.0のいずれか対応する値が設定される。0は、完全透明を示し、1.0は完全不透明を示す。完全透明とは、一の画像データ(α値が0)と他の画像データとの合成演算が行われるときに、一の画像データのR,G,B値が演算に使用されない(例えば、0と見なされる)ことを示し、完全不透明とは、一の画像データ(α値が1.0)と他の画像データとの合成演算が行われるときに、一の画像データのR,G,B値がそのまま使用されることを示す。また、0と1.0との間の値は、一の画像データ(α値が0と1.0との間)と他の画像データとの合成演算が行われるときに、一の画像データのR,G,B値に所定の係数が乗算されることを示す。
図20は、1秒の動画像Aと1.1秒の動画像Bとが合成されて11秒の合成動画像を作成した上で、合成動画像が繰り返し再生される例を示す説明図である。図20に示す例では、再生開始時点から11秒が経過する度に、換言すれば合成動画像の終了時点になる度に、動画像Bを構成する各画素のα値が変更される例が示されている。つまり、描画プロセッサ109は、複数の動画像データ(それぞれが複数フレームの画像データを含む。)のそれぞれにおける最初の画像データにもとづく表示用データを重ね合わせるときに透明度を変化させる。よって、α値が変更されなければ11秒毎に同じ合成動画像が再生されるのであるが、α値を変更することによって、11秒が経過すると、異なって視認される合成動画像を再生することができる。
動画像データは、CGROM83においてデータ圧縮されて格納されている。動画像再生するときには、描画プロセッサ109は、CGROM83から動画像データを構成するフレーム画像データ(データ圧縮されている)を読み出す。そして、デコーダ95が、データ圧縮されているフレーム画像データを伸張して、伸張後のフレーム画像データをVRAMRS96Aに書き込む。なお、以下、VRAMRS96AまたはVRAMFB96Bに画像データに書き込むことを、画像データを展開するということがある。
この実施の形態における描画プロセッサ109は、1/60秒で画像を再生する(画像データにもとづく画像を表示すること)能力を有している。すなわち、デコーダ95は、1/60秒毎に、データ圧縮されているフレーム画像データを伸張することができる。実際には1/30秒で画像再生する場合を考えると、1フレームを再生する期間において、2つのフレーム画像データを伸張することができる。よって、2つの動画像を合成して再生するときに、図21(A)に示すように、(1/60)×2秒の期間において、動画像Aを構成するフレーム画像についてのフレーム画像データと、動画像Bを構成するフレーム画像についてのフレーム画像データとを交互に伸張し、図21(B)に示すように、伸張した2つのフレーム画像データについて1/30秒に1回ずつ合成のための演算を実行することによって、図21(C)に示すように、1/30秒毎に合成動画像を再生することができる。つまり、描画プロセッサ109は、所定周期毎に複数の動画像データから一の動画像データを順に選択し、周期において選択された動画像データから表示用データを作成することによって、処理負担を軽くしている。
図22(A),(B)は、例えば、VRAMRS96Aに展開された合成動画像を構成する画像の画像データをクリッピング(切り取り)して、クリッピング画像を作成する処理を説明するための説明図である。描画プロセッサ109は、例えば、VRAMRS96Aにおけるクリッピング範囲内の画像データを描画領域に描画することによって、クリッピング画像を画像表示装置9に表示するようにしてもよいが、クリッピング範囲よりも広い領域の画像(対象画像という。)の画像データを、クリッピング範囲が形成されている領域(クリッピング領域)に書き込むようにしてもよい。そのとき、例えばクリッピング領域の各画素のα値を0にしておけば、クリッピング領域に、対象画像が形成されることになる。その後、クリッピング領域の画像データを描画領域に書き込む。
図22に示す表示制御を実現する場合には、動画像A,Bを構成する各フレーム画像のサイズを、描画領域のサイズ(表示領域のサイズに相当)よりも大きくして、各フレーム画像が作成される。
図23(A),(B)は、合成動画像を三次元画像として表示する処理を説明するための説明図である。描画プロセッサ109は、VRAMRS96AやVRAMFB96Bに作成されたポリゴン画像(以下、ポリゴンという。)に合成動画像を構成する画像の画像データをテクスチャとして貼り付ける処理(マッピング)を行い(図23(A)参照)、その後、レンダリング処理を行って、再生のための画像の画像データを得る。レンダリング処理とは、二次元の表示画面に表示可能な画像の画像データを作成する処理であり、所定の位置に設定される視点(カメラ位置ともいわれる。)から三次元画像を眺めた場合に視認される画像の画像データを作成する処理である。なお、図23に示すポリゴンは、板状物が湾曲したような形状(瓦状の形状)を有する。
図24は、飾り図柄の可変表示の応用例(基本形からの変形例)を示す説明図である。図24には、「7」の飾り図柄から「8」の飾り図柄に変動するときの例が示されている。その例において、画像表示装置9の表示画面における飾り図柄の表示領域の内容は、(A)→(D)に示すように変化する。
図24に示す例では、「7」の表示部の中に「8」の表示部が形成され、しかも、「8」の表示部が徐々に大きくなっていくように表示される。
図25および図26は、図24に示された飾り図柄の可変表示を実現するための処理を実現するための説明図である。描画プロセッサ109は、まず、図25(A)に示すような板状ポリゴン200をVRAMに作成する。VRAMにおけるポリゴンが作成される領域を含む領域は仮想三次元空間に相当する。そして、図25(B)に示すように、板状ポリゴン200を回転させる処理を行う。なお、図25(B)には、一方向に回転された様子(倒されたような様子)が示されているが、三次元的に回転させる処理を行うことが可能である。そして、描画プロセッサ109は、図25(C)に示すように、板状ポリゴン200について所定の視点を用いてレンダリング処理を行って、二次元画像を作成する。この例では、台形のような画像が生成される。
なお、この実施の形態の描画プロセッサ109は、レンダリング処理を行うときに、常に同じ位置に設定された視点すなわち固定位置の視点を用いる。図25(B)および以下の図面において、視点の位置が任意に設定可能であるかのように表現されているが、それは図面を見やすくするための作図上の都合である。図25(B)に示された例を参照すると、例えば、実際には視点の位置が図面において左横に設定されている場合には、実際には、板状ポリゴン200の表面側が、左を向くように板状ポリゴン200が作成される。つまり、図25(B)に示された状態から左側に90度傾いた状態のポリゴンが描画プロセッサ109によって作成される。
また、ポリゴンは、仮想三次元空間において、三角形の集合として形成される。多数の三角形の組み合わせ方によって、ほぼ任意の形状のポリゴンを作成できる。この実施の形態では、描画プロセッサ109は、仮想三次元空間において、作成する位置(座標)や形状(具体的には、三角形の組み合わせ方など)を変えてあらためてポリゴンを作成することによって、ポリゴンの移動(平行移動だけでなく、回転させたり、傾斜させたりする等ことを含む概念。また、それらの停止も含む概念)や形状変化を実現する。しかし、描画プロセッサ109は、演出制御用CPU101の移動や形状変化の指令に応じて、作成済みのポリゴンを仮想三次元空間において移動させたり形状変化させるように構成されていてもよい。その際、演出制御用CPU101が、指令におけるパラメータとして移動先や変化後の形状を描画プロセッサ109に与えてもよいし、移動先や変化後の形状を演算によって算出しうるパラメータを描画プロセッサ109に与えてもよい。
描画プロセッサ109は、作成された二次元画像(図25(C)参照)をマスクパターンとして用い、VRAMRS96Aに展開されている「8」の飾り図柄の画像データの領域をクリッピングし(切り取り)、クリッピングした領域(クリッピング範囲)の画像データを、VRAMRS96Aに展開されている「7」の飾り図柄の画像データと合成する。また、描画プロセッサ109は、レンダリング処理を行うときに、レンダリング範囲を拡大することもできる。レンダリング範囲を拡大しない場合の例が図26(A)に示され、レンダリング範囲を拡大した場合の例が図26(B)に示されている。
図25および図26に示されたような処理を行うことによって、図24に示されたような飾り図柄の変動(可変表示)が実現される。
なお、図25には、1種類の移動後のポリゴンが示されているが(図25(B))、実際には、さらにポリゴンを移動させるような処理が行われる。
図27は、飾り図柄の可変表示の他の応用例を示す説明図である。図27には、「6」の飾り図柄から「7」の飾り図柄に変動するときの例が示されている。その例において、画像表示装置9の表示画面は、(A)→(D)に示すように変化する。
図27に示す例では、「6」の表示部の中に「7」の表示部が形成され、しかも、「7」の表示部が徐々に大きくなっていくように表示される。また、図24に示された例と比較すると、ある飾り図柄の内部に形成される表示部(図24に示す例では「8」、この例では「7」)の形状が異なっている。換言すれば、マスクパターンの形状が異なっている。
図28および図29は、図27に示された飾り図柄の可変表示を実現するための処理を実現するための説明図である。描画プロセッサ109は、まず、図28(A)に示すような板状ポリゴン200をVRAMに作成する。そして、図28(B)に示すように、板状ポリゴン200を回転させる処理を行う。そして、描画プロセッサ109は、図28(C)に示すように、板状ポリゴン200について所定の視点を用いてレンダリング処理を行って、二次元画像を作成する。この例では、横を向いた台形のような画像が生成される。
描画プロセッサ109は、作成された二次元画像(図28(C)参照)をマスクパターンとして用い、VRAMRS96Aに展開されている「7」の飾り図柄の画像データの領域をクリッピングし、クリッピング範囲の画像データを、VRAMRS96Aに展開されている「6」の飾り図柄の画像データと合成する。また、描画プロセッサ109は、レンダリング処理を行うときに、レンダリング範囲を拡大することもできる。レンダリング範囲を拡大しない場合の例が図29(A)に示され、レンダリング範囲を拡大した場合の例が図29(B)に示されている。
図28および図29に示されたような処理を行うことによって、図27に示されたような飾り図柄の変動(可変表示)が実現される。
なお、図28には、1種類の移動後のポリゴンが示されているが(図28(B))、実際には、さらにポリゴンを移動させるような処理が行われる。
また、図30に示すように、描画プロセッサ109は、切り取った領域の画像データをVRAMRS96Aに展開されている飾り図柄の画像データと合成するときに、クリッピング範囲における縁部についてαブレンド処理を行うことができる。αブレンド処理とは、合成対象の画像データ(この例では、クリッピング範囲内の画像データ)における縁部分のα値を1.0よりも低い値にして合成処理を施すことである。縁部をαブレンド処理することによって、縁部が半透明化され、背景(図30に示す例では「7」の画像)との境部分を滑らかに表示することができる。
図31は、飾り図柄の可変表示のさらに他の応用例を示す説明図である。図31に示す例では、板状ポリゴン200に飾り図柄(この例では「7」)と動画像(この例では、宇宙船が移動する動画像)を構成するフレーム画像の一部がテクスチャとして貼り付けられた後、板状ポリゴン200を拡大してレンダリング処理して得られた二次元画像が飾り図柄として用いられる。
図31に示すように、可変表示の経過に伴って飾り図柄の表示部が拡大され、かつ、「宇宙船」の画像が移動するように、画像表示装置9に飾り図柄が表示される。
なお、図31における上段および中段に示す例の場合に、静止画による宇宙船をテクスチャとするようにしてもよい。すなわち、視点がポリゴンから所定距離以内の位置にあるときには、動画像データにおけるフレーム画像データにもとづく画像をテクスチャとし、視点がポリゴンから所定距離を越えた位置にあるときには、静止画データにもとづく画像をテクスチャとするようにしてもよい。
図32は、図31に示された飾り図柄の可変表示の応用例の変形例を示す説明図である。図32に示す例では、板状ポリゴン200に飾り図柄(この例では「7」)と動画像(この例では、宇宙船が移動する動画像)を構成するフレーム画像の一部がテクスチャとして貼り付けられた後、板状ポリゴン200を回転させ、かつ、拡大してレンダリング処理して得られた二次元画像が飾り図柄として用いられる。
図32に示すように、可変表示の経過に伴って飾り図柄の表示部が拡大され、かつ、「宇宙船」の画像が移動するように、さらに、飾り図柄の表示部の内部の画像が傾いていくように、画像表示装置9に飾り図柄が表示される。なお、図32には、板状ポリゴン200が一方向に回転された様子(左方向に回転された様子)が示されているが、三次元的に回転させる処理を行うことが可能である。
なお、図32における上段および中段に示す例の場合に、静止画による宇宙船をテクスチャとするようにしてもよい。すなわち、視点がポリゴンから所定距離以内の位置にあるときには、動画像データにおけるフレーム画像データにもとづく画像をテクスチャとし、視点がポリゴンから所定距離を越えた位置にあるときには、静止画データにもとづく画像をテクスチャとするようにしてもよい。
図33および図34は、2つの動画像A,Bの合成動画像を構成するフレーム画像を板状ポリゴンにテクスチャとして貼り付ける処理を説明するための説明図である。図33(A)には、動画像として、宇宙船が移動するものが例示されている。図33(B)には、動画像として、衛星が移動するものが例示されている。
図33(C)には、板状ポリゴンに動画像A,Bの合成動画像がテクスチャとして貼り付けられた様子が示されている。また、板状ポリゴンが、合成動画像における1フレームのフレーム画像が貼り付けられる毎に、回転される様子が示されている。なお、回転の板状ポリゴンについて所定の視点を用いてレンダリング処理が行われ、表示に用いられる二次元画像が作成される。
図34は、画像表示装置9において実行される予告演出(大当りになることを飾り図柄の表示結果が導出される前に遊技者に知らせるための表示演出。ただし、大当りにならない場合に実行されることもある)の例を示す説明図である。図34には、大当りにならない場合に実行される例が示されている。図34に示す例では、画像表示装置9の表示画面の一部が予告演出領域9aとして用いられる。図34(A)〜(C)に示すように、描画プロセッサ109は、図33(C)に示された板状ポリゴンについて所定の視点を用いてレンダリング処理が行われて得られた二次元画像を、予告演出領域9aに順次表示する制御を行う。
図34(D)には、合成動画像の動画像データについてテクスチャの貼り付けやレンダリングの処理が実行されず、すなわち、合成動画像がそのまま予告演出領域9aに表示される例が示されている。図34に示す例では、例えば、ポリゴンを用いて表示用の画像データを複数フレームに亘って作成したら、複数フレームのうちの最後のフレーム画像データに続くフレーム画像データから動画像データが再生される。
図35は、図33(C)に示された板状ポリゴンの回転方向とは異なる方向に板状ポリゴンが回転される例を示す説明図である。図35には、板状ポリゴンが、合成動画像における1フレームのフレーム画像が貼り付けられる毎に、回転される様子が示されている。そして、回転の板状ポリゴンについて所定の視点を用いてレンダリング処理が行われ、表示に用いられる二次元画像が作成される。
図36は、画像表示装置9において実行される予告演出の他の例を示す説明図である。図34には、大当りになる場合に実行される例が示されている。図36(A)〜(D)に示すように、描画プロセッサ109は、図35に示された板状ポリゴンについて所定の視点を用いてレンダリング処理が行われて得られた二次元画像を、予告演出領域9aに順次表示する制御を行う。
次に、描画プロセッサ109におけるデータ転送方法および演出制御用CPU101から描画プロセッサ109に出力される指令(コマンド)を説明する。
図37は、画像データの転送を説明するための説明図である。CGROM83に格納されている画像データは、VRAMRS96Aに転送されることが可能である。また、CGROM83に格納されている画像データは、VRAMRS96Aを経由してVRAFB96Bに転送されることが可能である。また、VRAMRS96Aに格納されている画像データは、VRAFB96Bに転送されることが可能である。さらに、VRAFB96Bに格納されている画像データは、VRAMRS96Aに転送されることが可能である。
図38は、演出制御用CPU101から描画プロセッサ109に出力される指令のうち、データ転送に関する指令を示す説明図である。CGROM転送指令は、CGROM83からVRAMRS96Aに画像データを転送させる場合に出力される指令である。VRAMFB転送指令は、VRAMRS96AからVRAMFB96Bに画像データを転送させる場合に出力される指令である。VRAMRS間転送指令は、VRAMRS96Aに格納されている画像データを、VRAMRS96Aにおける他の領域に画像データを転送させる場合に出力される指令である。
描画エフェクト指令は、VRAMRS96AからVRAMFB96Bに画像データを転送させるときの描画効果を指定する指令である。VRAMFBコピー指令は、VRAMFB96BからVRAMRS96Aに画像データを転送させる場合に出力される指令である。自動転送指令は、CGROM83に格納されている画像データを、VRAMRS96Aを経由してVRAFB96Bに転送させる場合に出力される指令である。
なお、この実施の形態では、CGROM83のアドレス指定を除き、データ転送の際の転送元アドレス(読出アドレス)および転送先アドレス(書込アドレス)は、領域のX座標およびY座標で指令されるが、メモリ(ROMまたはRAM)において画像データが格納されているアドレスそのもので指定することもできる。さらに、あらかじめ作成されているインデックス(領域のアドレス等が設定される)を利用して読出アドレスおよび書込アドレスを指定することもできる。
描画プロセッサ109の描画回路91は、CGROM転送指令を入力すると、CGバスインタフェース93に、CGROM83の読出開始アドレスから画像データを読み出してVRAMRS96Aの書込アドレスに画像データを転送させる。VRAMFB転送指令を入力すると、VRAMRS96Aの読出アドレスから画像データを読み出してVRAMFB96Bの書込アドレスに書き込む。VRAM間転送指令を入力すると、VRAMRS96Aの読出アドレスから画像データを読み出してVRAMRS96Aの書込アドレスに書き込む。描画エフェクト指令を入力すると、VRAMFB転送指令を入力したときに、描画エフェクト指令に含まれるパラメータに従って画像合成を行う。
また、描画回路91は、VRAMFBコピー指令を入力すると、VRAMFB96Bの読出アドレスから画像データを読み出してVRAMRS96Aの書込アドレスに書き込む。自動転送指令を入力すると、CGバスインタフェース93にCGROM83の読出開始アドレスから画像データを読み出してVRAMRS96Aの所定領域に画像データを転送させ、さらに所定領域から画像データを読み出してVRAMFB96Bの書込アドレスに書き込む。
図39は、演出制御用CPU101から描画プロセッサ109に出力される指令のうち、描画指令等に関する指令を示す説明図である。テクスチャ属性設定指令は、テクスチャのサイズ等を指定する指令である。ポリゴン描画指令は、ポリゴンのサイズ等を指定する指令である。スプライト描画指令は、スプライト画像のサイズ等を指定する指令である。なお、図39に示すパラメータにおけるFRAMFB96Bに関するアドレス(座標)は、VRAMFB96Bの描画領域以外の領域におけるアドレスである。
描画回路91は、テクスチャ属性設定指令を入力すると、VRAMFB転送指令を入力したときに、テクスチャ属性設定指令で決まる読出アドレスから画像データを読み出してVRAMFB96Bの書込アドレスに書き込む。ポリゴン描画指令を入力すると、指定されたVRAMFB96Bの領域に、ポリゴン画像を作成する。なお、ポリゴン描画指令に含まれるZ値は、画素毎に設定可能である。よって、各画素のZ値が、ポリゴン画像が所望の形状になるように設定されることによって、ポリゴン画像を任意の所望の形状で生成することができる。スプライト描画指令を入力すると、VRAMRS96Aの読出アドレスからスプライト画像データを読み出してVRAMFB96Bの書込アドレスに書き込む。
図40は、演出制御用CPU101から描画プロセッサ109に出力される指令のうち、データ圧縮された動画像データを伸張することに関する指令を示す説明図である。シングルストリーム開始アドレスは、1つの動画像の動画像データを伸張する場合にその画像のCGROM83における格納アドレスを指定する指令である。シングルストリーム領域展開指令は、1つの動画像の動画像データの伸張後の画像データのVRAMRS96Aにおける格納アドレスを指定する指令である。マルチストリーム開始アドレスは、複数(例えば2つ)の動画像の動画像データを伸張する場合にそれらの画像のCGROM83における格納アドレスを指定する指令である。マルチストリーム領域展開指令は、複数の動画像の動画像データの伸張後の画像データのVRAMRS96Aにおける格納アドレスを指定する指令である。
デコード実行指令は、動画像の動画像データを伸張することを指定する指令である。デコーダ95は、デコード実行指令を入力すると、シングルストリーム開始アドレスおよびシングルストリーム領域展開指令に従って、また、マルチストリーム開始アドレスおよびマルチストリーム領域展開指令のパラメータを用いて、CGROM83に格納されている動画像データを復号してVRAMRS96Aに格納する処理を行う。
動画像データは、最初のアドレスにファイルヘッダが設定され、続いて、各フレームのフレームヘッダと圧縮データとが順次設定された構成である。ストリームには、フレーム1〜N(フレーム画像1〜n)のフレームヘッダと圧縮データとが画像1から順に設定される。なお、動画像データは、例えばMPEG2符号化方式によって符号化されている。
次に、図41の説明図を参照してデコーダ95によるデータ圧縮された動画像データ(圧縮データ)の復号の仕方について説明する。図41(A)に示すフレーム番号は、動画像データにおけるフレーム画像データの通し番号である(フレーム1〜N)。そして、動画像データにおいてフレーム1〜Nの圧縮データは、図41(B)に示すような順で、MPEG2符号化方式で規定されているIピクチャ、BピクチャまたはPピクチャで構成されている。例えば、フレーム1はIピクチャであり、フレーム2,3,5,6はBピクチャであり、フレーム4,7はPピクチャである。I,B,Pに付されている添え字は、それぞれのピクチャタイプでの通し番号である。
上述したように、動画像データとしてフレーム1〜N(フレーム画像1〜n)がフレーム1(画像1)から順に格納されている。例えば、ストリームにおけるフレーム1(画像1)はIピクチャであり、フレーム2,3,5,6(画像2,3,5,6)はBピクチャであり、フレーム4,7(画像4,7)はPピクチャである。
次に、演出制御手段の動作を説明する。図42は、演出制御基板80に搭載されている演出制御用マイクロコンピュータ100(具体的には、演出制御用CPU101)が実行するメイン処理を示すフローチャートである。演出制御用CPU101は、電源が投入されると、メイン処理の実行を開始する。メイン処理では、まず、RAM領域のクリアや各種初期値の設定、また演出制御の起動間隔(例えば、33ms)を決めるためのタイマの初期設定等を行うための初期化処理を行う(ステップS701)。次に、初期データ転送処理を行う(ステップS702)。初期データ転送処理は、VRAMRS96Aに固定領域(固定的な画像データを格納する領域)を設定するとともに、VRAMRS96Aの固定領域に、CGROM83に記憶されている飾り図柄の画像データ(図15参照)を転送するための処理である。
その後、演出制御用CPU101は、タイマ割込フラグの監視(ステップS704)を行うループ処理に移行する。タイマ割込が発生すると、演出制御用CPU101は、タイマ割込処理においてタイマ割込フラグをセットする。メイン処理において、タイマ割込フラグがセットされていたら、演出制御用CPU101は、そのフラグをクリアし(ステップS705)、演出制御処理を実行する。
演出制御処理において、演出制御用CPU101は、まず、受信した演出制御コマンドを解析し、受信した演出制御コマンドに応じたフラグをセットする処理等を実行する(コマンド解析処理:ステップS706)。次いで、演出制御用CPU101は、演出制御プロセス処理を実行する(ステップS707)。演出制御プロセス処理では、制御状態に応じた各プロセスのうち、現在の制御状態(演出制御プロセスフラグ)に対応した処理を選択して画像表示装置9の表示制御を実行する。また、所定の乱数を生成するためのカウンタのカウンタ値を更新する乱数更新処理を実行する(ステップS708)。さらに、画像表示装置9の表示画面に表示される背景画像を表示するための背景制御処理を行う(ステップS709)。その後、ステップS704に移行する。
なお、タイマ割込の発生周期は、1/33秒であるとする。また、画像表示装置9の画面変更周波数(フレーム周波数)が30Hzであり、描画プロセッサ109は、1/33秒周期で画像表示装置9の表示画面の更新を行うとする。タイマ割込の発生周期は、1/33秒以外の値(例えば、2ms)でもよいが、その場合には、演出制御処理において、例えば描画プロセッサ109からのVブランク割込(画像表示装置9に供給される垂直同期信号の周期と同周期で描画プロセッサ109が発生する割込)の発生に同期して、描画に関わる処理を実行する。
また、以下の説明では、1/33秒ごとに、図17〜図36を用いて説明した画像の変化(例えば、図31における3種類の画像など)を実現する処理が実行される場合について説明を行う。しかし、実際には、1/33秒よりも長い周期で、図17〜図36を用いて説明した画像の変化が実現される。図31に示された例を参照すると、例えば、200ms(0,2秒)毎に図31における上段に示された画像から中段に示された画像への変化、および中段に示された画像から下段に示された画像への変化が生ずるように制御することを考えると、上段に示された画像と中段に示された画像との間に中間的な画像を存在させ、中段に示された画像と下段に示された画像との間に中間的な画像を存在させる。そして、中間的な画像を含む一連の画像を順に1/33秒ごとに画像表示装置9に表示する。しかしながら、説明を簡単にするために、例えば、図31における上段に示された画像から中段に示された画像への変化、および中段に示された画像から下段に示された画像への変化が1/33秒毎に生ずるように制御する場合を説明ずる。
図43は、ステップS709の背景制御処理を示すフローチャートである。ここでは、図17に例示された合成動画像を背景画像として表示する場合を例にして説明を行う。なお、図43以降のフローチャートにおいて、描画プロセッサ109はVDPと記載されている。
演出制御用CPU101は、背景制御処理において、背景制御中フラグがセットされているか否か確認する(ステップS611)。セットされている場合には、ステップS621に移行する。セットされていない場合には、背景制御中フラグをセットする(ステップS612)。そして、背景演出周期数カウンタの値を0に初期化する(ステップS613)。背景演出周期数カウンタは、11秒が経過する毎に(1/33秒周期で330コマのフレーム画像の表示が完了したとき)に+1されるカウンタである。さらに、動画像Aを構成するフレーム画像のフレーム画像データが展開される領域および動画像Bを構成するフレーム画像のフレーム画像データが展開される領域に対応するαバッファ(VRAMRS96Aに確保されるバッファ領域であってα値が設定されるバッファ領域)にα値として1.0を設定する(ステップS614)。
また、演出制御用CPU101は、マルチストリーム開始アドレス指令を描画プロセッサ109に出力する(ステップS615)。マルチストリーム開始アドレス指令で指定されるCGROM83のアドレスは、図16に例示された動画像A,Bの動画像データが格納されているアドレスである。さらに、マルチストリーム展開領域アドレス指令を描画プロセッサ109に出力する(ステップS616)。そして、マルチストリームの伸張を指示するデコード実行指令を描画プロセッサ109に出力する(ステップS617)。また、背景フレーム数カウンタの値を0に初期化する(ステップS618)。
ステップS621では、演出制御用CPU101は、背景フレーム数カウンタの値を+1する。そして、動画像Aに対応する展開領域(VRAMRS96Aにおいて、動画像Aを構成するフレーム画像のフレーム画像データが展開されている領域)の1フレームのフレーム画像データを、VRAMFB96Bに出力させる(ステップS622)。具体的には、描画プロセッサ109にVRAMFB転送指令(図38参照)を出力する。なお、VRAMFB転送指令における読出アドレスは、背景フレーム数カウンタの値に応じて変わっている。すなわち、そのときに出力されるべきフレーム画像データのVRAMRS96Aにおける格納アドレスがVRAMFB転送指令における読出アドレスに設定される。また、VRAMFB転送指令における書込アドレスは、描画領域のアドレスである。
また、動画像Bを構成するフレーム画像のフレーム画像データのα値を指定するための描画エフェクト指令を描画プロセッサ109に出力する(ステップS623)。そして、動画像Bに対応する展開領域(VRAMRS96Aにおいて、動画像Bを構成するフレーム画像のフレーム画像データが展開されている領域)の1フレームのフレーム画像データを、VRAMFB96Bに出力させる(ステップS624)。具体的には、描画プロセッサ109にVRAMFB転送指令(図38参照)を出力する。
なお、動画像Aと動画像Bとを同じ描画領域に描画する(全く重なるように合成する)場合には、ステップS624で出力されるVRAMFB転送指令における書込アドレスを、ステップS622で出力されるVRAMFB転送指令における書込アドレスと同じにする。
描画プロセッサ109において、デコーダ95は、ステップS617の処理で出力されたデコード指令に応じて、CGROM83に格納されている動画像Aデータと動画像Bデータとを伸張してVRAMRS96Aに格納する。また、ステップS622の処理で出力されたVRAMFB転送指令に応じて、動画像Aデータにおける1フレームのフレーム画像データを描画領域に描画する。そして、ステップS624の処理で出力されたVRAMFB転送指令に応じて、動画像Bデータにおける1フレームのフレーム画像データを描画領域に描画するのであるが、その際に、ステップS623の処理で出力された描画エフェクト指令によるα値を考慮した演算を行って、画像の合成を行う。なお、デコーダ95は、1/60秒毎に、データ圧縮されているフレーム画像データを伸張する。その際に、1/60秒毎に、動画像Aデータにおける1フレームのフレーム画像データと、動画像Bデータにおける1フレームのフレーム画像データとを交互に伸張する。よって、一方の動画像データについての伸張処理が完了するまで、他方の動画像データについての伸張処理を開始しない。
その後、演出制御用CPU101は、背景フレーム数カウンタの値が11秒の再生に相当する330になっているか否か確認する(ステップS625)。330になっていない場合には処理を終了する。330になっている場合には、背景演出周期数カウンタの値を+1する(ステップS626)。背景演出周期数カウンタの値が1である場合には(ステップS627)、αバッファにα値として0.5を設定して(ステップS628)、ステップS615に移行する。背景演出周期数カウンタの値が2である場合には(ステップS629)、αバッファにα値として0.2を設定して(ステップS630)、ステップS615に移行する。背景演出周期数カウンタの値が1でも2でもない場合には、ステップS613に移行する。
ステップS628,S630の処理によって、図20に示されたような表示が実現される。
図44は、図43に示す背景制御処理における変形例を説明するための説明図である。動画像Aデータと動画像Bデータとを描画領域における同じ位置に描画する場合には、既に説明したように、ステップS624で出力されるVRAMFB転送指令における書込アドレスを、ステップS622で出力されるVRAMFB転送指令における書込アドレスと同じにする(図44(A)の(a)参照)。また、ステップS624で出力されるVRAMFB転送指令における書込アドレスを、ステップS622で出力されるVRAMFB転送指令における書込アドレスからずらすことによって(図44(A)の(b)参照)、図18に例示されたような動画像Aと動画像Bがずれて合成された合成動画像を表示することができる。
また、描画領域のサイズよりも大きいフレーム画像を含む動画像A,BがCGROM83に格納されている場合には、VRAMRS96Aには、描画領域のサイズよりも大きい伸張後のフレーム画像データが格納されるが、その場合、ステップS622で出力されるVRAMFB転送指令における読出アドレスおよびステップS624で出力されるVRAMFB転送指令における読出アドレスを、描画領域の大きさに相当する領域のアドレスにすることによって、図22に示されたような背景画像の表示を実現することができる。なお、この場合の処理は、図44には図示されていない。
さらに、VRAMRS96Aに、描画領域のサイズよりも大きい伸張後のフレーム画像データが格納されている場合に、ステップS622で出力されるVRAMFB転送指令における読出アドレスを描画領域の大きさに相当する領域のアドレスにし、ステップS624で出力されるVRAMFB転送指令における読出アドレス描画領域の大きさよりも小さい領域のアドレスにすることによって(図44(B)参照)、動画像Aの一部が描画領域に描画され、かつ、その画像に動画像Bの一部が合成された画像が、画像表示装置9に表示される。すなわち、複数の動画像データのうちの動画像Aデータに対するクリッピング範囲を、他の動画像データのうちの動画像Bデータに対するクリッピング範囲と異ならせる。なお、描画プロセッサ109の表示回路97は、1/33秒毎に、VRAMFB96Bの描画領域に展開されている画像データにもとづく画像信号を画像表示装置9に出力する。
図45は、背景制御処理の他の例を示すフローチャートである。ここでは、図23に例示されたポリゴンに合成動画像をテクスチャとしてマッピングし、その後、レンダリング処理を行って得られた画像データを背景画像として表示する場合を例にして説明を行う。なお、図45において、図43におけるステップと共通するステップの一部は省略されている。
図45に示す背景制御処理において、演出制御用CPU101は、背景制御中フラグがセットされていない場合には、瓦状の形状を有するポリゴンをVRAMFB96Bの非描画領域に生成させるための処理を行う(ステップS612B)。具体的には、ポリゴンの形状とサイズとを指定するポリゴン描画指令を描画プロセッサ109に出力する。描画プロセッサ109は、ポリゴン描画指令(図39参照)を入力すると、ポリゴンをVRAMFB96Bの非描画領域に生成する。
また、ステップS622Bで、動画像Aに含まれるフレーム画像のテクスチャとして使用する領域を設定するためにテクスチャ属性設定指令を出力する。また、ステップS622Cでは、動画像Aに対応する展開領域の1フレームのフレーム画像データを、テクスチャとしてVRAMFB96Bに出力させるために、描画プロセッサ109にVRAMFB転送指令を出力するのであるが、書込アドレスとして、ポリゴン領域(ポリゴンが展開されている領域)を指定する。
また、ステップS624Bで、動画像Bに含まれるフレーム画像のテクスチャとして使用する領域を設定するためにテクスチャ属性設定指令を出力する。また、ステップS624Cでは、動画像Bに対応する展開領域の1フレームのフレーム画像データを、テクスチャとしてVRAMFB96Bに出力させるために、描画プロセッサ109にVRAMFB転送指令を出力するのであるが、書込アドレスとして、ポリゴン領域(ポリゴンが展開されている領域)を指定する。
次いで、VRAMFB96Bのポリゴン領域の画像データを、VRAMRS96Aの所定の領域(ポリゴン領域とする)に出力させる(ステップS624D)。具体的には、VRAMFBコピー指令を描画プロセッサ109に出力する。そして、レンダリングのために、VRAMRS96Aの描画領域の画像データを、VRAMFB96Bの描画領域に出力させる(ステップS624E)。
なお、描画プロセッサ109は、VRAMRS96Aの描画領域の画像データをVRAMFB96Bの描画領域に出力するときに、既にVRAMFB96Bの描画領域に展開されている画像データ(この例では、動画像Aを構成するフレーム画像のフレーム画像データ)と、各画素について演算を行う。つまり、合成処理(重ね合わせ処理)を行う。合成処理の際に、例えば、2つの画像データについて、α値を乗算したR,G,B値それぞれの加算処理を行う。
その他の処理は、図43に示された処理と同じである。図45におけるステップS622B,S622C,S624B〜S624Eの処理によって、図23に例示されたポリゴンに合成動画像をテクスチャとしてマッピングし、その後、レンダリング処理を行って得られた画像データを背景画像として表示することができる。なお、描画プロセッサ109の表示回路97は、1/33秒毎に、VRAMFB96Bの描画領域に展開されている画像データにもとづく画像信号を画像表示装置9に出力する。
図46は、図42に示されたメイン処理における演出制御プロセス処理(ステップS707)を示すフローチャートである。演出制御プロセス処理では、演出制御用CPU101は、演出制御プロセスフラグの値に応じてステップS800〜S807のうちのいずれかの処理を行う。各処理において、以下のような処理を実行する。
変動パターンコマンド受信待ち処理(ステップS800):遊技制御用マイクロコンピュータ560から変動パターンコマンドを受信しているか否か確認する。具体的には、コマンド解析処理でセットされる変動パターンコマンド受信フラグがセットされているか否を確認する。変動パターンコマンドを受信していれば、演出制御プロセスフラグの値を予告選択処理(ステップS801)に対応した値に変更する。
予告選択処理(ステップS801):画像表示装置9において、大当りの発生を遊技者に予告報知するための予告演出処理を実行するか否か決定し、予告演出処理を実行することに決定した場合には、予告種類を決定する。そして、演出制御プロセスフラグの値を飾り図柄変動開始処理(ステップS802)に対応した値に変更する。
飾り図柄変動開始処理(ステップS802):飾り図柄の変動が開始されるように制御する。そして、演出制御プロセスフラグの値を飾り図柄変動中処理(ステップS803)に対応した値に更新する。
飾り図柄変動中処理(ステップS803):変動パターンを構成する各変動状態(変動速度)の切替タイミング等を制御するとともに、変動時間の終了を監視する。そして、変動時間が終了したら、演出制御プロセスフラグの値を飾り図柄変動停止処理(ステップS804)に対応した値に更新する。
飾り図柄変動停止処理(ステップS804):全図柄停止を指示する演出制御コマンド(図柄確定指定コマンド)を受信したことにもとづいて、飾り図柄の変動を停止し表示結果(停止図柄)を導出表示する制御を行う。そして、演出制御プロセスフラグの値を大当り表示処理(ステップS805)または変動パターンコマンド受信待ち処理(ステップS800)に対応した値に更新する。
大当り表示処理(ステップS805):変動時間の終了後、画像表示装置9に大当りの発生を報知するための画面を表示する制御を行う。そして、演出制御プロセスフラグの値を大当り遊技中処理(ステップS806)に対応した値に更新する。
大当り遊技中処理(ステップS806):大当り遊技中の制御を行う。例えば、大入賞口開放前表示や大入賞口開放時表示の演出制御コマンドを受信したら、画像表示装置9におけるラウンド数の表示制御等を行う。そして、演出制御プロセスフラグの値を大当り終了処理(ステップS807)に対応した値に更新する。
大当り終了処理(ステップS807):画像表示装置9において、大当り遊技状態が終了したことを遊技者に報知する表示制御を行う。そして、演出制御プロセスフラグの値を変動パターンコマンド受信待ち処理(ステップS800)に対応した値に更新する。
図47は、図46に示された演出制御プロセス処理における変動パターンコマンド受信待ち処理(ステップS800)を示すフローチャートである。変動パターンコマンド受信待ち処理において、演出制御用CPU101は、変動パターンコマンド受信フラグがセットされているか否を確認する(ステップS811)。変動パターンコマンド受信フラグがセットされていれば、変動パターンコマンド受信フラグをリセットする(ステップS812)。なお、変動パターンコマンド受信フラグは、変動パターンコマンドを受信したときにコマンド解析処理においてセットされる。また、コマンド解析処理において、受信した変動パターンコマンド、または受信した変動パターンコマンドを示すデータが、RAMの変動パターンコマンド格納領域に保存される。そして、演出制御プロセスフラグの値を予告選択処理(ステップS801)に対応した値に更新する(ステップS813)。
図48は、図46に示された演出制御プロセス処理における予告選択処理を示すフローチャートである。予告選択処理において、演出制御用CPU101は、受信している変動パターンコマンド(コマンド解析処理において、RAMにおける変動パターンコマンド格納領域に格納されている)が示す変動パターンが変動パターンA〜C(図9に示すリーチA、リーチBおよびリーチCのこと。また、「短縮」および「延長」を含む変動パターンの種類も含まれる)のいずれかであるか否か確認する(ステップS821)。変動パターンA〜Cのいずれでもなければ処理を終了する。変動パターンA〜Cのいずれかであれば、予告決定用乱数を抽出し、抽出した乱数値にもとづいて、予告演出をするか否かと、予告演出をすることに決定した場合の予告演出の種類を決定する(ステップS822)。なお、予告演出をするか否か決定するときに、受信している表示結果特定コマンドも参照する。また、この実施の形態では、リーチA、リーチBおよびリーチCの変動パターンによる演出が行われているときに予告演出が実行可能であるが、他の種類の変動パターンによる演出が行われているときに予告演出が実行可能であるようにしてもよい。
また、予告演出をすることに決定した場合に、大当り時予告演出をすることに決定したときには大当り時予告フラグをセットし、はずれ時予告演出をすることに決定したときにははずれ時予告フラグをセットする(ステップS824)。そして、演出制御プロセスフラグの値を飾り図柄変動開始処理(ステップS802)に対応した値に更新する(ステップS825)。
図49は、予告演出をするか否かと、予告演出をすることに決定した場合の予告演出の種類を決定する処理の一例を示す説明図である。図49(A)には、受信している表示結果特定コマンド(コマンド解析処理で、RAMの表示結果特定コマンド格納領域に格納されている)が当りを示しているコマンド(表示結果2〜5指定コマンド。図12参照)である場合の例が示されている。図49(B)には、受信している表示結果特定コマンドがはずれを示しているコマンド(表示結果1指定コマンド。図12参照)である場合の例が示されている。
演出制御用CPU101は、ステップS822の処理において、抽出した乱数値が図49に示されている予告判定値と一致すると、一致した予告判定値に従って予告演出をする/しないを決定する。そして、当りを示している表示結果特定コマンドを受信し、予告演出することに決定した場合には、大当り時予告演出(図36参照)を実行することに決定する。また、はずれを示している表示結果特定コマンドを受信し、予告演出することに決定した場合には、はずれ時予告演出(図34参照)を実行することに決定する。
図50は、図46に示された演出制御プロセス処理における飾り図柄変動開始処理(ステップS802)を示すフローチャートである。飾り図柄変動開始処理において、演出制御用CPU101は、変動パターンコマンド格納領域から変動パターンコマンド、または受信した変動パターンコマンドを示すデータを読み出す(ステップS830)。
次いで、RAMの表示結果特定コマンド格納領域に格納されているデータ(すなわち、受信した表示結果特定コマンド)に応じて飾り図柄の表示結果(停止図柄)を決定する(ステップS831)。演出制御用CPU101は、決定した飾り図柄の表示結果を示すデータを飾り図柄表示結果格納領域に格納する。
なお、演出制御用CPU101は、ステップS831において、所定の乱数を抽出し、抽出した乱数にもとづいて停止図柄を決定する。このとき、はずれを示す表示結果特定コマンド(表示結果1指定コマンド)が受信されている場合には、はずれを想起させるような停止図柄の組み合わせ(例えば、左中右図柄が不一致、または左右図柄と中図柄とが不一致)を決定する。また、当りを示す表示結果特定コマンド(表示結果2〜5指定コマンド)が受信されている場合には、大当りを想起させるような停止図柄の組み合わせ(例えば、左中右図柄が一致)を決定する。なお、確変大当りを示す表示結果特定コマンド(表示結果4指定コマンド)が受信されている場合には、確変大当りを想起させるような停止図柄の組み合わせ(例えば、「7」「7」「7」)を決定するようにしてもよい。なお、大当りを想起させるような飾り図柄の停止図柄の組み合わせを大当り図柄といい、はずれを想起させるような飾り図柄の停止図柄の組み合わせをはずれ図柄ということがある。
そして、演出制御用CPU101は、変動パターンに応じたプロセステーブルを選択する(ステップS832)。そして、選択したプロセスデータにおける演出実行データ1に対応したプロセスタイマをスタートさせる(ステップS833)。次いで、演出制御用CPU101は、プロセスデータ1の内容(表示制御実行データ1、ランプ制御実行データ1、音番号データ1)に従って演出装置(演出用部品としての画像表示装置9、演出用部品としての各種ランプやLEDの発光体および演出用部品としてのスピーカ27)の制御を実行する(ステップS834)。例えば、画像表示装置9において変動パターンに応じた画像を表示させるために、描画プロセッサ109に指令を出力する。また、各種ランプを点灯/消灯制御を行わせるために、ランプドライバ基板35に対して制御信号(ランプ制御実行データ)を出力する。また、スピーカ27からの音声出力を行わせるために、音声出力基板70に対して制御信号(音番号データ)を出力する。
なお、この実施の形態では、演出制御用CPU101は、変動パターンコマンドに1対1に対応する変動パターンによる飾り図柄の可変表示が行われるように制御するが、演出制御用CPU101は、変動パターンコマンドに対応する複数種類の変動パターンから、使用する変動パターンを選択するようにしてもよい。
そして、変動時間タイマに、変動パターンコマンドで特定される変動時間に相当する値を設定し(ステップS835)、プロセスデータ有効フラグをセットし(ステップS836)、演出制御プロセスフラグの値を飾り図柄変動中処理(ステップS803)に対応した値にする(ステップS837)。
図51は、プロセステーブルの構成例を示す説明図である。プロセステーブルとは、演出制御用CPU101が演出装置の制御を実行する際に参照するプロセスデータが設定されたテーブルである。すなわち、演出制御用CPU101は、プロセステーブルに設定されているデータに従って画像表示装置9等の演出装置(演出用部品)の制御を行う。プロセステーブルは、プロセスタイマ設定値と表示制御実行データ、ランプ制御実行データおよび音番号データの組み合わせが複数集まったデータで構成されている。表示制御実行データには、飾り図柄の可変表示の可変表示時間(変動時間)中の変動態様を構成する各変動の態様を示すデータ等が記載されている。具体的には、画像表示装置9の表示画面の変更に関わるデータが記載されている。また、プロセスタイマ設定値には、その変動の態様での変動時間が設定されている。
図51に示すプロセステーブルは、演出制御基板80におけるROMに格納されている。また、プロセステーブルは、各変動パターンに応じて用意されている。さらに、予告演出を実行する場合に予告演出態様(予告種類)の違いに応じて異なるプロセステーブルが用意されている。
図52は、図46に示す演出制御プロセス処理における飾り図柄変動中処理(ステップS803)を示すフローチャートである。飾り図柄変動中処理において、演出制御用CPU101は、プロセスタイマの値を1減算するとともに(ステップS841)、変動時間タイマの値を1減算する(ステップS842)。プロセスタイマがタイムアウトしたら(ステップS843)、プロセスデータの切替を行う。すなわち、プロセステーブルにおける次に設定されているプロセスタイマ設定値をプロセスタイマに設定する(ステップS844)。また、その次に設定されている表示制御実行データにもとづいて画像表示装置9に対する制御状態を変更する(ステップS845A)。さらに、その次に設定されているランプ制御実行データおよび音番号データにもとづいてランプやLED等の発光体およびスピーカ27に対する制御状態を変更する(ステップS845B)。また、予告演出処理を行う(ステップS845C)。
また、変動時間タイマがタイムアウトしていれば(ステップS846)、演出制御プロセスフラグの値を飾り図柄変動停止処理(ステップS804)に応じた値に更新する(ステップS848)。変動時間タイマがタイムアウトしていなくても、図柄確定指定コマンドを受信したことを示す確定コマンド受信フラグがセットされていたら(ステップS847)、ステップS848に移行する。変動時間タイマがタイムアウトしていなくても図柄確定指定コマンドを受信したら変動を停止させる制御に移行するので、例えば、基板間でのノイズ等に起因して長い変動時間を示す変動パターンコマンドを受信したような場合でも、正規の変動時間経過時(特別図柄の変動終了時)に、飾り図柄の変動を終了させることができる。
図52は、図46に示す演出制御プロセス処理における飾り図柄変動停止処理(ステップS804)を示すフローチャートである。飾り図柄変動停止処理において、演出制御用CPU101は、確定コマンド受信フラグがセットされているか否か確認する(ステップS851)。確定コマンド受信フラグは、コマンド解析処理において、図柄確定指定コマンドが受信されたときにセットされる。確定コマンド受信フラグがセットされている場合には、確定コマンド受信フラグをリセットし(ステップS852)、決定されている停止図柄を導出表示する制御を行う(ステップS853)。そして、演出制御用CPU101は、大当りとすることに決定されているか否か確認する(ステップS854)。大当りとすることに決定されているか否かは、例えば、表示結果特定コマンド格納領域に格納されている表示結果特定コマンドによって確認される。なお、この実施の形態では、決定されている停止図柄によって、大当りとすることに決定されているか否か確認することもできる。
大当りとすることに決定されている場合には、演出制御プロセスフラグの値を大当り表示処理(ステップS805)に応じた値に更新する(ステップS855)。大当りとしないことに決定されている場合には、演出制御用CPU101は、演出制御プロセスフラグの値を変動パターンコマンド受信待ち処理(ステップS800)に応じた値に更新する(ステップS856)。
なお、この実施の形態では、演出制御用マイクロコンピュータ100は、図柄確定指定コマンドを受信したことを条件に、飾り図柄の変動(可変表示)を終了させる(ステップS851,S853参照)。しかし、受信した変動パターンコマンドにもとづく変動時間タイマがタイムアウトしたら、図柄確定指定コマンドを受信しなくても、飾り図柄の変動を終了させるように制御してもよい。その場合、遊技制御用マイクロコンピュータ560は、可変表示の終了を指定する図柄確定指定コマンドを送信しないようにしてもよい。
以下、ステップS845Aの画像表示装置9に対する制御状態を変更する処理を説明する。
図54〜図56は、図24に例示された「7」の飾り図柄から「8」の飾り図柄に変動する場合の処理を示すフローチャートである。なお、この例では、プロセステーブルにおける表示制御実行データi〜i+2を使用する場合を例にする。
プロセステーブルにおける次に使用する表示制御実行データが表示制御実行データiである場合には、演出制御用CPU101は、ステップS642〜S648の処理を実行する(ステップS641)。また、プロセステーブルにおける次に使用する表示制御実行データが表示制御実行データi+1である場合には、演出制御用CPU101は、ステップS652〜S658の処理を実行する(ステップS651)。また、プロセステーブルにおける次に使用する表示制御実行データが表示制御実行データi+2である場合には、演出制御用CPU101は、ステップS662〜S668の処理を実行する(ステップS661)。
ステップS642では、演出制御用CPU101は、VRAMFB転送指令を描画プロセッサ109に出力する。VRAMFB転送指令における読出アドレスはVRAMRS96Aにおける「7」の飾り図柄の画像データが格納されているアドレスである。次いで、板状ポリゴンをVRAMFB96Bの非描画領域に生成させるための処理を行う(ステップS643)。具体的には、ポリゴンの仮想三次元空間における配置位置と形状とサイズとを指定するポリゴン描画指令を描画プロセッサ109に出力する。描画プロセッサ109は、ポリゴン描画指令(図39参照)を入力すると、ポリゴンをVRAMFB96Bの非描画領域に生成する。なお、板状ポリゴンの画像データにおける各画素のα値を0にしておく。
次に、VRAMFB96Bのポリゴン領域の画像データを、VRAMRS96Aの所定の領域(ポリゴン領域とする)に出力させる(ステップS644)。具体的には、VRAMFBコピー指令を描画プロセッサ109に出力する。そして、レンダリングのために、VRAMRS96Aの描画領域の画像データを、VRAMFB96Bの非描画領域に出力させる(ステップS645)。
そして、VRAMFB96Bの非描画領域の画像データをVRAMRS96Aに転送させる(ステップS646)。この画像がマスクパターンとなる。
次いで、演出制御用CPU101は、CGROM転送指令を描画プロセッサ109に出力する(ステップS647)。読出アドレスは「8」の飾り図柄の画像データが格納されているアドレスであり、書込アドレスは、マスクパターンが形成されているアドレスである。そして、マスクパターンが形成されているアドレスに格納された画像データを、VRAMFB96Bの描画領域に出力させる(ステップS648)。ステップS648では、演出制御用CPU101は、VRAMFB転送指令を描画プロセッサ109に出力する。
以上のような処理によって図24(A)に示されたような画像が画像表示装置9に表示される。なお、この実施の形態では、マスクパターンを用いてクリッピングする処理は、マスクパターンが展開されている領域に「8」の飾り図柄の画像データを展開することによって実現されている(ステップS647)。
ステップS652では、演出制御用CPU101は、VRAMFB転送指令を描画プロセッサ109に出力する。VRAMFB転送指令における読出アドレスはVRAMRS96Aにおける「7」の飾り図柄の画像データが格納されているアドレスである。次いで、板状ポリゴンをVRAMFB96Bの非描画領域に生成させるための処理を行う(ステップS653)。なお、板状ポリゴンの画像データにおける各画素のα値を0にしておく。また、ステップS653の処理で作成される板状ポリゴンのサイズは、ステップS643の処理で作成される板状ポリゴンのサイズよりも大きい。また、ステップS653の処理で作成される板状ポリゴンの位置は、ステップS643の処理で作成される板状ポリゴンの位置とは異なる。よって、ポリゴンを移動させる処理が実現される。
次に、VRAMFB96Bのポリゴン領域の画像データを、VRAMRS96Aのポリゴン領域に出力させる(ステップS654)。具体的には、VRAMFBコピー指令を描画プロセッサ109に出力する。そして、レンダリングのために、VRAMRS96Aの描画領域の画像データを、VRAMFB96Bの非描画領域に出力させる(ステップS655)。
そして、VRAMFB96Bの非描画領域の画像データをVRAMRS96Aに転送させる(ステップS656)。この画像がマスクパターンとなる。
次いで、演出制御用CPU101は、CGROM転送指令を描画プロセッサ109に出力する(ステップS657)。読出アドレスは「8」の飾り図柄の画像データが格納されているアドレスであり、書込アドレスは、マスクパターンが形成されているアドレスである。そして、マスクパターンが形成されているアドレスに格納された画像データを、VRAMFB96Bの描画領域に出力させる(ステップS658)。ステップS658では、演出制御用CPU101は、VRAMFB転送指令を描画プロセッサ109に出力する。
以上のような処理によって図24(B)に示されたような画像が画像表示装置9に表示される。
ステップS662では、演出制御用CPU101は、VRAMFB転送指令を描画プロセッサ109に出力する。VRAMFB転送指令における読出アドレスはVRAMRS96Aにおける「7」の飾り図柄の画像データが格納されているアドレスである。次いで、板状ポリゴンをVRAMFB96Bの非描画領域に生成させるための処理を行う(ステップS663)。なお、板状ポリゴンの画像データにおける各画素のα値を0にしておく。また、ステップS663の処理で作成される板状ポリゴンのサイズは、ステップS653の処理で作成される板状ポリゴンのサイズよりも大きい。また、ステップS663の処理で作成される板状ポリゴンの位置は、ステップS653の処理で作成される板状ポリゴンの位置とは異なる。よって、ポリゴンを移動させる処理が実現される。
次に、VRAMFB96Bのポリゴン領域の画像データを、VRAMRS96Aのポリゴン領域に出力させる(ステップS664)。具体的には、VRAMFBコピー指令を描画プロセッサ109に出力する。そして、レンダリングのために、VRAMRS96Aの描画領域の画像データを、VRAMFB96Bの非描画領域に出力させる(ステップS665)。
そして、VRAMFB96Bの非描画領域の画像データをVRAMRS96Aに転送させる(ステップS666)。この画像がマスクパターンとなる。
次いで、演出制御用CPU101は、CGROM転送指令を描画プロセッサ109に出力する(ステップS667)。読出アドレスは「8」の飾り図柄の画像データが格納されているアドレスであり、書込アドレスは、マスクパターンが形成されているアドレスである。そして、マスクパターンが形成されているアドレスに格納された画像データを、VRAMFB96Bの描画領域に出力させる(ステップS668)。ステップS668では、演出制御用CPU101は、VRAMFB転送指令を描画プロセッサ109に出力する。
以上のような処理によって図24(C)に示されたような画像が画像表示装置9に表示される。
その後、演出制御用CPU101は、「8」の飾り図柄を画像表示装置9に表示させるために、描画プロセッサ109を制御する。
なお、この実施の形態では、サイズが異なるポリゴンを作成することによって(ステップS643,S653,S663)、マスクパターンのサイズを変えたが、ポリゴンのサイズを変えず、レンダリング処理(ステップS645,S655,S665)の際に、画像データを書き込む領域のサイズを読み出す領域のサイズを変えることによって、マスクパターンのサイズを変えるようにしてもよい。描画プロセッサ109は、例えば、画像データを書き込む領域のサイズが読み出す領域のサイズよりも大きい場合には、補間処理によって画素を生成して画像の拡大処理を行う。
また、レンダリングする画像の縁部分を半透明化する処理を施すようにして、画像における他の画像との境界部分を滑らかに表示できるようにしてもよい。具体的には、ステップS647,S657,S667の処理を実行するときに、「8」の画像データにおける縁部分のα値を1.0よりも低い値にする指令を描画プロセッサ109に与えて、縁部をαブレンドして合成処理を行わせる。
また、この実施の形態では、マスクパターンを作成し、マスクパターン内に「8」の画像データを貼り付けるようにしたが、ポリゴンに、あらかじめ決められている静止画像の画像データを貼り付けてからレンダリング処理を行うようにしてもよい。その場合には、演出制御用CPU101は、例えば、ステップS643の処理とステップS644の処理の間で、CGROM転送命令によって描画プロセッサ109にCGROM83内のあらかじめ決められている静止画像の画像データをVRAMRS96Aに展開させ、VRAMFB転送指令によって、VRAMRS96Aに展開されている静止画像の画像データをテクスチャとしてポリゴンに貼り付ける。そのような制御を行うことによって、表示される飾り図柄を多彩にすることができる。
図57は、上記のステップS643、S653およびS663の処理と、変形例におけるステップS643、S653およびS663の処理とを示す説明図である。変形例とは、「6」の飾り図柄から「7」の飾り図柄に変動する場合の処理である。すなわち、図27に示された例を実現するための処理である。
上記の「7」の飾り図柄から「8」の飾り図柄に変動する場合の処理では、ステップS643の処理において、作成される板状ポリゴンのサイズは小さく、かつ、奥側に90度倒れたかのような位置に作成される(図25参照)。また、ステップS653の処理において、作成される板状ポリゴンのサイズは中程度であり、かつ、奥側に90度倒れたかのような位置に作成される。そして、ステップS663の処理において、作成される板状ポリゴンのサイズは大きく、かつ、奥側に90度倒れたかのような位置に作成される。
また、「6」の飾り図柄から「7」の飾り図柄に変動する場合には、基本的に図54〜図55に示す処理で画像表示部9における変動表示を実現できるが、ステップS643の処理において、作成される板状ポリゴンのサイズは小さく、かつ、右側に90度倒れたかのような位置に作成される(図28参照)。また、ステップS653の処理において、作成される板状ポリゴンのサイズは中程度であり、かつ、右側に90度倒れたかのような位置に作成される。そして、ステップS663の処理において、作成される板状ポリゴンのサイズは大きく、かつ、右側に90度倒れたかのような位置に作成される。
以上のように、描画プロセッサ109は、可変表示される複数の識別情報の種類に応じた形状にして可変表示される複数の識別情報の種類に応じた位置に移動させる制御を行っている。なお、ここでは、「7」の飾り図柄から「8」の飾り図柄に変動する場合「6」の飾り図柄から「7」の飾り図柄に変動する場合を例にしたが、他の変動の場合にも、識別情報の種類に応じた形状にして可変表示される複数の識別情報の種類に応じた位置に移動させる制御を行うようにしてもよい。
なお、「6」の飾り図柄から「7」の飾り図柄に変動する場合にも、レンダリング処理の際に、画像データを書き込む領域のサイズを読み出す領域のサイズを変えることによって、マスクパターンのサイズを変えることができる。
図58は、ステップS645Cの予告演出処理(図52参照)を示すフローチャートである。予告演出処理において、演出制御用CPU101は、大当り時予告フラグまたははずれ時予告フラグがセットされているか否か確認する(ステップS671)。いずれかのフラグがセットされている場合には、予告演出中フラグがセットされているか否か確認する(ステップS672)。予告演出中フラグがセットされていない場合には、予告演出開始タイミングになったか否か確認する(ステップS673)。予告演出開始タイミングとは、あらかじめ決められている可変表示の開始時から所定時間が経過した時点であり、プロセスデータにその時点を示すデータを設定しておくことによって、演出制御用CPU101は、予告演出開始タイミングになったか否か判定できる。
予告演出開始タイミングになった場合には、予告演出中フラグをセットする(ステップS674)。そして、演出制御用CPU101は、マルチストリーム開始アドレス指令を描画プロセッサ109に出力する(ステップS675)。マルチストリーム開始アドレス指令で指定されるCGROM83のアドレスは、図33に例示された動画像A,Bの動画像データが格納されているアドレスである。さらに、マルチストリーム展開領域アドレス指令を描画プロセッサ109に出力する(ステップS676)。そして、マルチストリームの伸張を指示するデコード実行指令を描画プロセッサ109に出力する(ステップS677)。また、予告演出周期数カウンタの値を0に初期化する(ステップS678)。
なお、デコーダ95は、デコード実行指令に応じて、1/60秒毎に、データ圧縮されているフレーム画像データを伸張する。その際に、1/60秒毎に、動画像Aデータにおける1フレームのフレーム画像データと、動画像Bデータにおける1フレームのフレーム画像データとを交互に伸張する。よって、一方の動画像データについての伸張処理が完了するまで、他方の動画像データについての伸張処理を開始しない。
ステップS672において、予告演出中フラグがセットされていることを確認したら、演出制御用CPU101は、予告演出周期数カウンタの値が3になったか否か確認する(ステップS680)。3になっていなければ、予告演出周期数カウンタの値を+1する(ステップS681)。また、板状ポリゴンを、VRAMFB96Bの非描画領域に生成させるための処理を行う(ステップS682)。具体的には、ポリゴンの形状とサイズとを指定するポリゴン描画指令を描画プロセッサ109に出力する。描画プロセッサ109は、ポリゴン描画指令(図39参照)を入力すると、ポリゴンをVRAMFB96Bの非描画領域に生成する。
なお、板状ポリゴンのサイズおよび作成位置は、予告演出周期数カウンタの値に応じて異なる(図33(C)および図35参照)。具体的には、演出制御用CPU101は、予告演出周期数カウンタの値が1少ない場合に対して、板状ポリゴンを平行移動させたり、回転させたり、傾斜させたりしたときの位置に板状ポリゴンを作成させるように描画プロセッサ109に指令を与える。描画プロセッサ109は、仮想三次元空間において、指令に応じた位置にポリゴンを作成する。
また、動画像A(図33(A)参照)に含まれるフレーム画像のテクスチャとして使用する領域を設定するためにテクスチャ属性設定指令を出力する(ステップS683)。また、動画像Aに対応する展開領域の1フレームのフレーム画像データを、テクスチャとしてVRAMFB96Bに出力させるために、描画プロセッサ109にVRAMFB転送指令を出力するのであるが、書込アドレスとして、ポリゴン領域(ポリゴンが展開されている領域)を指定する(ステップS684)。
また、動画像B(図33(B)参照)を構成するフレーム画像のフレーム画像データのα値を指定するための描画エフェクト指令を描画プロセッサ109に出力する(ステップS685)。さらに、動画像Bに含まれるフレーム画像のテクスチャとして使用する領域を設定するためにテクスチャ属性設定指令を出力する(ステップS686)。そして、動画像Bに対応する展開領域(VRAMRS96Aにおいて、動画像Bを構成するフレーム画像のフレーム画像データが展開されている領域)の1フレームのフレーム画像データを、VRAMFB96Bのポリゴン領域に出力させる(ステップS687)。具体的には、描画プロセッサ109にVRAMFB転送指令(図38参照)を出力する。
なお、描画プロセッサ109は、VRAMRS96Aの描画領域の画像データをVRAMFB96Bの描画領域に出力するときに、既にVRAMFB96Bの描画領域に展開されている画像データ(この例では、動画像Aを構成するフレーム画像のフレーム画像データ)と、各画素について演算を行う。つまり、合成処理(重ね合わせ処理)を行う。合成処理の際に、例えば、2つの画像データについて、α値を乗算したR,G,B値それぞれの加算処理を行う。
次いで、VRAMFB96Bのポリゴン領域の画像データを、VRAMRS96Aの所定の領域(ポリゴン領域とする)に出力させる(ステップS688)。具体的には、VRAMFBコピー指令を描画プロセッサ109に出力する。そして、レンダリングのために、VRAMRS96Aの描画領域の画像データを、VRAMFB96Bの描画領域における予告演出領域9aに対応する領域(予告演出ウィンドウ)に出力させる(ステップS689)。なお、描画プロセッサ109は、ステップS687の処理によるVRAMFB転送指令に応じた処理を実行するすることによって、合成動画像(重ね合わせ画像)の画像データを板状ポリゴンに貼り付けることになる。
予告演出周期数カウンタの値が3になっている場合には、演出制御用CPU101は、動画再生中フラグがセットされているか否か確認する(ステップS691)。
動画再生中フラグがセットされていない場合には、演出制御用CPU101は、マルチストリーム開始アドレス指令を描画プロセッサ109に出力する(ステップS692)。マルチストリーム開始アドレス指令で指定されるCGROM83のアドレスは、予告演出周期数カウンタの値が2であるときにステップS682およびS683で使用されたフレーム画像データによるフレーム画像から始まる2つの動画像である(以下、これらも動画像A,Bという。)。さらに、マルチストリーム展開領域アドレス指令を描画プロセッサ109に出力する(ステップS693)。そして、マルチストリームの伸張を指示するデコード実行指令を描画プロセッサ109に出力する(ステップS694)。そして、動画再生中フラグをセットする(ステップS695)。
なお、デコーダ95は、デコード実行指令に応じて、1/60秒毎に、データ圧縮されているフレーム画像データを伸張する。その際に、1/60秒毎に、動画像Aデータにおける1フレームのフレーム画像データと、動画像Bデータにおける1フレームのフレーム画像データとを交互に伸張する。よって、一方の動画像データについての伸張処理が完了するまで、他方の動画像データについての伸張処理を開始しない。
また、描画プロセッサ109は、ステップS694の処理によって伸張処理が開始される動画像データについてテクスチャの貼り付けやレンダリングの処理を実行しない。つまり、ステップS694の処理によって伸張処理が開始される動画像データによる動画像はそのまま画像表示装置9に表示される。
CGROM83には、ステップS678の処理によって伸張処理が開始される動画像Aデータおよび動画像Bデータと、ステップS694の処理によって伸張処理が開始される動画像Aデータおよび動画像Bデータとが別個に格納されている。ステップS694の処理によって伸張処理が開始される動画像Aデータおよび動画像Bデータによる動画像の解像度は、ステップS678の処理によって伸張処理が開始される動画像Aデータおよび動画像Bデータによる動画像の解像度よりも高い。高解像度の動画像データ(ステップS694の処理によって伸張処理が開始される動画像Aデータおよび動画像Bデータ)を再生するときにはテクスチャの貼り付けやレンダリングの処理を実行せず、高解像度の動画像データを再生しているときの描画プロセッサ109の負担を軽くすることができる。また、動画像データをそのまま再生するときには、表示品位を上げることができる。
動画再生中フラグがセットされている場合には、動画像Aに対応する展開領域の1フレームのフレーム画像データを、VRAMRS96Aにおける他の領域に出力させる(ステップS696)。具体的には、描画プロセッサ109にVRAMRS間転送指令(図38参照)を出力する。また、動画像Bに対応する展開領域の1フレームのフレーム画像データを、VRAMRS96Aに出力させる(ステップS697)。具体的には、描画プロセッサ109にVRAMRS間転送指令(図38参照)を出力する。なお、VRAMRS間転送指令における書込アドレスは、動画像Aに対応する展開領域の1フレームのフレーム画像データを転送した領域のアドレスである。よって、動画像Aのフレーム画像データと動画像Bのフレーム画像データとが、VRAMRS96Aにおける他の領域において合成される。
なお、描画プロセッサ109は、VRAMRS間転送指令にもとづいて描画領域の画像データをVRAMRS96Aに出力するときに、既にVRAMRS96Aに展開されている画像データ(この例では、動画像Aを構成するフレーム画像のフレーム画像データ)と、各画素について演算を行う。つまり、合成処理(重ね合わせ処理)を行う。合成処理の際に、例えば、2つの画像データについて、α値を乗算したR,G,B値それぞれの加算処理を行う。
そして、演出制御用CPU101は、VRAMRS96Aにおける他の領域にある画像データを、VRAMFB96Bの描画領域における予告演出領域9aに対応する領域(予告演出ウィンドウ)に出力させる(ステップS698)。具体的には、描画プロセッサ109にVRAMFB転送指令(図38参照)を出力する。
以上のようにして、図34および図36に例示されたような予告演出が実行される。なお、上記のように、描画プロセッサ109は、演出制御用CPU101の指令に応じて、ポリゴンを用いて表示用の画像データを複数フレームに亘って作成したら、複数フレームのうちの最後のフレーム画像データに続くフレーム画像データから動画像データを再生する。
図60および図61は、図31に例示されたポリゴンに動画像を貼り付けて「7」の飾り図柄を表示する場合の処理を示すフローチャートである。なお、この例では、プロセステーブルにおける表示制御実行データi〜i+3を使用する場合を例にする。
プロセステーブルにおける次に使用する表示制御実行データが表示制御実行データiである場合には、演出制御用CPU101は、ステップS902〜S905の処理を実行する(ステップS901)。また、プロセステーブルにおける次に使用する表示制御実行データが表示制御実行データi+1である場合には、演出制御用CPU101は、ステップS907〜S912の処理を実行する(ステップS906)。また、プロセステーブルにおける次に使用する表示制御実行データが表示制御実行データi+2である場合には、演出制御用CPU101は、ステップS922〜S927の処理を実行する(ステップS921)。また、プロセステーブルにおける次に使用する表示制御実行データが表示制御実行データi+3である場合には、演出制御用CPU101は、ステップS932〜S937の処理を実行する(ステップS931)。
ステップS902では、演出制御用CPU101は、VRAMFB転送指令を描画プロセッサ109に出力する。VRAMFB転送指令における読出アドレスはVRAMRS96Aにおける「7」の飾り図柄の画像データが格納されているアドレスである。また、VRAMFB転送指令における書込アドレスはVRAMFB96Bにおける描画領域である。
次いで、シングルストリーム開始アドレス指令を描画プロセッサ109に出力する(ステップS903)。シングルストリーム開始アドレス指令で指定されるCGROM83のアドレスは、図31に例示された飾り図柄の表示領域に存在する飛行機が移動するような動画像の動画像データが格納されているアドレスである。さらに、シングルストリーム展開領域アドレス指令を描画プロセッサ109に出力する(ステップS904)。そして、シングルストリームの伸張を指示するデコード実行指令を描画プロセッサ109に出力する(ステップS905)。
ステップS907では、演出制御用CPU101は、VRAMFB転送指令を描画プロセッサ109に出力する。VRAMFB転送指令における読出アドレスはVRAMRS96Aにおける「7」の飾り図柄の画像データが格納されているアドレスである。また、VRAMFB転送指令における書込アドレスはVRAMFB96Bにおける描画領域である。
次いで、演出制御用CPU101は、板状ポリゴンをVRAMFB96Bの非描画領域に生成させるための処理を行う(ステップS908)。具体的には、ポリゴンの形状とサイズとを指定するポリゴン描画指令を描画プロセッサ109に出力する。描画プロセッサ109は、ポリゴン描画指令(図39参照)を入力すると、ポリゴンをVRAMFB96Bの非描画領域に生成する。また、動画像に含まれるフレーム画像のテクスチャとして使用する領域を設定するためにテクスチャ属性設定指令を出力する(ステップS909)。また、動画像に対応する展開領域の1フレームのフレーム画像データを、テクスチャとしてVRAMFB96Bに出力させるために、描画プロセッサ109にVRAMFB転送指令を出力するのであるが、書込アドレスとして、ポリゴン領域(ポリゴンが展開されている領域)を指定する(ステップS910)。
さらに、VRAMFB96Bのポリゴン領域の画像データを、VRAMRS96Aの所定の領域(ポリゴン領域とする)に出力させる(ステップS911)。具体的には、VRAMFBコピー指令を描画プロセッサ109に出力する。そして、レンダリングのために、VRAMRS96Aの描画領域の画像データを、VRAMFB96Bの描画領域に出力させる(ステップS912)。
ステップS922では、演出制御用CPU101は、VRAMFB転送指令を描画プロセッサ109に出力する。VRAMFB転送指令における読出アドレスはVRAMRS96Aにおける「7」の飾り図柄の画像データが格納されているアドレスである。また、VRAMFB転送指令における書込アドレスはVRAMFB96Bにおける描画領域である。
次いで、演出制御用CPU101は、板状ポリゴンをVRAMFB96Bの非描画領域に生成させるための処理を行う(ステップS923)。ステップS923の処理で作成される板状ポリゴンのサイズは、ステップS908の処理で作成される板状ポリゴンのサイズよりも大きい。また、ステップS923の処理で作成される板状ポリゴンの奥行きは、ステップS908の処理で作成される板状ポリゴンの奥行きよりも浅い(Z値が小さい)。また、動画像に含まれるフレーム画像のテクスチャとして使用する領域を設定するためにテクスチャ属性設定指令を出力する(ステップS924)。また、動画像に対応する展開領域の1フレームのフレーム画像データを、テクスチャとしてVRAMFB96Bに出力させるために、描画プロセッサ109にVRAMFB転送指令を出力するのであるが、書込アドレスとして、ポリゴン領域を指定する(ステップS925)。
さらに、VRAMFB96Bのポリゴン領域の画像データを、VRAMRS96Aのポリゴン領域に出力させる(ステップS926)。具体的には、VRAMFBコピー指令を描画プロセッサ109に出力する。そして、レンダリングのために、VRAMRS96Aの描画領域の画像データを、VRAMFB96Bの描画領域に出力させる(ステップS927)。
ステップS932では、演出制御用CPU101は、VRAMFB転送指令を描画プロセッサ109に出力する。VRAMFB転送指令における読出アドレスはVRAMRS96Aにおける「7」の飾り図柄の画像データが格納されているアドレスである。また、VRAMFB転送指令における書込アドレスはVRAMFB96Bにおける描画領域である。
次いで、演出制御用CPU101は、板状ポリゴンをVRAMFB96Bの非描画領域に生成させるための処理を行う(ステップS933)。ステップS933の処理で作成される板状ポリゴンのサイズは、ステップS923の処理で作成される板状ポリゴンのサイズよりも大きい。また、ステップS933の処理で作成される板状ポリゴンの奥行きは、ステップS923の処理で作成される板状ポリゴンの奥行きよりも浅い(Z値が小さい)。また、動画像に含まれるフレーム画像のテクスチャとして使用する領域を設定するためにテクスチャ属性設定指令を出力する(ステップS934)。また、動画像に対応する展開領域の1フレームのフレーム画像データを、テクスチャとしてVRAMFB96Bに出力させるために、描画プロセッサ109にVRAMFB転送指令を出力するのであるが、書込アドレスとして、ポリゴン領域を指定する(ステップS935)。
さらに、VRAMFB96Bのポリゴン領域の画像データを、VRAMRS96Aのポリゴン領域に出力させる(ステップS936)。具体的には、VRAMFBコピー指令を描画プロセッサ109に出力する。そして、レンダリングのために、VRAMRS96Aの描画領域の画像データを、VRAMFB96Bの描画領域に出力させる(ステップS937)。
以上のような処理によって図31に示されたような画像が画像表示装置9に表示される。
なお、この実施の形態では、サイズが異なるポリゴンを作成することによって(ステップS908,S923,S933)、マスクパターンのサイズを変えたが、ポリゴンのサイズを変えず、レンダリング処理(ステップS912,S927,S938)の際に、画像データを書き込む領域のサイズを読み出す領域のサイズを変えることによって、飾り図柄の表示領域のサイズを変えるようにしてもよい。
図62は、上記のステップS908、S923およびS933の処理と、変形例におけるステップS908、S923およびS933の処理とを示す説明図である。変形例とは、図32に示された例を実現するための処理である。
図31に示されたような画像表示を実現する場合の処理では、ステップS908の処理において、作成される板状ポリゴンのサイズは小さく、かつ、奥側に90度倒れたかのような位置に作成される(図31参照)。また、ステップS923の処理において、作成される板状ポリゴンのサイズは中程度であり、かつ、奥側に90度倒れたかのような位置に作成される。そして、ステップS933の処理において、作成される板状ポリゴンのサイズは大きく、かつ、奥側に90度倒れたかのような位置に作成される。
また、図32に示されたような画像表示を実現する場合の処理では、基本的に図60および図61に示す処理で画像表示部9における変動表示を実現できるが、ステップS908の処理において、作成される板状ポリゴンのサイズは小さく、かつ、左側に10度倒れたかのような位置に作成される(図32参照)。また、ステップS923の処理において、作成される板状ポリゴンのサイズは中程度であり、かつ、左側に20度倒れたかのような位置に作成される。そして、ステップS933の処理において、作成される板状ポリゴンのサイズは大きく、かつ、左側に30度倒れたかのような位置に作成される。描画プロセッサ109は、仮想三次元空間において、例えば、作成する位置(座標)や形状(具体的には、三角形の組み合わせ方など)を変えてあらためて板状ポリゴンを作成することによって、ポリゴンの移動(平行移動だけでなく、回転させたり、傾斜させたりする等ことを含む概念。また、それらの停止も含む概念)や形状変化を実現する。また、図32に示された例では、板状ポリゴンの作成位置が視点に近づくにつれて板状ポリゴンの倒れる角度が大きくなっている。
図63は、ポリゴンに2つの動画像を合成した合成動画像を貼り付けて「7」の飾り図柄を表示する場合の処理を示すフローチャートである。なお、この例では、プロセステーブルにおける表示制御実行データi〜i+3を使用する場合を例にする。以下、2つの動画像を動画像A,Bという。
プロセステーブルにおける次に使用する表示制御実行データが表示制御実行データiである場合には、演出制御用CPU101は、「7」の飾り図柄の画像データを描画領域に書き込むためにVRAMFB転送指令を描画プロセッサ109に出力するのであるが、次いで、マルチストリーム開始アドレス指令を描画プロセッサ109に出力する(ステップS903B)。マルチストリーム開始アドレス指令で指定されるCGROM83のアドレスは、動画像A,Bの動画像データが格納されているアドレスである。さらに、マルチストリーム展開領域アドレス指令を描画プロセッサ109に出力する(ステップS904B)。そして、動画像Aデータと動画像Bデータの伸張を指示するデコード実行指令を描画プロセッサ109に出力する(ステップS905B)。
なお、デコーダ95は、デコード実行指令に応じて、1/60秒毎に、データ圧縮されているフレーム画像データを伸張する。その際に、1/60秒毎に、動画像Aデータにおける1フレームのフレーム画像データと、動画像Bデータにおける1フレームのフレーム画像データとを交互に伸張する。よって、一方の動画像データについての伸張処理が完了するまで、他方の動画像データについての伸張処理を開始しない。
プロセステーブルにおける次に使用する表示制御実行データが表示制御実行データi+1である場合には、演出制御用CPU101は、「7」の飾り図柄の画像データを描画領域に書き込むためにVRAMFB転送指令を描画プロセッサ109に出力し(ステップS907)、板状ポリゴンをVRAMFB96Bの非描画領域に生成させるための処理を行う(ステップS908)のであるが、次いで、動画像Aに含まれるフレーム画像のテクスチャとして使用する領域を設定するためにテクスチャ属性設定指令を出力する(ステップS909B)。また、動画像Aに対応する展開領域の1フレームのフレーム画像データを、テクスチャとしてVRAMFB96Bに出力させるために、描画プロセッサ109にVRAMFB転送指令を出力するのであるが、書込アドレスとして、ポリゴン領域(ポリゴンが展開されている領域)を指定する(ステップS910B)。
また、動画像Bを構成するフレーム画像のフレーム画像データのα値を指定するための描画エフェクト指令を描画プロセッサ109に出力する(ステップS915)。さらに、動画像Bに含まれるフレーム画像のテクスチャとして使用する領域を設定するためにテクスチャ属性設定指令を出力する(ステップS916)。そして、動画像Bに対応する展開領域(VRAMRS96Aにおいて、動画像Bを構成するフレーム画像のフレーム画像データが展開されている領域)の1フレームのフレーム画像データを、VRAMFB96Bのポリゴン領域に出力させる(ステップS917)。具体的には、描画プロセッサ109にVRAMFB転送指令(図38参照)を出力する。
なお、描画プロセッサ109は、VRAMRS96Aの描画領域の画像データをVRAMFB96Bの描画領域に出力するときに、既にVRAMFB96Bの描画領域に展開されている画像データ(この例では、動画像Aを構成するフレーム画像のフレーム画像データ)と、各画素について演算を行う。つまり、合成処理(重ね合わせ処理)を行う。合成処理の際に、例えば、2つの画像データについて、α値を乗算したR,G,B値それぞれの加算処理を行う。
次いで、VRAMFB96Bのポリゴン領域の画像データを、VRAMRS96Aの所定の領域(ポリゴン領域とする)に出力させる(ステップS918)。具体的には、VRAMFBコピー指令を描画プロセッサ109に出力する。そして、レンダリングのために、VRAMRS96Aの描画領域の画像データを、VRAMFB96Bの描画領域に出力させる(ステップS912)。
プロセステーブルにおける次に使用する表示制御実行データが表示制御実行データi+2,i+3である場合には、プロセステーブルにおける次に使用する表示制御実行データが表示制御実行データi+1である場合と同様の処理を行う。ただし、作成されるポリゴンのサイズ等は、表示制御実行データが表示制御実行データi+1である場合とは異なる。
なお、この実施の形態では、サイズが異なるポリゴンを作成することによって、マスクパターンのサイズを変えたが、ポリゴンのサイズを変えず、レンダリング処理の際に、画像データを書き込む領域のサイズを読み出す領域のサイズを変えることによって、飾り図柄の表示領域のサイズを変えるようにしてもよい。
図60および図61に示された処理では、図31または図32に例示されたポリゴンに動画像を貼り付けて「7」の飾り図柄を表示したが、ポリゴンが視点から遠い場合には静止画像をテクスチャとしてポリゴンに貼り付け、ポリゴンが視点から近い場合には動画像をテクスチャとしてポリゴンに貼り付けるようにしてもよい。図64および図65は、そのような処理を示すフローチャートである。ここでは、図31または図32の上段および中段に示す場合には静止画像をテクスチャとしてポリゴンに貼り付け、図31または図32の下段に示す場合には動画像をテクスチャとしてポリゴンに貼り付ける例を説明する。なお、この例でも、プロセステーブルにおける表示制御実行データi〜i+3を使用する場合を例にする。また、図60および図61に示されたフローチャートにおける処理と同じ処理については、図64および図65において同一符号を付して説明を省略する。
プロセステーブルにおける次に使用する表示制御実行データが表示制御実行データiである場合には、演出制御用CPU101は、「7」の飾り図柄の画像データを描画領域に書き込むためにVRAMFB転送指令を描画プロセッサ109に出力し(ステップS907)、板状ポリゴンをVRAMFB96Bの非描画領域に生成させるための処理を行う(ステップS908)のであるが、次いで、図31や図32の上段に示された画像(飛行機を含む画像)の画像データをCGROM83からVRAMRS96Aに転送させるために、描画プロセッサ109に、CGROM転送指令を出力する(ステップS909B)。
そして、ステップS909の処理を実行し、VRAMRS96Aに展開された画像データをテクスチャとしてVRAMFB96Bに出力させるために、描画プロセッサ109にVRAMFB転送指令を出力する(ステップS910B)。VRAMFB転送指令において、書込アドレスとして、ポリゴン領域(ポリゴンが展開されている領域)を指定する。その後、ステップS911,S912の処理を行う。なお、描画プロセッサ109は、演出制御用CPU101によるステップS910Bの処理に応じて画像データを転送することによって、動画像データにおけるフレーム画像データにもとづく画像をテクスチャとして板状ポリゴンに貼り付ける処理を実行することになる。
プロセステーブルにおける次に使用する表示制御実行データが表示制御実行データi+2である場合には、演出制御用CPU101は、「7」の飾り図柄の画像データを描画領域に書き込むためにVRAMFB転送指令を描画プロセッサ109に出力し(ステップS922)、板状ポリゴンをVRAMFB96Bの非描画領域に生成させるための処理を行う(ステップS923)のであるが、次いで、図31や図32の中段に示された画像(飛行機を含む画像)の画像データをCGROM83からVRAMRS96Aに転送させるために、描画プロセッサ109に、CGROM転送指令を出力する(ステップS923B)。
そして、ステップS924の処理を実行し、VRAMRS96Aに展開された画像データをテクスチャとしてVRAMFB96Bに出力させるために、描画プロセッサ109にVRAMFB転送指令を出力する(ステップS925B)。VRAMFB転送指令において、書込アドレスとして、ポリゴン領域(ポリゴンが展開されている領域)を指定する。その後、ステップS926,S927の処理を行う。
以上のような処理によって、ポリゴンが視点から遠い場合には静止画像がテクスチャとしてポリゴンに貼り付けられる。なぜなら、ステップS923の処理で作成される板状ポリゴンの奥行きは、ステップS908の処理で作成される板状ポリゴンの奥行きよりも浅く(Z値が小さい)、ステップS933の処理で作成される板状ポリゴンの奥行きは、ステップS923の処理で作成される板状ポリゴンの奥行きよりも浅い(Z値が小さい)。よって、描画プロセッサ109は、レンダリングする際に用いる視点がポリゴンから所定距離以内(ステップS933の処理で作成される板状ポリゴンの奥行きに相当)の位置にあるとき(所定の視点が仮想三次元空間に配置されたポリゴンから所定距離を越えた位置にあるとき)には、動画像データにおけるフレーム画像データにもとづく画像をテクスチャとし、レンダリングする際に用いる視点がポリゴンから所定距離を越えた位置にあるとき(視点が仮想三次元空間に配置されたポリゴンから所定距離内の位置にあるとき)には、静止画データにもとづく画像をテクスチャとする処理を実行していることになる。
なお、ステップS923Bの処理で転送される静止画像データによるデータのサイズは、ステップS909Bの処理で転送される静止画像データによるデータのサイズよりも大きい。また、プロセステーブルにおける次に使用する表示制御実行データが表示制御実行データi+3である場合の処理は、図61に示された処理と同様である。よって、ポリゴンが視点から近い場合には動画像がテクスチャとしてポリゴンに貼り付けられる。なお、描画プロセッサ109は、演出制御用CPU101によるステップS935の処理に応じて画像データを転送することによって、静止画像データにおけるフレーム画像データにもとづく画像をテクスチャとして板状ポリゴンに貼り付ける処理を実行することになる。また、図64および図65には明示されていないが、表示制御実行データi+3よりも大きい場合(さらに後の画像を再生するとき)には、動画像を構成する複数の表示用画像のうちの後の表示用画像がテクスチャとして板状ポリゴンに貼り付けられる。
また、CGROM83には、ステップS905の処理によって伸張処理が開始される動画像データと、ステップS909B,S923Bの処理にもとづいてVRAMRS96Aに展開される静止画像データとが別個に格納されている。ステップS905の処理によって伸張処理が開始される動画像データによる動画像の解像度は、ステップS909B,S923Bの処理にもとづいてVRAMRS96Aに展開される静止画像データの解像度よりも高い。よって、動画像データを再生するときに、表示品位を上げることができる。
なお、この実施の形態では、サイズが異なるポリゴンを作成することによってマスクパターンのサイズを変えたが、ポリゴンのサイズを変えず、レンダリング処理の際に、画像データを書き込む領域のサイズを読み出す領域のサイズを変えることによって、飾り図柄の表示領域のサイズを変えるようにしてもよい。
また、演出制御用マイクロコンピュータ100は、変形パターン(図31や図32における上中右と移動するようなパターン)を複数種類記憶し、適宜、複数種類の中から変形パターンを選択し、選択した変形パターンにもとづいて描画プロセッサ109に指令を与えるようにしてもよい。その場合、例えば、大当りとすることに決定されている場合には、特定の変形パターン(例えば、図32に示されたパターン)を高い確率で選択するようにしてもよい。
また、この実施の形態では、1つの動画像を板状ポリゴンに貼り付けるようにしたが、図63に示された処理のように、演出制御用CPU101がマルチストリームに関する指令を出力して(ステップS903B,S904B,S905B参照)、複数の動画像を合成した動画像(重ね合わせ画像)を板状ポリゴンに貼り付けるようにしてもよい。その際、デコーダ95は、マルチストリームのデコード実行指令に応じて、1/60秒毎に、データ圧縮されているフレーム画像データを伸張する。その際に、1/60秒毎に、動画像Aデータにおける1フレームのフレーム画像データと、動画像Bデータにおける1フレームのフレーム画像データとを交互に伸張する。よって、一方の動画像データについての伸張処理が完了するまで、他方の動画像データについての伸張処理を開始しない。また、CGROM83が図16に示されたように、再生時間が互いに素(例えば、1.1秒と1.0秒。なお、小数点以下の値がある場合には整数(例えば、10と11)に換算した値を考える)である複数の動画像を再生するための複数の動画像データ(例えば、動画像Aデータおよび動画像Bデータ)を記憶すれば、長い再生時間の動画像データがCGROM83に格納されていなくても、長時間の動画像を再生することができる(例えば、1.1秒の動画像と1.0秒の動画像から11秒周期の動画像再生が可能になる)。
以上に説明したように、描画用プロセッサ109は、ポリゴンを、指定された形状にして、三次元空間における第1位置から指定された第2位置に移動させるような処理を実行し、第2位置に配置したポリゴンをレンダリングした画像にもとづいてマスクパターンを生成し、画像データ記憶手段に記憶されている画像データを、マスクパターンを用いてクリッピングする処理を実行するので(図24〜図29参照)、ポリゴンの形状および位置の指定を変えるだけで異なるマスクパターンを生成でき、画像データを格納するROMの容量を増やさずに、画像表示装置おける演出を多様化することができるようになる。
また、複数の動画像データにもとづく動画像を重ね合わせて繰り返し再生する場合に、描画用プロセッサ109が、複数の動画像データを順に選択し、選択した動画像データにおけるフレーム画像データの表示用データを作成し、表示用データ作成が完了するまで他の動画像データにおけるフレーム画像データの表示用データ作成処理を開始しないように構成されているので(図21参照)、複数のフレームのそれぞれのフレーム画像データから同時期に表示用データを作成せず、画像表示制御の処理負担を軽減することができる。
また、描画用プロセッサ109が、第2ポリゴン配置手段が処理を実行するときに、第1ポリゴン配置手段が処理を実行するときに用いたフレーム画像データに対して、動画像データにおいて後に位置するフレーム画像データを用い、第2ポリゴン配置手段が配置したポリゴンから表示用データを作成したら、第2ポリゴン配置手段が処理を実行するときにテクスチャ貼付手段が用いたフレーム画像データに続くフレーム画像データから動画像データを再生する処理を実行するように構成されているので(図34,図36参照)、画像表示制御の処理負担を重くすることなく、画像表示装置9における表示内容を多彩にすることができる。
さらに、描画用プロセッサ109が、ポリゴンをレンダリングして表示用データを作成する処理を実行するレンダリング手段とを含み、レンダリング手段がレンダリングする際に用いる視点がポリゴンから所定距離以内の位置にあるときには、動画像データにおけるフレーム画像データにもとづく画像をテクスチャとし、レンダリング手段がレンダリングする際に用いる視点がポリゴンから所定距離を越えた位置にあるときには、静止画データにもとづく画像をテクスチャとするように構成されているので(図31,図32参照。ただし、変形例)、画像表示制御の処理負担を重くすることなく、画像表示装置9における表示内容を多彩にすることができる。
なお、上記の実施の形態では、複数の動画像を扱うときに動画像A,Bの2つの動画像を扱ったが、3つ以上の動画像を扱うようにしてもよい。
また、上記の実施の形態では、演出制御用マイクロコンピュータ100は、描画プロセッサ109に対して、ポリゴンの作成位置やサイズ等を指令するための手段を含むことになるが、その手段は、遊技の進行状況等に従って、ポリゴンの作成位置やサイズや指令出力タイミング等を判断する判断手段と、判断手段の判断結果に応じて実際に指令を出力する指令出力手段とを含む。
なお、上記の実施の形態では、演出装置を制御する回路が搭載された基板として、演出制御基板80、音声出力基板70およびランプドライバ基板35が設けられているが、演出装置を制御する回路を1つの基板に搭載してもよい。さらに、可変表示装置9等を制御する回路が搭載された第1の演出制御基板(表示制御基板)と、その他の演出装置(ランプ、LED、スピーカ27など)を制御する回路が搭載された第2の演出制御基板との2つの基板を設けるようにしてもよい。
また、上記の実施の形態では、遊技制御用マイクロコンピュータ560は、演出制御用マイクロコンピュータ100に対して直接コマンドを送信していたが、遊技制御用マイクロコンピュータ560が他の基板(例えば、図3に示す音声出力基板70やランプドライバ基板35など、または音声出力基板70に搭載されている回路による機能とランプドライバ基板35に搭載されている回路による機能とを備えた音/ランプ基板)に演出制御コマンドを送信し、他の基板を経由して演出制御基板80における演出制御用マイクロコンピュータ100に送信されるようにしてもよい。その場合、他の基板においてコマンドが単に通過するようにしてもよいし、音声出力基板70、ランプドライバ基板35、音/ランプ基板にマイクロコンピュータ等の制御手段を搭載し、制御手段がコマンドを受信したことに応じて音声制御やランプ制御に関わる制御を実行し、さらに、受信したコマンドを、そのまま、または例えば簡略化したコマンドに変更して、可変表示装置9を制御する演出制御用マイクロコンピュータ100に送信するようにしてもよい。その場合でも、演出制御用マイクロコンピュータ100は、上記の実施の形態における遊技制御用マイクロコンピュータ560から直接受信した演出制御コマンドに応じて表示制御を行うのと同様に、音声出力基板70、ランプドライバ基板35または音/ランプ基板から受信したコマンドに応じて表示制御を行うことができる。
また、上記の実施の形態では、遊技機として、パチンコ遊技機1を例にしたが、他の遊技機、例えば、画像表示装置を備えたスロット機(スロットマシン)に本発明を適用することができる。スロット機に適用する場合には、例えば、ボーナス予告などに用いることができる。