Skip to content

A low-level N64 video emulation plugin, based on the pixel-perfect angrylion RDP plugin with some improvements.

Notifications You must be signed in to change notification settings

CasualPokePlayer/angrylion-rdp-plus

 
 

Repository files navigation

Angrylion RDP Plus

This is a conservative fork of angrylion's RDP plugin that aims to improve performance and add new features while retaining the accuracy of the original plugin.

Current features

  • More maintainable code base by dividing the huge n64video.cpp into smaller pieces.
  • Improved portability by separating the emulator plugin interface and window management from the RDP emulation core.
  • Improved performance on multi-core CPUs by using multi-threaded rendering with scan line interleaving.
  • Replaced deprecated DirectDraw interface with a modern OpenGL 3.3 implementation.
  • Added fullscreen support and manual window sizing.
  • Added BMP screenshot support.
  • Added settings GUI.
  • Added Mupen64Plus support.

Tested with Project64 2.3+. May also work with Project64 1.7 with a RSP plugin of newer builds (1.7.1+).

The Mupen64Plus plugin was tested with Mupen64Plus 2.5 using the mupen64plus-rsp-cxd4 plugin.

Building

Visual Studio

To build the project with Visual Studio (2015+), you currently need to have Python 3 installed, which is used to fetch Git metadata and write it to version.h. You can also build without, but then you have to copy version.h.in to version.h and disable the custom build event in the core project.

The glLoadGen files (gl_core_3_3 and wgl_ext) were generated using the following parameters:

lua LoadGen.lua core_3_3 -style=pointer_c -spec=gl -version=3.3 -profile=core
lua LoadGen.lua ext -style=pointer_c -spec=wgl -ext WGL_EXT_swap_control -ext ARB_create_context -ext ARB_create_context_profile

CMake

Install dependencies:

apt install cmake freeglut3-dev

Building:

mkdir build
cd build
cmake ..
make

To create an OpenGL ES 3 build, add -DGLES=ON to the cmake arguments.

Installing:

sudo make install

Credits

  • Angrylion, Ville Linde, MooglyGuy and others involved for creating an awesome N64 RDP reference software.
  • theboy181 - Testing. Lots of testing.
  • fallaha56 - Donator.
  • loganmc10 - Mupen64Plus plugin implementation.

About

A low-level N64 video emulation plugin, based on the pixel-perfect angrylion RDP plugin with some improvements.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 98.2%
  • Other 1.8%