Cross-platform, sophisticated frontend for the libretro API. Licensed GPLv3.

Related tags

Game c retroarch libretro
Overview

Build Status Coverity Scan Build Status Crowdin

RetroArch

RetroArch is the reference frontend for the libretro API. Popular examples of implementations for this API includes video game system emulators and game engines as well as more generalized 3D programs. These programs are instantiated as dynamic libraries. We refer to these as "libretro cores".

XMB menu driver

rgui menu driver

glui menu driver

ozone menu driver

libretro

libretro is an API that exposes generic audio/video/input callbacks. A frontend for libretro (such as RetroArch) handles video output, audio output, input and application lifecycle. A libretro core written in portable C or C++ can run seamlessly on many platforms with very little to no porting effort.

While RetroArch is the reference frontend for libretro, several other projects have used the libretro interface to include support for emulators and/or game engines. libretro is completely open and free for anyone to use.

libretro API header

Binaries

Latest binaries are currently hosted on the buildbot.

Support

To reach developers, either make an issue here on GitHub, make a thread on the forum, chat on discord, or visit our IRC channel: #retroarch @ irc.freenode.org. You could create a post in Reddit with Technical Support flair.

Documentation

See our Documentation Center. On Unix, man-pages are provided. More developer-centric stuff is found here.

Related projects

Philosophy

RetroArch attempts to be small and lean while still having all the useful core features expected from an emulator. It is designed to be very portable and features a gamepad-centric and touchscreen UI. It also has a full-featured command-line interface.

In some areas, RetroArch goes beyond and emphasizes on not-so-common technical features such as multi-pass shader support, real-time rewind (Braid-style), video recording (using FFmpeg), run-ahead input latency removal, etc.

RetroArch also emphasizes being easy to integrate into various launcher frontends.

Platforms

RetroArch has been ported to the following platforms:

  • DOS
  • Windows
  • Linux
  • Emscripten (WebAssembly and JavaScript)
  • FreeBSD
  • NetBSD
  • OpenBSD
  • Haiku
  • Solaris
  • macOS (PPC, x86-32 and x86-64)
  • PlayStation 2
  • PlayStation 3
  • PlayStation Portable
  • PlayStation Vita
  • Original Microsoft Xbox
  • Microsoft Xbox 360 (Libxenon/XeXDK)
  • Nintendo GameCube
  • Nintendo Wii
  • Nintendo Wii U
  • Nintendo 3DS/2DS
  • Nintendo Switch
  • Nintendo NES/SNES Classic Edition
  • Raspberry Pi
  • Android
  • iOS
  • Blackberry

Dependencies (PC)

There are no true hard dependencies per se.

On Windows, RetroArch can run with only Win32 as dependency.

On Linux, there are no true dependencies. For optimal usage, the following dependencies come as recommended:

  • GL headers / Vulkan headers
  • X11 headers and libs, or EGL/KMS/GBM

OSX port of RetroArch requires latest versions of XCode to build.

RetroArch can utilize these libraries if enabled:

  • nvidia-cg-toolkit
  • libfreetype2 (TTF font rendering on screen)

RetroArch needs at least one of these audio driver libraries:

  • ALSA
  • OSS
  • RoarAudio
  • RSound
  • OpenAL
  • JACK
  • SDL
  • PulseAudio
  • XAudio2 (Win32, Xbox 360)
  • DirectSound (Win32, Xbox 1)
  • CoreAudio (OSX, iOS)

To run properly, RetroArch requires a libretro implementation present; however, as it's typically loaded dynamically, it's not required at build time.

Dependencies (Console ports, mobile)

Console ports have their own dependencies, but generally do not require anything other than what the respective SDKs provide.

Configuring

The default configuration is defined in config.def.h. It is not recommended to change this unless you know what you're doing. These can later be tweaked by using a config file. A sample configuration file is installed to /etc/retroarch.cfg. This is the system-wide config file.

RetroArch will on startup create a config file in $XDG\_CONFIG\_HOME/retroarch/retroarch.cfg if it does not exist. Users only need to configure a certain option if the desired value deviates from the value defined in config.def.h.

To configure joypads, use the built-in menu or the retroarch-joyconfig command-line tool.

Compiling and installing

Instructions for compiling and installing RetroArch can be found in the Libretro/RetroArch Documentation Center.

CRT 15Khz Resolution Switching

