(57)【要約】【課題】  非可逆圧縮され画像データに生じるノイズを低減し、表示画像の画質を向上する。【解決手段】  ＪＰＥＧ圧縮されたキャラクタデータを伸張して遊技機の演出表示に用いる。キャラクタデータにおいて、キャラクターの余白は、キャラクターの近似色で塗りつぶしておく。データ伸張時に生じる階段状のブロックノイズを低減するため、各画素がキャラクターの輪郭Ｌよりも内部か否かを示す領域識別データを用意する。領域識別データを参照すれば、キャラクタデータの各画素がキャラクター外の余白の画素を透明化でき、輪郭Ｌよりも外部に飛び出したノイズ（Ｎ１）を除去できる。また、輪郭Ｌよりも内部に入り込んだ部分（Ｎ２）は、キャラクターの近似色で塗りつぶしておくことによってノイズとしての視認性を低減することができる。こうすれば、ブロックノイズの影響を抑制でき、画質が向上する。【選択図】  図６
2008093060.tif 000002
【特許請求の範囲】
【請求項１】
遊技機であって、
マトリックス状に配置された複数画素を有し、遊技中に所定の画像を表示する演出表示を行うための表示パネルと、
前記遊技の状況に応じて前記表示パネルへの前記演出表示を行う演出制御部とを有し、
前記演出制御部は、
各表示パネルに表示するキャラクターを表すとともに、その余白部分が該キャラクターの近似色に着色されたキャラクタデータを、非可逆圧縮して記憶するキャラクタデータ記憶部と、
前記キャラクタデータ記憶部から、前記キャラクタデータを読み出して伸張するデータ伸張部と、
前記キャラクタデータと対に設けられ、前記ノイズがない状態で表示されるべき前記キャラクターを、その余白部分から識別するための領域識別データを記憶する領域識別データ記憶部と、
前記領域識別データに従って、前記キャラクターの余白部分を一定色に置換することによって、前記伸張の際に前記キャラクターの輪郭に生じるノイズを低減するノイズ低減処理を施すノイズ低減部と、
前記ノイズ低減処理を施されたキャラクタデータを用いて、前記演出表示用の表示データを生成する表示データ生成部とを備える遊技機。
【請求項２】
請求項１記載の遊技機であって、
前記非可逆圧縮は、前記キャラクタデータを空間周波数が所定値以上の高周波成分を除去する過程を伴う圧縮方法である遊技機。
【請求項３】
請求項１または２記載の遊技機であって、
前記領域識別データは、前記非可逆圧縮前のキャラクタデータにおける前記キャラクターの輪郭線を基準として、前記識別を行うためのデータである遊技機。
【請求項４】
請求項１または２記載の遊技機であって、
前記領域識別データは、前記非可逆圧縮前のキャラクタデータにおける前記キャラクターの輪郭線を、所定の基準点を中心として縮小して得られた線を基準として、前記識別を行うためのデータである遊技機。
【請求項５】
請求項１または２記載の遊技機であって、
前記領域識別データは、前記非可逆圧縮前のキャラクタデータにおける前記キャラクターの輪郭線を、所定量だけ前記キャラクター内に移動させて得られる線を基準として、前記識別を行うためのデータである遊技機。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、遊技中に所定の演出表示を遊技機の表示パネルに行う画面表示方法に関する。
【背景技術】
【０００２】
パチンコ機やスロットマシンなどの遊技機では、遊技盤に備えられた表示パネルを用いて、遊技中に種々の演出表示が行われる。この演出表示には、液晶パネルが用いられることが多い。液晶パネルは、マトリックス状に配置された画素によって画像を表示する。画像を表示するための表示データは、次の手順で生成される。まず、演出表示を制御するためのＣＰＵは、表示コマンドを受け取り、その内容を解析し、予め用意されたスケジュールデータを参照して、表示すべき画面の内容を決定する。そして、このスケジュールデータに基づいて描画コマンドをＶＤＰ（Video Display Processor）に出力する。ＶＤＰは、この描画コマンドをビットマップ展開して画素単位での表示データを生成し、液晶パネルに出力する。遊技機では、演出表示に用いるキャラクターの画像を予めキャラクタデータとして用意しておき、描画コマンドに従って、このキャラクターを配置することで表示データを生成することが多い。
【０００３】
キャラクターは、ＭＰＥＧ形式等で用意された動画像から抽出されることもある。動画像から、背景部分を除いた動領域を抽出し、背景を差し替えるのである。特許文献１は、動画像を構成する各フレームに対応づけて、抽出すべき動領域を指定する領域識別パターンデータを用意しておき、これに基づいて動領域を精度良く抽出する技術を開示している。コンピュータグラフィックス等で作成されたキャラクタデータを用いる場合、キャラクタデータは、メモリ容量抑制のため、圧縮されて格納されており、表示すべき画像に応じて、適宜、伸張して用いられる。
【０００４】
【特許文献１】特開２００５−３４５６８２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
メモリ容量が限られている中で、多種多様な演出表示を実現するため、キャラクター数を増やす方法として、キャラクターの解像度を低減したり、圧縮率を高めたりする方法が考えられる。しかし、解像度を低減させた場合には、キャラクター表示時の画質が低下する。圧縮率を高めた場合には、伸張時にブロックノイズなどと呼ばれるノイズが顕著に生じ、画質が低下する。近年では、遊技機に備えられる表示パネルが大型化する傾向にあるため、こうしたノイズによる画質の低下は看過し得ないものとなってきた。本発明は、これらの課題に鑑み、画質の極端な低下を回避しつつ、非可逆圧縮されたキャラクタデータの容量低減を図ることを目的とする。
【課題を解決するための手段】
【０００６】
本発明は、パチンコ機や回胴式遊技機などの遊技機を対象とする。この遊技機には、マトリックス状に配置された複数画素を有し、遊技中に所定の画像を表示する演出表示を行うための表示パネルが設けられている。表示パネルとしては、液晶パネル、有機ＥＬ、ＬＥＤ、プラズマディスプレイなどを用いることができる。
【０００７】
この表示パネルは、遊技の状況に応じて演出表示を行うよう演出制御部によって制御される。演出制御部は、例えば、演出表示に対応した表示コマンドを出力するサブ制御基板と、サブ制御基板からの表示コマンドを受けて表示パネルを駆動する表示制御基板に分けて構成してもよいし、これらの機能を統合的に実現する単一の基板として構成してもよい。遊技機には、この他に、遊技機全体の制御を統合する主制御基板、賞球やメダル等の払出しを制御する払出基板などを備えてもよい。
【０００８】
本発明の演出制御部は、キャラクタデータ記憶部、データ伸張部、ノイズ低減部、表示データ生成部を有する。キャラクタデータ記憶部は、各表示パネルに表示するキャラクターを表すキャラクタデータを非可逆に圧縮して記憶している。圧縮方法としては、例えば、ＪＰＥＧ、ＲＭ２（Rapid Movie Compression2）などを用いることができる。データ伸張部は、キャラクタデータ記憶部から、キャラクタデータを読み出して伸張する。キャラクタデータには、非可逆の圧縮が施されているため、伸張されたデータには、圧縮方法に応じたノイズが含まれる。
【０００９】
本発明では、キャラクタデータは、余白部分をキャラクターの近似色に着色した状態で圧縮される。近似色は、キャラクターの色調に近似した色をいい、種々の方法で設定することができる。例えば、キャラクターの各画素の階調値の平均値や中央値に基づいて設定してもよい。この場合、平均値や中央値は、ＲＧＢからなる有彩色で求めても良いし、無彩色（いわゆるグレースケール）で求めても良い。グレースケールを用いる場合、簡易な処理として、平均値または中央値と所定の閾値との大小関係に基づいて、近似色を黒または白のいずれかに選択する方法を採ることもできる。
【００１０】
ノイズ低減部は、伸張によってキャラクターの輪郭に生じるノイズを低減するノイズ低減処理を施し、表示データ生成部は、このノイズ低減処理を施されたキャラクタデータを用いて、演出表示用の表示データを生成する。この処理は、輪郭のみに選択的に施すようにしてもよいし、キャラクタデータ全体に施すようにしてもよい。
【００１１】
ノイズ低減処理には、領域識別データを用いる。領域識別データとは、キャラクタデータと対に設けられ、ノイズがない状態で表示されるべきキャラクターを、その余白部分から識別するためのデータである。例えば、非可逆圧縮する前のキャラクタデータに基づき、画素ごとにキャラクター内部か余白部分かを示すフラグを設定すればよい。領域識別データは、キャラクターの輪郭等を表すベクトルデータを用いて構成してもよい。領域識別データは、圧縮せずに格納してもよいし、ランレングスなどの可逆な圧縮を施しても良い。ノイズ低減部は、領域識別データを参照して、伸張されたキャラクタデータの各画素について、キャラクターの内部か余白部分かを判断し、余白部分を任意に設定された一定色、例えば透明、に置換することによってノイズを除去することができる。この処理過程で、「透明」への置換を行えば、キャラクタデータを他の背景画像に重ね合わせ処理を簡素化できる利点がある。
【００１２】
本発明によれば圧縮後のキャラクタデータの容量を低減することができる。つまり、余白部分が近似色に着色された状態でキャラクタデータに非可逆の圧縮を施すと、圧縮後の画像データの容量を低減できることが実験的に確認された。容量が低減する理由は完全には明らかになっていないが、余白部分を着色することにより、画像全体の空間周波数が低周波側に移行するためと考えられる。この圧縮効果を十分に得るために、本発明では、ＪＰＥＧ、ＲＭ２など、キャラクタデータを空間周波数が所定値以上の高周波成分を除去する過程を伴う圧縮方法を用いることが好ましい。この効果は、キャラクタデータの解像度や、圧縮率に関わらず得られる。従って、本発明によれば、キャラクタデータの画質の極端な低下を招くことなく、その容量を低減させることができる。
【００１３】
領域識別データは、種々の方法で設定することができる。例えば、非可逆圧縮前のキャラクタデータにおけるキャラクターの輪郭線を基準として設定してもよい。この方法は、比較的容易に領域識別データを設定できる利点がある。
【００１４】
別の態様として、非可逆圧縮前のキャラクタデータにおけるキャラクターの輪郭線を、所定の基準点を中心として縮小して得られた線を基準として設定してもよい。ブロックノイズは上述の輪郭線よりも内側に入り込むように生じることもあるが、この態様によれば、輪郭線を縮小した線を基準とするため、このように内側に入り込んだ部分のノイズも除去することが可能となる利点がある。この態様において、基準点および縮小の比率はノイズ低減効果を考慮しつつ、任意に設定可能である。例えば、キャラクターの図心を基準点として用いても良い。基準点は、キャラクターをいくつかのパーツに分割し、パーツごとに設定してもよい。
【００１５】
更に別の態様として、領域識別データは、非可逆圧縮前のキャラクタデータにおけるキャラクターの輪郭線を、所定量だけキャラクター内に移動させて得られる線を基準として設定してもよい。このように設定した場合も、輪郭線を縮小した場合と同様、ブロックノイズを除去する効果を高めることができる。
【００１６】
本発明は余白部分を近似色に塗りつぶした上で、キャラクタデータを非可逆圧縮して、キャラクタデータ記憶部に記憶するための圧縮データを生成する生成方法として構成してもよい。この生成方法は、キャラクタデータを準備する工程と、キャラクタデータの階調値に基づいて近似色を設定する工程と、設定された近似色で余白部分を塗りつぶす工程と、塗りつぶした後のキャラクタデータを非可逆圧縮する工程を備えることになる。本発明は、この生成方法を実現する装置、即ち圧縮データ生成装置として構成してもよい。また、生成方法を実現するコンピュータプログラムや該コンピュータプログラムを記録した記録媒体として構成してもよい。
【００１７】
本発明では、上述した種々の特徴を全て備えている必要はなく、一部を省略してもよいし、適宜、組み合わせて適用してもよい。また、本発明における上述の特徴部分は、ハードウェア的に実現してもよいし、ソフトウェア的に実現してもよい。本発明は、遊技機としての構成の他、上述の表示パネルおよび演出制御部を有する画像表示装置として構成してもよい。本発明のノイズ低減処理は、全てのキャラクタデータを対象として行っても良いし、一部のみを対象としてもよい。また、キャラクタデータは、静止画として格納されていてもよいし、動画を構成するいずれかのフレームに含まれるデータであってもよい。
【発明を実施するための最良の形態】
【００１８】
本発明の実施例について以下の順序で説明する。本実施例では、パチンコ機としての構成例を示すが、遊技機は、回胴式遊技機としてもよい。
Ａ．遊技機の構成：
Ｂ．制御用ハードウェア構成：
Ｃ．キャラクターおよび領域識別データ例：
Ｄ．画面表示制御方法：
【００１９】
Ａ．遊技機の構成：
図１は実施例としてのパチンコ機１の正面図である。パチンコ機１は、中央に遊技領域６を備えた遊技盤４が取り付けられている。遊技者は、ハンドル８を操作して遊技領域６内に遊技球を打ち込み、入賞口に入賞させる遊技を行うことができる。入賞口の一つである始動入賞口９に遊技球が入賞すると、パチンコ機１は抽選を行い、その結果に応じて「大当り」か否かが決まる。大当り発生時には、大入賞口１０が所定期間開放するなどの大当り遊技が行われる。
【００２０】
上述の抽選の結果は、４つのランプで構成された特別図柄表示パネル４１に表示される。遊技領域６の中央には、ＬＣＤ１６が備えられており、遊技中に種々の演出画面（装飾図柄と呼ぶこともある）が表示される。始動入賞口９への入賞時、大当りの発生時などにも、それぞれ遊技の状態に応じた演出画面が表示される。ＬＣＤ１６は、液晶パネルの他、有機ＥＬ、ＬＥＤ、プラズマディスプレイなどを用いることができる。
【００２１】
Ｂ．制御用ハードウェア構成：
図２はパチンコ機１の制御用ハードウェア構成を示すブロック図である。パチンコ機１は、メイン制御基板３、払出制御基板２５、サブ制御基板３５、装飾図柄制御基板３０などの各制御基板の分散処理によって制御される。メイン制御基板３、払出制御基板２５、サブ制御基板３５は、それぞれ内部にＣＰＵ、ＲＡＭ、ＲＯＭなどを備えたマイクロコンピュータとして構成されており、ＲＯＭに記録されたプログラムに従って種々の制御処理を実現する。本実施例では、サブ制御基板３５と装飾図柄制御基板３０とは別基板として構成しているが、両者を統合した基板としてもよい。この場合、サブ制御基板３５の機能と装飾図柄制御基板３０の機能を、複数のＣＰＵの分散処理で実現してもよいし、単独のＣＰＵで実現する構成としてもよい。
【００２２】
実施例のパチンコ機１では、種々の不正を防止するため、メイン制御基板３への外部からの入力が制限されている。メイン制御基板３とサブ制御基板３５とは単方向のパラレル電気信号で接続されており、メイン制御基板３と払出制御基板２５とは、制御処理の必要上、双方向シリアル電気信号で接続されている。払出制御基板２５、サブ制御基板３５は、それぞれメイン制御基板３からのコマンドに応じて動作する。装飾図柄制御基板３０は、サブ制御基板３５からのコマンドに応じて動作する。パチンコ機１には、メイン制御基板３が直接に制御する機構もある。図中には、メイン制御基板３が制御する装置の一例として、大入賞口１０を駆動するための大入賞口ソレノイド１８、および特別図柄表示パネル４１を例示した。メイン制御基板３は、この他にも、普通図柄表示パネル、特別図柄保留ランプ、普通図柄保留ランプ、大当り種類表示ランプ、状態表示ランプなどの表示を制御することができる。また、メイン制御基板３には、遊技中の動作を制御するため、種々のセンサからの検出信号が入力される。図中には一例として入賞検出器１５ａからの入力を例示した。入賞検出器１５ａとは、始動入賞口９への入賞を検出するためのセンサである。メイン制御基板３は、入賞検出器１５ａからの信号に応じて、先に説明した抽選を行い、大当り遊技を実行することができる。メイン制御基板３には、他にも種々の入力がなされているが、ここでは説明を省略する。
【００２３】
遊技時におけるその他の制御は、払出制御基板２５、サブ制御基板３５を介して行われる。払出制御基板２５は、遊技中の遊技球の発射および払い出しを次の手順で制御する。遊技球の発射は、直接的には発射制御基板４７によって制御される。即ち、遊技者が、発射ハンドル８を操作すると、発射制御基板４７は操作に応じて発射モータ４９を制御し、遊技球を発射する。遊技球の発射は、タッチ検出部４８によって、発射ハンドル８に遊技者が触れていることが検出されている状況下でのみ行われる。払出制御基板２５は、発射制御基板４７に対して、発射可否の制御信号を送出することで、間接的に球の発射を制御する。
【００２４】
遊技中に入賞した旨のコマンドをメイン制御基板３から受信すると、払出制御基板２５は、賞球払出装置２１内の払出モータ２０を制御し、払出球検出器２２によって球数をカウントしながら規定数の球を払い出す。払出モータ２０の動作は、モータ駆動センサ２４によって監視されており、球ガミ、球切れなどの異常が検出された場合、払出制御基板２５は、表示部４ａにエラーコードを表示する。エラー表示された時には、係員が異常を除去した後、操作スイッチ４ｂを操作することで復旧させることができる。
【００２５】
サブ制御基板３５は、遊技中における音声、表示、ランプ点灯などの演出を制御する。これらの演出は、通常時、入賞時、大当たり時、エラー時、不正行為その他の異常が生じた時の警報など、遊技中のステータスに応じて変化する。メイン制御基板３から、各ステータスに応じた演出用のコマンドが送信されると、サブ制御基板３５は、各コマンドに対応したプログラムを起動して、メイン制御基板３から指示された演出を実現する。
【００２６】
本実施例では、図示する通り、サブ制御基板３５はスピーカ２９を直接制御する。ＬＣＤ１６は、装飾図柄制御基板３０を介して制御する。装飾図柄制御基板３０の回路構成は後述する。サブ制御基板３５の制御対象となるランプには、遊技盤面に設けられたパネル装飾ランプ１２と、枠に設けられた枠装飾ランプ３１がある。サブ制御基板３５は、ランプ中継基板３２、３４を介して、パネル装飾ランプ１２および枠装飾ランプ３１と接続されており、各ランプを個別に点滅させることができる。
【００２７】
図３は装飾図柄制御基板３０の回路構成を示す説明図である。装飾図柄制御基板３０は、サブ制御基板３５から受けた表示コマンドに応じて、ＬＣＤ１６に画面を表示するための表示データを出力する。表示データは、ＬＣＤ１６にマトリックス状に備えられたＲ，Ｇ，Ｂの各画素の表示階調値を示すデータである。
【００２８】
装飾図柄制御基板３０には表示データを生成する機能を実現するために、図示する種々の回路が用意されている。装飾図柄制御基板３０には、まず、表示データの生成を制御するためのマイクロコンピュータとしてＣＰＵ３８１、ＲＡＭ３８２、ＲＯＭ３８３が備えられている。ＲＯＭ３８３には、表示データを生成するための表示プログラム、表示コマンドに対し表示すべき画面、表示の時間、表示の順序を規定するスケジューラ、およびＬＣＤ１６の各画面構成を規定するための画面データが記憶されている。画面データは、後述するスプライトの表示／非表示、表示位置等を指定するデータである。
【００２９】
キャラＲＯＭ３８６は、スプライトデータ、即ち画面に表示されるスプライトをビットマップで表したデータを格納している。スプライトとは、遊技機の画面にまとまった単位として表示されるイメージを意味する。例えば、画面上に種々の人物を表示させる場合には、それぞれの人物を描くためのデータを「スプライト」と呼ぶ。複数の人物を表示させるためには、複数のスプライトを配置して画面を構成することになる。人物のみならず背景画像を構成する家、山、道路などをそれぞれスプライトとすることもできる。また、背景画像全体を一つのスプライトとしてもよい。遊技機は、これらの各スプライトの画面上の配置を決め、スプライト同士が重なる場合の上下関係を決めることで、種々の画像を表示させることが可能である。以下、説明の便宜上、各スプライトにおいて、人物等の主要なイメージを「キャラクター」と呼び、その周辺を「余白部分」と称するものとする。
【００３０】
遊技機では、データを扱う便宜上、各スプライトは縦横それぞれ６４ピクセルなど一定の大きさの矩形領域を複数組み合わせて構成される。この矩形領域を描くためのデータを「キャラクタデータ」と呼ぶ。小さなスプライトの場合は、一つのキャラクタデータで表現することができるし、人物など比較的大きいスプライトの場合には、例えば、横２×縦３などで配置した合計６個のキャラクタデータで表現することができる。背景画像のように更に大きいスプライトであれば、更に多数のキャラクタデータを用いて表現することができる。キャラクタデータの数および配置は、スプライトごとに任意に指定可能である。スプライトおよびキャラクタデータのサイズ等は任意に設定可能である。本実施例では、定型的な大きさのキャラクタデータを配置してスプライトを構成するものとしたが、キャラクタデータは、各スプライトの大きさに応じた不統一なサイズとしてもよい。いずれの構成においても、キャラクタデータはスプライトと同様「キャラクター」および「余白部分」を含んでいる。
【００３１】
本実施例では、人物やロボットなど、演出表示時に動きを持たせて表示されるキャラクターと、その背景となる背景画像データとが用意されている。前者のキャラクターは、非可逆圧縮して格納されている。本実施例では、ＪＰＥＧ形式を採用していることから、このデータをＪＰＥＧデータと呼ぶものとする。背景画像は、可逆圧縮して格納されている。本実施例では、背景画像データと呼ぶものとする。もっとも、背景画像データに対しても非可逆圧縮を適用してもよいし、キャラクターの一部について可逆圧縮を適用しても構わない。
【００３２】
キャラＲＯＭ３８６には、ＪＰＥＧデータに対となるデータとして、領域識別データが用意されている。領域識別データは、ＪＰＥＧデータを伸張する際に生じるブロックノイズの影響を、キャラクターの輪郭付近で軽減するノイズ低減処理に用いられるデータである。領域識別データの内容およびノイズ低減処理の方法については、後述する。
【００３３】
ＶＤＰ３８５は、ＣＰＵ３８１から受け取った画面データに基づいて、表示すべきスプライトデータをキャラＲＯＭ３８６から抽出し、表示データ、即ち表示すべき画像をビットマップ展開したデータを生成して、スケーラ３９０に出力する。以下、ビットマップ展開するための記憶領域を「キャンバス」と呼ぶ。ＶＤＰ３８５は、ＬＣＤ１６のラスタごとに表示データを出力するため、キャンバスは必ずしもフレームメモリの形式で用意されている必要はなく、表示データの出力対象となるラスタに対応するラインメモリとして用意されていてもよい。
【００３４】
ＶＤＰ３８５は、ＣＰＵ３８１からの画面データを受け取り保持しておくためのレジスタとして、スプライトレジスタ３８５ｓおよびＶＤＰレジスタ３８５ｖを備えている。スプライトレジスタ３８５ｓは、画面データのうち、スプライトの配置や重ね合わせの順序などを示す描画コマンドを受け取るためのレジスタであり、ダブルバッファとして構成されている。つまり、第１バッファ、第２バッファという二つの等しい容量のバッファが備えられている。従って、ＶＤＰ３８５は、ＣＰＵ３８１から出力された描画コマンドが第１バッファに書き込まれている間、第２バッファに保持されている描画コマンドを読み出して表示データの生成処理を実行することができる。ＶＤＰレジスタ３８５ｖは、表示データを生成する際の条件設定を指定するコマンド（以下、「条件設定コマンド」と呼ぶ）を記憶するためのレジスタである。条件設定コマンドには、例えば、描画コマンドが複数のレイヤから構成されている場合に、各レイヤの重ね合わせ順序、表示／非表示の設定などが含まれる。条件設定コマンドは比較的低容量であり、書き込みの所要時間が短いことから、ＶＤＰレジスタ３８５ｖはダブルバッファとはなっていない。
【００３５】
ＣＰＵ３８１からの描画コマンドは、データ伸張回路３８７にも送られる。データ伸張回路３８７は、描画コマンドに応じて、描画に必要なＪＰＥＧデータおよび背景画像データをキャラＲＯＭ３８６から読み出して伸張する。データ伸張回路３９７の内部には、ノイズ低減部３８８が用意されており、ＪＰＥＧデータを伸張した場合には、先に説明した領域識別データを参照して、ノイズ低減処理を実行する。
【００３６】
データ伸張回路３８７によって伸張されたキャラクタデータは、ＳＤＲＡＭなど高速アクセス可能なメモリで構成されたバンクメモリ３８９に格納される。ＶＤＰ３８５は、バンクメモリ３８９から、必要なキャラクタデータを取得し、表示データを生成することができる。バンクメモリ３８９は、ダブルバッファとして構成されている。従って、データ伸張回路３８７が伸張したデータをバンクメモリ３８９［ａ］に書き込んでいる間は、ＶＤＰ３８５はバンクメモリ３８９［ｂ］から、格納済みのキャラクタデータを読み出す。データ伸張回路３９７が伸張したデータをバンクメモリ３８９［ｂ］に書き込んでいる間は、ＶＤＰ３８５はバンクメモリ３８９［ａ］から、格納済みのキャラクタデータを読み出す。
【００３７】
ＶＤＰ３８５で生成された表示データは、スケーラ３９０を介してフレームメモリ３９７に一旦、格納され、適宜、ＬＣＤ１６に出力される。図示を省略したが、ＶＤＰ３８５からスケーラ３９０には、表示データを生成する度に同期信号が出力される。本実施例では、同期信号はＬＣＤ１６のフレームレートに合わせ、１６ｍｓｅｃ周期で出力される。スケーラ３９０は、この同期信号に合わせて、フレームメモリ３９７への表示データの格納および読み出しタイミングを制御する。スケーラ３９０は、この他、フレームメモリ３９７の表示データの格納または読み出し時に、表示データのサイズをＬＣＤ１６の画素数（例えば、８００×６００画素）に適合するよう拡大または縮小してもよい。フレームメモリも領域３９７［０］、３９７［１］からなるダブルバッファとして構成されている。こうすることで、フレームメモリへの表示データの格納、ＬＣＤ１６への表示データの出力を、並行して円滑に実行することが可能となる。
【００３８】
Ｃ．画面表示例：
図４はキャラクター例を示す説明図である。先に説明した通り、本実施例では、このキャラクターを表示するためのスプライトは複数のキャラクタデータの配列で構成されているが、ここでは、ブロックノイズによる影響およびノイズ低減処理の効果を説明する便宜のため、全体を一枚の画像として構成した状態を例示した。ＪＰＥＧデータなど非可逆圧縮されたデータを伸張すると、ブロックノイズ、即ち図中の領域Ａに示されるようなノイズが現れる。ブロックノイズは、キャラクター全体に生じているものの、特に、領域Ａのような輪郭部分で顕著となる。
【００３９】
図５はキャラクター例のキャラＲＯＭ３８６への格納状態を示す説明図である。ここでも説明の便宜上、全体を一枚の画像として構成して状態を例示した。キャラクターは図４に示したものと同一である。図示するように、本実施例では、キャラクター周辺の余白部分を黒色に着色した上でＪＰＥＧ圧縮し、キャラＲＯＭ３８６に格納している。こうすることにより、圧縮時のデータ容量を抑制できることが実験的に確認されたからである。具体的には、図４に示したように余白が白色の画像データ（データサイズ約８メガバイト）をＪＰＥＧ圧縮したところ、データサイズは約８６Ｋバイトとなったのに対し、余白を黒色にしてＪＰＥＧ圧縮したところ、データサイズは約７６Ｋバイトとなった。余白を、キャラクター全体の平均色に相当するメタリックとしてＪＰＥＧ圧縮した場合、データサイズは約７７Ｋバイトであった。このように、余白を黒色またはメタリックとすることにより、白色の場合よりもデータサイズが小さくなることが確認された。データサイズが低減する理由は完全には明らかになっていないが、余白部分を着色することにより、画像全体の空間周波数が低周波側に移行するためと考えられる。
【００４０】
本実施例では、上述の実験結果に従い図５に示すように余白を黒色としてＪＰＥＧ圧縮を行っている。もっとも、余白の色は、キャラクターの色に応じて使い分けることが好ましい。図４、５に示したキャラクターは全体に暗い色が用いられているため、余白を黒色としたが、全体に淡い色が用いられている場合には、余白を白色とした方が好ましい場合もある。両者の使い分けは、キャラクターの全画素の平均階調値または中央階調値を代表値として設定することができる。この代表値が所定の閾値よりも大きい場合には全体に淡い色が用いられていると言えるため余白を白色とし、閾値よりも小さい場合には余白を黒色とすればよい。閾値は任意に設定可能である。例えば、白色から黒色までの階調幅が２５６階調の場合には、中央値である１２８を閾値としてもよい。また、ＪＰＥＧ圧縮した後のデータ容量が最小となるよう、実験等に基づいて設定してもよい。余白の塗りつぶし色は、白または黒のいずれかとする必要もなく、キャラクター全体の平均階調値または中央階調値に相当する色を用いても良い。以下では、キャラクターの色に応じて設定された塗りつぶし色を「キャラクターの近似色」、または単に「近似色」と表現することもある。
【００４１】
図６は領域識別データの例を示す説明図である。図の下側には、図４の領域Ａの一部を拡大して示した。図示する通り、ブロックノイズによってキャラクターの輪郭は階段状となっている。ハッチングを付した側がキャラクター内部である。図中の直線Ｌは、ＪＰＥＧ圧縮する前のキャラクターの輪郭を表している。可逆の圧縮方法を用いていればデータ伸張時に再現されるべき輪郭ということもできる。伸張された後のデータは、ノイズの影響によってこの直線Ｌよりも外部に突出している部分、内部に入り込んでいる部分が混在していることが分かる。
【００４２】
図の右上に領域識別データ例を示した。領域Ａ１の拡大図を示している。先に説明した通り、領域識別データは、ＪＰＥＧデータと対になって用意されているデータである。伸張されたデータにはマトリックス状に画素が配列されている。図中の領域Ａ１には、１０×１０の画素が含まれているとする。直線Ｌは本来、キャラクターの輪郭となるべき境界線である。領域識別データは、この境界線に基づき、キャラクター内部となるべき画素に対して値０、余白部分となるべき画素に対して値１を割り当てたデータである。領域識別データを参照することによって、伸張されたデータの各画素についてキャラクター内部／余白部分のいずれとなるべきかを判断することができるため、本来の輪郭Ｌから突出した部分（図中の領域Ｎ１）を削除することが可能となる。また、本実施例では、キャラクターの色に応じて余白部分を予め白または黒に着色した状態となっているため、領域識別データによって余白と指示された部分（図中の領域Ｎ３）を削除することによって、本来の輪郭Ｌよりも入り込んだ部分（図中の領域Ｎ２）は、余白部分に着色された白または黒で埋められた状態となる。従って、領域識別データを用いることにより、ノイズによる影響を効果的に抑制するノイズ低減処理を実現でき、画質を向上させることができる。
【００４３】
領域Ｎ２については、ノイズ低減処理の際に、余白部分の色を、キャラクター内部の階調値に置換してもよい。置換すべき階調値は、例えば、キャラクターの平均階調値、キャラクター内部で領域Ｎ２に最も近接する画素の階調値などとすることができる。こうすることにより、更にノイズを低減することが可能となる。
【００４４】
図中には領域Ａ１のみを示したが、領域識別データは、キャラクター全体について、画素ごとに０または１を割り当てたデータとなっている。このデータはキャラＲＯＭ３８６にランレングスなど可逆の方法で圧縮して格納することが好ましい。もっとも、領域識別データは、各画素１ビットで構成することが可能であるから、比較的低容量のデータである。従って、キャラクターデータの余白部分を近似色で塗りつぶすことによって得られる圧縮向上効果が高い場合など、キャラクターデータと領域識別データとを合わせた総データ容量が十分に抑制できる時には、領域識別データを圧縮せずに格納してもよい。
【００４５】
上述の例では、ＪＰＥＧ圧縮する前の原画の輪郭をキャラクター内外の境界線Ｌとして用いる場合を例示した。これに対し、図中に示す境界線Ｌ１のように原画の輪郭よりも内側に設定された線を、キャラクター内外の境界線として用いても良い。こうすることにより、ノイズ低減処理によって輪郭部分のノイズを十分に除去することが可能となる。
【００４６】
境界線Ｌ１は、種々の方法で設定可能である。例えば、原画の輪郭を縮小して設定してもよいし、輪郭を一定量だけキャラクター内側にシフトすることによって設定してもよい。以下では、これらの境界線Ｌ１の設定方法について、領域識別データ生成処理としてフローチャートに基づき説明する。  
【００４７】
図７は領域識別データ生成処理のフローチャートである。原画の輪郭を縮小して境界線を設定する方法を示した。この処理は、遊技機のＣＰＵが実行するものではなく、遊技機用のキャラクタデータを生成するためのデータ生成装置が実行する。このデータ生成装置は、例えば、汎用のパーソナルコンピュータに、コンピュータグラフィックス用のソフトウェアや、以下で説明する処理を実現するソフトウェア等をインストールすることによって構成することができる。
【００４８】
領域識別データ生成処理を開始すると、データ生成装置は、処理対象となるキャラクタデータを読み込む（ステップＳ１００）。そして、その輪郭線を抽出する（ステップＳ１０２）。輪郭線の抽出は、周知の画像処理方法によって行うことができるため、ここでは詳細な説明は省略する。
【００４９】
次に、データ生成装置は、キャラクター内に基準点を設定し、その基準点を中心として輪郭線を縮小する（ステップＳ１０４）。図中に縮小処理の概要を示した。輪郭Ｃ１は原画の輪郭を表しており、破線Ｃ２は基準点Ｎを中心とした縮小線を表している。基準点Ｎはオペレータが手動で設定してもよいし、原画の輪郭Ｃ１で表される閉図形の図心としてもよい。破線Ｃ２は、基準点Ｎと輪郭線上の各点とを結ぶ線分を、縮小比率に応じて内分する点の集合として求められる。図の例では、基準点Ｎを一点だけ設定しているが、原画を複数のパーツに分割し、各パーツごとに基準点を設定しても良い。
【００５０】
縮小比率は、任意に設定可能である。原画をより小さいサイズに縮小する程、図６に示した境界線Ｌ１は確実にブロックノイズを除去可能となり、この意味では画質を向上させることができる。一方、図７のステップＳ１０４中に示すように、原画を縮小させると、形状によっては、領域ＡＡのように縮小前後の形状に大きな歪みが生じる部分や、領域ＢＢのように比較的歪みが小さい部分が生じる。縮小比率は、この歪みの偏りによる影響、およびノイズ低減効果の双方を考慮しながら設定することが好ましい。
【００５１】
データ生成装置は、こうして設定された境界線Ｃ２に基づき、領域識別データを設定する（ステップＳ１０６）。図６中に示したように、各画素について境界線Ｃ２の内外いずれにあるかを判定し、境界線Ｃ２内の画素に対して値０、外の画素に対して値１を設定すればよい。データ生成装置は、こうして設定された領域識別データを出力し（ステップＳ１０８）、この処理を終了する。
【００５２】
図８は変形例としての領域識別データ生成処理のフローチャートである。原画の境界線を一定量だけ内側にシフトすることによって、領域識別データを生成するための境界線を設定する例を示した。
【００５３】
処理を開始すると、データ生成装置は、処理対象となるキャラクタデータを読み込み（ステップＳ１１０）、輪郭線を抽出する（ステップＳ１１２）。そして、データ生成装置は、抽出された輪郭線を太線化し（ステップＳ１１４）、その内側を境界線として設定する（ステップＳ１１６）。
【００５４】
図中に太線化および境界線の設定処理の概要を示した。太線化とは、原画の輪郭Ｅの幅を一定太さに太くする処理である。図中の曲線Ｅ０、Ｅ１は太線化を施した場合の輪郭Ｅの両側線を表している。ハッチングを施した側、即ち曲線Ｅ１側がキャラクターの内部である。データ生成装置は、この曲線Ｅ１を、領域識別データ用の境界線として設定する。こうすることによって、原画の輪郭Ｅよりも、太線化の半幅分だけ内側にシフトした位置に曲線Ｅ１を設定することができる。もっとも、このような太線化処理を経ることなく、輪郭Ｅの各点を内側に一定量シフトする画像処理によって、曲線Ｅ１を求めても良い。
【００５５】
曲線Ｅ１を設定する際のシフト量は、任意に設定可能である。シフト量を大きくする程、ブロックノイズをより確実に除去可能となり画質を向上させることができる。ＪＰＥＧ圧縮する場合、ブロックノイズは８×８ピクセル単位で生じるため、シフト量は例えば、８ピクセル、またはこれよりも若干大きい値に設定すればよい。輪郭をシフトする場合には、原画を縮小させる場合に比べて、形状に生じる歪みが比較的小さいという利点がある。
【００５６】
データ生成装置は、こうして設定された境界線Ｃ２に基づき、領域識別データを設定し（ステップＳ１１８）、設定された領域識別データを出力して（ステップＳ１０８）、領域識別データ生成処理を終了する。
【００５７】
Ｄ．画面表示制御方法：
図９は表示制御処理のフローチャートである。ＣＰＵ３８１がＶＤＰ３８５に対して描画コマンド等を出力し、表示データを生成させるために実行する処理である。この処理は、垂直同期信号を契機として行われるものであり、本実施例では１６ｍｓｅｃ周期の割込処理として実行される。この処理を開始すると、ＣＰＵ３８１は、処理を実行するための準備として、多重割込みを許可し（ステップＳ１０）、ノイズキャンセル・判定処理を行う（ステップＳ１１）。ここにいうノイズとは、画像の圧縮・伸張に関わるものではなく、信号の伝達時に生じる電気的なノイズである。そして、割込端子の端子レベルを確認し（ステップＳ１２）、端子レベルが異常の場合には、ノイズ等の影響による異常なトリガに基づいて表示制御処理が開始されたものと判断し、そのまま処理を終了する。
【００５８】
端子レベルが正常の場合には（ステップＳ１２）、ＣＰＵ３８１はＶＤＰ３８５を初期化し（ステップＳ１３）、ＶＤＰレジスタを設定する（ステップＳ１４）。これは、描画コマンドが複数のレイヤから構成されている場合に、各レイヤの重ね合わせ順序、表示／非表示の設定など、表示データの生成時に使用される種々の設定を行うための処理である。
【００５９】
次に、ＣＰＵ３８１はＶＤＰ３８５のスプライトレジスタを初期化する（ステップＳ１５）。初期化が完了すると、ＣＰＵ３８１は、次にサブ制御基板３５から受信した表示コマンドの内容を解析し（ステップＳ１６）、ＬＣＤ１６に表示すべき画面データを特定する。そして、この画面データに基づいて上画像の描画コマンドをＶＤＰ３８５に出力する（ステップＳ１７）。この描画コマンドは、併せてデータ伸張回路３８７にも送信される。データ伸張回路３８７は、描画コマンドを受け取ると、キャラＲＯＭ３８６から必要なキャラクタデータを読み出し、バンクメモリ３８９に格納する。ＶＤＰ３８５は、バンクメモリ３８９に格納されたキャラクタデータを用いて表示データの生成を行うのである。
【００６０】
ＣＰＵ３８１は、描画コマンド出力と並行して、スプライトの最適化を行う（ステップＳ１８）。これは、ＶＤＰ３８５に定義された表示エリアから全体が外れるようなスプライトについては、描画コマンドから省略する処理である。ＶＤＰ３８５は描画コマンドに従って、仮想的に設けられたキャンバス上に描画を行い、その中からＬＣＤ１６の表示エリアに対応するデータを切り出して表示データを生成する。従って、スプライトの位置によっては、キャンバス上に描画しても、描画結果が表示エリアから完全に外れるということが生じうる。スプライトの最適化は、このようなスプライトをキャンバス上に描画するという無駄な処理を回避し、ＶＤＰ３８５の処理効率を向上させるために行われる処理であるため、省略することも可能である。
【００６１】
図１０は描画処理のフローチャートである。左側に描画処理、即ちＣＰＵ３８１から描画コマンドを受け取ったＶＤＰ３８５が順次、スプライトを描画して表示データを生成するために実行する処理を示した。右側には、データ伸張回路３８７が画像データ伸張処理、即ち描画コマンドに基づいてキャラクタデータをバンクメモリ３８９に格納する処理を示した。
【００６２】
まず、画像データ伸張処理について説明する。データ伸張回路３８７は、ＣＰＵ３８１から描画コマンドを解析し、描画に必要となるキャラクタデータの指定を入力する（ステップＳ４１）。そして、キャラＲＯＭ３８６から、指定されたキャラクタデータを読み込み、データの圧縮形式に応じて伸張する（ステップＳ４２）。本実施例では、ＪＰＥＧデータと背景画像データで、異なる伸張方法を使い分けることになる。ＪＰＥＧデータは非可逆の圧縮方法であるため、この伸張の時点でブロックノイズが発生する。
【００６３】
ＪＰＥＧデータを読み出した場合には（ステップＳ４３）、データ伸張回路３８７内のノイズ低減部３８８が、以下の手順でノイズ低減処理を行う。ノイズ低減部３８８は、まず領域識別データを読み込み、圧縮されている場合にはデータを伸張する（ステップＳ４４）。そして、領域識別データに基づいて背景透明化処理を行う（ステップＳ４５）。先に図６で説明したように、ノイズ低減部３８８は、伸張後のＪＰＥＧデータの画素ごとに、領域識別データと対比して、キャラクターの内部か余白部分かを判断する。そして、余白部分と判断された画素を透明化する。各画素の色データとしてレッド（Ｒ），グリーン（Ｇ），ブルー（Ｂ）の階調値の他に透明度を表すαチャンネルが設けられている場合には、完全に透明となる値をαチャンネルに設定すればよい。透明化は、この他の方法で行っても良い。また、ここでは背景を透明化する場合を例示したが、透明化に代えて、予め設定された一定の色に置換する処理を行うものとしてもよい。
【００６４】
図６中の領域Ｎ２のように、キャラクタの内部に入り込むようにして生じているノイズについては、上述の背景透明化処理では、除去することができない。ただし、本実施例では、キャラクターの余白部分が、キャラクターの近似色に置換されているため、領域Ｎ２が残ってもノイズとしての視認性を低減することができ、全体として画質を向上させることができる。
【００６５】
データ伸張回路３８７は、以上の処理を施したキャラクタデータをバンクメモリ３８９に格納する（ステップＳ４６）。先に説明した通り、バンクメモリ３８９は、ダブルバッファとなっているため、格納先は、ＣＰＵ３８１から描画コマンドが出力されるたびに、バンクメモリ３８９の内部で切り替えられる。
【００６６】
次に、ＶＤＰ３８５が実行する描画処理について説明する。以下では、それぞれのスプライトに対して、一義的な識別番号として「スプライトＮｏ．」が付されているものとして描画処理の内容を説明する。ＣＰＵ３８１は全スプライトを順番に処理するための初期設定として、処理対象となるべき「スプライトＮｏ．」を０に設定する（ステップＳ３１）。そして、処理対象となるスプライトの設定データを読み込む（ステップＳ３２）。図中に設定データの内容を例示した。識別番号としての「スプライトＮｏ．」、スプライトを配置すべきキャンバス上の配置座標（ＸＰＯＳ，ＹＰＯＳ）、およびスプライトの表示／非表示を切り換えるためのフラグが含まれる。この他のデータを含めても差し支えない。
【００６７】
ＣＰＵ３８１は、処理対象のスプライトが、表示／非表示フラグによって「表示」設定されている場合には（ステップＳ３３）、配置座標に応じて、バンクメモリ３８９に格納されたキャラクタデータを用いてスプライトを配置し描画する（ステップＳ３４）。以上の処理を、ＣＰＵ３８１は「スプライトＮｏ．」が所定の上限値Ｎｌｉｍに至るまで（ステップＳ３５）、「スプライトＮｏ．」を順次、値１ずつ増加させながら（ステップＳ３６）、繰り返し実行する。上限値Ｎｌｉｍは、画面データで用いられる全スプライトに付された「スプライトＮｏ．」の最大値とすることができる。遊技状態によって、一部のスプライトしか用いないことが決まっている場合には、その中の「スプライトＮｏ．」の最大値としてもよい。
【００６８】
以上で説明した実施例によれば、ＪＰＥＧデータに対して、キャラクターの余白を、キャラクターの近似色に塗りつぶした状態で領域識別データを用いることにより、ブロックノイズが輪郭部分に与える影響を効果的に抑制することができる。この結果、ＬＣＤ１６に表示されるスプライトの画質を向上させることができ、遊技機の興趣を高めることができる。
【００６９】
また、本実施例では、背景を近似色に塗りつぶした上でＪＰＥＧ圧縮をかけることによって、キャラＲＯＭ３８６のデータ容量を抑制することができる。この結果、キャラＲＯＭ３８６からのキャラクタデータの読み出し、データ伸張に要する時間を短縮化できるなどの利点もある。
図１０  
【００７０】
以上、本発明の種々の実施例について説明したが、本発明はこれらの実施例に限定されず、その趣旨を逸脱しない範囲で種々の構成を採ることができることはいうまでもない。本実施例では、非可逆の圧縮方法としてＪＰＥＧを用いたが、ＲＭ２などの方法を用いても良い。また、本実施例では、キャラＲＯＭ３８６内に静止画としてキャラクタデータが格納されている場合を例示したが、本実施例は、動画像として格納されている場合にも適用可能である。動画像を伸張して得られる各フレーム画像は静止画であるため、実施例および変形例で示した処理をそのまま適用することが可能だからである。実施例では、遊技機への適用例を示したが、本発明は、遊技機に無関係の画像表示装置にも適用可能である。
【図面の簡単な説明】
【００７１】
【図１】実施例としてのパチンコ機１の正面図である。
【図２】パチンコ機１の制御用ハードウェア構成を示すブロック図である。
【図３】装飾図柄制御基板３０の回路構成を示す説明図である。
【図４】キャラクター例を示す説明図である。
【図５】キャラクター例のキャラＲＯＭ３８６への格納状態を示す説明図である。
【図６】領域識別データの例を示す説明図である。
【図７】領域識別データ生成処理のフローチャートである。
【図８】変形例としての領域識別データ生成処理のフローチャートである。
【図９】表示制御処理のフローチャートである。
【図１０】描画処理のフローチャートである。
【符号の説明】
【００７２】
１…パチンコ機
３…メイン制御基板
４…遊技盤
４ａ…表示部
４ｂ…操作スイッチ
６…遊技領域
８…発射ハンドル
９…始動入賞口
１０…大入賞口
１２…パネル装飾ランプ
１５ａ…入賞検出器
１６…ＬＣＤ
１８…大入賞口ソレノイド
２０…払出モータ
２１…賞球払出装置
２２…払出球検出器
２４…モータ駆動センサ
２５…払出制御基板
２９…スピーカ
３０…装飾図柄制御基板
３１…枠装飾ランプ
３２、３４…ランプ中継基板
３５…サブ制御基板
４１…特別図柄表示パネル
４７…発射制御基板
４８…タッチ検出部
４９…発射モータ
３８１…ＣＰＵ
３８２…ＲＡＭ
３８３…ＲＯＭ
３８６…キャラＲＯＭ
３８５…ＶＤＰ
３８５ｓ…スプライトレジスタ
３８５ｖ…ＶＤＰレジスタ
３８７…データ伸張回路
３８８…ノイズ低減部
３８９…バンクメモリ
３９０…スケーラ
３９７…フレームメモリ
【図１】
2008093060.tif 000003
【図２】
2008093060.tif 000004
【図３】
2008093060.tif 000005
【図４】
2008093060.tif 000006
【図５】
2008093060.tif 000007
【図６】
2008093060.tif 000008
【図７】
2008093060.tif 000009
【図８】
2008093060.tif 000010
【図９】
2008093060.tif 000011
【図１０】
2008093060.tif 000012