この節では 3D アクセラレーション機能を有効にした X サーバを動かすために 必要な手順を説明します。
X サーバを起動する前には、お使いのハードウェアに対応した正しい カーネルモジュールをインストールしなければなりません。
モジュールのインストールは root になって実行します:
insmod XXX/ドライバ名.o
例えば、3dfx ハードウェアでは、tdfx.o というカーネルモジュールを使うので、 `insmod XXX/tdfx.o' と入力します。
カーネルモジュールがインストールされたことを確認します。これは /proc/dri/0 があるかどうかで調べます。
まず、XF86Config ファイルでは GLX モジュールと DRI モジュールをロードし なければなりません。
Section "Module" ... # GLX モジュールのロード Load "glx" # DRI モジュールのロード Load "dri" EndSection
次に DRI セクションを使ってダイレクトレンダリングへのアクセスを制限しま す。
システム上の全てのユーザにダイレクトレンダリングを使わせたいなら、 DRI セクションは簡単になります。
Section "DRI" Mode 0666 EndSection
このセクション指定で、X サーバに接続している全てのユーザが ダイレクトレンダリングを使えるようになります。
一部のユーザしかダイレクトレンダリングを使えないように制限したいのであれ
ば、/etc/group
ファイルを編集して新しいグループを作ってください。
例えば、xf86dri
のようなグループを作り、2 人のユーザ
(例えば fred
と jane
)をこのグループに加えるとします。
これを行うには以下の行を /etc/group
ファイルに追加します。
xf86dri:x:8000:fred,jane
グループ ID (この例では 8000)が他のグループ ID と重ならないように注意し てください。
そして、以下のような DRI セクションを使います:
Section "DRI" Group "xf86dri" Mode 0660 EndSection
この設定により、ダイレクトレンダリングが使えるのは xf86dri
グループのユーザだけになります(この例では fred
と
jane
)。他のユーザがダイレクトレンダリングを使おうとしても、
アクセラレーションなしの間接レンダリングが動作します。
[注意: XFree86 4.0 には、DRI セクションに手を入れても効果が表れないとい
う既知のバグがあります。このバグが直るまでは、DRI セクションを変更したら
rm -rf /dev/dri
コマンドを実行して /dev/dri
ディレクトリ
を消してください]
次に、使っているハードウェア固有の設定を XF86Config ファイルの Device セクションで行います。 例えば、3dfx Voodoo3 カードで使う Device セクションを示します:
Section "Device" Identifier "Voodoo3" VendorName "3dfx" Driver "tdfx" EndSection
最後に、XF86Config ファイルの Screen セクションでも特別な設定を行う必要 があるかもしれません。例えば、Voodoo3 では 16bpp モードでしか ハードウェアアクセラレーションが使えません。
Section "Screen" Identifier "Screen 1" Device "Voodoo3" Monitor "High Res Monitor" DefaultDepth 16 Subsection "Display" Depth 16 Modes "1280x1024" "1024x768" "800x600" "640x480" ViewPort 0 0 EndSubsection EndSection
XF86Config ファイルにエラーがあれば、X サーバは /var/log/XFree86.0.log ファイルにエラーを記録します。
グラフィックスカードの 3D 機能を使うには、単なる 2D デバイスとして使う場 合よりも多くのメモリが必要です。ダブルバッファリング、デプスバッファリング、 ステンシルバッファ、テクスチャ等は全て追加のグラフィックスメモリを必要と します。 これらの機能を使うには、単なる 2D ディスプレイとして使うのと比べて 4 倍 ものメモリが必要になるかもしれません。
お使いのグラフィックスカードのメモリが少ない場合(例えば 16MB 未満)は、 3D 機能を使うために画面のサイズや色の深さを小さくしたりしなければならな いかもしれません。
3D 機能を使える最大の画面サイズに関する情報はカード付属の文書に書かれて いるはずです。