个人工具

UbuntuHelp:Voodoo3doesnotdo3d

来自Ubuntu中文

跳转至: 导航, 搜索

<<Include(Tag/StyleCleanup)>>

Introduction

The Voodoo3 was a good accelerated 3D video card for it's time, but it and all other Voodoo cards are now considered defunct (http://dri.freedesktop.org/wiki/3dfx). However, it can use openGL in 16 bit color at resolutions of 1024x768 and below. Since Ubuntu uses 24 bit color and the maximum resolution available to your monitor, you will need to change a few things.

Installation

This howto assumes that you already have a working X server configuration. If you don't, or are not sure, FixVideoResolutionHowto will help you set one up.

Summary

  • Install a support library
  • Create an xorg.conf file for using hardware acceleration at 16 bit color
  • Create a helper script that will ease switching between accelerated 3D and the default

Install the support library

`libglide3` is a library that links DRI calls to the capabilities of the Voodoo3

sudo apt-get install libglide3 

Create the new xorg.conf

Move to the location of the file `xorg.conf` and make a backup copy.

cd /etc/X11
sudo cp xorg.conf xorg.conf.noaccel

Make a copy you will change.

sudo cp xorg.conf xorg.conf.accel

Create the hardware accelerated configuration

gksudo gedit xorg.conf.accel
Limit the available resolutions

Search near the bottom of `xorg.conf.accel` for the portion that reads as follows (the `Modes` line in your `xorg.conf.accel` is probably different):

        SubSection "Display"
                Depth           16
                Modes          "1600x1200" "1024x768" "800x600" "640x480"
        EndSubSection

You will see other `SubSection "Display"` definitions, with `Depths` of `1, 4, 8, 15`, and `24`. Be sure you are altering the one with `Depth 16`. Delete any resolutions in the `Modes` line that are higher than `"1024x768"`. For the above example, the changed `SubSection` would read:

        SubSection "Display"
                Depth           16
                Modes          "1024x768" "800x600" "640x480"
        EndSubSection
Select 16 bit color depth

Directly above the `SubSection "Display"` stanzas, there is a `Section "Screen"`. Within that section you will see that the `DefaultDepth` is set to `24`. Change that to `16`.

        DefaultDepth            16

Save your changes, and exit gedit.

Create the helper script

Run gedit as a normal user from your home directory, and cut and paste the following script into gedit:

cd $HOME
gedit voodoo

This script will simplify switching between accelerated 3D and normal usage.

#! /bin/bash

case $1 in
	accel	) cp /etc/X11/xorg.conf.accel   /etc/X11/xorg.conf ;;
	noaccel	) cp /etc/X11/xorg.conf.noaccel /etc/X11/xorg.conf ;;
	*	) echo 
		  echo "Usage"
		  echo 
		  echo "  voodoo accel   - use accelerated 16 bit color"
		  echo "  voodoo noaccel - use normal 24 bit color"
		  echo 
	          XORGDEPTH=`grep DefaultDepth /etc/X11/xorg.conf | cut -f3`
		  XDRI=`grep rendering /var/log/Xorg.0.log | cut --delimiter=" " -f5`
		  XDEPTH=`xdpyinfo | grep "depth of root window" | cut --delimiter=" " -f10`
		  echo "  You are currently running at $XDEPTH bit color, with direct"
		  echo "  rendering $XDRI. When you restart X, it will run"
		  echo "  in $XORGDEPTH bit color."
		  ;;	
esac

Save the file, and exit gedit. Then make `voodoo` executable.

chmod u+x voodoo

`voodoo` must be run as root on this machine, and should be available on your PATH. `/usr/local/bin` is a customary location for scripts in that category.

sudo cp voodoo /usr/local/bin

Enabling your accelerated configuration

Using the Script

To select between the accelerated 3D and normal configurations, simply run `voodoo` and give it your choice. To use the accelerated 3D xorg.conf, type

sudo voodoo accel

and for the normal, 24 bit color, type

sudo voodoo noaccel

Restarting X

X must be restarted to switch between 16 bit and 24 bit color depths. Logging out of your desktop, and and pressing control-alt-backspace at the login screen will ensure that X is restarted.

Testing your accelerated 3D

To see the status of your X server, simply type

voodoo

More info