以下、遊技機の一種であるパチンコ遊技機(以下、「パチンコ機」という)の一実施形態を、図面に基づいて説明する。図1はパチンコ機10の正面図である。
パチンコ機10は、図1に示すように、当該パチンコ機10の外殻を形成する外枠11と、この外枠11に対して前方に回動可能に取り付けられた遊技機本体12とを有する。遊技機本体12は、内枠(図示略)と、その内枠の前方に配置される前扉枠14と、内枠の後方に配置される裏パックユニット(図示略)とを備えている。
遊技機本体12のうち内枠が、左右両側部のうち一方を支持側として外枠11に回動可能に支持されている。また、内枠には、前扉枠14が回動可能に支持されており、左右両側部のうち一方を支持側として前方へ回動可能とされている。また、内枠には、裏パックユニットが回動可能に支持されており、左右両側部のうち一方を支持側として後方へ回動可能とされている。
なお、遊技機本体12には、その回動先端部に施錠装置(図示略)が設けられており、遊技機本体12を外枠11に対して開放不能に施錠状態とする機能を有しているとともに、前扉枠14を内枠に対して開放不能に施錠状態とする機能を有している。これらの各施錠状態は、パチンコ機10前面にて露出させて設けられたシリンダ錠17に対して解錠キーを用いて解錠操作を行うことにより、それぞれ解除される。
内枠には遊技盤20が搭載されている。遊技盤20には前後方向に貫通する大小複数の開口部が形成されている。各開口部には一般入賞口21,可変入賞装置22,上作動口23,下作動口24,スルーゲート25、可変表示ユニット26、メイン表示部33及び役物用表示部34等がそれぞれ設けられている。
一般入賞口21、可変入賞装置22、上作動口23及び下作動口24への入球が発生すると、それが遊技盤20の背面側に配設された検知センサ(図示略)により検知され、その検知結果に基づいて所定数の賞球の払い出しが実行される。その他に、遊技盤20の最下部にはアウト口27が設けられており、各種入賞口等に入らなかった遊技球はアウト口27を通って遊技領域から排出される。また、遊技盤20には、遊技球の落下方向を適宜分散、調整等するために多数の釘28が植設されていると共に、風車等の各種部材が配設されている。
ここで、入球とは、所定の開口部を遊技球が通過することを意味し、開口部を通過した後に遊技領域から排出される態様だけでなく、開口部を通過した後に遊技領域から排出されない態様も含まれる。但し、以下の説明では、アウト口27への遊技球の入球と明確に区別するために、可変入賞装置22、上作動口23、下作動口24又はスルーゲート25への遊技球の入球を、入賞とも表現する。
上作動口23及び下作動口24は、作動口装置としてユニット化されて遊技盤20に設置されている。上作動口23及び下作動口24は共に上向きに開放されている。また、上作動口23が上方となるようにして両作動口23,24は鉛直方向に並んでいる。下作動口24には、左右一対の可動片よりなるガイド片(サポート片)としての電動役物24aが設けられている。電動役物24aの閉鎖状態(非サポート状態又は非ガイド状態)では遊技球が下作動口24に入賞できず、電動役物24aが開放状態(サポート状態又はガイド状態)となることで下作動口24への入賞が可能となる。
可変入賞装置22は、遊技盤20の背面側へと通じる大入賞口22aを備えているとともに、当該大入賞口22aを開閉する開閉扉22bを備えている。開閉扉22bは、通常は遊技球が入賞できない又は入賞し難い閉鎖状態になっており、内部抽選において開閉実行モードへの移行に当選した場合に遊技球が入賞しやすい所定の開放状態に切り換えられるようになっている。ここで、開閉実行モードとは、大当たり当選となった場合に移行することとなるモードである。当該開閉実行モードについては、後に詳細に説明する。可変入賞装置22の開放態様としては、所定時間(例えば30sec)の経過又は所定個数(例えば10個)の入賞を1ラウンドとして、複数ラウンド(例えば15ラウンド)を上限として可変入賞装置22が繰り返し開放される態様がある。
メイン表示部33及び役物用表示部34は、遊技領域の下部側に設けられている。メイン表示部33では、上作動口23又は下作動口24への入賞をトリガとして絵柄の変動表示が行われ、その変動表示の停止結果として、上作動口23又は下作動口24への入賞に基づいて行われた内部抽選の結果が表示によって明示される。つまり、本パチンコ機10では、上作動口23への入賞と下作動口24への入賞とが内部抽選において区別されておらず、上作動口23又は下作動口24への入賞に基づいて行われた内部抽選の結果が共通の表示領域であるメイン表示部33にて明示される。そして、上作動口23又は下作動口24への入賞に基づく内部抽選の結果が開閉実行モードへの移行に対応した当選結果であった場合には、メイン表示部33にて所定の停止結果が表示されて変動表示が停止された後に、開閉実行モードへ移行する。
なお、メイン表示部33は、複数のセグメント発光部が所定の態様で配列されてなるセグメント表示器により構成されているが、これに限定されることはなく、液晶表示装置、有機EL表示装置、CRT、ドットマトリックス等その他のタイプの表示装置によって構成されていてもよい。また、メイン表示部33にて変動表示される絵柄としては、複数種の文字が変動表示される構成、複数種の記号が変動表示される構成、複数種のキャラクタが変動表示される構成又は複数種の色が切り換え表示される構成などが考えられる。
役物用表示部34では、スルーゲート25への入賞をトリガとして絵柄の変動表示が行われ、その変動表示の停止結果として、スルーゲート25への入賞に基づいて行われた内部抽選の結果が表示によって明示される。スルーゲート25への入賞に基づく内部抽選の結果が電役開放状態への移行に対応した当選結果であった場合には、役物用表示部34にて所定の停止結果が表示されて変動表示が停止された後に、電役開放状態へ移行する。電役開放状態では、下作動口24に設けられた電動役物24aが所定の態様で開放状態となる。
可変表示ユニット26には、絵柄の一種である図柄を変動表示する図柄表示装置31が設けられている。また、可変表示ユニット26には、図柄表示装置31を囲むようにしてセンターフレーム32が配設されている。このセンターフレーム32は、その上部がパチンコ機10前方に延出している。これにより、図柄表示装置31の表示面Gの前方を遊技球が落下していくのが防止されており、遊技球の落下により表示面Gの視認性が低下するといった不都合が生じない構成となっている。
図柄表示装置31は、液晶ディスプレイを備えた液晶表示装置として構成されており、後述する表示制御装置130により表示内容が制御される。なお、図柄表示装置31は、液晶表示装置であることに限定されることはなく、プラズマディスプレイ装置、有機EL表示装置又はCRTといった他の表示装置であってもよい。
図柄表示装置31では、上作動口23又は下作動口24への入賞に基づいて図柄の変動表示が開始される。すなわち、メイン表示部33において変動表示が行われる場合には、それに合わせて図柄表示装置31において変動表示が行われる。そして、例えば、遊技結果が大当たり結果となる遊技回では、図柄表示装置31では予め設定されている有効ライン上に所定の組み合わせの図柄が停止表示される。
図柄表示装置31の表示内容について、図2及び図3を参照して詳細に説明する。図2は図柄表示装置31にて変動表示される図柄を個々に示す図であり、図3は図柄表示装置31の表示面Gを示す図である。
図2(a)~(j)に示すように、絵柄の一種である図柄は、「1」~「9」の数字が各々付された9種類の主図柄と、貝形状の絵図柄からなる副図柄とにより構成されている。より詳しくは、タコ等の9種類のキャラクタ図柄に「1」~「9」の数字がそれぞれ付されて主図柄が構成されている。
図3(a)に示すように、図柄表示装置31の表示面Gには、複数の表示領域として、上段・中段・下段の3つの図柄列SA1,SA2,SA3が設定されている。各図柄列SA1~SA3は、主図柄と副図柄が所定の順序で配列されて構成されている。詳細には、上図柄列SA1には、「1」~「9」の9種類の主図柄が数字の降順に配列されると共に、各主図柄の間に副図柄が1つずつ配されている。下図柄列SA3には、「1」~「9」の9種類の主図柄が数字の昇順に配列されると共に、各主図柄の間に副図柄が1つずつ配されている。
つまり、上図柄列SA1と下図柄列SA3は18個の図柄により構成されている。これに対し、中図柄列SA2には、数字の昇順に「1」~「9」の9種類の主図柄が配列された上で「9」の主図柄と「1」の主図柄との間に「4」の主図柄が付加的に配列され、これら各主図柄の間に副図柄が1つずつ配されている。つまり、中図柄列SA2に限っては、10個の主図柄が配されて20個の図柄により構成されている。そして、表示面Gでは、これら各図柄列SA1~SA3の図柄が周期性をもって所定の向きにスクロールするように変動表示される。
図3(b)に示すように、表示面Gは、図柄列毎に3個の図柄が停止表示されるようになっており、結果として3×3の計9個の図柄が停止表示されるようになっている。また、表示面Gには、5つの有効ライン、すなわち左ラインL1、中ラインL2、右ラインL3、右下がりラインL4、右上がりラインL5が設定されている。そして、上図柄列SA1→下図柄列SA3→中図柄列SA2の順に変動表示が停止し、いずれかの有効ラインに同一の数字が付された図柄の組み合わせが形成された状態で全図柄列SA1~SA3の変動表示が終了すれば、後述する通常大当たり結果又は15R確変大当たり結果の発生として大当たり動画が表示されるようになっている。
本パチンコ機10では、奇数番号(1,3,5,7,9)が付された主図柄は「特定図柄」に相当し、15R確変大当たり結果が発生する場合には、同一の特定図柄の組み合わせが停止表示される。また、偶数番号(2,4,6,8)が付された主図柄は「非特定図柄」に相当し、通常大当たり結果が発生する場合には、同一の非特定図柄の組み合わせが停止表示される。
また、後述する明示2R確変大当たり結果となる場合には、同一の図柄の組み合わせとは異なる所定の図柄の組み合わせが形成された状態で全図柄列SA1~SA3の変動表示が終了し、その後に、明示用動画が表示されるようになっている。
なお、図柄表示装置31における図柄の変動表示の態様は上記のものに限定されることはなく任意であり、図柄列の数、図柄列における図柄の変動表示の方向、各図柄列の図柄数などは適宜変更可能である。また、図柄表示装置31にて変動表示される絵柄は上記のような図柄に限定されることはなく、例えば絵柄として数字のみが変動表示される構成としてもよい。
また、いずれかの作動口23,24への入賞に基づいて、メイン表示部33及び図柄表示装置31にて変動表示が開始され、所定の停止結果を表示し上記変動表示が停止されるまでが遊技回の1回に相当する。
センターフレーム32の前面側における左上部分には、メイン表示部33及び図柄表示装置31に対応した第1保留発光部35が設けられている。遊技球が上作動口23又は下作動口24に入賞した個数は最大4個まで保留され、第1保留発光部35の点灯によってその保留個数が表示されるようになっている。
センターフレーム32の右上部分には、役物用表示部34に対応した第2保留発光部36が設けられている。遊技球がスルーゲート25を通過した回数は最大4回まで保留され、第2保留発光部36の点灯によってその保留個数が表示されるようになっている。なお、各保留発光部35,36の機能が図柄表示装置31の一部の領域における表示により果たされる構成としてもよい。
遊技盤20には、レール部37が取り付けられており、当該レール部37により誘導レールが構成され、内枠において遊技盤20の下方に搭載された遊技球発射機構58(図示略)から発射された遊技球が遊技領域の上部に案内されるようになっている。遊技球発射機構58は、前扉枠14に設けられた発射ハンドル41が操作されることにより遊技球の発射動作が行われる。
内枠の前面側全体を覆うようにして前扉枠14が設けられている。前扉枠14には、図1に示すように、遊技領域のほぼ全域を前方から視認することができるようにした窓部42が形成されている。窓部42は、略楕円形状をなし、図示しない窓パネルが嵌め込まれている。窓パネルは、ガラスによって無色透明に形成されているが、これに限定されることはなく合成樹脂によって無色透明に形成してもよい。
窓部42の周囲には、発光手段が設けられている。当該発光手段の一部として表示発光部44が窓部42の上方に設けられている。また、表示発光部44の左右両側には、遊技状態に応じた効果音などが出力されるスピーカ部45が設けられている。
前扉枠14における窓部42の下方には、手前側へ膨出した上側膨出部46と下側膨出部47とが上下に並設されている。上側膨出部46内側には上方に開口した上皿46aが設けられており、下側膨出部47内側には同じく上方に開口した下皿47aが設けられている。上皿46aは、後述する払出装置56より払い出された遊技球を一旦貯留し、一列に整列させながら遊技球発射機構側へ導くための機能を有する。また、下皿47aは、上皿46a内にて余剰となった遊技球を貯留する機能を有する。上皿46a及び下皿47aには、裏パックユニットに搭載された払出装置56から払い出された遊技球が排出される。
上側膨出部46においてパチンコ機10前方を向く領域には、遊技者により手動操作される操作部を具備する演出用操作装置48が設けられている。演出用操作装置48の操作部は、図柄表示装置31の表示面Gなどにおける演出内容を所定の演出内容とするために遊技者により手動操作される。
内枠の背面側には、主制御装置50と、音声発光制御装置60と、表示制御装置130とが搭載されている。また、内枠の背面に対しては既に説明したとおり裏パックユニットが設けられており、当該裏パックユニットには、払出装置56を含む払出機構部と、払出制御装置と、電源及び発射制御装置57とが搭載されている。以下、パチンコ機10の電気的な構成について説明する。
<パチンコ機10の電気的構成>
図4は、パチンコ機10の基本的な電気的構成を示すブロック図である。
<主制御装置50>
主制御装置50は、遊技の主たる制御を司る主制御基板51を具備している。なお、主制御装置50において主制御基板51などを収容する基板ボックスに対して、その開放の痕跡を残すための痕跡手段を付与する又はその開放の痕跡を残すための痕跡構造を設けておくようにしてもよい。当該痕跡手段としては、基板ボックスを構成する複数のケース体を分離不能に結合するとともにその分離に際して所定部位の破壊を要する結合部(カシメ部)の構成や、引き剥がしにして粘着層が接着対象に残ることで剥がされたことの痕跡を残す封印シールを複数のケース体間の境界を跨ぐようにして貼り付ける構成が考えられる。また、痕跡構造としては、基板ボックスを構成する複数のケース体間の境界に対して接着剤を塗布する構成が考えられる。
主制御基板51には、MPU52が搭載されている。MPU52には、当該MPU52により実行される各種の制御プログラムや固定値データを記憶したROM53と、そのROM53内に記憶される制御プログラムの実行に際して各種のデータ等を一時的に記憶するためのメモリであるRAM54と、割込回路、タイマ回路、データ入出力回路、乱数発生器としての各種カウンタ回路などが内蔵されている。
なお、ROM53として、制御プログラムや固定値データの読み出しに際してランダムアクセスが可能であって、記憶保持に外部からの電力供給が不要な記憶手段(すなわち、不揮発性記憶手段)が用いられている。また、制御及び演算部分と、ROM53と、RAM54とが1チップ化されている構成は必須ではなく、各機能がそれぞれ別チップとして搭載されている構成としてもよく、一部の機能が別チップとして搭載されている構成としてもよい。
MPU52には、入力ポート及び出力ポートがそれぞれ設けられている。MPU52の入力側には、電源及び発射制御装置57が接続されている。電源及び発射制御装置57は、例えば、遊技場等における商用電源(外部電源)に接続されている。そして、その商用電源から供給される外部電力に基づいて主制御基板51に対して各々に必要な動作電力を生成するとともに、その生成した動作電力を供給する。ちなみに、当該動作電力は主制御基板51だけでなく、払出制御装置55や後述する表示制御装置130といった他の機器にも供給される。
なお、MPU52と電源及び発射制御装置57との電力経路上に停電監視基板を設けてもよい。この場合、当該停電監視基板により停電の発生が監視され、停電の発生が確認された場合にはMPU52に対して停電信号が送信されるようにすることで、MPU52において停電時用の処理を実行することが可能となる。
また、MPU52の入力側には、図示しない各種センサが接続されている。当該各種センサの一部として、一般入賞口21、可変入賞装置22、上作動口23、下作動口24及びスルーゲート25といった入賞対応入球部に対して1対1で設けられた検知センサが含まれており、MPU52において各入球部への入賞判定(入球判定)が行われる。また、MPU52では上作動口23及び下作動口24への入賞に基づいて大当たり発生抽選及び大当たり結果種別抽選を実行するとともに、各遊技回のリーチ発生抽選や表示継続期間の決定抽選を実行する。
ここで、MPU52にて各種抽選を行うための構成について説明する。
MPU52は遊技に際し各種カウンタ情報を用いて、大当たり発生抽選、メイン表示部33の表示の設定、図柄表示装置31の図柄表示の設定、役物用表示部34の表示の設定などを行うこととしており、具体的には、図5に示すように、大当たり発生抽選に使用する大当たり乱数カウンタC1と、確変大当たり結果や通常大当たり結果等の大当たり種別を判定する際に使用する大当たり種別カウンタC2と、図柄表示装置31が外れ変動する際のリーチ発生抽選に使用するリーチ乱数カウンタC3と、大当たり乱数カウンタC1の初期値設定に使用する乱数初期値カウンタCINIと、メイン表示部33及び図柄表示装置31における変動表示時間を決定する変動種別カウンタCSとを用いることとしている。さらに、下作動口24の電動役物24aを電役開放状態とするか否かの抽選に使用する電動役物開放カウンタC4を用いることとしている。なお、上記各カウンタC1~C3,CINI,CS,C4は、主側RAM54の抽選用カウンタエリア54aに設けられている。
各カウンタC1~C3,CINI,CS,C4は、その更新の都度前回値に1が加算され、最大値に達した後0に戻るループカウンタとなっている。各カウンタは短時間間隔で更新される。大当たり乱数カウンタC1、大当たり種別カウンタC2及びリーチ乱数カウンタC3に対応した情報は、上作動口23又は下作動口24への入賞が発生した場合に、取得情報記憶手段としての保留球格納エリア54bに格納される。
保留球格納エリア54bは、保留用エリアREと、実行エリアAEとを備えている。保留用エリアREは、第1保留エリアRE1、第2保留エリアRE2、第3保留エリアRE3及び第4保留エリアRE4を備えており、上作動口23又は下作動口24への入賞履歴に合わせて、大当たり乱数カウンタC1、大当たり種別カウンタC2及びリーチ乱数カウンタC3の各数値情報が保留情報として、いずれかの保留エリアRE1~RE4に格納される。
この場合、第1保留エリアRE1~第4保留エリアRE4には、上作動口23又は下作動口24への入賞が複数回連続して発生した場合に、第1保留エリアRE1→第2保留エリアRE2→第3保留エリアRE3→第4保留エリアRE4の順に各数値情報が時系列的に格納されていく。このように4つの保留エリアRE1~RE4が設けられていることにより、上作動口23又は下作動口24への遊技球の入賞履歴が最大4個まで保留記憶されるようになっている。また、保留用エリアREは、保留数記憶エリアNAを備えており、当該保留数記憶エリアNAには上作動口23又は下作動口24への入賞履歴を保留記憶している数を特定するための情報が格納される。
なお、保留記憶可能な数は、4個に限定されることはなく任意であり、2個、3個又は5個以上といったように他の複数であってもよく、単数であってもよい。
実行エリアAEは、メイン表示部33の変動表示を開始する際に、保留用エリアREの第1保留エリアRE1に格納された各値を移動させるためのエリアであり、1遊技回の開始に際しては実行エリアAEに記憶されている各種数値情報に基づいて、当否判定などが行われる。
上記各カウンタについて詳細に説明する。
各カウンタについて詳しくは、大当たり乱数カウンタC1は、例えば0~599の範囲内で順に1ずつ加算され、最大値に達した後0に戻る構成となっている。特に大当たり乱数カウンタC1が1周した場合、その時点の乱数初期値カウンタCINIの値が当該大当たり乱数カウンタC1の初期値として読み込まれる。なお、乱数初期値カウンタCINIは、大当たり乱数カウンタC1と同様のループカウンタである(値=0~599)。大当たり乱数カウンタC1は定期的に更新され、遊技球が上作動口23又は下作動口24に入賞したタイミングで保留球格納エリア54bに格納される。
大当たり当選となる乱数の値は、ROM53における当否情報群記憶手段としての当否テーブル記憶エリアに当否テーブルとして記憶されている。当否テーブルとしては、低確率モード用の当否テーブルと、高確率モード用の当否テーブルとが設定されている。つまり、本パチンコ機10は、当否抽選手段における抽選モードとして、低確率モードと高確率モードとが設定されている。
上記抽選に際して低確率モード用の当否テーブルが参照されることとなる遊技状態下では、大当たり当選となる乱数の数は2個である。一方、上記抽選に際して高確率モード用の当否テーブルが参照されることとなる遊技状態下では、大当たり当選となる乱数の数は20個である。なお、低確率モードよりも高確率モードの方の当選確率が高くなるのであれば、上記当選となる乱数の数は任意である。
大当たり種別カウンタC2は、0~29の範囲内で順に1ずつ加算され、最大値に達した後0に戻る構成となっている。大当たり種別カウンタC2は定期的に更新され、遊技球が上作動口23又は下作動口24に入賞したタイミングで保留球格納エリア54bに格納される。
本パチンコ機10では、複数の大当たり結果が設定されている。これら複数の大当たり結果は、(1)開閉実行モードにおける可変入賞装置22の開閉制御の態様、(2)開閉実行モード終了後の当否抽選手段における抽選モード、(3)開閉実行モード終了後の下作動口24の電動役物24aにおけるサポートモード、という3つの条件に差異を設けることにより、複数の大当たり結果が設定されている。
開閉実行モードにおける可変入賞装置22の開閉制御の態様としては、開閉実行モードが開始されてから終了するまでの間における可変入賞装置22への入賞の発生頻度が相対的に高低となるように高頻度入賞モードと低頻度入賞モードとが設定されている。具体的には、高頻度入賞モードでは、開閉実行モードの開始から終了までに、大入賞口22aの開閉が15回(高頻度用回数)行われるとともに、1回の開放は30sec(高頻度時間)が経過するまで又は大入賞口22aへの入賞個数が10個(高頻度個数)となるまで継続される。一方、低頻度入賞モードでは、開閉実行モードの開始から終了までに、大入賞口22aの開閉が2回(低頻度用回数)行われるとともに、1回の開放は0.2sec(低頻度時間)が経過するまで又は大入賞口22aへの入賞個数が6個(低頻度個数)となるまで継続される。
本パチンコ機10では、発射ハンドル41が遊技者により操作されている状況では、0.6secに1個の遊技球が遊技領域に向けて発射されるように遊技球発射機構58が駆動制御される。これに対して、低頻度入賞モードでは、上記のとおり1回の大入賞口22aの開放時間は0.2secとなっている。つまり、低頻度入賞モードでは、遊技球の発射周期よりも1回の大入賞口22aの開放時間が短くなっている。したがって、低頻度入賞モードにかかる開閉実行モードでは実質的に遊技球の入賞が発生しない。
なお、高頻度入賞モード及び低頻度入賞モードにおける大入賞口22aの開閉回数、1回の開放に対する開放制限時間及び1回の開放に対する開放制限個数は、高頻度入賞モードの方が低頻度入賞モードよりも、開閉実行モードが開始されてから終了するまでの間における可変入賞装置22への入賞の発生頻度が高くなるのであれば、上記の値に限定されることはなく任意である。具体的には、高頻度入賞モードの方が低頻度入賞モードよりも、開閉回数が多い、1回の開放に対する開放制限時間が長い又は1回の開放に対する開放制限個数が多く設定されていればよい。
但し、高頻度入賞モードと低頻度入賞モードとの間での特典の差異を明確にする上では、低頻度入賞モードにかかる開閉実行モードでは、実質的に可変入賞装置22への入賞が発生しない構成とするとよい。例えば、高頻度入賞モードでは、1回の開放について、遊技球の発射周期と開放制限個数との積を、開放制限時間よりも短く設定する一方、低頻度入賞モードでは、1回の開放について、遊技球の発射周期と開放制限個数との積を、開放制限時間よりも長く設定する構成としてもよい。また、遊技球の発射間隔及び1回の大入賞口22aの開放時間が上記のものでなかったとしても、低頻度入賞モードでは、前者よりも後者の方が短くなるように設定することで、実質的に可変入賞装置22への入賞が発生しない構成を容易に実現することができる。
下作動口24の電動役物24aにおけるサポートモードとしては、遊技領域に対して同様の態様で遊技球の発射が継続されている状況で比較した場合に、下作動口24の電動役物24aが単位時間当たりに開放状態となる頻度が相対的に高低となるように、低頻度サポートモード(低頻度サポート状態又は低頻度ガイド状態)と高頻度サポートモード(高頻度サポート状態又は高頻度ガイド状態)とが設定されている。
具体的には、低頻度サポートモードと高頻度サポートモードとでは、電動役物開放カウンタC4を用いた電動役物開放抽選における電役開放状態当選となる確率は同一(例えば、共に4/5)となっているが、高頻度サポートモードでは低頻度サポートモードよりも、電役開放状態当選となった際に電動役物24aが開放状態となる回数が多く設定されており、さらに1回の開放時間が長く設定されている。この場合、高頻度サポートモードにおいて電役開放状態当選となり電動役物24aの開放状態が複数回発生する場合において、1回の開放状態が終了してから次の開放状態が開始されるまでの閉鎖時間は、1回の開放時間よりも短く設定されている。さらにまた、高頻度サポートモードでは低頻度サポートモードよりも、1回の電動役物開放抽選が行われてから次の電動役物開放抽選が行われる上で最低限確保される確保時間として短い時間が選択されるように設定されている。
上記のように高頻度サポートモードでは、低頻度サポートモードよりも下作動口24への入賞が発生する確率が高くなる。換言すれば、低頻度サポートモードでは、下作動口24よりも上作動口23への入賞が発生する確率が高くなるが、高頻度サポートモードでは、上作動口23よりも下作動口24への入賞が発生する確率が高くなる。そして、下作動口24への入賞が発生した場合には、所定個数の遊技球の払出が実行されるため、高頻度サポートモードでは、遊技者は持ち球をあまり減らさないようにしながら遊技を行うことができる。
なお、高頻度サポートモードを低頻度サポートモードよりも単位時間当たりに電役開放状態となる頻度を高くする上での構成は、上記のものに限定されることはなく、例えば電動役物開放抽選における電役開放状態当選となる確率を高くする構成としてもよい。また、1回の電動役物開放抽選が行われてから次の電動役物開放抽選が行われる上で確保される確保時間(例えば、スルーゲート25への入賞に基づき役物用表示部34にて実行される変動表示の時間)が複数種類用意されている構成においては、高頻度サポートモードでは低頻度サポートモードよりも、短い確保時間が選択され易い又は平均の確保時間が短くなるように設定されていてもよい。さらには、開放回数を多くする、開放時間を長くする、1回の電動役物開放抽選が行われてから次の電動役物開放抽選が行われる上で確保される確保時間を短くする(すなわち、役物用表示部34における1回の変動表示時間を短くする)、係る確保時間の平均時間を短くする及び当選確率を高くするのうち、いずれか1条件又は任意の組み合わせの条件を適用することで、低頻度サポートモードに対する高頻度サポートモードの有利性を高めてもよい。
大当たり種別カウンタC2に対する遊技結果の振分先は、ROM53における振分情報群記憶手段としての振分テーブル記憶エリアに振分テーブルとして記憶されている。そして、かかる振分先として、通常大当たり結果と、明示2R確変大当たり結果と、15R確変大当たり結果とが設定されている。
通常大当たり結果は、開閉実行モードが高頻度入賞モードとなり、さらに開閉実行モードの終了後には、当否抽選モードが低確率モードとなるとともに、サポートモードが高頻度サポートモードとなる大当たり結果である。但し、この高頻度サポートモードは、移行後において遊技回数が終了基準回数(具体的には、100回)に達した場合に低頻度サポートモードに移行する。換言すれば、通常大当たり結果は、通常大当たり状態(低確率対応特別遊技状態)へ遊技状態を移行させる大当たり結果である。
明示2R確変大当たり結果は、開閉実行モードが低頻度入賞モードとなり、さらに開閉実行モードの終了後には、当否抽選モードが高確率モードとなるとともに、サポートモードが高頻度サポートモードとなる大当たり結果である。これら高確率モード及び高頻度サポートモードは、当否抽選における抽選結果が大当たり状態当選となり、それによる大当たり状態に移行するまで継続する。換言すれば、明示2R確変大当たり結果は、明示2R確変大当たり状態(明示高確率対応遊技状態)へ遊技状態を移行させる大当たり結果である。
15R確変大当たり結果は、開閉実行モードが高頻度入賞モードとなり、さらに開閉実行モードの終了後には、当否抽選モードが高確率モードとなるとともに、サポートモードが高頻度サポートモードとなる大当たり結果である。これら高確率モード及び高頻度サポートモードは、当否抽選における抽選結果が大当たり状態当選となり、それによる大当たり状態に移行するまで継続する。換言すれば、15R確変大当たり結果は、15R確変大当たり状態(高確率対応特別遊技状態)へ遊技状態を移行させる大当たり結果である。
なお、上記各遊技状態との関係で通常遊技状態とは、当否抽選モードが低確率モードであり、サポートモードが低頻度サポートモードである状態をいう。
振分テーブルでは、「0~29」の大当たり種別カウンタC2の値のうち、「0~9」が通常大当たり結果に対応しており、「10~14」が明示2R確変大当たり結果に対応しており、「15~29」が15R確変大当たり結果に対応している。
上記のように、確変大当たり結果として、明示2R確変大当たり結果が設定されていることにより、確変大当たり結果の態様が多様化する。すなわち、2種類の確変大当たり結果を比較した場合、遊技者にとっての有利度合いは、開閉実行モードにおいて高頻度入賞モードとなり且つサポートモードでは高頻度サポートモードとなる15R確変大当たり結果が最も高く、開閉実行モードにおいて低頻度入賞モードとなるもののサポートモードでは高頻度サポートモードとなる明示2R確変大当たり結果が最も低くなる。これにより、遊技の単調化が抑えられ、遊技への注目度を高めることが可能となる。
なお、確変大当たり結果の一種として、開閉実行モードが低頻度入賞モードとなり、さらに開閉実行モードの終了後には、当否抽選モードが高確率モードとなるとともに、サポートモードがそれまでのモードに維持されることとなる非明示2R確変大当たり結果(非明示高確率対応遊技結果又は潜伏確変状態となる結果)が含まれていてもよい。この場合、確変大当たり結果のさらなる多様化が図られる。
さらにまた、当否抽選における外れ結果の一種として、低頻度入賞モードの開閉実行モードに移行するとともに、その終了後において当否抽選モード及びサポートモードの移行が発生しない特別外れ結果が含まれていてもよい。上記のような非明示2R確変大当たり結果と当該特別外れ結果との両方が設定されている構成においては、開閉実行モードが低頻度入賞モードに移行すること、及びサポートモードがそれまでのモードに維持されることで共通しているのに対して、当否抽選モードの移行態様が異なっていることにより、例えば通常遊技状態において非明示2R確変大当たり結果又は特別外れ結果の一方が発生した場合に、それが実際にいずれの結果に対応しているのかを遊技者に予測させることが可能となる。
リーチ乱数カウンタC3は、例えば0~238の範囲内で順に1ずつ加算され、最大値に達した後0に戻る構成となっている。リーチ乱数カウンタC3は定期的に更新され、遊技球が上作動口23又は下作動口24に入賞したタイミングで保留球格納エリア54bに格納される。
ここで、本パチンコ機10には、図柄表示装置31における表示演出の一種として期待演出が設定されている。期待演出とは、図柄の変動表示を行うことが可能な図柄表示装置31を備え、開閉実行モードが高頻度入賞モードとなる遊技回では変動表示後の停止表示結果が特別表示結果となる遊技機において、図柄表示装置31における図柄の変動表示が開始されてから停止表示結果が導出表示される前段階で、前記特別表示結果となり易い変動表示状態であると遊技者に思わせるための表示状態をいう。
期待演出には、上記リーチ表示と、当該リーチ表示が発生する前段階などにおいてリーチ表示の発生や特別表示結果の発生を期待させるための予告表示との2種類が設定されている。
リーチ表示には、図柄表示装置31の表示面Gに表示される複数の図柄列のうち一部の図柄列について図柄を停止表示させることで、高頻度入賞モードの発生に対応した大当たり図柄の組み合わせが成立する可能性があるリーチ図柄の組み合わせを表示し、その状態で残りの図柄列において図柄の変動表示を行う表示状態が含まれる。また、上記のようにリーチ図柄の組み合わせを表示した状態で、残りの図柄列において図柄の変動表示を行うとともに、その背景画像において所定のキャラクタなどを動画として表示することによりリーチ演出を行うものや、リーチ図柄の組み合わせを縮小表示させる又は非表示とした上で、表示面Gの略全体において所定のキャラクタなどを動画として表示することによりリーチ演出を行うものが含まれる。
図柄の変動表示に係るリーチ表示について具体的には、図柄の変動表示を終了させる前段階として、図柄表示装置31の表示面内の予め設定された有効ライン上に、高頻度入賞モードの発生に対応した大当たり図柄の組み合わせが成立する可能性のあるリーチ図柄の組み合わせを停止表示させることによりリーチラインを形成させ、当該リーチラインが形成されている状況下において最終停止図柄列により図柄の変動表示を行うことである。
図3の表示内容について具体的に説明すると、最初に上段の図柄列SA1において図柄の変動表示が終了され、さらに下段の図柄列SA3において図柄の変動表示が終了された状態において、いずれかの有効ラインL1~L5に同一の数字が付された主図柄が停止表示されることでリーチラインが形成され、当該リーチラインが形成されている状況化において中段の図柄列SA2において図柄の変動表示が行われることでリーチ表示となる。そして、高頻度入賞モードが発生する場合には、リーチラインを形成している主図柄と同一の数字が付された主図柄がリーチライン上に停止表示されるようにして中段の図柄列SA2における図柄の変動表示が終了される。
予告表示には、図柄表示装置31の表示面Gにおいて図柄の変動表示が開始されてから、全ての図柄列SA1~SA3にて図柄が変動表示されている状況において、又は一部の図柄列であって複数の図柄列にて図柄が変動表示されている状況において、図柄列SA1~SA3上の図柄とは別にキャラクタを表示させる態様が含まれる。また、背景画像をそれまでの態様とは異なる所定の態様とするものや、図柄列SA1~SA3上の図柄をそれまでの態様とは異なる所定の態様とするものも含まれる。かかる予告表示は、リーチ表示が行われる場合及びリーチ表示が行われない場合のいずれの遊技回においても発生し得るが、リーチ表示の行われる場合の方がリーチ表示の行われない場合よりも高確率で発生するように設定されている。
リーチ表示は、高頻度入賞モードとなる開閉実行モードに移行する遊技回では、リーチ乱数カウンタC3の値に関係なく実行され、低頻度入賞モードとなる開閉実行モードに移行する遊技回では、リーチ乱数カウンタC3の値に関係なく実行されない。また、開閉実行モードに移行しない遊技回では、ROM53のリーチ用テーブル記憶エリアに記憶されたリーチ用テーブルを参照して、所定のタイミングで取得したリーチ乱数カウンタC3がリーチ表示の発生に対応している場合に実行される。一方、予告表示を行うか否かの決定は、主制御装置50において行うのではなく、音声発光制御装置60において行われる。
変動種別カウンタCSは、例えば0~198の範囲内で順に1ずつ加算され、最大値に達した後0に戻る構成となっている。変動種別カウンタCSは、メイン表示部33における変動表示時間と、図柄表示装置31における図柄の変動表示時間とをMPU52において決定する上で用いられる。変動種別カウンタCSは、後述する通常処理が1回実行される毎に1回更新され、当該通常処理内の残余時間内でも繰り返し更新される。そして、メイン表示部33における変動表示の開始時及び図柄表示装置31による図柄の変動開始時における変動パターン決定に際して変動種別カウンタCSの値が取得される。なお、変動表示時間の決定に際しては、ROM53の変動表示時間テーブル記憶エリアに予め記憶されている変動表示時間テーブルが参照される。
電動役物開放カウンタC4は、例えば、0~250の範囲内で順に1ずつ加算され、最大値に達した後0に戻る構成となっている。電動役物開放カウンタC4は定期的に更新され、スルーゲート25に遊技球が入賞したタイミングで電役保留エリア54cに格納される。そして、所定のタイミングにおいて、その格納された電動役物開放カウンタC4の値によって電動役物24aを開放状態に制御するか否かの抽選が行われる。
MPU52の出力側には、払出制御装置55が接続されているとともに、電源及び発射制御装置57が接続されている。払出制御装置55には、例えば、上記入賞対応入球部への入賞判定結果に基づいて賞球コマンドが送信される。払出制御装置55は、主制御装置50から受信した賞球コマンドに基づいて、払出装置56により賞球や貸し球の払出制御を行う。電源及び発射制御装置57には、発射ハンドル41が操作されていることに基づいて発射許可コマンドが送信される。電源及び発射制御装置57は、主制御装置50から受信した発射許可コマンドに基づいて、遊技球発射機構58を駆動させ遊技球を遊技領域に向けて発射させる。
また、MPU52の出力側には、メイン表示部33及び役物用表示部34が接続されており、これらメイン表示部33及び役物用表示部34の表示制御がMPU52により直接行われる。つまり、各遊技回に際しては、MPU52においてメイン表示部33の表示制御が実行される。また、電動役物24aを開放状態とするか否かの抽選結果を明示する場合に、MPU52において役物用表示部34の表示制御が実行される。
また、MPU52の出力側には、可変入賞装置22の開閉扉22bを開閉動作させる可変入賞駆動部、及び下作動口24の電動役物24aを開閉動作させる電動役物駆動部が接続されている。つまり、開閉実行モードにおいては大入賞口22aが開閉されるように、MPU52において可変入賞駆動部の駆動制御が実行される。また、電動役物24aの開放状態当選となった場合には、電動役物24aが開閉されるように、MPU52において電動役物駆動部の駆動制御が実行される。
また、MPU52の出力側には、音声発光制御装置60が接続されており、当該音声発光制御装置60に対して演出用の各種コマンドを送信する。
<主制御装置50のMPU52にて実行される処理>
次に、MPU52にて実行される処理について説明する。
MPU52は、電源の立ち上げ後において所定の遊技進行用処理を繰り返し実行する。本パチンコ機10では、当該遊技進行用処理として、第1の周期で繰り返し実行される通常処理と、第1の周期よりも短い第2の周期で起動され、通常処理に対して割り込んで実行されるタイマ割込み処理と、が設定されている。
図6は、タイマ割込み処理を示すフローチャートである。なお、本処理はMPU52により定期的に(例えば2msec周期で)起動される。
先ずステップS101では、読み込み処理を実行する。当該読み込み処理では、各種入賞検知センサの状態を読み込み、これら各種入賞検知センサの状態を判定して入賞検知情報を保存する処理を実行する。また、賞球の発生に対応した入賞検知センサにおいて遊技球の入賞が検知されている場合には、払出制御装置55に対して賞球の払い出し指示を行うための賞球コマンドを設定する。
続くステップS102では、乱数初期値カウンタCINIの更新を実行する。具体的には、乱数初期値カウンタCINIを1加算すると共に、そのカウンタ値が最大値に達した際0にクリアする。
続くステップS103では、大当たり乱数カウンタC1、大当たり種別カウンタC2、リーチ乱数カウンタC3及び電動役物開放カウンタC4の更新を実行する。具体的には、大当たり乱数カウンタC1、大当たり種別カウンタC2、リーチ乱数カウンタC3及び電動役物開放カウンタC4をそれぞれ1加算すると共に、それらのカウンタ値が最大値に達した際それぞれ0にクリアする。
続くステップS104では、スルーゲート25への入賞に伴うスルー用の入賞処理を実行する。スルー用の入賞処理では、電役保留エリア54cに記憶されている役物保留記憶数が4未満であることを条件として、前記ステップS103にて更新した電動役物開放カウンタC4の値を電役保留エリア54cに格納する。
その後、ステップS105にて、作動口23,24への入賞に伴う作動口用の入賞処理を実行する。作動口用の入賞処理では、上作動口23又は下作動口24への入賞が発生していた場合には、保留球格納エリア54bに記憶されている始動保留記憶数が上限数(例えば、「4」)未満であることを条件として、前記ステップS103にて更新した大当たり乱数カウンタC1、大当たり種別カウンタC2及びリーチ乱数カウンタC3の各数値情報を保留球格納エリア54bの保留用エリアREに格納する。この場合、保留用エリアREの空き保留エリアRE1~RE4のうち最初の保留エリア、すなわち現状の始動保留記憶数と対応する保留エリアに格納する。ステップS105の処理を実行した後に、本タイマ割込み処理を終了する。
図7は、通常処理を示すフローチャートである。通常処理は電源投入に伴い起動されるメイン処理が実行された後に開始される処理である。その概要として、ステップS201~ステップS209の処理が4msec周期の処理として実行され、その残余時間でステップS210及びステップS211のカウンタ更新処理が実行される構成となっている。
ステップS201では、タイマ割込み処理又は前回の通常処理で設定したコマンド等の出力データをサブ側の各制御装置に送信する。具体的には、賞球コマンドの有無を判定し、賞球コマンドが設定されていればそれを払出制御装置55に対して送信する。また、所定の演出用コマンドが設定されている場合にはそれを音声発光制御装置60に対して送信する。
続くステップS202では、変動種別カウンタCSの更新を実行する。具体的には、変動種別カウンタCSを1加算すると共に、カウンタ値が最大値に達した際にはカウンタ値を0にクリアする。
続くステップS203では、各遊技回における遊技を制御するための遊技回制御処理を実行する。この遊技回制御処理では、大当たり判定、図柄表示装置31による図柄の変動表示の設定、及びメイン表示部33の表示制御などを行う。
その後、ステップS204では、遊技状態を移行させるための遊技状態移行処理を実行する。遊技状態移行処理では、大当たり当選に対応した遊技回が終了している場合に開閉実行モードへの移行処理を実行し、可変入賞装置22の開閉処理を開始する。なお、開閉実行モードを開始する場合、開閉実行モード中、及び開閉実行モードを終了する場合などに、開閉実行モード用の各種コマンドを音声発光制御装置60に送信する。また、開閉実行モードが終了した場合には、当該モードの開始契機となった遊技回に係る大当たり種別に対応させて、当否抽選モードの移行やサポートモードの移行を実行する。
続くステップS205では、デモ表示用処理を実行する。デモ表示用処理では、開閉実行モード中ではない状況で遊技回の終了後において新たな遊技回が開始されることなく予め定められたデモ開始用の開始待ち期間(例えば、0.1sec)が経過したか否かの判定処理を実行する。また、MPU52への電力供給が開始されてから又はパチンコ機10がリセットされてから、新たに遊技回が開始されることなく予め定められたデモ開始用の開始待ち期間(例えば、3sec)が経過したか否かの判定処理を実行する。そして、経過していると判定した場合には、デモ表示用のコマンドを音声発光制御装置60に送信する。
なお、デモ表示とは、予め定められた開始待ち期間が経過している場合に、図柄表示装置31の表示面Gにて表示される開始待ち演出のことをいう。デモ画像では、図柄列SA1~SA3上に停止表示されている図柄が所定の動作を行っている画像が表示されるが、これに限定されることはなく、例えば、図柄が所定の動作を行っている画像の表示の後に又はそれに代えてメーカ名、機種名若しくは所定のキャラクタによる動画が表示される構成としてもよい。また、図柄列SA1~SA3上において変動表示される図柄のアニメーションによりデモ表示を行う構成においては、当該図柄として、直前の遊技回で最終停止表示された図柄を用いる構成としてもよい。この場合、デモ表示の多様化が図られる。
続くステップS206では、下作動口24に設けられた電動役物24aを駆動制御するための電役サポート用処理を実行する。この電役サポート用処理では、RAM54の電役保留エリア54cに格納されている情報を用いて電動役物24aを開放状態とするか否かの判定、電動役物24aの開閉処理及び役物用表示部34の表示制御などを行う。
その後、ステップS207では、遊技球発射制御処理を実行する。遊技球発射制御処理では、電源及び発射制御装置57から発射許可信号を入力していることを条件として、所定期間(例えば、0.6sec)に1回、遊技球発射機構58のソレノイドを励磁する。これにより、遊技球が遊技領域に向けて打ち出される。
続くステップS208では、RAM54に電断フラグが格納されているか否かを判定する。電断フラグは、電断の発生が確認された場合に格納され、次回のメイン処理にて消去されるフラグである。
電断フラグが格納されていない場合は、繰り返し実行される複数の処理の最後の処理が終了したこととなるので、ステップS209にて次の通常処理の実行タイミングに至ったか否か、すなわち前回の通常処理の開始から所定時間(本実施の形態では4msec)が経過したか否かを判定する。そして、次の通常処理の実行タイミングに至るまでの残余時間内において、乱数初期値カウンタCINI及び変動種別カウンタCSの更新を繰り返し実行する。
つまり、ステップS210では、乱数初期値カウンタCINIの更新を実行する。具体的には、乱数初期値カウンタCINIを1加算すると共に、そのカウンタ値が最大値に達した際0にクリアする。また、ステップS211では、変動種別カウンタCSの更新を実行する。具体的には、変動種別カウンタCSを1加算すると共に、それらのカウンタ値が最大値に達した際0にクリアする。
ここで、ステップS201~S207の各処理の実行時間は遊技の状態に応じて変化するため、次の通常処理の実行タイミングに至るまでの残余時間は一定でなく変動する。故に、かかる残余時間を使用して乱数初期値カウンタCINIの更新を繰り返し実行することにより、乱数初期値カウンタCINI(すなわち、大当たり乱数カウンタC1の初期値)をランダムに更新することができ、同様に変動種別カウンタCSについてもランダムに更新することができる。
一方、ステップS208にて、電断フラグが格納されていると判定した場合は、電源遮断が発生したことになるので、ステップS212以降の電断時処理を実行する。つまり、ステップS212では、タイマ割込み処理の発生を禁止し、その後、ステップS213にてRAM判定値を算出、保存し、ステップS214にてRAM54のアクセスを禁止した後に、電源が完全に遮断して処理が実行できなくなるまで無限ループを継続する。
次に、ステップS203の遊技回制御処理を図8等のフローチャートを参照して説明する。
遊技回制御処理では、先ずステップS301にて、開閉実行モード中か否かを判定する。開閉実行モード中である場合には、ステップS302以降の処理を実行することなく、本遊技回制御処理を終了する。つまり、開閉実行モード中である場合には、作動口23,24への入賞が発生しているか否かに関係なく、遊技回が開始されることはない。
開閉実行モード中でない場合には、ステップS302にて、メイン表示部33が変動表示中であるか否かを判定する。メイン表示部33が変動表示中でない場合には、ステップS303~ステップS305の遊技回開始用処理に進む。
遊技回開始用処理では、先ずステップS303にて、始動保留球数Nが「0」であるか否かを判定する。始動保留球数Nが「0」である場合とは、保留球格納エリア54bに保留情報が記憶されていないことを意味する。したがって、そのまま本遊技回制御処理を終了する。
始動保留球数Nが「0」でない場合には、ステップS304にて保留球格納エリア54bの保留用エリアREに記憶されているデータを変動表示用に設定するためのデータ設定処理を実行する。具体的には、保留用エリアREの第1保留エリアRE1に格納されているデータを実行エリアAEにシフトする。その後、第1保留エリアRE1~第4保留エリアRE4に格納されているデータを下位エリア側に順にシフトさせる。その後、ステップS305にて変動開始処理を実行した後に、本遊技回制御処理を終了する。
ステップS305の変動開始処理について、図9のフローチャートを参照しながら説明する。
ステップS401にて、今回の変動開始処理に対応した保留情報が大当たり当選に対応しているか否かを判定するための当否判定処理を実行する。具体的には実行エリアAEにシフトされた保留情報のうち大当たり乱数カウンタC1に係る数値情報と、現状の当否抽選モードに対応した当否テーブルとを参照して、大当たり当選となるか否かを判定する。
続くステップS402では大当たり当選であるか否かを判定する。大当たり当選である場合には、ステップS403にて種別判定処理を実行する。種別判定処理では、実行エリアAEにシフトされた保留情報のうち大当たり種別カウンタC2に係る数値情報と、振分テーブルとを参照して、大当たり種別を特定する。
続くステップS404では、大当たり結果に対応した停止結果設定処理を実行する。具体的には、今回の変動開始に係る遊技回においてメイン表示部33に最終的に停止表示させる絵柄の態様の情報を、ROM53に予め記憶されている大当たり結果用の停止結果テーブルから特定し、その特定した情報をRAM54に記憶する。この大当たり結果用の停止結果テーブルには、メイン表示部33に停止表示される絵柄の態様の種類が、大当たり結果の種類毎に相違させて設定されており、ステップS404では、ステップS403にて特定した大当たり結果の種類に応じた絵柄の態様の情報をRAM54に記憶する。
一方、ステップS402にて、大当たり当選ではないと判定した場合には、ステップS405にて、外れ時用の停止結果設定処理を実行する。具体的には、今回の変動開始に係る遊技回においてメイン表示部33に最終的に停止表示させる絵柄の態様の情報を、ROM53に予め記憶されている外れ時用の停止結果テーブルから特定し、その特定した情報をRAM54に記憶する。この場合に選択される絵柄の態様の情報は、大当たり結果の場合に選択される絵柄の態様の情報とは異なっている。
ステップS404又はステップS405の処理を実行した後は、ステップS406にて、変動表示時間の設定処理を実行する。
かかる処理では、変動種別カウンタCSの値を取得する。また、今回の遊技回において図柄表示装置31にてリーチ表示が発生するか否かを判定する。具体的には、今回の変動開始に係る遊技回が大当たり結果である場合には、リーチ表示が発生すると判定する。また、大当たり結果ではない場合であっても、実行エリアAEに格納されているリーチ乱数カウンタC3に係る数値情報がリーチ発生に対応した数値情報である場合には、リーチ表示が発生すると判定する。
リーチ表示が発生すると判定した場合には、ROM53に記憶されているリーチ発生用変動表示時間テーブルを参照して、今回の変動種別カウンタCSの値に対応した変動表示時間情報を取得し、その変動表示時間情報をRAM54に設けられた変動表示時間カウンタにセットする。一方、リーチ表示が発生しないと判定した場合には、ROM53に記憶されているリーチ非発生用変動表示時間テーブルを参照して、今回の変動種別カウンタCSの値に対応した変動表示時間情報を取得し、その変動表示時間情報を上記変動表示時間カウンタにセットする。ちなみに、リーチ非発生用変動表示時間テーブルを参照して取得され得る変動表示時間は、リーチ発生用変動表示時間テーブルを参照して取得され得る変動表示時間と異なっている。
なお、リーチ非発生時における変動表示時間情報は、始動保留球数の数が多いほど、変動表示時間が短くなるように設定されている。また、サポートモードが高頻度サポートモードである状況においては低頻度サポートモードである状況よりも、保留情報の数が同一である場合で比較して、短い変動表示時間が選択されるようにリーチ非発生用変動表示時間テーブルが設定されている。但し、これに限定されることはなく、始動保留球数やサポートモードに応じて変動表示時間が変動しない構成としてもよく、上記の関係とは逆であってもよい。さらには、リーチ発生時における変動表示時間に対して、上記構成を適用してもよい。また、各種大当たり結果の場合、外れリーチ時の場合及びリーチ非発生の場合のそれぞれに対して個別に変動表示時間テーブルが設定されていてもよい。
ステップS406にて、変動表示時間の設定処理を実行した後は、ステップS407にて、変動用コマンド及び種別コマンドを設定する。変動用コマンドには、変動表示時間の情報が含まれる。ここで、上記のとおりリーチ非発生用変動表示時間テーブルを参照して取得される変動表示時間は、リーチ発生用変動表示時間テーブルを参照して取得される変動表示時間と異なっているため、変動用コマンドにリーチ発生の有無の情報が含まれていなかったとしても、サブ側の制御装置である音声発光制御装置60では変動表示時間の情報からリーチ発生の有無を特定することは可能である。この点、変動用コマンドには、リーチ発生の有無を示す情報が含まれているとも言える。なお、変動用コマンドにリーチ発生の有無を直接示す情報が含まれていてもよい。
また、種別コマンドには、遊技結果の情報が含まれる。つまり、種別コマンドには、遊技結果の情報として、通常大当たり結果の情報、明示2R確変大当たり結果の情報、15R確変大当たり結果の情報、及び外れ結果の情報のいずれかが含まれる。
ステップS407にて設定された変動用コマンド及び種別コマンドは、通常処理(図7)におけるステップS201にて、音声発光制御装置60に送信される。ステップS407の処理を実行した後は、ステップS408にてメイン表示部33において絵柄の変動表示を開始させる。その後、本変動開始処理を終了する。
遊技回制御処理(図8)の説明に戻り、メイン表示部33が変動表示中である場合には、ステップS306~ステップS309の処理を実行する。当該処理では、先ずステップS306にて、今回の遊技回の変動表示時間が経過したか否かを判定する。
変動表示時間が経過していない場合には、ステップS307にて変動表示用処理を実行する。変動表示用処理では、メイン表示部33における表示態様を変更する。その後、本遊技回制御処理を終了する。
変動表示時間が経過している場合には、ステップS308にて変動終了処理を実行する。変動終了処理では、上記ステップS404又はステップS405の処理にてRAM54に記憶した情報を特定し、その情報に対応した絵柄の態様がメイン表示部33にて表示されるように当該メイン表示部33を表示制御する。
続くステップS309では、変動終了コマンドを設定する。ここで設定された変動終了コマンドは、通常処理(図7)におけるステップS201にて、音声発光制御装置60に送信される。音声発光制御装置60では、受信した変動終了コマンドに基づいて、その遊技回における演出を終了させる。また、それに対応したコマンドが、音声発光制御装置60から表示制御装置130に送信され、表示制御装置130ではその遊技回における最終停止図柄の組み合わせを確定表示(最終停止表示)させる。その後、本遊技回制御処理を終了する。
<音声発光制御装置60>
次に、音声発光制御装置60について説明する。
音声発光制御装置60は、図4に示すように、MPU62が搭載された音声発光制御基板61を具備している。MPU62には、当該MPU62により実行される各種の制御プログラムや固定値データを記憶したROM63と、そのROM63内に記憶される制御プログラムの実行に際して各種のデータ等を一時的に記憶するためのメモリであるRAM64と、割込回路、タイマ回路、データ入出力回路、乱数発生器としての各種カウンタ回路などが内蔵されている。
なお、ROM63として、制御プログラムや固定値データの読み出しに際してランダムアクセスが可能であって、記憶保持に外部からの電力供給が不要な記憶手段(すなわち、不揮発性記憶手段)が用いられている。また、制御及び演算部分と、ROM63と、RAM64とが1チップ化されている構成は必須ではなく、各機能がそれぞれ別チップとして搭載されている構成としてもよく、一部の機能が別チップとして搭載されている構成としてもよい。
MPU62には、入力ポート及び出力ポートがそれぞれ設けられている。MPU62の入力側には演出用操作装置48及び主制御装置50が接続されているとともに、MPU62の出力側には各種発光部35,36,44、スピーカ部45及び表示制御装置130が接続されている。
MPU62では、主制御装置50から送信された変動用コマンドを受信することで、遊技回用の演出を開始させる必要があることを認識し、遊技回用演出開始処理を実行する。また、主制御装置50から送信された終了コマンドを受信することで、遊技回用の演出を終了させる必要があることを認識し、遊技回用演出終了処理を実行する。また、主制御装置50から送信された大当たり演出用の各種コマンドを受信することで、大当たり演出を開始させる必要があること又は進行させる必要があることを認識し、大当たり演出用処理を実行する。また、主制御装置50から送信されたデモ表示用のコマンドを受信することで、デモ表示を開始させる必要があることを認識し、デモ表示用処理を実行する。
なお、MPU62において主制御装置50からコマンドを受信するとは、主制御装置50からコマンドを直接受信する構成に限定されることはなく、中継基板に中継されたコマンドを受信する構成も含まれる。
遊技回用演出開始処理では、変動用コマンド及び種別コマンドの両コマンドに基づいて、該当遊技回の変動表示時間を把握する変動表示時間の把握処理と、リーチ表示の有無を把握するリーチ表示把握処理と、大当たり結果の有無を把握する大当たり結果発生の把握処理と、大当たり結果が発生する場合における大当たり種別を把握する大当たり種別の把握処理と、を実行する。また、リーチ表示把握処理、大当たり結果発生の把握処理及び大当たり種別の把握処理における把握結果に基づいて、本遊技回において図柄表示装置31の表示面Gに最終停止表示させる図柄の種類を決定する図柄種別把握処理を実行する。そして、上記各把握処理の結果に基づいて、変動表示時間の情報及び表示演出の種類の情報を含む変動パターンコマンドと、最終停止表示させる図柄の種類の情報を含む図柄指定コマンドを、表示制御装置130に送信する。
また、遊技回用演出開始処理では、上記各把握処理の他に、予告表示を行うか否かの予告表示抽選処理を実行する。この場合、当該抽選処理では、予告表示の種別抽選についても実行される。そして、予告表示の発生当選である場合には、予告表示の種別の情報を含む予告コマンドを、表示制御装置130に送信する。
また、遊技回用演出開始処理では、上記各処理の処理結果に基づいて、遊技回用の表示発光テーブルと遊技回用の音声テーブルとをROM63から読み出す。遊技回用の表示発光テーブルにより、該当する遊技回の進行過程における表示発光部44の発光態様が規定される。また、遊技回用の音声テーブルにより、該当する遊技回の進行過程におけるスピーカ部45からの出力態様が規定される。
遊技回用演出終了処理では、現状の遊技回における表示発光部44の発光制御及びスピーカ部45の音声出力制御を終了する。また、当該遊技回用演出終了処理では、遊技回用演出を終了させるべき情報を含む終了コマンドを、表示制御装置130に送信する。
大当たり演出用処理では、受信している大当たり演出用の各種コマンドに基づいて、オープニング時、各ラウンド時、各ラウンド間及びエンディング時などの演出態様を把握し、その把握結果に対応した大当たり演出用のコマンドを表示制御装置130に送信する。また、当該把握結果に基づいて、大当たり演出用の表示発光テーブルと大当たり演出用の音声テーブルとをROM63から読み出し、大当たり演出中における表示発光部44の発光態様やスピーカ部45からの音声の出力態様を規定する。
デモ表示用処理では、受信しているデモ表示用のコマンドに基づいて、デモ表示の演出態様を把握し、その把握結果に対応したデモ表示用のコマンドを表示制御装置130に送信する。また、当該把握結果に基づいて、デモ表示用の表示発光テーブルとデモ表示用の音声テーブルとをROM63から読み出し、デモ表示中における表示発光部44の発光態様やスピーカ部45からの音声の出力態様を規定する。
なお、主制御装置50から送信されたコマンドに基づいてMPU62にて実行される処理は、上記処理以外にも、第1保留発光部35や第2保留発光部36を発光制御するための処理が含まれる。
また、MPU62では、演出用操作装置48の操作部が操作されたことに基づき当該演出用操作装置48から送信される操作信号を受信することで、演出用操作装置48が操作されたことを認識し、操作対応処理を実行する。また、操作されている状態が解除された場合にも操作信号の立下りによってそれを認識し、操作対応処理を実行する。
ここで、演出用操作装置48の操作に対応した演出の一部として、演出用操作装置48が操作されたことに基づき、表示モードが変更される演出が実行される。表示モードとは、遊技回が開始されるまでの間に表示される待機画像や遊技回が実行されている状況で表示される遊技回画像の種類を所定の種類に定める状態であり、複数種類の表示モードが設定されている。かかる表示モードの詳細な内容、及び演出用操作装置48の操作に基づく表示モードの切り換えに係る処理構成については後に詳細に説明する。
<表示制御装置130>
表示制御装置130のハード構成について説明する。
表示制御装置130は、図4に示すように、表示CPU131と、ワークRAM132と、メモリモジュール133と、VRAM134と、ビデオディスプレイプロセッサ(VDP)135と、が搭載された表示制御基板136を備えている。
表示CPU131は、表示制御装置130においてメイン制御部としての機能を有しており、制御プログラム等の読み出し、解釈及び実行を行う。詳細には、表示CPU131は表示制御基板136に搭載された入力ポート137に対してバスを介して接続されており、音声発光制御装置60から送信された各種コマンドは入力ポート137を通じて表示CPU131に入力される。なお、表示CPU131において音声発光制御装置60からコマンドを受信するとは、音声発光制御装置60からコマンドを直接受信する構成に限定されることはなく、中継基板に中継されたコマンドを受信する構成も含まれる。
表示CPU131は、バスを介してワークRAM132、メモリモジュール133及びVRAM134と接続されており、音声発光制御装置60から受信したコマンドに基づいて、メモリモジュール133に記憶された各種データをワークRAM132やVRAM134に転送させる転送指示を行う。また、表示CPU131は、バスを介してVDP135と接続されており、音声発光制御装置60から受信したコマンドに基づいて、図柄表示装置31に3次元画像(3D画像)を表示させるための描画指示を行う。以下、メモリモジュール133、ワークRAM132、VRAM134及びVDP135について説明する。
メモリモジュール133は、制御プログラム及び固定値データを含む制御用データを予め記憶しているとともに、3次元画像を表示するための各種画像データを予め記憶している記憶手段である。当該メモリモジュール133は、記憶保持に外部からの電力供給が不要な不揮発性の半導体メモリを有してなる。ちなみに、記憶容量は4Gビットであるが、かかる記憶容量は表示制御装置130における制御が良好に実行されるのであれば任意である。また、当該メモリモジュール133は、パチンコ機10の使用に際して、非書き込み用であって読み出し専用のメモリ(ROM)として用いられる。
メモリモジュール133に記憶されている各種画像データには、図柄表示装置31に表示される図柄やキャラクタなどのオブジェクト用の画像データと、当該オブジェクトに貼り付けられるテクスチャ用の画像データと、1フレーム分の画像において最背面の画像を構成する背面用の画像データとが含まれている。
ここで、オブジェクトとは、仮想3次元空間に相当する3次元の座標系であるワールド座標系に配置される3次元の仮想物体であり、複数のポリゴンによって構成された3次元情報である。また、ポリゴンとは、複数個の3次元座標の頂点で定義される多角形平面である。オブジェクト用の画像データには、例えばサーフェスモデルを適用するため、オブジェクト毎に予め設定された基準座標を原点として、各ポリゴンの頂点座標情報が設定されている。つまり、各オブジェクト用の画像データでは、自己完結のローカル座標系において各ポリゴンの相対位置(すなわち、向きやサイズ)が3次元的に定義されている。
テクスチャとは、オブジェクトの各ポリゴンに貼り付ける画像であり、テクスチャがオブジェクトに貼り付けられることにより、オブジェクトに対応する画像、例えば図柄やキャラクタなどを含む表示画像が生成される。テクスチャ用の画像データの持ち方は、任意であるが、例えばビットマップ形式データと、ビットマップ画像の各ピクセルでの表示色を決定する際に参照される色パレットテーブルとの組み合わせを少なくとも含んでいる。
最背面の画像は、2次元画像(2D画像)を構成している。背面用の画像データの持ち方は、任意であるが、例えば2次元の静止画像データが圧縮された状態のJPEG形式データとして記憶保持されている。ちなみに、当該背面用の画像データがワールド座標系に配置される場合には板ポリゴンが利用される。
ワークRAM132は、メモリモジュール133から読み出されて転送された制御用データを一時的に記憶しておくとともに、フラグ等を一時的に記憶しておくための記憶手段である。ワークRAM132は、記憶保持に外部からの電力供給が必要な揮発性の半導体メモリを有してなり、詳細には当該半導体メモリとしてDRAMが用いられている。但し、DRAMに限定されることはなくSRAMといった他のRAMを用いてもよい。なお、記憶容量は1Gビットであるが、かかる記憶容量は表示制御装置130における制御が良好に実行されるのであれば任意である。また、ワークRAM132は、パチンコ機10の使用に際して、読み書き両用として用いられる。
ワークRAM132には、表示CPU131からメモリモジュール133へのデータ転送指示に基づき、当該メモリモジュール133から制御用データが転送される。そして、表示CPU131は、ワークRAM132に転送された制御用データを必要に応じて内部のメモリ領域(レジスタ群)に読み込み、各種処理を実行する。
VRAM134は、図柄表示装置31に対して画像出力を行うために必要な各種データを一時的に記憶しておくための記憶手段である。当該VRAM134は、記憶保持に外部からの電力供給が必要な揮発性の半導体メモリを有してなり、詳細には当該半導体メモリとしてSDRAMが用いられている。但し、SDRAMに限定されることはなく、DRAM、SRAM又はデュアルポートRAMといった他のRAMを用いてもよい。なお、記憶容量は2Gビットであるが、かかる記憶容量は表示制御装置130における制御が良好に実行されるのであれば任意である。また、当該VRAM134は、パチンコ機10の使用に際して、読み書き両用として用いられる。
VRAM134は展開用バッファ141を備えており、展開用バッファ141には、表示CPU131からメモリモジュール133へのデータ転送指示に基づき、当該メモリモジュール133から画像データが転送される。この場合、当該画像データは、その画像データを用いたVDP135における処理の実行タイミングとなるまでに事前に転送される。また、VRAM134には、VDP135により描画データ(生成データ)が作成されるフレームバッファ142が設けられている。また、VRAM134には、Zバッファ143、スクリーン用バッファ144及びモード用バッファ145が設けられているが、これらの詳細については後に説明する。
VDP135は、表示CPU131からの描画指示に基づき、展開用バッファ141に記憶保持されているデータを用いて、具体的には加工することにより、図柄表示装置31に対して描画を行う画像生成デバイスであり、図柄表示装置31において液晶表示部31aを駆動制御するように組み込まれた画像処理デバイス31bを操作する一種の描画回路である。VDP135はICチップ化されているため「描画チップ」とも呼ばれ、その実体は、描画専用のファームウェアを内蔵したマイコンチップとでも言うべきものである。
詳細には、VDP135は、ジオメトリ演算部151と、レンダリング部152と、レジスタ153と、表示モード制御部154と、表示回路155と、を備えている。また、これら各回路はバスを介して相互に接続されているとともに、表示CPU131用のI/F156及びVRAM134用のI/F157と接続されている。
表示CPU131用のI/F156は、表示CPU131から送信された描画指示情報としての描画リストをレジスタ153に記憶させる。ジオメトリ演算部151は、レジスタ153に格納された描画リストに基づいて、配置対象として指定されているオブジェクトをワールド座標系内に配置する。また、ジオメトリ演算部151は、オブジェクトをワールド座標系内に配置する場合及び配置した後に、各種の座標変換処理を実行する。そして、最終的に表示面Gのスクリーン座標に対応する3次元空間に対応させて、オブジェクトをクリッピングする。
レンダリング部152は、レジスタ153に格納された描画リストに基づいて、クリッピングされた各オブジェクトに対して光源調整や、テクスチャの貼付を行い、オブジェクトの外観を決定する。また、レンダリング部152は、各オブジェクトを所定の2次元平面上に投影させて2次元データを作成するとともに、深度情報に基づく各種調整を行い2次元データである1フレーム分の描画データをフレームバッファ142に作成する。1フレーム分の描画データとは、予め定められた更新タイミングで図柄表示装置31の表示面Gにおける画像が更新される構成において、一の更新タイミングにおける画像を表示させるのに必要なデータのことをいう。
なお、ジオメトリ演算部151及びレンダリング部152が動作するための制御プログラムの全てが描画リストにより提供される構成としてもよく、制御プログラムを予め記憶したメモリをVDP135に内蔵させ、当該制御プログラムと描画リストの内容によってジオメトリ演算部151及びレンダリング部152が処理を実行する構成としてもよい。また、メモリモジュール133から制御プログラムを事前に読み出す構成としてもよい。また、ジオメトリ演算部151及びレンダリング部152がプログラムを利用することなく、描画リストに対応したハード回路の動作のみで処理を実行する構成としてもよい。
ここで、フレームバッファ142には、複数のフレーム領域142a,142bが設けられている。具体的には、第1フレーム領域142aと、第2フレーム領域142bとが設けられている。これら各フレーム領域142a,142bは、それぞれ1フレーム分の描画データを記憶可能な容量に設定されている。具体的には、各フレーム領域142a,142bにはそれぞれ、液晶表示部31a(すなわち表示面G)のドット(画素)に所定の倍率で対応させた多数の単位エリアが含まれている。各単位エリアは、いずれの色を表示するかを特定するためのデータを格納可能な記憶容量を有している。より詳細には、フルカラー方式が採用されており、各ドットにおいてR(赤),G(緑),B(青)のそれぞれに256色の設定が可能となっている。これに対応させて、各単位エリアにおいては、RGB各色に1バイト(8ビット)が割り当てられている。つまり、各単位エリアは、少なくとも3バイトの記憶容量を有している。
なお、フルカラー方式に限定されることはなく、例えば各ドットにおいて256色のみ表示可能な構成においては、各単位エリアにおいて色情報を格納するために必要な記憶容量は1バイトでよい。
フレームバッファ142に第1フレーム領域142a及び第2フレーム領域142bが設けられていることにより、一方のフレーム領域に作成された描画データを用いて図柄表示装置31への描画が実行されている状況において、他のフレーム領域に対して今後用いられる描画データの作成が実行される。つまり、フレームバッファ142として、ダブルバッファ方式が採用されている。
表示回路155では、第1フレーム領域142a又は第2フレーム領域142bに作成された描画データに基づいて液晶表示部31aの各ドットに対応した画像信号が生成され、その画像信号が、表示回路155に接続された出力ポート138を介して図柄表示装置31に出力される。詳細には、出力対象のフレーム領域142a,142bから表示回路155へ描画データが転送される。その転送された描画データは図柄表示装置31の解像度に対応したものとなるように、図示しないスケーラにより解像度調整が行われて階調データに変換される。そして、当該階調データに基づいて図柄表示装置31の各ドットに対応した画像信号が生成されて出力される。なお、表示回路155からは水平同期信号又は垂直同期信号などの同期信号も出力される。
また、表示モード制御部154では、表示モードに対応した画像の表示を行う場合に、レジスタ153に格納された描画リストに基づいて、所定の処理を実行する。当該所定の処理については後に説明する。
<表示CPU131における基本的な処理>
次に、表示CPU131における基本的な処理について説明する。
<メイン処理>
先ず、表示CPU131への動作電力の供給が開始された場合や、パチンコ機10のリセットが行われた場合に起動されるメイン処理について説明する。メイン処理では、先ず初期設定処理を実行する。
初期設定処理では、表示回路155のスケーラの初期調整処理を実行する。当該初期調整処理では、VRAM134の各フレーム領域142a,142bに作成される描画データに基づいて画像信号が出力される場合に、その画像信号が液晶表示部31aのドット数に対応させて出力されるように、VDP135に対して解像度初期調整用コマンドを送信する。この初期調整値は、パチンコ機10の設計段階において調整されており、その調整結果が解像度初期調整用コマンドとして設定されている。
VDP135に解像度初期調整用コマンドが送信されることで、VDP135のレジスタ153におけるスケーラの解像度調整用のエリアに初期調整値に対応した数値情報が格納される。これにより、VDP135から図柄表示装置31に画像信号が出力される場合、描画データに対応した画像信号が液晶表示部31aのドット数に調整された状態で出力される。
また、初期設定処理では、地色の初期調整処理を実行する。当該初期調整処理では、VRAM134の各フレーム領域142a,142bの単位エリアに初期値として設定される数値情報が初期数値情報となるように、VDP135に対して地色初期調整用コマンドを送信する。この初期数値情報は、パチンコ機10の設計段階において調整されており、その調整結果が地色初期調整用コマンドとして設定されている。
VDP135は地色初期調整用コマンドが送信されることで、VDP135のレジスタ153における地色調整用のエリアに初期数値情報が格納される。これにより、描画データが作成される場合に初期数値情報からの更新が行われなかった単位エリアに対応したドットでは、地色が表示されることとなる。なお、初期の地色として本パチンコ機10では黒色が設定されているが、これに限定されることはなく任意である。
初期設定処理を実行した後は、各種割込みを許可する。これにより、表示CPU131においてコマンド割込み処理及びV割込み処理を実行することが許容される。その後、メイン処理では、各種割込みを許可する処理を繰り返す。
<コマンド割込み処理>
次に、コマンド割込み処理について説明する。
コマンド割込み処理は、音声発光制御装置60からストローブ信号を受信した場合に、その時点で実行されている処理が何であったとしても最優先で起動される処理である。コマンド割込み処理では、入力ポート137にて受信しているコマンドを、ワークRAM132に設けられたコマンドバッファに転送し、さらにコマンドを新たに受信したことを示すフラグを対応するエリアにセットする。その後、コマンド割込み処理を終了し、当該コマンド割込み処理の起動前の処理に復帰する。
<V割込み処理>
次に、V割込み処理について、図10のフローチャートを参照しながら説明する。V割込み処理は、予め定められた周期、具体的には20msec周期で繰り返し起動される。
なお、VDP135は図柄表示装置31に1フレーム分の画像信号を出力する場合、表示面Gの左上の隅角部分にあるドットから画像信号の出力を始めて、当該ドットを一端に含む横ライン上に並ぶドットに対して順次画像信号を出力するとともに、各横ラインに対して上から順に左から右のドットへと画像信号を出力する。そして、表示面Gの右下の隅角部分にあるドットに対して最後に画像信号を出力する。この場合に、VDP135は当該最後のドットに対して画像信号を出力したタイミングで、表示CPU131へV割込み信号を出力して1フレームの画像の更新が完了したことを表示CPU131に認識させる。このV割込み信号の出力周期は20msecとなっている。この点、V割込み処理は、V割込み信号の受信に同期して起動されると見なすこともできる。但し、V割込み信号を受信していなくても、前回のV割込み処理が起動されてから20msecが経過している場合には、新たにV割込み処理が起動される。
V割込み処理では、先ずステップS501にて、コマンド解析処理を実行する。具体的には、ワークRAM132のコマンドバッファに格納されているコマンドの内容を解析する。続くステップS502では、ステップS501の解析結果に基づいて、新規コマンドを受信しているか否かを判定する。新規コマンドを受信している場合には、ステップS503にて、コマンド対応処理を実行する。
コマンド対応処理では、受信しているコマンドに対応したプログラムを実行するためのデータテーブルをメモリモジュール133から読み出す。データテーブルとは、受信したコマンドに対応した動画を図柄表示装置31の表示面Gに表示させる場合において、画像の各更新タイミングにおける1フレーム分の画像を表示させるのに必要な処理が定められた情報群である。
ここで、表示CPU131が音声発光制御装置60から受信するコマンドとしては、既に説明したとおり、変動パターンコマンド、図柄指定コマンド及び予告コマンドがある。これらのコマンドを受信した場合、それら各コマンドに対応した遊技回用演出を図柄表示装置31にて実行するために必要なデータテーブルを読み出す。また、上記受信するコマンドとしては終了コマンドがあり、当該コマンドを受信した場合には現状実行されている遊技回用演出を最終停止させるために必要なデータテーブルを読み出す。また、上記受信するコマンドとしては、大当たり演出用の各種コマンドがあり、当該コマンドを受信した場合には大当たり演出を実行するために必要なデータテーブルを読み出す。また、上記受信するコマンドとしては、デモ表示用のコマンドがあり、当該コマンドを受信した場合にはデモ表示を実行するために必要なデータテーブルを読み出す。さらに読み出したデータテーブルに基づき、処理を実行する場合に必要な他のプログラムデータも読み出す。
ステップS503にてコマンド対応処理を実行した後は、ステップS504にて、ポインタ更新処理を実行する。当該ポインタ更新処理では、データテーブルに設定されているポインタの情報を、1フレーム分進めるように更新する。これにより、今回の更新タイミングに対応した1フレーム分の画像を表示させるために必要な処理を、表示CPU131において把握することが可能となる。
続くステップS505では、タスク処理を実行する。タスク処理では、今回の更新タイミングに対応した1フレーム分の画像を表示させるために、VDP135に描画指示を行う上で必要なパラメータの演算を行う。当該タスク処理の詳細については後に説明する。
続くステップS506では、描画リスト出力処理を実行する。描画リスト出力処理では、今回の処理回に係る更新タイミングに対応した1フレーム分の画像を表示させるための描画リストを作成し、その作成した描画リストをVDP135に送信する。この場合、当該描画リストでは、直前のタスク処理にて把握された画像が描画対象となり、さらに当該タスク処理にて更新したパラメータの情報が合わせて設定される。VDP135では、この描画リストに従ってVRAM134のフレーム領域142a,142bに描画データを作成する。このVDP135における処理については後に詳細に説明する。その後、本V割込み処理を終了する。
<表示CPU131におけるタスク処理>
ここで、タスク処理について、図11のフローチャートを参照しながら説明する。
タスク処理では先ずステップS601にて、制御開始用の設定処理を実行する。制御開始用の設定処理では、今回の処理回で表示CPU131において新たに制御(演算)を開始する個別画像を設定するための処理を実行する。なお、個別画像とは、背面用の画像データなどの静止画像データにより規定される一の2次元画像や、オブジェクト用の画像データとテクスチャ用の画像データとの組み合わせにより規定される一の3次元画像のことである。
制御開始用の設定処理について具体的には、先ず現状設定されているデータテーブルに基づいて、今回の処理回で制御開始対象となる個別画像が存在しているか否かを判定する。存在している場合には、ワークRAM132において、個別画像の制御を行う上で各種演算を行うための空きバッファ領域を検索して、制御開始対象として把握されている個別画像に1対1で対応するように空きバッファ領域を確保する。さらに、確保した全ての空きバッファ領域に対して初期化処理を実行するとともに、初期化した空きバッファ領域に対して、個別画像に応じた制御開始用のパラメータを設定する。
続くステップS602では、制御更新対象を把握する。この制御更新対象は、制御開始処理が完了している個別画像であって今回の処理回以降に1フレーム分の画像に含まれる可能性がある個別画像が対象となる。
続くステップS603では、背景用演算処理を実行する。背景用演算処理では、背景の画像を構成することとなる最背面用の画像や、背景用キャラクタについて、ワールド座標系内における座標、回転角度、スケール、明暗を付けるためのライトの情報、投影を行うためのカメラの情報、及びZテスト指定などといった描画リストを作成する上で必要な各種パラメータを演算して導き出す処理を実行する。
続くステップS604では、演出用演算処理を実行する。演出用演算処理では、リーチ表示、予告表示及び大当たり演出といった各種演出において表示対象となる個別画像について、上記各種パラメータを演算して導き出す処理を実行する。
続くステップS605では、図柄用演算処理を実行する。図柄用演算処理では、各遊技回において変動表示の対象となる図柄の画像について、上記各種パラメータを演算して導き出す処理を実行する。
ちなみに、ステップS603~ステップS605の各処理では、ステップS601にて設定された制御開始用のパラメータを更新する処理を実行する。また、ステップS603~ステップS605の各処理では、個別画像の各種パラメータを画像更新タイミングとなる度に特定のパターンに従って変化させるように設定されたアニメーション用データが用いられる。このアニメーション用データは、メモリモジュール133に予め記憶されており、個別画像の種類に応じて定められている。
その後、ステップS606にてワールド座標系への配置対象の把握処理を実行した後に、本タスク処理を終了する。ワールド座標系への配置対象の把握処理では、上記ステップS603~ステップS605の各処理により制御更新対象となった各個別画像のうち、今回の描画リストにおいて描画対象として設定する個別画像を把握する処理を実行する。当該把握は、現状設定されているデータテーブルに基づいて行われる。ここで把握された個別画像が、描画リストにおいて描画対象として設定される。
つまり、表示CPU131にて制御対象となる個別画像の方が、VDP135にて制御対象となる個別画像よりも多く設定されているため、ステップS606においてその調整を行っている。但し、これに限定されることはなく、表示CPU131において制御対象となる個別画像と、VDP135において制御対象となる個別画像とが同一である構成としてもよく、この場合、ステップS606の処理を実行する必要がなくなる。
なお、ステップS601の制御開始用の設定処理において、表示CPU131の処理負荷を分散させるべく、各個別画像の制御開始タイミングが分散させて設定されている構成としてもよい。
<VDP135における基本的な処理>
次に、VDP135にて実行される基本的な処理について説明する。
VDP135では、表示CPU131から送信されたコマンドに基づいてレジスタ153の値を設定する処理、表示CPU131から送信された描画リストに基づいてフレームバッファ142のフレーム領域142a,142bに描画データを作成する処理、フレーム領域142a,142bに作成された描画データに基づいて図柄表示装置31に画像信号を出力する処理が少なくとも実行される。
上記各処理のうち、レジスタ153の値を設定する処理は、表示CPU131用のI/F156に付随する図示しない回路によって、コマンドを受信した場合にその都度実行される。また、描画データを作成する処理は、ジオメトリ演算部151及びレンダリング部152の協同により、予め定められた周期(例えば、20msec)で繰り返し実行される。また、画像信号を出力する処理は、表示回路155によって、予め定められた画像信号の出力開始タイミングとなることで実行される。
以下、上記描画データを作成する処理について詳細に説明する。当該処理の説明に先立ち、表示CPU131からVDP135に送信される描画リストの内容について説明する。図12(a)~(c)は描画リストの内容を説明するための説明図である。
描画リストには、ヘッダ情報が設定されている。ヘッダ情報には、当該描画リストに係る1フレーム分の画像を、第1フレーム領域142a及び第2フレーム領域142bのうちいずれを作成対象とするかを示す情報であるターゲットバッファの情報が設定されている。また、ヘッダ情報には、各種指定情報が設定されている。各種指定情報の内容については後に説明する。なお、VDP135にて取り扱う画像データとして動画像データが含まれている場合には、ヘッダ情報において、デコード指定の有無及びデコード対象となる動画像データがメモリモジュール133において記憶されているアドレスの情報が設定されていてもよい。
描画リストには、上記ヘッダ情報以外にも、今回の描画データの作成に際してワールド座標系への配置対象となる複数種類の画像データが設定されており、さらに各画像データの描画順序の情報と、各画像データのパラメータ情報とが設定されている。詳細には、描画順序の情報が連番の数値情報となるようにして設定されているとともに、各数値情報に1対1で対応させてパラメータの情報が設定されている。
図12(a)の描画リストでは、背面用の画像データが最初の描画対象として設定されているとともに、背景用オブジェクトAが2番目、背景用オブジェクトBが3番目、・・・として設定されている。また、これら背景用の画像データよりも後の順番として、演出用の画像データが設定されており、例えば演出用オブジェクトAがm番目、演出用オブジェクトBがm+1番目、・・・として設定されている。また、これら演出用の画像データよりも後の順番として、図柄用の画像データが設定されており、例えば図柄用オブジェクトAがn番目、図柄用オブジェクトBがn+1番目、・・・として設定されている。
なお、描画リストにおいて各画像データが設定されている順番は上記のものに限定されることはなく、設定されている順番が上記のものとは逆の順番であってもよく、図柄用の画像データの後に演出用の画像データ又は背景用の画像データが設定されていてもよく、所定の演出用の画像データと他の演出用の画像データとの間の順番に図柄用の画像データが設定されていてもよい。
パラメータの情報P(1),P(2),P(3),・・・,P(m),P(m+1),・・・,P(n),P(n+1),・・・には、複数種類のパラメータが設定されている。背面用の画像データのパラメータP(1)について具体的には、図12(b)に示すように、メモリモジュール133において背面用の画像データが記憶されているエリアのアドレスの情報と、背面用の画像データを設定する場合におけるワールド座標系内の位置を示す座標の情報(X値の情報,Y値の情報,Z値の情報)と、背面用の画像データを設定する場合におけるワールド座標系内の回転角度を示す回転角度の情報と、背面用の画像データの初期状態として設定されているスケールに対して、ワールド座標系に設定する際の倍率を示すスケールの情報と、背面用の画像データを設定する場合における全体の透過情報(又は透明情報)を示す一律α値の情報と、が設定されている。
ここで、座標の情報は、オブジェクト用の画像データの全頂点について個別に設定される。また、この座標の情報はオブジェクト用の画像データに対して設定されているが、テクスチャ用の画像データには設定されていない。テクスチャ用の画像データは、各ピクセルの座標値が、オブジェクト用の画像データの各頂点に関連付けて予め定められている。この座標値は、ワールド座標系における座標値とは異なるUV座標値であり、オブジェクト用の画像データ及びテクスチャ用の画像データの組み合わせに対して付属させた状態でメモリモジュール133に記憶されている。このUV座標値はテクスチャマッピングする際にVDP135により参照される。
パラメータ(P1)には、背面用の画像データを描画用の仮想2次元平面上に投影する場合における仮想カメラの座標及び向きの情報を含むカメラの情報と、背面用の画像データをレンダリングする場合における陰影を決定する仮想光源の位置及び向きの情報を含むライトの情報と、が設定されている。
パラメータ(P1)には、隠面消去を行う手法の一種であるZバッファ法の適用有無を示すZテスト指定の情報が設定されている。Zバッファ法とは、ワールド座標系内において多数のオブジェクトや2次元画像が奥行き方向(Z軸方向)に重なった場合に、Z軸上に並ぶ各ピクセル(又は各ボクセル、各画素、各ポリゴン)について視点からの距離を順次参照し、最も視点に近いピクセルに設定されている数値情報をフレーム領域142a,142bにおける対応する単位エリアに設定する深度調整用の処理方法である。当該Zバッファ法を適用する場合に、VRAM134に設けられたZバッファ143が利用される。
なお、上記隠面消去を行う手法としてZバッファ法以外にも、Zソート法が設定されている。Zソート法とは、Z軸上に並ぶ各ピクセルについて、各ピクセルに設定されている数値情報をフレーム領域142a,142bにおける対応する単位エリアに順次設定する深度調整用の処理方法である。当該Zソート法を適用する場合には、各ピクセルに設定されているα値が参照されて、Z軸上に並ぶ各ピクセルの色情報に対応した数値情報に対して対応するα値が適用された状態で、それら数値情報の加算処理や融合用の演算処理が実行されることとなる。Zソートによる隠面処理の具体的な処理構成の説明は省略するが、エフェクト画像を表示させる場合に起動される。
パラメータ(P1)には、αデータの適用有無及び適用対象を示すαデータ指定の情報と、フォグの適用有無及び適用対象を示すフォグ指定の情報と、背景画像を表示するために作成された背景画像用の描画データについて別保存の有無を示す別保存指定の情報と、が設定されている。
ここで、α値とは対応するピクセルの透過情報のことである。このα値の描画リスト上における設定の仕方として、上記一律α値を指定する方法と、αデータ指定を行う方法とがある。一律α値とは、一の画像データの全ピクセルに対して適用される透過情報のことであり、表示CPU131における演算結果として導出される数値情報である。当該一律α値は、画像データの全ピクセルに一律で適用される。一方、αデータとは、2次元の静止画像データやテクスチャ用の画像データの各ピクセル単位で適用される透過情報のことであり、画像データとしてメモリモジュール133に予め記憶されている。当該αデータは、同一の静止画像データ又は同一のテクスチャ用の画像データの範囲内において各ピクセル単位で透過情報を相違させることができる。このαデータは、一律α値を設定するためのプログラムデータに比べデータ容量が大きい。
上記のように一律α値とαデータとが設定されていることにより、2次元の静止画像データやテクスチャ用の画像データの透過度をピクセル単位で細かく制御するのではなく全ピクセルに対して一律で制御すればよい状況では一律α値で対応することができることで必要なデータ容量の削減が図られるとともに、αデータを適用することによって透過度をピクセル単位で細かく制御することも可能となる。
フォグとは、ワールド座標系において所定方向、具体的にはZ軸方向の位置に対する明るさの度合いを調整するための情報である。フォグは、霧を表現したり、洞窟内を表現したりする場合に使用される。ここで、1フレーム分の画像の全体に対して単一のフォグを適用してもよい。この場合、1フレーム分の画像に一定の態様でフォグがかかることとなる。また、これに代えて、1フレーム分の画像の全体に対して複数のフォグを適用してもよい。この場合、Z軸方向の奥側に配置されているオブジェクトに対してその他のオブジェクトと同様のフォグを適用すると暗すぎることで質感がでないような状況において、当該オブジェクトには別のフォグを設定する構成とするとよい。これにより、上記質感を損なわせないようにしつつ、フォグを設定することによる効果を得ることができる。
別保存とは、一旦作成した背景画像用の描画データをその後のフレームにおいてそのまま使用するために、フレーム領域142a,142bとは別に設けられたモード用バッファ145に書き込み保存しておくことをいう。モード用バッファ145には、図4に示すように、各表示モードに1対1で対応するように、第1モード用領域145aと、第2モード用領域145bとが設けられている。
パラメータP(2)といった他のパラメータでは、図12(c)に示すように、上記図12(b)の各種情報のうち、背面用の画像データの情報に代えて、オブジェクトの情報とテクスチャの情報とが設定されている。これらの情報としては、メモリモジュール133においてオブジェクトやテクスチャが記憶されているエリアのアドレスの情報が設定されている。
VDP135における描画処理について、図13のフローチャートを参照しながら説明する。なお、以下の説明では、描画処理の実行に伴い描画データが作成される様子を、図14を参照しながら説明する。
先ずステップS701では、表示CPU131から新たな描画リストを受信しているか否かを判定する。新たな描画リストを受信している場合には、ステップS702にて、背景用の設定処理を実行する。
背景用の設定処理では、今回の描画リストにて指定されている画像データのうち、背景画像を表示するための背面用の画像データ及びキャラクタ用のオブジェクトを把握する。そして、それら画像データやキャラクタ用のオブジェクトが、ワールド座標系に既に配置されているか否かを判定する。
配置されていない場合には、ワールド座標系への配置を行うために参照する空きバッファ領域を画像データ毎に検索し、空きバッファ領域を確保した場合にはその領域の初期化処理を実行する。その後、メモリモジュール133においてその画像データが記憶されているアドレスを把握して読み出すとともに、描画リストに指定された座標、回転角度及びスケールとなるように、その画像データについてのローカル座標系の座標値をワールド座標系の座標値に変換させるワールド変換処理を実行して、上記確保したバッファ領域に設定する。
配置されている場合には、既に確保されたバッファ領域に設定されている各種パラメータの更新処理を実行する。また、背景用の設定処理では、既にワールド座標系に配置されている画像データのうち、今回の描画リストに指定されていない背景用の画像データを消去する制御終了処理を実行する。
続くステップS703では、演出用の設定処理を実行する。演出用の設定処理では、今回の描画リストにて指定されている画像データのうち、演出画像を表示するためのオブジェクトを把握する。そして、その把握したオブジェクトが、ワールド座標系に既に配置されているか否かを判定する。配置されていない場合には、上記背景用の設定処理において説明した場合と同様に、配置を開始するための処理を実行する。配置されている場合には、各種パラメータの更新処理を実行する。また、演出用の設定処理では、既にワールド座標系に配置されている画像データのうち、今回の描画リストに指定されていない演出用の画像データを消去する制御終了処理を実行する。
続くステップS704では、図柄用の設定処理を実行する。図柄用の設定処理では、今回の描画リストにて指定されている画像データのうち、図柄を表示するためのオブジェクトを把握する。そして、その把握したオブジェクトが、ワールド座標系に既に配置されているか否かを判定する。配置されていない場合には、上記背景用の設定処理において説明した場合と同様に、配置を開始するための処理を実行する。配置されている場合には、各種パラメータの更新処理を実行する。また、図柄用の設定処理では、既にワールド座標系に配置されている画像データのうち、今回の描画リストに指定されていない図柄用の画像データを消去する制御終了処理を実行する。
上記ステップS702~ステップS704の処理が実行されることにより、図14に示すように、X軸,Y軸,Z軸で規定されたワールド座標系内に、描画リストにより配置対象として指定されている最背面画像PC1と、各種オブジェクトPC2~PC10とが、同じく描画リストにより指定されている座標、回転角度及びスケールで配置されたシーンの設定が完了する。
なお、図14においては、最背面画像PC1や各種オブジェクトPC2~PC10が配置されている様子を簡易的に示している。また、最背面画像PC1は、各種オブジェクトPC2~PC10の全てに対してZ軸方向の座標が奥側に設定されている必要はなく、例えば、最背面画像PC1が曲げられた状態又は傾斜した状態で配置されていることにより、一部のオブジェクトよりもZ軸方向の座標が手前側となる構成としてもよい。但し、この一部のオブジェクトとX軸方向の座標及びY軸方向の座標が同一である最背面画像PC1の領域は、そのオブジェクトよりもZ軸方向の座標が奥側であることにより、全てのオブジェクトが最背面画像PC1により覆われない状態となる。
続くステップS705では、カメラ座標系(カメラ空間)への変換処理を実行する。カメラ座標系への変換処理では、描画リストにより指定されたカメラの情報により、視点の座標及び向きを決定するとともに、その視点の座標及び向きに基づいて、ワールド座標系を、視点を原点としたカメラ座標系(カメラ空間)に変換する。これにより、図14に示すように、カメラ形状で示す視点PC11が設定され、それに対応した座標系が設定された状態となる。
ここで、カメラの情報は、個別画像(最背面画像PC1及び各種オブジェクトPC2~PC10)毎に設定されており、実際には個別画像毎にカメラ座標系が存在することとなる。このように個別画像毎にカメラ座標系が設定されることにより、視点切換を個別に行うことが可能となり、描画データの作成の自由度が高められる。但し、説明の便宜上、図14には全ての個別画像が単一の視点に設定されている状態を示す。
続くステップS706では、視野座標系(視野空間)への変換処理を実行する。視野座標系への変換処理では、上記各カメラ座標系を、視点からの視野(視野角)に対応する視野座標系に変換する。これにより、各個別画像について、対応する視点の視野内に含まれている場合にはそれが抽出されるとともに、視点から近い個別画像が拡大されるとともに、視点から遠い個別画像が縮小される。
続くステップS707では、クリッピング処理を実行する。クリッピング処理では、ステップS706にて抽出された各個別画像が、それぞれ対応する視点を共通の原点として把握される。そして、その状態で描画対象のフレーム領域142a,142b(すなわち、図柄表示装置31の表示面G)に応じたスクリーン領域PC12(図14を参照)に対応する空間を基準として、ステップS706にて抽出された各個別画像をクリッピングする。
続くステップS708では、ライティング処理を実行する。ライティング処理では、描画リストにより指定されたライトの情報により、仮想光源の種類、座標及び向きを決定するとともに、上記クリッピング処理により抽出された各オブジェクトについて上記仮想光源に基づき陰影や反射等を演算する。
続くステップS709及びステップS710では、2次元データを作成する。当該2次元データは、ステップS707にて抽出され、さらにステップS708にてライティング処理が完了した各個別画像を、仮想2次元平面であるスクリーン領域PC12に投影(例えば、透視投影や平行投影)することにより作成される。
具体的には、先ずステップS709にて、背景用の描画データ作成処理を実行する。背景用の描画データ作成処理では、背景画像として設定されている最背景画像及びオブジェクトに対して隠面消去を行いながらスクリーン領域PC12への投影を行うことで、背景に用いられる2次元データを作成する。
ここで、VRAM134には、図4に示すようにスクリーン用バッファ144が設けられており、スクリーン用バッファ144には背景用の描画データが書き込まれる背景用のバッファと、演出用の描画データ及び図柄用の描画データがまとめて書き込まれる演出及び図柄用のバッファとが設定されている。また、背景用のバッファ、演出及び図柄用のバッファには、スクリーン領域PC12のピクセル数と同一のドット数のエリアが設定されている。ステップS709にて作成される背景に用いられる2次元データは、背景用のバッファに書き込まれる。
そして、当該2次元データに対して、色情報の設定を行う。当該色情報の設定では、投影により得られた2次元データに対して、ピクセル単位又は頂点単位で、色情報を設定することで、仮想3次元空間内の各オブジェクトに対応する描画データを作成する。かかる色情報の設定では、基本的に、投影により得られた2次元データに対して、対応するテクスチャを貼り付けるテクスチャマッピング処理が実行される。また、状況によっては、バンプマッピング処理や透明度マッピング処理なども実行される。なお、描画リストにおいて背景用の画像データが指定されていない場合には、背景用の描画データは作成されない。
続くステップS710では、演出及び図柄に用いられる2次元データを作成する処理を実行する。演出及び図柄に用いられる2次元データを作成する処理では、演出画像として設定されているオブジェクト及び図柄として設定されているオブジェクトに対して隠面消去を行いながらスクリーン領域PC12への投影を行うことで、スクリーン用バッファ144における演出及び図柄用のバッファに演出及び図柄に用いられる2次元データを作成する。
そして、当該2次元データに対して、色情報の設定を行う。当該色情報の設定では、投影により得られた2次元データに対して、ピクセル単位又は頂点単位で、色情報を設定することで、仮想3次元空間内の各オブジェクトに対応する描画データを作成する。かかる色情報の設定では、基本的に、投影により得られた2次元データに対して、対応するテクスチャを貼り付けるテクスチャマッピング処理が実行される。また、状況によっては、バンプマッピング処理や透明度マッピング処理なども実行される。なお、描画リストにおいて演出用及び図柄用の画像データが指定されていない場合には、演出用及び図柄用の描画データは作成されない。
その後、ステップS711にて、描画データ合成処理を実行した後に、本描画処理を終了する。ステップS711の描画データ合成処理では、ステップS709及びステップS710の処理によりそれぞれ個別にスクリーン用バッファ144に書き込まれている背景用の描画データと、演出及び図柄用の描画データとを合成して、その合成結果を描画対象のフレーム領域142a,142bに1フレーム分の描画データとして書き込む。
この場合、その書き込む順序は、背景用の描画データ→演出及び図柄用の描画データの順序で奥側から手前側に並ぶように規定されている。したがって、描画対象のフレーム領域142a,142bに対して、先ず背景用の描画データを書き込み、次に演出及び図柄用の描画データを書き込む。この際、描画の実行対象となったピクセルに完全透過のα値が設定されている場合には奥側の画像がそのまま利用され、半透過のα値が設定されている場合にはα値を基準とした比率での奥側の画像と手前側の画像との融合が行われ、不透過のα値が設定されている場合には奥側の画像に対する手前側の画像の上書きが行われるように、融合用の演算が実行される。
ここで、融合用の演算についてより詳細に説明すると、描画対象のフレーム領域142a,142bにおける各ドットのRGBの各数値情報は、演出及び図柄用の描画データにおける描画対象となったピクセルに設定されているα値を基準として、
R:「奥側画像のR値」×(「1」-「α値」)+「手前側画像のR値」×「α値」
G:「奥側画像のG値」×(「1」-「α値」)+「手前側画像のG値」×「α値」
B:「奥側画像のB値」×(「1」-「α値」)+「手前側画像のB値」×「α値」
となる。
ちなみに、各描画データは1フレーム分の面積を有するように規定されているが、演出及び図柄用の描画データにおいて投影が行われなかったブランク部分については完全透過のα値が設定されている。
上記1フレーム分の描画データの作成は20msec周期の範囲内で完了するように行われる。また、作成された描画データに基づいて表示回路155から図柄表示装置31に画像信号が出力されるが、既に説明したとおりダブルバッファ方式が採用されているため、当該画像信号の出力は当該出力に係るフレームに対して1フレーム分後の描画データの作成と並行して行われる。また、表示回路155は1フレーム分の画像信号の出力が完了する毎に参照対象とするフレーム領域142a,142bを交互に切り換えるセレクタ回路を有しており、当該セレクタ回路による切換によって、描画データの描画対象となっているフレーム領域142a,142bが画像信号を出力するための出力対象とならないように規制されている。
なお、上記ステップS702~ステップS707がジオメトリ演算部151により実行される処理であり、上記ステップS708~ステップS711がレンダリング部152により実行される処理である。
<毛並み表示演出を行うための構成>
毛並み表示演出とは、毛並みを立体的に表示する演出である。毛並み表示演出では、板状ポリゴンが当該板状ポリゴンの法線方向に積層させて配置される。そして、積層された複数の板状ポリゴンの投影データに対して透過情報が設定され、毛並みを表示するための画像データが適用される。毛並み表示演出では、毛並みを構成する多数の毛が一括して表示され、制御される。これにより、1本1本の毛を個別に制御して毛並みを表示する方法と比較して、毛並みを表示するためのデータ容量の増加を抑えることができる。また、毛並みを表示するための重い演算処理を回避することができる。この表示方法により、毛並み以外にも芝生や絨毯など、凹凸構造を有する表面を立体的に表示することが可能となる。
以下、毛並み表示演出を実行する方法について、具体的に説明する。先ず図15(a)~(e)を参照しながら、1本の直線的な毛を表示する方法について説明する。図15(a)は板状ポリゴンである毛並み表示用オブジェクト221であり、図15(b)は地肌の上方に毛並表示用オブジェクト221a~221eが積層させて配置される様子であり、図15(c)は毛並み表示用オブジェクト221の投影データに対して適用される毛並み表示用テクスチャ223であり、図15(d)は毛並み表示用オブジェクト221に対して適用されるαデータ222であり、図15(e)は毛並み表示用オブジェクト221a~221eの投影データにαデータ222及び毛並み表示用テクスチャ223が適用された場合の毛の表示態様である。
図15(a)に示すように、メモリモジュール133には4つの頂点を有する板状ポリゴンが毛並み表示用オブジェクト221として記憶されている。毛並み表示用オブジェクト221は、図15(b)に示すように、地肌を表示するためのオブジェクトの上方に5個配置される。5個の毛並み表示用オブジェクト221a~221eは5層となるように積層させて配置される。毛並み表示演出の初期状態において、5層は互いに平行な関係にあり、毛の根元に相当する部分の積層間隔が小さく、毛先に相当する部分の積層間隔が大きい。5層の間隔は、積層間隔の変更タイミングを迎えると変化する。
図15(c)に示すように、メモリモジュール133には毛並み表示用オブジェクト221の投影データに色情報を設定するための画像データとして毛並み表示用テクスチャ223が記憶されている。毛並み表示用テクスチャ223はUV座標系内に存在する。毛並み表示用テクスチャ223の外縁は、対応する毛並み表示用オブジェクト221の外縁と合同の長方形である。当該長方形の4つの頂点に対応する座標は、UV座標において、(0,0)、(1,0)、(0,1)及び(1,1)である。
毛並み表示用オブジェクト221の各ドットには対応するUV座標の座標値が予め設定されている。また、毛並み表示用オブジェクト221のスクリーン領域PC12への投影は、毛並み表示用オブジェクト221の投影データの各ドットに投影された毛並み表示用オブジェクト221のドット情報が把握できる態様で行われる。VDP135は毛並み表示用オブジェクト221の投影データの各ドットに対応する毛並み表示用オブジェクト221のドット情報を把握し、当該毛並み表示用オブジェクト221のドットに対応するUV座標の座標値を把握する。そして、UV座標系に存在する毛並み表示用テクスチャ223の座標値に設定されている色情報を、毛並み表示用オブジェクト221の投影データの各ドットに設定する。これにより、毛並み表示用テクスチャ223が毛並み表示用オブジェクト221の投影データに適用される。
毛並み表示用テクスチャ223には、表示対象である毛の断面と同じ大きさの円が描かれている。当該円の内部を円形領域223bとすると、当該円形領域223bの色は表示対象である毛の色と同一である。また、当該円の周囲を囲う周辺領域223aは白色である。
図15(d)に示すように、メモリモジュール133には毛並み表示用オブジェクト221に適用される透過情報が設定されたαデータ222が記憶されている。αデータ222には毛並み表示用オブジェクト221の各ドットに設定するα値が記憶されている。毛並み表示用オブジェクト221において、毛並み表示用テクスチャ223の円形領域223bのピクセルと対応付けられているドットには、αデータ222を適用することによりα値として「1」が設定される。また、毛並み表示用オブジェクト221において、毛並み表示用テクスチャ223の周辺領域223aのピクセルと対応付けられているドットには、αデータ222を適用することにより「1」よりも小さいα値が設定される。
αデータ222において、α値として「1」が設定されているピクセルで構成される領域を不透明領域222bとし、「1」より小さなα値が設定されているピクセルで構成される領域を透明領域222aとする。透明領域222aに設定されるα値が「0」である場合には、周辺領域223aが完全透明となる。また、透明領域222aに設定されるα値が「0」より大きく「1」より小さな値である場合には、周辺領域223aが半透明となる。不透明領域222bに設定されるα値は「1」なので、円形領域223bは不透明となる。
周辺領域223aが完全透明の場合には、視点から見て当該周辺領域223aよりも奥側のオブジェクトに対応する完全透明ではないテクスチャが表示される。例として、スクリーン領域PC12への投影に際して、当該毛並み表示用オブジェクト221が最前面である場合について説明する。スクリーン領域PC12において、完全透明の領域に対応するピクセルには、当該毛並み表示用オブジェクト221の背面に存在するテクスチャであって、完全透明でない色情報が設定される。このようなテクスチャとして、当該毛並み表示用オブジェクト221の背面に存在する別の毛並み表示用オブジェクト221に対応する毛並み表示用テクスチャ223又は、5個の毛並み表示用オブジェクト221a~221eの背面に存在するオブジェクトに対応する地肌表示用のテクスチャが考えられる。一方、スクリーン領域PC12において、不透明領域222bに対応するピクセルには、当該毛並み表示用オブジェクト221に対応する毛並み表示用テクスチャ223の色情報が設定される。
また、αデータ222が半透明のα値からなる場合には、当該αデータ222が適用された毛並み表示用オブジェクト221に対応する毛並み表示用テクスチャ223の色情報と、視点から見て当該毛並み表示用オブジェクト221よりも奥側のオブジェクトに対応するテクスチャの色情報について、上述した融合用の演算が行われる。つまり、描画対象フレーム領域142a,142bにおける各ピクセルのRGBの各数値情報は、αデータ222により設定されたα値を基準として、手前側の半透明の色情報と奥側の不透明の色情報の融合により演算される。この場合、αデータ222により設定されたα値が大きいほど手前側の半透過の色情報の影響が強くなり、αデータ222により設定されたα値が小さいほど奥側の不透過の色情報の影響が強くなる。いずれの場合も、奥側の不透明のテクスチャが薄く表示されるとともに、その外縁がぼやけて表示される。
このように、毛並表示用オブジェクト221にαデータ222を適用するとともに、毛並み表示用オブジェクト221の投影データに毛並表示表テクスチャ223を適用することにより、円形領域223bのみが有色不透明で表示され、遊技者には1本の毛が1方向に伸びているように見える(図15(e))。
次に、ワールド座標系内において、毛並み表示用オブジェクト221の積層間隔を調整することにより、表示される毛の見え方を変化させる方法について説明する。毛並み表示用オブジェクト221a~221eはワールド座標系内に積層させて配置される。毛並み表示用オブジェクト221a~221eの配置は、毛並み表示用オブジェクト221a~221eの4個の頂点について、ワールド座標系内の座標を指定することにより行われる。したがって、設計段階において、毛並み表示用オブジェクト221a~221eの頂点の座標を調整することにより、積層間隔を設定することができる。
ワールド座標系内に積層させて配置された毛並み表示用オブジェクト221a~221eの投影データに毛並み表示用テクスチャ223を適用することにより、毛並み表面と同一色の円形領域223bが法線方向に積層されて表示される。視点が毛の正面からずれた位置にある場合には、毛並み表示用オブジェクト221a~221eの積層間隔に応じて毛の見え方が変化する。
図16(a)及び図16(b)は毛並み表示用オブジェクト221の積層間隔と毛の見え方の関係を説明するための説明図である。図16(a)は所定の長さの毛を3個の円形領域223bで表示する場合の見え方であり、図16(b)は所定の長さの毛を5個の円形領域223bで表示する場合の見え方である。同じ長さの毛を3個の円形領域223bで表現する場合と、5個の円形領域223bで表現する場合とでは、遠くから見た場合に見え方が異なる。具体的には、毛の輪郭内部において毛の表面と同じ色の面積が異なる。
円形領域223bの積層間隔が広い場合には、毛の輪郭内部において毛の表面と同一色の領域が少なくなる。このため、遠くから見た場合に、毛の色が薄く見える。また、円形領域223bの積層間隔が広い場合には、毛並み表面と同一色の領域が小さくなる。この結果、毛並み表面と同一色の領域の輪郭があいまいになり、遠くから見た場合に毛が細く見える。一方、円形領域223bの積層間隔が狭いと、毛の輪郭内部において毛の表面と同一色の領域が広くなる。このため、遠くから見た場合に、毛の色が濃く見える。また、円形領域223bの積層間隔が狭いと、毛並み表面と同一色の領域が大きくなる。この結果、毛並み表面と同一色の領域の輪郭がはっきりとし、遠くから見た場合に毛が太く見える。
このように、円形領域223bの積層間隔を変化させることにより、毛を薄く、細く表示したり、毛を濃く、太く表示したりすることができる。また、1本の毛について、部分的に毛色の濃淡を変化させたり、毛の太さを変化させたりすることができる。毛の根元について、毛色を濃く、太く表示するとともに、毛の先端について毛色を薄く、細く表示する場合について、図16(c)を参照しながら説明する。
図16(c)に示すように、1本の毛において、毛の根本部分を表示するための毛並み表示用オブジェクト221の積層間隔を狭くするとともに、毛の先端を表示するための毛並み表示用オブジェクト221の積層間隔は広くする。これにより、毛の根本部分は、毛色が濃くなるとともに輪郭がはっきりとし、遠くから見た場合に太く見える。一方、毛の先端部分は、毛色が薄くなるとともに輪郭があいまいとなり、遠くから見た場合に細く見える。したがって、毛並み表示用オブジェクト221の積層間隔を調整することにより、1本の毛が根元から毛先にかけて徐々に薄く、細くなっていく様子を表現することができる。
次に、毛の周囲を半透明に設定することにより、毛の先端を細く見せる表示方法について説明する。図17(a)は視点に対して最前面に存在する円形領域223bの見え方であり、図17(b)は円形領域223bの前面に半透明の板状ポリゴンが配置された場合の円形領域223bの見え方である。図17(a)の場合には、円形領域223bの色情報がそのまま表示されるため、円形領域223bの外縁がはっきり見える。一方、図17(b)では、半透明の板状ポリゴンに設定された白色の色情報と円形領域223bの色情報が、半透明の板状ポリゴンに設定されたα値の大きさにしたがってブレンドされる。そして、得られた色情報が表示される。したがって、半透明の板状ポリゴンを介して表示される円形領域223bは、円形領域223bがそのまま表示される場合と比較して薄く表示される。このように、半透明の板状ポリゴンを介することにより、円形領域223bの外縁がぼやけ、円形領域223bが大きめに見える。
図17(c)は円形領域223bの前面に半透明の板状ポリゴンが2個配置された場合の、円形領域223bの見え方である。円形領域223bから遠い位置にある(視点に対して最前面にある)板状ポリゴンを1層目の板状ポリゴンとし、円形領域223bから近い位置にある(視点に対して1層目の板状ポリゴンの背面にある)板状ポリゴンを2層目の板状ポリゴンとする。この場合、まず、2層目の板状ポリゴンに設定された白色の色情報と円形領域223bの色情報が、2層目の板状ポリゴンに設定されたα値の大きさにしたがってブレンドされる。次に、1層目の板状ポリゴンに設定された色情報とブレンドにより得られた色情報が、1層目の板ポリゴンに設定されたα値の大きさにしたがってブレンドされる。そして、2回目のブレンドにより得られた色情報が反映される。このため、半透明の板状ポリゴンを2個介することにより、半透明の板状ポリゴンを1個介する場合と比較して、円形領域223bの外縁は更にぼやけ、円形領域223bが更に大きめに見える。
このように、視点に対して円形領域223bの前面にある半透明の板状ポリゴンの数が増加するほど、円形領域223bは薄く表示され、外縁がぼやけることにより、円形領域223bが大きく見えるようになる。
図17(d)は周辺領域223aが半透明である場合の毛の見え方を説明するための説明図である。視点が毛並み表示用オブジェクト221の正面にない場合について説明する。この場合、視点に対して、第1層の円形領域223bは最前面に存在する。視点に対して、第2層の円形領域223bの前面には1個の半透明な毛並み表示用オブジェクト221が存在し、第3層の円形領域223bの前面には2個の半透明な毛並み表示用オブジェクト221が存在する。また、視点に対して、第4層の円形領域223bの前面には3個の半透明な毛並み表示用オブジェクト221が存在し、第5層の円形領域223bの前面には4個の半透明な毛並み表示用オブジェクト221が存在する。
視点に対して、円形領域223bの前面に存在する半透明な毛並み表示用オブジェクト221の数が多いほど、円形領域223bは薄く表示され、外縁がぼやけることにより、円形領域223bが大きく見えるようになる。つまり、第5層の円形領域223bが最も大きく見え、第1層に近づくにつれて円形領域223bが小さく見える。したがって、5層の円形領域223bにより表示される毛は、根本が太く、毛先が細いように見える。なお、視点が毛並み表示用オブジェクト221の正面に存在する場合には、最前面に存在する第1層の円形領域223bのみが表示され、透明領域222aが完全透明である場合も、半透明である場合も、表示内容は同じである。
次に、複数本の毛を一括して表示する方法について説明する。図18(a)はワールド座標系内に積層させて配置された毛並み表示用オブジェクト221を説明するための説明図であり、図18(b)は毛並み表示用オブジェクト221の投影データに適用されるαデータ224を説明するための説明図であり、図18(c)は毛並み表示用オブジェクト221の投影データに適用される毛並み表示用テクスチャ225を説明するための説明図であり、図18(d)は毛並み表示用オブジェクト221の投影データにαデータ224及び毛並み表示用テクスチャ225が適用された場合の毛の表示態様を説明するための説明図である。
図18(a)に示すように、複数本の毛を表示する方法では、ワールド座標系内に間隔をあけて積層するように配置された5個の毛並み表示用オブジェクト221a~221eにαデータ224が適用される。ここで、当該αデータ224において、α値が「1」より小さい値で設定される透明領域224aと、α値が「1」に設定される不透明領域224bについて、図18(b)を参照しながら説明する。図18(b)に示すように、αデータ224の透明領域224aの外縁は、当該αデータ224に対応する毛並み表示用オブジェクト221の外縁と合同の長方形である。当該長方形の外縁の内側は、透明領域224aと不透明領域224bに分かれている。不透明領域224bは円形であり、その大きさは表示対象である毛の断面と等しい。不透明領域224bは複数存在する。長方形の外縁で囲われた領域において、当該複数の不透明領域224b以外の領域が透明領域224aである。
毛並み表示用オブジェクト221の投影データには、毛並み表示用テクスチャ225が適用される。図18(c)は毛並み表示用テクスチャ225を説明するための説明図である。毛並み表示用テクスチャ225の外縁は、当該毛並み表示用テクスチャ225に対応する毛並み表示用オブジェクト221の外縁と合同の長方形である。毛並み表示用テクスチャ225には、表示対象の毛の断面と同じ大きさの円で囲われた円形領域225bが複数存在する。各円形領域225bはその周囲全体が周辺領域225aにより囲まれている。当該円形領域225bは表示対象の毛と同じ色で塗りつぶされている。長方形の外縁の内部であって、円形領域225b以外の領域は白色の周辺領域225aである。
不透明領域224bと円形領域225bの形及び大きさは等しい。また、UV座標系において、αデータ224の原点と不透明領域224bの相対的な位置関係は、毛並み表示用テクスチャ225の原点と円形領域225bの相対的な位置関係と等しい。このため、αデータ224の座標と毛並み表示用テクスチャ225の座標が重なるように合わせると、不透明領域224bと円形領域225bが重なり、透明領域224aと周辺領域225aが重なる。
図18(d)はワールド座標系内に積層させて配置された毛並み表示用オブジェクト221a~221eの投影データに毛並み表示用テクスチャ225が適用された場合の毛の表示態様を示している。毛並み表示用テクスチャ225の円形領域225bに設定されるα値は「1」である。一方、周辺領域225aに設定されるα値は「1」より小さい値である。このため、複数の円形領域225bが毛並み表示用オブジェクト221の法線方向に間隔をあけて積層された様子が表示される。周辺領域225aに設定されるα値が「0」である場合には、周辺領域225aが完全透明となる。また、周辺領域225aに設定されるα値が「0」より大きくて「1」より小さい数値である場合には、周辺領域225aが半透明となる。
次に、ワールド座標系内に積層させて配置された毛並み表示用オブジェクト221を動かして、毛の動きを表示する方法について説明する。毛並み表示演出の開始タイミングにおいて、毛並み表示用オブジェクト221はワールド座標系内に配置され、αデータ224が適用される。そして、毛並み表示用オブジェクト221の投影データに対して、毛並み表示用テクスチャ225が適用される。その後の更新タイミングにおいて、ワールド座標系内で、毛並み表示用オブジェクト221の頂点の座標が書き換えられることにより、毛並み表示用オブジェクト221は移動する。このとき、複数の毛並み表示用オブジェクト221には同一のαデータ224が適用される。また、複数の毛並み表示用オブジェクト221の投影データには同一の毛並み表示用テクスチャ225が適用される。このため、毛並みと同一色の円形領域225bが動く様子が表示される。毛並み表示用オブジェクト221を移動させることにより、当該毛並み表示用オブジェクト221の投影データに適用されている毛並み表示用テクスチャ225に含まれる全ての円形領域225bを同時に移動させることができる。ワールド座標系内に積層されている毛並み表示用オブジェクト221の移動は層毎に行うことができる。毛並み表示用オブジェクト221を層毎に移動させることにより、毛並みを構成する毛の形状が変化する様子を表現することができる。
以下、5層に積層された状態の毛並み表示用オブジェクト221の第2層と第4層を選択的に別方向に移動させる場合について、図19(a)~図19(d)を参照しながら具体的に説明する。先ず第2層及び第4層が平行移動する場合について、図19(a)及び図19(b)を参照しながら説明する。図19(a)は積層させて配置された毛並み表示用オブジェクト221a~221eの移動方向を説明するための説明図であり、図19(b)は移動後の円形領域225bにより表示される毛並みの形状を説明するための説明図である。開始タイミングにおいて5個の毛並み表示用オブジェクト221a~221eが、当該毛並み表示用オブジェクト221a~221eの法線方向に積層させて配置される。そして、更新タイミングにおいて第2層と第4層の毛並み表示用オブジェクト221b,221dが別方向へ平行移動する。これにより、図19(b)に示すように直線的に伸びている毛が波打つ様子が表示される。この場合、5層の円形領域225bによって表示されている全ての毛が同じ動きで波打つ。
毛並み表示用オブジェクト221を動かす演出が行われる場合、データテーブルを参照することにより、ワールド座標系内に配置されている毛並み表示用オブジェクト221の座標を更新するために演算式を使用するか否かが判定される。また、データテーブルを参照することにより、毛並み表示用オブジェクト221の座標を演算するための演算式の更新タイミングであるか否かも判定される。つまり、データテーブルには、更新タイミング毎に毛並み表示用オブジェクト221の座標について、今回、演算を行うか否かについての情報と、演算に用いる演算式の更新を行うか否かについての情報が記録されている。
毛並み表示用オブジェクト221を平行移動させる場合の演算はベクトルを用いて行われる。第2層の毛並み表示用オブジェクト221bを第1移動方向に第1移動距離移動させる場合に必要なベクトルを第1ベクトルとする。第2層の毛並み表示用オブジェクト221bの4個の頂点に対して、第1ベクトルの加算を行うことにより、第2層の毛並み表示用オブジェクト221bは第1移動方向に第1移動距離だけ平行移動する。
第4層の毛並み表示用オブジェクト221dを第2移動方向に第2移動距離移動させる場合に必要なベクトルを第2ベクトルとする。第4層の毛並み表示用オブジェクト221dの4個の頂点に対して、第2ベクトルの加算を行うことにより、第4層の毛並み表示用オブジェクト221dは第2移動方向に第2移動距離だけ平行移動する。
具体的には、表示CPU131がデータテーブルを参照して、毛並み表示用オブジェクト221a~221eの頂点の座標を書き換えるための更新タイミングを把握する。当該更新タイミングを迎える毎に、第2層の毛並み表示用オブジェクト221bの現状の頂点の座標に対して第1ベクトルを加算するとともに、第4層の毛並み表示用オブジェクト221dの現状の頂点の座標に対して第2ベクトルを加算する。所定の期間に亘って継続的に毛並み表示用オブジェクト221b,221dの頂点の座標を書き換えるための更新タイミングをデータテーブルに記録しておくことにより、毛並みが連続的に動く様子を表示することができる。
なお、第1移動距離と第2移動距離を同一とし、第2移動方向を第1移動方向と反対の方向とする場合には、第2層の毛並み表示用オブジェクト221bと第4層の毛並み表示用オブジェクト221dに対して、共通のベクトルを使用することができる。つまり、第2層の毛並み表示用オブジェクト221bの座標を演算する場合に、共通ベクトルを加算するとともに、第4層の毛並み表示用オブジェクト221dの座標を演算する場合に、共通ベクトルを減算することにより、第2層の毛並み表示用オブジェクト221bと第4層の毛並み表示用オブジェクト221dを反対方向に移動させることができる。2つの毛並み表示用オブジェクト221b,221dの移動に用いるベクトルを共通とすることにより、メモリモジュール133に予め記憶させるデータ量の増加を抑えることができる。
次に、第2層と第4層が回転する場合について図19(c)及び図19(d)を参照しながら説明する。図19(c)は積層させて配置された毛並み表示用オブジェクト221a~221eの回転方向を説明するための説明図であり、図19(d)は回転後の円形領域225bにより表示される毛並みの形状を説明するための説明図である。開始タイミングにおいて5個の毛並み表示用オブジェクト221a~221eが、当該毛並み表示用オブジェクト221a~221eの法線方向に積層させて配置される。そして、図19(c)に示すように、ある更新タイミングにおいて第2層及び第4層の毛並み表示用オブジェクト221b,221dが別方向へ回転する。これにより、図19(d)に示すように直線的に伸びている毛が波打つ様子が表示される。この場合、回転の中心付近に近い毛ほど回転の影響を受けず、回転の中心から遠い毛ほど、回転の影響を受ける。つまり、回転の中心に近い毛ほど小さく波打ち、回転の中心から遠い毛ほど大きく波打つ。
毛並み表示用オブジェクト221を回転させる場合の演算は行列を用いて行われる。第2層の毛並み表示用オブジェクト221bを第1回転方向に第1回転角度だけ回転させる場合に必要な行列を第1行列とする。第2層の毛並み表示用オブジェクト221bの4個の頂点に対して、第1行列の乗算を行うことにより、第2層の毛並み表示用オブジェクト221bは第1回転方向に第1回転角度だけ回転する。
第4層の毛並み表示用オブジェクト221dを第2回転方向に第2回転角度だけ回転させる場合に必要な行列を第2行列とする。第4層の毛並み表示用オブジェクト221dの4個の頂点に対して、第2行列の乗算を行うことにより、第4層の毛並み表示用オブジェクト221dは第2回転方向に第2回転角度だけ平行移動する。
具体的には、表示CPU131がデータテーブルを参照して、毛並み表示用オブジェクト221a~221eの頂点の座標を書き換えるための更新タイミングを把握する。当該更新タイミングを迎える毎に、第2層の毛並み表示用オブジェクト221bの現状の頂点の座標に対して第1行列を乗算するとともに、第4層の毛並み表示用オブジェクト221dの現状の頂点の座標に対して第2行列を乗算する。所定期間に亘って断続的に毛並み表示用オブジェクト221b,221dの頂点の座標を書き換えるための更新タイミングをデータテーブルに記憶しておくことにより、毛並みが連続的に動く様子を表示することができる。
なお、第1回転方向と第2回転方向を反対の関係とすることにより、第2層の毛並み表示用オブジェクト221bが第1回転方向に回転した後、回転しながら元に戻る様子と、第4層の毛並み表示用オブジェクト221dが第2回転方向に回転した後、回転しながら元に戻る様子を、少ないデータ量で行うことができる。これは、第2層の毛並み表示用オブジェクト221bが回転しながら元に戻る場合に第2行列を利用できるとともに、第4層の毛並み表示用オブジェクト221dが回転しながら元に戻る場合に第1行列を利用できるためである。この結果、メモリモジュール133に予め記憶させておく行列の数を減らすことができる。
次に、実写画像をテクスチャに用いて毛並みを表示する方法について説明する。実写画像を用いた毛並み表示演出では、板状ポリゴンである毛並み表示用オブジェクト221の一部を完全透明に設定する。当該毛並み表示用オブジェクト221の外形は長方形である。ワールド座標系内において、複数個の毛並み表示用オブジェクト221を、間隔をあけて法線方向に積層させる。当該毛並み表示用オブジェクト221に対してαデータ227a~227dを適用する。但し、ワールド座標系内において視点から最も遠い層については、αデータ227a~227dを適用しない。そして、全ての毛並み表示用オブジェクト221の投影データに対して実写画像のデータからなる同一の毛並み表示用テクスチャ226を適用する。これにより、凹凸のある表面が表示され、毛並みを立体的に表示することができる。
また、ワールド座標系内に積層させた5層のうち、一部の層を平行移動させたり回転させたりすることにより、表示対象の表面の凹凸パターンを変化させ、立体的な動きを表示することができる。
具体的には、絨毯を立体的に表示する方法について説明する。図20(a)は絨毯を立体的に表示するために用いる毛並み表示用テクスチャ226の模式図である。当該毛並み表示用テクスチャ226には絨毯表面の実写画像が1枚用いられる。当該実写画像は絨毯表面を真上から撮影することにより得られる2次元画像である。
次に、毛並み表示用テクスチャ226に透過情報を設定するためのαデータ227について図20(b)~(e)を参照しながら説明する。図20(b)~(e)はUV座標系内に存在するαデータ227を示している。図20(b)はパターンAのαデータ227aを示しており、図20(c)はパターンBのαデータ227bを示しており、図20(d)はパターンCのαデータ227cを示しており、図20(e)はパターンDのαデータ227dを示している。このうち、メモリモジュール133には図20(b)に示すパターンAのαデータ227aのみが予め記憶されている。パターンBのαデータ227b、パターンCのαデータ227c及びパターンDのαデータ227dは、パターンAのαデータ227aを回転させることにより生成され、毛並み表示用オブジェクト221に適用される。
先ずパターンAのαデータ227aについて図20(b)を参照しながら説明する。αデータ227の外形は正方形である。当該正方形において、向かい合う1組の辺がU軸と並行であるとともに、他の向かい合う1組の辺はV軸と並行である。ここで、説明のために、αデータ227の1辺の整数分の1の長さを有する正方形を単位格子とし、当該単位格子を正方形のαデータ227に敷き詰める。そして、U軸方向を行、V軸方向を列とする。具体的には、図20(b)~(e)に示すように、αデータ227が4行4列となるように16個の単位格子を設定する。
パターンAのαデータ227aでは、1行目と3行目の全ての単位格子内の領域が完全透明となるようにα値が設定されている。図20(c)に示すように、パターンBのαデータ227bは、パターンAのαデータ227aを90°回転させて生成される。このため、パターンBのαデータ227bでは、2列目と4列目の全ての単位格子内の領域が完全透明となるようにα値が設定されている。図20(d)に示すように、パターンCのαデータ227cは、パターンAのαデータ227aを180°回転させて生成される。このため、パターンCのαデータ227cでは、2行目と4行目の全ての単位格子内の領域が完全透明となるようにα値が設定されている。図20(e)に示すように、パターンDのαデータ227dは、パターンAのαデータ227aを270°回転させて生成される。このため、パターンDのαデータ227dでは、1列目と3列目の全ての単位格子内の領域が完全透明となるようにα値が設定されている。
次に、当該αデータ227a~227dを毛並み表示用オブジェクト221に適用する方法について説明する。毛並み表示用オブジェクト221a~221eをワールド座標系内に5個配置する。そして、視点に近い側(外側)から順に第1層、第2層の順番とし、視点から最も遠い(最も内側の)層を第5層とする。第1層にパターンAのαデータ227aを適用し、第2層にパターンBのαデータ227bを適用し、第3層にパターンCのαデータ227cを適用し、第4層にパターンDのαデータ227dを適用する。そして、第5層にはαデータ227a~227dを適用しない。
第1層では、毛並み表示用オブジェクト221に対して、パターンAのαデータ227aが1個以上過不足なく敷き詰められるように適用される。具体的には、図21(a)に示すように、パターンAのαデータ227aが毛並み表示用オブジェクト221aの短辺方向に3個ずつ並べられるとともに、長辺方向に4個ずつ並べられる。つまり、毛並み表示用オブジェクト221aに合計12個のパターンAのαデータ227aが敷き詰められるようにして適用される。このとき、12個のパターンAのαデータ227aはすべて同じ向きで配置される。そして、UV座標の頂点(0,0)がzx座標の頂点Aと重なり、UV座標の頂点(1,0)がzx座標の頂点Bと重なり、UV座標の頂点(1,1)がzx座標の頂点Cと重なり、UV座標の頂点(0,1)がzx座標の頂点Dと重なる。
パターンAのαデータ227aを12個並べることにより、毛並み表示用オブジェクト221aの表面は過不足なく覆われるように、αデータ227aの1辺の長さが予め設定されている。第1層の毛並み表示用オブジェクト221aにパターンAのαデータ227aを適用すると、図21(a)に示すように、奇数行の単位格子内の領域が完全透明となるように透過情報が設定される。
第2層では、毛並み表示用オブジェクト221bに対して、パターンBのαデータ227bが適用される。具体的には、図21(b)に示すように、パターンBのαデータ227bが毛並み表示用オブジェクト221bの短辺方向に3個ずつ並べられるとともに、長辺方向に4個ずつ並べられる。つまり、毛並み表示用オブジェクト221bに合計12個のパターンBのαデータ227bが敷き詰められるようにして適用される。このとき、12個のパターンBのαデータ227bはすべて同じ向きで配置される。そして、UV座標の頂点(0,1)がzx座標の頂点Aと重なり、UV座標の頂点(0,0)がzx座標の頂点Bと重なり、UV座標の頂点(1,0)がzx座標の頂点Cと重なり、UV座標の頂点(1,1)がzx座標の頂点Dと重なる。第2層の毛並み表示用オブジェクト221bにパターンBのαデータ227bを適用すると、図21(b)に示すように、偶数列の単位格子内の領域が完全透明となるように透過情報が設定される。
第3層では、毛並み表示用オブジェクト221cに対して、パターンCのαデータ227cが適用される。具体的には、図21(c)に示すように、パターンCのαデータ227cが毛並み表示用オブジェクト221cの短辺方向に3個ずつ並べられるとともに、長辺方向に4個ずつ並べられる。つまり、毛並み表示用オブジェクト221cに合計12個のパターンCのαデータ227cが敷き詰められるようにして適用される。このとき、12個のパターンCのαデータ227cはすべて同じ向きで配置される。そして、UV座標の頂点(1,1)がzx座標の頂点Aと重なり、UV座標の頂点(0,1)がzx座標の頂点Bと重なり、UV座標の頂点(0,0)がzx座標の頂点Cと重なり、UV座標の頂点(1,0)がzx座標の頂点Dと重なる。第3層の毛並み表示用オブジェクト221cにパターンCのαデータ227cを適用すると、図21(c)に示すように、偶数行の単位格子内の領域が完全透明となるように透過情報が設定される。
第4層では、毛並み表示用オブジェクト221dに対して、パターンDのαデータ227dが適用される。具体的には、図21(d)に示すように、パターンDのαデータ227dが毛並み表示用オブジェクト221dの短辺方向に3個ずつ並べられるとともに、長辺方向に4個ずつ並べられる。つまり、毛並み表示用オブジェクト221dに合計12個のパターンDのαデータ227dが敷き詰められるようにして適用される。このとき、12個のパターンDのαデータ227dはすべて同じ向きで配置される。そして、UV座標の頂点(1,0)がzx座標の頂点Aと重なり、UV座標の頂点(1,1)がzx座標の頂点Bと重なり、UV座標の頂点(0,1)がzx座標の頂点Cと重なり、UV座標の頂点(0,0)がzx座標の頂点Dと重なる。第4層の毛並み表示用オブジェクト221dにパターンDのαデータ227dを適用すると、図21(d)に示すように、奇数列の単位格子内の領域が完全透明となるように透過情報が設定される。
毛並み表示用オブジェクト221の投影データには毛並み表示用テクスチャ226が適用される。毛並み表示用テクスチャ226は、UV座標の頂点(0,0)が毛並み表示用オブジェクト221の頂点Aに対応し、UV座標の頂点(1,0)が毛並み表示用オブジェクト221の頂点Bに対応し、UV座標の頂点(1,1)が毛並み表示用オブジェクト221の頂点Cに対応し、UV座標の頂点(0,1)が毛並み表示用オブジェクト221の頂点Dに対応するように貼りつけられる。
毛並み表示用オブジェクト221の投影データにおいて、αデータ227a~227dの適用によりα値として「0」が設定されている領域では毛並み表示用テクスチャ226は表示されず、完全透明のままである。一方、毛並み表示用オブジェクト221の投影データにおいて、α値として「1」が設定されている領域の表面には、毛並み表示用テクスチャ226が表示される。
次に、実写画像を用いて表示される毛並みの見え方について説明する。ワールド座標系内に配置されている毛並み表示用オブジェクト221の投影データに対して毛並み表示用テクスチャ226が適用されると、第1層の偶数行、第2層の奇数列、第3層の奇数行及び第4層の偶数列に毛並みの表面画像が表示される。
図22(a)~(e)は実写画像をテクスチャに用いて毛並み表示演出を行う様子を説明するための説明図である。まず、毛並み表示用オブジェクト221にαデータ227a~227dが適用される。そして、毛並み表示用オブジェクト221の投影データに対して、毛並み表示用テクスチャ226が適用される。図22(a)は第1層の表示態様であり、図22(b)は第2層の表示態様であり、図22(c)は第3層の表示態様であり、図22(d)は第4層の表示態様であり、図22(e)は第5層の表示態様である。先ず静止状態について説明する。視点が毛並み表示用オブジェクト221の法線方向にある場合には、第1層(図22(a))、第2層(図22(b))及び第3層(図22(c))の表面に表示されている毛並みの表面画像が表示される。そして、第4層(図22(d))より下の層(図22(e))の表面に表示されている毛並みの表面画像は、第1層、第2層及び第3層の下に隠れるため、表示されない。
視点が毛並み表示用オブジェクト221の法線方向にない場合には、積層されている毛並み表示用オブジェクト221を斜めから表示することとなるため、第1層、第2層、第3層及び第4層の表面に表示されている毛並みの表面画像が表示される。そして、第5層の表面に表示されている毛並みの表面画像は、第1層、第2層、第3層及び第4層の下に隠れるため、表示されない。いずれの場合も、視点からの距離が異なる複数層の表面に表示されている毛並みの表面画像が表示されるため、少ないデータ量で奥行きのある立体的な毛並みを表示することができる。
次に、毛並み表示用オブジェクト221の平行移動又は回転を伴う動作状態について説明する。視点が毛並み表示用オブジェクト221の正面にある場合において、第1層がz軸方向に移動すると、それまで隠れていた第4層の一部が表示される。第1層のz軸方向の移動とともに、第4層のx軸方向の移動が行われると、それまで隠れていた第5層が表示される場合がある。また、視点が毛並み表示用オブジェクト221の正面にない場合においては、第4層が移動することにより、それまで隠れていた第5層が表示される場合がある。
ここで、第5層にはαデータ227が適用されないため、α値として「1」が設定されている。したがって、第5層より上の4個の層がどのように動いても、必ず毛並みの表面画像が表示される構成となっている。また、第1層と第3層が完全に重なって表示される可能性があるとともに、第2層と第4層が完全に重なって表示される可能性がある。しかし、第1層と第2層が完全に重なって表示される可能性はない。したがって、第1層と第3層が完全に重なって表示されると同時に第2層と第4層が完全に重なって表示された場合においても、第1層、第2層及び第5層が表示される。このように、第5層より上の4個の層がどのように動いても、最低3個の層が表示される構成である。常に視点からの距離が異なる複数層の表面に表示されている毛並みの表面画像が表示されるため、奥行きのある立体的な毛並みの動きが表示される。
以下、毛並み表示用オブジェクト221を用いて毛並み表示演出を実行するための具体的な処理構成を説明する。図23は表示CPU131にて実行される毛並み表示演出用の演算処理を示すフローチャートである。毛並み表示演出用の演算処理は、毛並み表示演出が実行される遊技回に対応したデータテーブルが設定されている場合に起動される。なお、毛並み表示用オブジェクト221、毛並み表示用テクスチャ223,225,226、及び毛並み表示用オブジェクト221の更新座標データを算出するための演算式はメモリモジュール133に予め記憶されている。
先ずステップS801では、現状設定されているデータテーブルに基づいて、毛並み表示用演出の実行中であるか否かを判定する。毛並み表示用演出の実行中ではない場合には、ステップS802にて、毛並み表示演出の開始タイミングであるか否かについて判定する。開始タイミングではない場合にはそのまま本演算処理を終了し、開始タイミングである場合にはステップS803に進む。
ステップS803では、現状設定されているデータテーブルに基づいて、毛並み表示用オブジェクト221を制御対象として把握する。ちなみに、ステップS803の処理の実行タイミングでは、直前の制御開始用の設定処理(ステップS601)にて、毛並み表示用オブジェクト221に対して制御開始用の処理が完了している。また、制御が開始された毛並み表示用オブジェクト221の制御用の情報は、毛並み表示用演出が完了するまではワークRAM132に記憶保持される。
続くステップS804では、現状設定されているデータテーブルに基づいて、毛並み表示用オブジェクト221をワールド座標系内に積層させて配置するための初期座標データを読み出す。毛並み表示用オブジェクト221の座標が決まることで、毛並み表示用オブジェクト221の積層間隔も決まる。つまり、毛並み表示用オブジェクト221の積層間隔は現状設定されているデータテーブルに基づいて選択される初期座標で決まる。具体的には、初期状態において、5個の毛並み表示用オブジェクト221a~221eは、毛の根元に相当する部分の積層間隔が小さく、毛先に相当する部分の間隔が大きくなるように積層される。積層間隔は、積層間隔の変更タイミングにおいて変更される。ステップS805では、当該初期座標データを最新の座標データとしてワークRAM132に記憶する。そして、ステップS806ではワールド座標系内に積層させて配置する毛並み表示用オブジェクト221を動かすために必要な最初の演算式をメモリモジュール133から読み出し、ワークRAM132に記憶する。毛並み表示用オブジェクト221を平行移動させる場合には、当該演算式は最新の座標に加算するためのベクトルを含み、毛並み表示用オブジェクト221を回転させる場合には、当該演算式は最新の座標に乗算するための行列を含む。その後、ステップS807にてαデータ及びテクスチャの把握処理を行う。
ここで、αデータ及びテクスチャの把握処理について図24を参照しながら説明する。図24はαデータ及びテクスチャの把握処理を示すフローチャートである。先ずステップS901では、今回のデータテーブルに基づいて、毛並みの表示を断面画像の積層により行うか否かについて判定する。毛並み表示を断面画像の積層により行う場合(ステップS901:YES)には、ステップS902に進む。ステップS902では、今回のデータテーブルに基づき、毛並み表示用テクスチャ225を特定し、当該毛並み表示用テクスチャ225の使用指示情報を記憶する。
ステップS903では、今回のデータテーブルに基づいて錯視効果の適用を行うか否かについて判定する。ここで、錯視効果を適用する場合とは、毛の断面画像の周囲を半透明にすることにより、毛の根元を太く表示するとともに、毛先を細く表示する場合である。錯視効果を適用しない場合(ステップS903:NO)には、ステップS904にて、毛の周囲が完全透明となるαデータ224を特定して、当該αデータ224の使用指示情報を記憶し、そのまま本把握処理を終了する。錯視効果を適用する場合(ステップS903:YES)には、ステップS905にて、毛の周囲が半透明となるαデータ224を特定して、当該αデータ224の使用指示情報を記憶し、そのまま本把握処理を終了する。
実写画像をテクスチャとして用いる場合(ステップS901:NO)には、ステップS906にて、実写画像用の毛並み表示用テクスチャ226を特定して、当該毛並み表示用テクスチャ226の使用指示情報を記憶する。その後、ステップS907にて、実写画像用のαデータ227aを特定して、当該αデータ227aの使用指示情報を記憶し、そのまま本把握処理を終了する。
毛並み表示演出用の演算処理(図23)の説明に戻る。ステップS807にてαデータ及びテクスチャの把握処理を行った後、ステップS808にて毛並み表示演出の開始指定情報を記憶して本演算処理を終了する。
上記のように毛並み表示演出用の演算処理が実行された場合、その後の描画リスト出力処理にて作成される描画リストには、毛並み表示用オブジェクト221の使用指示の情報がαデータ224,227a及び毛並み表示用テクスチャ223,225,226の使用指示の情報とともに設定され、さらに上記ステップS804にて読み出した毛並み表示用オブジェクト221の初期座標データが設定される。また、毛並み表示の開始指定情報が描画リストに設定される。
ステップS801にて毛並み表示演出中であると判定した場合には、ステップS809にて、現状設定されているデータテーブルに基づいて、毛並み表示用オブジェクト221の積層間隔の変更タイミングであるか否かについて判定する。毛並み表示用オブジェクト221の積層間隔の変更タイミングである場合(ステップS809:YES)には、ステップS810にて積層間隔の更新処理を実行する。当該積層間隔の更新処理では、現状設定されているデータテーブルに基づいて、ワールド座標系内に配置されている毛並み表示用オブジェクト221a~221eの座標を更新する。当該座標の更新は、毛並み表示用オブジェクト221a~221eを毛並み表示用オブジェクト221a~221eの法線方向に沿って平行移動することにより行われる。これにより、毛並み表示用オブジェクト221a~221eの積層間隔が変化し、表示される毛の長さ、太さ、及び濃さが変化する。つまり、演出の途中で毛の表示態様を変えることができる。具体的には、積層間隔が短くなった場合に、表示される毛の長さが短くなり、毛が太く、濃く表示されるようになる。また、積層間隔が長くなった場合に、表示される毛の長さが長くなり、毛が細く、薄く表示されるようになる。
毛並み表示用オブジェクト221a~221eの積層間隔の変更タイミングでない場合(ステップS809:NO)又はステップS810にて積層間隔の更新処理を実行した後、ステップS811にて、現状設定されているデータテーブルに基づいて、演算式の更新タイミングであるか否かについて判定する。かかる更新タイミングは、毛並み表示用オブジェクト221の動作態様が変化するタイミングに相当する。具体的には、平行移動の速度や向きが変化するタイミングに相当する。また、回転の速度や方向が変化するタイミングに相当する。演算式の更新タイミングである場合(ステップS811:YES)には、ステップS812にて新たな演算式をメモリモジュール133から読出し、ワークRAM132に記憶する。
演算式の更新タイミングでない場合(ステップS811:NO)又はステップS812にて新たな演算式を読み出した場合には、ステップS813にて、現状設定されているデータテーブルに基づいて、毛並み表示用オブジェクト221を制御対象として把握する。続くステップS814では、ワークRAM132に記憶されている最新の座標データを読み出し、ステップS815にて毛並み表示用オブジェクト221の新しい座標データを算出するために、座標データの演算処理を実行する。当該座標データの演算処理では、ステップS814にて読み出された座標データが演算式に代入されて次の座標データが算出される。詳細には、ワールド座標系内に積層配置されている5個の毛並み表示用オブジェクト221a~221eのそれぞれについて、4個の頂点の座標が算出される。そして、ステップS816では、ワークRAM132に記憶されている毛並み表示用オブジェクト221の座標データを更新する。つまり、ステップS815にて算出された座標データを最新の座標データとして記憶する。
ステップS817では、αデータ及びテクスチャの把握処理(図24)を実行し、ステップS818では毛並み表示演出の更新指定情報を記憶して、本演算処理を終了する。
上記のように毛並み表示演出用の演算処理が実行された場合、その後の描画リスト出力処理にて作成される描画リストには、毛並み表示用オブジェクト221の使用指示の情報がαデータ224,227a及び毛並み表示用テクスチャ223,225,226の使用指示の情報とともに設定され、更に上記ステップS815にて算出した5個の毛並み表示用オブジェクト221a~221eのそれぞれの4個の頂点の座標に関する更新座標データが設定される。また、毛並み表示の更新指定情報も描画リストに設定される。
次に、VDP135にて実行される毛並み表示用オブジェクト221の設定処理について、図25を参照しながら説明する。毛並み表示用オブジェクトの設定処理は、描画処理(図13)のステップS703における演出用の設定処理にて実行される。また、毛並み表示用オブジェクトの設定処理は、描画リストに毛並み表示演出の開始指定情報又は毛並み表示演出の更新指定情報が設定されている場合に起動される。
先ずステップS1001では、変数nの値が5であるか否かについて判定する。ここで、変数nは毛並み表示のためにワールド座標系内に積層されている毛並み表示用オブジェクト221の数を表している。変数nは0乃至5のいずれか1の整数である。したがって、ステップS1001では、ワールド座標系内に毛並み表示用オブジェクト221が第1層から第5層まで配置されている状態であるか否かについて判定する。ステップS1001にて変数nの値が5でなかった場合には、ステップS1002に進む。
ステップS1002では、今回の描画リストに基づいて、メモリモジュール133において毛並み表示用オブジェクト221が記憶されているアドレスを把握し、当該毛並み表示用オブジェクト221を読み出す。毛並み表示用オブジェクト221の読出しは、ステップS1001において変数nの値が0乃至4のいずれか1の整数であった場合に行われ、nの値がいずれであっても、読み出される毛並み表示用オブジェクト221は同一である。
ステップS1003では、変数nに1を加算する処理を行い、続くステップS1004では第n層の設定処理を行う。第n層の設定処理では、今回の描画リストを参照して第n層に配置される毛並み表示用オブジェクト221の4個の頂点の座標を把握し、当該4個の頂点の座標をステップS1002にて読み出した毛並み表示用オブジェクトの4個の頂点にそれぞれ適用する。これにより、ステップS1002にて読み出した毛並み表示用オブジェクト221がワールド座標系内に第n層として配置される。
ステップS1004を行った後、再びステップS1001に戻り、変数nの値が5であるか否かについて判定する。そして、変数nの値が5である場合(ステップS1001:YES)には、ステップS1005にて変数nの値を0クリアして本設定処理を終了する。このように、同一の毛並み表示用オブジェクト221を5回読出し、ワールド座標系内において、第1層から第5層に相当する位置に配置する。これにより、同一の毛並み表示用オブジェクト221がワールド座標系内に積層させて配置される。各層のオブジェクトとして同一の毛並み表示用オブジェクト221を使用することにより、各層毎に異なるオブジェクトを用いる場合と比較して、メモリモジュール133に記憶するデータ量を減らすことができる。
次に毛並み表示用オブジェクト221の透過処理について、図26を参照しながら説明する。毛並み表示用オブジェクト221の透過処理は、描画処理(図13)のステップS710における演出及び図柄用の描画データ作成処理にて実行される。また、毛並み表示用オブジェクト221の設定処理は、描画リストに毛並み表示演出の開始指定情報又は毛並み表示演出の更新指定情報が設定されている場合に起動される。
先ずステップS1101では、今回の描画リストに基づいて、毛並みの表示を断面画像の積層により行うか否かについて判定する。当該判定は毛並み表示用テクスチャ223,225,226として、毛の断面画像が描画リストに設定されているか否かにより判定される。毛並みの表示を断面画像の積層により行う場合(ステップS1101:YES)には、ステップS1102に進む。ステップS1102では、今回の描画リストに設定されているαデータ224を把握する。続くステップS1103では、毛並み表示用オブジェクト221にステップS1102にて把握したαデータ224を適用する。
毛並みの表示を実写画像の積層により行う場合(ステップS1101:NO)には、ステップS1104にて、今回の描画リストに設定されているαデータ227aを把握する。その後、ステップS1105では第1層の毛並み表示用オブジェクト221aに対してαデータ227aを回転せずに並べて適用する。ステップS1106では、第2層の毛並み表示用オブジェクト221bに対してαデータ227aを90°回転させた状態で並べて適用する。ステップS1107では、第3層の毛並み表示用オブジェクト221cに対してαデータ227aを180°回転させた状態で並べて適用する。そして、ステップS1108では、第4層の毛並み表示用オブジェクト221dに対してαデータ227aを270°回転させた状態で並べて適用する。このように、第1層から第4層までの毛並み表示用オブジェクト221a~221dに対して、異なる角度で回転させたαデータ227aを適用することにより、2次元の実写画像を立体的に表示することができる。
ステップS1103又はステップS1108でαデータ224,227dを適用した後、ステップS1109にて、毛並み表示用オブジェクト221a~221eをスクリーン領域PC12に投影して、投影データを作成する。そして、ステップS1110にて今回の描画リストに設定されている毛並み表示用テクスチャ223,225,226を把握し、ステップS1111にて毛並み表示用オブジェクト221a~221eの投影データに対して、毛並み表示用テクスチャ223,225,226を適用して、本透過処理を終了する。これにより、毛並み表示用オブジェクト221a~221eに対して、毛並み表示用テクスチャ223,225,226の色情報とαデータ224,227a~227dの透過情報が設定される。
以上のとおり、頂点の座標を指定することにより、ワールド座標系内に複数の毛並み表示用オブジェクト221a~221eを積層させて配置し、当該座標を更新することにより、毛並み表示用オブジェクト221a~221eを動かすことができる。これにより、毛並み表示用オブジェクト221a~221eの頂点の座標を更新することで動きのある立体的な毛を表示することができる。間隔をあけて毛並み表示用オブジェクト221a~221eを配置し、頂点の座標を指定して毛並み表示用オブジェクト221a~221eを動かすため、節のある立体的なポリゴンを用いて動きのある毛を表示する場合と比較して、予め記憶するデータ量及びリアルタイムで行う演算の量を抑制することができる。
毛並み表示用オブジェクト221として2次元情報であり、厚みのない板状ポリゴンを用いることにより、3次元情報である立体的なポリゴンを用いる場合と比較して、少ないデータ量で立体的な毛並みを表示することができる。
ワールド座標系内に配置する複数の毛並み表示用オブジェクト221を同一のものとすることにより、ワールド座標系内に異なる複数の毛並み表示用オブジェクト221を配置する場合と比較して、メモリモジュール133に予め記憶するデータ量を減らすことができる。
1つの毛並み表示用オブジェクト221の投影データに対して表示対象の毛と同一色の模様が複数存在する毛並み表示用テクスチャ225を適用し、ワールド座標系内で毛並み表示用オブジェクト221を動かすことにより、複数の模様を一括して動かすことができる。ワールド座標系内に間隔をあけて配置する1組の毛並み表示用オブジェクト221a~221eにより、複数本の毛を表示することができるため、1組の毛並み表示用オブジェクト221a~221eを用いて1本の毛を表示する場合と比較して、処理負荷を低減することができる。また、1つの毛並み表示用オブジェクト221を動かすことにより、複数本の毛に動きを与えることができるため、1本1本の毛の動きを個別に制御する場合と比較して、リアルタイムで行う演算の量を減らすことができる。
毛並み表示演出の更新タイミングにおいて、ワールド座標系内に積層させて配置されている複数の毛並み表示用オブジェクト221a~221eの座標を更新することにより、毛並み表示用オブジェクト221a~221eを移動させたり、回転させたりして動きのある毛並みを表示することができる。この際、毛並み表示用オブジェクト221a~221eの移動量及び移動方向が変化しない場合又は回転量及び回転方向が変化しない場合に、複数の更新タイミングに亘って同一の演算式を使用して毛並み表示用オブジェクト221a~221eの座標を更新する。これにより、メモリモジュール133に記憶する演算式の数を減らすことができる。
毛並み表示演出の更新タイミングにおいて、ワールド座標系内に配置されている複数の毛並み表示用オブジェクト221a~221eの積層間隔を変更する積層間隔変更処理を行うことにより、毛並み表示演出の途中においても毛の表示態様を変化させることができる。具体的には、積層間隔を小さくすることにより、毛を太く、濃く表示することが可能となる。また、積層間隔を大きくすることにより、毛を細く、薄く表示することが可能となる。太くて濃い毛及び細くて薄い毛を表示するためのαデータ222,224及び毛並み表示用テクスチャ223,225を予めメモリモジュール133に記憶させておく場合と比較して、予めメモリモジュール133に記憶するデータ量を低減しながら、様々な種類の毛を表示することができる。
毛並み表示用オブジェクト221に適用するαデータ222,224の透明領域222a,224aを完全透明ではなく、半透明とすることにより、毛の周囲をぼやけさせ、毛先を細く見せる演出を行うことができる。毛並み表示用テクスチャ223,225における表示対象の毛と同一色の模様の大きさを毛の根元と先端で異なるものとする場合と異なり、単一の毛並み表示用テクスチャ223,225のみを用いることから、メモリモジュール133に予め記憶するデータ量を低減することができる。
ワールド座標系内に複数の毛並み表示用オブジェクト221a~221eを、間隔をあけて積層させて配置する。各層の毛並み表示用オブジェクト221a~221eに対して、互いに異なる複数種類のαデータ227a~227dを適用する。ここで、αデータ227a~227dは完全透明な領域と不透明な領域から成る。そして、当該毛並み表示用オブジェクト221a~221eの投影データに対して、単一の2次元画像データを毛並み表示用テクスチャ226として適用する。これにより、視点からの距離が異なる複数層に亘って2次元画像データが表示され、2次元画像データが立体的に表示される。多数の3次元オブジェクトを並べて動かす場合と比較して、予めメモリモジュール133に記憶するデータ量を低減することができるとともに、リアルタイムで行う演算の量を減らすことができる。
複数のαデータ227a~227dのうち、メモリモジュール133に記憶させるαデータ227a~227dは1種類であり、残りのαデータ227b~227dは、メモリモジュール133に記憶させるαデータ227aを回転させて生成する。これにより、メモリモジュール133に記憶するαデータ227a~227dの数を減らすことができる。
<毛を立体的に表示する方法の別形態>
2次元情報である板状ポリゴンを毛並み表示用オブジェクト221として用いることにより、毛を立体的に表示する方法について上述した。当該方法では、板状ポリゴンである毛並み表示用オブジェクト221に対してαデータ222,224を適用した。そして、毛並み表示用オブジェクト221の投影データに対して毛並み表示用テクスチャ223,225を適用した。しかし、毛を立体的に表示するためのオブジェクトは板状ポリゴンに限られない。毛を立体的に表示するためのオブジェクトとして、3次元情報である立体ポリゴンを用いてもよい。
具体的には、ワールド座標系内に球形のオブジェクトを複数配置し、当該球形オブジェクトの投影データに対して表示対象の毛と同一色のテクスチャを適用することにより、毛を立体的に表示することができる。これにより、αデータを適用する処理を省いて毛を立体的に表示することができる。また、球形のオブジェクトに予め表示対象の毛と同一色の色情報を設定しておくことにより、当該オブジェクトをワールド座標系内に配置するだけで立体的な毛を表示することが可能となる。
<毛並み表示用オブジェクトにα値を設定する方法の別形態>
毛並み表示用オブジェクト221に対してαデータ222,224を適用することにより、毛並み表示用オブジェクト221にα値を設定する方法について上述した。しかし、毛並み表示用オブジェクト221にα値を設定する方法はこれに限られない。毛並み表示用オブジェクト221に予めα値が設定されている構成としてもよい。これにより、毛並み表示用オブジェクト221に対してαデータ222,224を適用する処理を省くことができる。
<複数の毛を立体的に表示して動かす方法の別形態>
ワールド座標系内に積層させて配置される毛並み表示用オブジェクト221a~221eと、当該毛並み表示用オブジェクト221a~221eに対して適用されるαデータ222,224と、毛並み表示用オブジェクト221a~221eの投影データに対して適用される毛並み表示用テクスチャ223,225を用いることにより、複数の毛を立体的に表示する方法について上述した。当該方法では、毛並み表示用オブジェクト221a~221eを動かすことにより、表示される複数の毛を全て同じ態様で動かすことができる。しかし、複数の毛を立体的に表示して動かす方法はこれに限られない。
例えば、ワールド座標系内に積層させて配置される毛並み表示用オブジェクト221a~221eと、当該毛並み表示用オブジェクト221a~221eに対して適用されるαデータ222,224と、毛並み表示用オブジェクト221a~221eの投影データに対して適用される毛並み表示用テクスチャ223,225を1つのユニットとし、当該ユニットをワールド座標系内に複数配置する構成としてもよい。この場合、各ユニットの毛並み表示用オブジェクト221a~221eを異なる方向に動かすことが可能である。このため、ユニット毎に毛の動き方が異なる態様で、複数の毛を立体的に表示して動かすことができる。
<種々の形状の毛を表示する方法の別形態>
毛の周囲を半透明に設定することにより、毛の先端を細く見せる表示方法について上述した。当該方法では、ワールド座標系内に積層させて配置された複数の毛並み表示用オブジェクト221a~221eの投影データに対して、同一の毛並み表示用テクスチャ223を適用した。しかし、この方法に代えて、ワールド座標系内に積層させて配置された複数の毛並み表示用オブジェクト221a~221eの投影データに対して異なるテクスチャを適用する構成としてもよい。この方法では、毛の周囲を半透明にすることなく、毛先の細い毛を表示することができる。また、毛先の太い毛など、種々の形状の毛を表示することができる。
具体的には、ワールド座標系内に積層させて配置された複数の毛並み表示用オブジェクト221a~221eの投影データに対して、毛の根元に相当する層に大きな円形領域223bを有するテクスチャを適用するとともに、毛の先端に相当する層に小さな円形領域223bを有するテクスチャを適用することにより、毛の周囲が完全透明な状態で、毛先の細い毛を表示することができる。同様に、毛の根本に相当する層に小さな円形領域223bを有するテクスチャを適用するとともに、毛の先端に相当する層に大きな円形領域223bを有するテクスチャを適用することにより、毛先が太い毛を表示することができる。毛の周囲を半透明に設定する場合と比較して、表示可能な毛の種類を増やすことができる。
<実写画像を立体的に表示するためのαデータの別形態>
パターンAのαデータ227aのみをメモリモジュール133に記憶させておき、パターンB~パターンDのαデータ227b~227dをパターンAのαデータ227aから生成する方法について上述した。しかし、この方法に代えて、ワールド座標系内に積層させて配置された複数の毛並み表示用オブジェクト221a~221eの投影データに対して異なるαデータを適用する構成としてもよい。この方法では、各層の透明な領域と不透明な領域の割合を変化させることができる。
具体的には、ワールド座標系内に積層させて配置された複数の毛並み表示用オブジェクト221a~221eの投影データに対して、視点に近い側の投影データに対して、透明な領域が多く、不透明な領域が少ないαデータを適用するとともに、視点から遠い側の投影データに対して、透明な領域が少なく、不透明な領域が多いαデータを適用する。これにより、各層に対して透明な領域と不透明な領域の割合が同一のαデータ227a~227dを適用する場合と比較して、各層の表示される部分の面積を均一化することができる。視点からの距離が異なる複数の層がまんべんなく表示されることにより、実写画像をより立体的に表示することができる。
<毛並み表示用オブジェクトを動かす方法の別形態>
毛並み表示用オブジェクト221を平行移動する方法及び回転させる方法について上述した。しかし、毛並み表示用オブジェクト221の動きは平行移動及び回転に限定されない。例えば、毛並み表示用オブジェクト221が回転すると同時に平行移動する構成としてもよい。毛並み表示用オブジェクト221の4つの頂点の座標に対して、回転のために行列の乗算を行った後、平行移動のためにベクトルの加算を行うことにより、毛並み表示用オブジェクト221をワールド座標系内において回転させながら平行移動させることができる。これにより、より複雑な動きをする毛並みを表示することができる。
また、毛並み表示用オブジェクト221が、当該毛並み表示用オブジェクト221が属する平面の外にはみ出すような回転をする構成としてもよい。回転により、当該毛並み表示用オブジェクト221の1つ上の層及び1つ下の層の毛並み表示用オブジェクト221との距離が変化するため、毛の見え方が部分的に変化する。これにより、より複雑な動きをする毛並みを表示することができる。
<オブジェクトを積層させて動かすことにより行われる演出の別形態>
ワールド座標系内に積層させて配置した複数の毛並み表示用オブジェクト221a~221eを動かすとともに、毛並み表示用オブジェクト221a~221eの投影データに表示対象の毛の表面と同一色の模様からなる毛並み表示用テクスチャ223を適用することにより、動きのある毛並みを表示する演出について上述した。節のある立体的なポリゴンを用いて動きのある毛を表示する場合と比較して、予め記憶するデータ量及びリアルタイムで行う演算の量を抑制することができる。
しかし、ワールド座標系内に配置した複数のオブジェクトを動かすことにより行われる演出はこれに限らない。例えば、上空から見た林の葉が揺れる演出を行うことができる。葉を小刻みに動かすことにより吹いている風が弱いことを表し、遊技者に大当たりの期待度が低いことを報知するとともに、葉を大きく動かすことにより吹いている風が強いことを表し、遊技者に大当たりの期待度が高いことを報知することができる。
具体的には、ワールド座標系内において、地面を表すオブジェクトの上方に複数の板状オブジェクトを積層させて配置する。そして、当該オブジェクトの投影データに対して無数の葉の画像が散りばめられたテクスチャを適用する。
大当たりの期待度が低い演出が実行される場合には、板状オブジェクトの座標があまり変化しないアニメーションデータが読み出される。これにより、上空から見た林の葉が小刻みに動く演出が行われる。一方、大当たりの期待度が高い演出が実行される場合には、板状オブジェクトの座標が大きく変化するアニメーションデータが読み出される。これにより、上空から見た林の葉が大きく動く演出が行われる。板状オブジェクトを動かすことにより、無数の葉の動きを一括して表示することができるため、1枚1枚の葉の動きを制御する場合と比較して、リアルタイムの演算量を抑制しながら、立体的な演出を実行することができる。
<光影表示演出を行うための構成>
光影表示演出とは、光に照らされている領域を周囲よりも明るく表示したり、人や物などの影となっている領域を周囲よりも暗く表示したりする演出である。具体的には、床や壁などにおいて、周囲よりも明るい領域である明領域、又は周囲よりも暗い領域である暗領域を、床や壁などを構成するポリゴンの頂点カラーを設定することにより表示する演出である。このように、頂点カラーを設定して明領域の表示を行うことにより、明領域用のテクスチャを用いる場合と比較して、データ容量の増加を抑えることができる。同様に、頂点カラーを設定して暗領域の表示を行うことにより、暗領域用のテクスチャを用いる場合と比較して、データ容量の増加を抑えることができる。
先ず4つの頂点を有する板状ポリゴンに頂点カラーを指定する場合について説明する。ここで、4つの頂点を有する板状ポリゴンを単位ポリゴン241とする。図27(a)は単位ポリゴン241の1つの頂点に黒色の頂点カラーを設定するとともに、残りの3つの頂点に白色の頂点カラーを設定した場合の表示態様である。単位ポリゴン241の頂点に頂点カラーを設定することにより、頂点周辺の色情報を設定することができる。図27(a)のように、単位ポリゴン241の左上の頂点に黒色の頂点カラーを設定するとともに、残りの3つの頂点に白色の頂点カラーを設定することにより、単位ポリゴン241の投影データの左上領域を黒く表示することができる。
図27(b)は単位ポリゴン241の全ての頂点に黒色の頂点カラーを設定した場合の表示態様である。単位ポリゴン241の全ての頂点に黒色の頂点カラーを設定することにより、単位ポリゴン241の投影データの全面を黒色で塗りつぶすことができる。
次に、3行3列となるように合計9個の単位ポリゴン241を並べた場合について説明する。中央(2行目の2列目)に位置する単位ポリゴン241を中心ポリゴン242とする。図27(c)は中心ポリゴン242の1つの頂点に黒色の頂点カラーを設定するとともに、残りの全ての頂点に白色の頂点カラーを設定した場合の表示態様である。中心ポリゴン242の左上の頂点に黒色の頂点カラーを設定すると、投影データにおいて、当該頂点近傍を黒く表示することができる。
図27(d)は中心ポリゴン242の4つの頂点に黒色の頂点カラーを設定するとともに、残りの全ての頂点に白色の頂点カラーを設定した場合の表示態様である。中心ポリゴン242の4つの頂点に黒色の頂点カラーを設定することにより、投影データにおいて、中心ポリゴン242を黒色で塗りつぶすことができる。また、この場合、投影データにおいて、中心ポリゴン242の内側領域及び中心ポリゴン242の外側近傍が黒く表示される。
ここで、図27(d)において、左上(1行目の1列目)の単位ポリゴン241の左上の頂点を頂点Aとするとともに、右上(1行目の3列目)の単位ポリゴン241の右上の頂点を頂点Bとする。また、右下(3行目の3列目)の単位ポリゴン241の右下の頂点を頂点Cとするとともに、左下(3行目の1列目)の単位ポリゴン241の左下の頂点を頂点Dとする。そして、4つの頂点A~Dで指定される領域(四角形ABCD)の投影データに対して芝生の画像データである芝生テクスチャ251(図28(a))を適用する。
図28(a)はUV座標系内に存在する芝生テクスチャ251である。当該芝生テクスチャ251は頂点(0,0)が頂点Aと重なり、頂点(1,0)が頂点Bと重なり、頂点(1,1)が頂点Cと重なり、頂点(0,1)が頂点Dと重なるようにして四角形ABCDの投影データに適用される。四角形ABCDの内部に頂点カラーが設定されている状態で、四角形ABCDの投影データに芝生テクスチャ251が適用される場合、四角形ABCDを構成する各ピクセルにおいて、色情報が2重に指定される。この場合に、乗算による色情報のブレンドが行われる。
色情報の乗算によるブレンドを行う場合には、表示する個々の色を赤色(R)、緑色(G)及び青色(B)という3個の要素に分解し、それぞれの要素の明度を「0」と「1」の間の数値で表す。ここで、各要素について、「0」が最小の明度であり、「1」が最大の明度である。つまり、各要素について、数値が小さいほど明度が低く、数値が大きいほど明度が高い。具体的には、R値が小さいほど赤色の明度が低く、R値が大きいほど赤色の明度が高い。また、G値が小さいほど緑色の明度が低く、G値が大きいほど緑色の明度が高い。そして、B値が小さいほど青色の明度が低く、B値が大きいほど青色の明度が高い。
各ピクセルには、頂点カラーによって指定された色情報及び芝生テクスチャ251によって指定された色情報がある。当該2つの色情報のそれぞれにおいて、R値が「0」と「1」の間の数値で表され、G値が「0」と「1」の間の数値で表され、B値が「0」と「1」の間の数値で表される。そして、頂点カラーによって指定されたR値と芝生テクスチャ251によって指定されたR値の積が実際に表示されるR値となる。同様に、頂点カラーによって指定されたG値と芝生テクスチャ251によって指定されたG値の積が実際に表示されるG値となるとともに、頂点カラーによって指定されたB値と芝生テクスチャ251によって指定されたB値の積が実際に表示されるB値となる。
頂点カラーで設定される値が「1」である場合には、芝生テクスチャ251で設定される値がそのまま実際に表示される値となる。また、頂点カラーで設定される値が「1」未満である場合には、芝生テクスチャ251で設定される値よりも小さい値が実際に表示される値となる。具体的には、あるピクセルについて、頂点カラーにより指定される(R値,G値,B値)が(0.5,1.0,0.2)であり、芝生テクスチャ251により指定される(R値,G値,B値)が(0.8,0.3,0.5)である場合には、各値の積である(0.4,0.3,0.1)が表示される(R値,G値,B値)となる。したがって、芝生テクスチャ251の色情報と頂点カラーの色情報を乗算によりブレンドする場合、頂点カラーの色情報が「1」である場合を除いて、芝生テクスチャ251をそのまま表示する場合よりも各要素の明度が低くなる。つまり、芝生テクスチャ251が暗く表示される。
図27(d)の四角形ABCDにおいて、中心ポリゴン242の4つの頂点に暗い頂点カラーを設定するとともに、残りの頂点に明るい頂点カラーを設定する。具体的には、暗い頂点カラーとして、(0.2,0.2,0.2)を設定するとともに、明るい頂点カラーとして、(1.0,1.0,1.0)を設定する。そして、四角形ABCDの投影データに対して、芝生テクスチャ251を適用する。これにより、図28(b)に示すように、四角形ABCDにおいて中心ポリゴン242の内側領域及び外側近傍は芝生テクスチャ251により設定される色情報よりも暗い色情報が設定される。一方、中心ポリゴン242の周辺領域(中心ポリゴン242に含まれない頂点により頂点カラーが設定される領域)は芝生テクスチャ251により設定される色情報と同じ色情報が設定される。これにより、芝生の中心に、周囲よりも暗い暗領域が表示される。このように、頂点カラーを設定することにより、影361としての暗領域を設定することができる。芝生用のテクスチャと影部分のテクスチャを使用する場合と比較して、データ容量を削減することが可能である。
図28(c)はUV座標系内に存在する日陰用芝生テクスチャ252である。当該日陰用芝生テクスチャ252は、図28(a)に示す芝生テクスチャ251の各ピクセルの色情報を暗く設定することにより作られる。日陰用芝生テクスチャ252は、頂点(0,0)が頂点Aと重なり、頂点(1,0)が頂点Bと重なり、頂点(1,1)が頂点Cと重なり、頂点(0,1)が頂点Dと重なるようにして四角形ABCDの投影データに適用される。四角形ABCDの内部に頂点カラーが設定されている状態で、四角形ABCDの投影データに日陰用芝生テクスチャ252が適用される場合、四角形ABCDを構成する各ピクセルにおいて、色情報が2重に指定される。この場合に、加算による色情報のブレンドが行われる。
色情報の加算によるブレンドについて説明する。色情報の加算によるブレンドを行う場合にも、表示する個々の色を赤色(R)、緑色(G)及び青色(B)という3個の要素に分解し、それぞれの要素の明度を「0」と「1」の間の数値で表す。
各ピクセルには、頂点カラーによって指定される色情報及び日陰用芝生テクスチャ252によって指定される色情報がある。当該2つの色情報のそれぞれにおいて、R値が「0」と「1」の間の数値で表され、G値が「0」と「1」の間の数値で表され、B値が「0」と「1」の間の数値で表される。そして、頂点カラーによって指定されたR値と日陰用芝生テクスチャ252によって指定されたR値の和が実際に表示されるR値となる。同様に、頂点カラーによって指定されたG値と日陰用芝生テクスチャ252によって指定されたG値の和が実際に表示されるG値となるとともに、頂点カラーによって指定されたB値と日陰用芝生テクスチャ252によって指定されたB値の和が実際に表示されるB値となる。
頂点カラーで設定される値が「0」である場合には、テクスチャで設定される値がそのまま実際に表示される値となる。また、頂点カラーで設定される値が「0」より大きい場合には、テクスチャで設定される値よりも大きい値が実際に表示される値となる。具体的には、あるピクセルについて、頂点カラーにより指定される(R値,G値,B値)が(0.4,0.4,0.4)であり、テクスチャにより指定される(R値,G値,B値)が(0.2,0.4,0.5)である場合には、各値の和である(0.6,0.8,0.9)が表示される(R値,G値,B値)となる。したがって、テクスチャの色情報と頂点カラーの色情報を加算によりブレンドする場合、頂点カラーの色情報が「0」である場合を除いて、テクスチャをそのまま表示する場合よりも明るく表示される。
図28(d)の四角形ABCDにおいて、3列目に存在する3つの単位ポリゴン241の右側の頂点の頂点カラーを(0.4,0.4,0.4)とする。これにより、辺BC上にある4つの頂点に頂点カラーが設定される。また、残りの頂点カラーを(0.0,0.0,0.0)とする。そして、四角形ABCDの投影データに対して、図28(c)に示す日陰用芝生テクスチャ252を適用する。図28(e)は四角形ABCDの投影データに対して、日陰用芝生テクスチャ252を適用した場合の表示態様である。図28(e)に示すように、四角形ABCDの投影データにおいて辺BC近傍には日陰用芝生テクスチャ252により設定される色情報よりも明るい色情報が設定される。一方、残りの領域には日陰用芝生テクスチャ252により設定される色情報と同じ色情報が設定される。これにより、芝生の右端に周囲よりも明るい明領域が表示される。このように、頂点カラーを設定することにより、日なたとしての明領域を設定することができる。このため、日陰用のテクスチャと日なた用のテクスチャを使用する場合と比較して、データ容量を削減することが可能である。
次に、光影表示演出について説明する。本遊技機では、光影表示演出として暗領域表示演出と明領域表示演出が行われる。暗領域表示演出では直方体のポリゴンである影生成オブジェクト271a~271c(図29(a)~(c))に光が当たることにより、地面に影281~283としての暗領域が表示される。明領域表示演出では、暗領域表示演出において暗領域として表示される領域が明領域として表示される。本遊技機では、地面表示用テクスチャにより設定される色情報と頂点カラーにより設定される色情報とのブレンド方法を切り換えることにより、暗領域表示演出を明領域表示演出に変更することができる。以下では、暗領域表示演出について説明する。
先ず影281~283の形状が経時変化する様子について説明する。図29(a)は第1形態の影生成オブジェクト271aの形状と、当該第1形態の影生成オブジェクト271aの影281の形状を説明するための説明図であり、図29(b)は第2形態の影生成オブジェクト271bの形状と、当該第2形態の影生成オブジェクト271bの影282の形状を説明するための説明図であり、図29(c)は第3形態の影生成オブジェクト271cの形状と、当該第3形態の影生成オブジェクト271cの影283の形状を説明するための説明図である。ワールド座標系内に地面表示用オブジェクト272が配置される。
具体的には、平らな面を有する地面表示用オブジェクト272が、当該平らな面がxz平面と平行になるように配置される。そして、地面表示用オブジェクト272の平面に接するように影生成オブジェクト271a~271cが配置され、当該影生成オブジェクト271a~271cの影281~283が地面表示用オブジェクト272の平面上に表示される。影生成オブジェクト271a~271cは直方体のポリゴンであり、当該直方体の1つの面が地面表示用オブジェクト272の平面と接するように影生成オブジェクト271a~271cが配置される。
図29(a)に示すように、第1形態の影生成オブジェクト271aはy軸方向よりもx軸方向に長い直方体である。図29(b)に示すように、第1形態の影生成オブジェクト271aがx軸方向に縮み、y軸方向に伸びることにより、第2形態の影生成オブジェクト271bとなる。また、図29(c)に示すように、第2形態の影生成オブジェクト271bがx軸方向に縮み、y軸方向に伸びることにより、第3形態の影生成オブジェクト271cとなる。
影生成オブジェクト271a~271cの形状変化に伴い、影生成オブジェクト271a~271cの影281~283の形状も変化する。具体的には、図29(a)に示すように、第1形態の影生成オブジェクト271aの影281はz軸方向よりもx軸方向に長い。図29(b)に示すように、第2形態の影生成オブジェクト271bの影282は第1形態の影281よりもx軸方向に縮み、z軸方向に伸びる。また、図29(c)に示すように、第3形態の影生成オブジェクト271cの影283は第2形態の影282よりもx軸方向に縮み、z軸方向に伸びる。
図30(a)は影生成オブジェクト271a~271cの影281~283が第1形態から第2形態に変化する様子を説明するための説明図であり、図30(b)は影生成オブジェクト271a~271cの影281~283が第2形態から第3形態に変化する様子を説明するための説明図である。図30(a),(b)に示すように、地面表示用オブジェクト272において、xz平面の格子点に当たる場所には頂点が存在する。そして、当該頂点に頂点カラーとして(0.2,0.2,0.2)が設定されることにより、影生成オブジェクト271a~271cの影281~283に相当する領域が周囲よりも暗く表示される。
影生成オブジェクト271a~271cの影281~283に含まれる頂点の座標は5つの領域に分かれてメモリモジュール133に記憶されている。図30(a)に示すように、第1形態の影281と第2形態の影282に共通して含まれる領域が第1領域285であり、第1形態の影281に含まれ、第2形態の影282に含まれない領域が第2領域286であり、第1形態の影281に含まれず、第2形態の影282に含まれる領域が第3領域287である。また、図30(b)に示すように、第2形態の影282と第3形態の影283に共通して含まれる領域が第4領域288であり、第2形態の影282に含まれず、第3形態の影283に含まれる領域が第5領域289である。
図30(c)に、開始タイミング及び各変形タイミングにおいて影281~283に含まれる領域285~289を指定するための領域指定テーブルTB1を示す。当該領域指定テーブルTB1は、メモリモジュール133に記憶されている。開始タイミング及び各変形タイミングにおいて指定された領域に含まれる頂点には、頂点カラーとして(0.2,0.2,0.2)が設定されるとともに、指定されなかった領域の頂点には頂点カラーとして(1.0,1.0,1.0)が設定される。
具体的には、開始タイミングにおいて、第1領域285及び第2領域286に含まれる頂点に頂点カラーとして(0.2,0.2,0.2)が設定されるとともに、その他の頂点に頂点カラーとして(1.0,1.0,1.0)が設定されることにより、第1形態の影281が表示される。また、第1変形タイミングにおいて、第1領域285及び第3領域287に含まれる頂点に頂点カラーとして(0.2,0.2,0.2)が設定されるとともに、その他の頂点に頂点カラーとして(1.0,1.0,1.0)が設定されることにより、第2形態の影282が表示される。そして、第2変形タイミングにおいて、第4領域288及び第5領域289に含まれる頂点に頂点カラーとして(0.2,0.2,0.2)が設定されるとともに、その他の頂点に頂点カラーとして(1.0,1.0,1.0)が設定されることにより、第3形態の影283が表示される。
このように、影281~283になる領域285~289が分割されて記憶されており、開始タイミング及び各変形タイミングにおいて分割された領域285~289を指定することにより影281~283の形状を決定する。これにより、影281~283の各形態の共通部分のデータ量が大きく、影281~283の形状変化の回数が多い場合に、頂点カラーデータを形態毎に記憶する場合と比較して、メモリモジュール133に記憶するデータ量を低減することができる。
図30(a),(b)に示すように、第1形態の影281に含まれる1つの頂点を代表頂点284とし、当該代表頂点284の座標を(x,z)とする。代表頂点284の座標は影生成オブジェクト271a~271cの底面の中心座標から算出される。具体的には、影生成オブジェクト271a~271cの底面の中心座標をx軸方向にa、y軸方向にb移動させることにより、代表頂点284の座標(x,z)が算出される。つまり、影生成オブジェクト271a~271cの底面の中心座標のx座標からaを減算することにより代表頂点284のx座標が算出され、影生成オブジェクト271a~271cの底面の中心座標のy座標からbを減算することにより代表頂点284のy座標が算出される。影生成オブジェクト271a~271cの底面の中心座標は、影生成オブジェクト271a~271cが変形しても変化しない。このため、a,bは定数であり、メモリモジュール133に予め記憶されている。ここで、影生成オブジェクト271a~271cの底面とは、地面表示用オブジェクト272と接している面である。メモリモジュール133には代表頂点284との関係で各領域285~289に含まれる頂点の座標が記憶されている。
具体的には、メモリモジュール133に範囲指定テーブルTB2が記憶されている。図31に当該範囲指定テーブルTB2を示す。各領域285~289に含まれる頂点の座標は、(x+c,z+d)の形で範囲指定テーブルTB2に記憶されている。ここで、c及びdは整数である。つまり、各領域285~289に含まれる頂点の座標は、代表頂点284の座標(x,z)から、x軸方向にc、y軸方向にd移動した場所にある頂点として記憶されている。
このように、各領域285~289に含まれる全ての頂点の座標を1点の代表頂点284から算出することにより、影281~283がxz平面内を平行移動する様子を表示する場合に、影281~283に含まれる頂点の座標を把握するために行う演算の量を減らすことができる。具体的には、影281~283がxz平面内をx方向にe、z方向にf移動する場合に、代表頂点284の座標を(x,z)から(x+e,z+f)に変更して、範囲指定テーブルTB2を参照することにより、影281~283に含まれる全ての頂点の座標を把握することができる。したがって、影281~283に含まれる全ての頂点の座標をx軸方向にe、z軸方向にf移動する演算を省くことができる。ここで、e及びfは整数である。
平面内を平行移動する影281~283の具体例について図32(a)を参照しながら説明する。図32(a)は第1形態の影生成オブジェクト271a及び第1形態の影281が地面表示用オブジェクト272の平面に沿って平行移動する様子を示している。影生成オブジェクト271a及び影281はz軸方向に移動した後、x軸方向に移動する。このように、影生成オブジェクト271aが変形を伴わずに移動する演出は、遊技者に対して大当たり期待度が低いことを報知する演出として行われる。
開始タイミング及び各更新タイミングにおいて、データテーブル及び影生成オブジェクト271aのアニメーションデータを参照することにより、影生成オブジェクト271aの底面の中心座標が把握される。メモリモジュール133には影生成オブジェクト271aのアニメーションデータとして、影生成オブジェクト271aのパラメータが記憶されている。具体的には、連番となるようにして複数のポインタ情報が設定されており、各ポインタ情報のそれぞれには、影生成オブジェクト271aのパラメータが設定されている。当該パラメータには影生成オブジェクト271aの座標、回転角度及びスケールが含まれる。影生成オブジェクト271aのパラメータから影生成オブジェクト271aの底面の中心座標が把握される。
影生成オブジェクト271aの底面の中心座標から影281の代表頂点284の座標が算出され、当該代表頂点284の座標から影281に含まれる第1領域285及び第2領域286の全ての頂点の座標が算出される。そして、影281に含まれる全ての頂点に頂点カラーとして(0.2,0.2,0.2)が設定されるとともに、その他の頂点に頂点カラーとして(1.0,1.0,1.0)が設定される。
更新タイミングを迎える度に、影生成オブジェクト271aの底面の中心座標がz軸方向へ移動した後、x軸方向へ移動する。当該中心座標の移動に伴って、影281もz軸方向へ移動した後、x軸方向へ移動する。これにより、地面表示用オブジェクト272の平面内を平行移動する影281を表示することができる。各更新タイミングに対応させて影281に含まれる全ての頂点を予め記憶させておく場合と比較して、メモリモジュール133に記憶するデータ量を低減することができる。
次に、影生成オブジェクト271a~271cが移動しながら変形する場合について図32(b)を参照しながら説明する。図32(b)は、第1形態の影生成オブジェクト271aがz軸方向に移動して第2形態に変形した後、x軸方向に移動して第3形態に変形する様子を示している。影生成オブジェクト271a~271cが移動して変形すると同時に影281~283も移動して変形する。第1形態の影281がz軸方向に移動して第2形態に変形した後、x軸方向に移動して第3形態に変形する。このように、影生成オブジェクト271aが変形を伴って移動する演出は、遊技者に対して大当たり期待度が高いことを報知する演出として行われる。
開始タイミング及び各更新タイミングにおいて、データテーブル及び影生成オブジェクト271a~271cのアニメーションデータを参照することにより、影生成オブジェクト271a~271cの底面の中心座標が把握される。影生成オブジェクト271a~271cの底面の中心座標から影281~283の代表頂点284が算出される。更新タイミングを迎える度に、影生成オブジェクト271aの底面の中心座標がz軸方向へ移動した後、x軸方向へ移動する。当該中心座標の移動に伴って、代表頂点284もz軸方向へ移動した後、x軸方向へ移動する。
開始タイミングにおいて領域指定テーブルTB1が参照されて影281に含まれる領域285,286が把握され、当該領域285,286がワークRAM132に記憶される。その後、影281が変形するタイミングを迎えるまでは、ワークRAM132に記憶された領域285,286が影281に含まれる領域285,286として用いられる。更新タイミングが影281~283の変形タイミングである場合には、領域指定テーブルTB1が参照されて影281~283に含まれる領域285~289が把握され、ワークRAM132に記憶されている領域285~289が更新される。
図32(b)を参照しながら、影281~283に含まれる領域285~289が変化し、影281~283の形状が変化する様子を具体的に説明する。演出の開始タイミングにおける影281の位置を開始位置し、演出の終了タイミングにおける影283の位置を終了位置とする。また、影281の開始位置からz軸方向への移動が終了した後、影282のx軸方向への移動が開始する前の位置を中間位置とする。
開始位置では、領域指定テーブルTB1により、影281に含まれる領域285~289として第1領域285及び第2領域286が把握される。このため、開始位置では第1形態の影281が表示される。1回目の影281~283の変形タイミングは影281が中間位置に到達するタイミングである。中間位置では、領域指定テーブルTB1により、影281~283に含まれる領域285~289として第1領域285及び第3領域287が把握される。このため、開始位置から中間位置まで、第1形態の影281が表示され、中間位置において第2形態の影282に変形する。
2回目の影281~283の変形タイミングは影282が終了位置に到達するタイミングである。終了位置では、領域指定テーブルTB1により、影281~283に含まれる領域285~289として第4領域288及び第5領域289が把握される。このため、中間位置から終了位置まで、第2形態の影282が表示され、終了位置において第3形態の影283に変形する。
開始タイミング及び各変更タイミングにおいて、代表頂点284の座標から各領域285~289に含まれる頂点の座標が把握され、当該タイミングにおいて、影281~283に含まれる全ての頂点について、頂点カラーとして(0.2,0.2,0.2)が設定されるとともに、その他の頂点に頂点カラーとして(1.0,1.0,1.0)が設定される。代表頂点284の移動に伴って影281~283が移動する。また、変形タイミングを迎える度に、影281~283に含まれる領域285~289が変化する。したがって、地面表示用オブジェクト272の表面を平行移動しながら変形する影281~283を表示することができる。各更新タイミングに対応させて影281~283に含まれる全ての頂点を予め記憶しておく場合と比較して、メモリモジュール133に記憶するデータ量を低減することができる。
以下に、光影表示演出の具体的な処理構成を説明する。
図33は表示CPU131にて実行される光影表示演出用の演算処理を示すフローチャートである。光影表示演出用の演算処理は、タスク処理(図11)のステップS604における演出用演算処理にて実行される。また、光影表示演出用の演算処理は、光影表示演出が実行される遊技回に対応したデータテーブルが設定されている場合に起動される。
先ずステップS1201では、現状設定されているデータテーブルに基づいて、暗領域表示演出の実行タイミングであるか否かについて判定する。ステップS1201にて暗領域表示演出の実行タイミングである場合(ステップS1201:YES)には、ステップS1202にて、現状設定されているデータテーブルに基づいて、大当たりの期待度が高いか否かについて判定する。大当たりの期待度が低い場合(ステップS1202:NO)には、ステップS1203にて移動を伴う暗領域表示演出用の演算処理を実行して、そのまま本演算処理を終了する。また、大当たりの期待度が高い場合(ステップS1202:YES)には、ステップS1204にて移動及び形状変化を伴う暗領域表示演出用の演算処理を実行して、そのまま本演算処理を終了する。
暗領域表示演出の実行タイミングでない場合(ステップS1201:NO)には、ステップS1205にて、現状設定されているデータテーブルに基づいて、大当たりの期待度が高いか否かについて判定する。大当たりの期待度が低い場合(ステップS1205:NO)には、ステップS1206にて移動を伴う明領域表示演出用の演算処理を実行して、そのまま本演算処理を終了する。また、大当たりの期待度が高い場合(ステップS1205:YES)には、ステップS1207にて移動及び形状変化を伴う明領域表示演出用の演算処理を実行して、そのまま本演算処理を終了する。
ここで、ステップS1203の移動を伴う暗領域表示演出の演算処理と、ステップS1206の移動を伴う明領域表示演出の演算処理はほぼ同様の処理である。両者の相違は、前者が頂点カラーを設定することにより、特定の領域を周囲よりも暗く表示するのに対して、後者が頂点カラーを設定することにより、特定の領域を周囲よりも明るく表示する点のみである。また、ステップS1204の移動及び形状変化を伴う暗領域表示演出の演算処理と、ステップS1207の移動及び形状変化を伴う明領域表示演出の演算処理はほぼ同様の処理である。両者の相違は、前者が頂点カラーを設定することにより、特定の領域を周囲よりも暗く表示するのに対して、後者が頂点カラーを設定することにより、特定の領域を周囲よりも明るく表示する点のみである。このため、以下において、移動を伴う暗領域表示演出用の演算処理と、移動及び形状変化を伴う暗領域表示演出用の演算処理について詳細に説明する。
先ず移動を伴う暗領域表示演出を実行するための具体的な処理構成を説明する。図34は、表示CPU131にて実行される移動を伴う暗領域表示演出用の演算処理を示すフローチャートである。移動を伴う暗領域表示演出用の演算処理は、光影表示演出用の演算処理(図33)のステップS1203にて実行される。
先ずステップS1301では、現状設定されているデータテーブルに基づいて、移動を伴う暗領域表示演出の実行中であるか否かについて判定する。移動を伴う暗領域表示演出の実行中でない場合(ステップS1301:NO)には、ステップS1302にて、移動を伴う暗領域表示演出の開始タイミングであるか否かについて判定する。開始タイミングでない場合にはそのまま本演算処理を終了し、開始タイミングである場合にはステップS1303にて、各種データの読出し処理を実行する。
ここで、各種データの読出し処理について、図35(a)のフローチャートを参照しながら説明する。図35(a)は、表示CPU131にて実行される各種データの読出し処理を示すフローチャートである。なお、影生成オブジェクト271a~271cのアニメーションデータ、代表頂点284を算出するための演算式及び範囲指定テーブルTB2は、メモリモジュール133に予め記憶されている。
先ずステップS1401では、影生成オブジェクト271a~271cのアニメーションデータを読み出す。当該アニメーションデータにおいて、各ポインタ情報のそれぞれには、影生成オブジェクト271a~271cのパラメータが設定されている。パラメータには座標、回転角度及びスケールが含まれる。ステップS1402では、現状設定されているデータテーブルに基づいて、代表頂点284を算出するための演算式を読み出す。ステップS1403では、現状設定されているデータテーブルに基づいて、範囲指定テーブルTB2を読み出した後、本各種データの読出し処理を終了する。
移動を伴う暗領域表示演出用の演算処理(図34)の説明に戻り、ステップS1303にて各種データの読出し処理を実行した後、ステップS1304にて代表頂点の演算処理を実行する。
ここで、代表頂点の演算処理について、図35(b)のフローチャートを参照しながら説明する。図35(b)は、表示CPU131にて実行される代表頂点の演算処理を示すフローチャートである。なお、地面表示用オブジェクト272及び影生成オブジェクト271a~271cはメモリモジュール133に予め記憶されている。
先ずステップS1501では、現状設定されているデータテーブルに基づいて、地面表示用オブジェクト272の使用指示情報を記憶する。ステップS1502では、現状設定されているデータテーブルに基づいて地面表示用オブジェクト272のパラメータとして、座標、回転角度及びスケールを把握する。ステップS1503では、現状設定されているデータテーブルに基づいて、影生成オブジェクト271a~271cの使用指示情報を記憶する。ステップS1504では、現状設定されているデータテーブル及び既に読み出されている影生成オブジェクト271a~271cのアニメーションデータに基づいて、影生成オブジェクト271a~271cのパラメータとして、座標、回転角度及びスケールを把握する。これにより、影生成オブジェクト271a~271cの底面の中心座標も把握される。続くステップS1505では、既に読み出されている代表頂点284を算出するための演算式にステップS1503にて把握した影生成オブジェクト271a~271cの底面の中心座標を適用することにより、代表頂点284の座標を算出し、本演算処理を終了する。
移動を伴う暗領域表示演出用の演算処理(図34)の説明に戻り、ステップS1304にて各種座標の演算処理を実行した後、ステップS1305にてワークRAM132に記憶されている範囲指定テーブルTB2及びステップS1304にて算出した代表頂点284の座標から影281に含まれる頂点の座標を算出する。ステップS1306では、現状設定されているデータテーブルに基づいて地面表示用テクスチャの使用指示情報を記憶する。
ステップS1307では、現状設定されているデータテーブルに基づいて、暗領域用の色情報のブレンド方法を把握し、暗領域用のブレンド指示情報を記憶する。具体的には、暗領域用の色情報のブレンド方法として、テクスチャにより設定される(R値,G値,B値)と頂点カラーにより設定される(R値,G値,B値)の積を最終的な(R値,G値,B値)とする方法を把握する。その後、ステップS1308にて指定情報を記憶して本演算処理を終了する。ここで、ステップS1308にて記憶される指定情報は、開始タイミングである場合には開始指定情報であり、更新タイミングである場合には更新指定情報である。
上記のように移動を伴う暗領域表示演出用の演算処理が実行された場合、その後の描画リスト出力処理にて作成される描画リストには、地面表示用オブジェクト272、影生成オブジェクト271a~271c及び地面表示用テクスチャの使用指示情報が設定される。また、描画リストには、ステップS1304にて把握される影生成オブジェクト271a~271cの底面の中心座標及び影281に含まれる頂点の位置情報も設定される。更に、描画リストには暗領域用のブレンド指示情報も記憶される。
次に、移動及び形状変化を伴う暗領域表示演出を実行するための具体的な処理構成を説明する。図36は、表示CPU131にて実行される移動及び形状変化を伴う暗領域表示演出用の演算処理を示すフローチャートである。移動及び形状変化を伴う暗領域表示演出用の演算処理は、光影表示演出用の演算処理(図33)のステップS1204にて実行される。
先ずステップS1601にて現状設定されているデータテーブルに基づいて、移動及び形状変化を伴う暗領域表示演出の実行中であるか否かについて判定する。移動及び形状変化を伴う暗領域表示演出の実行中でない場合(ステップS1601:NO)には、ステップS1602にて、移動及び形状変化を伴う暗領域表示演出の開始タイミングであるか否かについて判定する。開始タイミングでない場合にはそのまま本演算処理を終了し、開始タイミングである場合にはステップS1603に進む。
ステップS1603では、各種データの読出し処理(図35(a))を実行する。各種データの読出し処理にて、メモリモジュール133に記憶されている影生成オブジェクト271a~271cの底面の中心座標を把握するためのテーブル、代表頂点284を算出するための演算式及び範囲指定テーブルTB2を読出し、ワークRAM132に記憶する。ステップS1604では、現状設定されているデータテーブルに基づいて、メモリモジュール133に記憶されている領域指定テーブルTB1を読出し、ステップS1605にて領域指定テーブルTB1をワークRAM132に記憶する。
ステップS1606では代表頂点の演算処理(図35(b))を実行する。ステップS1607ではワークRAM132に記憶されている領域指定テーブルTB1に基づいて、影281~283に含まれる領域を把握する。具体的には、開始タイミングにおいて影281~283に含まれる領域として第1領域285及び第2領域286が設定されており、第1形態の影281が表示対象となる。ステップS1608ではステップS1607にて把握された第1領域285及び第2領域286を影281に含まれる領域としてワークRAM132に記憶する。
ステップS1609ではワークRAM132に記憶されている影281に含まれる領域、ワークRAM132に記憶されている範囲指定テーブルTB2及びステップS1606にて算出された代表頂点284に基づいて、影281に含まれる全ての頂点の座標を算出する。具体的には、影281に含まれる領域として第1領域285及び第2領域286がワークRAM132に記憶されているため、範囲指定テーブルTB2に基づいて、第1領域285及び第2領域286に含まれる全ての頂点の座標を代表頂点284の座標との関係で把握し、代表頂点284の座標を適用することにより、影281に含まれる全ての頂点の座標を算出する。これにより、影281に含まれる全ての頂点が把握される。
ステップS1610では現状設定されているデータテーブルに基づいて、メモリモジュール133に記憶されている地面表示用テクスチャの使用指示情報を記憶する。ステップS1611では現状設定されているデータテーブルに基づいて、暗領域用の色情報のブレンド方法を把握し、暗領域用のブレンド指示情報を記憶する。その後、ステップS1612にて開始指定情報を記憶して本演算処理を終了する。
上記のように移動及び形状変化を伴う暗領域表示演出の演算処理が実行された場合、その後の描画リスト出力処理にて作成される描画リストには、地面表示用オブジェクト272、影生成オブジェクト271a及び地面表示用テクスチャの使用指示情報が設定される。また、描画リストにはステップS1606にて把握される影生成オブジェクト271aの底面の中心座標及びステップS1609にて把握される影281に含まれる全ての頂点も設定される。更に、描画リストには暗領域用のブレンド指示情報も記憶される。
ステップS1601において、移動及び形状変化を伴う暗領域表示演出の実行中である場合(ステップS1601:YES)には、ステップS1613にて現状設定されているデータテーブルに基づいて変形タイミングであるか否かについて判定する。変形タイミングである場合(ステップS1612:YES)には、ステップS1614にてワークRAM132に記憶されている領域指定テーブルTB1に基づいて影281~283に含まれる領域を把握する。今回の変形タイミングが第1変形タイミングである場合には第1領域285及び第3領域287が影282に含まれる領域として把握される。また、今回の変形タイミングが第2変形タイミングである場合には第4領域288及び第5領域289が影283に含まれる領域として把握される。続くステップS1615では、ワークRAM132に記憶されている影281~283に含まれる領域をステップS1614にて把握された各領域285~289に更新する。
ステップS1613にて否定判定をした後又はステップS1615にて影281~283に含まれる領域を更新した後、ステップS1616にて代表頂点の算出処理(図35(b))を実行する。ステップS1617ではワークRAM132に記憶されている影281~283に含まれる領域を把握し、ワークRAM132に記憶されている範囲指定テーブルTB2及びステップS1616にて算出された代表頂点284に基づいて、影281~283に含まれる全ての頂点の座標を算出する。具体的には、範囲指定テーブルTB2に基づいて、影281~283に含まれる全ての頂点の座標を代表頂点284の座標との関係で把握し、代表頂点284の座標を適用することにより、影281~283に含まれる全ての頂点の座標を算出する。これにより、影281~283に含まれる全ての頂点が把握される。
ステップS1618では現状設定されているデータテーブルに基づいて、メモリモジュール133に記憶されている地面表示用テクスチャの使用指示情報を記憶する。ステップS1619では現状設定されているデータテーブルに基づいて、暗領域用の色情報のブレンド方法を把握し、暗領域用のブレンド指示情報を記憶する。その後、ステップS1620にて更新指定情報を記憶して本演算処理を終了する。
上記のように移動及び形状変化を伴う暗領域表示演出の演算処理が実行された場合、その後の描画リスト出力処理にて作成される描画リストには、地面表示用オブジェクト272、影生成オブジェクト271a~271c及び地面表示用テクスチャの使用指示情報が設定される。また、描画リストにはステップS1615にて把握される影生成オブジェクト271a~271cの底面の中心座標及びステップS1616にて把握される影281~283に含まれる全ての頂点も設定される。更に、描画リストには暗領域用のブレンド指示情報も記憶される。
次に、VDP135にて実行されるオブジェクトの設定処理について、図37を参照しながら説明する。オブジェクトの設定処理は、描画処理(図13)のステップS703における演出用の設定処理にて実行される。
先ずステップS1701にて、今回の描画リストを参照して、メモリモジュール133において地面表示用オブジェクト272が記憶されているアドレスを把握して読み出す。ステップS1702では、今回の描画リストを参照して、地面表示用オブジェクト272のパラメータを把握する。具体的には、地面表示用オブジェクト272をワールド座標系内に配置するために必要な座標、回転角度及びスケールを把握する。そして、ステップS1703では、ステップS1702にて把握した座標、回転角度及びスケールとなるように、地面表示用オブジェクト272をワールド座標系内に配置する。
ステップS1704では、今回の描画リストを参照して、メモリモジュール133において影生成オブジェクト271a~271cが記憶されているアドレスを把握して読み出す。ステップS1705では、今回の描画リストを参照して、影生成オブジェクト271a~271cのパラメータを把握する。具体的には、影生成オブジェクト271a~271cをワールド座標系内に配置するために必要な座標、回転角度、及びスケールを把握する。そして、ステップS1706では、ステップS1705にて把握した座標、回転角度及びスケールとなるように、影生成オブジェクト271a~271cをワールド座標系内に配置して、本オブジェクトの設定処理を終了する。
次に、VDP135にて実行される色情報のブレンド処理について、図38を参照しながら説明する。色情報のブレンド処理は、描画処理(図13)のステップS710における演出及び図柄用の描画データ作成処理にて実行される。
先ずステップS1801にて、ワールド座標系内に配置されている地面表示用オブジェクト272及び影生成オブジェクト271a~271cについて、スクリーン領域PC12への投影を行うことで、スクリーン用バッファ144における演出及び図柄用のバッファに2次元の投影データを作成する。
ステップS1802では、今回の描画リストを参照して地面表示用オブジェクト272の頂点のうち、暗領域又は明領域に含まれる頂点を把握する。ステップS1803では、今回の描画リストを参照して暗領域を表示する演出であるか否かについて判定する。暗領域を表示する演出である場合(ステップS1803:YES)には、ステップS1804にて、ステップS1802で把握された頂点に対して頂点カラーとして(0.2,0.2,0.2)を設定し、ステップS1805にて、地面表示用オブジェクト272の残りの頂点に対して頂点カラーとして(1.0,1.0,1.0)を設定する。
ステップS1806では、今回の描画リストを参照して地面表示用テクスチャを把握する。続くステップS1807では乗算による色情報のブレンド処理を行う。乗算による色情報のブレンド処理では、先ず地面表示用オブジェクト272の各頂点に設定されている頂点カラーにより各ピクセルに設定されている色情報を把握する。当該色情報を第1色情報とする。次に、地面表示用テクスチャを地面表示用オブジェクト272の投影データに適用した場合に、地面表示用テクスチャにより各ピクセルに設定される色情報を把握する。当該色情報を第2色情報とする。そして、ピクセル毎に第1色情報と第2色情報の乗算によるブレンドを行う。当該ブレンド処理では、第1色情報として設定された(R値,G値,B値)と第2色情報として設定された(R値,G値,B値)の積が算出される。
詳細には、第1色情報のR値と第2色情報のR値の積が最終的なR値となり、第1色情報のG値と第2色情報のG値の積が最終的なG値となり、第1色情報のB値と第2色情報のB値の積が最終的なB値となる。その後、ステップS1808にて、ステップS1807でピクセル毎に算出された最終的なR値、G値及びB値を各ピクセルの色情報として設定し、本色情報のブレンド処理を終了する。
暗領域を表示する演出でない場合(ステップS1803:NO)には、ステップS1809にて、ステップS1802で把握された頂点に対して頂点カラーとして(0.4,0.4,0.4)を設定し、ステップS1810にて、地面表示用オブジェクト272の残りの頂点に対して頂点カラーとして(0,0,0)を設定する。
ステップS1811では、今回の描画リストを参照して地面表示用テクスチャを把握する。続くステップS1812では加算による色情報のブレンド処理を行う。加算による色情報のブレンド処理では、先ず地面表示用オブジェクト272の各頂点に設定されている頂点カラーにより各ピクセルに設定されている色情報を把握する。当該色情報を第1色情報とする。次に、地面表示用テクスチャを地面表示用オブジェクト272の投影データに適用した場合に、地面表示用テクスチャにより各ピクセルに設定される色情報を把握する。当該色情報を第2色情報とする。そして、ピクセル毎に第1色情報と第2色情報の加算によるブレンドを行う。当該ブレンド処理では、第1色情報として設定された(R値,G値,B値)と第2色情報として設定された(R値,G値,B値)の和が算出される。
詳細には、第1色情報のR値と第2色情報のR値の和が最終的なR値となり、第1色情報のG値と第2色情報のG値の和が最終的なG値となり、第1色情報のB値と第2色情報のB値の和が最終的なB値となる。その後、ステップS1813にて、ステップS1812でピクセル毎に算出された最終的なR値、G値及びB値を各ピクセルの色情報として設定し、本色情報のブレンド処理を終了する。
以上のとおり、複数の頂点を有する地面表示用オブジェクト272に対して、地面表示用テクスチャを適用するとともに、頂点カラーを設定し、地面表示用テクスチャにより設定される色情報と頂点カラーにより設定される色情報をピクセル毎にブレンドして最終的な色情報を設定することにより、周囲と明るさの異なる明領域又は暗領域を表示することができる。周囲と明るさの異なるテクスチャを用いて明領域又は暗領域を表示する場合と比較して、メモリモジュール133に記憶するデータ量を低減することができる。
地面表示用テクスチャにより設定される色情報と頂点カラーにより設定される色情報を加算によりブレンドすることにより、周囲よりも明るい明領域を表示することが可能となる。また、地面表示用テクスチャにより設定される色情報と頂点カラーにより設定される色情報を乗算によりブレンドすることにより、周囲よりも暗い暗領域を表示することが可能となる。このように、明領域を表示する場合と暗領域を表示する場合で、色情報のブレンド方法を変化させることにより、明領域の表示と暗領域の表示の両方を頂点カラーの設定により行うことができる。色情報のブレンド方法が1種類であり、明領域表示又は暗領域表示のどちらか一方のみが実行可能な場合と比較して、実行可能な演出の種類を増やすことができる。
影281~283になる領域285~289を分割してメモリモジュール133に記憶し、演出の開始タイミング及び各変形タイミングにおいて分割された領域285~289を指定して影281~283の形状を決定する。これにより、影281~283の各形態の共通部分のデータ量が大きく、影281~283の形状変化の回数が多い場合に、頂点カラーデータを形態毎に記憶する場合と比較して、メモリモジュール133に記憶するデータ量を低減することができる。
各領域285~289に含まれる全ての頂点の座標を1点の代表頂点284から算出する形で記憶する。これにより、影281~283が平面内を平行移動する様子を表示する場合に、影281~283に含まれる頂点の座標を把握するために行う演算の量を減らすことができる。
<影に含まれる頂点座標を把握する方法の別形態>
影281~283を構成する各領域285~289に含まれる頂点座標が代表頂点の座標から算出する形で範囲指定テーブルTB2に記憶されており、開始タイミング及び各更新タイミングにおいて代表頂点284の座標を代入することにより、各領域285~289に含まれる頂点を把握する方法について上述した。当該方法では、開始タイミング及び各更新タイミングにおいて代表頂点284の座標を変えることにより、影281~283に含まれる各領域285~289に含まれる全ての頂点座標を平行移動することができる。このため、メモリモジュール133に記憶するデータ量を抑制しながら平行移動する影281~283の表示を行うことができる。
しかし、メモリモジュール133に記憶するデータ量を抑制しながら平行移動する影281~283を表示する方法はこれに限られない。例えば、開始タイミングについて影281~283を構成する各領域285~289に含まれる頂点の初期座標が記憶されているとともに、各更新タイミングについて初期座標から影281~283を平行移動させるためのベクトルが1つ記憶されている構成としてもよい。
先ず開始タイミングでは、初期座標に基づいて影281~283を構成する各領域285~289に含まれる頂点を把握する。次に、更新タイミングでは、記憶されているベクトルを用いて初期座標を平行移動することにより、当該タイミングにおいて影281~283を構成する各領域285~289に含まれる頂点を把握することができる。更新タイミング毎に影281~283を構成する各領域285~289に含まれる頂点座標が記憶されている場合と比較して、メモリモジュール133に記憶するデータ量を減らすことができる。
<形状変化を伴う影に含まれる頂点を把握する方法の別形態>
形状変化を伴う影281~283に含まれる頂点を把握する方法について上述した。具体的には、各タイミングにおいて、領域指定テーブルTB1を参照して影281~283を構成する領域285~289を把握し、範囲指定テーブルTB2及び代表頂点284の座標に基づいて当該領域285~289に含まれる頂点の座標を算出することにより、影281~283に含まれる頂点を把握する。これにより、影281~283に含まれる全ての頂点を影281~283の形状毎にメモリモジュール133に記憶しておく場合と比較して、メモリモジュール133に記憶するデータ量を抑制しながら、形状変化を伴う影281~283の表示を行うことができる。
しかし、形状変化を伴う影281~283に含まれる頂点を把握する方法はこれに限られない。例えば、4本の直線で囲われる範囲に存在する頂点に頂点カラーを設定して影281~283を表示する構成において、更新タイミング毎に4本の直線の式が変化する構成としてもよい。具体的には、xz平面内において、x軸に平行な2本の直線とz軸に平行な2本の直線で囲われる範囲に存在する地面表示用オブジェクト272の頂点に頂点カラーを設定して影281~283の表示を行う。
x軸に平行な2本の直線については、開始タイミングのz切片と終了タイミングのz切片をキーデータとしてメモリモジュール133に記憶しておく。またz軸に平行な2本の直線については、開始タイミングと終了タイミングのx切片をキーデータとしてメモリモジュール133に記憶しておく。そして、各更新タイミングにおいて、開始タイミングのキーデータと終了タイミングのキーデータを配合する割合を把握するためのブレンドテーブルをメモリモジュール133に記憶しておく。当該ブレンドテーブルにより、更新タイミング毎に異なる配合割合が指定される。
表示CPU131がブレンドテーブルを参照してキーデータの配合を行い、更新タイミング毎に、x軸に平行な2本の直線のz切片及びz軸に平行な2本の直線のx切片を更新することにより、4本の直線で囲われる範囲を連続的に変化させることができる。4本の直線で囲われる範囲が変化することで、当該範囲に含まれる頂点が変化し、当該頂点に頂点カラーを設定することにより表示される影281~283の形状も変化する。
したがって、影281~283の形状変化を連続的に表示することができる。影281~283に含まれる全ての頂点を影281~283の形状毎にメモリモジュール133に記憶しておく場合と比較して、メモリモジュール133に記憶するデータ量を抑制しながら、連続的な形状変化を伴う影281~283の表示を行うことができる。なお、x軸及びz軸に平行な直線の組について説明したが、4本の直線により閉じた領域が指定される態様であれば、軸に平行な直線に限らない。
また、キーデータの配合により、4本の直線の切片を更新タイミング毎に変化される態様について説明したが、キーデータの配合により、4本の直線の傾きが変化する態様で、連続的に形状変化する影281~283の表示を行うこともできる。この場合は、xz平面の直線を規定する式において、x又はzの係数をキーデータの配合により算出する構成となる。また、キーデータの配合により、4本の直線の傾きと切片が同時に変化する構成としてもよい。
4本の直線で囲われる座標範囲を把握し、当該範囲に含まれる地面表示用オブジェクト272の頂点に頂点カラーを設定する構成について説明したが、座標範囲を規定する直線の数は4本に限られない。直線の数は3本でも5本以上でも構わない。これにより、様々な形状の範囲を規定することが可能となり、メモリモジュール133に記憶するデータ量を抑制しながら様々な形状の影281~283を表示することが可能となる。
<移動する影を表示する方法の別形態>
影生成オブジェクト271a~271cの底面の中心座標から代表頂点284の座標を把握し、当該代表頂点284の座標から影281~283に含まれる頂点の座標を把握することで、移動する影281~283を表示する方法について上述した。しかし、移動する影281~283を表示する方法はこれに限られない。
例えば、メモリモジュール133に開始タイミング及び各更新タイミングにおける代表頂点284の座標テーブルを予め記憶させておく。当該座標テーブルには連番となるようにして複数のポインタ情報が設定されており、各ポインタ情報のそれぞれには、代表頂点284の座標が設定されている。表示CPU131は開始タイミング及び各更新タイミングにおいて、座標テーブルを参照して代表頂点284の座標を把握し、代表頂点284の座標から影281~283に含まれる頂点の座標を把握する。
これにより、影生成オブジェクト271a~271cの動きとは異なる動きをする影281~283を表示することが可能となる。また、代表頂点284の座標から把握される頂点に対して、明領域用の頂点カラーを設定するとともに、明領域用の加算による色情報のブレンドを行う構成とすることにより、地面や壁に沿って移動する明領域を表示することができる。具体的には、スポットライトの光で照らされている地面の領域やミラーボールの光で照らされている壁の領域などの表示を行うことができる。
また、座標テーブルから把握される代表頂点284の座標から影生成オブジェクト271a~271cの底面の中心座標を算出する構成とすることにより、影生成オブジェクト271a~271cに追従する影281~283を表示してもよい。影281~283の座標と影生成オブジェクト271a~271cの座標を別々に把握する場合と比較して、メモリモジュール133に記憶するデータ量を減らすことができる。
<範囲指定テーブルで把握される範囲に頂点カラーを設定する方法の別形態>
範囲指定テーブルTB2に代表頂点284の座標を代入することにより、影281~283に含まれる頂点を把握し、当該頂点の全てに影281~283を表示するための同一の頂点カラーを設定する方法について上述した。しかし、範囲指定テーブルTB2で把握される範囲に頂点カラーを設定する方法はこれに限られない。例えば、範囲指定テーブルTB2に頂点座標以外の情報も記憶する構成としてもよい。
具体的には、範囲指定テーブルTB2に頂点座標と当該頂点座標を有する頂点に設定する頂点カラーの色情報を対応させて設定しておく。表示CPU131は影281~283に含まれる頂点を把握するとともに、各頂点に設定する頂点カラーの色情報も把握する。これにより、範囲指定テーブルTB2に記憶する領域285~289の数の増加を抑制しながら、影281~283を複数の色で表示することが可能となる。例えば、影281~283の外縁から中心に向かって色が濃くなるようなグラデーションをつけることが可能となる。
<影に含まれる領域を指定して影の形状を変化させる演出の別形態>
影生成オブジェクト271a~271cが複数の形状を有し、当該影生成オブジェクト271a~271cの形状変化に伴って影281~283の形状も変化する演出について上述した。当該演出において、領域指定テーブルTB1で指定される領域285~289に含まれる頂点に暗領域用の頂点カラーを設定することにより、メモリモジュール133に記憶するデータ量を抑制しながら影281~283を表示することができる。しかし、影に含まれる領域を指定し、指定された領域に含まれる頂点に暗領域用の頂点カラーを設定することにより、メモリモジュール133に記憶するデータ量を抑制しながら形状が変化する影を表示する演出はこれに限られない。
例えば、影生成オブジェクト271aの上方に太陽などの光源が存在し、当該光源に照らされた影生成オブジェクト271aの影を頂点カラーの設定により表示する演出において、光源が移動し、当該光源の移動に伴って影の形状が変化する演出を行ってもよい。光源が移動することにより、影は複数の形状をとる。当該影を複数の領域に分けて記憶する。
具体的には、影が開始形状から中間形状を経て終了形状まで変化する場合に、開始形状のみに含まれる領域と、中間形状のみに含まれる領域と、終了形状のみに含まれる領域と、開始形状と中間形状に含まれる領域と、中間形状と終了形状に含まれる領域と、全ての形状に含まれる領域を分けてメモリモジュール133に記憶する。そして、開始タイミング及び更新タイミングにおいて影に含まれる領域を指定して影を表示する。これにより、形状毎に影に含まれる頂点を全て記憶する場合と比較して、メモリモジュール133に記憶するデータ量を抑制しながら形状が変化する影を表示することができる。
<影に含まれる頂点を把握する方法の別形態>
地面表示用オブジェクト272の頂点がxz平面の格子点となるように、地面表示用オブジェクト272がワールド座標系内に配置され、影281~283に含まれる頂点が当該頂点の座標から把握される態様について上述した。しかし、影281~283に含まれる頂点を把握する方法はこれに限られない。例えば、地面表示用オブジェクト272の各頂点に当該頂点を識別するための数字が設定されており、当該数字に基づいて影281~283に含まれる頂点が把握される構成としてもよい。これにより、地面表示用オブジェクトの頂点がxz平面の格子点とならない態様で地面表示用オブジェクト272がワールド座標系内に配置される場合にも、影281~283に含まれる頂点を把握することができる。また、地面表示用オブジェクト272の表面に凹凸が存在する場合において、当該表面の頂点を把握して頂点カラーを設定することができる。
<他の画像に追従して移動する画像を表示する演出の別形態>
影生成オブジェクト271a~271cの動きに追従して移動する影281~283を表示する演出について上述した。影生成オブジェクト271a~271cの底面の中心座標に基づいて代表頂点284の座標を把握し、当該代表頂点284の座標に基づいて影281~283に含まれる頂点の座標を把握することにより、各タイミングにおいて影281~283に含まれる全ての頂点を把握する場合と比較して、予め記憶するデータ量を抑制することができる。しかし、他の画像に追従して移動する画像を表示する演出はこれに限られない。
例えば、地面表示用オブジェクト272の頂点に頂点カラーが設定されることにより表示される所定領域と、地面表示用オブジェクト272の頂点に頂点カラーが設定されることにより表示される特定領域が存在し、所定領域と特定領域の相対的な位置関係を保ちながら、所定領域の動きに追従して特定領域が移動する演出を行ってもよい。所定領域の座標に基づいて基準となる座標を把握し、当該基準となる座標に基づいて特定領域に含まれる頂点の座標を把握する構成とすることにより、予め記憶するデータ量を抑制することができる。
また、所定領域に含まれる特定の頂点の座標を基準となる座標として把握し、当該基準となる座標に基づいて特定領域に含まれる頂点の座標を把握する構成としてもよい。これにより、処理負荷を軽減することができる。
<影生成オブジェクトの影の形状が変化する演出の別形態>
影生成オブジェクト271a~271cの形状が変化し、当該形状変化に伴って影281~283の形状も変化する演出について上述した。しかし、影生成オブジェクト271a~271cの影281~283の形状が変化する演出はこれに限られない。例えば、大当たりの期待度が低い場合には影生成オブジェクト271a~271c及び影281~283の形状変化が行われず、大当たりの期待度が高い場合には影生成オブジェクト271a~271cの形状は変化せず、影281~283の形状のみが変化する演出を行ってもよい。影生成オブジェクト271a~271cの形状と影281~283の形状の対応関係を崩すことにより、遊技者に特別なことが起きる期待感を持たせ、大当たりの期待度が高いことを報知することができる。
<頂点カラーを設定して行う演出の別形態>
影281~283が移動する演出や影281~283が移動しながら形を変える演出を、地面表示用オブジェクト272の頂点に頂点カラーを設定するとともに、頂点カラーを設定する頂点を変更することにより実行する方法について上述した。しかし、動かないオブジェクトの頂点に頂点カラーを設定するとともに、頂点カラーを設定する頂点を変更することにより実行可能な演出はこれに限られない。例えば、窓を表示するためのオブジェクトの頂点に明領域用の頂点カラーを設定するとともに、頂点カラーを設定する頂点を変更タイミング毎に変更することにより、夜空を流れる流れ星を表示することができる。流れ星の有無や数によって、遊技者に大当たりの期待度を報知する演出を行うことができる。
<影領域表示演出を行うための構成>
先ず影領域表示演出について説明する。太陽などの光源からの光がキャラクタ411に当たると、地面413などにキャラクタ411の影414ができる。影領域表示演出は、キャラクタ411と、地面413などにできるキャラクタ411の影414を面で結び、キャラクタ411から地面413などに向けて影414が伸びていく様子を半透明の影領域412で表示する演出である。
人間などの骨格構造を有するキャラクタ411は、変形しない骨を変形可能な関節でつなぎ合わせることにより表示することができる。変形しない骨の部分を直方体のブロックで表し、ボーンと記述する。当該ボーンを表示するための3次元オブジェクトをボーン用オブジェクト421とする。図39(a)はボーン用オブジェクト421で構成されたキャラクタ411の影領域412を表示する態様について説明するための説明図である。図39(a)では、地面413の上にボーン用オブジェクト421で構成されたキャラクタ411が立っており、当該キャラクタ411に太陽光が当たって地面413にキャラクタ411の影414ができる様子を表している。そして、キャラクタ411と地面413にできたキャラクタ411の影414の間に影領域412が表示されている。
影領域412はワールド座標系内に影領域用オブジェクト423(図39(b))を配置し、当該影領域用オブジェクト423の投影データに影領域用テクスチャ424(図40(a))を適用することにより表示される。図39(b)は1つのボーン用オブジェクト421の影領域412を表示する場合に用いられる影領域用オブジェクト423について説明するための説明図である。影領域用オブジェクト423は4つの頂点を有する2次元の板状ポリゴンである。影領域用オブジェクト423は影領域412の形状に合わせて変形されてワールド座標系内に配置される。影領域412の形状はワールド座標系内のボーン用オブジェクト421の座標とボーン用オブジェクト421の影用オブジェクト425の座標により決定される。
図39(b)を参照しながら、影領域用オブジェクト423の形状を決定する方法について具体的に説明する。ワールド座標系内には地面用オブジェクト426及びボーン用オブジェクト421が設定される。地面用オブジェクト426は平らな面を有する3次元のオブジェクトであり、平らな面がxz平面に含まれる状態で、平らな面が上方となるようにしてワールド座標系内に設定される。ここで、上方とは、y軸の正方向である。ボーン用オブジェクト421は地面用オブジェクト426の上方に配置される。
ボーン用オブジェクト421のパラメータはボーン用アニメーションデータとしてメモリモジュール133に記憶されている。具体的には、ボーン用アニメーションデータには、連番となるようにして複数のポインタ情報が設定されており、各ポインタ情報のそれぞれには、ボーン用オブジェクト421のパラメータが設定されている。当該パラメータにはボーン用オブジェクト421の座標、回転角度及びスケールが含まれる。ボーン用オブジェクト421は、座標、回転角度及びスケールを指定することにより、ワールド座標系内に一義的に設定される。
ボーン用オブジェクト421の影414は2次元の影用オブジェクト425及び影用テクスチャを用いて、地面用オブジェクト426の平面上に表示される。影用オブジェクト425の頂点の座標は影用アニメーションデータとしてメモリモジュール133に記憶されている。具体的には、影用アニメーションデータには、連番となるようにして複数のポインタ情報が設定されており、各ポインタ情報のそれぞれには、影用オブジェクト425のパラメータが設定されている。当該パラメータには影用オブジェクト425の座標、回転角度及びスケールが含まれる。影用オブジェクト425の投影データに対して影用テクスチャを適用することにより、影414が表示される。
図39(b)に示すように、開始タイミングにおいて、ボーン用オブジェクト421は底面が地面413用オブジェクト426の平面と平行になる態様でワールド座標系内に設定される。ボーン用オブジェクト421の底面を構成する2種類の辺のうち、長い方の一辺が影領域用オブジェクト423との接続辺である。当該接続辺の両端の頂点を第1頂点431及び第2頂点432とする。
VDP135はボーン用アニメーションデータを参照して、開始タイミング及び更新タイミングにおける第1頂点431及び第2頂点432の座標を把握する。そして、VDP135は、影領域用オブジェクト423の上側(ボーン用オブジェクト421側)の2つの頂点のうち、一方が第1頂点431の座標と同じ座標となり、他方が第2頂点432の座標と同じ座標となる態様で影領域用オブジェクト423をワールド座標系内に設定する。これにより、ボーン用オブジェクト421の座標が変化しても、影領域用オブジェクト423がボーン用オブジェクト421に追従する。
影用オブジェクト425の頂点の座標は、ボーン用オブジェクト421の各頂点から地面413に向かって直線を伸ばし、当該直線が地面413用オブジェクト426の平面と交差する座標として影用アニメーションデータに記憶されている。ここで、ボーン用オブジェクト421の各頂点から地面413に向かって伸ばす各直線は互いに平行である。したがって、影用オブジェクト425の各頂点はボーン用オブジェクト421の1つの頂点と対応関係にある。影用オブジェクト425の頂点において、ボーン用オブジェクト421の第1頂点431と対応関係にある頂点を第3頂点433とするとともに、ボーン用オブジェクト421の第2頂点432と対応関係にある頂点を第4頂点434とする。
VDP135は影用アニメーションデータを参照して、開始タイミング及び更新タイミングにおける第3頂点433及び第4頂点434の座標を把握する。そして、VDP135は、影領域用オブジェクト423の下側(影用オブジェクト425側)の2つの頂点のうち、一方が第3頂点433の座標と同じ座標となり、他方が第4頂点434の座標と同じ座標となる態様で影領域用オブジェクト423をワールド座標系内に設定する。
ボーン用オブジェクト421の座標変化に伴って影用オブジェクト425の座標も変化する。影領域用オブジェクト423は第1頂点431~第4頂点434の座標の変化に伴って、変形しながらボーン用オブジェクト421に追従する。当該影領域用オブジェクト423の投影データには影領域用テクスチャ424が適用される。
図40(a)を用いて、影領域用テクスチャ424について説明する。図40(a)はUV座標系内の影領域用テクスチャ424を示している。影領域用テクスチャ424は4つの頂点を有する正方形である。UV座標系において、影領域用テクスチャ424の4つの頂点の座標は(0,0)、(1,0)、(0,1)及び(1,1)である。影領域用テクスチャ424には黒色の色情報が設定されている。また、影領域用テクスチャ424には「1」より小さいα値が設定されている。
UV座標系内の影領域用テクスチャ424において、vが「0」よりも大きく「0.2」以下である第11領域424aにはα値として「0.1」が設定されており、vが「0.2」よりも大きく「0.4」以下である第12領域424bにはα値として「0.4」が設定されており、vが「0.4」よりも大きく「0.6」以下である第13領域424cにはα値として「0.7」が設定されている。また、vが「0.6」よりも大きく「0.8」以下である第14領域424dにはα値として「0.4」が設定されており、vが「0.8」よりも大きく「1」以下である第15領域424eにはα値として「0.1」が設定されている。
UV座標系内の点(0,0)が第1頂点431に対応するとともに、点(1,0)が第2頂点432に対応し、点(0,1)が第3頂点433に対応するとともに、点(1,1)が第4頂点434に対応する態様で、影領域用テクスチャ424が影領域用オブジェクト423の投影データに適用される。これにより、影領域412において、ボーン用オブジェクト421の近傍及び地面413の近傍の領域は高い透明度で表示される。
図39(b)に示すように、開始タイミングにおいて、第1頂点431と第2頂点432を結ぶ線分と、第3頂点433と第4頂点434を結ぶ線分は平行である。したがって、影領域用オブジェクト423の形状は平行四辺形である。しかし、第1頂点431~第4頂点434の座標は更新タイミングにおいて変化することがある。例えば、図40(b)に示すように、第1頂点431と第2頂点432の地面413からの高さが異なる場合には、影領域用オブジェクト423の形状は台形となる。
影領域用オブジェクト423は、影領域412を表示する演出において、影領域412が最大のサイズとなる場合に合わせたサイズでメモリモジュール133に記憶されている。また、影領域用テクスチャ424は、最大サイズの影領域用オブジェクト423の各ドットと影領域用テクスチャ424の各ピクセルが1対1で対応する態様でメモリモジュール133に記憶されている。したがって、影領域用オブジェクト423はサイズが減少する方向のみに変形する。VDP135は当該影領域用オブジェクト423の変形に合わせて、ドットを間引いて影領域用テクスチャ424を変形する。このため、影領域用テクスチャ424の変形もドット数が減少する方向のみについて行われる。
図40(a)において、影領域用テクスチャ424のu軸方向へのドットの並びを行とするとともに、v軸方向へのドットの並びを列とする。影領域用テクスチャ424のv軸方向のサイズを減少する変形においては、間引きの対象となるドットの選択方法によって、変形後の影領域用テクスチャ424の色合いが変化する。
VDP135は、列単位で第11領域424aに属するドットの数と、第12領域424bに属するドットの数と、第13領域424cに属するドットの数と、第14領域424dに属するドットの数と、第15領域424eに属するドットの数の比が変化しない態様で影領域用テクスチャ424のドットの間引きを実行する。具体的には、ある列について、列に並んでいるドットの数が20%間引かれる場合に、各領域424a~424eに属するドットの数がそれぞれ20%ずつ間引かれる。このため、影領域用テクスチャ424におけるドットの間引き前後において、各領域424a~424eに属するドットの数の比は変化せず、表示される影領域412の色合いが保たれる。
次に、影領域412が表示される角度に応じて、影領域412に適用される一律α値を調整することにより、表示される影領域412の濃さを調整する方法について説明する。先ず影領域用オブジェクト423に適用する一律α値を決定するために必要な表示角度について定義する。図41(a)にワールド座標系におけるスクリーン領域PC12と影領域用オブジェクト423の関係を示す。そして、スクリーン領域PC12と直交する平面でスクリーン領域PC12及び影領域用オブジェクト423を切断した場合の切断面を図41(b)に示す。具体的には、ワールド座標系内において、xy平面に平行なスクリーン領域PC12に直交する平面として、xz平面に平行な平面を選択し、当該平面でスクリーン領域PC12及び影領域用オブジェクト423を切断した場合の切断面を図41(b)に示す。
切断面において、スクリーン領域PC12及び影領域用オブジェクト423は共に1つの線分となる。切断面において、影領域用オブジェクト423のスクリーン領域PC12側の法線ベクトルの延長線とスクリーン領域PC12がなす角を表示角度とする。切断面において、影領域用オブジェクト423とスクリーン領域PC12が直交する関係にあり、影領域用オブジェクト423の法線ベクトルの延長線がスクリーン領域PC12と交わらない場合の表示角度を0°又は180°とする。
図41(c)に示すように、表示角度が90°である場合には、スクリーン領域PC12に対して正面向きの影領域用オブジェクト423がスクリーン領域PC12に投影される。一方、図41(b)に示すように、表示角度が90°でない場合には、スクリーン領域PC12に対して斜め向きの影領域用オブジェクト423がスクリーン領域PC12に投影される。表示角度が90°から小さくなるにつれて、影領域用オブジェクト423がスクリーン領域PC12に対して傾いた状態で投影される。同様に、表示角度が90°から大きくなるにつれて、影領域用オブジェクト423がスクリーン領域PC12に対して傾いた状態で投影される。
影領域用テクスチャ424には「1」未満のα値が設定されているため、影領域用オブジェクト423の投影データの各ドットに設定される色情報は、背景用の画像データの色情報と影領域用テクスチャ424の色情報のブレンドにより決定される。表示角度が90°である場合には、背景用の画像データの色情報と影領域用テクスチャ424の色情報のブレンドが1回行われ、当該ブレンドにより得られた色情報が影領域用オブジェクト423の投影データのドットに設定される。これに対して、表示角度が0°付近又は180°付近である場合には、ブレンドにより得られた色情報と影領域用テクスチャ424の色情報のブレンドが複数回実行され、得られた色情報が影領域用オブジェクト423の投影データのドットに設定される。
表示角度が90°未満である場合には、表示角度が小さいほど、影領域用テクスチャ424の寄与が大きくなり、影領域412が濃く表示される。また、表示角度が90°より大きい場合には、表示角度が大きいほど、影領域用テクスチャ424の寄与が大きくなり、影領域412が濃く表示される。そして、表示角度が0°又は180°の状態では、影領域412が濃い1本の線として表示される。このように、影領域用オブジェクト423のスクリーン領域PC12に対する角度の変化に伴って、表示される影領域412の濃さが変化する態様及び影領域412が1本の線として表示される態様は、影領域412の立体感を損なうため好ましくない。
これに対して、表示角度の大きさに応じて影領域用オブジェクト423に異なる一律α値を設定することにより影領域412の立体感を保つことができる。影領域用オブジェクト412に設定することにより、各表示角度におけるブレンド後の色情報を表示角度が90°である場合のブレンド後の色情報に近づける一律α値は、設計段階において実験的に把握され、透過性テーブルTT1(図42(a))に記憶される。
図42(a)に表示角度に応じて影領域用オブジェクト423に設定される一律α値を記憶した透過性テーブルTT1を示す。当該透過性テーブルTT1はメモリモジュール133に記憶されている。図42(a)に示すように、表示角度が0°以上15°未満の場合には一律α値として「0」が影領域用オブジェクト423に設定される。表示角度が0°以上90°未満の範囲では、表示角度が大きくなるにつれて設定される一律α値も大きくなり、表示角度が75°以上105°未満である場合には一律α値として「1」が影領域用オブジェクト423に設定される。表示角度が90°以上180°以下の範囲では、表示角度が大きくなるにつれて設定される一律α値が小さくなり、表示角度が165°以上180°以下である場合には一律α値として「0」が影領域用オブジェクト423に設定される。
影領域用オブジェクト423の投影データの各ドットに設定される最終的なα値は、透過性テーブルTT1に基づいて設定される一律α値と影領域用テクスチャ424を適用することにより設定されるα値を掛けて得られる値である。したがって、表示角度が75°以上105°未満である場合には、一律α値として「1」が設定されるため、影領域用テクスチャ424により設定されるα値が最終的なα値となる。この場合、影領域用オブジェクト423の投影データの各ドットには対応する影領域用テクスチャ424のドットに設定されている色情報及び透過情報が設定されるため、影領域用テクスチャ424どおりの表示が行われる。また、表示角度が0°以上15°未満である場合又は165°以上180°以下である場合には、一律α値として「0」が設定されるため、最終的なα値も「0」となる。この場合、影領域用オブジェクト423の投影データの各ドットにはα値として「0」が設定されるため、影領域412は表示されない。
このように、スクリーン領域PC12に対する影領域用オブジェクト423の傾きに応じて、影領域用オブジェクト423に設定される一律α値を変化させることにより、影領域412の濃さを一定に保つことができる。
また、表示角度が最も小さい範囲及び最も大きい範囲において、影領域用オブジェクト423のスクリーン領域PC12に対する角度を補正し、表示角度が15°未満の値及び165°以上の値をとらない構成としてもよい。これにより、影領域用オブジェクト423に設定される一律α値が「0」となり、影領域412が表示されなくなる事態を回避することができる。
図42(b)~(e)にボーン用オブジェクト421と影領域用オブジェクト423の接続態様を示す。図42(b)は表示角度が15°以上90°未満である場合の接続態様であり、図42(c)は表示角度が0°以上15°未満である場合の接続態様である。図42(b)に示すように、表示角度が15°以上90°未満である場合には、影領域用オブジェクト423の角度補正は行われない。このため、スクリーン領域PC12に対するボーン用オブジェクト421の角度と、スクリーン領域PC12に対する影領域用オブジェクト423の角度は等しい。一方、図42(c)に示すように、表示角度が0°以上15°未満である場合には、影領域用オブジェクト423の角度補正が行われる。具体的には、スクリーン領域PC12に対する影領域用オブジェクト423の角度が15°となるように影領域用オブジェクト423のボーン用オブジェクト421側の2つの頂点座標が変更される。したがって、スクリーン領域PC12に対するボーン用オブジェクト421の角度と、スクリーン領域PC12に対する影領域用オブジェクト423の角度は異なる。
図42(d)は表示角度が90°以上165°未満である場合の接続態様であり、図42(e)は表示角度が165°以上180°以下である場合の接続態様である。図42(d)に示すように、表示角度が90°以上165°未満である場合には、影領域用オブジェクト423の角度補正は行われない。このため、スクリーン領域PC12に対するボーン用オブジェクト421の角度と、スクリーン領域PC12に対する影領域用オブジェクト423の角度は等しい。一方、図42(e)に示すように、表示角度が165°以上180°以下である場合には、影領域用オブジェクト423の角度補正が行われる。具体的には、スクリーン領域PC12に対する影領域用オブジェクト423の角度が164°となるように影領域用オブジェクト423のボーン用オブジェクト421側の2つの頂点座標が変更される。したがって、スクリーン領域PC12に対するボーン用オブジェクト421の角度と、スクリーン領域PC12に対する影領域用オブジェクト423の角度は異なる。
このように、表示角度が0°以上15°未満の場合及び165°以上180°以下の場合に影領域用オブジェクト423の角度補正を行うことにより、スクリーン領域PC12に対する影領域用オブジェクト423の角度を所定の範囲に保ち、影領域用オブジェクト423に設定される一律α値が「0」となる事態を回避することができる。このため、影領域用オブジェクト423に一律α値として「0」が設定されて影領域412が一時的に非表示となり、遊技者に違和感を与えることを回避することができる。
以下に、影領域表示演出を実行するための具体的な処理構成を説明する。
図43は表示CPU131にて実行される影領域表示演出用の演算処理を示すフローチャートである。影領域表示演出用の演算処理は、タスク処理(図11)のステップS604における演出用演算処理にて実行される。また、影領域表示演出用の演算処理は、影領域表示演出が実行される遊技回に対応したデータテーブルが設定されている場合に起動される。なお、ボーン用アニメーションデータ、影用アニメーションデータ、透過性テーブルTT1、影用テクスチャ及び影領域用テクスチャ424は予めメモリモジュール133に記憶されている。
先ずステップS1901では、現状設定されているデータテーブルに基づいて、影領域表示演出の実行中であるか否かについて判定する。影領域表示演出の実行中でない場合(ステップS1901:NO)には、ステップS1902にて、影領域表示演出の開始タイミングであるか否かについて判定する。開始タイミングでない場合にはそのまま本演算処理を終了し、開始タイミングである場合にはステップS1903に進む。
ステップS1903では、ワールド座標系におけるボーン用オブジェクト421の座標を把握するためのボーン用アニメーションデータを読み出す。続くステップS1904では、ワールド座標系における影用オブジェクト425の座標を把握するための影用アニメーションデータを読み出す。そして、ステップS1905では、表示角度に応じて影領域用オブジェクト423に設定する一律α値を把握するための透過性テーブルTT1を読み出す。ステップS1901にて肯定判定を行った後、又はステップS1905にて透過性テーブルTT1を読み出した後、ステップS1906にて各種データの把握処理を実行する。
ここで、各種データの把握処理について、図44のフローチャートを参照しながら説明する。図44は表示CPU131にて実行される各種データの把握処理を示すフローチャートである。なお、ボーン用オブジェクト421、地面用オブジェクト426、影用オブジェクト425及び影領域用オブジェクト423は予めメモリモジュール133に記憶されている。
先ずステップS2001では、現状設定されているデータテーブルに基づいてボーン用オブジェクト421の使用指示情報を記憶し、ステップS2002では、現状設定されているデータテーブルに基づいて地面用オブジェクト426の使用指示情報を記憶する。続くステップS2003では、現状設定されているデータテーブルに基づいて影用オブジェクト425の使用指示情報を記憶し、ステップS2004では、現状設定されているデータテーブルに基づいて影領域用オブジェクト423の使用指示情報を記憶する。
ステップS2005では、既に読み出されているボーン用アニメーションデータを参照してボーン用オブジェクト421のワールド座標系における座標を把握する。続くステップS2006では、既に読み出されている影用アニメーションデータを参照して影用オブジェクト425のワールド座標系における座標を把握する。そして、ステップS2007にて、ステップS2005で把握されたボーン用オブジェクト421の座標とステップS2006で把握された影用オブジェクト425の座標から、影領域用オブジェクト423の4つの頂点の座標を把握し、本各種データの把握処理を終了する。
影領域表示演出用の演算処理(図43)の説明に戻り、ステップS1906にて各種データの把握処理を実行した後、ステップS1907にて現状設定されているデータテーブルに基づいて影領域用オブジェクト423の角度補正が行われる演出であるか否かについて判定する。角度補正が行われる演出である場合(ステップS1907:YES)には、ステップS1908にてスクリーン領域PC12と影領域用オブジェクト423の座標から表示角度を算出し、表示角度が0°以上15°未満の範囲又は165°以上180°以下の範囲に入っているか否かについて判定する。
表示角度が15°以上165°未満の範囲に入っている場合(ステップS1908:NO)には角度補正を行わない。表示角度が0°以上15°未満の範囲又は165°以上180°以下の範囲に入っている場合(ステップS1908:YES)にはステップS1909にて影領域用オブジェクト423の角度変更処理を行う。当該角度変更処理では、表示角度が0°以上15°未満である場合には表示角度が15°になるように影領域用オブジェクト423の座標を変更し、表示角度が165°以上180°以下である場合には表示角度が164°になるように影領域用オブジェクト423の座標を変更する。
ステップS1907にて否定判定を行った後、ステップS1908にて否定判定を行った後、又はステップS1909にて角度変更処理を行った後、ステップS1910にて既に読み出されている透過性テーブルTT1を参照して表示角度に対応する一律α値を把握する。続くステップS1911では現状設定されているデータテーブルに基づいて影用テクスチャを把握し、ステップS1912では現状設定されているデータテーブルに基づいて影領域用テクスチャ424を把握する。そして、ステップS1913にて指定情報を記憶して本影領域表示演出用の演算処理を終了する。ステップS1913では、影領域表示演出の開始タイミングである場合には開始指定情報が記憶され、影領域表示演出の更新タイミングである場合には更新指定情報が記憶される。
上記のように影領域表示演出用の演算処理が実行された場合、その後の描画リスト出力処理にて作成される描画リストには、ボーン用オブジェクト421、地面用オブジェクト426、影用オブジェクト425、影領域用オブジェクト423、影用テクスチャ及び影領域用テクスチャ424の使用指示情報が設定される。また、描画リストにはステップS1906にて把握されるボーン用オブジェクト421、影用オブジェクト425及び影領域用オブジェクト423の座標も設定される。ステップS1909にて角度変更処理が行われた場合には、変更後の座標が影領域用オブジェクト423の座標として設定される。
次に、VDP135にて実行される各種オブジェクトの設定処理について、図45を参照しながら説明する。各種オブジェクトの設定処理は、描画処理(図13)のステップS703における演出用の設定処理にて実行される。
先ずステップS2101にて、今回の描画リストを参照し、メモリモジュール133においてボーン用オブジェクト421が記憶されているアドレスを把握して読み出す。続くステップS2102では、今回の描画リストを参照し、ボーン用オブジェクト421の座標を把握する。そして、ステップS2103では、ステップS2102にて把握した座標に基づいてボーン用オブジェクト421をワールド座標系内に設定する。ステップS2104では、今回の描画リストを参照し、メモリモジュール133において地面用オブジェクト426が記憶されているアドレスを把握して読み出し、ステップS2105にて地面用オブジェクト426をワールド座標系内に設定する。
ステップS2106では、今回の描画リストを参照し、メモリモジュール133において影用オブジェクト425が記憶されているアドレスを把握して読み出す。続くステップS2107では、今回の描画リストを参照し、影用オブジェクト425の座標を把握する。そして、ステップS2108では、ステップS2107にて把握した座標に基づいて影用オブジェクト425をワールド座標系内に設定する。
ステップS2109では、今回の描画リストを参照し、メモリモジュール133において影領域用オブジェクト423が記憶されているアドレスを把握して読み出す。続くステップS2110では、今回の描画リストを参照し、影領域用オブジェクト423の座標を把握する。そして、ステップS2111にて、ステップS2111にて把握した座標に基づいて影領域用オブジェクト423をワールド座標系内に設定し、本各種オブジェクトの設定処理を終了する。
次に、VDP135にて実行される色情報の設定処理について図46を参照しながら説明する。色情報の設定処理は、描画処理(図13)のステップS710における演出及び図柄用の描画データ作成処理にて実行される。
先ずステップS2201では、今回の描画リストを参照し、メモリモジュール133において影用テクスチャが記憶されているアドレスを把握して読み出し、ステップS2202にて、今回の描画リストを参照し、メモリモジュール133において影領域用テクスチャ424が記憶されているアドレスを把握して読み出す。
ステップS2203では、今回の描画リストを参照し、影領域用オブジェクト423に適用する一律α値を把握する。続くステップS2204では、影領域用オブジェクト423に対して、影領域用テクスチャ424を適用することにより各ドットに設定されるα値と、一律α値を適用することにより設定されるα値をブレンドする。具体的には、ドット毎に、影領域用テクスチャ424を参照することにより設定されるα値と一律α値を適用することにより設定されるα値の積を算出し、算出結果を各ドットに設定する最終的なα値とする。
ステップS2205では、ステップS2204にて算出した最終的なα値を影領域用オブジェクト423の各ドットに適用する。ステップS2206では、ワールド座標系内に設定されているボーン用オブジェクト421、地面用オブジェクト426、影用オブジェクト425及び影領域用オブジェクト423について、スクリーン領域PC12への投影を行うことで、スクリーン用バッファ144における演出及び図柄用のバッファに2次元の投影データを作成する。ステップS2207では、影用オブジェクト425の投影データに対して影用テクスチャを適用する。
ステップS2208では、ステップS2202にて読み出した影領域用テクスチャ424を今回の影領域用オブジェクト423の形状に合わせるための変形処理を実行する。当該変形処理では、影領域用テクスチャ424のドットが間引かれる。間引かれるドットの数は変形の程度に応じて異なる。具体的には、今回の影領域用オブジェクト423の変形により影領域用オブジェクト423の面積が変形前の面積の半分になった場合には、影領域用テクスチャ424のドット数が間引き前のドット数の半分となる態様で変形処理が行われる。また、今回の影領域用オブジェクト423の変形により影領域用オブジェクト423の面積が変形前の面積の4分の1になった場合には、影領域用テクスチャ424のドット数が間引き前のドット数の4分の1となる態様で変形処理が行われる。
ドットの間引きは、影領域用テクスチャ424の各領域424a~424eに含まれるドットの割合が変化しない態様で行われるため、影領域用テクスチャ424の色合いは変化しない。その後、ステップS2209では、影領域用オブジェクト423の投影データに対して影領域用テクスチャ424を適用することにより、α値以外の色情報としてR値、G値及びB値を各ドットに設定して、本色情報の設定処理を終了する。
以上のとおり、ボーン用オブジェクト421に追従して移動する影領域用オブジェクト423を用いてボーン用オブジェクト421の影領域412を表示する。影領域用オブジェクト423として板状ポリゴンを用いることにより、大きな処理負荷を伴うことなく、リアルタイムレンダリングで影領域表示を行うことが可能となる。
影領域用オブジェクト423の4つの頂点のうち、影用オブジェクト425側の2つの頂点を常に地面用オブジェクト426の表面上に設定することにより、当該2つの頂点が地面用オブジェクト426の表面よりも下に位置しないようにする。これにより、影領域用オブジェクト423に対応する影領域用テクスチャ424の色情報が地面用オブジェクト426の表面で途切れ、影領域412が中途半端に表示される事態を回避することができる。
ボーン用オブジェクト421の座標、回転角度及びスケールが変更になっても、常に影領域用オブジェクト423の地面側の2つの頂点が地面用オブジェクト426の表面よりも下に位置する大きさで、影領域用オブジェクト423をメモリモジュール133に予め記憶しておく。これにより、影領域用オブジェクト423及び影領域用テクスチャ424の大きさの変更は常に影領域用オブジェクト423及び影領域用テクスチャ424を小さくする変更となる。影領域用オブジェクト423及び影領域用テクスチャ424を大きくする変更と小さくする変更をいずれも行う必要がある場合と比較して、表示CPU131が行う処理の種類を減らすことができる。
影領域用テクスチャ424の変形は、影領域用テクスチャ424のドットを間引くことにより行う。ドットの間引きは、影領域用テクスチャ424のドットを、当該ドットに設定されている色情報の種類別に分類し、各種類の色情報を有するドットの割合を固定して行う。これにより、ドットの間引き前後で影領域412の色合いを維持することができる。
スクリーン領域PC12に対する影領域用オブジェクト423の角度に応じて影領域用オブジェクト423に適用する一律α値を変更する。表示角度が0°以上90°未満の範囲においては、表示角度が大きくなるにつれて一律α値を大きくする。また、表示角度が90°以上180°未満の範囲においては、表示角度が大きくなるにつれて一律α値を小さくする。これにより、スクリーン領域PC12に対する影領域用オブジェクト423の角度が変化しても、表示される影領域412の濃さを一定の範囲内に収めることができる。したがって、表示角度が0°付近又は180°付近である場合に、影領域412が極端に濃く表示され、遊技者に違和感を与える事態を回避することができる。
表示角度が15°未満である場合に、表示角度が15°になるように影領域用オブジェクト423の座標を変更する。また、表示角度が165°以上である場合に、表示角度が164°になるように影領域用オブジェクト423の座標を変更する。これにより、表示角度は常に15°以上165°未満の範囲に保たれる。表示角度が0°付近又は180°付近の値をとらないため、影領域用オブジェクト423に対して一律α値として「0」が設定され、影領域412が非表示となる事態を避けることができる。
<影領域の濃さを一定の範囲内に収める方法の別形態>
影領域用オブジェクト423のスクリーン領域PC12に対する角度に応じて、影領域用オブジェクト423に設定する一律α値を変更することにより、表示される影領域412の濃さを常に一定の範囲内に収める方法について上述した。しかし、表示される影領域412の濃さを常に一定の範囲内に収める方法はこれに限られない。例えば、影領域用オブジェクト423のスクリーン領域PC12に対する角度に応じて、影領域用オブジェクト423の投影データに適用する影領域用テクスチャ424の色情報を変更する構成としてもよい。
具体的には、表示角度が90°から0°にかけて小さくなるにつれて、影領域用テクスチャ424の色情報を黒色から灰色へと薄くする。これにより、表示角度が90°から0°にかけて小さくなるにつれて、影領域412が濃く表示される事態を回避することができる。同様に、表示角度が90°から180°にかけて大きくなるにつれて、影領域用テクスチャ424の色情報を黒色から灰色へと薄くする。これにより、表示角度が90°から180°にかけて大きくなるにつれて、影領域412が濃く表示される事態を回避することができる。
<変形する影領域を表示する方法の別形態>
ボーン用アニメーションデータ及び影用アニメーションデータから4つの頂点431~434の座標を把握し、当該座標に合わせて影領域用オブジェクト423を変形して影領域412を表示する方法について上述した。影領域用オブジェクト423を変形することにより、ボーン用オブジェクト421の座標が変化しても、常にボーン用オブジェクト421近傍及び影用オブジェクト425近傍の影領域412の透明度を高い状態に保つことが可能となる。
しかし、変形する影領域412を表示する方法はこれに限らない。例えば、影領域用オブジェクト423の変形を行わずに、影領域用テクスチャ424のUV座標変換とドットを間引いて行われる影領域用テクスチャ424の縮小により、影領域412を表示する構成としてもよい。
影領域用オブジェクト423の4つの頂点のうち、ボーン用オブジェクト421側の2つの頂点を第5頂点及び第6頂点とするとともに、地面413側の2つの頂点を第7頂点及び第8頂点とする。VDP135は第5頂点及び第6頂点の座標がボーン用オブジェクト421の底面の2つの頂点の座標と同じになるようにして、影領域用オブジェクト423をワールド座標系内に配置する。したがって、影領域用オブジェクト423はボーン用オブジェクト421に追従する。
ボーン用オブジェクト421が地面413から最も高い位置にある場合においても、第7頂点及び第8頂点が地面413よりも下に位置するようなサイズで、影領域用オブジェクト423をメモリモジュール133に記憶しておく。VDP135は第5頂点及び第6頂点の地面413からの高さに応じて影領域用テクスチャ424のUV座標を変換する。例えば、第5頂点及び第6頂点の地面413からの高さが最大時の半分である場合には、UV座標系内の影領域用テクスチャ424について、点(0,1)が点(0,0.5)となり、点(1,1)が点(1,0.5)となるようにv軸方向の座標を変換する。
座標変換の際には、影領域用テクスチャ424のドットの間引きも行う。具体的には、各領域424a~424eに属するドットの数の比が変化しない態様で、各領域424a~424eに属するドットが半分になるように間引きを行う。これにより、影領域用オブジェクト423の投影データに影領域用テクスチャ424を適用すると、影領域用オブジェクト423の上半分に相当する範囲に影領域412の各領域424a~424eが全て表示される。ボーン用オブジェクト421に追従する影領域412を、影領域用テクスチャ424の色合いを損ねることなく表示することができる。
<影領域を変形する方法の別形態>
演出において影領域412のサイズが最大となる場合に対応するサイズでメモリモジュール133に影領域用オブジェクト423を記憶し、影領域用オブジェクト423のサイズが減少する変形のみを行う構成について上述した。この場合、影領域用テクスチャ424の変形もドット数が減少する変形に限定されるため、影領域用オブジェクト423のサイズを大きくする変形及び影領域用オブジェクト423のサイズを小さくする変形の両方を行う場合と比較して、予め記憶するプログラムのデータ量を減らすことができる。
しかし、影領域412を変形する方法はこれに限らない。例えば、演出において影領域412のサイズが最小となる場合に対応するサイズでメモリモジュール133に影領域用オブジェクト423を記憶し、影領域用オブジェクト423のサイズを大きくする変形のみを行う構成としてもよい。この場合、影領域用テクスチャ424の変形もドット数が増加する変形に限定されるため、影領域用オブジェクト423のサイズを大きくする変形及び影領域用オブジェクト423のサイズを小さくする変形の両方を行う場合と比較して、予め記憶するプログラムのデータ量を減らすことができる。なお、影領域用テクスチャ424の変形は、各領域424a~424eに属するドットの数の比が変化しない態様で行う構成とする。
また、影領域用オブジェクト423のサイズを大きくする変形及び影領域用オブジェクト423のサイズを小さくする変形の両方を行う構成としてもよい。演出において最も頻繁に表示されるサイズの影領域412に対応するサイズで影領域用オブジェクト423をメモリモジュール133に記憶することにより、リアルタイムで行う演算の量を減らすことができる。
<影領域を表示する方法の別形態>
影領域用オブジェクト423の投影データに影領域用テクスチャ424を適用して色情報を設定することにより、ボーン用オブジェクト421の影領域412を表示する方法について上述した。しかし、影領域用オブジェクト423に色情報を設定する方法はこれに限らない。例えば、影領域用オブジェクト423の形状を決定するための4つの頂点以外の頂点を有する影領域用オブジェクト523を用い、当該影領域用オブジェクト523の頂点に頂点カラーを設定することにより色情報を設定する構成としてもよい。影領域用テクスチャ424を用いずに影領域表示を行うため、メモリモジュール133に記憶するデータ量を低減することができる。
頂点カラーを設定して影領域表示を行うための具体的な方法について図47(a),(b)を参照しながら説明する。図47(a)は変形を伴わない場合の影領域用オブジェクト523の投影データに頂点カラーが設定された様子を示しており、図47(b)は変形を伴う場合の影領域用オブジェクト523の投影データに頂点カラーが設定された様子を示している。図47(a)に示すように、影領域用オブジェクト523は四角形である。当該四角形の4つの角の頂点を点G、点H、点I及び点Jとする。影領域用オブジェクト523は4つの頂点G~Jの他に6つの頂点K~Pを有している。
線分GJの中点に頂点Kが存在するとともに、線分HIの中点に頂点Lが存在する。また、線分GKの中点に頂点Mが存在するとともに、線分HLの中点に頂点Nが存在する。そして、線分KJの中点に頂点Oが存在するとともに、線分LIの中点に頂点Pが存在する。これら10個の頂点に頂点カラーが設定されることにより影領域表示が行われる。
4つの頂点G~JにはR値、G値及びB値として「0」が設定されるとともに、α値として「0.1」が設定される。また、4つの頂点M,N,O,PにはR値、G値及びB値として「0」が設定されるとともに、α値として「0.4」が設定される。そして、2つの頂点K,LにはR値、G値及びB値として「0」が設定されるとともに、α値として「0.7」が設定される。
これにより、影領域用オブジェクト523において、線分GH及び線分JIの近傍にα値として「0.1」が設定されるとともに、線分MN及び線分OPの近傍にα値として「0.4」が設定される。また、線分KLの近傍にα値として「0.7」が設定される。このように、影領域用オブジェクト523にテクスチャを適用することなく、線分GHから線分KLにかけてα値が増加し、線分KLから線分JIにかけてα値が減少するグラデーションを有する影領域表示を行うことができる。
ボーン用オブジェクト421のワールド座標系内における座標が変化すると、影領域用オブジェクト523が変形する。この場合において、線分GJに対する線分GM、線分MK、線分KO及び線分OJの長さの割合を固定するとともに、線分HIに対する線分HN、線分NL、線分LP及び線分PIの長さの割合を固定して影領域用オブジェクト523の変形を行うことにより、影領域412の色合いを維持することができる。
図47(b)に示すように、変形後の影領域用オブジェクト523においても、線分GH及び線分JIの近傍にα値として「0.1」が設定されるとともに、線分MN及び線分OPの近傍にα値として「0.4」が設定される。また、線分KLの近傍にα値として「0.7」が設定される。このため、線分GJに対する線分GM、線分MK、線分KO及び線分OJの長さの割合と、線分HIに対する線分HN、線分NL、線分LP及び線分PIの長さの割合を維持することにより、影領域412の色合いも維持される。
<板状ポリゴンを用いて追従画像を表示する演出の別形態>
影領域用オブジェクト423として板状ポリゴンを用いることにより、大きな処理負荷を伴うことなく、リアルタイムレンダリングでボーン用オブジェクト421に追従して動く影領域412を表示する方法について上述した。しかし、板状ポリゴンを用いて他の物体に追従して動くものを表示する方法は影領域412の表示以外にも用いることができる。例えば、スポットライトを表示する演出を行う場合に、板状ポリゴンを用いることで、ライトから出た光が地面に届くまでの光の筋を表示することができる。
具体的には、光の筋を表示するための板状ポリゴンがライトに追従して移動する構成とする。これにより、ライトの角度の変化に応じてライトから出る光の筋の角度を変化させることができる。大きな処理負荷を伴うことなく、リアルタイムレンダリングで角度が変わるスポットライトの光を表示する演出を行うことができる。
また、バイクで移動する人を表示する演出を行う場合に、板状ポリゴンを用いることで、風になびくマフラーを表示することができる。具体的には、首に巻いたマフラーにおいて、首回りに固定されておらず、風になびいて動く部分を板状ポリゴンにより表示する。当該板状ポリゴンが、バイクに乗っている人を表示するためのオブジェクトの首の部分に追従して移動する構成とする。マフラーにおいて、首回りに固定されている部分を表示するためのオブジェクトと風になびいて動く部分を表示するための板状ポリゴンの接続角度を周期的に変化させる構成とすることにより、大きな処理負荷を伴うことなく、リアルタイムレンダリングでマフラーが風になびいて揺れる様子を表示することができる。
なお、上述した実施形態の記載内容に限定されず、本発明の趣旨を逸脱しない範囲内で種々の変形改良が可能である。例えば以下のように変更してもよい。ちなみに、以下の別形態の構成を、上記実施形態の構成に対して、個別に適用してもよく、組み合わせて適用してもよい。
(1)演出用の描画データが書き込まれる演出用のバッファと、図柄用の描画データが書き込まれる図柄用のバッファとが個別に設けられており、最終的な生成データの生成に際しては、背景用のバッファに書き込まれた描画データと、演出用のバッファに書き込まれた描画データと、図柄用の描画データに書き込まれた描画データと、が合成される構成としてもよい。また、これに代えて、第1演出用の描画データが作成されるバッファと、第2演出用の描画データが作成されるバッファとが存在していて、第1演出用の描画データは背景用の描画データと図柄用の描画データとの間に存在し、第2演出用の描画データは最前面に存在するように、描画データの合成が行われる構成としてもよい。
(2)カメラ(視点)がワールド座標系に配置されるオブジェクト毎に個別に設定される構成としたが、これに代えて、ワールド座標系に配置される全オブジェクトに対して単一のカメラが共通して設定される構成としてもよい。
(3)オブジェクトをスクリーン領域PC12に投影して得られる投影データに対してテクスチャを適用する構成について上述した。しかし、テクスチャの色情報をオブジェクトの投影データに反映させる方法はこれに限られない。例えば、オブジェクトにテクスチャを貼りつけた後、オブジェクトをスクリーン領域PC12に投影する構成としてもよい。
毛並み表示演出では、ワールド座標系内に積層させて配置された毛並み表示用オブジェクト221a~221eに対して、毛並み表示用テクスチャ223,225,226の貼りつけ及びαデータ222,224,227a~227dの適用を行った後に、毛並み表示用オブジェクト221a~221eがスクリーン領域PC12に投影される。
光影表示演出では、先ずワールド座標系内に配置された地面表示用オブジェクト272の各ドットについて、地面表示用テクスチャを貼りつけることにより設定される色情報と頂点カラーを用いることにより設定される色情報がブレンドされる。次に、当該色情報のブレンドにより得られた色情報を地面表示用オブジェクト272の各ドットに設定される。その後、地面表示用オブジェクト272がスクリーン領域PC12に投影される。
影領域表示演出では、ワールド座標系内に配置された影領域用オブジェクト423に影領域用テクスチャ424が貼りつけられた後、影領域用オブジェクト423がスクリーン領域PC12に投影される。
(4)上記実施形態とは異なる他のタイプのパチンコ機等、例えば特別装置の特定領域に遊技球が入ると電動役物が所定回数開放するパチンコ機や、特別装置の特定領域に遊技球が入ると権利が発生して大当たりとなるパチンコ機、他の役物を備えたパチンコ機、アレンジボール機、雀球等の遊技機にも、本発明を適用できる。
また、弾球式でない遊技機、例えば、複数種の図柄が周方向に付された複数の周回体として複数のリールを備え、メダルの投入及びスタートレバーの操作によりリールの回転を開始し、ストップスイッチが操作されることでリールが停止した後に、表示窓から視認できる有効ライン上に特定図柄又は特定図柄の組み合わせが成立していた場合にはメダルの払い出し等といった特典を遊技者に付与するスロットマシンにも、本発明を適用できる。この場合、スロットマシンの各種制御に対して本発明を適用できるとともに、リールとは別に液晶表示装置といった表示装置を備えた構成においては当該表示制御装置における画像の表示に係る制御に対して本発明を適用できる。
また、取込装置を備え、貯留部に貯留されている所定数の遊技球が取込装置により取り込まれた後にスタートレバーが操作されることによりリールの回転を開始する、パチンコ機とスロットマシンとが融合された遊技機にも、本発明を適用できる。
<上記実施形態から抽出される発明群について>
以下、上述した実施形態から抽出される発明群の特徴について、必要に応じて効果等を示しつつ説明する。なお以下においては、理解の容易のため、上記実施形態において対応する構成を括弧書き等で適宜示すが、この括弧書き等で示した具体的構成に限定されるものではない。
<特徴A群>
特徴A1.仮想3次元空間内に3次元情報であるオブジェクト(毛並み表示用オブジェクト221)の画像データを配置する配置手段(VDP135におけるステップS702~ステップS704の処理を実行する機能)と、前記仮想3次元空間に視点を設定する視点設定手段(VDP135におけるステップS705の処理を実行する機能)と、前記視点に基づいて設定される投影平面(スクリーン領域PC12)に前記オブジェクトの画像データを投影し、当該投影平面に投影されたデータに基づいて生成データ(描画データ)を生成する描画用設定手段(VDP135におけるステップS709~ステップS711の処理を実行する機能)と、を有するデータ生成手段(表示CPU131、ジオメトリ演算部151及びレンダリング部152)によって生成された生成データを記憶する記憶手段(フレームバッファ142)と、
当該記憶手段に記憶された生成データに対応した画像を表示手段(図柄表示装置31)に出力表示する表示制御手段(VDP135の表示回路155)と、
を備えている遊技機において、
前記配置手段は、所定の個別画像(表示対象の毛又は毛並み)を表示させるために前記オブジェクトの画像データとして第1オブジェクトデータ(毛並み表示用オブジェクト221a)と第2オブジェクトデータ(毛並み表示用オブジェクト221b)との両方を前記仮想3次元空間に配置し、前記第1オブジェクトデータ及び前記第2オブジェクトデータの少なくとも一方についての前記仮想3次元空間における配置態様を変更することで前記所定の個別画像の表示態様を変更させる所定配置手段(表示CPU131におけるステップS804、ステップS809、ステップS810及びステップS814~ステップS816の処理を実行する機能、VDP135におけるステップS1002及びステップS1004の処理を実行する機能)を備えていることを特徴とする遊技機。
特徴A1によれば、仮想3次元空間に第1オブジェクトデータと第2オブジェクトデータを配置し、第1オブジェクトデータ及び第2オブジェクトデータの少なくとも一方の配置態様を変更することにより、所定の個別画像の表示態様を変更させる構成である。これにより、予め記憶するデータ量及びリアルタイムで行う演算量を抑制しながら、動きのある所定の個別画像を立体的に表示することができる。
特徴A2.前記オブジェクトの画像データが板状オブジェクトデータであることを特徴とする特徴A1に記載の遊技機。
特徴A2によれば、オブジェクトの画像データとして板状オブジェクトデータを用いることにより、3次元の立体的なオブジェクトデータを用いる場合と比較して、予め記憶するデータ量を抑制することができるとともに処理負荷を軽減することができる。
特徴A3.前記配置手段は、データ記憶手段(メモリモジュール133)に記憶さている1の前記オブジェクトの画像データのアドレスに複数回アクセスすることにより、前記仮想3次元空間に同一の前記オブジェクトの画像データを複数配置することを特徴とする特徴A1又はA2に記載の遊技機。
特徴A3によれば、データ記憶手段に記憶されている1のオブジェクトの画像データを仮想3次元空間に複数配置する構成であるため、全て異なるオブジェクトの画像データを配置する構成と比較して、予め記憶するデータ量を抑制しながら所定の個別画像を表示することができる。
特徴A4.前記所定配置手段は、前記第1オブジェクトデータと前記第2オブジェクトデータと第3オブジェクトデータ(毛並み表示用オブジェクト221c)を、隣り合うオブジェクトデータ間の間隔が異なる態様で前記仮想3次元空間に配置し、前記第1オブジェクトデータ、前記第2オブジェクトデータ及び前記第3オブジェクトデータの少なくとも1のオブジェクトデータについての前記仮想3次元空間における配置態様を変更することで前記所定の個別画像の表示態様を変更させるものであることを特徴とする特徴A1乃至A3のいずれか1に記載の遊技機。
特徴A4によれば、第1オブジェクトデータ、第2オブジェクトデータ及び第3オブジェクトデータが、隣り合うオブジェクトデータ間の間隔が異なる態様で仮想3次元空間に配置され、動かされる構成である。所定の個別画像を表示するためのオブジェクトデータの密度を一定としない構成とすることにより、表示態様の異なる部分からなる所定の個別画像の動きを立体的に表示することが可能となる。
特徴A5.前記所定配置手段は、前記仮想3次元空間において、前記第1オブジェクトデータと前記第2オブジェクトデータの間隔を変更する間隔変更手段(表示CPU131におけるステップS809及びステップS810の処理を実行する機能)を備えていることを特徴とする特徴A1乃至A4にいずれか1に記載の遊技機。
特徴A5によれば、仮想3次元空間におけるオブジェクトデータ間の間隔を変更することにより、同じオブジェクトデータの組を用いながら、演出の途中で所定の個別画像の表示態様を変化させることができる。所定の個別画像の表示態様を変化させるために異なるオブジェクトデータの組に切り替える構成と比較して、予め記憶するオブジェクトデータの数を抑制しながら、所定の個別画像の表示態様を変化させることができる。
特徴A6.前記描画用設定手段は、前記オブジェクトの画像データの一部を透明とする透過性データ(αデータ222,224)を設定して、透明領域(透明領域222a,224a)と複数の孤立した不透明領域(不透明領域222b,224b)を生成する透過性データ設定手段(VDP135におけるステップS1103及びステップS1105~ステップS1108の処理を実行する機能)を備えていることを特徴とする特徴A1乃至A5のいずれか1に記載の遊技機。
特徴A6によれば、透過性データが設定されることにより、オブジェクトの画像データが透明領域と複数の孤立した不透明領域に分けられる。このため、複数の不透明領域の配置態様を一括して変更することができ、複数の孤立した不透明領域の配置態様を個別に変更する場合と比較して、処理負荷を軽減することができる。
特徴A7.前記描画用設定手段は、前記オブジェクトの画像データの一部を半透明とする半透過性データ(αデータ222,224)を設定して、半透明領域(透明領域222a,224a)と複数の孤立した不透明領域(不透明領域222b,224b)を生成する半透過性データ設定手段(表示CPU131におけるステップS905の処理を実行する機能、VDP135におけるステップS1103の処理を実行する機能)を備えていることを特徴とする特徴A1乃至A6のいずれか1に記載の遊技機。
特徴A7によれば、半透過性データを設定することにより、半透明領域と不透明領域の境界をぼやけさせることができる。当該境界は完全透明な領域と不透明領域の境界とは異なる態様で表示される。したがって、半透過性データを設定することにより、完全透過なデータを設定する場合とは異なる態様で所定の個別画像を表示することができる。このため、予め記憶するデータ量を抑制しながら、表示可能な個別画像の種類を増やすことができる。
特徴A8.前記所定配置手段は、前記所定の個別画像における所定方向に並ぶように、前記第1オブジェクトデータ及び前記第2オブジェクトデータを含む複数の並設オブジェクトデータ(毛並み表示用オブジェクト221a~221e)を配置し、
前記データ生成手段は、前記所定の個別画像における前記所定方向の一部の位置に対応する色情報が設定されたテクスチャの画像データ(毛並み表示用テクスチャ223,225,226)を前記複数の並設オブジェクトデータのそれぞれに対応させて利用することによりそれら複数の並設オブジェクトデータに対応する画像の表示を可能とするテクスチャ設定手段(表示CPU131におけるステップS902及びステップS906の処理を実行する機能、VDP135におけるステップS1111の処理を実行する機能)を備えていることを特徴とする特徴A1乃至A7のいずれか1に記載の遊技機。
特徴A8によれば、複数の並設オブジェクトデータに対して、所定の個別画像における所定方向の一部の位置に対応する色情報が設定されたテクスチャの画像データを設定することにより、所定の個別画像を表示することができる。所定の個別画像を表示するための1の立体的なオブジェクトデータを用いる場合と比較して、予め記憶するデータ量を抑制しながら、所定の個別画像を表示することができる。
特徴A9.前記所定配置手段は、複数の前記所定の個別画像が配置された画像における所定方向に並ぶように、前記第1オブジェクトデータ及び前記第2オブジェクトデータを含む複数の並設オブジェクトデータ(毛並み表示用オブジェクト221a~221e)を配置し、
前記データ生成手段は、前記複数の所定の個別画像が配置された画像における前記所定方向の一部の位置に対応する色情報が設定されたテクスチャの画像データ(毛並み表示用テクスチャ225)を前記複数の並設オブジェクトデータのそれぞれに対応させて利用することによりそれら複数の並設オブジェクトデータに対応する画像の表示を可能とする複数用テクスチャ設定手段(表示CPU131におけるステップS902及びステップS906の処理を実行する機能、VDP135におけるステップS1111の処理を実行する機能)を備えていることを特徴とする特徴A1乃至A8のいずれか1に記載の遊技機。
特徴A9によれば、複数の並設オブジェクトデータに対して、複数の所定の個別画像が配置された画像における所定方向の一部の位置に対応する色情報が設定されたテクスチャの画像データを設定することにより、複数の所定の個別画像を一括して表示することができる。複数の所定の個別画像を個別に表示する場合と比較して、処理負荷を軽減することができる。
特徴A10.前記データ生成手段は、 データ記憶手段(メモリモジュール133)に記憶されている1のテクスチャの画像データ(毛並み表示用テクスチャ223,225,226)のアドレスに複数回アクセスすることにより、前記第1オブジェクトデータ及び前記第2オブジェクトデータに同一の前記テクスチャの画像データを設定する同一テクスチャ設定手段(表示CPU131におけるステップS902及びステップS906の処理を実行する機能、VDP135におけるステップS1111の処理を実行する機能)を備えていることを特徴とする特徴A1乃至A9のいずれか1に記載の遊技機。
特徴A10によれば、複数のオブジェクトデータに対して1のテクスチャの画像データを設定することにより、複数のテクスチャの画像データを用いる場合と比較して、予め記憶するデータ量を低減することができる。
特徴A11.前記所定の個別画像は、毛の画像であり、
前記第1オブジェクトデータ及び前記第2オブジェクトデータを含む複数の並設オブジェクトデータは、前記毛の長さ方向に並設されることを特徴とする特徴A1乃至A10のいずれか1に記載の遊技機。
特徴A11によれば、複数のオブジェクトデータを毛の長さ方向に並設して毛を表示することにより、1の立体的なオブジェクトの画像データを用いて毛を表示する場合と比較して、処理負荷を軽減することができる。
なお、特徴A1~A11のいずれか1の構成に対して、特徴A1~A11、特徴B1~B11、特徴C1~C12、特徴D1~D3、特徴E1~E3、特徴F1~F4のうちいずれか1又は複数の構成を適用してもよい。これにより、その組み合わせた構成による相乗的な効果を奏することが可能となる。
上記特徴A群の発明は、以下の課題を解決することが可能である。
遊技機の一種として、パチンコ遊技機やスロットマシン等が知られている。これらの遊技機としては、例えば液晶表示装置といった表示装置を備えたものが知られている。当該遊技機では、画像用のデータが予め記憶されたメモリが搭載されており、当該メモリから読み出された画像用のデータを用いて表示装置の表示部にて所定の画像が表示されることとなる。
近年では、2次元の画像を単純に表示するのではなく、3次元で規定された画像データを用いることで、より立体的な画像の表示を行おうとする試みがなされている。当該表示を行う場合には、仮想3次元空間上に3次元画像データであるオブジェクトが設定され、当該オブジェクトを所望の視点から平面上に投影した生成データが生成される。そして、その生成データに基づいて表示装置に対して信号出力がなされることで、立体的な画像が表示されることとなる。
ここで、表示演出への遊技者の興味を高めるためには、表示演出のさらなる改良を図ることが好ましい。その一方、表示演出のさらなる改良を図る上で、処理負荷が極端に増加してしまうことは好ましくない。
<特徴B群>
特徴B1.仮想3次元空間内に3次元情報であるオブジェクトの画像データ(地面表示用オブジェクト272)を配置する配置手段(VDP135におけるステップS702~ステップS704の処理を実行する機能)と、前記仮想3次元空間に視点を設定する視点設定手段(VDP135におけるステップS705の処理を実行する機能)と、前記視点に基づいて設定される投影平面(スクリーン領域PC12)に前記オブジェクトの画像データを投影し、当該投影平面に投影されたデータに基づいて生成データ(描画データ)を生成する描画用設定手段(VDP135におけるステップS709~ステップS711の処理を実行する機能)と、を有するデータ生成手段(表示CPU131、ジオメトリ演算部151及びレンダリング部152)によって生成された生成データを記憶する記憶手段(フレームバッファ142)と、
当該記憶手段に記憶された生成データに対応した画像を表示手段(図柄表示装置31)に出力表示する表示制御手段(VDP135の表示回路155)と、
を備えている遊技機において、
前記オブジェクトの画像データは複数の頂点データを有しており、
前記描画用設定手段は、
前記オブジェクトの画像データに対応するテクスチャデータ(地面表示用テクスチャ)を利用することにより前記オブジェクトの画像データに対応する画像の表示を可能とするテクスチャ利用手段(VDP135におけるステップS1806及びステップS1811の処理を実行する機能)と、
前記頂点データに頂点色情報(頂点カラー)を設定する色情報設定手段(表示CPU131におけるステップS1305、ステップS1607、ステップS1609、ステップS1614、ステップS1615及びステップS1617の処理を実行する機能、VDP135におけるステップS1802、ステップS1804、ステップS1805、ステップS1809及びステップS1810の処理を実行する機能)と、
前記テクスチャデータにより決定される画像の内容を前記頂点色情報に応じて変更する変更手段(VDP135におけるステップS1807、ステップS1808、ステップS1812及びステップS1813の処理を実行する機能)と、
を備えていることを特徴とする遊技機。
特徴B1によれば、テクスチャデータにより決定される画像の内容を頂点色情報に応じて変更する構成であるため、頂点色情報の設定態様を変更することにより、1つのテクスチャデータから複数の画像を作成することができる。このため、画像の内容毎にテクスチャデータを記憶する場合と比較して、予め記憶するテクスチャデータの数を減らすことができる。また、テクスチャデータにより決定される画像の内容を別のテクスチャデータに応じて変更する場合と比較して、予め記憶するテクスチャデータの数を減らすことができる。
特徴B2.前記色情報設定手段は、隣接する複数の頂点データに対して同一の頂点色情報を設定する同一情報設定手段(VDP135におけるステップS1804、ステップS1805、ステップS1809及びステップS1810の処理を実行する機能)を備えていることを特徴とする特徴B1に記載の遊技機。
特徴B2によれば、隣接する複数の頂点データに対して同一の頂点色情報が設定されるため、各頂点データ周辺の色情報が同じ態様で変更される。具体的には、テクスチャデータにより決定される画像においてある領域が暗くなる態様で変更されることにより、影の領域を表示することが可能となる。また、テクスチャデータにより決定される画像においてある領域が明るくなる態様で変更されることにより、光が当たっている領域を表示することが可能となる。暗領域を表示するためのテクスチャ又は明領域を表示するためのテクスチャを用いる場合と比較して、予め記憶するテクスチャのデータ量を減らすことができる。
特徴B3.前記色情報設定手段は、
前記頂点色情報の設定対象となる前記頂点データの設定範囲を把握する範囲把握手段(表示CPU131におけるステップS1305、ステップS1604、ステップS1605、ステップS1607~ステップS1609、ステップS1614、ステップS1615及びステップS1617の処理を実行する機能、VDP135におけるステップS1802の処理を実行する機能)と、
前記設定範囲の前記仮想3次元空間における位置情報を変更する範囲移動手段(表示CPU131におけるステップS1505の処理を実行する機能)と、
を備えていることを特徴とする特徴B1又はB2に記載の遊技機。
特徴B3によれば、頂点色情報が設定される設定範囲が移動する構成であるため、テクスチャデータにより決定される画像において、内容が変更される範囲が移動する演出を行うことができる。複数のテクスチャデータを用いることにより内容が変更される範囲が移動する演出を行う場合と比較して、予め記憶するテクスチャデータのデータ量を減らすことができる。
特徴B4.前記範囲把握手段は、基準となる基準頂点データ(代表頂点284)の前記仮想3次元空間における位置情報に基づいて前記設定範囲を把握する設定範囲把握手段(表示CPU131におけるステップS1305、ステップS1609及びステップS1617の処理を実行する機能)を備えていることを特徴とする特徴B3に記載の遊技機。
特徴B4によれば、設定範囲が基準頂点データに基づいて把握されるため、各タイミングにおいて頂点色情報の設定対象となる全ての頂点データを記憶する場合と比較して、各タイミングにおいて設定範囲を把握するために必要がデータ量を減らすことができる。
特徴B5.前記配置手段は、
追従対象であるオブジェクトの画像データ(影生成オブジェクト271a~271c)を配置する追従対象配置手段(VDP135におけるステップS1704~ステップS1706の処理を実行する機能)と、
前記追従対象であるオブジェクトの画像データの配置態様を変更する追従対象変更手段(表示CPU131におけるステップS1401、ステップS1503及びステップS1504の処理を実行する機能)と、
を備え、
前記範囲移動手段は、前記設定範囲の前記仮想3次元空間における位置情報を前記追従対象であるオブジェクトの画像データの配置態様の変更に合わせて変更する追従手段(表示CPU131におけるステップS1505の処理を実行する機能)を備えていることを特徴とする特徴B3又はB4に記載の遊技機。
特徴B5によれば、仮想3次元空間において、設定範囲の位置情報が追従対象であるオブジェクトの画像データの位置情報の変化に合わせて変化するため、設定範囲を追従対象であるオブジェクトの画像データに追従させて移動させることができる。複数のテクスチャデータを用いることにより、テクスチャデータにより決定される画像において内容が変更される範囲が追従対象であるオブジェクトの画像データに追従して移動する演出を行う場合と比較して、予め記憶するテクスチャデータのデータ量を減らすことができる。
特徴B6.前記範囲把握手段は、基準となる基準頂点データ(代表頂点284)の前記仮想3次元空間における位置情報に基づいて前記設定範囲を把握し、
前記範囲移動手段は、前記追従対象であるオブジェクトの画像データの仮想3次元空間における位置情報に基づいて前記基準頂点データを把握する基準頂点把握手段(表示CPU131のステップS1505の処理を実行する機能)を備えていることを特徴とする特徴B5に記載の遊技機。
特徴B6によれば、基準頂点データは前記追従対象であるオブジェクトの画像データの仮想3次元空間における位置情報に基づいて把握されるため、前記追従対象であるオブジェクトの画像データの仮想3次元空間における位置情報と基準頂点データを個別に記憶する場合と比較して、予め記憶するデータ量を減らすことができる。
特徴B7.前記範囲把握手段は、前記設定範囲を変更する範囲変更手段(表示CPU131におけるステップS1604、ステップS1605、ステップS1607、ステップS1608、ステップS1613及びステップS1614の処理を実行する機能)を備えていることを特徴とする特徴B3乃至B6のいずれか1に記載の遊技機。
特徴B7によれば、設定範囲が変更可能であるため、テクスチャデータにより決定される画像において、内容が変更される範囲の形状及び大きさが変化する演出を行うことができる。テクスチャデータにより決定される画像の内容を別のテクスチャデータにより変更する構成と比較して、予め記憶するテクスチャデータのデータ量を減らすことができる。
特徴B8.前記範囲把握手段は、前記設定範囲を前記基準頂点把握手段により把握される前記基準頂点データに基づいて把握可能な第1設定範囲(第1領域285~第5領域289の組合せ)から、前記基準頂点把握手段により把握される前記基準頂点データに基づいて把握可能な第2設定範囲(第1領域285~第5領域289の組合せ)に変更する範囲変更手段(表示CPU131におけるステップS1604、ステップS1605、ステップS1607、ステップS1608、ステップS1614及びステップS1615の処理を実行する機能)を備えていることを特徴とする特徴B6に記載の遊技機。
特徴B8によれば、第1設定範囲と第2設定範囲が共に基準頂点把握手段により把握される基準頂点データに基づいて把握されるため、設定範囲が追従対象であるオブジェクトの画像データに追従して移動する演出の途中で設定範囲を変更することができる。
特徴B9.前記範囲変更手段は、前記基準頂点データに基づいて把握可能な複数種類の前記設定範囲の中から、今回前記頂点色情報を設定する対象となる前記設定範囲の種類を把握する種類把握手段(表示CPU131におけるステップS1607及びステップS1614の処理を実行する機能)を備えていることを特徴とする特徴B7又はB8に記載の遊技機。
特徴B9によれば、基準頂点データに基づいて把握可能な複数種類の設定範囲が存在し、当該複数種類の設定範囲の中から今回頂点色情報を設定する対象となる設定範囲が把握される構成である。複数の設定範囲を組合せることにより、記憶されている設定範囲の数よりも多くの種類の範囲について頂点色情報を設定することができる。全ての種類の設定範囲について、設定範囲を把握するためのデータを個別に記憶する場合と比較して、範囲を把握するためのデータ量を減らすことができる。
特徴B10.前記変更手段は、前記テクスチャデータにより決定される画像の内容を前記頂点データに設定されている前記頂点色情報に基づいて暗くする第1変更手段(VDP135におけるステップS1807の処理を実行する機能)を備えていることを特徴とする特徴B1乃至B9のいずれか1に記載の遊技機。
特徴B10によれば、頂点データに設定される頂点色情報に基づいて、テクスチャデータにより決定される画像に設定されている色が暗い色に変更されるため、頂点色情報を設定する頂点データの近傍を周囲よりも暗く表示することができる。テクスチャデータにより決定される画像に影などを導入することができる。
特徴B11.前記変更手段は、前記テクスチャデータにより決定される画像の内容を前記頂点データに設定されている前記頂点色情報に基づいて明るくする第2変更手段(VDP135におけるステップS1812の処理を実行する機能)を備えていることを特徴とする特徴B1乃至B10のいずれか1に記載の遊技機。
特徴B11によれば、頂点データに設定される頂点色情報に基づいて、テクスチャデータにより決定される画像に設定されている色が明るい色に変更されるため、頂点色情報を設定する頂点データの近傍を周囲よりも明るく表示することができる。テクスチャデータにより決定される画像に光で照らされている領域などを導入することができる。
なお、特徴B1~B11のいずれか1の構成に対して、特徴A1~A11、特徴B1~B11、特徴C1~C12、特徴D1~D3、特徴E1~E3、特徴F1~F4のうちいずれか1又は複数の構成を適用してもよい。これにより、その組み合わせた構成による相乗的な効果を奏することが可能となる。
上記特徴B群の発明は、以下の課題を解決することが可能である。
遊技機の一種として、パチンコ遊技機やスロットマシン等が知られている。これらの遊技機としては、例えば液晶表示装置といった表示装置を備えたものが知られている。当該遊技機では、画像用のデータが予め記憶されたメモリが搭載されており、当該メモリから読み出された画像用のデータを用いて表示装置の表示部にて所定の画像が表示されることとなる。
近年では、2次元の画像を単純に表示するのではなく、3次元で規定された画像データを用いることで、より立体的な画像の表示を行おうとする試みがなされている。当該表示を行う場合には、仮想3次元空間上に3次元画像データであるオブジェクトが設定され、当該オブジェクトを所望の視点から平面上に投影した生成データが生成される。そして、その生成データに基づいて表示装置に対して信号出力がなされることで、立体的な画像が表示されることとなる。
ここで、表示演出への遊技者の興味を高めるためには、表示演出のさらなる改良を図ることが好ましい。その一方、表示演出のさらなる改良を図る上で、処理負荷が極端に増加してしまうことは好ましくない。
<特徴C群>
特徴C1.仮想3次元空間内に3次元情報であるオブジェクト(ボーン用オブジェクト421、影領域用オブジェクト423)の画像データを配置する配置手段(VDP135におけるステップS702~ステップS704の処理を実行する機能)と、前記仮想3次元空間に視点を設定する視点設定手段(VDP135におけるステップS705の処理を実行する機能)と、前記視点に基づいて設定される投影平面(スクリーン領域PC12)に前記オブジェクトの画像データを投影し、当該投影平面に投影されたデータに基づいて生成データ(描画データ)を生成する描画用設定手段(VDP135におけるステップS709~ステップS711の処理を実行する機能)と、を有するデータ生成手段(表示CPU131、ジオメトリ演算部151及びレンダリング部152)によって生成された生成データを記憶する記憶手段(フレームバッファ142)と、
当該記憶手段に記憶された生成データに対応した画像を表示手段(図柄表示装置31)に出力表示する表示制御手段(VDP135の表示回路155)と、
を備えている遊技機において、
前記配置手段は、前記オブジェクトの画像データとして、特定の個別画像を表示するための特定オブジェクトデータ(ボーン用オブジェクト421)と、前記特定の個別画像の動きに追従する追従画像を表示するための追従オブジェクトデータ(影領域用オブジェクト423)とを前記仮想3次元空間に配置する手段を備え、
前記追従オブジェクトデータは、板状オブジェクトデータであることを特徴とする遊技機。
特徴C1によれば、追従オブジェクトデータとして板状オブジェクトデータを使用することにより、大きな処理負荷を伴うことなく、リアルタイムレンダリングで特定の個別画像に追従して動く追従画像を表示することができる。
特徴C2.前記配置手段は、前記仮想3次元空間において、前記特定オブジェクトデータの位置情報と、他の画像(地面413、影414)を表示するための他のオブジェクトデータ(影用オブジェクト425、地面用オブジェクト426)の位置情報とに基づいて、前記追従オブジェクトデータの位置情報を把握する位置把握手段(表示CPU131におけるステップS2007及びステップS2110の処理を実行する機能)を備えていることを特徴とする特徴C1に記載の遊技機。
特徴C2によれば、仮想3次元空間における追従オブジェクトデータの位置情報は特定オブジェクトデータ及び他のオブジェクトデータの位置情報に基づいて把握されるため、追従オブジェクトデータ、特定オブジェクトデータ及び他のオブジェクトデータの仮想3次元空間における位置情報を個別に記憶する場合と比較して、予め記憶するデータ量を減らすことができる。
特徴C3.前記配置手段は、
前記オブジェクトの画像データとして地面画像(地面413)を表示するための地面オブジェクトデータ(地面用オブジェクト426)を前記仮想3次元空間に配置する手段と、
前記仮想3次元空間において、前記特定オブジェクトデータを前記地面オブジェクトデータの上方に配置する手段と、
前記仮想3次元空間において、前記追従オブジェクトデータが前記特定オブジェクトデータから前記地面オブジェクトデータに向かって延びる態様で前記追従オブジェクトデータを配置する手段と、
を備えていることを特徴とする特徴C1又はC2に記載の遊技機。
特徴C3によれば、追従画像が特定の個別画像から地面画像に向かって延びる態様で表示されるため、大きな処理負荷を伴うことなく、リアルタイムレンダリングで特定の個別画像から地面画像に向かって影が延びる様子を表示することができる。
特徴C4.前記追従オブジェクトデータは、前記特定オブジェクトデータと前記地面オブジェクトデータの距離が最も離れる場合においても、前記追従オブジェクトデータの一部が前記地面オブジェクトデータの下方に位置する大きさを初期状態において有しているものであることを特徴とする特徴C3に記載の遊技機。
特徴C4によれば、追従オブジェクトデータの一部は常に地面オブジェクトデータの下方に位置するため、追従オブジェクトデータが地面オブジェクトデータに届くように追従オブジェクトデータを拡大する処理は不要である。特定オブジェクトデータと地面オブジェクトデータの距離に応じて追従オブジェクトデータを拡大したり、縮小したりする構成と比較して、予め記憶するプログラムのデータ量を減らすことができる。
特徴C5.前記配置手段は、前記追従オブジェクトデータの一部が前記地面オブジェクトデータの下方に位置する場合に、前記追従オブジェクトデータの最も低い位置が地面オブジェクトデータの上側表面と同じ位置になる態様で、前記追従オブジェクトデータを変形するオブジェクト変形手段(表示CPU131におけるステップS2007及びステップS2110の処理を実行する機能)を備えていることを特徴とする特徴C3又はC4に記載の遊技機。
特徴C5によれば、追従オブジェクトデータは、追従オブジェクトデータの最も低い位置が地面オブジェクトデータの上側表面と同じ位置になる態様で変形されるため、追従オブジェクトデータに対応するテクスチャの適用対象は地面オブジェクトの上側表面よりも上方に位置する。追従オブジェクトデータに対応するテクスチャデータの適用対象が地面オブジェクトよりも下方に存在し、当該テクスチャデータの画像が地面オブジェクトに隠れて途切れた状態で表示される事態を回避することができる。
特徴C6.前記描画用設定手段は、前記追従オブジェクトデータに対応するテクスチャデータ(影領域用テクスチャ424)を利用することにより前記追従オブジェクトデータに対応する画像の表示を可能とするテクスチャ利用手段(表示CPU131におけるステップS1912の処理を実行する機能、VDP135におけるステップS2202及びステップS2209の処理を実行する機能)と、
前記オブジェクト変形手段により変形した前記追従オブジェクトデータの形状に対応させて、前記テクスチャデータを変形させる場合に、前記テクスチャデータのドットの数を調整するテクスチャ変形手段(VDP135におけるステップS2208の処理を実行する機能)と、
を備えていることを特徴とする特徴C5に記載の遊技機。
特徴C6によれば、変形した追従オブジェクトデータの形状に対応する態様でテクスチャデータが変形されるため、変形後のテクスチャデータの画像全体を表示することができる。このため、テクスチャデータの画像が部分的に表示されることにより、遊技者に違和感を与える事態を回避することができる。
特徴C7.前記追従オブジェクトデータは、前記特定オブジェクトデータと前記地面オブジェクトデータの距離が最も離れる場合においても、前記追従オブジェクトデータの一部が前記地面オブジェクトデータの下方に位置する大きさを初期状態において有し、
前記テクスチャ変形手段は、前記オブジェクト変形手段により変形した前記追従オブジェクトデータの形状に対応させて、前記テクスチャデータの変形を行う場合に、前記テクスチャデータのドットの数を減少させることを特徴とする特徴C6に記載の遊技機。
特徴C7によれば、テクスチャデータの変形は、テクスチャデータのサイズを減少させる変形に限定されるため、テクスチャデータのサイズを増大させる変形及びテクスチャデータのサイズを減少させる変形を共に実行する構成と比較して、予め記憶するプログラムのデータ量を減らすことができる。また、テクスチャデータを変形する場合に、テクスチャデータのドットの数を減少させるため、変形前のテクスチャデータに使用されていた色情報を変形後のテクスチャデータのドットに設定することができる。
特徴C8.前記テクスチャデータには、隣接するドットに第1の色情報が設定されている第1同色領域(例えば第11領域424a)及び隣接するドットに第2の色情報が設定されている第2同色領域(例えば第12領域424b)が含まれており、
前記テクスチャ変形手段は、各前記同色領域に属するドットの数の比が変化しない態様で前記テクスチャデータのドットを間引く色合い保持手段(VDP135におけるステップS2208の処理を実行する機能)を備えていることを特徴とする特徴C7に記載の遊技機。
特徴C8によれば、各同色領域に属するドットの数の比が変化しない態様でテクスチャデータの変形が行われるため、変形の前後でテクスチャデータの色合いを保持することができる。
特徴C9.前記描画用設定手段は、前記仮想3次元空間における前記追従オブジェクトデータの前記投影平面に対する投影角度(表示角度)に応じて、前記追従オブジェクトデータを構成するドットに対して透過性情報(α値)を設定する透過性設定手段(表示CPU131におけるステップS1910の処理を実行する機能、VDP135におけるステップS2203及びステップS2205の処理を実行する機能)を備えていることを特徴とする特徴C1乃至C8のいずれか1に記載の遊技機。
特徴C9によれば、追従オブジェクトデータの投影平面に対する角度に応じて追従オブジェクトデータを構成するドットに対して透過性情報が設定される。これにより、追従オブジェクトデータの投影平面に対する投影角度の変化に伴う追従画像の色合いの変化を防ぐことができる。
特徴C10.前記透過性設定手段は、
前記投影角度が第1範囲(表示角度が0°以上15°未満の範囲)にある場合に、前記追従オブジェクトデータを構成するドットに対して第1透過性情報(「0」の一律α値)を設定する第1透過性設定手段(表示CPU131におけるステップS1910の処理を実行する機能、VDP135におけるステップS2203の処理を実行する機能)と、
前記投影角度が第2範囲(表示角度が15°以上30°未満の範囲)にある場合に、前記追従オブジェクトデータを構成するドットに対して第2透過性情報(「0.2」の一律α値)を設定する第2透過性設定手段(表示CPU131におけるステップS1910の処理を実行する機能、VDP135におけるステップS2203の処理を実行する機能)と、
を備えていることを特徴とする特徴C9に記載の遊技機。
特徴C10によれば、投影角度が第1範囲にある場合と第2範囲にある場合では、追従オブジェクトデータに設定される透過性情報が異なる。投影角度に応じて追従オブジェクトデータに設定する透過性情報を変更することにより、投影角度の変化に伴う追従画像の色合いの変化を防ぐことができる。
特徴C11.前記透過性設定手段は、前記投影角度が特定の範囲(表示角度が0°以上15°未満及び165°以上180°以下の範囲)にあり、前記追従オブジェクトデータが特定の面積以下で表示される場合に、前記追従オブジェクトデータを構成するドットに対して完全透過(「0」の一律α値)の前記透過性情報を設定する完全透過性設定手段(表示CPU131におけるステップS1910の処理を実行する機能、VDP135におけるステップS2203の処理を実行する機能)を備えていることを特徴とする特徴C9又はC10に記載の遊技機。
特徴C11によれば、投影角度が特定の範囲にあり、追従オブジェクトデータが特定の面積以下で表示される場合には、追従オブジェクトデータに完全透過の透過性情報を設定し、追従オブジェクトデータの表示を行わない構成である。このため、追従オブジェクトデータの表示面積が小さくなり、追従画像が直線状に表示されて遊技者に違和感を与えることを回避することができる。
特徴C12.前記配置手段は、前記追従オブジェクトデータの前記投影平面に対する投影角度(表示角度)が所定の範囲(表示角度が15°以上165°未満の範囲)から外れた場合に、前記投影角度が前記所定の範囲内に収まるように前記追従オブジェクトデータの配置態様を変更する配置態様変更手段(表示CPU131におけるステップS1909の処理を実行する機能)を備えていることを特徴とする特徴C1乃至C11のいずれか1に記載の遊技機。
特徴C12によれば、追従オブジェクトデータは、投影平面に対する投影角度が常に所定の範囲内に収まるように配置される。これにより、追従オブジェクトデータの投影角度が所定の範囲を外れ、遊技者に違和感を与える態様で追従画像が表示されることを防ぐことができる。
なお、特徴C1~C12のいずれか1の構成に対して、特徴A1~A11、特徴B1~B11、特徴C1~C12、特徴D1~D3、特徴E1~E3、特徴F1~F4のうちいずれか1又は複数の構成を適用してもよい。これにより、その組み合わせた構成による相乗的な効果を奏することが可能となる。
上記特徴C群の発明は、以下の課題を解決することが可能である。
遊技機の一種として、パチンコ遊技機やスロットマシン等が知られている。これらの遊技機としては、例えば液晶表示装置といった表示装置を備えたものが知られている。当該遊技機では、画像用のデータが予め記憶されたメモリが搭載されており、当該メモリから読み出された画像用のデータを用いて表示装置の表示部にて所定の画像が表示されることとなる。
近年では、2次元の画像を単純に表示するのではなく、3次元で規定された画像データを用いることで、より立体的な画像の表示を行おうとする試みがなされている。当該表示を行う場合には、仮想3次元空間上に3次元画像データであるオブジェクトが設定され、当該オブジェクトを所望の視点から平面上に投影した生成データが生成される。そして、その生成データに基づいて表示装置に対して信号出力がなされることで、立体的な画像が表示されることとなる。
ここで、表示演出への遊技者の興味を高めるためには、表示演出のさらなる改良を図ることが好ましい。その一方、表示演出のさらなる改良を図る上で、処理負荷が極端に増加してしまうことは好ましくない。
<特徴D群>
特徴D1.画像データ(影生成オブジェクト271a~271c、地面表示用オブジェクト272)に基づいてデータ生成手段(表示CPU131、ジオメトリ演算部151及びレンダリング部152)により生成された生成データ(描画データ)を記憶する記憶手段(フレームバッファ142)と、
当該記憶手段に記憶された前記生成データに対応した画像を表示手段(図柄表示装置31)に出力表示する表示制御手段(VDP135の表示回路155)と、
を備えている遊技機において、
前記データ生成手段は、所定画像(影生成オブジェクト271a~271c)の動きに追従するように特定画像(影281~283)を表示させる場合に、前記生成データを生成する場合に前記所定画像を表示させるためのデータ(影生成オブジェクト271a~271c)に適用する表示位置情報を利用して、前記生成データを生成する場合に前記特定画像を表示させるためのデータ(影281~283に含まれる頂点の座標データ)に適用する表示位置情報を導出する位置導出手段(表示CPU131におけるステップS1305、ステップS1402、ステップS1505、ステップS1609及びステップS1617の処理を実行する機能)を備えていることを特徴とする遊技機。
特徴D1によれば、所定画像を表示させるためのデータに適用する表示位置情報を利用して、特定画像を表示させるためのデータに適用する表示位置情報を導出することにより、所定画像の動きに追従する特定画像を表示することができる。所定画像を動かすためのデータと特定画像を動かすためのデータを個別に記憶する場合と比較して、特定画像を表示させるためのデータに適用する表示位置情報を把握するために記憶するデータ量を減らすことができる。
特徴D2.前記位置導出手段は、前記特定画像を表示させるためのデータのうち基準となるデータ(代表頂点284)の表示位置情報を、前記所定画像を表示させるためのデータに適用する表示位置情報を利用して導出し、その導出した表示位置情報を利用して前記特定画像を表示させるための他のデータの表示位置情報を導出することを特徴とする特徴D1に記載の遊技機。
特徴D2によれば、基準となるデータの表示位置情報を利用して、特定画像を表示するためのデータの表示位置情報が導出されるため、特定画像を表示するためのデータの表示位置情報を個別に導出する場合と比較して、処理負荷を軽減することができる。
特徴D3.前記位置導出手段は、前記基準となるデータの表示位置情報を利用して、前記特定画像を表示させるためのデータのうち前記基準となるデータ以外のデータの表示位置情報を導出するために、前記基準となるデータに対する相対的な位置関係の情報が設定された位置データ群(範囲指定テーブルTB2に記憶されている座標データ)を利用することを特徴とする特徴D2に記載の遊技機。
特徴D3によれば、特定画像を表示させるためのデータのうち基準となるデータ以外のデータの表示位置情報は、基準となるデータに対する相対的な位置関係の情報が設定された位置データ群を利用して導出されるため、各タイミングにおける位置情報群を全て記憶する場合と比較して、予め記憶するデータ量を減らすことができる。
なお、特徴D1~D3のいずれか1の構成に対して、特徴A1~A11、特徴B1~B11、特徴C1~C12、特徴D1~D3、特徴E1~E3、特徴F1~F4のうちいずれか1又は複数の構成を適用してもよい。これにより、その組み合わせた構成による相乗的な効果を奏することが可能となる。
上記特徴D群の発明は、以下の課題を解決することが可能である。
遊技機の一種として、パチンコ遊技機やスロットマシン等が知られている。これらの遊技機としては、例えば液晶表示装置といった表示装置を備えたものが知られている。当該遊技機では、画像用のデータが予め記憶されたメモリが搭載されており、当該メモリから読み出された画像用のデータを用いて表示装置の表示部にて所定の画像が表示されることとなる。
近年では、2次元の画像を単純に表示するのではなく、3次元で規定された画像データを用いることで、より立体的な画像の表示を行おうとする試みがなされている。当該表示を行う場合には、仮想3次元空間上に3次元画像データであるオブジェクトが設定され、当該オブジェクトを所望の視点から平面上に投影した生成データが生成される。そして、その生成データに基づいて表示装置に対して信号出力がなされることで、立体的な画像が表示されることとなる。
ここで、表示演出への遊技者の興味を高めるためには、表示演出のさらなる改良を図ることが好ましい。その一方、表示演出のさらなる改良を図る上で、処理負荷が極端に増加してしまうことは好ましくない。
<特徴E群>
特徴E1.画像データ(影生成オブジェクト271a~271c、地面表示用オブジェクト272)に基づいてデータ生成手段(表示CPU131、ジオメトリ演算部151及びレンダリング部152)により生成された生成データ(描画データ)を記憶する記憶手段(フレームバッファ142)と、
当該記憶手段に記憶された前記生成データに対応した画像を表示手段(図柄表示装置31)に出力表示する表示制御手段(VDP135の表示回路155)と、
を備えている遊技機において、
前記データ生成手段は、所定範囲画像(影281~283)を表示させるために、前記生成データを生成するための生成対象データ(地面表示用オブジェクト272)のうち所定範囲データ(影281~283に含まれる地面表示用オブジェクト272の頂点)に所定処理(頂点に頂点カラーを設定する処理)を実行する所定処理実行手段(表示CPU131におけるステップS1305、ステップS1607、ステップS1609、ステップS1614、ステップS1615及びステップS1617の処理を実行する機能、VDP135におけるステップS1802、ステップS1804、ステップS1805、ステップS1809及びステップS1810の処理を実行する機能)を備え、
当該所定処理実行手段は、
前記生成対象データにおいて基準データ(代表頂点284の座標)を決定する決定手段(表示CPU131におけるステップS1402及びステップS1505の処理を実行する機能)と、
前記基準データに対応する相対的な位置関係が定められた位置関係データ(範囲指定テーブルTB2)を利用することにより前記生成対象データのうち前記所定範囲データに含まれるデータを導出する導出手段(表示CPU131におけるステップS1305、ステップS1609及びステップS1617の処理を実行する機能)と、
を備えていることを特徴とする遊技機。
特徴E1によれば、基準データを決定し、位置関係データを利用して所定範囲データに含まれるデータを導出するため、各タイミングにおいて所定範囲データに含まれるデータを全て記憶する構成と比較して、所定範囲データに含まれるデータを把握するために予め記憶するデータ量を減らすことができる。
特徴E2.前記決定手段は、前記基準データを変更する基準変更手段(表示CPU131におけるステップS1505の処理を実行する機能)を備えていることを特徴とする特徴E1に記載の遊技機。
特徴E2によれば、基準データに対応する相対的な位置関係が定められた位置関係データを利用して所定範囲データに含まれるデータを算出する構成において、基準データを変更することにより、所定範囲データに含まれるデータを変更することができる。これにより、所定範囲データに含まれるデータを把握するために予め記憶するデータ量を抑制しつつ、所定範囲画像の表示位置を変更することができる。
特徴E3.前記位置関係データには、前記基準データに対応する第1の相対的な位置関係が定められた第1位置関係データ(例えば範囲指定テーブルTB2に記憶されている第1領域285の座標データ)と前記基準データに対応する第2の相対的な位置関係が定められた第2位置関係データ(例えば範囲指定テーブルTB2に記憶されている第2領域286の座標データ)とが含まれ、
前記導出手段は、前記生成データのうち前記所定範囲データに含まれるデータを導出する場合に利用する位置関係データを第1位置関係データから第2位置関係データに変更する位置関係変更手段を備えていることを特徴とする特徴E1又はE2に記載の遊技機。
特徴E3によれば、所定範囲データに含まれるデータを導出する場合に利用する位置関係データの種類を変更することにより、所定範囲データに含まれるデータを変更する構成である。同一の基準データを用いながら所定範囲画像の範囲を変更することができるため、基準データを新たに決定する必要がなく、処理負荷を軽減することができる。
なお、特徴E1~E3のいずれか1の構成に対して、特徴A1~A11、特徴B1~B11、特徴C1~C12、特徴D1~D3、特徴E1~E3、特徴F1~F4のうちいずれか1又は複数の構成を適用してもよい。これにより、その組み合わせた構成による相乗的な効果を奏することが可能となる。
上記特徴E群の発明は、以下の課題を解決することが可能である。
遊技機の一種として、パチンコ遊技機やスロットマシン等が知られている。これらの遊技機としては、例えば液晶表示装置といった表示装置を備えたものが知られている。当該遊技機では、画像用のデータが予め記憶されたメモリが搭載されており、当該メモリから読み出された画像用のデータを用いて表示装置の表示部にて所定の画像が表示されることとなる。
近年では、2次元の画像を単純に表示するのではなく、3次元で規定された画像データを用いることで、より立体的な画像の表示を行おうとする試みがなされている。当該表示を行う場合には、仮想3次元空間上に3次元画像データであるオブジェクトが設定され、当該オブジェクトを所望の視点から平面上に投影した生成データが生成される。そして、その生成データに基づいて表示装置に対して信号出力がなされることで、立体的な画像が表示されることとなる。
ここで、表示演出への遊技者の興味を高めるためには、表示演出のさらなる改良を図ることが好ましい。その一方、表示演出のさらなる改良を図る上で、処理負荷が極端に増加してしまうことは好ましくない。
<特徴F群>
特徴F1.仮想3次元空間内に3次元情報であるオブジェクトの画像データ(ボーン用オブジェクト421、影領域用オブジェクト423)を配置する配置手段(VDP135におけるステップS702~ステップS704の処理を実行する機能)と、前記仮想3次元空間に視点を設定する視点設定手段(VDP135におけるステップS705の処理を実行する機能)と、前記視点に基づいて設定される投影平面(スクリーン領域PC12)に前記オブジェクトの画像データを投影し、当該投影平面に投影されたデータに基づいて生成データ(描画データ)を生成する描画用設定手段(VDP135におけるステップS709~ステップS711の処理を実行する機能)と、を有するデータ生成手段(表示CPU131、ジオメトリ演算部151及びレンダリング部152)によって生成された生成データを記憶する記憶手段(フレームバッファ142)と、
当該記憶手段に記憶された生成データに対応した画像を表示手段(図柄表示装置31)に出力表示する表示制御手段(VDP135の表示回路155)と、
を備えている遊技機において、
前記描画用設定手段は、
前記オブジェクトの画像データに対応するテクスチャの画像データ(影領域用テクスチャ424)を利用することにより前記オブジェクトの画像データに対応する画像(影領域412)の表示を可能とするテクスチャ利用手段(表示CPU131におけるステップS1912の処理を実行する機能、VDP135におけるステップS2202及びステップS2209の処理を実行する機能)と、
前記テクスチャの画像データのドットの数を変更する変更手段(VDP135におけるステップS2208の処理を実行する機能)と、
を備えていることを特徴とする遊技機。
特徴F1によれば、テクスチャの画像データのドットを変更することにより、テクスチャの画像データのサイズを大きくする変更及びテクスチャの画像データのサイズを小さくする変更を行うことができる。
特徴F2.前記変更手段は、前記テクスチャの画像データを縮小する場合に、前記テクスチャの画像データのドットの数を減少させるテクスチャ縮小手段(VDP135におけるステップS2208の処理を実行する機能)を備えていることを特徴とする特徴F1に記載の遊技機。
特徴F2によれば、テクスチャの画像データを縮小する場合にテクスチャの画像データのドットの数を減少させるため、縮小前のテクスチャの画像データに設定されていた色情報を縮小後のテクスチャの画像データのドットに設定することができる。
特徴F3.前記配置手段は、前記オブジェクトの画像データを縮小するオブジェクト縮小手段(表示CPU131におけるステップS2007及びステップS2110の処理を実行する機能)を備え、
前記テクスチャ縮小手段は、前記オブジェクト縮小手段により縮小された前記オブジェクトの画像データに対応する態様で前記テクスチャの画像データの縮小を行うものであることを特徴とする特徴F2に記載の遊技機。
特徴F3によれば、縮小されたオブジェクトの画像データに対応する態様でテクスチャの画像データが縮小されるため、縮小後のテクスチャの画像データの全体を表示することができる。このため、テクスチャの画像データが部分的に表示される態様となり、遊技者に違和感を与える事態を回避することができる。
特徴F4.前記テクスチャの画像データには、隣接するドットに第1の色情報が設定されている第1同色領域(例えば第11領域424a)及び隣接するドットに第2の色情報が設定されている第2同色領域(例えば第12領域424b)が含まれており、
前記テクスチャ縮小手段は、各前記同色領域に属するドットの数の比が変化しない態様で前記テクスチャデータのドットを間引く色合い保持手段(VDP135におけるステップS2208の処理を実行する機能)を備えていることを特徴とする特徴F2又は特徴F3に記載の遊技機。
特徴F4によれば、各同色領域に属するドットの数の比が変化しない態様でテクスチャの画像データの縮小が行われるため、縮小の前後でテクスチャの画像データの色合いを保持することができる。
なお、特徴F1~F4のいずれか1の構成に対して、特徴A1~A11、特徴B1~B11、特徴C1~C12、特徴D1~D3、特徴E1~E3、特徴F1~F4のうちいずれか1又は複数の構成を適用してもよい。これにより、その組み合わせた構成による相乗的な効果を奏することが可能となる。
上記特徴F群の発明は、以下の課題を解決することが可能である。
遊技機の一種として、パチンコ遊技機やスロットマシン等が知られている。これらの遊技機としては、例えば液晶表示装置といった表示装置を備えたものが知られている。当該遊技機では、画像用のデータが予め記憶されたメモリが搭載されており、当該メモリから読み出された画像用のデータを用いて表示装置の表示部にて所定の画像が表示されることとなる。
近年では、2次元の画像を単純に表示するのではなく、3次元で規定された画像データを用いることで、より立体的な画像の表示を行おうとする試みがなされている。当該表示を行う場合には、仮想3次元空間上に3次元画像データであるオブジェクトが設定され、当該オブジェクトを所望の視点から平面上に投影した生成データが生成される。そして、その生成データに基づいて表示装置に対して信号出力がなされることで、立体的な画像が表示されることとなる。
ここで、表示演出への遊技者の興味を高めるためには、表示演出のさらなる改良を図ることが好ましい。その一方、表示演出のさらなる改良を図る上で、処理負荷が極端に増加してしまうことは好ましくない。
以下に、以上の各特徴を適用し得る遊技機の基本構成を示す。
パチンコ遊技機:遊技者が操作する操作手段と、その操作手段の操作に基づいて遊技球を発射する遊技球発射手段と、その発射された遊技球を所定の遊技領域に導く球通路と、遊技領域内に配置された各遊技部品とを備え、それら各遊技部品のうち所定の通過部を遊技球が通過した場合に遊技者に特典を付与する遊技機。
スロットマシン等の回胴式遊技機:始動操作手段の操作に基づき周回体の回転を開始させ、停止操作手段の操作に基づき周回体の回転を停止させ、その停止後の絵柄に応じて遊技者に特典を付与する遊技機。