Sun フレームバッファー使用の手引き

画像表示形式リストを変更する

afbconfig コマンドを使用して、X サーバーの画像表示形式リストの順序を変更することができます。表 7-4 に示す afbconfig オプションを使用して、特定のデバイスに合わせて参照された画像の表示形式リストを設定してください。

表 7-4 afbconfig の画像フラグのデフォルトの設定

名称  

値 

Solaris 2.5.1 または2.5.1 SHWP の 

デフォルト 

Solaris 2.6 の 

デフォルト 

linearorder

first/last

last

last 

deflinear

true/false

false

false 

overlayorder

first/last

last

last 

defoverlay

true/false

false

false 

expvis

enable/disable

disable

enable 

sov

enable/disable

disable

enable 

画像表示形式リストの順序を変更する (-linearorder-overlayorder)  

デフォルトでは、非リニア画像は、画像表示形式リスト上でリニア画像より前に表示されます。afbconfig コマンドを使用して、画像表示形式リストの順序を変更することができます。

3D アプリケーションの多くはリニア画像を使用しますが、特定の 3D アプリケーションでは、XSolarisGetVisualGamma (3) を使用するリニア画像を検索しないで、リストに最初に表示される 24 ビットトゥルーカラーを使用します。このようなアプリケーションを、正しい画像表示形式で動作させるには、リストの並べ換えが必要です。-linearorder オプションを使用して、リニア 24 ビットトゥルーカラーが最初に表示されるように指定してください。

画像表示形式リストの並べ換えは、ウィンドウシステムの再起動時に有効となります。

  1. リストの順序を変更する方法は、-linearorder オプションの 1 つを指定して afbconfig コマンドを入力します。

    以下に例を示します。


    # afbconfig -linearorder first
    

    デフォルトの画像表示形式リストでは、8 ビット疑似カラー画像が 8 ビット疑似カラーオーバーレイ画像よりも前になっています。この画像表示形式の順序を、afbconfig コマンドを使用して変更することができます。

    8 ビット疑似カラーオーバーレイ画像を使用する特定のアプリケーションは、リストに最初に表示される 8 ビット疑似カラーオーバーレイ画像を使用します。このようなアプリケーションを正しい画像表示形式で動作させるには、8 ビット疑似カラーオーバーレイ画像が、画像表示形式リストの最初に表示されるように、-overlayorder オプションを使用して画像表示形式リストの順序を変更します。

    画像表示形式リスト内の画像表示形式の並べ換えは、ウィンドウシステムの再起動時に有効となります。

  1. リストの順序を変更する方法は、-overlayorder オプションの 1 つを指定して afbconfig コマンドを入力します。

    以下に例を示します。


    # afbconfig -overlayorder first
    

デフォルトの画像表示形式を変更する (-deflinear-defoverlay)

画面のデフォルトの画像表示形式は、8 ビット疑似カラーオーバーレイ画像です。デフォルトの画像表示形式は afbconfig コマンドを使用して、リニアアンダーレイ画像またはオーバーレイ画像のいずれかに変更することができます。

  1. デフォルトの画像表示形式をリニア画像にする場合は、afbconfig コマンドを以下のように指定します。


    # afbconfig -deflinear true
    

  1. デフォルトの画像表示形式をオーバーレイ画像にする場合は、afbconfig コマンドを以下のように指定します。


    # afbconfig -defoverlay true
    


    注意 - 注意 -

    リニアオーバーレイ画像は存在しないため、-deflinear true-defoverlay true を同時に指定した場合は、結果は不定となります。



    注意 - 注意 -

    画像表示形式の順序オプション (overlayorderlinearorder) は、デフォルト画像表示形式オプション (defoverlaydeflinear)とは異なります。たとえば、オーバーレイ画像表示形式のグループをリストの始めに移動させても、その画像表示形式が自動的にデフォルトとなるわけではありません。特定のアプリケーションでは、変更した画像表示形式の順序がデフォルトになるものとみなし、デフォルトの画像表示形式で生成したカラーマップと、リストで最初にあった 8 ビット疑似カラー画像を一致させようとして、「BADMATCH」 X エラーを起こす場合があります。


OpenGL の画像表示形式に変更する (-expvis)

