Rilasciato bsnes-hd beta 7 [bsnes 107.3]

Disponibile un nuovo aggiornamento per l’emulatore bsnes-hd beta (formalmente “HD Mode 7 mod”), ora disponibile anche per Mac OS.

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.

 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

  • Rilevamento automatico per Perspective correction (Castlevania, Terranigma, Final Fantasy 3).
  • Risoluzione prioritaria in HD Mode 7 (primi piani HD, ad esempio in Mohawk & Headphone Jack).
  • Impostazione della larghezza di correzione della prospettiva (correzione per la visualizzazione dei giochi, ad esempio Tales of Phantasia).
  • Impostazioni per evitare le barre nere sui bordi del widescreen o in alto/in basso (rispettivamente per Top Gear 2 e Mario Kart).
  • Impostazioni per ignorare la finestra (più widescreen e possibilità di disabilitare le ombre).
  • Opzione per disabilitare il livello di sfondo e gli sprite.
  • Opzione Soft crop per consentire ad alcune parti di eseguire l’overflow dallo schermo.
  • Correzioni di compilazione.
  • Qualche piccola ristrutturazione della finestra di dialogo delle impostazioni.
  • Prima versione di un file readme.

(Binario macOS di @IamRifki, grazie)

Download: bsnes-hd beta 7 [MacOS]

Download: bsnes-hd beta 6 [Windows]

Download: Source code bsnes-hd beta 7

Fonte: github.com

(Visited 1 times, 4 visits today)

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *