RetroPie 3 : beeld verbeteren met overlays en shaders

Eenmaal je op je Raspberry Pi games hebt geplaatst is het eindelijk tijd voor een proefritje. Vaak valt het resultaat wat tegen. De beelden zijn niet echt zoals je had verwacht. En dat klopt ook. Je Full HD monitor / tv van hedentendage is veel beter dan je ouderwetse tv met klassieke beeldbuis. Hierdoor zijn de beelden veel scherper en lijken de graphics meer blokkerig.

Bovendien werd vroeger een andere beeldverhouding gebruikt dan vandaag. Hierdoor kom je met zwarte stroken op je scherm te zitten. Gelukkig heeft een Retropie de mogelijkheid om daar iets aan te doen. En het resultaat is nogal persoonlijk. De ene houdt ervan en de andere net niet. De oplossing bestaat dus uit twee delen. De overlay en de shaders.

De overlay is niet meer dan een afbeelding die dient om de zwarte randen te verbergen. De shaders zijn een soort filter die voor je beeldscherm komt waardoor je game er weer echt gaat uitzien zoals vroeger. Maar shaders zijn héél belastend voor een Rpi 2. De oplossing bestaat erin om enkel overlays te installeren waarin een shader wordt gesimuleerd.

In de praktijk kom het erop neer dat de overlay gewoon ‘scanlines’ heeft ingebouwd. Het is eigenlijk niks meer dan strepen op het beeld die (half doorzichtig) bovenop je beeld komen. Een overlay simuleert dus shaders.

Retropie-overlay-gba

In de volgende stappen gaan we dit dus gaan installeren. We gaan er hier van uit dat je werkt met Retropie versie 3. Bovendien zijn de onderstaande stappen bedoeld voor mensen die werken met een resolutie van 1080 x 1920, Full HD dus. Als je een andere resolutie hebt zul je wellicht wel je weg kunnen vinden eenmaal je het principe snapt.

We tonen ook een manier om alles automatisch te installeren. Maar als je de theorie snapt kun je ook makkelijk zelf aanpassingen gaan maken in de automatische installatie.

Downloaden van de nodige bestanden

Op je hoofd-pc kun je de nodige bestanden downloaden als een zip-bestand. De bestanden zijn te vinden bij GitHub. Uiterst rechts staat een knop om alle bestanden te downloaden in 1 zip-bestand. Eenmaal het zip-bestand op je pc staat, moet je het enkel nog uitpakken (bvb met 7-zip). Het resultaat is een map met de naam “rp-video-manager-master“. Daarin is ook een map te vinden met de naam “1080p_4-3“.

1080-001jpg

 

In deze map zul je afbeeldingen terugvinden en configuratiebestanden, maar dat is voor later. Eerst gaan we deze map (en de inhoud ervan uiteraard) kopiëren naar de Raspberry Pi. Hiervoor zijn verschillende methodes, maar de makkelijkste is via het programma FileZilla op je hoofdcomputer. Behavle FileZilla heb je ook nog volgende gegevens nodig :

  • Het ip-adres van je RPi (zie het hoofdmenu van Retropie >> Show IP Address)
  • De gebruikersnaam : dat is pi (als je het niet hebt veranderd)
  • Het wachtwoord : dit is raspberry (als je het niet hebt veranderd)

Nu kan je dankzij FileZilla een verbinding maken door de drie bovenstaande gegevens in te vullen (poort kun je openlaten) en te drukken op Snelverbinden. Let er wel op dat je vóór je ip-adres sftp:// intikt!

RETROPIE-filezilla

Nu komt het erop aan om in de linkerkant van het scherm (de mappen van je eigen pc) te navigeren naar de map 16-9 die we zonet hebben uitgepakt. Aan de rechterzijde (de mappen van Retropie) gaan we naar ../opt/retropie/emulators/retroarch/overlays/ .

Retropie-overlay-16-9-filezilla

Je zult merken dat er al andere mappen aanwezig zijn op de RPi in de map overlays. Daar hoef je je niks van aan te trekken. Onze nieuwe map 1080_4-3 mag er netjes tussen komen. Dat doen we door aan de linkerkant de map 1080_4-3 te selecteren, rechtsklik en kiezen voor uploaden. FileZilla begint nu met het overzetten van de map naar de RPi. Eenmaal alle bestanden zijn overgezet moet je aan de rechterkant volgende zien :

1080-002

 

Videomodes koppelen aan de emulators

Nu gaan we over naar onze RPi en starten we eerst een spel waar we een overlay en shaders willen gebruiken. Na het opstarten zien we heel kort een boodschap verschijnen. Druk op een willekeurige knop op je toetsenbord. Hierdoor komen we in een menu terecht dat ons toont welke emulator er standaard wordt gebruikt.

Hou er ook rekening mee dat onze map 1080_4-3 van zonet geen overlays heeft voor álle emulators. In dit voorbeeld gaan we voor de NES-emulator.

We starten dus een willekeurige NES game op via Retropie en drukken zodra het zwarte scherm tevoorschijn komt op een willekeurige toets op ons keyboard.

