以下、適宜図面を参照しつつ、本発明の遊技機の一実施形態に係る遊技機1について説明する。
[遊技機1の概略構成]
まず、遊技機1の概略構成について説明する。図1は、遊技機1の一例を示す概略正面図である。遊技機1は、例えば遊技者の指示操作により打ち出された遊技球が入賞すると賞球を払い出すように構成されたパチンコ遊技機である。図1に示されるように、遊技機1は、遊技球が打ち出される遊技盤2と、遊技盤2を囲む枠部材3とを備えている。枠部材3は、遊技盤2の表面側(図1の紙面手前側)に遊技盤2と所定の間隔を隔てて平行に配置された透明板を支持する部材であり、遊技盤2に対して蝶番を介して開閉可能に構成されると共に、遊技盤2に対して着脱可能に構成されている。
枠部材3に支持された透明板と遊技盤2との間には、遊技球が移動する遊技領域20が形成されている。遊技者がハンドル31を握ってレバー32を時計方向へ回転させると、ハンドル31の回転角度に応じた打球力で不図示の発射装置から遊技球が発射される。図には示されていないが、遊技盤2には、発射装置から発射された遊技球を遊技領域20へ案内するガイド部材が設けられており、遊技球は、このガイド部材によって遊技領域20の上部位置へ案内される。遊技球は、遊技領域20に配置された不図示の遊技クギや風車等に接触することでその移動方向を変化させながら、遊技盤2の表面に沿って落下する。
遊技領域20には、入賞や抽選に関する役物として、第1始動口21、第2始動口22、大入賞口23、普通入賞口24、およびゲート25等が設けられている。また、遊技領域20における大入賞口23の下方には、第1始動口21、第2始動口22、大入賞口23、普通入賞口24に入らなかった遊技球を遊技領域20の外へ排出する排出口26が設けられている。
第1始動口21および第2始動口22は、後述するメイン表示器5の下方に設けられている。第1始動口21および第2始動口22は、第1始動口21を第2始動口22の上側として所定の間隔を隔てて上下に並んで配置されている。遊技機1では、第1始動口21または第2始動口22に遊技球が入賞することで、大当たり抽選が実行される。なお、以下の説明では、第1始動口21への遊技球の入賞を契機として実行される大当たり抽選を第1特別図柄抽選と呼び、第2始動口22への遊技球の入賞を契機として実行される大当たり抽選を第2特別図柄抽選と呼び、第1特別図柄抽選および第2特別図柄抽選を総称して特別図柄抽選と呼ぶものとする。
第1始動口21と第2始動口22との間には、チューリップの花を模した一対の羽根部材を有する電動チューリップ27が配置されている。電動チューリップ27は、一対の羽根部材が閉じた閉姿勢(図1参照)と、一対の羽根部材が開いた開姿勢(不図示)との間で姿勢変化可能に構成されており、不図示の電動ソレノイドが作動することによって姿勢変化する。
電動チューリップ27の一対の羽根部材が閉姿勢の状態では、第1始動口21を構成する部材および電動チューリップ27によって第2始動口22への遊技球の進入経路が塞がれており、遊技球が第2始動口22へ入ることはない。これに対して、遊技球がゲート25を通過すると、普通図柄抽選(電動チューリップ27の開閉抽選)が実行され、この普通図柄抽選に当選すると、電動チューリップ27の一対の羽根部材が規定時間だけ開姿勢を維持した後に閉姿勢に戻る動作が規定回数行われる。このように、普通図柄抽選に当選することで、第2始動口22への遊技球の進入経路が開放されて、遊技球が第2始動口22に入賞可能となる。すなわち、第2特別図柄抽選の実行が可能な状態となる。なお、電動チューリップ27の動作に関する規定時間および規定回数は、遊技機1の遊技状態に応じて変更されることがある。
普通入賞口24は、ゲート25の下方に配置されている。普通入賞口24に遊技球が入賞した場合、抽選は実行されないが、第1始動口21や第2始動口22に遊技球が入賞した場合よりも多い賞球が払い出される。
大入賞口23は、第2始動口22の下方に配置されている。大入賞口23は、特別図柄抽選の結果に応じて開放される。大入賞口23の開口部には、大入賞口23を開閉するプレートが設けられている。特別図柄抽選に当選していない状態では、このプレートが遊技盤2の表面と同一平面を形成する姿勢となっているために、大入賞口23に遊技球が入らない状態となっている。これに対して、特別図柄抽選に当選すると、プレートの下端側を軸としてプレートの上端側が遊技盤2の表面側へ傾倒して、大入賞口23が開放される。
ここで、賞球の払い出しについて説明する。第1始動口21、第2始動口22、大入賞口23、および普通入賞口24に遊技球が入って入賞すると、入賞した場所に応じた個数の賞球(遊技球)が払い出される。例えば、第1始動口21または第2始動口22に遊技球が入賞すると4個の賞球が払い出され、大入賞口23に遊技球が入賞すると13個の賞球が払い出され、普通入賞口24に遊技球が入賞すると10個の賞球が払い出される。なお、遊技球がゲート25を通過しても賞球が払い出されることはない。
遊技盤2の中央部には、演出のための各種の画像を表示するメイン表示器5およびサブ表示器6が設けられている。サブ表示器6には、遊技者側から入射する光の変化を検出するサブ光センサ606が設けられている。なお、メイン表示器5およびサブ表示器6については、後に詳述する。
メイン表示器5と近接する位置に、各種の演出に用いられる盤ランプ8および可動役物7が設けられている。盤ランプ8は、遊技者による遊技の進行に応じて発光することによって光による各種の演出を行う。可動役物7は、遊技盤2に対して可動に構成されており、例えば内蔵された発光素子を発光させながら回動することによって各種の演出を行う。なお、本実施形態では、遊技盤2に対して可動に構成された装飾役物が可動役物7のみである場合について説明するが、さらに他の可動役物が設けられていてもよい。
図2は、遊技機1の一部の一例を示す概略平面図である。図1および図2に示されるように、枠部材3には、ハンドル31およびレバー32の他に、停止ボタン33、取り出しボタン34、スピーカ35、枠ランプ36、演出ボタン37、演出キー38、および皿39が設けられている。
皿39は、枠部材3から遊技機1の正面側へ突出するように設けられており、上述の発射装置へ供給される遊技球を一時的に溜めるものである。この皿39には、上述のように払い出された賞球が排出される。遊技者がハンドル31を握ってレバー32を時計方向へ回転させると、皿39に溜められた遊技球が発射装置へ供給されて、遊技領域20へ所定の時間間隔で発射される。この遊技球の発射は、遊技者が停止ボタン33を押下することによって一時的に停止される。
取り出しボタン34は、皿39と近接する位置に設けられている。遊技者が取り出しボタン34を操作すると、皿39の下面の一部が開口されて、皿39に溜まった遊技球が皿39の下方に配置された不図示の箱へ落下する。なお、この皿39は、1つの皿によって構成されてもよいし、発射装置へ供給される遊技球および賞球を溜める上皿と、賞球のみを溜める下皿との2つの皿によって構成されてもよい。
スピーカ35は、楽曲や音声、効果音等を出力して音による演出を行う。枠ランプ36は、点灯または点滅のパターンの変更、発光色の変更、光の照射方向の変更等の光による各種の演出を行う。
演出ボタン37および演出キー38は、それぞれ遊技者が演出に対する操作入力を行うために設けられている。演出ボタン37は、皿39の横に設けられており、演出キー38は、中央キーと中央キーの周辺に配列された複数(ここでは4つ)の周辺キーとを有しており、演出ボタン37に隣接配置されている。遊技者が演出キー38の周辺キーを操作することによって、メイン表示器5に表示された複数の選択肢の中からいずれかを選択指示することができる。このように、演出キー38は、遊技者が操作情報を入力するための入力手段として機能する。
図3は、図1における表示器4の一例を示す拡大図である。表示器4は、上述した特別図柄抽選や普通図柄抽選の結果や保留数に関する情報を表示するものである。図3に示されるように、表示器4は、第1特別図柄表示器41、第2特別図柄表示器42、第1特別図柄保留表示器43、第2特別図柄保留表示器44、普通図柄表示器45、普通図柄保留表示器46、および遊技状態表示器47を備えている。
第1特別図柄表示器41は、第1始動口21への遊技球の入賞を契機として特別図柄を変動表示してから第1特別図柄抽選の結果を示す特別図柄を停止表示する。第1特別図柄保留表示器43は、第1特別図柄抽選の保留数を表示する。第2特別図柄表示器42は、第2始動口22への遊技球の入賞を契機として特別図柄を変動表示してから第2特別図柄抽選の結果を示す特別図柄を停止表示する。第2特別図柄保留表示器44は、第2特別図柄抽選の保留数を表示する。普通図柄表示器45は、遊技球がゲート25を通過したことを契機として普通図柄を変動表示してから普通図柄抽選の結果を示す普通図柄を停止表示する。普通図柄保留表示器46は、普通図柄抽選の保留数を表示する。例えば、第1特別図柄表示器41、第2特別図柄表示器42、または普通図柄表示器45によって表示図柄が変動表示されている期間(入賞1回分の変動表示が行われている間)等、表示図柄の変動表示を即時に開始できない期間に、さらに他の遊技球が入賞した場合、その入賞した遊技球に対する表示図柄の変動表示は、先に入賞した遊技球に対する変動表示が終了する等、表示図柄の変動表示が可能となるまで、規定回数(例えば、4回)を限度に保留される。このような保留がなされていることおよびその保留の数(未抽選回数)が、第1特別図柄保留表示器43、第2特別図柄保留表示器44、および普通図柄保留表示器46にそれぞれ表示される。例えば、第1特別図柄保留表示器43、第2特別図柄保留表示器44、および普通図柄保留表示器46は、それぞれ列設されたLED表示装置で構成され、その点灯態様によって保留回数が表示される。遊技状態表示器47は、遊技機1の電源投入時点における遊技状態(例えば、通常遊技状態、確変遊技状態、時短遊技状態、潜伏遊技状態)を表示する。
ここまで遊技機1の概略構成について説明したが、上述した遊技機1の構成は単なる一例であって、遊技盤2の盤面構成(入賞や抽選に関する役物の配置)等は、適宜変更されてもよい。例えば右打ちが必要なパチンコ遊技機に本発明に係る遊技機が適用される場合には、大入賞口23やゲート25等をメイン表示器5に対して右側の遊技領域20に配置するといった変更が行われる。
ところで、遊技者が視認し易い位置にメイン表示器5が固定されているので、特別図柄抽選に当選しない期間が長時間続いたとき等に遊技者の視点が固定され易く、遊技が単調になるおそれがある。そこで、本実施形態に係る遊技機1は、サブ表示器6に対して遊技者が行ったジェスチャーに応じてサブ表示器6を移動させ、サブ表示器6が所定の位置へ移動したときにサブ画面60を通して遊技者が視認できる情報を示す画像をサブ画面60に表示することで、遊技者に対して効果的な演出が行われるように構成されている。具体的には、遊技盤2の表面側(図1の紙面手前側)に遊技盤2と所定の間隔を隔てて平行に透明板(例えば、ガラス板)が配置されているが、当該透明板を介してサブ表示器6の前方空間において遊技者が手でサブ表示器6を動かすようなジェスチャーをすることに応じて、サブ表示器6が移動する。
例えば、図4(a)に示すように、サブ表示器6の前方空間において遊技者が左から右(図示A方向)へ手を動かしたとする。遊技機1は、この遊技者の手の動きをサブ光センサ606によって検出し、当該手の動きに応じてサブ表示器6を移動させる。例えば、図4(b)に示すように、上記前方空間において図示A方向へ手を動かしたことに応じて、遊技機1は、サブ表示器6を図示A方向へ移動させる。一例として、図4(c)に示されるように、メイン表示器5のメイン画面50に表示されたキャラクタCIがサブ画面60を通して視認可能な位置に、サブ表示器6が移動したときには、当該キャラクタCIに関する表示情報IFが表示される。例えば、表示情報IFは、キャラクタCIが表示された場合の遊技機状況等を示す情報が表示され、特別図柄の変動表示中にリーチとなったときにそのキャラクタが出現した場合に特別図柄抽選に当選する信頼度を示す文字情報である。他の例として、可動役物7の少なくとも一部がサブ画面60を通して視認可能な位置にサブ表示器6が移動したときは、当該可動役物7に関する表示情報IFが表示される。例えば、表示情報IFは、可動役物7が移動した場合の遊技機状況等を示す情報が表示され、可動役物7が作動したときに特別図柄抽選に当選する信頼度を示す文字情報である。以下、このような効果的な演出を実現するための遊技機1の構成および動作について説明する。
[サブ表示器6の構成]
サブ表示器6は、メイン表示器5の前面側にメイン画面50と所定の間隔を隔てて配置されており、後述する駆動機構10によって遊技盤2およびメイン表示器5に対して上下左右に移動可能である。一例として、本実施形態におけるサブ表示器6は、液晶ディスプレイである。例えば、サブ画面60は、樹脂製のフレーム61(図7参照)に形成された開口部に嵌め込まれることによってフレーム61に固定されている。なお、フレーム61の裏面(メイン画面50と対向する面)は、黒色に形成されていてもよい。サブ画面60としては、例えば上下方向11の画素数が「240」で、左右方向12の画素数が「320」という画面解像度(垂直画素数×水平画素数)を有するものが使用される。また、メイン表示器5としては、一例として上下方向11の画素数が「600」で、左右方向12の画素数が「800」という画面解像度のメイン画面50を有する液晶ディスプレイが使用される。したがって、メイン表示器5およびサブ表示器6は、メイン画面50の方がサブ画面60よりも画面解像度が大きくなるように構成されている。
図5(a)は、サブ画面60の概略構成の一例を示す図である。図5(a)に示されるように、サブ画面60は、多数の画素ユニット601を有して構成されている。例えば、画素ユニット601は、上下方向11に240個、左右方向12に320個並んで配置されているが、説明の便宜上、図5(a)では、実際よりも少なく画素ユニット601が表記されている。
画素ユニット601は、カラー液晶素子602およびサブ光センサ606を有している。カラー液晶素子602は、3原色のそれぞれの色を表示するR(Red)色液晶素子603、G(Green)色液晶素子604、およびB(Blue)色液晶素子605から構成されている。サブ光センサ606は、サブ画面60の前方からの光を検知する受光素子であり、R色液晶素子603、G色液晶素子604、およびB色液晶素子605と隣接するように配置されている(図5(b)参照)。このように、サブ光センサ606は、各カラー液晶素子602のそれぞれに近接配置されている。
サブ光センサ606が光を受光すると、受光した光の照度に応じた電気信号が生成される。サブ画面60が有する各サブ光センサ606は、後述する演出制御部130に接続されており、各サブ光センサ606で生成された電気信号が演出制御部130に出力される。演出制御部130は、各サブ光センサ606から出力される電気信号に基づいて、サブ画面60の前方空間に対する物体の有無を検出する。具体的には、サブ画面60の前方空間に遊技者の手が差し出された場合、サブ画面60において遊技者の手が重なった領域(すなわち、遊技者の手によって外光が遮られるサブ画面60の領域)に設けられているサブ光センサ606からは、遊技者の手と重なっていない領域に設けられているサブ光センサ606から出力される電気信号とは異なるレベルの電気信号が出力される。
図6には、サブ表示器6のサブ画面60の一部に遊技者の手が重なった場合に、当該手によって外光が遮られることによってサブ光センサ606が受光する照度が低下する領域(照度低下検出領域)の一例が示されている。演出制御部130は、各サブ光センサ606から出力される電気信号のレベルの違いに基づいて、サブ画面60の前方空間に差し出された遊技者の手の位置を検出することができる。
ここで、図5(b)に示されるように、各画素ユニット601には、画素ユニット601と隣接する他の画素ユニットとを区画する外壁607、および画素ユニット601を構成するカラー液晶素子602とサブ光センサ606とを区画する内壁608が設けられている。外壁607は、カラー液晶素子602およびサブ光センサ606の外側を囲み、かつ、画素ユニット601の基部からサブ画面60の前方へ向けて突出するように形成されている。内壁608は、カラー液晶素子602とサブ光センサ606との間に画素ユニット601の基部からサブ画面60の前方へ向けて突出するように形成されている。この外壁607および内壁608が設けられていることにより、サブ光センサ606に対して近接するカラー液晶素子602から光が直接入射することが防止されるので、サブ画面60の前方からの光を各サブ光センサ606で正確に検知して、遊技者の手の位置を精度良く検出することができる。
[メイン表示器5の構成]
メイン表示器5は、遊技盤2を支持する遊技機1の筐体に固定されている。このため、メイン表示器5は、遊技機1の遊技盤2やガラス板等が閉状態、すなわち遊技機1が遊技可能な状態である場合、遊技盤2に対して固定された状態となる。メイン表示器5は、後述する画像音響制御部140から出力される画像をメイン画面50に表示する。メイン画面50には、例えば、特別図柄抽選の結果を報知するための装飾図柄、予告演出を行うキャラクタやアイテム、特別図柄抽選が保留されていることを示す保留表示画像等が表示される。
また、サブ画面60と同様に、メイン画面50は、例えば上下方向11に600個および左右方向12に800個並んで配置された多数の画素ユニット51を有して構成されている。画素ユニット51は、R色液晶素子53、G色液晶素子54、およびB色液晶素子55から構成されるカラー液晶素子52とメイン光センサ56とをそれぞれ有している。そして、サブ光センサ606と同様に、メイン光センサ56も各カラー液晶素子52のそれぞれに近接配置されている。なお、メイン画面50の各画素ユニット51の構成は、サブ画面60の各画素ユニット601の構成と同じであるため、ここでは詳細な説明を省略する。
メイン光センサ56が光を受光すると、受光した光の照度に応じた電気信号が生成される。メイン画面50が有する各メイン光センサ56は、後述する演出制御部130に接続されており、各メイン光センサ56で生成された電気信号が演出制御部130に出力される。演出制御部130は、各メイン光センサ56から出力される電気信号に基づいて、メイン画面50に対するサブ画面60の位置(サブ表示器6の位置)を検出する。具体的には、後述するサブ表示器6のフレーム61は、メイン表示器5のメイン画面50と対向する面が例えば黒色に形成されており、メイン画面50においてフレーム61によって覆われた領域(すなわち、フレーム61によって遊技機1の前方に着席する遊技者から遮られているメイン画面50の領域)に設けられているメイン光センサ56からは、フレーム61によって覆われていない領域に設けられているメイン光センサ56から出力される電気信号とは異なるレベルの電気信号が出力される。これによって、演出制御部130は、各メイン光センサ56から出力される電気信号のレベルの違いに基づいて、フレーム61の位置、すなわちサブ画面60の位置を検出することができる。
[駆動機構10の構成および動作]
次に、図7〜図10を参照しつつ、サブ表示器6を移動させる駆動機構10について説明する。図7は、駆動機構10の構成の一例を示す斜視図であり、サブ画面60を介してメイン画面50に表示された表示オブジェクトが視認可能な位置にサブ表示器6が位置した状態の一例を示している。図8は、駆動機構10の構成の一例を示す斜視図であり、サブ画面60を介して可動役物7の一部が視認可能な位置にサブ表示器6が位置した状態の一例を示している。図9は、駆動機構10の一例を示す分解斜視図である。図10は、サブ表示器6の一例を示す拡大斜視図である。
駆動機構10は、サブ表示器6をメイン表示器5のメイン画面50に沿って上下左右に移動させるものである。本実施形態においては、駆動機構10は、第1ステッピングモータ29(図11参照)の駆動力をサブ表示器6に伝達して、サブ表示器6をメイン画面50に沿って上下方向11(図1、図7、図8参照)に移動させる昇降駆動機構200と、第2ステッピングモータ30(図11参照)の駆動力をサブ表示器6に伝達して、サブ表示器6をメイン画面50に沿って左右方向12(図1、図7、図8参照)に移動させるスライド駆動機構220とから構成されている。
昇降駆動機構200は、大別して、第1支持部材201と、一対のガイド部材202および203と、第1回転軸204と、第2回転軸205と、第1駆動ベルト206と、および第2駆動ベルト207とを備えている。
第1支持部材201は、左右方向12を長手方向とする薄い板状部材である。この第1支持部材201は、図1に示されるように、メイン表示器5のメイン画面50の手前に配置されるため、メイン画面50に表示された画像の視認性の低下を最低限に抑えるために、例えば透明な樹脂で形成されている。サブ表示器6のフレーム61には、左右方向12に貫通する挿通孔62(図9および図10参照)が形成されており、第1支持部材201は、挿通孔62に挿通されることによって、第1支持部材201に沿った左右方向12へフレーム61を移動可能に支持する。
図10に示されるように、第1支持部材201は、その一方端が連結部材194に固設されると共に、その他方端が連結部材197に固設される。連結部材194は、ガイド部材202(図9参照)が挿通される円筒状の挿通孔195と、第1駆動ベルト206(図9参照)を挟持する挟持片196とを有している。ガイド部材202は、断面外形が円形の棒状部材であり、その長手方向が上下方向11と一致するように遊技機1の筐体に固定されている。ガイド部材202の外径寸法は、挿通孔195に遊挿可能となるように挿通孔195の内径寸法よりも若干小さく設定されており、連結部材194は、挿通孔195にガイド部材202が挿通されることによって、ガイド部材202に沿った上下方向11へ移動可能にガイド部材202によって支持される。
連結部材197は、連結部材194と同形状の部材であって、ガイド部材203(図9参照)が挿通される挿通孔198と、第2駆動ベルト207(図9参照)を挟持する挟持片199とを有している。ガイド部材203は、ガイド部材202と同形状の部材であって、ガイド部材202との間にメイン画面50が配置されるように所定の間隔を隔てて遊技機1の筐体に列設固定されている。連結部材197は、挿通孔198にガイド部材203が挿通されることによって、ガイド部材203に沿った上下方向11へ移動可能にガイド部材203によって支持される。
このように連結部材194および連結部材197がガイド部材202およびガイド部材203に支持されているので、第1支持部材201は、上下方向11へスライド可能である。
ガイド部材202および203の上側に第1回転軸204が設けられると共に、ガイド部材202および203の下側に第2回転軸205が設けられている(図7および図8参照)。第1回転軸204および第2回転軸205は、それぞれ軸方向が左右方向12と一致するように、不図示の軸受けに回転可能に支持されている。図9に示されるように、第1回転軸204は、その一方端側にギヤ212およびプーリ208が固定されると共に、その他方端側にプーリ209が固定されている。第2回転軸205は、その一方端側にプーリ208と一対となるプーリ210が固定されると共に、その他方端側にプーリ209と一対となるプーリ211が固定されている。
一対のプーリ208とプーリ210との間には、内側に歯が形成された無端環状の第1駆動ベルト206が張り渡されている。また一対のプーリ209とプーリ211との間には、第1駆動ベルト206と同じ構成の第2駆動ベルト207が張り渡されている。
第1回転軸204のギヤ212(図7〜図9参照)には、第1ステッピングモータ29(図11参照)の駆動力が入力される。これにより、ギヤ212がその一方端に固定された第1回転軸204が回転する。プーリ208〜211の外周には、それぞれ第1駆動ベルト206または第2駆動ベルト207の歯と噛合する歯が形成されており、第1回転軸204の回転力がプーリ208および209を介して第1駆動ベルト206および第2駆動ベルト207にそれぞれ伝達される。その結果、第1駆動ベルト206および第2駆動ベルト207が周運動すると共に、第1回転軸204および第2回転軸205が同期回転する。また、第1駆動ベルト206には第1支持部材201の一方端に固定された連結部材194が挟持片196によって固定され、第2駆動ベルト207には第1支持部材201の他方端に固定された連結部材197が挟持片199によって固定されているので、第1ステッピングモータ29の駆動力が第1支持部材201にも伝達されて、結果的に第1支持部材201に支持されたサブ表示器6が上下方向11へ移動する。なお、第1ステッピングモータ29の回転方向を正回転または逆回転に切り換えることで、上下方向11におけるサブ表示器6の移動方向を切り換えることができる。
一方、スライド駆動機構220は、大別して、第2支持部材221と、一対のガイド部材222および223と、第3回転軸224と、第4回転軸225と、第3駆動ベルト226と、および第4駆動ベルト227とを備えている。
第2支持部材221は、上下方向11を長手方向とする薄い板状部材である。この第2支持部材221は、第1支持部材201と同様に、例えば透明な樹脂で形成されている。サブ表示器6のフレーム61には、上下方向11に貫通する挿通孔63(図9および図10参照)が形成されており、第2支持部材221は、挿通孔63に挿通されることによって、第2支持部材221に沿った上下方向11へフレーム61を移動可能に支持する。
図10に示されるように、第2支持部材221は、その一方端が連結部材214に固設されると共に、その他方端が連結部材217に固設されている。連結部材214は、ガイド部材222(図9参照)が挿通される円筒状の挿通孔215と、第4駆動ベルト227(図9参照)を挟持する挟持片216とを有している。ガイド部材222は、断面外形が円形の棒状部材であり、その長手方向が左右方向12と一致するように遊技機1の筐体に固定されている。ガイド部材222の外径寸法は、挿通孔215に遊挿可能となるように挿通孔215の内径寸法よりも若干小さく設定されており、連結部材214は、挿通孔215にガイド部材222が挿通されることによって、ガイド部材222に沿った左右方向12へ移動可能にガイド部材222によって支持される。
連結部材217は、連結部材214と同形状の部材であって、ガイド部材223(図9参照)が挿通される挿通孔218と、第3駆動ベルト226(図9参照)を挟持する挟持片219とを有している。ガイド部材223は、ガイド部材222と同形状の部材であって、ガイド部材222との間にメイン画面50が配置されるように所定の間隔を隔てて対向するように遊技機1の筐体に列設固定されている。連結部材217は、挿通孔218にガイド部材223が挿通されることによって、ガイド部材223に沿った左右方向12へ移動可能にガイド部材223によって支持される。
このように連結部材214および連結部材217がガイド部材222およびガイド部材223に支持されているので、第2支持部材221は、左右方向12へスライド可能である。
左右方向12におけるガイド部材222および223の右側に第3回転軸224が設けられると共に、ガイド部材222および223の左側に第4回転軸225が設けられている(図7および図8参照)。第3回転軸224および第4回転軸225は、それぞれ軸方向が上下方向11と一致するように、不図示の軸受けに回転可能に支持されている。図9に示されるように、第3回転軸224は、その一方端側にギヤ232およびプーリ228が固定されると共に、その他方端側にプーリ229が固定されている。第4回転軸225は、その一方端側にプーリ228と一対となるプーリ230が固定されると共に、その他方端側にプーリ229と一対となるプーリ231が固定されている。
一対のプーリ228とプーリ230との間には、内側に歯が形成された無端環状の第3駆動ベルト226が張り渡されている。また、一対のプーリ229とプーリ231との間には、第3駆動ベルト226と同じ構成の第4駆動ベルト227が張り渡されている。
第3回転軸224のギヤ232(図7〜図9参照)には、第2ステッピングモータ30(図11参照)の駆動力が入力される。これにより、ギヤ232がその一方端に固定された第3回転軸224が回転する。プーリ228〜231の外周には、それぞれ第3駆動ベルト226または第4駆動ベルト227の歯と噛合する歯が形成されており、第3回転軸224の回転力がプーリ228および229を介して第3駆動ベルト226および第4駆動ベルト227にそれぞれ伝達される。その結果、第3駆動ベルト226および第4駆動ベルト227が周運動すると共に、第3回転軸224および第4回転軸225が同期回転する。また、第3駆動ベルト226には第2支持部材221の他方端に固定された連結部材217が挟持片219によって固定され、第4駆動ベルト227には第2支持部材221の一方端に固定された連結部材214が挟持片216によって固定されているので、第2ステッピングモータ30の駆動力が第2支持部材221にも伝達されて、結果的に第2支持部材221に支持されたサブ表示器6が左右方向12へ移動する。なお、第2ステッピングモータ30の回転方向を正回転または逆回転に切り換えることで、左右方向12におけるサブ表示器6の移動方向を切り換えることができる。
このように、サブ表示器6は、昇降駆動機構200によって上下方向11へ移動し、スライド駆動機構220によって左右方向12へ移動する。なお、本実施形態では、サブ光センサ606によって検出された照度低下検出領域に応じて昇降駆動機構200および/またはスライド駆動機構220が駆動するので、遊技者は、サブ表示器6の前方空間に手を差し出して動かすことによって所望の位置へサブ表示器6を移動させることができる。なお、第1支持部材201および第2支持部材221を除く駆動機構10の各構成部材は、メイン表示器5等が設けられた領域と遊技領域20とを区画する化粧カバー14(図1参照)によって覆われているために、図1には現れていない。
[遊技機1の制御装置の構成]
遊技機1の背面側(図1の紙面奥側)には、払出用の遊技球を溜めておく球タンクや遊技球を皿39に払い出す払出装置が設けられ、各種の基板等が取り付けられている。例えば、遊技盤2の後面には、メイン基板およびサブ基板等が配設されている。具体的には、メイン基板には、内部抽選および当選の判定等を行う遊技制御部100として機能するメイン制御基板が配設されている。このメイン基板は、開封されることにより痕跡が残るように透明部材で構成されたメイン基板ケースによって密封されている。また、サブ基板には、賞球の払出を制御する払出制御部120として機能する払出制御基板、演出を統括的に制御する演出制御部130として機能する演出制御基板、画像および音による演出を制御する画像音響制御部140として機能する画像制御基板、および各種のランプ(枠ランプ36や盤ランプ8)や可動役物7による演出を制御するランプ制御部150として機能するランプ制御基板等が配設されている。また、遊技盤2の後面には、遊技機1の電源オン/オフを切り換えるとともに、遊技機1に供給された24V(ボルト)の交流電力を各種電圧の直流電力に変換して、それぞれの電圧の直流電力を上述した各種の基板等に出力するスイッチング電源が配設されている。
以下、図11を参照しつつ、遊技機1の制御装置の構成について説明する。ここで、図11は、遊技機1の制御装置の構成の一例を示すブロック図である。図11に示されるように、遊技機1の制御装置の構成の一例では、遊技制御部100、払出制御部120、演出制御部130、画像音響制御部140、およびランプ制御部150を備えている。
[遊技制御部100の構成]
遊技制御部100は、CPU(Central Processing Unit;中央処理装置)101、ROM(Read Only Memory)102、およびRAM(Random Access Memory)103を備えている。CPU101は、ROM102に記憶されたプログラムに基づいて、内部抽選や当選の判定等の払い出し賞球数に関連する各種の演算処理を行う。RAM103は、CPU101が上記プログラムを実行する際に用いる各種データを一時的に記憶する記憶領域またはデータ処理などの作業領域として使用される。この遊技制御部100の主な機能は、以下の通りである。
遊技制御部100は、第1始動口21または第2始動口22に遊技球が入賞すると特別図柄抽選を実行し、特別図柄抽選での当選か否かを示す判定結果データを演出制御部130へ送信する。また、遊技制御部100は、特別図柄抽選に応じて決定した当選確率の変動設定(例えば300分の1から30分の1への変動設定)を示すデータ、特別図柄変動時間の短縮設定を示すデータ、普通図柄抽選に応じて決定した普通図柄変動時間の短縮設定を示すデータ等を演出制御部130へ送信する。
遊技制御部100は、電動チューリップ27の羽根部材が開姿勢となる開時間、羽根部材が開閉する回数、および羽根部材が閉じてから次に開くまでの開閉時間間隔を制御する。また、遊技制御部100は、遊技球が第1始動口21または第2始動口22へ入賞したことによる特別図柄抽選の保留数、および遊技球がゲート25を通過したことによる普通図柄抽選の保留数を管理し、保留回数に関連するデータを演出制御部130に送信する。
遊技制御部100は、特別図柄抽選の結果に応じて、大入賞口23の開閉動作を制御する。例えば、所定条件(例えば、大入賞口23が開いてから30秒が経過、大入賞口23への10個の遊技球の入賞、または大入賞口23の開放累積時間が1.8秒以内)を満たすまで、大入賞口23のプレートが突出傾倒して大入賞口23の開状態を維持するラウンドを所定回数(例えば15回または2回)繰り返す。
遊技制御部100は、第1始動口21、第2始動口22、大入賞口23、および普通入賞口24に遊技球が入賞すると、入賞した場所に応じた所定数の賞球の払い出しを払出制御部120に指示する。払出制御部120が遊技制御部100の指示に応じて賞球の払い出しを行った場合、払い出された賞球の個数に関する情報が払出制御部120から遊技制御部100へ送られる。遊技制御部100は、払出制御部120から取得した情報に基づいて、払い出す賞球の個数を管理する。
これらの機能を実現するために、遊技制御部100には、第1始動口スイッチ(SW)111、第2始動口スイッチ(SW)112、電動チューリップ開閉部113、ゲートスイッチ(SW)114、大入賞口スイッチ(SW)115、大入賞口制御部116、および普通入賞口スイッチ(SW)117が接続されている。
第1始動口スイッチ111は、第1始動口21に遊技球が入賞したことを検出して、その検出信号を遊技制御部100へ送る。第2始動口スイッチ112は、第2始動口22に遊技球が入賞したことを検出して、その検出信号を遊技制御部100へ送る。電動チューリップ開閉部113は、電動チューリップ27の一対の羽根部材に駆動伝達可能に連結された電動ソレノイドを有している。遊技制御部100からの制御信号に応じて上記電動ソレノイドが作動して、電動チューリップ27の一対の羽根部材が姿勢変化する。ゲートスイッチ114は、ゲート25を遊技球が通過したことを検出して、その検出信号を遊技制御部100へ送る。大入賞口スイッチ115は、大入賞口23に遊技球が入賞したことを検出して、その検出信号を遊技制御部100へ送る。大入賞口制御部116は、大入賞口23のプレートに駆動伝達可能に連結された電動ソレノイドを有している。遊技制御部100からの制御信号に応じて上記電動ソレノイドが作動して、大入賞口23が開閉される。普通入賞口スイッチ117は、普通入賞口24に遊技球が入賞したことを検出して、その検出信号を遊技制御部100へ送る。
また、遊技制御部100には、表示器4が接続されている(図3参照)。遊技制御部100は、第1特別図柄抽選の結果を第1特別図柄表示器41に表示させ、第1特別図柄抽選を保留している保留数を第1特別図柄保留表示器43に表示させる。遊技制御部100は、第2特別図柄抽選の結果を第2特別図柄表示器42に表示させ、第2特別図柄抽選の保留数を第2特別図柄保留表示器44に表示させる。遊技制御部100は、普通図柄抽選の結果を普通図柄表示器45に表示させ、普通図柄抽選の保留数を普通図柄保留表示器46に表示させる。遊技制御部100は、遊技状態表示器47に遊技機1の遊技状態を表示させる。
[払出制御部120の構成]
払出制御部120は、CPU121、ROM122、およびRAM123を備えている。CPU121は、ROM122に記憶されたプログラムに基づいて、賞球の払い出しを制御する際の演算処理を行う。RAM123は、CPU121が上記プログラムを実行する際に用いる各種データを一時的に記憶する記憶領域またはデータ処理などの作業領域として使用される。
払出制御部120は、遊技制御部100からの指示に基づいて、遊技球が入賞した場所に応じた所定数の賞球が皿39へ払い出されるように払出モータ125を制御する。ここで、払出モータ125は、遊技盤2の裏面側に配置された球タンクから遊技球を送り出すモータである。
払出制御部120には、払出モータ125の他に、払出球検出部126、球有り検出部127、および満タン検出部128が接続されている。払出球検出部126は、払出モータ125により球タンクから皿39へ払い出された賞球の数を検出する。球有り検出部127は、球タンクにおける遊技球の有無を検出する。満タン検出部128は、皿39が遊技球で満タンになったことを検出する。払出制御部120は、払出球検出部126、球有り検出部127、および満タン検出部128の検出結果に応じて所定の処理を実行する。
[演出制御部130の構成]
演出制御部130は、CPU131、ROM132、RAM133、およびRTC(リアルタイムクロック)134を備えている。CPU131は、ROM132に記憶されたプログラムに基づいて、演出を制御する際の演算処理を行う。RAM133は、CPU131が上記プログラムを実行する際に用いる各種データを一時的に記憶する記憶領域またはデータ処理などの作業領域として使用される。RTC134は、現時点の日時を計測する。
演出制御部130は、遊技制御部100から送られる特別図柄抽選結果等を示すデータに基づいて、演出内容を設定する。その際、演出ボタン37または演出キー38からの操作情報の入力を受け付けて、その操作情報に応じた演出内容を設定する場合もある。さらに、特別図柄抽選の当選確率の変動設定を示すデータを遊技制御部100から受信した場合、特別図柄抽選の変動時間の短縮設定を示すデータを遊技制御部100から受信した場合、および普通図柄抽選の変動時間の短縮設定を示すデータを遊技制御部100から受信した場合には、これらのデータに応じて演出内容を設定する。演出制御部130は、このようにして設定した演出内容の演出の実行を指示するコマンドを画像音響制御部140およびランプ制御部150へ送信する。
演出制御部130は、遊技球の入賞時点において事前に行われる特別図柄抽選処理(事前判定処理)の結果を示すデータ(先読演出コマンド)を遊技制御部100から取得した場合、当該データに基づいた先読演出内容を設定する。そして、演出制御部130は、設定した先読演出内容の実行を指示するコマンドを画像音響制御部140およびランプ制御部150にそれぞれ送る。
演出制御部130には、メイン表示器5が備えるメイン光センサ56が接続されている。演出制御部130のCPU131は、各メイン光センサ56から入力される電気信号に基づいて、サブ表示器6のサブ画面60の位置を検出する。
演出制御部130には、サブ表示器6が備えるサブ光センサ606が接続されている。演出制御部130のCPU131は、各サブ光センサ606から入力される電気信号に基づいて、サブ表示器6の前方空間に差し出された遊技者の手の位置を検出する。そして、演出制御部130のCPU131は、取得した手の位置に応じて、サブ表示器6の移動を指示するコマンドをランプ制御部150に送る。
[ランプ制御部150の構成]
ランプ制御部150は、CPU151、ROM152、およびRAM153を備えている。CPU151は、盤ランプ8や枠ランプ36の発光、および可動役物7の動作を制御する際の演算処理を行う。ROM152は、CPU151によって実行されるプログラムや各種データ等が記憶され、RAM153は、CPU151が上記プログラムを実行する際に用いる各種データを一時的に記憶する記憶領域またはデータ処理などの作業領域として使用される。
ランプ制御部150のCPU151は、ROM152に記憶されている発光パターンデータの中から、演出制御部130から送信されたコマンドに対応する発光パターンデータを読み出して、盤ランプ8、枠ランプ36、および可動役物7の発光を制御する。また、CPU151は、ROM152に記憶されている動作パターンデータの中から、演出制御部130から送信されたコマンドに対応する動作パターンデータを読み出して、可動役物7を動作させるモータ(不図示)の回転を制御する。
ランプ制御部150は、演出制御部130から送信されたコマンドにサブ表示器6の移動を指示するコマンドが含まれていた場合、そのコマンドに基づいて、第1ステッピングモータ29および/または第2ステッピングモータ30の回転を制御する。第1ステッピングモータ29は、その回転軸が昇降駆動機構200のギヤ212(図7参照)と噛合するように配設されており、第1ステッピングモータ29の駆動力がギヤ212に入力されることによって、サブ表示器6が上下方向11へ移動する。一方、第2ステッピングモータ30は、その回転軸がスライド駆動機構220のギヤ232(図7参照)と噛合するように配設されており、第2ステッピングモータ30の駆動力がギヤ232に入力されることによって、サブ表示器6が左右方向12へ移動する。このように本実施形態においては、第1ステッピングモータ29および/または第2ステッピングモータ30を駆動制御することによって、昇降駆動機構200および/またはスライド駆動機構220を動作させるCPU151が、サブ表示器6を移動させる。
[画像音響制御部140の構成]
図12は、画像音響制御部140の構成を例示するブロック図である。図12に示されるように、画像音響制御部140は、各種演出の実行を指示する制御信号を生成するCPU141と、CPU141によって生成された制御信号に応じた演出を表現する画像を生成するVDP(Video Display Processor)142と、CPU141によって生成された制御信号に応じた演出を実現する音響データを生成する音響DSP(Digital Signal Processor)143とを備えている。
CPU141には、制御用ROM144およびRAM145が接続されている。制御用ROM144には、CPU141によって実行されるプログラムや各種データ等が記憶されている。RAM145は、CPU141が上記プログラムを実行する際に用いる各種データを一時的に記憶する記憶領域またはデータ処理などの作業領域として使用される。CPU141は、演出制御部130から受信したコマンドに基づいて、VDP142および音響DSP143の動作を制御するための制御信号を生成して、その制御信号をVDP142および音響DSP143に出力する。
音響DSP143には、音響用ROM146およびSDRAM(Synchronous Dynamic Random Access Memory)147が接続されている。音響用ROM146には、スピーカ35から出力させる楽曲や音声、効果音等に関する各種音響データが記憶されている。SDRAM147は、音響DSP143によるデータ処理等の作業領域として使用される。
音響DSP143は、CPU141によって生成された制御信号に対応する音響データを音響用ROM146から読み出し、その音響データに対して必要なデータ処理を行う。そして、メイン画面50やサブ画面60による画像表示と同期させて、または画像表示とは非同期に、データ処理後の音響データを不図示の増幅器を介してスピーカ35に出力する。
VDP142は、CPU141から入力された制御信号に基づいて画像を描画して、メイン表示器5およびサブ表示器6に出力する表示制御手段として機能する。VDP142は、CPU I/F1421、デコーダ1422、ROM I/F1423、描画エンジン1424、VRAM_RS1425、VRAM_FB1426、および出力回路1427を備えている。
VDP142には、内部バス1428および内部バス1429が設けられている。CPU I/F1421、デコーダ1422、ROM I/F1423、描画エンジン1424、およびVRAM_RS1425は、内部バス1428を介して通信可能に接続されている。また、描画エンジン1424、VRAM_FB1426、および出力回路1427は、内部バス1429を介して通信可能に接続されている。
CPU I/F1421は、VDP142とCPU141とを通信可能に接続するインターフェースである。CPU141によって生成された制御信号は、CPU I/F1421を介してVDP142に入力される。ROM I/F1423は、画像用ROM148から画像データを読み出すためのインターフェースである。
画像用ROM148には、メイン表示器5およびサブ表示器6に表示される演出画像を構成する素材となる素材データが記憶されている。具体的には、3つの数字からなる装飾図柄や期待度の大きさに応じた演出を行うためのキャラクタやアイテム等に関する画像データ、メイン表示器5に背景画面として表示される背景画像に関する画像データ、特別図柄抽選が保留されていることを示す保留表示画像に関する画像データ、各種情報を示す文字に関する画像データといった、いわゆる素材データが記憶されている。
VRAM_RS1425は、画像用ROM148から読み出された素材データを一時的に記憶する記憶領域または描画エンジン1424が実行する描画処理などの作業領域として使用されるメモリである。なお、例えばMPEG2(Moving Picture Experts Group phase 2)方式で符号化された画像データが画像用ROM148から読み出される場合には、デコーダ1422によって復号された画像データが素材データとしてVRAM_RS1425に格納される。VRAM_RS1425に格納された素材データは、描画エンジン1424が行う描画処理に使用される。このため、描画処理で頻繁に使用される素材データをVRAM_RS1425にバッファリングしておくことによって、描画エンジン1424による描画処理を効率良く実行することができる。
描画エンジン1424は、CPU141からの制御信号に基づいて、メイン表示器5のメイン画面50およびサブ表示器6のサブ画面60に表示すべき画像をVRAM_FB1426に描画する。具体的には、CPU141からの制御信号およびVRAM_RS1425に格納された素材データに基づいて、各ピクセルの色を計算し、計算した色の値をVRAM_FB1426に書き込むレンダリング処理を行う。VRAM_FB1426に描画された画像は、1フレーム分の画像に対応する複数の画素データから構成されており、各画素データは、R(Red)、G(Green)、B(Blue)を示す色情報と、画素の透過度を示すアルファ値とを含んでいる。描画エンジン1424は、VRAM_FB1426に描画した画像を所定の表示タイミングでメイン表示器5およびサブ表示器6に出力して、メイン画面50およびサブ画面60に画像を表示させる。なお、メイン表示器5のみを使用する場合には、描画エンジン1424は、メイン画面50に表示するための画像のみをVRAM_FB1426に描画して、その画像をメイン表示器5に出力する。
図13は、VRAM_FB1426の構成の一例について説明するための説明図である。図13に示されるように、VRAM_FB1426は、描画エンジン1424によって描画される1フレーム分の画像をそれぞれ記憶する第1フレームバッファ1426Aおよび第2フレームバッファ1426Bを備えるダブルバッファ方式のメモリである。描画エンジン1424は、第1フレームバッファ1426A内の画像をメイン表示器5およびサブ表示器6に出力している間には、次のフレームの画像を第2フレームバッファ1426Bに描画する。一方、第2フレームバッファ1426B内の画像をメイン表示器5およびサブ表示器6に出力している間には、次のフレームの画像を第1フレームバッファ1426Aに描画する。このように、描画エンジン1424は、一方のフレームバッファから画像を出力している間に他方のフレームバッファに描画処理を行うことで、高いフレームレートで描画処理を行うことができる。
ところで、第1フレームバッファ1426Aおよび第2フレームバッファ1426Bは、本実施形態においては、いずれも上下方向11に720ドット、左右方向12に960ドットの画素データを格納可能なメモリ領域を有している(図13参照)。これに対して、メイン表示器5のメイン画面50に表示される画像(以下「メイン画像」と呼ぶ)は、例えば上下方向11に600ドット、左右方向12に800ドットの画素データから構成されている(図16(a)参照)。したがって、サブ表示器6のサブ画面60には画像を表示せずにメイン表示器5のメイン画面50にのみ画像を表示する場合には、何ら問題なく描画処理を行うことができる。しかしながら、サブ表示器6のサブ画面60に表示される画像(以下「サブ画像」と呼ぶ)が、例えば上下方向11に240ドット、左右方向12に320ドットの画素データから構成されている(図16(c)参照)。したがって、メイン画像およびサブ画像を縦または横に並べてVRAM_FB1426に描画した場合、上下方向11または左右方向12の画素数が第1フレームバッファ1426Aや第2フレームバッファ1426Bに格納可能な画素データの画素数を超えるため、そのままでは、第1フレームバッファ1426Aや第2フレームバッファ1426Bにメイン画像およびサブ画像を並べて同時に描画することは不可能である。そこで、本実施形態に係るVDP142は、第1フレームバッファ1426Aにメイン画像を描画した後にできる空き領域(図16(b)参照)にサブ画像を複数の領域に分割した状態で描画することによって、第1フレームバッファ1426A(または第2フレームバッファ1426B)にメイン画像およびサブ画像を同時に描画することを可能にしている。以下、このような描画処理を実現するための遊技機1の動作について詳細に説明する。なお、以下の説明では、第1フレームバッファ1426Aを使用して描画処理が行われる場合を例に説明するが、第2フレームバッファ1426Bを使用して描画処理を行う場合にも同様の処理が行われる。
[分割画像サイズおよび分割数の設定]
第1フレームバッファ1426Aおよび第2フレームバッファ1426Bは、メイン画像が描画された場合に、メイン画像の描画処理に使用されていない空き領域が生じる(図15(d)参照)。サブ画像は、この空き領域に描画されるが、空き領域にそのまま描画できない場合には複数の領域に分割された分割画像として空き領域に描画される。サブ画像を分割画像として描画する処理は、予め設定された分割画像サイズおよび分割数に基づいて行われる。
以下、図14〜図16を参照しつつ、分割画像サイズおよび分割数を設定する処理について説明する。ここで、図14は、画像音響制御部140のCPU141によって実行される設定処理の一例を示すフローチャートである。図15は、メイン画像サイズ、サブ画像サイズ、フレームバッファサイズ、および空き領域のサイズについて説明するための説明図である。図16は、画像音響制御部140のCPU141によって実行される設定処理の一例について説明するための説明図である。なお、図14以降のフローチャートに基づいて説明する画像音響制御部140で行われる処理は、制御用ROM144に記憶されているプログラムに基づいてCPU141が発行する命令にしたがってって行われる。また、図14の説明では、画像音響制御部140のCPU141が実行する各ステップを「S」と略称する。
例えば遊技機1の電源が投入された場合や、メイン表示器5のみを用いた1画面表示からメイン表示器5およびサブ表示器6を用いた2画面表示に切り換えられる場合に、分割画像サイズおよび分割数の設定処理を指示する設定指示コマンドが演出制御部130から画像音響制御部140へ送信される。これに対して、画像音響制御部140のCPU141は、上記設定指示コマンドの受信を待つ(ステップ1)。なお、上記設定指示コマンドを受信していない場合(ステップ1:NO)、待機状態となる。
CPU141は、上記設定指示コマンドを受信した場合(ステップ1:YES)、メイン画像サイズ、サブ画像サイズ、フレームバッファ(FB)サイズを取得し(ステップ2)、次のステップに処理を進める。例えば、CPU141は、VDP142から第1フレームバッファ1426Aおよび第2フレームバッファ1426Bのフレームバッファサイズを取得してRAM145に格納する。また、CPU141は、メイン画面50の画面解像度およびサブ画面60の画面解像度を、メイン画像サイズおよびサブ画像サイズとしてVDP142を介してメイン表示器5およびサブ表示器6から取得してRAM145に格納する。ここで、フレームバッファサイズは、図15(a)に示されるように、例えば第1フレームバッファ1426A(または第2フレームバッファ1426B)に格納可能な画素データの上下方向11の画素数L1および左右方向12の画素数C1を示す情報であり、本実施形態では720×960(垂直画素数L1×水平画素数C1)である(図16(a)参照)。メイン画像サイズは、図15(b)に示されるように、例えばメイン画像を構成する画素データの上下方向11の画素数L2および左右方向12の画素数C2を示す情報であり、メイン画面50の画面解像度と等しく、本実施形態では600×800(垂直画素数L2×水平画素数C2)である(図16(a)参照)。サブ画像サイズは、図15(c)に示されるように、例えばサブ画像を構成する画素データの上下方向11の画素数L3および左右方向12の画素数C3を示す情報であり、サブ画面60の画面解像度と等しく、本実施形態では240×320(垂直画素数L3×水平画素数C3)である(図16(c)参照)。
次に、CPU141は、取得したメイン画像サイズおよびフレームバッファサイズに基づいて、第1フレームバッファ1426Aにメイン画像を描画した後に生じる空き領域のサイズを算出し(ステップ3)、次のステップに処理を進める。具体的には、以下の演算式を用いて、空き領域に描画可能な画素データの最低垂直画素数L4(図15(d)参照)および最低水平画素数C4(図15(d)参照)を算出する。
最低垂直画素数L4=垂直画素数L1−垂直画素数L2
最低水平画素数C4=水平画素数C1−水平画素数C2
本実施形態では、図16(a)および図16(b)に示されるように、垂直画素数L1が「720」であり、垂直画素数L2が「600」であるため、最低垂直画素数L4として「120」が算出され、水平画素数C1が「960」であり、水平画素数C2が「800」であるため、最低水平画素数C4として「160」が算出される。
次に、CPU141は、サブ画像サイズが上記ステップ3で算出した空き領域サイズより小さいか否かを判定し(ステップ4)、次のステップに処理を進める。例えば、CPU141は、以下の演算式を用いて、サブ画像を構成する画素データの総数STおよび空き領域に描画可能な画素データの総数VTを算出する。
総数ST=垂直画素数L3×水平画素数C3
総数VT=垂直画素数L4×垂直画素数C1+水平画素数C4×(垂直画素数L1−垂直画素数L4)
ここで、垂直画素数L3は、サブ画像を構成する画素データの上下方向11の画素数であり、水平画素数C3は、サブ画像を構成する画素データの左右方向12の画素数である。そして、総数STおよび総数VTを算出すると、CPU141は、総数STが総数VTよりも小さいか否かを判定する。総数STが総数VTよりも小さければ、サブ画像サイズが空き領域サイズより小さいと判定することができる。一方、総数STが総数VT以上であれば、サブ画像サイズが空き領域サイズよりも小さくないと判定することができる。
CPU141は、サブ画像サイズが空き領域のサイズよりも小さいと判定した場合(ステップ4:YES)、すなわち総数STが総数VTよりも小さい場合、サブ画像を空き領域に描画するためにサブ画像を分割する必要があるか否かを判定する(ステップ5)。例えば、CPU141は、サブ画像を構成する画素データの垂直画素数L3(図15(c)参照)が空き領域の最低垂直画素数L4(図15(d)参照)よりも小さく、かつ、サブ画像を構成する画素データの水平画素数C3(図15(c)参照)が空き領域の最低水平画素数C4(図15(d)参照)よりも小さいか否かを判定する。ここで、垂直画素数L3が垂直画素数L4よりも小さい、または水平画素数C3が水平画素数C4よりも小さければ、サブ画像を分割することなく空き領域に描画することが可能であると判定することができる。一方、垂直画素数L3が垂直画素数L4よりも大きい、かつ、水平画素数C3が水平画素数C4よりも大きい場合、サブ画像を空き領域にそのまま描画できないので、サブ画像を分割して描画する必要があると判定することができる。このように、空き領域のサイズおよびサブ画像サイズに基づいて、サブ画像の分割の必要性を判定する。
そして、CPU141は、分割が不要であると判定した場合(ステップ5:NO)、分割数SNを「0」に設定し(ステップ6)、当該フローチャートによる処理を終了する。ここで、分割数SNは、空き領域に描画される分割画像の数を示す情報である。言い換えれば、分割数SNは、サブ画像を構成する分割画像の数を示す情報である。このステップ6で設定された分割数SNは、設定情報としてRAM145に格納される。後に詳述するが、分割数SNが「0」に設定された場合、空き領域には分割画像が描画されず、サブ画像がそのまま空き領域に描画されることになる。
一方、CPU141は、分割が必要であると判定した場合(ステップ5:YES)、空き領域サイズおよびサブ画像サイズに基づいて、分割画像サイズSSおよび分割数SNを算出し(ステップ7)、次のステップに処理を進める。ここで、分割画像サイズSSは、サブ画像が分割数SNで示される個数の分割画像に分割された場合に、1個の分割画像のサイズ(垂直画素数および水平画素数)を示す情報である。上記ステップ7では、以下の演算式を用いて、分割画像サイズSS(分割画像の垂直画素数SSLと分割画像の水平画素数SSC)および分割数SNを算出する。
分割画像の垂直画素数SSL=最低垂直画素数L4
分割画像の水平画素数SSC=最低水平画素数C4
分割数SN=(垂直画素数L3/垂直画素数L4)×(水平画素数C3/水平画素数C4)
例えば、図16(b)および図16(c)に示されるように、本実施形態では、垂直画素数L4として「120」が算出され、水平画素数C4として「160」が算出される。このため、ここでの分割画像サイズSSは、120×160(垂直画素数SSL×水平画素数SSC)となる。また、分割数SNは、(240/120)×(320/160)により「4」が算出される。
次に、CPU141は、分割画像サイズSSおよび分割数SNを算出した後、算出した分割画像サイズSSおよび分割数SNを設定情報としてRAM145に格納し(ステップ8)、当該フローチャートによる処理を終了する。この設定情報は、VDP142へ出力される制御信号に含まれて、VDP142へと送られる。なお、上記ステップ8の設定処理に代えて上記ステップ6の設定処理が行われた場合には、サブ画像を分割する必要がないので分割画像サイズSSが算出されず、分割数SNが「0」であることを示す情報のみが設定情報としてVDP142へ送られる。
ここで、分割画像サイズSSおよび分割数SNを変化させた場合の分割画像サイズSSと空き領域サイズとの関係について図16(c)に基づいて説明する。垂直画素数L3が「240」であり水平画素数C3が「320」であるサブ画像は、垂直画素数L3が最低垂直画素数L4を超え、かつ、水平画素数C3が最低水平画素数C4を超えているので、サブ画像をそのまま空き領域に描画することはできない。
また、仮に分割数SNが「2」に設定された場合、サブ画像を垂直画素数が「240」で水平画素数が「160」である2個の分割画像として空き領域に描画する第1の方法と、サブ画像を垂直画素数が「120」で水平画素数が「320」である2個の分割画像として空き領域に描画する第2の方法とが考えられる(図16(c)の真ん中の図を参照)。しかしながら、第1の方法でサブ画像を描画することを考えた場合、空き領域内の上下方向11に延びる領域(図16(b)参照)に2個の分割画像を描画することは可能であるが、空き領域内の左右方向12に延びる領域に分割画像を描画することはできない。なぜなら、分割画像の垂直画素数「240」が、空き領域の最低垂直画素数L4(=120)を超えているからである。また、第2の方法でサブ画像を描画することを考えた場合、空き領域内の横方向に延びる領域(図16(b)参照)に2個の分割画像を描画することは可能であるが、空き領域内の上下方向11に延びる領域に2個の分割画像を描画することはできない。なぜなら、分割画像の水平画素数「320」が、空き領域の最低水平画素数C4(=160)を超えているからである。このように、本実施形態で例示したサブ画像を分割画像として空き領域に描画する際に分割数SNを「2」に設定すると、サブ画像の分割の仕方によっては、分割画像を空き領域に描画できないケースが生じ得る。
これに対して、上述のように分割数SNが「4」に設定された場合、図16(b)および図16(c)の右側の図から明らかなように、垂直画素数SSLが空き領域の最低垂直画素数L4と同じ「120」に設定され、かつ、水平画素数SSCが空き領域の最低水平画素数C4と同じ「160」に設定される。そして、この分割画像サイズSSの4個の分割画像が空き領域に描画されることになる。この場合、各分割画像は、空き領域内の上下方向11に延びる領域と左右方向12に延びる領域とのいずれにも描画可能である。したがって、分割数SNが「2」に設定された場合とは異なり、分割画像の描画の仕方によって空き領域に描画できないケースが生じることはない。このように、上記ステップ7で算出される分割数SNおよび分割画像サイズSSは、分割画像をどのような配列で空き領域に描画したとしても確実に空き領域に収まるように、適切な値に設定される。
一方、上記ステップ4においてサブ画像サイズが空き領域サイズよりも小さくないとCPU141に判定された場合(ステップ4:NO)、たとえサブ画像を分割したとしても、サブ画像を構成する全ての画素データを空き領域に描画することは不可能または困難となる。このため、CPU141は、サブ画像サイズが空き領域サイズよりも大きいまたは同じと判定した場合(ステップ4:NO)、縮小倍率を算出して(ステップ9)、算出した縮小倍率を設定情報としてRAM145に格納する(ステップ10)。そして、CPU141は、ステップ7へ処理を進めて、分割画像サイズSSおよび分割数SNを設定する。
ここで、縮小倍率の設定方法について説明する。例えば上記ステップ9で縮小倍率が「0.5」に設定された場合、垂直画素数L3が「480」であり水平画素数C3が「640」であるサブ画像が、垂直画素数L3が「240」(=480×0.5)であり水平画素数C3が「320」(=640×0.5)であるサブ画像に縮小されて、ステップ7およびステップ8の処理が行われる。この場合、描画処理に際して、VRAM_RS1425上で上下方向11および左右方向12の画素数を1/2にしたサブ画像が生成されて、そのサブ画像が、分割画像サイズSSおよび分割数SNに基づく分割画像として第1フレームバッファ1426Aの空き領域に描画される。そして、これらの分割画像は、上下方向11および左右方向12の画素数をそれぞれ2倍にするスケーリング処理(拡大処理)が描画エンジン1424によって行われてからサブ表示器6へ出力される。これにより、分割したとしても空き領域に描画できないサブ画像を空き領域に描画することが可能になる。したがって、空き領域サイズに対して画面解像度が大きい画像表示器を備える遊技機において、従来の描画処理ではその画像表示器に画像を表示することができないという問題を、分割画像サイズSSおよび分割数SNに加えて縮小倍率を設定することで解決することができる。
なお、縮小倍率は、例えば縮小後のサブ画像の総画素数(=垂直画素数×水平画素数)が、空き領域に描画可能な画素データの総数VT以下(好ましくは、総数VTより所定数以上小さな値)となるように設定すればよい。これにより、サブ画像を分割画像として空き領域に容易に描画することが可能となる。ただし、縮小倍率を小さくし過ぎると、スケーリング処理の結果としてサブ表示器6に表示される画像の画質が低下するおそれがあるので、縮小倍率は、縮小後のサブ画像の総画素数が総数VTを超えない範囲で、できるだけ大きな値に設定することが好ましい。
以上説明した図14のフローチャートに基づく設定処理が行われることにより、第1フレームバッファ1426Aまたは第2フレームバッファ1426Bへのメイン画像およびサブ画像の描画に際して、サブ画像の縮小が必要か否かを示す情報、縮小が必要な場合には縮小倍率、サブ画像の分割が必要か否かを示す情報、分割が必要な場合には分割画像サイズSSおよび分割数SNが、それぞれ設定情報としてRAM145に格納される。そして、後述する描画エンジン1424による描画処理は、この設定情報に基づいて実行される。
CPU141は、メイン表示器5のみを用いた1画面表示を実行する際には、上記設定処理によってRAM145に格納した設定情報を含まない制御信号をVDP142へ出力する。これにより、VRAM_FB1426にメイン画像のみが描画されて、メイン表示器5のみを用いた1画面表示が行われる。一方、メイン表示器5およびサブ表示器6を用いた2画面表示を実行する際には、CPU141は、設定情報を含む制御信号をVDP142へ出力する。これにより、VRAM_FB1426にメイン画像およびサブ画像が描画されて、メイン表示器5およびサブ表示器6を用いた2画面表示が行われる。このように、CPU141が設定情報を含まない制御信号と設定情報を含む制御信号とを切り換えて出力することにより、VDP142が描画処理を適切に行うことができる。また、上記設定処理が行われることにより、例えばサブ表示器6のリユースによってサブ画面60の画面解像度、すなわちサブ画像サイズが変化した場合でも、第1フレームバッファ1426Aまたは第2フレームバッファ1426Bの空き領域へのサブ画像の描画を適切に行うことができる。
[演出制御処理]
次に、演出制御部130において行われる処理の詳細を説明する。まず、図17を参照して、処理において用いられる主なデータおよびプログラムについて説明する。なお、図17は、演出制御部130のRAM133に記憶されるデータおよびプログラムの一例を示す図である。
図17に示すように、RAM133は、データ記憶領域133Dおよびプログラム記憶領域133Pを有している。データ記憶領域133Dには、乱数データD40、重心位置データD41、重心位置移動データD42、サブ表示器位置データD43、表示画像位置データD44、保留数コマンドデータD46、変動演出コマンドデータD47、当たり演出コマンドデータD48、演出ボタンコマンドデータD49、サブ画像演出コマンドデータD50、およびサブ表示器移動コマンドデータD51等が格納される。また、プログラム記憶領域133Pには、演出制御部130を動作させる各種プログラムP2が格納される。
乱数データD40は、演出制御部130によって更新された乱数を示すデータである。例えば、乱数データD40は、演出制御部130によって更新された各種乱数(変動演出選択乱数、オープニング演出選択乱数、エンディング演出選択乱数等)をそれぞれ示すデータである。
重心位置データD41は、サブ画面60に対してサブ光センサ606が受光する照度が低下した領域(照度低下検出領域)における重心Gの位置を示すデータであり、少なくとも前回の処理で算出された重心Gの位置を含む履歴データと、重心Gの最新の位置を示すデータとを含んでいる。重心位置移動データD42は、サブ画面60全体に対して時系列的に重心Gが移動した情報(重心位置移動情報)を示すデータである。
サブ表示器位置データD43は、現在位置データD43aおよび目標位置データD43bを含む。現在位置データD43aは、現時点においてサブ表示器6(サブ画面60)が配置されている位置を示すデータである。目標位置データD43bは、サブ表示器6(サブ画面60)が移動する目標となる位置を示すデータである。表示画像位置データD44は、現時点においてメイン表示器5の表示画面に表示されている各画像(典型的には、サブ画面60に表示情報IFを表示する対象となる画像)の位置をそれぞれ示すデータであり、画像音響制御部140から定期的に取得したデータに応じて適宜更新される。
保留数コマンドデータD46、変動演出コマンドデータD47、当たり演出コマンドデータD48、演出ボタンコマンドデータD49、サブ画像演出コマンドデータD50、およびサブ表示器移動コマンドデータD51は、それぞれ画像音響制御部140および/またはランプ制御部150へ送信する各種コマンドを示すデータである。例えば、保留数コマンドデータD46は、保留数が増加したことを示し、保留数を加算する演出を開始すること示す情報等を、画像音響制御部140および/またはランプ制御部150へ送信するためのデータである。変動演出コマンドデータD47は、選択された変動演出パターンで演出を開始することを示す情報や当該演出を終了することを示す情報等を、画像音響制御部140および/またはランプ制御部150へ送信するためのデータである。当たり演出コマンドデータD48は、選択された当たり演出パターンでオープニング演出を開始することを示す情報や演出中の当たり演出を終了するためのエンディング演出を選択されたエンディング演出パターンで開始することを示す情報を、画像音響制御部140および/またはランプ制御部150へ送信するためのデータである。演出ボタンコマンドデータD49は、演出ボタン37や演出キー38における操作状況を示す情報を、画像音響制御部140および/またはランプ制御部150へ送信するためのデータである。サブ画像演出コマンドデータD50は、サブ画面60に表示するためのサブ画像に関する情報を、画像音響制御部140および/またはランプ制御部150へ送信するためのデータである。サブ表示器移動コマンドデータD51は、第1ステッピングモータ29および第2ステッピングモータ30の駆動を指示するための情報をランプ制御部150へ送信するためのデータである。
次に、図18〜図20を参照して、演出制御部130において行われる処理の詳細を説明する。なお、図18は、演出制御部130において実行されるタイマ割込処理の一例を示すフローチャートである。図19は、図18のステップ905におけるサブ表示器処理の詳細な動作の一例を示すサブルーチンである。図20は、サブ表示器6のサブ画面60に表示情報IFが表示されるまでの遊技機1の動作の一例について説明するための説明図である。例えば、図18および図19に示す動作は、演出制御部130のCPU131がROM132に格納された演出制御プログラムを実行することによって実現され、具体的には、当該演出制御プログラムがROM132からRAM133上に適宜読み出されてCPU131によって実行される。なお、図18および図19に示すフローチャートにおいては、本願発明と直接関連しない他の処理については詳細な説明を省略する。また、図18および図19の説明では、演出制御部130が実行する各ステップを「S」と略称する。
遊技機1の電源が投入されると、演出制御部130のCPU131は、図示しないブートROMに記憶されている起動プログラムを実行し、これによってRAM133等の各ユニットが初期化される。そして、ROM132に記憶されたプログラムがRAM133に読み込まれ、CPU131によって各プログラムの実行が開始される。
その後、演出制御部130は、図18に示すタイマ割込処理を行う周期となるCTC周期を設定する。そして、演出制御部130は、乱数更新処理を、上記CTC周期より短い周期で繰り返す。すなわち、演出制御部130が行う遊技機1の演出処理において、演出制御部130は、遊技機1の起動中、所定期間ごとに乱数更新処理を繰り返しつつ、CTC周期ごとに所定のタイマ割込処理を行う。
ここで、乱数更新処理において、演出制御部130は、各種乱数を更新する。例えば、演出制御部130は、乱数データD40に格納されている変動演出選択乱数、オープニング演出選択乱数、エンディング演出選択乱数等に、それぞれ1を加算し、加算された各乱数を用いて乱数データD40を更新する。
次に、図18を用いて、演出制御部130が行うタイマ割込処理について説明する。なお、タイマ割込処理は、遊技機1に電源が供給されている期間中において、上記CTC周期(例えば4ms(ミリ秒))ごとに演出制御部130が実行することによって、演出制御部130の上記演出処理に割込み動作する処理である。
図18において、演出制御部130は、コマンド受信処理を行って(ステップ901)、次のステップに処理を進める。例えば、演出制御部130は、遊技制御部100から出力された各種コマンドを受信し、当該コマンドに応じた処理を行う。
例えば、遊技制御部100は、演出制御部130に対して遊技機1の演出に関する各種コマンドを出力している。上記ステップ901において、例えば、演出制御部130は、遊技制御部100から保留数が増加したことを示す保留数増加コマンドを受信した場合、当該コマンドが示す種別(すなわち、第1始動口21に遊技球が入賞することによる保留であるのか、第2始動口22に遊技球が入賞することによる保留であるのか)の保留数に1を加算し、当該種別の保留数を加算する演出を示す保留数コマンドを保留数コマンドデータD46にセットする。演出制御部130は、遊技制御部100から特別図柄抽選を行うための変動演出を開始することを示す変動開始コマンドを受信した場合、当該変動開始コマンドおよび乱数データD40に格納されている変動演出選択乱数に応じて変動演出パターンを選択し、選択された変動演出パターンで演出を開始することを示す変動演出開始コマンドを変動演出コマンドデータD47にセットする。演出制御部130は、遊技制御部100から特別図柄抽選を行うための変動演出を終了することを示す変動停止コマンドを受信した場合、当該コマンドに応じて演出中の変動演出を終了することを示す変動演出終了コマンドを変動演出コマンドデータD47にセットする。演出制御部130は、遊技制御部100から当たり演出を開始することを示すオープニングコマンドを受信した場合、当該コマンドおよび乱数データD40に格納されている乱数に応じて当たり演出パターンを選択し、選択された当たり演出パターンでオープニング演出を開始することを示すオープニング演出開始コマンドを当たり演出コマンドデータD48にセットする。演出制御部130は、遊技制御部100から当たり演出を終了することを示すエンディングコマンドを受信した場合、当該コマンドおよび乱数データD40に格納されている乱数に応じてエンディング演出パターンを選択し、選択されたエンディング演出パターンでエンディング演出を開始して当たり演出を終了することを示すエンディング演出開始コマンドを当たり演出コマンドデータD48にセットする。
次に、演出制御部130は、演出ボタン37や演出キー38への操作が要求される演出中であって、現時点が当該操作の受付可能であるか否かを判断する(ステップ902)。そして、演出制御部130は、演出ボタン37や演出キー38への操作が要求される演出中であって、現時点が当該操作の受付可能期間中である場合、次のステップ903に処理を進める。一方、演出制御部130は、演出ボタン37や演出キー38への操作が要求される演出中でない場合や、当該演出中であっても当該操作の受付期間前または既に当該操作の受け付けが終了している場合、次のステップ905に処理を進める。
ステップ903において、演出制御部130は、演出ボタン37や演出キー38がオンされたか否かを判断する。そして、演出制御部130は、演出ボタン37や演出キー38がオンされた場合、演出ボタン37や演出キー38をオンする操作が行われたことを示す演出ボタンコマンドを演出ボタンコマンドデータD49にセットし(ステップ904)、次のステップ905に処理を進める。一方、演出制御部130は、演出ボタン37や演出キー38がオンされていない場合、そのまま次のステップ905に処理を進める。
ステップ905において、演出制御部130は、サブ表示器6を移動させたりサブ画面60に画像を表示したりするサブ表示器処理を行い、次のステップに処理を進める。以下、図19を参照して、上記ステップ905で行うサブ表示器処理について説明する。
図19において、演出制御部130は、サブ光センサ606からそれぞれ出力される信号を取得する(ステップ910)。そして、演出制御部130は、取得した信号を用いて、サブ光センサ606が受光する照度が低下した領域(照度低下領域)が所定のサイズ以上で存在するか否かを判断する(ステップ911)。一例として、演出制御部130は、サブ画面60全体に対してサブ光センサ606が受光した照度それぞれについて、所定の閾値より低い照度を示している位置を照度低下領域とする。他の例として、演出制御部130は、サブ光センサ606が受光した照度の変化量それぞれについて、照度が低下する変化を検出したサブ光センサ606の位置を当該照度が上昇する変化に変わるまで照度低下領域とする。そして、演出制御部130は、所定のサイズ以上の照度低下領域がある場合、次のステップ912に処理を進める。一方、演出制御部130は、所定サイズ以上の照度低下領域がない場合、次のステップ917に処理を進める。
ステップ912において、演出制御部130は、サブ画面60に対する照度低下領域の重心Gの位置を算出し、次のステップに処理を進める。例えば、演出制御部130は、サブ画面60に設定されている画面座標系に基づいて、照度低下領域の重心G(図6参照)の位置を算出し、算出された重心Gの位置を最新の重心Gの位置として重心位置データD41を更新する。なお、重心Gの位置を示す情報は、サブ画面60における所定の基準点(例えば、サブ画面60の中央や左上隅)を原点とした座標値でもいいし、所定の基準位置からの重心Gの位置の差を示すベクトル等でもかまわない。
次に、演出制御部130は、輪郭画像EIを設定して(ステップ913)、次のステップに処理を進める。ここで、図6に示すように、輪郭画像EIは、照度低下領域の周辺を囲うようにサブ画面60に表示される画像である。例えば、輪郭画像EIは、サブ画面60に対して検出された照度低下領域および/または重心Gの位置に基づいて設定される。第1の例として、輪郭画像EIは、サブ画面60に対して検出された照度低下領域の輪郭に対して所定の距離だけ離れた外側を、線や模様で囲むような画像に設定する。第2の例として、輪郭画像EIは、サブ画面60に対して算出された重心Gの位置を中心とした所定の半径を有する円や楕円等の図形を、線や模様で描いた画像に設定する。第3の例として、輪郭画像EIは、サブ画面60に対して算出された重心Gの位置を中心とし、重心Gの位置から最も遠い照度低下領域の輪郭上の位置と重心Gの位置との距離を半径や長軸半径とする円や楕円等の図形を、線や模様で描いた画像に設定する。
次に、演出制御部130は、上記ステップ912で算出された重心Gの位置が前回算出された重心Gの位置に対して移動しているか否かを判断する(ステップ914)。そして、演出制御部130は、重心Gの位置が移動している場合、次のステップ915に処理を進める。一方、演出制御部130は、重心Gの位置が移動していない場合、次のステップ918に処理を進める。例えば、演出制御部130は、重心位置データD41が示す前回の処理で算出された重心Gの位置と重心Gの最新の位置とを比較して、重心Gの位置が移動しているか否かを判断する。
ステップ915において、演出制御部130は、重心位置移動情報を算出して、次のステップに処理を進める。ここで、重心位置移動情報は、所定サイズ以上の照度低下領域が検出されてから、当該照度低下領域が未検出となるまでに重心Gが移動した位置の履歴を示す情報であり、遊技者がサブ画面60に手を差し出してから手を差し出す操作をやめるまでの手の動きを推定するための情報となる。第1の例として、照度低下領域が検出されてから継続的に検出された状態で現時点まで重心Gが移動した経路を示す情報を、重心位置移動情報として算出する。第2の例として、照度低下領域が検出されて最初に算出された重心Gの位置から継続的に照度低下領域が検出された状態で現時点において算出された重心Gの位置を結ぶ方向および距離を示す情報を、重心位置移動情報として算出する。上記ステップ915において、演出制御部130は、算出された重心位置移動情報を用いて、重心位置移動データD42を更新する。
次に、演出制御部130は、サブ表示器6が移動する目標となる位置(目標位置)を算出して(ステップ916)、次のステップ918に処理を進める。例えば、演出制御部130は、現在位置データD43aが示すサブ表示器6の現在位置および重心位置移動データD42が示す重心位置移動情報を用いて、サブ表示器6が移動する目標位置を算出し、算出された目標位置を用いて目標位置データD43bを更新する。第1の例として、照度低下領域が継続して検出されてから現時点まで重心Gが移動した経路によって設定された重心位置移動情報を用いて、当該重心Gの移動経路に沿った移動を行うようにサブ表示器6が移動する次の目標位置を算出する。第2の例として、照度低下領域が検出されて最初に算出された重心Gの位置から現時点で算出された重心Gの位置を結ぶ方向および距離によって設定された重心位置移動情報を用いて、当該方向に所定の移動距離だけ離れた位置をサブ表示器6が移動する次の目標位置として算出する。なお、当該目標位置を算出するための上記所定の移動距離は、重心位置移動情報が示すサブ画面60上の距離と同じ距離でもいいし、重心位置移動情報が示すサブ画面60上の距離を所定倍した距離でもよい。後者の場合、重心Gの移動速度(すなわち、重心位置移動情報が示すサブ画面60上の距離を当該重心位置移動情報が設定されてからの時間で除算した値)に応じた倍数を、重心位置移動情報が示すサブ画面60上の距離に乗算した値を、上記所定の移動距離にしてもよい。
上記ステップ911において所定サイズ以上の照度低下領域がない場合と判断された場合、演出制御部130は、重心Gの位置を示すデータおよび重心位置移動情報を示すデータをクリアして(ステップ917)、次のステップ918に処理を進める。例えば、演出制御部130は、重心Gの移動履歴や最新位置がない状態にクリアして重心位置データD41を設定し、重心位置移動情報がない状態にクリアして重心位置移動データD42を設定する。
ステップ918において、演出制御部130は、目標位置データD43bが示す目標位置に基づいて、サブ表示器6を移動させ、次のステップに処理を進める。例えば、演出制御部130は、第1ステッピングモータ29および第2ステッピングモータ30の駆動を指示するサブ表示器移動コマンドをサブ表示器移動コマンドデータD51にセットする。上記サブ表示器移動コマンドは、後述するステップ906のコマンド送信処理を実行することによってランプ制御部150へ送信される。上記サブ表示器移動コマンドは、目標位置データD43bが示す目標位置を示す情報が含まれており、ランプ制御部150は、当該目標位置に基づいて第1ステッピングモータ29および第2ステッピングモータ30の駆動を制御する。これにより、駆動機構10(図7参照)が駆動して、上記目標位置へサブ表示器6が移動する(図20(a)参照)。このように、ランプ制御部150は、演出制御部130によって目標位置が設定された場合に、その目標位置に向かってサブ表示器6を移動させる。なお、サブ表示器6が既に目標位置に到達している場合、すなわち現在位置データD43aが示すサブ表示器6の現在位置と目標位置データD43bが示すサブ表示器6の目標位置とが実質的にサブ表示器6が同じ位置であることを示している場合、サブ表示器6を移動させる指示を行わなくてもかまわない。
次に、演出制御部130は、メイン画面50に対するサブ表示器6(サブ画面60)の位置を示す位置情報を取得し(ステップ919)、次のステップに処理を進める。例えば、演出制御部130は、メイン画面50に設けられた各メイン光センサ56による検知結果(各メイン光センサ56から出力される電気信号の変化)に基づいて、メイン画面50に対する現時点のサブ表示器6の位置を検出する。そして、演出制御部130は、上記検出結果に基づいてサブ表示器6の位置を示す位置情報を生成し、当該位置情報を用いて現在位置データD43aを更新する。なお、演出制御部130が生成するサブ表示器6の位置情報は、メイン画面50に対するサブ表示器6に設けられた基準(例えば、フレーム61における上下左右に形成されている4つのコーナのうち、いずれか1つのコーナ位置)の位置を示す情報でもかまわない。
次に、演出制御部130は、サブ表示器6(サブ画面60)にサブ画像を表示するか否かを判断する(ステップ920)。そして、演出制御部130は、サブ表示器6にサブ画像を表示する場合、次のステップ921に処理を進める。一方、演出制御部130は、サブ表示器6にサブ画像を表示しない場合、次のステップ922に処理を進める。
第1の例として、上記ステップ913の処理において輪郭画像EIが設定されている場合、演出制御部130は、上記ステップ920において肯定判定する。第2の例として、上記ステップ913の処理において輪郭画像EIが設定されていない場合、上記ステップ920において、演出制御部130は、現在位置データD43aが示すサブ表示器6の現在位置情報、表示画像位置データD44が示す各画像の位置情報、および遊技機1の構成部材の位置情報を用いて、サブ表示器6(サブ画面60)にサブ画像を表示するか否かを判断する。例えば、表示画像位置データD44には、現時点においてメイン画面50に表示されている各画像の位置を示すデータが、画像音響制御部140から定期的に取得したデータに応じて適宜更新されて記述されている。演出制御部130は、表示画像位置データD44に記述された位置情報のうち、サブ画面60に表示情報IFを表示する対象となる画像の位置情報を、表示対象画像の位置情報として抽出する。そして、演出制御部130は、上記ステップ913の処理において輪郭画像EIが設定されていない、かつ、抽出された表示対象画像の位置情報に基づいて、メイン画面50に表示されている表示対象画像の1つがサブ画面60と重なる場合、上記ステップ920において肯定判定する。第3の例として、演出制御部130は、上記ステップ913の処理において輪郭画像EIが設定されていない、かつ、予め設定された遊技機1の構成部材の位置情報に基づいて、遊技機1の構成部材における1つがサブ画面60と重なり、当該重なる構成部材が表示情報IFを表示する対象(例えば、可動役物7)である場合、上記ステップ920において肯定判定する。第4の例として、演出制御部130は、上記ステップ913の処理において輪郭画像EIが設定されていない、かつ、メイン画面50とサブ画面60とが重なり、当該重なった部位に表示されているメイン画面50の画像の視認を妨げる場合、上記ステップ920において肯定判定する。このように、上記第2の例および第3の例では、上記ステップ920において、演出制御部130は、現在位置データD43aに格納されているサブ表示器6の位置が、サブ画面60の背面側(図1の紙面奥側)に表示情報IFを表示する対象の1つが配置されるような位置であるか否かを判断している。つまり、上記第2の例および第3の例では、演出制御部130は、メイン光センサ56の検知結果に基づいて検出したサブ表示器6(サブ画面60)の位置、表示画像の位置、および構成部材の位置に基づいて、サブ表示器6を正視した場合にサブ画面60と重なる位置に表示情報IFを表示する対象が配置されているか否かの判定に基づいて、サブ画像を表示するか否かを判断している。また、第1の例では、演出制御部130は、サブ画面60に輪郭画像EIを表示するか否かの判定に基づいて、サブ画像を表示するか否かを判断している。さらに、第4の例では、メイン画面50上にサブ表示器6が重なることによってメイン画面50に表示された画像の視認を妨げるか否かの判定に基づいて、サブ画像を表示するか否かを判断している。
なお、上記ステップ920における第2の例および第3の例の判定においては、表示情報IFを表示する対象のうち、1つの対象全体がサブ画面60と重なる場合に肯定判定してもいいし、1つの対象の少なくとも一部がサブ画面60と重なる場合に肯定判定してもいい。また、上記ステップ920における第2の例および第3の例の判定においては、表示情報IFを表示する対象がサブ画面60と複数重なる場合、いずれか1つの対象を選択する。例えば、サブ画面60と複数の対象が重なる場合、上記ステップ920の判定では、複数の対象のうち最もサブ画面60と重なる範囲が大きい対象を選択してもいいし、複数の対象のうちサブ画面60の中央に近い対象を選択してもいい。
ステップ921において、演出制御部130は、サブ画面60に表示する情報を指示するサブ画像演出コマンドをサブ画像演出コマンドデータD50にセットし、当該サブルーチンによる処理を終了する。なお、上記サブ画像演出コマンドは、後述するステップ906のコマンド送信処理を実行することによって画像音響制御部140へ送信され、画像音響制御部140が当該サブ画像演出コマンドに応じた画像をサブ画面60に表示する。
上記ステップ920が第1の例によって肯定判定された場合、演出制御部130は、上記ステップ913で設定された輪郭画像EIをサブ画面60に表示する指示およびサブ画面60の現在位置を示すサブ画像演出コマンドをサブ画像演出コマンドデータD50にセットする。上記ステップ920が第2の例または第3の例によって肯定判定された場合、演出制御部130は、サブ画面60と重なると判定された対象に関連する表示情報IFをサブ画面60に表示する指示およびサブ画面60の現在位置を示すサブ画像演出コマンドをサブ画像演出コマンドデータD50にセットし、当該サブルーチンによる処理を終了する。ここで、表示情報IFをサブ画面60に表示するサブ画像演出コマンドとして、表示情報IFの種別を示す情報や、遊技者へ報知する表示情報IF自体をセットすることが考えられる。前者のサブ画像演出コマンドを画像音響制御部140に送信する場合、画像音響制御部140において通知された種別に応じた表示情報IFを生成する必要があるため、当該種別に対応する表示情報IFを予め画像音響制御部140(例えば、制御用ROM144や画像用ROM148内)に準備しておけばよい。一方、後者のサブ画像演出コマンドを画像音響制御部140に送信する場合、演出制御部130において表示情報IFを生成する必要があるため、各種表示情報IFを予め演出制御部130(例えば、ROM102内)に準備しておけばよい。例えば、表示情報IFは、対象が表示された場合の遊技機状況等を示す情報や対象が移動した場合の遊技機状況等を示す情報が考えられる。具体的には、対象が表示された場合の遊技機状況等を示す情報としては、特別図柄の変動表示中にリーチとなったときにその対象(キャラクタ)が出現した場合に特別図柄抽選に当選する信頼度を示す文字情報(図4(a)、図20(b)参照)や非文字情報(例えば、期待度に応じて色、サイズ、形状等が変化するマーク等)が考えられる。また、対象が移動した場合の遊技機状況等を示す情報としては、対象(可動役物7)が作動したときに特別図柄抽選に当選する信頼度を示す文字情報や非文字情報が考えられる。なお、表示情報IFは、サブ画面60と重なる対象に関連するものであれば特に限定されるものではない。上記ステップ920が第4の例によって肯定判定された場合、演出制御部130は、コピー画像のみをサブ画面60に表示する指示およびサブ画面60の現在位置を示すサブ画像演出コマンドをサブ画像演出コマンドデータD50にセットし、当該サブルーチンによる処理を終了する。
一方、ステップ922において、演出制御部130は、サブ画面60を未表示にする指示を示すサブ画像演出コマンドをサブ画像演出コマンドデータD50にセットし、当該サブルーチンによる処理を終了する。
図18に戻り、上記ステップ905のサブ表示器処理の後、演出制御部130は、画像音響制御部140および/またはランプ制御部150に対して、それぞれ制御用コマンドを出力し(ステップ906)、当該タイマ割込処理を示すサブルーチンによる処理を終了する。例えば、演出制御部130は、保留数コマンドデータD46、変動演出コマンドデータD47、当たり演出コマンドデータD48、演出ボタンコマンドデータD49、サブ画像演出コマンドデータD50、およびサブ表示器移動コマンドデータD51にそれぞれセットされている演出に関するコマンドを画像音響制御部140および/またはランプ制御部150に出力することによって、当該コマンドに応じた演出を画像音響制御部140および/またはランプ制御部150に実行させる。
[描画処理]
以下、図21〜図24を参照しつつ、画像音響制御部140(VDP142)によって行われる描画処理について説明する。ここで、図21は、画像音響制御部140(VDP142)によって行われる描画処理の一例を示すフローチャートである。図22は、分割数SNが「0」に設定されている場合にVDP142によって行われる描画処理の一例について説明するための説明図である。図23は、分割数SNが「4」に設定されている場合にVDP142によって行われる描画処理の一例について説明するための説明図である。図24は、分割画像の出力処理の一例について説明するための説明図である。なお、図21に示すフローチャートに基づいて説明する画像音響制御部140(VDP142)で行われる描画処理は、制御用ROM144に記憶されているプログラムに基づいてCPU141が生成する制御信号に基づいて行われる。また、以下の説明では、第1フレームバッファ1426Aおよび第2フレームバッファ1426Bのうち、第1フレームバッファ1426Aを使用して描画処理が行われる場合を例に説明するが、第2フレームバッファ1426Bを使用した描画処理も第1フレームバッファ1426Aを使用した描画処理と同様に行われる。
図21において、CPU141からの制御信号がVDP142に入力されると、描画エンジン1424は、メイン画像および/またはサブ画像の描画処理に使用するフレームバッファを選択する(ステップ290)。例えば、描画エンジン1424は、第1フレームバッファ1426Aおよび第2フレームバッファ1426Bのうち、現時点でメイン表示器5および/またはサブ表示器6へ画像を出力しているフレームバッファを特定して、画像を出力していないフレームバッファを今回のフレームの描画処理に使用するフレームバッファとして選択する。
上記ステップ290で第1フレームバッファ1426Aが選択された場合、描画エンジン1424は、CPU141からの指示に応じたメイン表示器5に表示されるメイン画像を、第1フレームバッファ1426Aに描画し(ステップ291)、次のステップに処理を進める。例えば、CPU141は、演出制御部130から指示されたコマンドに対応する演出を決定し、当該演出の実行を指示する制御信号をVDP142へ出力している。この制御信号に応じて、描画エンジン1424は、CPU141からの制御信号に応じて、装飾図柄やキャラクタCI等を示す第1画像と、装飾図柄等の背景を示す背景画像としての第2画像と、文字画像としての第3画像とを、画像用ROM148からVRAM_RS1425に読み出して、これらの画像を合成した画像であるメイン画像を第1フレームバッファ1426Aに描画する(図22参照)。
次に、画像音響制御部140は、サブ画面60に画像を表示するか否かを判断する(ステップ292)。ここで、上記ステップ921の処理について説明したように、演出制御部130は、サブ画面60に画像を表示する場合、当該画像を表示するための情報をサブ画像演出コマンドとして生成し、当該サブ画像演出コマンドを画像音響制御部140に出力している。また、上記ステップ922の処理について説明したように、演出制御部130は、サブ画面60に画像を表示しない場合、サブ画面60を未表示にする指示を示すサブ画像演出コマンドを生成し、当該サブ画像演出コマンドを画像音響制御部140に出力している。このサブ画像演出コマンドに応じて、画像音響制御部140は、演出制御部130からサブ画面60に画像を表示することを示すサブ画像演出コマンドを取得した場合、上記ステップ292において肯定判定し、次のステップ293に処理を進める。一方、画像音響制御部140は、演出制御部130からサブ画面60に画像を表示しないことを示すサブ画像演出コマンドを取得した場合、上記ステップ292において否定判定し、次のステップ309に処理を進める。
ステップ293において、描画エンジン1424は、第1フレームバッファ1426Aに描画されたメイン画像のうち、サブ画面60の位置に対応する領域をコピーしてコピー画像を生成し、次のステップに処理を進める。例えば、演出制御部130によってサブ画面60の位置が検出されると、サブ画面60の現時点の位置情報が画像音響制御部140へ送信され、CPU141がサブ画面60の位置情報を含む制御信号をVDP142へ出力する。そして、描画エンジン1424は、第1フレームバッファ1426Aに描画されたメイン画像のうち、上記位置情報に対応する領域(典型的には、サブ画面60が重なる領域)をコピーしてコピー画像を生成する。具体的には、描画エンジン1424は、第1フレームバッファ1426Aに描画されたメイン画像の中から、上記位置情報に対応する240×320(垂直画素数×水平画素数)の画素データをコピーして、VRAM_RS1425にコピー画像として格納する。なお、上記ステップ913で設定された輪郭画像EIのみをサブ画面60に表示する場合、上記コピー画像の生成処理およびVRAM_RS1425への書き込み処理(すなわち、上記ステップ293の処理)を省略する。
次に、描画エンジン1424は、図22に示されるように、メイン画面50には表示されず、サブ画面60にのみ表示される表示内容を示す差分画像(すなわち、輪郭画像EIや表示情報IFを示す画像)をコピー画像に合成してサブ画像を生成し(ステップ294)、次のステップに処理を進める。例えば、制御用ROM144には、輪郭画像EIや表示情報IFを示すサブ画像情報が記憶されており、CPU141は、演出制御部130から取得した輪郭画像EIや表示情報IFに対応するサブ画像情報を制御用ROM144から読み出してRAM145に格納する。そして、上記サブ画像情報を含む制御信号がVDP142へ出力される。描画エンジン1424は、CPU141からの制御信号に含まれているサブ画像情報が示す差分画像を生成するために必要な素材データを画像用ROM148から読み出してVRAM_RS1425に格納して、その素材データを用いて差分画像(すなわち、輪郭画像EIや表示情報IFを示す画像)を生成する。そして、描画エンジン1424は、生成された差分画像をVRAM_RS1425上で例えばZバッファ法等を用いてコピー画像に合成することによって、サブ画像を生成する。図22には、メイン画像に対するサブ画像の位置が、破線18で示されている。本実施形態では、上述したように、垂直画素数L3が「240」で水平画素数C3が「320」のサブ画像が生成される。このように、描画エンジン1424は、メイン画像からサブ画面60の位置に対応する領域をコピーして得られるコピー画像に、遊技者へ報知する情報(輪郭画像EIや表示情報IF)を示す差分画像を合成して、サブ画面60に表示するためのサブ画像を生成する。なお、上記ステップ913で設定された輪郭画像EIのみをサブ画面60に表示する場合、コピー画像が生成されないため、上記差分画像をそのままサブ画像としてVRAM_RS1425に格納する。また、コピー画像のみをサブ画面60に表示する場合、上記差分画像が存在しないため上記ステップ294の処理を省略してコピー画像をそのままサブ画像として取り扱う。
次に、描画エンジン1424は、CPU141から出力された制御信号に上記ステップ10(図14参照)の処理によって設定された縮小倍率を示す情報が含まれているか否かに基づいて、縮小倍率が設定されているか否かを判定する(ステップ295)。縮小倍率が設定されていると判定した場合(ステップ295:YES)、描画エンジン1424は、ステップ294の処理で生成されたサブ画像に対して、制御信号から抽出した縮小倍率を示す情報に基づいて、サブ画像の縮小処理を行い(ステップ296)、次のステップ297に処理を進める。例えば、縮小倍率が「0.5」に設定されている場合、描画エンジン1424は、垂直画素数L3が「240」で水平画素数C3が「320」のサブ画像から、垂直画素数L3が「120」(=240×0.5)で水平画素数C3が「160」(=320×0.5)のサブ画像を生成する。一方、縮小倍率が設定されていないと判定した場合(ステップ295:NO)、描画エンジン1424は、そのまま次のステップ297に処理を進める。
ステップ297において、描画エンジン1424は、CPU141から出力された制御信号に含まれている分割数SNが「0」であるか否かを判定する。そして、分割数SNが「0」であると判定した場合(ステップ297:YES)、描画エンジン1424は、VRAM_RS1425内のサブ画像を分割することなく第1フレームバッファ1426Aの空き領域に描画することができるので、サブ画像をそのまま空き領域に描画し(ステップ298)、次のステップに処理を進める。このように、描画エンジン1424は、分割が不要であるとCPU141によって予め判定されている場合には、サブ画像を分割することなく、メイン画像の描画によってできた第1フレームバッファ1426A内の空き領域にサブ画像を描画する。
図22には、サブ画像が分割されることなく第1フレームバッファ1426Aの空き領域に描画される例が示されている。図22に例示されているように、垂直画素数L2が「600」で水平画素数C2が「800」のメイン画像に対して上述した例とは異なり垂直画素数L1が「840」で水平画素数C1が「1120」であるフレームバッファが用意されている場合、そのフレームバッファの空き領域の最低垂直画素数L4が「240」(=840−600)となり、最低水平画素数C4が「320」(=1120−800)となる。一方、サブ画像の垂直画素数L3が「240」で水平画素数C3が「320」である場合、サブ画像の垂直画素数L3が最低垂直画素数L4と等しく、水平画素数C3も最低水平画素数C4と等しくなっている。このような場合には、描画エンジン1424は、サブ画像を分割することなく第1フレームバッファ1426Aの空き領域に描画することが可能である。
上記ステップ298の処理の後、描画エンジン1424は、第2フレームバッファ1426Bに格納されている前のフレームの画像を表示する処理が完了し、上記ステップ291およびステップ298の処理によって第1フレームバッファ1426Aに描画された次のフレームの画像を表示するタイミングになるのを待つ(ステップ299)。そして、上記表示タイミングになった場合(ステップ299:YES)、出力回路1427は、メイン画像を第1フレームバッファ1426Aから読み出してメイン表示器5へ出力すると共に(ステップ300;図22参照)、サブ画像を同じく第1フレームバッファ1426Aから読み出してサブ表示器6へ出力する(ステップ301;図22参照)。そして、画像音響制御部140は、描画処理が終了するまで上記ステップ290に戻って描画処理を繰り返す。
一方、描画エンジン1424は、CPU141から出力された制御信号に含まれている分割数SNが「0」ではない(2以上の偶数)であると判定した場合(上記ステップ297:NO)、上記ステップ294の処理でVRAM_RS1425に生成したサブ画像を分割して第1フレームバッファ1426Aの空き領域に描画し(ステップ303)、次のステップに処理を進める。
図23には、分割数SNが「4」であり、分割画像サイズSSが120×160(垂直画素数×水平画素数)に設定されている場合に、第1フレームバッファ1426Aにメイン画像を描画して生じた空き領域に対して、サブ画像が4個の分割画像として描画される様子が示されている。サブ画像の分割が必要であるとCPU141によって予め判定されている場合、図23に例示されるように、描画エンジン1424は、サブ画像を複数の領域に分割して得られる分割画像(ここでは4個の分割画像)にしてそれぞれ第1フレームバッファ1426Aの空き領域に描画する。このように、描画エンジン1424は、CPU141によって分割が必要であると判定されて分割画像サイズSSおよび分割数SNが予め設定されている場合、その設定に基づいてサブ画像を分割して第1フレームバッファ1426Aの空き領域に描画する。
次に、描画エンジン1424は、上記ステップ299の処理と同様に、上記ステップ291および303の処理で第1フレームバッファ1426Aに描画した次のフレームの画像を表示するタイミングになるのを待つ(ステップ304)。そして、表示タイミングになった場合、出力回路1427は、図23に示されるように、メイン画像を第1フレームバッファ1426Aから読み出してメイン表示器5に出力し(ステップ305)、次のステップに処理を進める。
次に、描画エンジン1424は、CPU141からの制御信号に縮小倍率を示す情報が含まれているか否かに基づいて、縮小倍率が設定されているか否かを判定する(ステップ306)。縮小倍率が設定されていない場合(ステップ306:NO)、すなわち上記ステップ296の処理が行われていない場合、出力回路1427は、分割画像を第1フレームバッファ1426Aから読み出して、そのままサブ画像としてサブ表示器6に出力する(ステップ307)。そして、画像音響制御部140は、描画処理が終了するまで上記ステップ290に戻って描画処理を繰り返す。
ところで、メイン画像は、メイン画面50を構成する画素(カラー液晶素子52)と同じ配列で第1フレームバッファ1426Aに格納されている。このため、メイン画像を構成する各画素データに関しては、そのままの順番でメイン表示器5に出力すればよい。また、サブ画像が分割されることなく第1フレームバッファ1426Aに描画された場合(図22参照)、このサブ画像は、サブ画面60を構成する画素と同じ配列で第1フレームバッファ1426Aに格納されている。このため、このサブ画像を構成する各画素データに関しては、そのままの順番でサブ表示器6に出力すればよい。
これに対して、サブ画像が分割されて第1フレームバッファ1426Aに描画された場合(図23参照)、このサブ画像は、サブ画面60を構成する画素とは異なる配列で第1フレームバッファ1426Aに格納されている。そこで、サブ画像がサブ画面60に正しく表示されるように、出力回路1427は、サブ画像を構成する各画素データが本来出力されるべき順序で出力されるように、分割画像をそれぞれ構成する各画素データを読み出す。例えば、図23に例示された配列で4個の分割画像が第1フレームバッファ1426Aに格納されている場合、出力回路1427は、図24に示されるように、サブ画像の左上方の領域と同じ表示内容を示す第1分割画像に対して、左右方向12に1ライン分の画素データを読み出して出力する処理と、サブ画像の右上方の領域と同じ表示内容を示す第2分割画像に対して、左右方向12に1ライン分の画素データを読み出して出力する処理とを交互に繰り返す。これにより、サブ画像の上半分に対応する画素データが出力されたことになる。続いて、出力回路1427は、サブ画像の左下方の領域と同じ表示内容を示す第3分割画像に対して、左右方向12に1ライン分の画素データを読み出して出力する処理と、サブ画像の右下方の領域と同じ表示内容を示す第4分割画像に対して、左右方向12に1ライン分の画素データを読み出して出力する処理とを交互に繰り返す。これにより、分割画像の下半分に対応する画素データが出力されたことになる。このように、出力回路1427は、サブ画像が分割されて描画された場合であっても、そのサブ画像が正しくサブ画面60に表示されるように、分割画像の読み出しを行うことができる。
一方、縮小倍率が設定されている場合(ステップ306:YES)、描画エンジン1424は、分割画像を拡大してから、サブ画像としてサブ表示器6に出力する(ステップ308)。具体的には、縮小倍率の逆数を拡大倍率として第1フレームバッファ1426A内の各分割画像に対して拡大処理を行い、拡大処理された分割画像を出力回路1427に出力させる。その結果、サブ画面60の画面解像度と同じ画素数の画素データが出力される。例えば、縮小倍率が「0.5」に設定されている場合、描画エンジン1424は、拡大倍率2倍(=1/0.5)に設定する。そして、第1フレームバッファ1426Aに格納されている各分割画像をVRAM_RS上で2倍に拡大し、拡大処理した各分割画像をサブ画像として出力回路1427に出力させる。そして、画像音響制御部140は、描画処理が終了するまで上記ステップ290に戻って描画処理を繰り返す。
また、上記ステップ292においてサブ画面60を未表示にすると判断された場合、描画エンジン1424は、上記ステップ299やステップ304の処理と同様に、上記ステップ291の処理で第1フレームバッファ1426Aに描画した次のフレームの画像を表示するタイミングになるのを待つ(ステップ309)。そして、表示タイミングになった場合、出力回路1427は、メイン画像を第1フレームバッファ1426Aから読み出してメイン表示器5に出力する(ステップ310)。そして、画像音響制御部140は、描画処理が終了するまで上記ステップ290に戻って描画処理を繰り返す。
このように、本実施形態によれば、演出用のサブ表示器6が移動可能に構成されているので、遊技者の視点が固定されにくいという利点がある。また、演出用のサブ表示器6は、サブ画面60の前方空間に差し出された遊技者の手の動きに追従するように移動するため、サブ表示器6を直接動かしているような操作感覚を得ることが可能であり、遊技者の操作性が向上する。ここで、遊技者の手の動きに対応してサブ表示器6を動かす方法は、様々な態様が考えられる。
第1の例として、重心位置移動情報が、照度低下領域が継続して検出されてから現時点まで重心Gが移動した経路によって設定されている場合、前回の処理で算出された重心Gの位置から現時点で得られている重心Gの最新の位置までの方向および距離に基づいて、サブ表示器6が移動する目標となる位置(目標位置)として設定する。これによって、サブ表示器6は、所定サイズ以上の照度低下領域が検出されなくなるまで、遊技者の手の動きに即時に追従するような移動を行うことになる。
第2の例として、重心位置移動情報が、照度低下領域が検出されて最初に算出された重心Gの位置から現時点で算出された重心Gの位置を結ぶ方向および距離によって設定されている場合、最初に算出された重心Gの位置から現時点で得られている重心Gの最新の位置までの方向および距離に基づいて、サブ表示器6が移動する目標となる位置(目標位置)として設定する。これによって、サブ表示器6は、所定サイズ以上の照度低下領域が検出されなくなるまで、遊技者がサブ画面60に最初に手を差し出した位置を基準とした方向に即時に移動することになる。
第3の例として、所定サイズ以上の照度低下領域が検出された後に当該照度低下領域が検出されたくなった時点を契機として、サブ表示器6の移動を開始する。具体的には、照度低下領域が継続して検出されてから現時点まで重心Gが移動した経路によって重心位置移動情報が設定されている場合、照度低下領域が検出されたくなった時点を契機として、当該重心Gの移動経路に沿った移動を行うように順次目標位置を算出が設定される。これによって、サブ表示器6は、照度低下領域が検出されたくなった時点から上記経路に沿った移動を開始する。また、照度低下領域が検出されて最初に算出された重心Gの位置から現時点で算出された重心Gの位置を結ぶ方向および距離によって重心位置移動情報が設定されている場合、照度低下領域が検出されたくなった時点で上記ステップ916で算出されている目標位置のみに基づいてサブ表示器6が移動する。これによって、サブ表示器6は、最終的に遊技者が指示した方向へ照度低下領域が検出されたくなった時点から移動を開始する。
なお、上記第1の例および第2の例による移動態様の場合、第1ステッピングモータ29および第2ステッピングモータ30のレスポンス等によって、上述したように設定された目標位置にサブ表示器6が到達する前に新たな目標位置が設定されることがあり得る。このような場合であっても、上記第1の例や第2の例で述べた移動態様で新たな目標位置を次々設定してもかまわない。また、設定された目標位置にサブ表示器6が到達する前に新たに算出された目標位置を無視し、目標位置にサブ表示器6が到達した直後に算出された目標位置を次の移動目標に設定してサブ表示器6を移動させてもかまわない。
また、本実施形態によれば、表示情報IFを表示する対象(例えば、メイン表示器5に表示されたキャラクタCI等の画像オブジェクトや可動役物7等の遊技機1に設けられた構成部材)が、サブ画面60と重なる位置までサブ表示器6が移動した場合、その対象に関連する情報を示す画像(表示情報IF)がサブ画面60に表示される。したがって、2つの画面に表示された画像を重ね合わせて遊技者に報知するという従来にはない効果的な演出を行うことができる。また、遊技者がサブ画面60の前方空間に手を差し出した場合、差し出された手に反応した画像(輪郭画像EI)がサブ画面60に表示されるため、サブ画面60に対して行われたジャスチャーが遊技機1に認識されていることを遊技者に報知することができる。
また、本実施形態によれば、サブ画像が第1フレームバッファ1426Aの空き領域に収まるように分割された状態で描画される。このため、必要以上に容量の大きいフレームバッファを設けることなく、メイン画面50に表示されるメイン画像と、サブ画面60に表示されるサブ画像とを1個の描画エンジン1424によって1つのフレームバッファ(第1フレームバッファ1426Aまたは第2フレームバッファ1426B)に描画することが可能となり、その結果、2個の画像表示器を備えることによる製造コストの上昇を抑制することができる。
また、本実施形態によれば、メイン光センサ56の検知結果に基づいて検出されたサブ画面60の位置に基づいて、サブ画像として表示される画像の表示内容が決定されるので、サブ画面60の位置に応じた適切な画像をサブ画面60に表示することができる。
また、本実施形態によれば、メイン画像を描画した後の第1フレームバッファ1426Aの空き領域にサブ画像を分割しなければ描画できない場合にのみサブ画像が分割画像として描画され、分割が不要な場合にはサブ画像が空き領域にそのまま描画される。このため、第1フレームバッファ1426Aの空き領域に対するサブ画像のサイズに応じた適切な描画処理を行うことができる。
ところで、特別装飾図柄等を表示するメインの液晶表示器に別の画像表示器がさらに設けられた遊技機を製造する場合、別設される画像表示器の画面解像度(サブ画像の垂直画素数×水平画素数)は、別設される画像表示器のサイズ等によって異なるものと考えられる。しかしながら、本実施形態によれば、第1フレームバッファ1426Aの空き領域に収まるように分割画像サイズおよび分割数が算出されて、その算出結果に基づいてサブ画像が分割画像として描画されるため、別設される画像表示器の画面解像度に応じて第1フレームバッファ1426Aへの描画処理を適切に行うことができる。
また、本実施形態によれば、サブ画面60を支持するフレーム61の位置をメイン光センサ56が検知することによってサブ画面60の位置が検出されるので、例えば第1ステッピングモータ29および第2ステッピングモータ30のステップ数に基づいてサブ画面60の位置を検出する場合に比べて、サブ画面60の位置を正確に検出することができる。その結果、メイン画面50に表示された画像とのずれが少ない最適なサブ画像をサブ画面60に表示することができる。
また、本実施形態では、遊技者がサブ画面60の前方空間に手を差し出した場合にのみサブ表示器6が移動する。このため、例えば遊技者が興味ある表示内容や構成部材を確認したいときだけサブ表示器6を移動させるというように、遊技者がサブ表示器6を任意に移動させることができるので、遊技者による遊技が単調になるのを効果的に防止することができる。
[描画処理の他の例]
図21を用いて説明した描画処理の一例では、サブ画面60が重畳するメイン画像の一部をコピーして生成されたコピー画像に、サブ画面60にのみ表示される表示内容を示す差分画像(すなわち、表示情報IFを示す画像)を合成することによってサブ画像を生成している。したがって、サブ画像内にはメイン画像に表示されている画像と差分画像とが合成されて表示されることになり、サブ画面60が重なったメイン画面50の画像をサブ画面60に表示することによってメイン画面50の視認性を確保すると共に、サブ画像と重畳してメイン画像に表示されている画像と差分画像との間の表示位置ずれを防止することができる。すなわち、画面が透過しない画像表示媒体を用いる場合やサブ画像と重畳してメイン画像に表示されている画像と差分画像とを精確に位置合わせする必要がある画像をサブ画面60に表示する場合は、非常に有効な描画方法となる。しかしながら、画面を透過する画像表示媒体を用い、かつ、サブ画像と重畳してメイン画像に表示されている画像と差分画像との位置ずれがある程度許容される画像をサブ画面60に表示する場合は、他の描画処理を用いてもかまわない。画面を透過する画像表示媒体としては、単色表示する透明ELディスプレイ、多色表示する透明ELディスプレイ、および透過型液晶ディスプレイ等をサブ画面60として用いることが考えられる。例えば、単色表示する透明ELディスプレイを用いることによって、2つの表示器が重なった場合に背後に位置するメイン表示器5の高い視認性を確保することが可能となる。
この場合、サブ画面60の前方空間からの外光が遮られたことを検出するサブ光センサを、サブ表示器6のフレーム61等に設ければよい。例えば、互いの受光空間が重複しないように、複数のサブ光センサをフレーム61に設ける。具体的には、遊技者側からサブ表示器6への外光をそれぞれ受光する複数のサブ光センサを、フレーム61が有する4つの辺に等間隔で設置する。このように複数のサブ光センサをサブ画面60以外に設けることによって、それぞれのサブ光センサが受光する照度の検出結果を用いれば、サブ表示器6の前方空間に対して差し出された遊技者の手の位置を検出することが可能となる。そして、上述した処理と同様に、サブ表示器6の前方空間に差し出された遊技者の手の位置に応じて、サブ表示器6を移動させることができる。
以下、図25および図26を参照しつつ、描画処理の他の例について説明する。なお、図25は、画像音響制御部140(VDP142)によって行われる描画処理の他の例を示すフローチャートである。図26は、VDP142によって行われる描画処理の他の例について説明するための説明図である。なお、上記実施形態に係る画像音響制御部140(VDP142)によって行われる描画処理の一例(図21参照)の各処理と共通する処理については、同じステップ番号を付してその詳細な説明を省略する。
図25において、描画エンジン1424によるステップ291の処理で第1フレームバッファ1426Aにメイン画像が描画され、画像音響制御部140によってサブ画面60に画像を表示すると判断された場合(ステップ292でYES)、画像音響制御部140のCPU141は、演出制御部130から送信されるサブ画面60の位置情報に基づいて、サブ画面60に表示すべきサブ画像の内容(輪郭画像EIや表示情報IF)を決定する(ステップ311)。例えば、制御用ROM144には、輪郭画像EIや表示情報IFを示すサブ画像情報が記憶されており、CPU141は、演出制御部130から取得した輪郭画像EIや表示情報IFに対応するサブ画像情報を制御用ROM144から読み出してRAM145に格納する。そして、上記サブ画像情報を含む制御信号がVDP142へ出力される。
次に、描画エンジン1424は、CPU141からの制御信号に含まれているサブ画像情報が示すサブ画像を生成するために必要な素材データを画像用ROM148から読み出してVRAM_RS1425に格納して、その素材データを用いて、ステップ311の処理で決定された内容のサブ画像(輪郭画像EIや表示情報IFを示す画像)を生成する(ステップ312)。そして、このサブ画像を基づいて、上述したステップ295以降の処理が行われる。図26には、このステップ312の処理で生成されたサブ画像が4個の分割画像として第1フレームバッファ1426Aの空き領域に描画された後、各分割画像が元のサブ画像として出力される様子が示されている。
[駆動機構10の他の例]
また、上述では、図7〜図10を用いてサブ表示器6を移動させる駆動機構の一例を説明したが、他の態様の駆動機構を用いてもかまわない。以下、図27を用いて、サブ表示器6を移動させる他の態様の駆動機構について説明する。
図27(a)に例示されるように、基台701と、基台701に設けられた軸705を中心として回動可能に連結されたアーム702と、アーム702に設けられた軸706を中心として回動可能に連結されたアーム703と、アーム703に設けられた軸707を中心として回動可能に連結されると共にサブ表示器6に固設されるアーム704とを備える駆動機構を用いてもよい。当該駆動機構においては、ランプ制御部150の制御に応じて、各アーム702〜703の回動角度が任意に調整される。このような駆動機構であっても、各アーム702〜703の回動角度を調整することによって、遊技者の操作に応じてサブ表示器6を移動させることが可能である。
また、図27(b)に例示されるように、遊技機1に設けられた軸802を中心として、アーム801の先端に固設されたディスプレイ800を回動可能にすることによって、ディスプレイ800が移動する駆動機構を用いてもよい。当該駆動機構においては、ランプ制御部150の制御に応じて、アーム801の回動角度が任意に調整される。この場合、図7〜図10を用いて説明した駆動機構10や図27(a)を用いて説明した駆動機構より、ディスプレイ800が移動可能な範囲領域が限定されることになるが、駆動機構の構成が簡素であるため、遊技機1の製造コストを低減させることができる。
[その他の変形例]
上記実施形態では、サブ表示器6の前方空間に差し出された遊技者の手の動きに対して、即時または遅れて追従するようにサブ表示器6が移動する例を用いたが、他の移動態様でサブ表示器6が移動してもかまわない。例えば、サブ表示器6の前方空間に差し出された遊技者の手によって外光が遮られた回数に応じて、サブ表示器6を移動させてもかまわない。具体的には、遊技機1は、所定サイズ以上の照度低下検出領域が出現して消滅した回数をカウントし、所定時間以内のカウント数に応じて予め決められた位置(例えば、所定時間以内に外光が遮られた回数が1回の場合、メイン画面50の中央と重なる位置)にサブ表示器6を移動させる。この場合、サブ表示器6の前方空間に物体(例えば、遊技者の手)が存在するか否かが判定できれば実現可能であり、前方空間における物体の位置まで検出する必要はないため、当該前方空間における物体の有無だけが検出可能なセンサ(例えば、当該前方空間からの外光の照度を検出する単一の光センサ)をサブ表示器6に設けてもかまわない。
また、上記実施形態では、メイン光センサ56の検知結果に基づいてサブ表示器6(サブ画面60)の位置を検出する場合について説明したが、第1ステッピングモータ29および第2ステッピングモータ30のステップ数に基づいて、サブ表示器6(サブ画面60)の位置を検出するようにしてもよい。また、メイン光センサ56の検知結果と第1ステッピングモータ29および第2ステッピングモータ30のステップ数とを組み合わせて、サブ表示器6(サブ画面60)の位置を算出するようにしてもよい。
また、上記実施形態では、可動役物7がサブ画面60と重なった場合に重なった可動役物7に関する表示情報IFがサブ画面60に表示される場合について説明した。しかしながら、遊技機1に設けられた他の構成部材に関する表示情報IFをサブ画面60に表示してもかまわない。例えば、メイン画面50とは異なる場所に設けられた複数のランプを有するインジケータを用い、当該ランプの点灯数によって保留回数を標示する遊技機の場合、点灯しているランプとサブ画面60とが重なった場合に重なったランプの保留に対応する表示情報IFをサブ画面60に表示してもかまわない。一例として、点灯しているランプとサブ画面60とが重なった場合、当該ランプに対応する特別図柄抽選に当選する信頼度(期待度)を示す表示情報IFがサブ画面60に表示される。また、同様に、保留表示画像がメイン画面50に表示され、当該保留表示画像とサブ画面60とが重なった場合に重なった保留表示画像に関する表示情報IFをサブ画面60に表示してもいいことは、言うまでもない。
また、上記実施形態では、サブ画面60の前方空間からの外光が遮られたことを検出する光センサによる照度検出結果に応じてサブ表示器6の前方空間における物体(例えば、遊技者の手)の位置を検出し、当該検出結果に基づいてサブ表示器6が移動させる例を用いたが、サブ表示器6の前方空間における物体を検出する他の物体検出部をサブ表示器6に設けてサブ表示器6を移動させてもかまわない。例えば、上記前方空間に光(例えば、赤外線や可視光)を投光し、当該前方空間に存在する物体で反射した光を受光することによって、当該前方空間に存在する物体の有無を検出する物体検出部(例えば、赤外線センサや光センサ)をサブ表示器6に設けてもかまわない。この場合、上記物体検出部が検出した物体の有無に基づいて物体の位置を算出し、当該物体の位置に応じてサブ表示器6を移動させる。一例として、互いの投光領域が重複しないように、物体検出用の光を上記前方空間にそれぞれ投光する物体検出部をフレーム61に複数設ける。なお、それぞれの物体検出部が物体検出用の光を投光する空間、すなわちそれぞれの物体検出部が物体の有無を検出する空間が、遊技者から見て水平方向に並設して形成されるように、上記複数の物体検出部を設けてもよい。また、それぞれの物体検出部が物体の有無を検出する空間が、遊技者から見て鉛直方向に並設して形成されるように、上記複数の物体検出部を設けてもよい。また、それぞれの物体検出部が物体の有無を検出する空間が、遊技者から見て斜め方向に並設して形成されるように、上記複数の物体検出部を設けてもよい。さらに、それぞれの物体検出部が物体の有無を検出する空間が、遊技者側から見て格子状に形成されるように、上記複数の物体検出部を設けてもよい。このように複数の物体検出部を設けることによって、それぞれの物体検出部おける物体検出結果を用いれば、サブ表示器6の前方空間に対して被検出物体(例えば、遊技者の手)が存在する位置を検出することが可能である。そして、サブ表示器6の前方空間における被検出物体の位置に応じて、サブ表示器6を移動させることができる。なお、それぞれの物体検出部が物体の有無を検出する空間が、遊技者から見て水平方向、鉛直方向、または斜め方向等に並設して形成されるように、上記複数の物体検出部が設けられている場合、縦方向、横方向、または斜め方向等の一方向を基準とした被検出物体の位置(1次元位置)を検出することが可能となる。この場合、上記一方向を基準とした被検出物体の位置に応じてサブ表示器6を移動させればよく、サブ表示器6を少なくとも当該一方向に沿って移動させればよい。
また、上記物体検出部としては、上述した赤外線センサや光センサの他に、レーザ光を放射してその反射光を検出するレーザセンサや、超音波センサ、静電容量センサ、磁気センサ等、他の検出装置をサブ表示器6に設けて、上記前方空間における物体の位置(遊技者の手の位置)を検出してもかまわない。
また、上記実施形態では、遊技機1が、遊技盤2に固定された画像表示器としてメイン表示器5を備えている場合について説明したが、本発明はメイン表示器5を備えていない遊技機にも適用されてもよい。すなわち、画像表示器としてサブ表示器6のみを有する遊技機に本発明が適用されてもよい。この場合、2つの画面を重ねた演出は行われず、2つの表示器が重なった場合に背後に位置するメイン表示器5の視認性を考慮する必要がないため、様々な画像表示媒体を用いることが考えられる。
また、上述した説明では、演出制御部130がサブ画像として表示する輪郭画像EIや表示情報IFの内容を決定し、演出制御部130から出力されるサブ画像演出コマンドに応じて、画像音響制御部140が画像処理することによって輪郭画像EIや表示情報IFが表現される例を用いたが、各処理段階を他の制御部が行ってもかまわない。例えば、演出制御部130から得られる目標位置に関する情報やサブ表示器6の位置に基づいて、画像音響制御部140がサブ画像を表示するか否かを判断して輪郭画像EIや表示情報IFを表現してもかまわない。
また、上述した遊技機1に設けられている各構成要素の形状、数、および設置位置等は、単なる一例に過ぎず他の形状、数、および設置位置であっても、本発明を実現できることは言うまでもない。また、上述した処理で用いられる係数、判定値、数式、処理順序等は、単なる一例に過ぎず他の値や数式や処理順序であっても、本発明を実現できることは言うまでもない。
また、本発明で用いられるプログラムは、遊技機1内部の不揮発性記憶装置に予め記録されているだけでなく、光ディスク等の外部記憶媒体を通じて遊技機1に供給されたり、有線または無線の通信回線を通じて遊技機1に供給されたりしてもよい。
以上、本発明を詳細に説明してきたが、前述の説明はあらゆる点において本発明の例示に過ぎず、その範囲を限定しようとするものではない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。本発明は、特許請求の範囲によってのみその範囲が解釈されるべきであることが理解される。また、当業者は、本発明の具体的な実施形態の記載から、本発明の記載および技術常識に基づいて等価な範囲を実施することができることが理解される。また、本明細書において使用される用語は、特に言及しない限り、当該分野で通常用いられる意味で用いられることが理解されるべきである。したがって、他に定義されない限り、本明細書中で使用される全ての専門用語および技術用語は、本発明の属する分野の当業者によって一般的に理解されるのと同じ意味を有する。矛盾する場合、本明細書(定義を含めて)が優先する。