CRT SwitchRes will turn on, on the fly. However, you will need to restart RetroArch to disable it. With CRT SwitchRes enable RetroArch will start in 2560 x 480 @ 60.

If you are running Windows, before enabling the CRT SwitchRes options please make sure you have installed CRTEmudriver and installed some modelines. The minimum modelines for all games to switch correctly are:

  • 2560 x 192 @ 60.000000
  • 2560 x 200 @ 60.000000
  • 2560 x 240 @ 60.000000
  • 2560 x 224 @ 60.000000
  • 2560 x 237 @ 60.000000
  • 2560 x 256 @ 50.000000
  • 2560 x 254 @ 55.000000
  • 2560 x 448 @ 60.000000
  • 2560 x 480 @ 60.000000

Install these modelines replacing 2560 with your desired super resolution. The above resolutions are NTSC only so if you would be playing any PAL content please add PAL modelines:

  • 2560 x 192 @ 50.000000
  • 2560 x 200 @ 50.000000
  • 2560 x 240 @ 50.000000
  • 2560 x 224 @ 50.000000
  • 2560 x 288 @ 50.000000
  • 2560 x 237 @ 50.000000
  • 2560 x 254 @ 55.000000
  • 2560 x 448 @ 50.000000
  • 2560 x 480 @ 50.000000

Some games will require higher PAL resolutions which should also be installed:

  • 2560 x 512 @ 50.000000
  • 2560 x 576 @ 50.000000

Ideally install all these modelines and everything will work great.

Super Resolutions

The default super resolution is 2560. It is displayed just under the CRT switch option, which can be found in video settings. This can be changed within the retroarch.cfg. The only compatible resolutions are 1920, 2560 and 3840. Any other resolutions will be ignored and native switching will be activated.

Native Resolutions

If native resolutions are activated you will need a whole new set of modelines:

  • 256 x 240 @ 50.006977 SNESpal

  • 256 x 448 @ 50.006977 SNESpal

  • 512 x 224 @ 50.006977 SNESpal

  • 512 x 240 @ 50.006977 SNESpal

  • 512 x 448 @ 50.006977 SNESpal

  • 256 x 240 @ 60.098812 SNESntsc

  • 256 x 448 @ 60.098812 SNESntsc

  • 512 x 240 @ 60.098812 SNESntsc

  • 512 x 224 @ 60.098812 SNESntsc

  • 512 x 448 @ 60.098812 SNESntsc

  • 256 x 192 @ 59.922745 MDntsc

  • 256 x 224 @ 59.922745 MDntsc

  • 320 x 224 @ 59.922745 MDntsc

  • 320 x 240 @ 59.922745 MDntsc

  • 320 x 448 @ 59.922745 MDntsc

  • 320 x 480 @ 59.922745 MDntsc

  • 256 x 192 @ 49.701458 MDpal

  • 256 x 224 @ 49.701458 MDpal

  • 320 x 224 @ 49.701458 MDpal

  • 320 x 240 @ 49.701458 MDpal

  • 320 x 288 @ 49.701458 MDpal

  • 320 x 448 @ 49.701458 MDpal

  • 320 x 480 @ 49.701458 MDpal

  • 320 x 576 @ 49.701458 MDpal

  • 256 x 288 @ 49.701458 MSYSpal

  • 256 x 240 @ 60.098812 NESntsc

  • 256 x 240 @ 50.006977 NESpal

  • 640 x 237 @ 60.130001 N64ntsc

  • 640 x 240 @ 60.130001 N64ntsc

  • 640 x 480 @ 60.130001 N64ntsc

  • 640 x 288 @ 50.000000 N64pal

  • 640 x 480 @ 50.000000 N64pal

  • 640 x 576 @ 50.000000 N64pal

  • 256 x 252 @ 49.759998 PSXpal

  • 320 x 252 @ 49.759998 PSXpal

  • 384 x 252 @ 49.759998 PSXpal

  • 640 x 252 @ 49.759998 PSXpal

  • 640 x 540 @ 49.759998 PSXpal

  • 384 x 240 @ 59.941002 PSXntsc

  • 256 x 480 @ 59.941002 PSXntsc

  • 352 x 240 @ 59.820000 Saturn/SGFX_NTSCp

  • 704 x 240 @ 59.820000 SaturnNTSCp

  • 352 x 480 @ 59.820000 SaturnNTSCi

  • 704 x 480 @ 59.820000 SaturnNTSCi

  • 352 x 288 @ 49.701458 SaturnPALp

  • 704 x 288 @ 49.701458 SaturnPALp

  • 352 x 576 @ 49.701458 SaturnPALi

  • 704 x 576 @ 49.701458 SaturnPALi

  • 240 x 160 @ 59.730000 GBA

  • 320 x 200 @ 60.000000 Doom