We komen terecht in een menu dat ons vertelt dat lr-fceumm de naam van de emulator is. Hiermee weten we genoeg en kunnen het menu verlaten en het spel stopzetten door op Select en Start te drukken. We komen weer in het hoofdmenu (EmulationStation) terecht. Druk op F4 om dit te beëindigen en automatisch naar de commandoregel te gaan. Tik de volgende opdracht in om naar de juiste map te gaan (let op de spatie na cd en de / die erop volgt !)

cd /opt/retropie/configs/all (enter)

Met het commando ls krijg je nu een lijst te zien van alle bestanden die in de map al aanwezig zijn.

Retropie-overlay-videomodes

Wellicht zal er ook bij jou geen bestand met de naam videomodes.cfg aanwezig zijn. Als dat er wél is, is dat geen enkel probleem : de werkwijze is identiek. We tikken volgende commando in (ook als er wel al een videomodes.cfg aanwezig is) :

sudo nano videomodes.cfg

Nano is de opdracht om een soort ‘kladblok’ of teksteditor te openen. We komen dus terecht in een soort tekstverwerker. Als je reeds een bestand had met de naam videomodes.cfg, dan zullen er wellicht al een paar regels tekst staan. Dan tik je gewoon onderaan het bestand verder. Als je nog geen videomodes.cfg had, dan voegen we nu een regel toe om Retropie duidelijk te maken dat de emulator lr-fceumm gebruik moet maken van shaders en overlays. Hiervoor tikken we onderstaande in :

lr-fceumm_render="config"

Als je nog andere emulators wil toevoegen, dan is het nu de moment. Tik eerst de naam van de emulator gevolgd door _render=”config” .

Retropie-overlay-videomodes2

Als je hiermee klaar bent druk je op CTRL en X om af te sluiten. Nano zal automatisch vragen als we het bestand ook willen opslaan. Druk op Y om ook op te slaan. Nano stelt nu een bestandsnaam voor : videomodes.cfg. Dit klopt, dus kunnen we gewoon bevestigen door op enter te drukken. We komen vanzelf weer terecht op de commandoregel. Als we opnieuw het commando ls intikken zien we dat ons nieuw bestand inderdaad in de lijst verschijnt :

Retropie-overlay-videomodes3

Kleine bonus voor de luie types onder ons : ik heb reeds een videomodes.cfg aangemaakt met zowat alle emulators erin. Je hoeft enkel onderstaande te kopiëren in je bestand :

lr-catsfc_render=”config”
lr-armsnes_render=”config”
lr-picodrive_render=”config”
lr-fba_render=”config”
lr-fceumm_render=”config”
lr-gambatte_render=”config”
lr-pocketsnes_render=”config”
lr-snes9x-next_render=”config”
lr-handy_render=”config”
lr-genesis-plus-gx_render=”config”
lr-gpsp_render=”config”
lr-pcsx-rearmed_render=”config”
lr-nestopia_render=”config”

Als er emulators zijn waarbij je het effect niet vindt passen, dan verwijder je gewoon deze regels in het bestand.

Toepassen per emulator

Nu gaan we de emulator voor NES (lr-fceumm) die we hierboven reeds hebben gebruikt aanpassen. Dit zal ervoor zorgen dat de emulator onze overlay gaat gebruiken met de juiste instellingen.

Opgelet : dit zijn dus de instellingen die je gebruikt als je scherm Full HD (1920 x 1080) is!

Via de commandoregel willen we het bestand retroarch.cfg van de nes-emulator wijzigen. Daarvoor gebruiken we volgende commando :

sudo nano /opt/retropie/configs/nes/retroarch.cfg

Sudo zorgt ervoor dat we de rechten krijgen om het bestand te wijzigen. Terwijl nano de opdracht is om dit te wijzigen met de ingebouwde teksteditor (met de naam nano).

Als resultaat zien we de inhoud van dit bestand :

retropie-overlays-nes01

Nu wissen we alles boven #include. Dit doe je door op het laatste karakter te gaan staan en backspace in te drukken (selecteren en DEL drukken werkt hier niet). Het resultaat is dus :

retropie-overlays-nes02

Nu wordt het even moeilijk : boven #include moeten we een stuk code plakken. Het makkelijkste is natuurlijk om even te googlen, kopiëren en plakken. Klaar. Jammer genoeg kun je niet zomaar kopiëren en plakken in nano op je RPi. De makkelijkste manier is dus het bestand te openen op je hoofdcomputer met FileZilla en zo de code erin te plakken.

Daarvoor openen we FileZilla en gaan we naar de map /opt/retropie/configs/nes. Daar rechtsklikken we op het bestand retroarch.cfg en kiezen we voor Bekijken/Bewerken.

Retropie-overlay-videomodes4

De code voor nes is :

video_shader_enable = false
video_fullscreen_x = 1920
video_fullscreen_y = 1080
custom_viewport_width = 1194
custom_viewport_height = 896
custom_viewport_x = 363
custom_viewport_y = 92
aspect_ratio_index = 22
video_scale_integer = true

