This page is intended for more advanced/curious users only, if you meet the
system requirements then you already
have everything covered and don't need to worry about this!
Project64 Legacy is compiled with Microsoft Visual Studio .NET with 6th gen, CPU ("Pentium
Pro") optimisations and compressed.
Project64 uses the following extended CPU instruction sets if they are detected
on your system:
....mostly in the video plugin and RSP. The emulator is tested to run without
any of these intructions, but a minimum of MMX is recommended (any CPU without
MMX is likely to be too old/slow to run Project64 well anyway).
The emulator makes heavy use of the FPU and requires a strong FPU to perform
satisfactorily (so for example the AMD K6 series is not a good choice, but the
K7 is an excellent choice). MMX etc. does not in any way make up for a weak
FPU.
Jabo's Direct3D plugins use the following TextureOpCaps (your hardware and
drivers must support all these features for good quality emulation, exactly
which are used varies from game to game).
- DISABLE
- SELECTARG1
- SELECTARG2
- MODULATE
- MODULATE2X
- MODULATE4X
- ADD
- ADDSIGNED
- ADDSIGNED2X
- SUBTRACT
- ADDSMOOTH
- BLENDDIFFUSEALPHA
- BLENDTEXTUREALPHA
- BLENDFACTORALPHA
- BLENDTEXTUREALPHAPM
- BLENDCURRENTALPHA
- MODULATEALPHA_ADDCOLOR
- MODULATECOLOR_ADDALPHA
- MODULATEINVALPHA_ADDCOLOR
- MODULATEINVCOLOR_ADDALPHA
You can see which your hardware supports by downloading and running the Microsoft
DirectX Caps Viewer. I list these because at the time of release these features
are not present in a large number of installed systems.
Most of the other requirements of the graphics plugin are already fairly standard,
such as at ability to do at least two textures per pass (multipass was removed
in v1.2 because it's not possible to render fog properly with it). Texture memory
usage is very efficient and shouldn't be a concern, but at least 16MB graphics
RAM is suggested. The Internal geometry pipeline makes extensive use of SSE,
and some (less effective) use of 3Dnow! It is important to have hardware clipping
support if you use the internal pipeline (as by default) because it's not part
of the software engine. Note that lighting is always done internally regardless
of pipeline.
The performance of primary framebuffer emulation very much depends on how
fast your hardware is at certain memory copy operations, and these are something
not normally used by computer games - we have found Matrox to be unusually fast
at this (despite the poor 3d feature set) and nVidia relatively slow, at the
time of writing... you need a very fast system for such framebuffer use to be
viable.
The OpenGL plugin (not included in v1.4+) requires an nVidia (TNT or higher)
card because it uses proprietary extensions (not part of OGL 1.2/1.3 spec).
The plugin is mostly an experiment and demonstration, there are very few times
when the end user will find it better than the Direct3D. This is not because
one API is inherently superior to the other, but rather the path the developer
chose.
Secondary video devices (e.g. 3dfx Voodoo1/2) are not supported at all.
The default input plugin uses DirectInput and is thus (in theory!) not fussy
about choice of input device, however, it doesn't support all possible DX controls
- N-Rage Legacy plugin supports more controls.
|