以下、本発明の実施例について詳細に説明する。図1は、本実施例のパチンコ機GMを示す斜視図である。このパチンコ機GMは、島構造体に着脱可能に装着される矩形枠状の木製外枠1と、外枠1に固着されたヒンジ2を介して開閉可能に枢着される前枠3とで構成されている。前枠3には、遊技盤5が着脱自在に装着され、遊技盤5の前側に対応させて、ガラス扉6と前面板7とが夫々開閉自在に枢着されている。
ガラス扉6の外周には、LEDランプなどによる電飾ランプが、略C字状に配置されている。前面板7には発射用の遊技球を貯留する上皿8が装着され、前枠3の下部には、上皿8から溢れ出し又は抜き取った遊技球を貯留する下皿9と、発射ハンドル10とが設けられている。発射ハンドル10は発射モータと連動しており、発射ハンドル10の回動角度に応じて動作する打撃槌によって遊技球が発射される。
上皿8の外周面には、チャンスボタン11が設けられている。このチャンスボタン11は、遊技者の左手で操作できる位置に設けられており、遊技者は、発射ハンドル10から右手を離すことなくチャンスボタン11を操作できる。このチャンスボタン11は、通常時には機能していないが、ゲーム状態がボタンチャンス状態となると内蔵ランプが点灯されて操作可能となる。なお、ボタンチャンス状態は、必要に応じて設けられるゲーム状態である。
上皿8の右部には、カード式球貸し機に対する球貸し操作用の操作パネル12が設けられ、カード残額を3桁の数字で表示する度数表示部と、所定金額分の遊技球の球貸しを指示する球貸しスイッチと、ゲーム終了時にカードの返却を指令する返却スイッチとが設けられている。
図2(a)に示すように、遊技盤5には、金属製の外レールと内レールとからなるガイドレール13が環状に設けられ、その内側の遊技領域5aの略中央には、表示装置LCD(液晶ディスプレイ)が配置されている。また、遊技領域5aの適所には、図柄始動口15、大入賞口16、複数個の普通入賞口17(大入賞口16の左右に4つ)、通過口であるゲート18が配設されている。これらの入賞口15〜18は、それぞれ内部に検出スイッチを有しており、遊技球の通過を検出できるようになっている。
表示装置LCDは、大当り状態に係わる特定図柄を変動表示すると共に背景画像や各種のキャラクタなどをアニメーション的に表示する装置である。この表示装置LCDは、中央部に特別図柄表示部Da〜Dcと右上部に普通図柄表示部19を有している。そして、特別図柄表示部Da〜Dcでは、大当り状態の招来を期待させるリーチ演出が実行されたり、特別図柄表示部Da〜Dc及びその周りでは、当否結果を不確定に報知する予告演出などが実行される。
普通図柄表示部19は普通図柄を表示するものであり、ゲート18を通過した遊技球が検出されると、普通図柄が所定時間だけ変動し、遊技球のゲート18の通過時点において抽出された抽選用乱数値により決定される停止図柄を表示して停止するようになっている。
左側に配置された2つの普通入賞口17,17の外側には、カメラ演出時に赤外線を放射する放射部50と、赤外線の反射光を受信するカメラ部51とが、各々、遊技盤5及び化粧板PLAを貫通して配置されている(図2(b)参照)。本実施例のカメラ演出は、カメラ演出抽選に当選した場合にだけ実行され、リーチ演出中に出現する演出図柄を、遊技者の手の動きに合わせて、大当り状態に至るよう移動可能にしている。但し、実際に大当り状態に至るか否かは、大当り抽選によって予め決定されており、大当り抽選に当選していない場合には、遊技者の手の動きに拘らず、最終的にはハズレ状態となる。
図2(b)に示す通り、放射部50は、円筒内周面が鏡面MIRに加工された本体部BDYと、本体部BDYの先端側に外嵌された弾性部CVとを有して構成されている。そして、本体部BDYには、図示しない赤外線LEDが配置されてガラス扉6に向けて赤外線を放射している。ここで、弾性部CVは、適度な弾力を有してガラス扉6に接触しているので、ガラス扉6の内面での正反射光がカメラ部51に漏れることはない。また、本体部BDYの内周面が鏡面加工され、弾性部CVも非透光性であるのでエネルギーロスが最小限となり、ほぼビーム状に赤外線が放射される。なお、放射部50には、必要に応じて集光レンズが配置される。
本実施例のカメラ部51は、その受光面に至る光路上に、赤外線フィルタFiと広角レンズLENとが配置されている。ここで、広角レンズLENは、凸レンズと凹レンズと凸レンズとで構成されており、3つのレンズ間の距離を適宜に設定することで、ガラス扉6に近接した遊技者の手の輪郭を、正確に把握できるようにしている。
また、赤外線フィルタFiは、遮断波長(ほぼ700nm)以上の光は通過させるが、それ未満の光を遮断するシャープカットフィルタである。そのため、カメラ部51に入射される可視光は、赤外線フィルタFiで遮断され、遊技者の手などで反射された赤外線だけがカメラの受光面に至る。そのため、カメラ部51は、原理上、可視光の影響を受けることがない。しかも、本実施例では、赤外線の反射光によってターゲット(被写体)を捕捉するので、事実上、ターゲットの認識範囲(焦点位置)が限定されることになり、認識範囲より遠くの映像を取得するおそれも無い。
更に、本発明では、カメラ部51の前面には、ガラス扉6が配置されているので、遊技者の手が必要以上にカメラ部51に近づくことはない。そのため、遊技者の手の画像を、適度な大きさで取得することができる。つまり、遊技者の手がガラス扉6に触れる直近状態でも、カメラ部51の受光面から手の映像が溢れることはなく、カメラ部51の受光面に、手の輪郭映像が正しく収まることになる。
ところで、本実施例の場合、放射部50やカメラ部51は、常時、機能しているのではなく、カメラ演出抽選に当選した場合だけ、動作を開始して遊技者の動きを把握するようになっている。カメラ部51が動作を開始したことは、表示装置LCDに報知されるので、その後、カメラ部51の前に手を差し伸べて、これを適宜な方向に移動させると、その中心位置の移動方向と移動速度に対応して、大当り状態に関連する演出図柄が移動するよう構成されている。
放射部50やカメラ部51の右側に位置する図柄始動口15は、左右一対の開閉爪15aを備えた電動式チューリップで開閉されるよう例えば構成され、普通図柄表示部19の変動後の停止図柄が当り図柄を表示した場合には、開閉爪15aが所定時間だけ、若しくは、所定個数の遊技球を検出するまで開放されるようになっている。
図柄始動口15に遊技球が入賞すると、特別図柄表示部Da〜Dcの表示図柄が所定時間だけ変動し、図柄始動口15への遊技球の入賞タイミングに応じた抽選結果に基づいて決定される停止図柄で停止する。なお、特別図柄表示部Da〜Dc及びその周りでは、一連の図柄演出の間に、予告演出が実行される場合がある。
大入賞口16は、例えば前方に開放可能な開閉板16aで開閉制御されるが、特別図柄表示部Da〜Dcの図柄変動後の停止図柄が「777」などの大当り図柄のとき、「大当りゲーム」と称する特別遊技が開始され、開閉板16aが開放されるようになっている。
大入賞口16の開閉板16aが開放された後、所定時間が経過し、又は所定数(例えば10個)の遊技球が入賞すると開閉板16aが閉じる。このような動作は、最大で例えば15回まで特別遊技が継続され、遊技者に有利な状態に制御される。なお、特別図柄表示部Da〜Dcの変動後の停止図柄が特別図柄のうちの特定図柄であった場合には、特別遊技の終了後のゲームが高確率状態となるという特典が付与される。
図3は、上記した各動作を実現するパチンコ機GMの全体回路構成を示すブロック図である。図中の一点破線は、主に、直流電圧ラインを示している。
図示の通り、このパチンコ機GMは、AC24Vを受けて各種の直流電圧やシステムリセット信号(電源リセット信号)SYSなどを出力する電源基板20と、遊技制御動作を中心統括的に担う主制御基板21と、主制御基板21から受けた制御コマンドCMDに基づいてランプ演出及び音声演出を実行する演出制御基板22と、演出制御基板22から受けた制御コマンドCMD’に基づいて表示装置LCDを駆動する画像制御基板23と、主制御基板21から受けた制御コマンドCMD”に基づいて払出モータMを制御して遊技球を払い出す払出制御基板24と、遊技者の操作に応答して遊技球を発射させる発射制御基板25と、を中心に構成されている。
但し、この実施例では、主制御基板21が出力する制御コマンドCMDは、コマンド中継基板26と演出インタフェイス基板27を経由して、演出制御基板22に伝送される。また、演出制御基板22が出力する制御コマンドCMD’は、演出インタフェイス基板27を経由して、画像制御基板23に伝送され、主制御基板21が出力する制御コマンドCMD”は、主基板中継基板28を経由して、払出制御基板24に伝送される。
これら主制御基板21、演出制御基板22、画像制御基板23、及び払出制御基板24には、ワンチップマイコンを備えるコンピュータ回路がそれぞれ搭載されている。そこで、これらの制御基板21〜24に搭載された回路、及びその回路によって実現される動作を機能的に総称して、本明細書では、主制御部21、演出制御部22、画像制御部23、及び払出制御部24と言うことがある。なお、演出制御部22、画像制御部23、及び払出制御部24の全部又は一部がサブ制御部である。
ところで、このパチンコ機GMは、図3の破線で囲む枠側部材GM1と、遊技盤5の背面に固定された盤側部材GM2とに大別されている。枠側部材GM1には、ガラス扉6や前面板7が枢着された前枠3と、その外側の木製外枠1とが含まれており、機種の変更に拘わらず、長期間にわたって遊技ホールに固定的に設置される。一方、盤側部材GM2は、機種変更に対応して交換され、新たな盤側部材GM2が、元の盤側部材の代わりに枠側部材GM1に取り付けられる。なお、枠側部材1を除く全てが、盤側部材GM2である。
図3の破線枠に示す通り、枠側部材GM1には、電源基板20と、払出制御基板24と、発射制御基板25と、枠中継基板32とが含まれており、これらの回路基板が、前枠3の適所に各々固定されている。一方、遊技盤5の背面には、主制御基板21、演出制御基板22、画像制御基板23が、表示装置LCDやその他の回路基板と共に固定されている。そして、枠側部材GM1と盤側部材GM2とは、一箇所に集中配置された接続コネクタC1〜C4によって電気的に接続されている。
電源基板20は、接続コネクタC2を通して、主基板中継基板28に接続され、接続コネクタC3を通して、電源中継基板30に接続されている。そして、主基板中継基板28は、電源基板20から受けたシステムリセット信号SYS、RAMクリア信号DEL、電圧降下信号、バックアップ電源BAK、DC12V、DC32Vを、そのまま主制御部21に出力している。同様に、電源中継基板30も、電源基板20から受けたシステムリセット信号SYSや、交流及び直流の電源電圧を、そのまま演出インタフェイス基板27に出力している。なお、演出インタフェイス基板27は、受けたシステムリセット信号SYSを、そのまま演出制御部22と画像制御部23に出力している。
一方、払出制御基板24は、中継基板を介することなく、電源基板20に直結されており、主制御部21が受けると同様の、システムリセット信号SYS、RAMクリア信号DEL、電圧降下信号、バックアップ電源BAKを、その他の電源電圧と共に直接的に受けている。
ここで、電源基板20が出力するシステムリセット信号SYSは、電源基板20に交流電源24Vが投入されたことを示す電源リセット信号であり、この電源リセット信号によって各制御部21〜24のワンチップマイコンその他のIC素子が電源リセットされるようになっている。
主制御部21及び払出制御部24が、電源基板20から受けるRAMクリア信号DELは、各制御部21,24のワンチップマイコンの内蔵RAMの全領域を初期設定するか否かを決定する信号であって、係員が操作する初期化スイッチSWのON/OFF状態に対応した値を有している。
主制御部21及び払出制御部24が、電源基板20から受ける電圧降下信号は、交流電源24Vが降下し始めたことを示す信号であり、この電圧降下信号を受けることによって、各制御部21、24では、停電や営業終了に先立って、必要な終了処理を開始するようになっている。また、バックアップ電源BAKは、営業終了や停電により交流電源24Vが遮断された後も、主制御部21と払出制御部24のワンチップマイコンの内蔵RAMのデータを保持するDC5Vの直流電源である。したがって、主制御部21と払出制御部24は、電源遮断前の遊技動作を電源投入後に再開できることになる(電源バックアップ機能)。このパチンコ機では少なくとも数日は、各ワンチップマイコンのRAMの記憶内容が保持されるよう設計されている。
一方、演出制御部22と画像制御部23には、上記した電源バックアップ機能が設けられていない。しかし、先に説明した通り、演出制御部22と画像制御部23には、電源中継基板30と演出インタフェイス基板27を経由して、システムリセット信号SYSが共通して供給されており、他の制御部21,24と、ほぼ同期したタイミングで電源リセット動作が実現される。
図3及び図4に示す通り、演出インタフェイス基板27は、コマンド中継基板26と、電源中継基板30と、枠中継基板31と、演出制御基板22と、ランプ接続基板34と、画像制御基板23とに接続されている。そして、カメラ演出時には、演出制御部22は、カメラ部51から遊技者の手の画像情報を取得している。
以上のような動作を実現するため、演出制御部22は、音声演出・ランプ演出・カメラ演出・データ転送などの処理を実行するワンチップマイコン40と、ワンチップマイコン40の制御プログラムなどを記憶するEPROM41と、ワンチップマイコン40からの指示に基づいて音声信号を再生して出力する音声再生出力回路42と、圧縮音声データを記憶する音声用メモリ43と、ウォッチドッグタイマWDTと、カメラ部51とデータ交信する複合チップ52と、複合チップ52のCPU64の制御プログラムを記憶するROM53と、を備えて構成されている(図4参照)。
ここで、複合チップとは、コンピュータの主要な機能を搭載した1チップIC(System On a Chip)であって、例えば、LR35501(シャープ)が使用される。なお、ウォッチドッグタイマWDTは、ワンチップマイコン40から定期的に供給されるクリアパルスでリセットされるが、プログラムの暴走などによって、このクリアパルスが途絶えると、リセット信号RESETを出力するようになっている。その結果、ワンチップマイコン40は、初期状態に強制的にリセットされ、プログラムの暴走状態などが解消される。
ワンチップマイコン40には、パラレル入出力ポートPIOが内蔵されている。そして、パラレルポートPIOは、制御コマンドCMD’及びストローブ信号STB’を出力する一方、複合チップ52からは、遊技者の手の移動情報DETを、ストローブ信号STB”(1ビット)と共に受けている。なお、この実施例では、複合チップ52のCPUは、移動情報DETとして、遊技者の手の移動方向と移動速度とをリアルタイムに出力している。
図4に示す通り、演出制御基板22のワンチップマイコン40には、主制御基板21から出力された制御コマンドCMDとストローブ信号(割込み信号)STBとが、演出インタフェイス基板27のバッファ48を経由して供給されている。割込み信号STBは、ワンチップマイコンの割込み端子INTに供給されている。そして、ストローブ信号STBによって起動される受信割込み処理によって、演出制御部22は、制御コマンドCMDを取得することになる。
演出制御部22が取得する制御コマンドCMDには、(a)エラー報知その他の報知用制御コマンドなどの他に、(b)図柄始動口への入賞に起因する各種演出動作の概要を特定する制御コマンド(変動パターンコマンド)が含まれている。ここで、変動パターンコマンドで特定される演出動作の概要には、演出開始から演出終了までの演出総時間と、大当り抽選における当否結果とが含まれている。但し、カメラ演出を実行するか否かも含め、演出内容の具体的な内容は特定されていない。
そのため、演出制御部22では、変動パターンコマンドCMDを取得すると、これに続いて、演出抽選やカメラ演出抽選を行い、取得した変動パターンコマンドCMDで特定される演出概要を更に具体化している。
例えば、リーチ演出や予告演出について、その具体的な内容が決定される。そして、決定された具体的な遊技内容にしたがい、LED群などの点滅によるランプ演出や、スピーカによる音声演出の準備動作を行うと共に、画像制御部23に対して、ランプやスピーカによる演出動作に同期した図柄演出に関する制御コマンドCMD’を出力する。また、カメラ演出抽選に当選すると、カメラ演出時には、演出制御部22は、遊技者の手の動きに関する画像制御情報を、制御コマンドCMD’として画像制御部23に出力する。なお、画像制御情報は、複合チップ52がリアルタイムに出力する移動情報DETを、所定時間集計した上で出力される。
このような画像制御情報も含め、演出制御部22は、画像制御部23に対するストローブ信号(割込み信号)STB’と共に、制御コマンドCMD’を演出インタフェイス基板27に向けて出力する。なお、演出制御部22は、表示装置LCDに関連する報知用制御コマンドや、その他の制御コマンドを受信した場合は、その制御コマンドを、そのまま割込み信号STB’と共に演出インタフェイス基板27に向けて出力する。
上記した演出制御基板22の構成に対応して、演出インタフェイス基板27は、8ビット長の制御コマンドCMD’と1ビット長の割込み信号STB’を受けるよう構成されている。そして、これらのデータCMD’,STB’は、バッファ46を経由して、そのまま画像制御基板23に出力される。
制御コマンドCMD’に基づいて画像制御部23で実行される図柄演出は、特別図柄が循環的に移動するいわゆる図柄変動動作が中心であり、リーチ演出が含まれている。なお、リーチ演出とは、3つの特別図柄のうち、変動を停止した2つの特別図柄が正しく揃った後に開始される図柄演出であり、最終的に、大当り状態となる可能性がある場合に実行される。
先に説明した通り、本実施例の演出制御部22は、リーチ演出中に実行されることがあるカメラ演出時に、放射部50を発光させると共に、カメラ部51から撮影画像を取得するよう構成されている。カメラ演出を実行するか否かは、カメラ演出抽選で決定されるが、この実施例では、大当り状態に至る場合、及び大当り状態に至る可能性が高いリーチ演出を実行する場合には、高確率で、カメラ演出抽選に当選するよう構成されている。
一方、大当り状態に至る可能性の低いリーチ演出を実行する場合には、低確率でカメラ演出抽選に当選するよう構成されている。そして、カメラ演出抽選に当選したことは、適宜なタイミングで表示装置LCDに報知されるので、遊技者は、上記の高い当選確率を踏まえて、期待感をもってカメラ演出に参加するものと期待される。
図11は、カメラ演出を2つ例示したものである。図示例は、リーチ演出の最終段階であって、「7−7−7」の特別図柄(演出図柄)が揃うか否かの微妙なタイミングでの図柄演出を示している。このような微妙なタイミングでカメラ演出が開始され、例えば、カメラ演出NO1の場合には、表示装置LCDには「カメラチャンス!!」のような表示がされる。そこで、この画面報知に対応して、遊技者が自らの手をカメラの前で上下に移動させると、遊技者の手の下方移動に対応して、キャラクタが特別図柄「7」を中心位置に押し込むような動作を繰返す。
また、カメラ演出NO2の場合には、「カメラチャンス!!」との画面表示に対応して、遊技者が自らの手をカメラの前で左右に移動させると、遊技者の手の左方向の移動に対応して、キャラクタが特別図柄「7」を中心位置に押し込むような動作を繰返す。
上記何れの動作も、大当り状態を招来させるための支援動作であるので、その支援動作が成功すれば、遊技者は、自らの貢献によって大当り状態を獲得したと実感することができ、大きな喜びをもって、新規の遊技性を楽しむことができる。もっとも、大当り状態となるか否かは、実際には、支援動作の良否には影響されない。そこで、ハズレ時の演出としては、遊技者の手の移動速度が速ければ、特別図柄「7」が、中心位置から行き過ぎる演出を実行して「7−8−7」でハズレ状態を確定させる。一方、遊技者の手の移動速度が遅い場合には、特別図柄「7」が、中心位置から押し戻される演出を実行して、「7−6−7」でハズレ状態を確定させる。
なお、遊技者がカメラ演出を活用しない場合もあり得るが、このような場合には、カメラ演出の開始後、適当なタイミングで全ての特別図柄を再度変動させ、その後に予定の図柄配列で停止させる。
以上のようなカメラ演出動作を実現するには、遊技者の手の移動を把握する必要があり、本実施例では、これを実現するために、複合チップ52(System On a Chip)を活用している。図5は、放射部50と、カメラ部51と、複合チップ52と、ワンチップマイコン40との接続関係、及び、上記各部の構成を図示した図面である。
前述の通り、放射部50は、内面を鏡面加工された本体部BDYに赤外線LEDを配置して構成されている。また、カメラ部51は、赤外線フィルタFiと広角レンズLENとを経由して反射光を受けるCCD又はCMOSで構成された二次元イメージセンサ60と、イメージセンサ60からの出力を受けて、UYVYフォーマットでフレーム画像データを出力するDSP(Digital Signal Processor)61とを有して構成されている。
ここで、UYVYフォーマットとは、各サンプリング点のR(red),G(green),B(blue)レベルに対して、輝度(Y)と、色差U(=B−Y)と、色差V(=R−Y)とを出力する形式である。そして、この実施例では、シリアルデータの形式で、一秒間に30フレームの画像データを、複合チップ52に出力するよう構成されている。
図5に示す通り、複合チップ52は、DSPC部62(Digital Signal Processor controller)と、COD部63(colored object detect)と、遊技者の手の位置を検出するCPU64と、CPU64のワークエリアを構成するRAM65と、DSPC部62及びCOD部63の動作を規定するデータ(動作パラメータ)が格納されると共に、COD部63の動作結果が格納されるレジスタ群66と、出力ポート67とを有して構成されている。
そして、CPU64の動作を規定する制御プログラムは、外付けのROM53に記憶されている。また、出力ポート67から出力されるデータは、演出制御部のワンチップマイコン40の入力ポートに供給されるよう構成されている。
前記した内部構成を有する複合チップ52において、DSPC部62は、カメラ部51のDSP61とデータ交信をして、毎秒30枚のフレーム画像データ(YUV信号)を取得する。一方、COD部63は、DSPC部62を経由したYUV信号を、HSV信号に変換すると共に、予め指定された特定の色成分の領域を抽出して、抽出領域の輪郭を示す4点の座標データを、レジスタ群66の該当番地に書き込む。なお、この実施例では、色相H(hue)は、H=tan−1(V/U)*256/3.14で与えられ、彩度S(saturation)は、S=SQR(U2+V2)で与えられ、明度V(value)は、V=Yで与えられる。
ところで、本実施例では、外乱ノイズを排除するため、敢えて、赤外線フィルタFiを配置して可視光を遮断している。そのため、本来のRGB値は、原理的には、検出されないはずであり、実際、特に色相Hについては、検出レベルが全く安定化しない。しかし、本発明者の実験研究によれば、赤外線反射光の強度や、イメージセンサを構成するオンチップ・カラーフィルタ及びフォトダイオードなどの特性に基づき、輝度Y(=明度V)については、有意なレベルが安定して検出されることが確認された。
そこで、本実施例では、遊技者の手から反射される反射光について、その明度Vに基づいて、手の輪郭を抽出するようにしている。具体的には、適宜な閾値THを設定し、各サンプリング点の明度Vが閾値THを超えるか否かに基づいて手の輪郭を特定している。
図6(a)及び図6(b)は、この動作を実現するCPU64と、COD部63の処理内容を説明するフローチャートである。電源が投入されると、CPU64は、DSPC部62とCOD部63を適宜に初期設定する(ST10)。この初期設定処理では、(a)閾値THを超える明度Vを有する領域を抽出すること、(b)複数個の抽出領域が所定距離以上近接している場合には、抽出領域を連結させること、及び(c)抽出された最大領域の中心座標値を算出して記憶することを、COD部63に指示する処理が含まれている。具体的には、CPU64は、これら(a)(b)(c)の指示を含む所定の動作パラメータを、レジスタ群66の該当番地に書き込むことで、初期設定処理を完了する(ST10)。
以上の初期設定の結果、COD部63は、レジスタ群66に書き込まれた動作パラメータに基づいて連続的に動作を開始する。具体的には、1/30秒間隔でDSP部61から送信されてくるYUV信号を、HSV信号に変換し(ST1)、上記した(a)(b)の条件を満たす領域を抽出する(ST2)。
そして、抽出された領域のうち、最大サイズの領域(輪郭)について、その中心座標を、レジスタ群66の該当番地に書き込むと共に、指定された抽出動作が完了したことを示すべく、レジスタの該当番地にセット状態の画像認識フラグCMPを書き込む(ST3)。
図6(c)に示す通り、手の輪郭の中心座標は、Y軸方向の最小値Yminに対応するa点と、X軸方向の最小値Xminに対応するb点と、Y軸方向の最大値Ymaxに対応するc点と、X軸方向の最大値Xmaxに対応するd点とに対応して決定される。具体的には、a点=(Xa,Ymin)、b点=(Xmin,Yb)、c点=(Xc,Ymax)、d点=(Xmax,Yd)に対して、中心座標は、(Xmax+Xmin)/2,(Ymax+Ymin)/2である。なお、Xaはa点のX座標、Ybはb点のY座標、Xcはc点のX座標、Ydはd点のY座標を意味する。
CPU64の初期設定処理(ST10)の後、COD部63は、上記したステップST1〜ST3の処理を1/30秒間隔で連続して動作する。そこで、CPU64は、初期設定処理(ST10)の後、画像認識フラグCMPがセットされるのを待ち(ST11)、画像認識フラグCMPがセットされた場合には、その後の検出データの更新を禁止する(ST12)。これは、一つのフレームについて抽出された中心座標を、CPU64がレジスタ群66からの読み出している途中に、COD部63が、次フレームについての座標データを書き込むことを禁止するためである。
ステップST12の処理に続いて、CPU64は、検出データ(中心座標値)をレジスタ群66から読み出して、これを、30個の記憶領域を有する記憶テーブルTBLの該当位置に書込む(ST13)。なお、記憶テーブルTBLの記憶容量は何ら限定されないが、この実施例では、COD部63が1/30秒の間隔で画像を取得するので、過去1秒間のデータを保存するべく、記憶テーブルTBLには30個の記憶領域TBL(1)〜TBL(30)を設けている。
図6(e)は、ステップST13の処理を具体的に例示したものであり、中心座標値が、ポインタPTの指示する記憶テーブル位置に、順次、書込まれることを示している。具体的には、PT=0に初期設定されているポインタPTの値が、最大値30に一致しているかが判定され、もしPT<30なら、これをインクリメントする(ST31)。
一方、PT=30の場合には、29個の記憶データTBL(2)〜TBL(30)を、全て一つ上位位置に移動させる(ST32)。その結果、記憶テーブルTBLの先頭位置のデータTBL(1)、つまり1秒前のデータは、新たなデータを取得する毎に、順次、消滅することになる。
何れにしても、ステップST31又はST32の処理に続いて、ポインタPTの指示する記憶位置に最新の取得データ(中心座標値)が記憶されて、ステップST13のサブルーチン処理が終わる(ST33)。以上の処理から明らかな通り、記憶テーブルTBLには、最古のデータ(X1,Y1)から最新のデータ(X30,Y30)まで、合計30個の中心座標位置データが記憶されることになる(図6(d)参照)。
続いて、この30個のデータを解析して、遊技者の手の移動方向と移動速度とを特定する(ST14)。図7は、この解析処理の内容を示すフローチャートである。このような解析処理が必要となるのは、遊技者の手は、通常、図8(a)〜図8(i)に示すような往復運動をすると思われるので、今現在の移動方向を特定するには、直近の動きだけを、特異的に抽出する必要があるからである。
例えば、図8(a)〜図8(d)のように、遊技者の手が水平移動又は垂直移動された場合には、X座標値だけ、或いはY座標値だけが増減を繰返すので、○印で示す折返し点を特定して、その後の直近のデータに基づいて遊技者の動きを特定する必要がある。また、図8(e)〜図8(h)のような移動軌跡を示す場合にも、○印で示す折返し点を特定して、その後のデータに基づいて遊技者の動きを特定する必要がある。
そこで、ステップST14の処理では、記憶テーブルTBLを直近データTBL(30)から最古のデータTBL(1)に向けてチェックして、X座標値やY座標値が、時間的に単調増加しているか、単調減少しているかを把握し、増減方向が切り替わった点を折返し点であると特定している。なお、ステップST41〜ST50は、X座標についての折返し点を特定する処理、その後のステップST51〜ST60は、Y座標についての折返し点を特定する処理である。
先ず、X座標についての折返し点を特定する処理を説明する。ここでは、記憶テーブルTBLのポインタとして変数iを使用し、増減方向を示す判定フラグFxを使用している。判定フラグFxは、時間的(ポインタ変数iの増加方向)に、有意に単調増加しているか、有意に単調減少しているか、有意な増減が認められないかに応じて、各々、Fx=1、Fx=2、Fx=0としている。
そこで、最初に、判定フラグFxを0に初期設定すると共に(ST41)、ポインタ変数iを30に初期設定する(ST42)。そして、時間的に有意な増減が認められるか否かを判定するため、X座標値の偏差Xi−Xi−1を、最低基準値δと比較する(ST43)。
そして、Xi−Xi−1>δであって、X座標値が時間的に有意に増加している場合には、次に、その時の判定フラグFxの値を判定する(ST44)。ここで、もし判定フラグFxの値が、それまで単調減少であったことを示すFx=2であれば、座標値Xiにおいて、単調減少から増加に転じたと判定してステップST50に移行させる。つまり、この時の座標値Xiは、折返し点のX座標値であると判定する。
一方、ステップST44の処理においてFx≠2であると判定されると、X座標値が有意に単調増加していると判定して、判定フラグFxを1に設定した後に(ST45)、ポインタ変数iをデクリメントする(ST48)。
ところで、ステップST43の比較処理において−δ≦Xi−Xi−1≦+δであると判定される場合には、何もしないでポインタ変数iをデクリメントする(ST48)。一方、ステップST43の比較処理においてδ<−Xi+Xi−1であって、X座標値が時間的に有意に減少している場合には、その時の判定フラグFxの値を判定する(ST46)。ここで、もし判定フラグFxの値が、それまで単調増加であったことを示すFx=1であれば、座標値Xiにおいて、単調増加から減少に転じたと判定してステップST50に移行させる。
以上のようにしてポインタ変数iをデクリメントしつつ、ステップST43〜48の処理を繰り返し、デクリメント後のポインタ変数iが1に達すると、ステップST50の処理に移行する。
ステップST50の処理が実行されるタイミングで、もし判定フラグFxがFx=1であれば、Xiは、X方向に増加し始める折返し点のX座標値を意味する。具体的には、例えば、図8(a)、図8(e)の右側、図8(f)の左側、及び、図8(h)の左側上下に示す折返し点(○印)のX座標値が検出されたことになる。
また、ステップST50の処理が実行されるタイミングで、もし判定フラグFxがFx=2であれば、Xiは、X方向に減少し始める折返し点のX座標値を意味する。具体的には、例えば、図8(b)、図8(e)の左側、図8(f)の右側、及び、図8(h)の右側上下に示す折返し点(○印)のX座標値が検出されたことになる。
一方、ステップST50の処理が実行されるタイミングで、もし判定フラグFxがFx=0であれば、遊技者の移動方向が、図8(c)や図8(d)に示す上下方向であって、折返し点のX座標値が検出できなかったことを意味する。
上記何れの場合でも、ステップST50では、検出したX座標値Xiと最新データのX座標値X30との偏差ΔX=X30−Xi求めると共に、時間的な偏差Tx=30−iを算出する。
続いて、上記と同様の処理をY座標値に関して実行する。Y座標については、記憶テーブルTBLのポインタとして変数jを使用し、増減方向を示す判定フラグFyを使用する。判定フラグFyは、ポインタ変数jの増加方向に、有意に単調増加しているか、有意に単調減少しているか、有意な増減が認められないかに応じて、各々、Fy=1、Fy=2、Fy=0としている。
最初に、判定フラグFyやポインタ変数jの初期設定の後(ST51,ST52)、Y座標値の偏差Yj−Yj−1を、最低基準値δと比較する(ST53)。そして、Yj−Yj−1>δであって、Y座標値が時間的に有意に増加している場合には、その時の判定フラグFyの値を判定する(ST54)。もし判定フラグFy=2であれば、座標値Yjにおいて、単調減少から増加に転じたと判定してステップST60に移行させる。
一方、ステップST54の処理においてFy≠2であると判定されると、Y座標値が有意に単調増加していると判定して、判定フラグFyを1に設定した後に(ST55)、ポインタ変数jをデクリメントする(ST58)。また、ステップST53の比較処理において−δ≦Yj−Yj−1≦+δであると判定される場合には、何もしないでポインタ変数jをデクリメントする(ST58)。
一方、ステップST53の比較処理においてδ<−Yj+Yj−1であって、Y座標値が時間的に有意に減少している場合には、その時の判定フラグFyの値を判定する(ST56)。ここで、もし判定フラグFyの値が、それまで単調増加であったことを示すFy=1であれば、座標値Yjにおいて、単調増加から減少に転じたと判定してステップST60に移行させる。
以上のようにしてポインタ変数jをデクリメントしつつ、ステップST53〜58の処理を繰り返し、デクリメント後のポインタ変数jが1に達すると、ステップST60の処理に移行する。
ステップST60の処理が実行されるタイミングで、もし判定フラグFyがFy=1であれば、Yjは、Y方向に増加し始める折返し点のY座標値を意味する。具体的には、例えば、図8(d)、図8(e)の右側、図8(f)の右側、及び、図8(g)の上側左右に示す折返し点(○印)のY座標値が検出されたことになる。
また、ステップST60の処理が実行されるタイミングで、もし判定フラグFyがFy=2であれば、Yjは、Y方向に減少し始める折返し点のY座標値を意味する。具体的には、例えば、図8(c)、図8(e)の左側、図8(f)の左側、及び、図8(g)の下側左右に示す折返し点(○印)のY座標値が検出されたことになる。
一方、ステップST60の処理が実行されるタイミングで、もし判定フラグFyがFy=0であれば、遊技者の移動方向が、図8(a)や図8(b)に示す左右方向であって、折返し点のY座標値が検出できなかったことを意味する。
上記何れの場合でも、ステップST60では、検出したY座標値Yjと最新データのY座標値Y30との偏差ΔY=Y30−Yj求めると共に、時間的な偏差Ty=30−jを算出する。
以上の処理から明らかなように、折返し点について、X座標値及びY座標値が検出される場合(図8(e)、図8(f)参照)、X座標値だけが検出される場合(図8(a)、図8(b)、図8(h)参照)、及び、Y座標値だけが検出される場合(図8(c)、図8(d)、図8(g)参照)が存在する。なお、図8(i)のように、そもそも折返し点が存在しない場合、及び、X座標又はY座標について折返し点が検出されない場合には、最古のデータの座標値が抽出される。
以上のようにして、図6(a)のステップST14の処理が終われば、次に、算出された位置偏差ΔX,ΔYや時間偏差Tx,Tyに基づいて、遊技者の手の動きの移動方向と移動速度とを最終的に決定する(ST15)。
図9(a)は、その具体的な手法を示すフローチャートである。先に説明した通り、ステップST14の処理では、必ずしも、折返し点について、そのX座標値とY座標値とが検出されるとは限らない。なお、折返し点を特定していない座標値は、最古のデータのX座標値X1又はY座標値Y1に他ならず、そのような場合には、ステップST14の処理終了時に、ポインタ変数i,jが、i=0又はj=0となっている。また、遊技者が手を移動させない場合には、判定フラグFx及び判定フラグFyが、そもそも、初期状態のゼロのままである。
そこで、ステップST14に続くステップST15の処理では、最初に、判定フラグFx及び判定フラグFyの値を判定する(図9のST70)。そして、もし、判定フラグFx及び判定フラグFyが何れもゼロである場合には、遊技者が未だ手を移動させていないと判定して、何もしないでステップST15の処理を終える。
一方、判定フラグFxと判定フラグFyの何れかが≠0であれば、次に、ポインタ変数i,jの大小関係を対比し(ST71)、i<jであれば、Y座標についてだけ折返し点が検出されたと判断して、X方向についての位置偏差ΔXを、ΔX=X30−Xjに修正する(ST72)。また、時間偏差Tとして時間偏差Tyを採用する(ST72)。
逆に、ステップST15の処理でi>jであると判定されると、X座標についてだけ折返し点が検出されたと判断して、Y方向についての位置偏差ΔYを、ΔY=Y30−Yiに修正する(ST73)。また、時間偏差Tとして時間偏差Txを採用する(ST73)。なお、i=jである場合には何もしないでステップST74の処理に移行させる。
続くステップST74の処理では、必要に応じて修正された位置偏差ΔX,ΔYと、図9(b)に示す判定テーブルJDGとに基づいて、遊技者の手の移動方向を特定する。図9(c)に示すように、この実施例では、移動方向を8区分(0〜7)しており、正負の値を示す位置偏差ΔX,ΔYの値に基づいて移動方向を特定している。なお、位置偏差ΔX,ΔYが何れも微小値である場合には、移動方向を問題にする必要がないので(ST70参照)、停止状態NGとしている。
ところで、図9(c)では、Xの正方向を右方向、負方向を左方向とし、Yの正方向を下方向、負方向を上方向としているが、説明の便宜上、ここでは、カメラ部51が取得する手の画像の左右方向や上下方向と、実際の遊技者の手の移動方向とが一致していることにする。例えば、遊技者が自分にとって右方向に手を移動させると、カメラ部51が取得する手の画像もX軸の正方向に移動することにする。
このようにして、図9(b)に示す判定テーブルJDGを参照して移動方向を特定すると、次に、位置偏差ΔX,ΔYと時間偏差Tとに基づいて移動速度を特定する。移動速度は、ここでは、4段階(00〜11)の区分されており、例えば、{SQR(ΔX2+ΔY2)}/ΔTの算出式によって特定される。なお、簡易的には、2つの位置偏差ΔX,ΔYの何れか絶対値が大きい方の値と、時間偏差Tとの比で、移動速度が特定される。
そして、移動方向を示す3ビットと、移動速度を示す2ビットとを含んだ8ビットデータ(移動情報DET)を、出力ポート67を経由して、ワンチップマイコン40に出力してステップST14の処理を終える(ST75)。なお、このステップST75のタイミングでは、ワンチップマイコン40に対する割込み信号となるストローブ信号STB”も合わせて出力され、ワンチップマイコン40は、ストローブ信号STB”に対応する割込み処理において、遊技者の手の移動情報DETを取得する(図5参照)。
以上説明した図6(a)のステップST14の処理が終われば、次に、CPU64は、ステップST12の処理で禁止した検出データの更新を許可すると共に、セット状態の画像認識フラグCMPをクリアして(ST15)、次フレームについて画像認識フラグCMPがセットされるのを待機する処理(ST11)に移行する。
図10は、複合チップ52から移動情報DETを受ける演出制御部22のワンチップマイコン40の動作を説明するフローチャートである。図示の通り、演出制御部22の動作は、電源投入後に開始されるメイン処理(a)と、4mS毎に起動されるタイマ割込み処理(b)と、ストローブ信号STB”によって起動されるSOC割込み処理(c)と、ストローブ信号STBによって起動される受信割込み処理(不図示)とを含んで実行されている。なお、SOC割込みは、マスク可能な割込みであって、メイン処理によってSOC割込みが許可された場合に限り割込み処理が起動される。
図10(a)に示す通り、メイン処理では、ワンチップマイコン40内部の初期設定を実行した後(SS1)、音声再生出力回路42について、必要な初期設定を実行する(SS2)。その後、ワンチップマイコン40のCPUを割込み許可状態に設定した後(SS3)、4mS間隔のタイマ割込みを待機する(SS4)。
図10(b)に示す通り、4mS間隔でタイマ割込みが生じる毎に、割込みフラグINTがセットされるので(SS9)、メイン処理のステップSS4の処理では、割込みフラグINTが1になるのを繰り返しチェックすることになる。そして、割込みフラグINT=1となると、これをリセットした後に(SS5)、受信コマンド解析処理を実行する(SS6)。
受信コマンドには、変動パターンコマンド、予告演出コマンド、報知用制御コマンドなどが含まれている。そこで、受信コマンド解析処理では、図10(d)に示す通り、先ず、変動パターンコマンドを新規に受信したか否かを判定し(SS12)、変動パターンコマンドを受信している場合には、演出内容を具体的に特定する演出抽選を実行する(SS14)。そして、これから実行すべき演出シナリオについて初期設定処理を実行する(SS15)。なお、演出シナリオには、遊技者の手の動きに対応して特別図柄を移動させるカメラ演出も含まれている。
その他、予告演出コマンドを受信した場合にも、予告演出のシナリオについて初期設定をする(SS13、SS15)。そして、このようにして初期設定された演出シナリオは、その他のランプ演出処理などと共に、メイン処理において、4mS間隔で進行される(SS7〜SS8)。
SOC割込みが許可されている状態で、メイン処理の動作中に複合チップ52からストローブ信号STB”を受けると、図10(c)に示すSOC割込み処理が実行される。SOC割込み処理では、受信データ(移動情報DET)をバッファ領域に格納した後(SS10)、格納処理完了を示す書込みフラグWRを1にセットして処理を終える(SS11)。
このようにしてバッファ領域に格納された遊技者の移動情報DETは、メイン処理の演出シナリオ処理(SS7)において活用される。図10(e)は、その処理内容を示すフローチャートである。
先ず、ステップSS15でセットされた演出シナリオと、演出開始からの経過時間とに基づいて、カメラ演出開始時か否かが判定される(SS20)。そして、カメラ演出開始時に達すると、その後のSOC割込みを許可し、カメラ演出中フラグCFLを1にセットすると共に、カウンタ変数ENをゼロに初期設定する(SS21)。なお、カメラ演出を実行するか否かは、カメラ演出抽選により決定されるので、この演出抽選にハズレている場合には、ステップSS21の処理は常にスキップされる。
次に、カメラ演出終了時か否かが判定される(SS22)。そして、カメラ演出終了時に達すると、その後のSOC割込みを禁止すると共に、カメラ演出中フラグCFLを0に戻す(SS23)。なお、カメラ演出を実行しない場合には、ステップSS23の処理は常にスキップされるのは勿論である。
次に、カメラ演出中フラグCFLと書込みフラグWRの値がこの順番でチェックされ(SS24,SS25)、CFL=1且つWR=1の場合には、書込みフラグWRを0にクリアすると共に、複合チップ52から受信した移動情報DETを解析する(SS26)。
移動情報DETは、遊技者の手の動きを示す情報が含まれている。一方、演出制御部21は、このタイミングで実行しているリーチ演出の内容も把握している。例えば、画像制御部23で実行中の図柄演出が、図11(a)のような状態なのか、或いは、図11(c)のような状態なのかを把握している。
そのため、演出制御部21は、このタイミングで予想される遊技者の動きを特定することができ、言い換えると、演出制御部21は、カメラ演出時に、通常の遊技者が手を上下に動かすか、左右に動かすか、或いは、その他の動きをするかを、自ら実行中の演出シナリオに基づいて特定することができる。
そこで、予想される遊技者の正規の動きに対応した移動情報DETを受信したか否かを解析して(SS26)、対応する移動情報を受けた場合には、カウンタ変数ENをインクリメントする(SS28)。なお、対応する移動情報DETを受けていない場合には、そのままサブルーチン処理を終える。
カウンタ変数ENをインクリメントした場合には、インクリメント後のカウンタ変数ENが基準値THに達したか否かを判定する(SS29)。そして、カウンタ変数ENが基準値THに達したか場合には、遊技者の動きに対応した図柄演出を実行するべく、画像制御部23に適宜な制御コマンドCMD’を送信する(SS30)。また、カウンタ変数ENを0に戻してサブルーチン処理を終える(SS31)。
本実施例では、ステップSS28〜SS29の処理を設けるのは、カメラ演出時には、最頻状態では、1/30秒毎にSOC割込みを受けるところ、SOC割込み毎に演出図柄を移動させるまでの必要がないからである。したがって、基準値THは、演出図柄を移動させる時間間隔として相応しい値が選択される。例えば、基準値TH=3に設定すると、最速0.1秒毎に演出図柄が移動させることができる。もっとも、演出制御部22において液晶ディスプレイの演出図柄を制御するような場合には、SOC割込み毎に演出図柄を移動させても良い。
何れにしても、本実施例によれば、遊技者の手の動きに合わせて図柄演出を実行することができ、演出内容を豊富化することができる。しかも、本実施例では、遊技者の手の動きを把握する複合チップ52を別に設けるので、カメラ演出に関する演出制御部22の制御負担は極めて軽微であり、本来の演出制御に支障をきたすおそれはない。
以上、本発明の実施例について詳細に説明したが、具体的な記載内容は特に本発明を限定するものではない。特に、カメラの活用法は、前記したカメラ演出に限定されず、適宜な活用が可能である。
また、放射部50は、必ずしも、単一個である必要はなく、例えば、カメラ部51を中心に複数配置するのも好適である。この場合には、カメラの撮像範囲に合せて、適宜な角度を持たせて配置するのが好ましい。
なお、実施例では、特に記載していないが、演出制御部は、把握された遊技者の動きに対応して、音声演出、及び/又は、ランプ演出に変化を与えるのが好ましい。