Il developer DerKoun ha pubblicato un nuovo aggiornamento per l’emulatore bsnes-hd beta (formalmente “HD Mode 7 mod”), l’applicazione ci permette di emulare i sistemi Super Famicom e SNES.
La mod esegue una serie di trasformazioni in modalità 7 (incluso HDMA) fino a 4 volte la risoluzione orizzontale e verticale. L’emulatore necessita di un PC abbastanza potente per poter funzionare a risoluzioni elevate.Questa nuova versione aggiunge finestre HD e gradienti fluidi.
https://twitter.com/byuu_san/status/1162257080448798720
Modalità HD 7
Rendering degli sfondi con prospettiva ruotata, ridimensionata o pseudo a risoluzioni più elevate. Questo non riguarda nuove immagini personalizzate o algoritmi di upscaling, è una versione a risoluzione più alta del processo che utilizza realmente il Super NES.
Widescreen
Principalmente per scene in modalità 7, ma funziona anche per altre scene o giochi qua e là. Sono richiesti alcuni ritocchi all’interno delle impostazione per poter funzionare…
C’è anche dell’altro
Ad esempio, una maggiore profondità di colore e interpolazione per l’unione dei colori che aiuta il senso della profondità.
Altre caratteristiche non correlate alla modalità HD
Come la possibilità di disabilitare i livelli di sfondo, gli sprite e gli effetti delle finestre per gli screenshot degli sfondi o del ritaglio morbido per ingrandire, lasciando mappe o arte statica dai lati dello schermo.
Impostazioni
Tutto in Settings -> Emulator
Scale
La risoluzione in Mode 7 è rendered. Impostazioni più elevate aumentano drasticamente l’utilizzo della CPU. L’opzione “disable” utilizza il classico codice in Mode 7, disabilitando alcune delle seguenti funzionalità.
Perspective correction
Se appare come pseudo prospettiva 3D, queste vengono ottimizzate, evitando i limiti di calcolo del Super NES.
- off: Disabilita la correzione.
- on: Abilita la correzione.
- auto (impostazione predefinita): Attiva la correzione, ma prova a rilevare quando interrompe l’immagine e la disabilita automaticamente.
- wide (predefinito) / medium / narrow: La distanza tra le linee utilizzate per l’interpolazione (e anche per il rilevamento, se abilitato). Utilizza “wide” a meno che non causi problemi. Il solo gioco attualmente conosciuto che richiede questo è: “Tales of Phantasia“, impostato su “narrow“.
Supersampling
Consente di basare ogni pixel risultante sulla media di più pixel. Nella scala 1x consente di utilizzare la precisione più elevata alla risoluzione originale, ad esempio per l’utilizzo con gli shader CRT.
A risoluzioni più elevate è fondamentalmente costoso l’anti-aliasing. Tieni presente che per stimare l’impatto sulle prestazioni devi moltiplicare(!) questo valore con il valore “scale“.
Keep Mosaics non-HD
Se l’opzione Keep Mosaics non-HD viene deselezionata, vengono ignorati gli sfondi in Mode 7. Una volta selezionato, le linee interessate ritornano alla modalità classica 7.
Widescreen
Abilita l’opzione sperimentale Widescreen (funziona meglio per le scene in Mode 7, il resto è incostante) e imposta il suo AR. Gli AR reali sono leggermente più larghi della selezione, usano “soft crop“, “left” e “right” per l’esperienza a schermo intero.
“HDcrop” su scala 5x ha una larghezza di 1920, che (combinata con “soft crop“, “top” e “bottom” su 10, output/center e shader/none) si traduce in un perfetto schermo a 1080p.
BG1/BG2/BG3/BG4
Impostazioni per i livelli di sfondo:
- off: Nessun widescreen (ad es. per gli HUD).
- on: Widescreen abilitato
- < xy/> xy : Widescreen abilitato sopra/sotto una determinata scanline (per gli sfondi che contengono HUD e sfondi).
- crop: Non disegna gli ultimi 8 pixel a sinistra e a destra (accanto alle aree widescreen) dello sfondo (per gli sfondi che cancellano alcuni pixel del bordo, lasciando le linee nere in widescreen, ad esempio in “Top Gear 2“).
- cAut: Uguale a “crop”, ad eccezione di 2 differenze. Solo i pixel neri non sono renderizzati, e le linee di pixel neri che iniziano nell’area crop a sinistra vengono completamente rimosse, ad esempio per “Super Mario Kart“.
- dis.: Disattiva completamente lo sfondo, ad esempio per rimuovere gli HUD per gli screenshot degli sfondi.
Sprites
- normal: Gli sprite vengono generati se si trovano almeno parzialmente nell’area classica del contenuto. In questo modo possono raggiungere solo parzialmente le aree widescreen.
- unsafe: Gli sprite vengono generati, anche se sono interamente in un’area widescreen. Funziona bene per i giochi visivi, come “Super Mario World“, in altri titoli causa invece molti artefatti.
- disab.: Disattiva completamente gli sprite, ad esempio per rimuovere caratteri o elementi HUD per gli screenshot degli sfondi.
Ignore window
- none: Applica normalmente gli effetti della finestra. I pixel widescreen vengono trattati come pixel non widescreen più vicino.
- outside: Gli effetti della finestra “outside” vengono ignorati, ovvero tutti i pixel vengono trattati come se fossero alla “fallback x-coordinate” per questo scopo. Ciò consente la modalità 7 widescreen in “Final Fantasy III“.
- outside&alw: Come in outside, ma anche per effetti di finestra “always“.
- all: Come in outside, ma per tutti gli effetti della finestra. Ad esempio, può essere usato per rimuovere l’ombra e il meter da “F-Zero” per gli screenshot degli sfondi (richiede una “fallback x-coordinate” diversa da 128).
Fallback x-coordinate
- La x-coordinate viene utilizzata come fallback per “Ignore window“.
Soft crop
Questa opzione ci permette di dichiarare insignificanti le larghezze ai quattro bordi dell’immagine. Pertanto, quando si ridimensiona e posiziona l’immagine, soprattutto a schermo intero, è possibile ottenere l’overflow dello schermo, consentendo alle parti significative dell’immagine di essere più grandi.
Quindi concentrandosi sulla parte superiore di “Super Mario Kart“, imposta “bottom” su 130 e “top” su 0. Potrebbero essere necessari ulteriori ritocchi basati sul monitor.
- none: Disabilita Soft crop.
- center: Abilita Soft crop per output/center.
- scale: Abilita Soft crop per output/center e output/scale.
Top/Bottom/Left/Right
- Le larghezze di Soft crop per tutti e quattro i bordi.
Conversione del codice di rendering C++ in shader
Attualmente tutto il rendering HD è in esecuzione sui core della CPU. Questo dovrà essere spostato nella GPU per ottenere prestazioni utilizzabili. Apprezzerei davvero qualsiasi aiuto, anche se è solo per iniziare. Si prega di aprire un problema se si desidera contribuire, o di contattarmi su Reddit.
Changelog
- Tonalite fluide (true color, high resolution) per la matematica dei colori da colori fissi, ad esempio per pseudo-prospettive.
- Elaborazione true color per tutte le operazioni di colore.
- Corretti i crash con le impostazioni combinate di high scale e widescreen.
- Scale e Supersampling HD in HD Mode 7 fino a 10x (4K+).
- Preview: Effetti della finestra uniformi (high resolution), come ombre o incantesimi (i bordi superiore e inferiore presentano problemi).
Tutto viene fornito così com’è.
[stextbox id=’info’]Nota: Si consiglia di eseguire un ripristino delle impostazioni.[/stextbox]
Download: bsnes-hd beta 9 [Windows]
Download: bsnes-hd beta 9 [Linux]
Download: Source code bsnes-hd beta 9
Fonte: github.com