日本語 Solaris 2.6 ハードウェアリリース以降では、OpenGL 拡張画像表示形式をサポートします。拡張画像表示形式では、8 ビット疑似カラー、24 ビットトゥルーカラー (リニアおよび非リニア) 、24 ビットダイレクトカラー、8 ビット疑似カラーオーバーレイの 5 種類の画像グループは、同じ画像タイプの単一画像インスタンスから、複数画像インスタンスに拡張されます。同じ画像グループの異なるインスタンスは (単一バッファーかダブルバッファー機能、または単一画像か立体画像機能、あるいは両方の組み合わせといった)、異なる GLX 機能を表します。画像インスタンスの数は、X サーバーが開始された画像モードが単一画像か立体画像かによって異なります。

OpenGL の画像表示形式 (拡張画像表示形式)を有効にする
  1. 以下のように入力します。


    # afbconfig -expvis enable
    

SERVER_OVERLAY_VISUALS 属性に変更する (-sov)

SERVER_OVERLAY_VISUALS は、画像 ID、透過タイプ、透過値、画面のサーバーオーバーレイ画像 (SOV : server overlay visusals) を含むルートウィンドウの属性の 1 つです。 afbconfig コマンドを使用して、この属性を有効としたり、透過サーバーオーバーレイ画像表示形式の参照先の指定を切り替えることができます。

SERVER_OVERLAY_PROPERTY のアドバタイズと SOV のエクスポートを設定する
  1. 以下のように入力します。


    # afbconfig -sov enable
    

ガンマ補正を設定する (-g-gfile)

ガンマ補正を設定するには、ガンマ補正値またはガンマ補正テーブルが保存されたファイルを指定します。

-g オプションを使用して、指定されたガンマ値に基づくガンマテーブルエントリを設定します。ガンマ値 2.22 はリニアガンマ補正を表し、Elite3D 製品での固定値に一致します。この値は画面ごとの値なので、リニア画像と補正の対象となるガンマ値はすべてこの値を使用します。

値を使用してガンマ補正を設定する
  1. 以下のように入力します。


    # afbconfig -g 2.22
    

    -gfile オプションは、0 から 255 までの 3 桁から成る 256 個の整数を含んだファイルから、ガンマテーブルエントリを明示的に設定します。この形式は、改行で区切られた 3 つの整数となります。各行はテーブル中のエントリとして使用される RGB 値を含んでいます。この値は画面ごとの値なので、リニア画像と補正の対象となるガンマ値はすべてこの値を使用します。

ファイルを使用してガンマ補正を設定する
  1. 以下のように入力します。


    # afbconfig -gfile ファイル名
    

拡張オーバーレイを選択する (-extovl)

拡張オーバーレイモードでは、オーバーレイ画像に不透明の 256 色が与えられます。サーバーオーバーレイ画像 (SOV: server overlay visuals) には不透明の 255 色と透明の 1 色が与えられます。拡張オーバーレイモードではハードウェアによってアクセラレートされる透過性が提供され、SOV 画像を使用したウィンドウ表示の性能が向上します。拡張オーバーレイモードでは、非オーバーレイ画像を使用するウィンドウに対し 64 のウィンドウ ID (WID : Window ID) があり、オーバーレイ画像を使用するウィンドウには 3 つの WID があります。

拡張オーバーレイモードを解除した場合、オーバーレイ画像の色数は 256 から maxwids オプションで指定された値 (デフォルトは 32) を引いた数となります。SOV が可能な画像は、同じく256 色から maxwids オプションの値を引いた数と、透過性のソフトウェアエミュレーションの数を足したものとなります。

拡張オーバーレイモードを選択する
  1. 以下のように入力します。


    # afbconfig -extovl enable
    

    表 7-5afbconfig -extovl オプションのデフォルトの設定を示します。

    表 7-5 afbconfig -extovl オプションのデフォルトの設定

    値 

    Solaris 2.5.1 のデフォルト 

    Solaris 2.6 のデフォルト 

    enable/disable

    disable

    enable

オーバーレイ中での WID 数と色数を選択する (-maxwids)

maxwids オプションは、拡張オーバーレイモードが無効のときにだけ使用することができます。maxwids オプションは、WID として使用するために予約しておく Elite3D X チャネルのピクセル値の最大数を指定します。残りのピクセル値はオーバーレイウィンドウで使用できる色数です。maxwids オブションに指定できる値は 1、2、4、8、16、32、64 のうちのどれかです。

WID の番号を選択する
  1. 次のように入力します。


    abconfig -maxwids WID の番号
    

    表 7-6afbconfig -maxwids オプションのデフォルトの設定を示します。

    表 7-6 afbconfig -maxwids オプションのデフォルトの設定

    値 

    Solaris 2.5.1 のデフォルト 

    Solaris 2.6 のデフォルト 

    1、2、4、8、16、32、64 

    32 

    使用不可