Changes

Jump to navigation Jump to search

RetroArch

No change in size, 12:11, 13 September 2018
grammar
*Custom overlay support.
*FFmpeg recording and playback support. It can record either the native resolution output of the core or the post-processed output of the frontend. Playback is handled through an internal FFmpeg libretro core.
*[[GGPO]]-like netplay (latency hiding rollback). It should be lag-free if everyone involved emulates at full speed, doesn't live on opposite sides of the world and has decent internet speeds. It uses peer-to-peer UDP and supports two players. Due to rollback , it requires a fair amount of CPU power to run, and the core must support serialization.
*Options for decreasing input latency related to vsync by eliminating buffering by the video driver, as well as using frame delay to delay polling of inputs until right before a vsync occurs on the display.
You must specify whether you will be hosting (server) or joining (client) the game. If joining, you must also enter the host's IP address in the field below. Make sure your firewall is open on port 55435 (default; you can change it if you like) and that the port is forwarded in your router, if applicable. You can also specify 'spectator mode,' which will allow an arbitrary number of spectators to join and watch you play without being able to play themselves.
Delay frames denotes denote the maximum number of frames RetroArch will need to emulate at once to maintain synchronization due to actual network latency. You can figure out an appropriate ballpark for this number by pinging the other player and dividing the time (in milliseconds) by 16 (roughly the number of milliseconds in a frame from a game running at 60 fps). If the gameplay is a bit choppy, try increasing the number of delay frames a bit.
Similar to the GGPO platform, RetroArch creates a constant stream of savestates which, along with button presses, are exchanged and compared between the server and client machines. If the savestates start to diverge, the game rolls back in time to a point where they both agree and then emulates the missing frames all at once to get back to the appropriate spot. This gives the illusion of completely lagless inputs, which is invaluable for twitchy, fine controls.
1,809
edits

Navigation menu