-------------------------------------------------------------------
                             glN64()

                A Video Plug-in for N64 Emulators
                             by Orkin
-------------------------------------------------------------------

---------------
 Description
---------------

glN64 is a video plug-in for Nintendo 64 emulators that conform to Zilmar's plug-in specifications v1.3. 

---------------
 Requirements
---------------

It should work with any OpenGL 1.4 compatible video card (not extensively tested yet), although a GeForce 256 or Radeon 8500 or higher are recommended because of their advanced blending abilities.

---------------
 Installation
---------------

Just extract glN64 v0.4.dll into your desired emulator's plugin folder, select, and run.

---------------
 Configuration
---------------

Here are explainations of the options in the configuration dialog:

* Full Screen Mode
	Let's you select color depth, resolution, and refresh rate to use with fullscreen mode

* Windowed Resolution

	Tells the plug-in how big to make the rendering window in windowed mode

* Enable 2xSaI
	
	Enables 2xSaI filtering on textures. Increases texture loading times, and uses more memory for textures, so you should probably set texture cache to at least 64 megs. May also cause some alignment problems.

* Force Bilinear

	Forces bilinear filtering on, even when the ROM says to turn it off

* Enable Dithered Alpha Testing

	Enables dithered alpha testing for the Mario 64 dissolve effect. It kills the framerate on some video cards, so if it does on yours, leave it disabled.

* Enable Fog

	Enables fog support. I've found that it doesn't always work well yet...


* Texture Bit Depth
	
	Sets the bit depth to use for textures. 16-bit is fastest, but lowest quality. 16-bit and 32-bit will use whatever bit depth is required to keep the texture's original quality. 32-bit only is recommended for 2xSaI to improve quality.

* Texture cache Size

	Sets the amount of memory to use for texture caching, in megabytes

* Hardware Frame Buffer Textures
	
	Enables the experimental hardware frame buffer texture support. If you have problems with a game, try disabling this.

---------------
 Release Notes
---------------

Version 0.4:

I have rewritten much of this version because I got tired of the dumb overall design of the plugin that started back before I was even sure what a microcode was. I got a Radeon 9500 Pro during the development of this version, and eventually got it so that the quality of a Radeon matches that of a GeForce with glN64. The new hardware frame buffer textures support works very well for the Zelda games, and pretty well for the Banjo games, and various others. It's still experimental though, so if you have problems with a game, you first move should be to try disabling it. 

Have fun with the new release!

Version 0.3.1:

This is a bug fix release. Clements pointed out that several games were crashing, and I didn't remember them crashing before, so after a little debugging I found a bug I accidently put in just before release (stupid me), and another bug that's actually been around awhile. Anyway, this version should be more stable than v0.3.

Version 0.3:

So much has changed in this version that it's hardly even the same plugin anymore. Many parts have been redesigned and rewritten, especially the combiner and texture loading routines. The new combiner actually uses a two-pass recompiling method. The first pass interprets the combine mode to an internal format, and simplifies it as much as possible and then hands it off to the second pass. The second pass is hardware-dependent, and takes care of converting the combine mode to the video hardware's combining method. This allows me to add support for more video cards more easily since I only have to rewrite the second pass to support new hardware (something that will be in the next version). I've also added and fixed support for many other little things the RCP does to improve the visual quality of the N64 games. Check the whatsnew.txt file if you're interested in a more complete list of the changes in this version.

Version 0.2.1:

As the version number indicates, this is only a slight update. I got word of several games crashing, and I hate that...so I worked a little to fix it up, and got it to where it shouldn't crash as much anymore. There are also a few other small fixes that help some things look better. In fact, Paper Mario is suprisingly nice now.

Version 0.2:

The plug-in has come a long way, but still has a long ways to go. I'm now supporting four microcodes, the texture loading is much better, I have added a config dialog, and fixed many other smaller things. More games are becoming fully emulated, with many more playable, but kinda ugly. Much of the reason why the visual quality is suffering in games like Zelda 64 and Banjo-Kazooie is the lack of multi-texturing support, which is what I'm planning on adding next (along with a new, better, combiner)

For a more complete list of what's new, see the "whatsnew.txt"

Version 0.1:

There's alot I wanted to get into this release that isn't there (i.e. config dialog, fixed ROM browser freezing bug...etc.), but I thought I would go ahead and release before I rewrote the texture loading code. Next release should be much improved over this one, as I'm planning to have much better texture loading, and support for more ucodes (not to mention a config dialog and fixed ROM browser freezing bug).

I know the use of NV_register_combiners will make alot of people unhappy, but it was easier for me this way, and I will add a backup combiner for cards that don't support it later on.

Anyway, for a list of changes, see whatsnew.txt.

---------------
 Credits
---------------

I'd like to give a very special "thank you" to the following people that have aided me during the development of this plug-in, weither through direct contact, reading their work, or both:

	Clements
	Rice
	Gonetz
	Malcolm
	Dave2001
	cryhlove
	icepir8
	zilmar
	Azimer
	StrmnNrmn