// Arcade

  • 400 x 254 @ 54.706841 MK
  • 384 x 224 @ 59.637405 CPS1

These modelines are more accurate giving exact hz. However, some games may have unwanted results. This is due to mid-scanline resolution changes on the original hardware. For the best results super resolutions are the way to go.

CRT resolution switching & MAME

Some arcade resolutions can be very different from consumer CRTs. There is resolution detection to ensure MAME games will be displayed in the closest available resolution but drawn at their native resolution within this resolution. Meaning that the MAME game will look just like the original hardware.

MAME ROMs that run in a vertical aspect like DoDonPachi need to be rotated within MAME before resolution switching and aspect correction will work. Do this before enabling CRT SwitchRes so that RetroArch will run in your desktop resolution. Once you have rotated any games that may need it turn CRT SwitchRes on.

Socials

The links below belong to our official channels. Links other than this may have been created by fans, independent members or followers. We seriously recommend using our original resources.

Comments
  • [iOS] retroarch 1.1 -nightly- problems

    [iOS] retroarch 1.1 -nightly- problems

    cant change any settings in core funtions for mupen64 cant change anything in user settings modules folder (no cores) is empty in retroarch app (but download them separately nighly cores) gl shader folder is empty to after open retroarch my phone overheat.

    opened by brujo5 228
  • Niche issue when streaming RA using some shader presets

    Niche issue when streaming RA using some shader presets

    First and foremost consider this:

    • Only RetroArch bugs should be filed here. Not core bugs or game bugs
    • This is not a forum or a help section, this is strictly developer oriented

    This is probably exceptionally low priority and something i'll have to live with. Still - I wanted to make sure it was put out there. As of a few versions back, I am no longer able to stream RA properly, at least in the means I have for a long time now. Unfortunately I'm a serial updater, and ive had a good week off of playing, so i cant say exactly what or when caused the regression.

    The short of it is this.

    I have content directory shader presets set up. In this case, for beetle psx hw. I load a game from said playlist, config override kicks in and positions window properly/places within overlay, and shader preset kicks in which ties into the configured sizing present in the config.

    this has stopped working if I am streaming and if im using my go-to shader that I have set up (ctr guest dr venom.) I stream via steam BPM via steam link app and if I load retroarch and load any playlist which uses that shader, I get a black screen with audio. This also happens with several other higher end crt shaders.

    If i come back to my pc, the image is on the screen, but is without color. If i remove the shader preset, all is fine. If i load a basic shader such as Geom's as a preset, that works fine as well.

    One other oddity. If i load a game via command line/shortcut direct from steam, it works fine. ONLY if i load it via retroarch itself does it fail.

    Im not sure if something a few versions back changed the priority or order these things were drawn or loaded - but definitely puts a damper on my vastly preferred means of playing.

    at current my options are command line shortcuts/launching of any game i want to play that uses that shader. The removal of those shader presets entirely from ~30 playlists and go with something basic like geoms, and resize all my config files to accomodate. Or, play exclusively from my pc.

    This could very well stem elsewhere, however I did try several different gpu drivers just in case. Also tried removing curve to eliminate that as being a potential variable as i know royale fails when curve is added to the picture.

    The strange part is, if i remove the preset, and load it manually after the game is loaded - it works just fine as well. its purely giving me hell when loaded automatically via content directory preset.

    Expected behavior

    The game to display alongside overlay AND shader, instead of overlay + black screen + audio.

    Actual behavior

    See above.

    Steps to reproduce the bug

    1. Launch retroarch via (presumably) a steam link - or in my case the steam link app.
    2. Load a game from a playlist that uses crt-guest-dr-venom
    3. note everything loads, (can see overlay, audio is playing) the gameplay area is black.

    Bisect Results

    I cant say exactly, as ive been not playing (but updating) for the past week or so. But its very recent.

    Version/Commit

    You can find this information under Information/System Information

    • RetroArch: 1.78 9a36851beb

    Environment information

    Windows 10

    opened by klepp0906 121
  • [Feature request] GXM driver for hardware acceleration on PS Vita

    [Feature request] GXM driver for hardware acceleration on PS Vita

    As of today, RetroArch / Libretro on the PS Vita is using software rendering. This is preventing cores from using the full potential of the device in terms of, of course, 3D emulation, but hardware acceleration could also do wonders for 2D display.

    Examples of GXM code found here : https://github.com/xerpi/gxmfun A little bit more context here : https://www.reddit.com/r/vitahacks/comments/5pbdgo/having_fun_with_libgxm_psvitas_3d_graphics_api/

    opened by kwyxz 105
  • iOS port issues - remaining

    iOS port issues - remaining

    This will be used to track all remaining issues until we feel confident to do a release. Please add to this issue as we go along.

    • (tested with PCSX ReARMed and verified there is an issue) - There seem to be pretty big savestate conflict problems right now. If I have a savestate saved on slot 1 for Soul Blade and if I then try to load state 1 in Resident Evil 2, it will actually load Soul Blade (!!!).

    I have also noticed saved states overwriting themselves this way.

    Meancoot - try to use the RGUI savestate functions in combination with the Cocoa savestate slots and tell me if you see any problems of the sort occurring.

    NOTE: I am using real BIOS files. Put the required BIOS files into Documents/.RetroArch

    opened by inactive123 85
  • [Vita] Netplay is not working correctly

    [Vita] Netplay is not working correctly

    Description

    1. We cannot unload cores on platforms with no dynamic core support (forced content reload for netplay).
    2. VitaSDK's epoll appears to be malfunctioning (used by socket_select, socket_poll and socket_wait).
    3. RetroArch is re-launched each time a new core is loaded; -H and -C parameters must be passed to the command-line when spawning the new process.
    4. Vita's kernel doesn't seem to like RetroArch's default netplay port, 55435.

    Expected behavior

    Netplay should always work for the Vita.

    Actual behavior

    Netplay either doesn't work or work only under certain conditions.

    Steps to reproduce the bug

    1. Start netplay as either host or client.

    Bisect Results

    Vita's netplay probably never worked as shown by unofficial forks fixing the problem.

    Environment information

    • OS: Vita
    • Compiler: GCC/VitaSDK
    platform: vita networking 
    opened by ghost 82
  • Video width and height are switched when a vertically-oriented game is loaded

    Video width and height are switched when a vertically-oriented game is loaded

    Description

    With vertically oriented games, Retroarch switches the emulator-provided width and height. For example, if the width/height is supposed to be 320x240, RA will switch this to 240x320. This only occurs with vertically oriented games. I tested this in both MAME and FBA using the Windows 64 bit version of RA.

    Expected behavior

    The game to be displayed using the correct resolution (width/height).

    Actual behavior

    The height and width is switched when a vertically oriented game is loaded.

    Steps to reproduce the bug

    1. load any vertically oriented game in either FBA or MAME using Windows 64 bit version of RA (example: DonPachi)
    2. under video settings, enable integer scale.
    3. set "custom aspect ratio width/height" to 1x.
    4. look at "custom aspect ratio width/height" to see that it says 240 for width and 320 for height. This is the reverse of what it should be; it should be 240 for height and 320 for width.

    Bisect Results

    I first noticed this a few days ago.

    Version/Commit

    You can find this information under Information/System Information

    • RetroArch: 1.7.6 Git version: 9750719074

    Environment information

    • OS: Windows 10
    • Compiler: NA

    image

    image

    opened by Patrickdroid 82
  • Vulkan video driver in fullscreen on GeForce Driver 387.92 causing black screen

    Vulkan video driver in fullscreen on GeForce Driver 387.92 causing black screen

    Description

    With the new nVidia GeForce 387.92 video driver, the RetroArch Vulkan video driver only displays a black screen when starting any emulator. This only occurs in fullscreen mode. If you run in Windowed mode or alt-tab out of RetroArch and back in, then you'll get an image again (unless you change a resolution setting in the emulator causing the video driver to initialize).

    nVidia's driver release notes say the following relating to the issue:

    Implemented improved behavior for full-screen Vulkan swapchains using VK_KHR_win32_surface.

    This optimization will cause more events that trigger an out-of-date swapchain, such as when entering or leaving full-screen mode (typically by pressing Alt+tab). Applications that do not properly respond to the VK_ERROR_OUT_OF_DATE_KHR return code may not function properly when these events occur. See the WSI Swapchain section of the Vulkan specification.

    Other users reporting the issue here: https://forums.libretro.com/t/vulkan-full-screen-broken-with-new-nvidia-drivers-387-92-win10/12691

    Expected behavior

    Video to be displayed normally.

    Actual behavior

    Screen goes black when starting any emulator

    Steps to reproduce the bug

    1. Install nVidia Geforce Driver 387.92
    2. Start any emulator in-game
    3. Experience the black screen
    4. Exit Fullscreen or simply alt-tab out and back in to get the image back

    Bisect Results

    Only occurs with 387.92 and up nVidia driver. Rolling back to 385.69 works fine.

    Version/Commit

    • RetroArch: 1.6.3 - 1.6.7

    Environment information

    • OS: Windows 10 64-bit 1703 (Creators Update)
    • HW: GeForce GTX 1070
    bounty 
    opened by WhiteZeroX 80
  • IOS9/Pangu: Instant Crash

    IOS9/Pangu: Instant Crash

    I'm running the Pangu jailbreak on IOS 9.0.2 and it seems no matter which version of Retroarch I get (or where I get it from), the problem is the same: The app installs fine, but when I tap it it loads for a split second and then returns me to my icons. I tap the home button and it's running in the background, switch to it, and I'm returned (once again) to my icons. I'm assuming it's a problem due to the new IOS + Jailbreak but I'm not entirely sure.

    This happened on 1.0.0.1 from the ZoDTTD repo, 1.0.0.2 from the buildbot page and both versions from the Kromite repo (http://kromite.github.io).

    I've heard a lot of ranting about date / time, but this had no effect on the outcome.

    bug: major 
    opened by ghost 80
  • Fetch translation from Crowdin

    Fetch translation from Crowdin

    Guidelines

    1. Rebase before opening a pull request
    2. If you are sending several unrelated fixes or features, use a branch and a separate pull request for each
    3. If possible try squashing everything in a single commit. This is particularly beneficial in the case of feature merges since it allows easy bisecting when a problem arises

    Description

    Fetch translation from Crowdin. Update python script to support UTF-8 better and fix some key mismatch.

    Related Issues

    Related Pull Requests

    Reviewers

    opened by guoyunhe 79
  • [Wii U] DSI Error on launching Roms with Retroarch 1.67

    [Wii U] DSI Error on launching Roms with Retroarch 1.67

    img_0368

    DSI error ocurring randomly when launching ROMs under 1.67.

    FBA mainline core seems to trigger it most often. Usually the first ROM will load ok, while subsequent ROMs may trigger the error.

    Setup: Wii U 5.5.1, CBHC, launching Retroarch from channel. Same setup working fine previously, tried fresh .cfg as well with same results.

    platform: wiiu 
    opened by retrob0t 78
  • Implementing WASAPI Audio driver in Windows

    Implementing WASAPI Audio driver in Windows

    Further to this thread on the libretro boards: http://libretro.com/forums/showthread.php?t=5206

    I'm inquiring about the possible implementation of a WASAPI audio driver for Windows builds of Retroarch. This kind of solution is very popular in both audio playback and production and it would provide the following benefits:

    • higher quality "bitperfect" audio, with the target application taking exclusive control of the audio, bypassing the Windows mixer stack and muting anything else;
    • extremely low-latency response.

    Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

    followup: enhancement 
    opened by Ryunam 77
  • fix Everything is lost when the app is killed in background for android

    fix Everything is lost when the app is killed in background for android

    Guidelines

    1. Rebase before opening a pull request
    2. If you are sending several unrelated fixes or features, use a branch and a separate pull request for each
    3. If possible try squashing everything in a single commit. This is particularly beneficial in the case of feature merges since it allows easy bisecting when a problem arises

    Description

    When RetroArch Android is closed by swiping up in Android task switcher, or automatically by the background task killer all progress in RetroArch is lost

    Expected behavior There should be an option (or always on) that flush in memory states to disk on activity onStop()

    Flush SRAM to disk If auto save state is on, make a save state Flush auto save state to disk Looking at uwp/uwp_main.cpp App::OnSuspending it seems like similar behavior was implemented for UWP, but not Android

    Related Issues

    Actual behavior Everything is lost when the app is killed in background

    Steps to reproduce the bug Play a game in Retroarch Switch to 5 other apps Android should've killed Retroarch at this point Go back to Retroarch. It appears as fresh instance without the game running and all progress are lost

    Related Pull Requests

    [Any other PRs from related repositories that might be needed for this pull request to work]

    Reviewers

    [If possible @mention all the people that should review your pull request]

    opened by gitgudyyao 1
  • No issue tracker for libretro / Stella; the pre7.0 core does not allow in-game input in aftermarket game Elevator Agent

    No issue tracker for libretro / Stella; the pre7.0 core does not allow in-game input in aftermarket game Elevator Agent

    You can start the game, but as soon as the game begins you can't move or fire. The game works correctly in the 6.7 derived core from the stable 1.10.3 core pack. Of note, when the game starts up in the pre7.0 core, it shows "gamepad" as the input type, but in 6.7 it shows "joystick", so it is like the game's being fed the wrong input somehow. Talked to Stella devs as I accidentally made a core report there due to the link leading to their project, and they say it's fine in 7.0 standalone.

    opened by n1ghttrap 14
  • Add 'Achievements Visibility' submenu options

    Add 'Achievements Visibility' submenu options

    • Add 'Startup Summary' option, split off from 'Verbose Mode' option
      • Options: "All Games in Database" / "Games with Achievements" / "OFF"
      • Now has option to filter out this popup for hash matches with no published/core cheevos
      • Default is "Games with Achievements" as I think it's extremely useful for everyone to see
    • Add 'New Unlocks/Mastery' option to hide those popups/messages if player wishes
    • Some existing options moved into this submenu ('Challenge Indicators', 'Verbose Mode')
    • Leaderboard-related option split and move coming in future PR, too many changes to add here

    image

    Reviewers

    @Jamiras please 👍

    opened by retroNUC 0
  • Menu Screensaver animation not working on rpi2 & rpi3

    Menu Screensaver animation not working on rpi2 & rpi3

    Description

    The menu screensaver that should start after the menu screensaver timeout is not working on rpi2 and rpi3. Especially, OFF mode is working (black screen) but the snow, star field and vortex animations does not works at all, it fallback to OFF mode instead.

    Expected behavior

    Animations works

    Actual behavior

    Black screen

    Steps to reproduce the bug

    1. Enable menu screensaver snow effect
    2. Set menu screensaver timeout to 10seconds
    3. Wait 10seconds
    4. Screen goes black until an input is pushed

    Version/Commit

    You can find this information under Information/System Information

    • RetroArch: 1.11.1 / f8a9b0a197

    Environment information

    • OS: Lakka / LibreElec
    • Compiler: GCC 8.3.0 32bits
    opened by pasnox 0
  • RetroArch does not properly start in a maximized window

    RetroArch does not properly start in a maximized window

    Description

    RetroArch does not properly start in a maximized window (it starts windowed and off-center for some reason)

    Expected behavior

    After exiting RetroArch, I expect it the window to be in the same location (maximized) when I boot it up again.

    Actual behavior

    RetroArch starts windowed but at a lower X and Y coordinate than it should, making the large window overlap two monitors instead of filling one screen as it should.

    Steps to reproduce the bug

    1. Open RetroArch
    2. Play any game
    3. Maximize the windowed screen
    4. Save config, etc. or do anything
    5. Exit RetroArch
    6. Reboot RetroArch and find that game window is out of proper/previous placement

    Bisect Results

    [Try to bisect and tell us when this started happening]

    Version/Commit

    Oct 18. 2022 b846a5d 1.12.0

    Environment information

    • OS: Win10
    opened by Xeinok-Pals 0
  • Lost menu visibility to “Update Core Info Files” in the online updater menu in iOS/GLUI

    Lost menu visibility to “Update Core Info Files” in the online updater menu in iOS/GLUI

    Between the 12/22 nightly IPA and 12/23 nightly IPA, there is no longer access to update core info files in the online updated menu using GLUI on iOS.

    12/22 nightly: 25AA6CEC-3EEA-45B0-9E2C-A265A02243DE

    12/23 nightly: 227E50C4-02F7-4664-98C8-4B0078A0B798

    opened by trotsky40 2
Releases(v1.14.0)
MIT Licensed Open Source version of Torque 2D game engine from GarageGames

We've moved! All torque engines have moved to a new organization, Torque Game Engines. Torque2D can be found at https://github.com/TorqueGameEngines/T

GarageGames 1.7k Dec 14, 2022
MIT Licensed Open Source version of Torque 3D from GarageGames

Torque 3D MIT Licensed Open Source version of Torque 3D from GarageGames More Information Homepage Torque 3D wiki Community forum GarageGames forum Ga

GarageGames 3.3k Dec 16, 2022
The Atomic Game Engine is a multi-platform 2D and 3D engine with a consistent API in C++, C#, JavaScript, and TypeScript

The Atomic Game Engine is a multi-platform 2D and 3D engine with a consistent API in C++, C#, JavaScript, and TypeScript

null 2.8k Dec 29, 2022
Open-source, cross-platform, C++ game engine for creating 2D/3D games.

GamePlay v3.0.0 GamePlay is an open-source, cross-platform, C++ game framework/engine for creating 2D/3D mobile and desktop games. Website Wiki API De

gameplay3d 3.9k Jan 8, 2023
KlayGE is a cross-platform open source game engine with plugin-based architecture.

KlayGE KlayGE is a cross-platform open source game engine with plugin-based architecture. It's started since 2003. The explicit goal of KlayGE is: to

Minmin Gong 1.8k Dec 23, 2022
A cross-platform 2D game engine

nCine nCine is a cross-platform 2D game engine. It is released under the MIT License, Copyright (c) 2011-2021 Angelo Theodorou. For additional informa

nCine 780 Dec 31, 2022
Powerful, mature open-source cross-platform game engine for Python and C++, developed by Disney and CMU

Panda3D Panda3D is a game engine, a framework for 3D rendering and game development for Python and C++ programs. Panda3D is open-source and free for a

Panda3D 3.6k Dec 31, 2022
Polycode is a cross-platform framework for creative code.

Polycode is a cross-platform framework for creative code. You can use it as a C++ API or as a standalone scripting language to get easy and simple acc

Ivan Safrin 2.4k Jan 2, 2023
A powerful free cross-platform RTS game engine

Spring RTS game engine README Spring (formerly TASpring) is an Open Source Real Time Strategy game engine. Visit our project homepage for help, sugges

Spring RTS 2.9k Dec 28, 2022
MAZE (My AmaZing Engine) - 🎮 Personal open-source cross-platform game engine

MAZE (My AmaZing Engine) is the self-written open-source cross-platform game engine in the active development stage. At the moment it is my main pet project, developed for the purpose of learning and preserving different game dev technologies.

Dmitriy Nosov 13 Dec 14, 2022
Cross-platform version of Heboris C7EX using a hardware-accelerated SDL 2.0 renderer

Heboris C7EX - unofficial version (YGS2K EX) This version contains the source code for Heboris C7EX. It requires a C compiler, SDL 2.0, SDL 2.0 mixer,

Brandon McGriff 15 Nov 28, 2022
TrenchBroom is a modern cross-platform level editor for Quake-engine based games.

TrenchBroom is a modern cross-platform level editor for Quake-engine based games.

TrenchBroom 1.3k Jan 8, 2023
CSEngine is a cross-platform 3D game engine.

CSEngine - Cross Platform C++ Game Engine CSEngine is a cross-platform 3D game engine. ?? As it is under development, it is not yet suitable for pract

ounols 58 Dec 18, 2022
Intrinsic is a Vulkan based cross-platform game and rendering engine

Intrinsic is a Vulkan based cross-platform game and rendering engine

Benjamin Wrensch 1k Dec 29, 2022
A cross-platform, top-down 2D space shooter written in C using only system libraries.

A cross-platform, top-down 2D space shooter written in C using only system libraries.

Tarek Sherif 1.3k Jan 2, 2023
Free, cross-platform 2D game engine powered by Haxe and OpenFL

flixel | addons | ui | demos | tools | templates | docs | haxeflixel.com Links Here are the most important links to get you started with HaxeFlixel: G

HaxeFlixel 1.7k Dec 30, 2022
One framework for creating powerful cross-platform games.

MonoGame One framework for creating powerful cross-platform games. The spiritual successor to XNA with thousands of titles shipped across desktop, mob

MonoGame 9.1k Dec 26, 2022
VERY simple cross-platform C++ analytics for games (using Google Analytics)

Tiniest Analytics is a very simple to use, cross-platform (tested on win/osx/linux/ios/android) and basically very tiny analytics system written in C++ (less than 100 lines of code), made specifically for games. It uses libcurl to post events to your Google Analytics account.

Mihai Gosa 96 Oct 11, 2022
Cross-platform library for gamepad input.

libgamepad Abstracts gamepad access through an easy to use, cross-platform API. What platforms does it support? Platform Toolchain Supported Windows M

Michael Williams 19 Dec 18, 2022