JP2006235858A - コンピュータグラフィックスにおける可変精度のデータ圧縮伸長方式および該方式を用いたゲーム機 - Google Patents
コンピュータグラフィックスにおける可変精度のデータ圧縮伸長方式および該方式を用いたゲーム機 Download PDFInfo
- Publication number
- JP2006235858A JP2006235858A JP2005047656A JP2005047656A JP2006235858A JP 2006235858 A JP2006235858 A JP 2006235858A JP 2005047656 A JP2005047656 A JP 2005047656A JP 2005047656 A JP2005047656 A JP 2005047656A JP 2006235858 A JP2006235858 A JP 2006235858A
- Authority
- JP
- Japan
- Prior art keywords
- data
- bits
- compression
- integer
- processing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000013144 data compression Methods 0.000 title claims abstract description 10
- 238000012545 processing Methods 0.000 claims abstract description 48
- 238000007906 compression Methods 0.000 claims abstract description 43
- 230000006835 compression Effects 0.000 claims abstract description 43
- 238000000034 method Methods 0.000 claims description 27
- 230000006837 decompression Effects 0.000 claims description 23
- 238000009877 rendering Methods 0.000 claims description 9
- 238000004364 calculation method Methods 0.000 claims description 7
- 238000006243 chemical reaction Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 7
- 238000012546 transfer Methods 0.000 description 7
- 238000013523 data management Methods 0.000 description 2
- 238000003780 insertion Methods 0.000 description 2
- 230000037431 insertion Effects 0.000 description 2
- 238000013499 data model Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Landscapes
- Processing Or Creating Images (AREA)
Abstract
【解決手段】外部圧縮装置2で例えば32ビット浮動小数点方式の元データの絶対値の最大値を32ビットより小さいビットの整数値の絶対値の最大値で割って圧縮率を求める。すべての元データについて上記圧縮率で割り算を行い整数データを得、これらを圧縮データとして外部記憶装置3に格納する。データ伸長処理ではメモリ部4に圧縮データを読み込み上記圧縮とは逆の演算を行うことにより32ビット浮動少数点の元データに展開する。所定の3D描画処理が行われてモニタ9に表示される。
【選択図】 図1
Description
・頂点データ(3頂点分):ポリゴン面を構成する。
・法線データ(3頂点分もしくは1頂点分):面の向きを表す。
・面のカラー(3頂点分もしくは1頂点分):面の塗りつぶす色データである。
・テクスチャデータ(3頂点分):テクスチャのどの部分を使用するかのデータである。
なお、法線データ,面のカラー,テクスチャデータは必要でない場合もあり得る。
上記データがすべて必要であって、すべてを浮動小数点形式で持った場合の1頂点あたりの使用メモリ量は、32ビット浮動小数点形式の場合(一般的な浮動小数点形式)、
(頂点(XYZ)3+法線(XYZ)3+カラー(RGB)3+テクスチャ(ST)2)×32ビット=352ビットとなる。
16ビット整数形式の場合は上記の半分になるので、176ビット(22バイト)、8ビット整数形式の場合はさらに上記の半分になるので、88ビット(11バイト)となる。
この浮動小数点形式は、正数・負数を表す符号ビットと仮数部と指数部によって表されるもので、指数部により小数点位置を決定するので、小数点以下の精度を上げることが可能であり、小数点を含む数値を表すのに適している形式である。
浮動小数点形式に対して整数形式という方法がある。全ビットを整数部とし、小数部を持たない方法である。
この方法の利点は、整数だけに関していえば最も少ないサイズで大きな数字を表すことが可能であるという点にある(例えば8ビットの場合,0〜255、16ビットの場合,0〜65535まで可能である)。
浮動小数点形式の欠点は、仮数部の精度を考慮すると必要なメモリ量が多くなりがちである点が上げられる。
これは複数のポリゴンの頂点を複数の頂点集合に分割し、頂点集合毎に基準点を決め、頂点集合毎に各頂点の位置情報として当該頂点の座標と基準点の座標との差分データを、所定のスケール値に対する大きさを示す整数値として求めるものである。したがって、圧縮データは頂点集合毎の基準点の座標データおよび差分データであり、各頂点とその基準点との距離は十分小さく各成分を整数値で表現するものであり、整数型データから浮動小数点型データへの変換とスケール値との乗算で伸長を行うものである。
この差分方式は、差分の部分で精度を上げることができるが、記述も2行となってデータ量も増加し処理も遅くなる。
本発明の目的は、CGポリゴンモデルのモデルデータの圧縮・伸長処理において、処理におけるデータのサイズを大幅に小さくし、データの読み込み,転送速度を速くすることにより処理速度の向上を図ることができるコンピュータグラフィックスにおける可変精度のデータ圧縮伸長方式を提供することにある。
本発明の他の目的は、上記圧縮伸長方式を適用し、画像表示部に表示される3D画像が圧縮前の元データに比較し無視できる品質で再生でき、メモリ部の容量の減少を図るとともにポリゴンモデル作成処理に伴う転送や処理速度の向上を図ることができるゲーム機を提供することにある。
本発明の請求項2は、請求項1記載の発明において前記圧縮データを読み込む手段と、前記圧縮データから一頂点分の圧縮されたデータの構成要素を取り出す手段と、前記一頂点分のデータの構成要素毎に、整数値に圧縮率を掛けることによって元データに伸長し、CG表示に必要な諸計算を行い、これを繰り返すことにより圧縮データを伸長する伸長手段とを有することを特徴とする。
本発明の請求項3は、請求項1または2記載の発明において所定のビット数で表される浮動小数点方式の元データは、32ビットであり、前記所定のビット数より小さいビット数の整数値は、16ビットまたは8ビットであることを特徴とする。
本発明の請求項4は、CGポリゴンデータを記憶し、該CGポリゴンデータの3D描画処理を行うゲーム機において、前記CGポリゴンデータを前記圧縮方式で圧縮し、該圧縮データを記憶する記憶手段と、ゲーム実行に際し、前記記憶手段内の圧縮データを前記伸長方式で伸長し、描画処理して画像表示する画像処理手段とを有することを特徴とする。
図1は、本発明によるコンピュータグラフィックスにおける可変精度のデータ圧縮伸長方式を説明するためのブロック図である。
外部圧縮装置2では、浮動小数点方式の元データが本発明による圧縮方式によって圧縮処理される。これによって例えば32ビット浮動小数点形式のポリゴンデータがサイズが小さい8ビット,16ビットの整数データに変換される。この整数データ(圧縮データ)は外部記憶装置3に記憶され、メインバス10を介して内部のメモリ部4に転送される。CPU1では圧縮データの展開(伸長)処理が行われ3D描画処理がされてグラフィック回路8を介してモニタ9にポリゴンデータの3D表示が行われる。
図2は、CPU内の処理の詳細を説明するためのブロック図である。
CPU1はメモリ部4より圧縮データ1aを読み込み、展開装置1bで圧縮処理の逆変換(伸長処理)を行って、32ビットの浮動小数点形式の元のデータ(ポリゴンデータ)1cに戻す。このポリゴンデータは3D描画装置1dによって3D描画演算処理されグラヒィック回路8で映像信号に変換されてモニタ9に3D画像が表示される。
元の圧縮前のデータは32ビット浮動小数点方式で、8ビット,16ビットの整数データに変換する例である。
3つの頂点A,B,Cで表現されるモデルの各頂点は座標位置x,y,z,テクスチャ座標U,V,法線データX,Y,Z,カラーデータR,B,Gで表される。
ここで、座標位置,テクスチャ座標については16ビットを、法線データ,カラーデータについては8ビットをそれぞれ割り当てるとする。法線データ,カラーデータを16ビットよりさらに小さい8ビット表示にしたのは、描画精度,色彩の表現において、座標位置,テクスチャ座標に対して表示ビット数を小さくしても、座標位置,テクスチャー座標と同様、誤差は少なく元のデータの再現性について大きな影響を与えることが少ないからである。
ちなみに、ゲームのデータは0に近い場合が多い(データの分布範囲が狭い)。多くても100〜1000の単位である。したがって、このようにデータサイズを小さくしても誤差の影響は画像再現では微々たるものである。
したがって、元データの絶対値の最大値を、元データのビット数とは少ない整数の絶対値の最大値で割ることにより、整数値1あたりの元データの割合を求めることができる。すなわち、これが圧縮率であり、圧縮,復元の際のキーデータとなる。
つぎに座標位置データの他のデータを上記圧縮率(圧縮率の小数点8桁以上は切り捨てた数値)で割り、整数データ(小数点以下は切り捨てた数値)に変換する。
上記例については、
3.14159/0.0001266=24815
4.15/0.0001266=32767
0.8/0.0001266=6319
の整数値となる。
すべての座標位置データについて同様に上記圧縮率で割り算を行い整数データを得る。
なお、圧縮処理を8ビット整数形式で行う法線データ,カラーデータの場合は、8ビットの整数値の最も大きい数値は127であるので、該数値を用いることとなる。
圧縮データには各項目毎の圧縮率と全てのデータについての整数データが含まれる。
画像表示のため伸長する場合、整数データ形式の圧縮データ1aをメモリ部4より読み込み、上記圧縮とは逆の演算を行う。すなわち座標位置データ,テクスチャ座標については16ビット整数データ×圧縮率を実行することにより32ビット浮動少数点の元データが復元される。法線データ,カラーデータについては8ビット整数データ×圧縮率を実行することにより32ビット浮動少数点の元データが復元される。
待ち受け状態ではCPU20からサウンド処理部27にコマンドが送られ、スピーカ28より待ち受け用の音楽などが流れている。
コイン投入部2よりコインが投入されると、コイン関連装置23はコイン投入を検知し、これを入出力制御装置24を介してCPU20に伝達する。CPU20は、画像表示部7の待ち受け画面をゲーム開始画面に変え、ゲーム開始に伴うキャラクタなどの選択画面を表示する。プレイヤが操作部21によって、主人公キャラクタ,相手キャラクタ(格闘ゲームの場合)を選択しスタートボタンを押すと、ゲーム制御部20aはゲームを開始する。
プレイヤが磁気カード15を挿入すると、CPU20はプレイヤを認識し、上記選択画面で継続ゲームを選択した場合、入出力制御装置24を介してデータ管理サーバ装置14の記憶部14aより認識されたプレイヤのゲーム経過情報を読み出し、ゲーム開始画面にゲーム途中の画面を表示する。かかる場合にはキャラクタなどを選択することなくゲームが開始される。
ゲーム開始にともない、データ読出部20bは圧縮データをRAM30に転送する。図1における外部記憶装置3はROM29に、メモリ部4はRAM30にそれぞれ相当するものである。展開(伸長)処理部20cはRAM30より圧縮データを読み出し、8ビット,16ビット整数データ×圧縮率を実行することにより32ビット浮動少数点の元データに展開する。3D描画処理部20dは展開された32ビット浮動少数点のポリゴンデータをジオメトリ処理およびレンダリング処理する。ジオメトリ処理は展開されたポリゴンデータの座標データを高速に処理するもので、ポリゴンデータのモデルの移動,回転等に対する処理が行われ、クリッピング,透視変換などが行われる。レンダリング処理では陰面処理およびシェーディング処理などが行われる。
ゲーム機内のROM29,RAM30およびCPU20の間で転送されるポリゴンデータは8ビット,16ビットの整数データでサイズが小さいため転送速度は速く、CPU20内での展開も簡単な演算なため処理速度も速い。
本発明方式の圧縮では原点座標からかなり離れたモデルデータは元データの絶対値の最大値が大きくなると精度に問題が生ずるが、ゲーム機ではもともと大きなデータ範囲はとらず、また、画面外に出たポリゴンについては描画処理を行なわないので、精度について問題が生ずることはなく、データサイズが小さく、メモリ容量を少なくでき、上述のように各回路間の転送やCPU内の転送および処理速度が速くなるという利点がある。
2 外部圧縮装置
3 外部記憶装置
4 メモリ部
5 入力装置
6 サウンド
7 スピーカ
8 グラフィック回路
9 モニタ
10 メインバス
13 カード読み取り部
1a 圧縮データ
1b 展開装置(伸長装置)
1c 元データ
1d 3D描画装置
20a ゲーム制御部
20b データ読出部
20c 展開処理部
20d 3D描画部
Claims (4)
- 所定のビット数で表される浮動小数点方式の元データについて絶対値の最大値を求める手段と、
前記絶対値の最大値を、前記所定のビット数より小さいビット数で表される整数値の最大値で割ることにより圧縮率を求める圧縮率算出手段と、
浮動小数点方式の元データのすべてを前記圧縮率で割ることにより各浮動小数点方式の元データを整数データ形式に変換する整数データ変換手段と、
元データ復元のため、前記整数データと前記圧縮率を含めた圧縮データを作成する圧縮データ作成手段と、
を有することを特徴とするコンピュータグラフィックスにおける可変精度のデータ圧縮方式。 - 前記圧縮データを読み込む手段と、
前記圧縮データから一頂点分の圧縮されたデータの構成要素を取り出す手段と、
前記一頂点分のデータの構成要素毎に、整数データに圧縮率を掛けることによって元データに伸長し、CG表示に必要な諸計算を行い、これを繰り返すことにより圧縮データを伸長する伸長手段と、
を有することを特徴とする請求項1記載のコンピュータグラフィックスにおける可変精度のデータ伸長方式。 - 所定のビット数で表される浮動小数点方式の元データは、32ビットであり、
前記所定のビット数より小さいビット数の整数値は、16ビットまたは8ビットであることを特徴とする請求項1または2記載のコンピュータグラフィックスにおける可変精度のデータ圧縮伸長方式。 - CGポリゴンデータを記憶し、該CGポリゴンデータの3D描画処理を行うゲーム機において、
前記CGポリゴンデータを前記圧縮方式で圧縮し、該圧縮データを記憶する記憶手段と、
ゲーム実行に際し、前記記憶手段内の圧縮データを前記伸長方式で伸長し、描画処理して画像表示する画像処理手段と、
を有することを特徴とするゲーム機。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005047656A JP4315922B2 (ja) | 2005-02-23 | 2005-02-23 | コンピュータグラフィックスにおける可変精度のデータ圧縮伸長方式および該方式を用いたゲーム機 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005047656A JP4315922B2 (ja) | 2005-02-23 | 2005-02-23 | コンピュータグラフィックスにおける可変精度のデータ圧縮伸長方式および該方式を用いたゲーム機 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2006235858A true JP2006235858A (ja) | 2006-09-07 |
JP4315922B2 JP4315922B2 (ja) | 2009-08-19 |
Family
ID=37043452
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005047656A Expired - Fee Related JP4315922B2 (ja) | 2005-02-23 | 2005-02-23 | コンピュータグラフィックスにおける可変精度のデータ圧縮伸長方式および該方式を用いたゲーム機 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4315922B2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014519640A (ja) * | 2011-05-02 | 2014-08-14 | 株式会社ソニー・コンピュータエンタテインメント | グラフィックスハードウェアにおけるテクスチャリング |
JP2016510454A (ja) * | 2013-01-10 | 2016-04-07 | トムソン ライセンシングThomson Licensing | 頂点誤差訂正のための方法および装置 |
-
2005
- 2005-02-23 JP JP2005047656A patent/JP4315922B2/ja not_active Expired - Fee Related
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014519640A (ja) * | 2011-05-02 | 2014-08-14 | 株式会社ソニー・コンピュータエンタテインメント | グラフィックスハードウェアにおけるテクスチャリング |
US9508185B2 (en) | 2011-05-02 | 2016-11-29 | Sony Interactive Entertainment Inc. | Texturing in graphics hardware |
JP2016510454A (ja) * | 2013-01-10 | 2016-04-07 | トムソン ライセンシングThomson Licensing | 頂点誤差訂正のための方法および装置 |
US9866840B2 (en) | 2013-01-10 | 2018-01-09 | Thomson Licensing | Method and apparatus for vertex error correction |
Also Published As
Publication number | Publication date |
---|---|
JP4315922B2 (ja) | 2009-08-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4987988B2 (ja) | 画像の圧縮及び/又は復元 | |
KR100362704B1 (ko) | 화상데이터생성방법과화상데이터처리장치및기록매체 | |
US8542243B2 (en) | High-compression texture mapping | |
US20060250397A1 (en) | Graphics processing unit and graphics processing system | |
JP2002008060A (ja) | データ処理方法、記録媒体及びデータ処理装置 | |
CN111279384B (zh) | 图形流水线中的索引的压缩和解压缩 | |
JP4061697B2 (ja) | 画像表示方法及びそれを実行する画像表示装置 | |
JP4315922B2 (ja) | コンピュータグラフィックスにおける可変精度のデータ圧縮伸長方式および該方式を用いたゲーム機 | |
WO2018111402A1 (en) | Fetch reduction for fixed color and pattern sub-frames | |
US6590576B1 (en) | Method and apparatus for performing perspective transformation | |
JP3104643B2 (ja) | 画像処理装置及び画像処理方法 | |
JP3617960B2 (ja) | 3次元ゲーム画像処理プログラム、3次元ゲーム画像処理方法及びビデオゲーム装置 | |
JP2001175455A (ja) | ベクトル正規化演算器、ベクトル正規化演算方法及び記録媒体 | |
JP2000148126A (ja) | 画像表示装置及び方法 | |
JP3547277B2 (ja) | グラフィックス処理装置 | |
JP3222206B2 (ja) | ポリゴンデータ処理装置 | |
JP2011175542A (ja) | 画像データ処理装置 | |
JP4483026B2 (ja) | 図形情報変換装置、図形情報変換方法及び記録媒体 | |
JP4386124B2 (ja) | 映像信号処理装置および映像信号処理方法 | |
JP3566953B2 (ja) | データ読込プログラム、データ読込方法及びビデオゲーム装置 | |
JP2007188338A (ja) | 画像処理装置 | |
JP2000182074A (ja) | 放射光線表示方法、画像表示装置、記録媒体 | |
JP3778068B2 (ja) | 画像データの展開方法及び画像表示制御装置 | |
JPH08161465A (ja) | 画像データファイル作成方法、記録媒体及び画像作成方法 | |
JP4584665B2 (ja) | 3次元ゲーム画像処理プログラム、3次元ゲーム画像処理方法及びビデオゲーム装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20060609 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20081031 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081111 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090108 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090224 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090421 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20090519 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090519 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4315922 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120529 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120529 Year of fee payment: 3 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120529 Year of fee payment: 3 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130529 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130529 Year of fee payment: 4 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130529 Year of fee payment: 4 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140529 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |