Anonymous edits have been disabled on the wiki. If you want to contribute please login or create an account.


Warning for game developers: PCGamingWiki staff members will only ever reach out to you using the official press@pcgamingwiki.com mail address.
Be aware of scammers claiming to be representatives or affiliates of PCGamingWiki who promise a PCGW page for a game key.


Developers Notice (April 26): Additional caching + rate limiting have been applied and may affect you if you interface with the MediaWiki API. Our API page details the current requirements to interface with the API, as well as common issues that you may experience.

Engine:FNA

From PCGamingWiki, the wiki about fixing PC games
FNA
Engine - FNA - logo.svg
Developers
Website
First release date
Predecessor

FNA is an open source reimplementation of the Microsoft XNA Framework, specifically the 4.0 Refresh revision. It started as a branch of MonoGame called "MonoGame-SDL2".

The goal of the project is to recreate a fast, portable, and accurate XNA4 runtime library that prevents the need for code/content changes on the part of the XNA game developer. The currently supported platforms include Windows, GNU/Linux, and macOS, with further platform support including those supported by SDL2.

Launch Options

As of FNA 20.01, a handful of command line arguments are supported automatically by games using FNA:

Parameter Description
/enablehighdpi:1 On macOS and Wayland, attempt to use a Retina-capable window
/mojoshaderprofile:... Force a specific shader profile. Available options: glsl120, glspirv
/backbufferscalenearest:1 When scaling the game resolution, use a nearest-neighbor filter. Useful for pixel art games.
/usescancodes:1 Use scancodes for keyboard input, ignoring the user's keyboard layout
/disablelateswaptear:1 Do not use FIFO_RELAXED or EXT_swap_control_tear extension, disables adaptive VSync
/forcemailboxvsync:1 Enables triple buffering vsync with the Vulkan renderer
/glprofile:... Force a specific OpenGL profile. Available options: es3, core, compatibility
/gldevice:... Force a specific renderer. Available options: OpenGL, Vulkan, D3D11

More detailed information about these options can be found on the FNA Developer Wiki.

Joysticks

About XNA Joystick Support

XNA, being a Microsoft technology, centered its controller input around the Xbox 360 Controller. Because of this, the XNA API is not cleanly compatible with custom controllers, including the Xbox 360 Controller when not being read by XInput. However, a config format was developed to allow binding of joystick input values to a virtual 360 controller, which then gets read by XNA games.

Automatic Configuration: SDL_GameController

Since FNA uses SDL2 as its base library, we also get the benefit of SDL_GameController, a new subsystem added by Alfred Reynolds at Valve. This takes configurations for known controllers and automatically configures them for the virtual 360 controller, so if your controller is recognized, manual configuration is not necessary. If you run an FNA title through Steam, your controller will automatically be configured using the Big Picture Mode configuration. Additionally, FNA reads from a gamecontrollerdb.txt file for configurations, when it's found in the game's base directory. You can find a community-sourced database here.

About GUIDs

In addition to expanded configuration support, FNA provides the GetGUIDEXT extension that allows XNA devs to pull in a trimmed/standardized GUID string to determine the controller hardware and react accordingly. TowerFall Ascension uses this for button icon support, for example.

Consider this GUID from the PlayStation 4 controller:

// This is the string reported by SDL2's SDL_JoystickGetGUIDString:
// https://wiki.libsdl.org/SDL_JoystickGetGUIDString
// Note characters 9-12 and 17-20.
030000004c050000c405000011010000
// This is the GUID string returned by FNA. Get it? 
4c05c405

For XInput controllers on Windows, the GUID string is simply 'xinput'.

Sony Light Bar Support

Previously only supported on Linux, FNA 21.01 introduced LED support for all operating systems.

FNA supports the DualShock 4 and DualSense light bar, although it requires game developers to make use of the SetLightBarEXT extension to set the color of the light bar by way of adjusting the brightness of the RGB LEDs.


