maandag 3 oktober 2016

Games spelen op een zwarte achtergrond

Er zijn verschillende mogelijkheden om het scherm waarin je eigenlijke games speelt te wijzigen.

Je kunt uiteraard al je games full screen gaan spelen. Maar vooral bij de oudere systemen zorgt dit voor graphics die er niet uizien op een FullHD scherm. Denk maar aan een systeem zoals de Wonderswan of de Atari Lynx.

Daarom hou ik er wel van om de games te spelen op slechts eens gedeelte van het scherm met daarrond een zwarte achtergrond. Dat leidt trouwens ook niet af.

Als voorbeeld ga ik kiezen voor de PSX emulator. Als we deze opstarten zonder enige aanpassingen, dan zien we een scherm dat een flink stuk kleiner is dan het volledig beeldscherm.


Wat ik wil bereiken is dat het beeld van de game dezelfde grootte blijft, maar dat het venster waarin alles zich afspeelt op een volledig scherm te zien is.

Eerst en vooral moet je de juiste resolutie weten van je monitor. In mijn geval is dit FullHD. Dat betekent 1920 op 1080 pixels.

Ga naar het RetroArch menu. In mijn geval doe ik dit door te drukken op L3 en R3. Ga naar Settings >> Video >> Aspect Ratio Index.


Wijzig dit met de pijltjestoetsen (of je controller) naar Custom.

De volgende stap is de optie (iets daarboven) Windowed Fullscreen Mode op aan te zetten.


Als je nu terugkeert naar je spel zul je merken dat je schermop een volledig scherm wordt getoond. Het probleem is echter dat het beeld in de linkerbovenhoek 'geplakt' staat.


Het is dus de bedoeling dat het beeld zowel horizontaal als verticaal netjes in het midden komt te staan.

Deze posities kunnen we zelf invullen. Dat doen we bij Custom Viewport X (= horizontaal) als bij Custom Viewport Y (= verticaal).

Maar hoe weet je wat je moet invullen? Je kunt een beetje op de tast getallen invullen waarvan jij denkt 'dat zal het ongeveer wel zijn'. Maar er is een eenvoudig rekensommetje dat je perfect de juiste getallen prijsgeeft!

In het RetroArch menu zie je bij Custom Viewport Width/Height welke afmetingen je spel gebruikt :


In ons geval dus 960 op 720. Je weet ook dat je resolutie 1920 op 1080 is.Dat wil dus zeggen dat er van de 1920 pixels op de horizontale lijn 960 'bezet' zijn door het spel. Dan blijven er dus 1920-960=960 pixels over.

Deze 960 pixels die overblijven moeten worden verdeeld. Evenveel aan de rechterkant als aan de linkerkant. De overgebleven 960 pixels delen we dus door 2 = 480.

We moeten op de horizontale as aan elke zijde een marge laten van 480 pixels. Deze 480 vullen we in bij Custom Viewport X. Want deze waarde geeft aan op welke horizontale pixel ons beeld mag 'beginnen'.

Op dezelfde manier bepalen we de verticale pixel :
Ons spel is 720 pixels hoog, onze monitor 1080. Dus 1080-720=360 pixels.
We willen dat de boven- en onderrand evengroot zijn. Dus 360/2=180 pixels. De waarde van 180 pixels vullen we in bij Custom Viewport Y.

En dit is dus het resultaat :