Skip to content

righthere/UnrealLibretro

 
 

Repository files navigation

UnrealLibretro

Discord

UnrealLibretro is a Libretro Frontend for Unreal Engine. It is a Blueprint compatible library that lets you run emulators within Unreal Engine. More Technically it allows you to run Libretro Cores.

Compatibility

Windows only for now. More information about platform and Libretro Core compatibility can be found here.

Installing in your Project

Simple method

Download the latest release Extract the archive and place it in your project's plugins folder.

Using git

Clone the repo into your Unreal Engine project's Plugin folder.

Open a MinGW64 terminal and navigate to the root directory of this plugin then run this command

./setup.sh

Then in the Windows file explorer navigate to the root directory of your project and right click the .uproject file then select "Generate Visual Studio project files" in the context menu.

Integrating into your Project

Download a Libretro Core

You can download a Libretro Core from here and place it into the MyCores folder.

Download a ROM

You know and I know you know where to get these. Once you have the one you want place it into your MyROMs folder.

(Sometimes required) Download content folder

Some cores require that you also provide a content folder. PPSSPP is one example. Mainly this just involves taking a folder from a release of the emulator and moving it into the UnrealLibretro/System directory. There might be weirder ones. You can probably just find them by googling or searching the Libretro docs.

In the Unreal Editor

Restart your project if you performed the setup while the Unreal Editor was running. Navigate to UnrealLibretro's content folder in the Unreal Editor content browser, and open the example map LibretroWorld. Exploring the objects in this folder should give you an idea of how to use the API.

Contributing

Try to follow the Unreal Engine coding standards at least in the Unreal based source files. Mainly what needs to be worked on is Libretro core compatibility and probably fleshing out ULibretroCoreInstance to incorporate more of the API libretro.h exposes. I'm mainly just developing this for a project I'm working on myself, so there also might be some oversights in the API that should be rectified. More information about contributing can be found here.

Contact

You should post an issue if you have a problem or discover a bug. If you have general questions about the project or want to make a big contribution and you need to talk through the project structure with me you can email me at [email protected]

License

This project is licensed under the MIT License - see the LICENSE file for details

About

A Libretro Frontend for Unreal Engine

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 62.7%
  • C++ 36.4%
  • Other 0.9%