Game Developer Publisher First release
A Virus Named TOM Misfits Attic 2012-08-01
Akane the Kunoichi Haruneko Entertainment 2014-05-02
Amorous Team Amorous Snaggletooth Studios 2018-04-13
Apotheon Alientrap Games 2015-02-03
Axiom Verge Thomas Happ Games 2015-05-14
Axiom Verge 2 Thomas Happ Games 2021-08-11
Bastion Supergiant Games Warner Bros. Interactive Entertainment, Supergiant Games 2011-08-16
Before the Echo Iridium Studios 2011-10-20
Bleed Bootdisk Revolution 2012-11-28
Bleed 2 Bootdisk Revolution 2017-02-08
Blueberry Garden Erik Svedäng 2009-06-10
Brushwood Buddies Steven Colling 2016-02-17
Capsized Alientrap Games 2011-04-29
Cat Warrior Sadi & Ayu sadimakegames 2024-01-17
Celeste Extremely OK Games 2018-01-25
Charlie Murder Ska Studios 2017-05-12
Chasm Bit Kid 2018-07-31
CometStriker DX Iced Lizard Games 2018-06-08
Cryptark Alientrap Games 2017-06-20
Crystal Project Andrew Willman 2022-03-31
Curse of the Crescent Isle DX Adam Mowery 2015-08-21
Dust: An Elysian Tail Humble Hearts Microsoft Studios 2013-05-24
Escape Goat Magical Time Bean 2012-06-14
Escape Goat 2 Magical Time Bean Double Fine Productions 2014-03-24
Fez Polytron Corporation, BlitWorks Trapdoor 2013-05-01
Fist Puncher Team2Bit Adult Swim Games 2013-06-21
Flinthook Tribute Games 2017-04-18
Flotilla Blendo Games, Ethan Lee 2010-02-27
Fossil Echo Awaceb 2016-07-08
Full Metal Furies Cellar Door Games 2018-01-17
Gateways Smudged Cat Games 2012-06-22
Gnomoria Robotronic Games 2016-02-23
Growing Pains Smudged Cat Games 2014-05-28
Hacknet Team Fractal Alligator Surprise Attack Games 2015-08-12
Hidden in Plain Sight Adam Spragg 2014-07-16
Hive BlueLine Games 2013-11-15
Hyphen FarSpace Studios 2015-02-12
Jon Shafer's At the Gates Conifer Games 2019-01-23
Khet 2.0 BlueLine Games 2014-10-01
Kitsune Tails Kitsune Games Kitsune Games, MidBoss, LLC 2024-08-01
Little Racers Street Milkstone Studios 2012-09-27
Marvel Cosmic Invasion Tribute Games, Seaven Studio, Headbang Club DotEmu, Gamirror Games 2025-12-01
Melody's Escape Icetesy 2016-05-20
Mercenary Kings Tribute Games 2014-03-25
MidBoss Kitsune Games 2017-05-25
Murder Miners JForce Games 2014-07-25
Neverway Coldblood Coldblood, Outersloth 2026-10-01
Overdriven Reloaded TOMAGameStudio 2016-10-07
Owlboy D-Pad Studio IndieBox 2016-11-01
Paladin Pumpkin Games 2017-03-20
Panzer Paladin Tribute Games 2020-07-21
Poöf Arkedo Studio Neko Entertainment, Plug In Digital 2013-11-08
Press X to Not Die All Seeing Eye Games 2017-10-06
Quadrilateral Cowboy Blendo Games 2016-07-25
Reus Abbey Games 2013-05-16
Revolver360 Re:Actor Cross Eaglet AGM PLAYISM 2013-12-29
Rex Rocket Castle Pixel 2014-08-05
River City Ransom: Underground Conatus Creative 2017-02-27
Rogue Legacy Cellar Door Games 2013-06-27
Salt and Sanctuary Ska Studios 2016-05-17
Scott Pilgrim EX Tribute Games 2026-03-03
Shipwreck Brushfire Games 2014-02-25
Skulls of the Shogun 17-BIT 2013-07-29
Slipstream ansdor 2018-05-21
Solaroids: Prologue DynF/X Digital
Soulcaster Magical Time Bean 2012-02-10
Soulcaster II Magical Time Bean 2012-02-10
SpeedRunners DoubleDutch Games, tinyBuild tinyBuild 2016-04-19
Star-Twine Eric Billingsley 2011-04-29
Staxel Plukit Humble Games 2019-04-11
Streets of Rage 4 Lizardcube, Guard Crush Games, DotEmu, BlitWorks DotEmu, Yooreka Studio 2020-04-30
Sumico - The Numbers Game Ludomotion 2015-07-03
Super Bernie World Gamedevs for Bernie Kitsune Games 2020-03-09
Super Rad Raygun TRU FUN Entertainment Rooster Teeth Games 2016-11-08
Teenage Mutant Ninja Turtles: Shredder's Revenge Tribute Games, Seaven Studio DotEmu, GameraGame 2022-06-16
Terraria Re-Logic 2011-05-16
The Adventures of Shuggy Smudged Cat Games 2012-06-13
The Dishwasher: Vampire Smile Ska Studios 2017-05-12
Timespinner Lunar Ray Games Chucklefish Games 2018-09-25
Tooth and Tail Pocketwatch Games 2017-09-12
TowerFall Ascension Extremely OK Games, Maddy Makes Games Inc. Maddy Makes Games Inc. 2014-03-11
Transistor Supergiant Games 2014-05-20
Unexplored Ludomotion 2017-02-22
Unrailed! Indoor Astronaut Daedalic Entertainment, bilibili 2020-09-23
Vay SoMoGa, SIMS SoMoGa 2024-07-07
Wizorb Tribute Games 2011-11-07
Wyv and Keep: The Temple of the Lost Idol A Jolly Corpse 2013-08-14


References