input_overlay = /opt/retropie/emulators/retroarch/overlays/1080_4-3/PSX-NES_1080p.cfg
input_overlay_enable = true
input_overlay_opacity = 1.000000
input_overlay_scale = 1.000000
video_smooth = false

Bovenstaande stukje code kopieer en plak je dus in de retroarch.cfg file van nes. Sluit het bestand en je pc zal je waarschuwen als je de wijzigingen wil opslaan. Kies voor Ja.

Ga terug naar FileZilla en je zult merken dat ook FileZilla heeft gemerkt dat je bestand is gewijzigd. Kies ook hier ervoor dat FileZilla je nieuwe bestand mag uploaden.

Retropie-overlay-videomodes5

Ziezo, al de instellingen zijn nu gebeurd voor nes. Als je wil kun je ook bepaalde andere emulators gaan aanpassen.

De instellingen zijn anders voor elke emulator. De reden daarvoor is omdat de oorspronkelijke resolutie indertijd telkens anders was.

Het wordt helemaal moeilijk voor PlayStation 1. Dit is omdat bij sommige games de resolutie soms wijzigt binnen 1 game. Dus een overlay voor psx ( = PlayStation 1) zou ik afraden.

De automatische methode

Bovenstaande kan allemaal een stuk vlugger een makkelijker door te kiezen voor de automatische methode. Toch zijn bovenstaande stappen interessant omdat je nu weet wat er wordt gewijzigd en hoe het zaakje werkt. Hierdoor kun je nu ook makkelijk zelf wijzigingen aanbrengen als het resultaat niet 100% naar je zin is.

Om te starten zorg je ervoor dat je Retropie-systeem draait en dat de versie minstens 3.0 is. Hou ook in gedachten dat je bestanden waar de instellingen zijn opgeslgane zullen worden overschreven. Dus als je zelf al dagenlang bent bezig geweest met het tweaken van de cores ( = emulators) zullen deze wijzigingen verloren gaan!

We beginnen met een SSH-sessie te starten. Mac en Linux gebruikers werken dus gewoon via een terminalvenster, terwijl Windows gebruikers PuTTY kunnen gebruiken.

Eenmaal je bent ingelogd kunnen we de volgende reeks van commando’s ingeven :

wget https://github.com/biscuits99/rp-video-manager/releases/download/{release-number}/rp-video-manager.zip

Met dit commando geven we de RPi2 de opdracht om alle nodige bestanden te gaan downloaden. Je ziet ook staan {release-number}. Dat moeten we vervangen door het nummer van de laatste versie. Op het moment van schrijven is dit v0.9. Druk op Enter en het bestand wordt van het internet geplukt.

1080-003

Als de download volledig is kunnen we het zip-bestand uitpakken met :

unzip -o rp-video-manager.zip

Nu zijn alle bestanden uitgepakt en staan ze op hun juiste plaats. Het zip-bestand kan nu dus worden verwijderd :

rm rp-video-manager.zip

Nu is het programma Video Manager geïnstalleerd. Om het op te starten moeten we eerst naar de juiste map gaan :

cd /home/pi/rp-video-manager

1080-004

We moeten ook nog de juiste rechten toekennen aan de Video Manager. Doe je dat niet dan kan het programma niet juist werken :

chmod 755 videomanager.sh

Nu zijn alle stappen volledig en kunnen we het programma Video Manager opstarten :

./videomanager.sh

We komen terecht in een heel eenvoudig menu.

1080-005

Het is verleidelijk om meteen naar de overlays te gaan, maar eerst en vooral moet je kiezen voor 1 Config Menu. Vervolgens kies je de optie 4 Install Required Files.

1080-006

Na enkele tellen zijn de nodige bestanden reeds geïnstalleerd en kunnen we verder.

De mensen die reeds veel aanpassingen hebben gemaakt in hun configuratiebestanden kunnen deze nu backuppen door optie 1 te kiezen. Heb je nog geen veranderingen aangebracht, dan kun je gewoon verder gaan.

Optie 6 en 7 zijn heel handig. NES games kunnen in Retropie door verschillende emulators worden gespeeld. De beste is eigenlijk Nestopia, maar standaard wordt Fceumm als emulator gebruikt. Met optie 7 kun je dit wijzigen. Idem voor Megadrive. Daar is GenesisPlusGX de beste emulator, maar standaard wordt gekozen voor Picodrive. Gebruik dus optie 6 en 7 om dit hier te wijzigen.

In dit menu hebben we nu gedaan wat we moeten doen. We kiezen nu dus optie 9 om terug te gaan naar het hoofdmenu.

In mijn geval gebuik ik een beeldscherm van 1080p ( = FullHD). Ik kies dus optie 3 Overlays for 1080p.

1080-007

Nu kun je verschillende opties kiezen. Het hangt allemaal af van persoonlijke voorkeur, maar de eerste optie geeft me het meest aangename resultaat. Natuurlijk kan dat bij jou anders zijn. Maar je kunt experimenteren naar hartelust.

Ik ga dus voor 1 Overlays.

Eenmaal je dit hebt gedaan zijn alle overlays voor de beschikbare emulators geïnstalleerd. Het resultaat mag er zijn :

1080-008

Reageer :

Het e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *