Aiuto - Cerca - Utenti - Calendario
Versione completa: Alone in the dark trilogy ENGINE
OldGamesItalia > (Old)Games > Osservatorio
Pagine: 1, 2, 3, 4
Ray1184
Buongiorno a tutti!
Da qualche giorno ho notato il vostro stupendo portale, e trattando di old games mi son detto che era forse il posto migliore per parlarvi di una mia piccola creazione a cui sto lavorando da poco (ma una idea che mi trascino dietro da anni).

Sono un grandissimo fan della trilogia di Alone in the dark (per me questi capitoli, il primo in particolare rappresentano l'eccellenza del genere videoludico, ahime, a mio modesto parere oggi non regala piu le stesse emozioni di una volta).
Sembrerà strano ma dei primi capitoli AITD, oltre alla storia l'atmosfera e tutto il resto, la cosa che mi ha sempre affascinato più di tutto e ancora oggi mi affascina... è la grafica!
Così grottesca, a tratti cartoonesca a tratti inqueietante, e il fatto che sia pixellata a causa della sua risoluzione non può che migliorare la cosa! Questo perchè rende il tutto più confuso, le figure non bene definite restano a libera interpretazione dei giocatori.
Ebbene, alla fine ho deciso (dopo aver provato a creare un mio Survival Horror stile AITD) di ricreare un clone del motore di gioco, cercando di ottenere risultati simili a quelli della trilogia (perchè non saranno mai alla loro altezza purtroppo :( ma farò del mio meglio biggrin2a.gif).

L'engine lo sto programmando in Java usando il framework 3D JMonkey. Per la grafica lavoro con Blender e Photoshop. L'ambiente di gioco è composto da:

- Personaggio in 3D
- Scena in 3D (invisibile, viene disegnata solo la profondità, nel senso che se passo dietro a un oggetto, anche se esso invisibile, il giocatore viene coperto da esso).
- Rendering sopra la scena

Quando il giocatore calpesta certe aree della mappa viene attivata una determinata camera, e nello stesso istante viene utilizzato un background che si sovrappone perfettamente alla scena (stessa angolazione della camera). Questo background è renderizzato tramite blender e modificato tramite photoshop (mettendo il colore più cartoonesco e aggiungendo i dettagli con la penna grafica per dare quel tocco in più).

Infine utilizzo un filtro che aumenta la dimensione dei pixel a mio piacimento (ad esempio 4x) per ricreare l'effetto di un tempo rolleyes.gif

Ecco qualche screenshot del motore (le stanze create sono ancora piuttosto vuote e manca la modifica con la penna grafica, ma il risultato sarà più o meno così, anche se devo lavorare ancora un poco sulla regolazione dei colori):



Se siete interessati continuerò ad aggiornarvi, e soprattutto a parlare di un progetto che ho in mente da anni appena il motore sarà pronto biggrin2a.gif


Shinetop
Molto interessante complimenti!!!
E poi il vecchio Alone in the Dark ha un fascino tutto suo ancora oggi!

Ray1184
Assolutamente d'accordo con te!
Purtroppo (o forse per fortuna) alcune cose davvero speciali del primo capitolo sono nate e morte li. Il mistero di fondo di ogni cosa e le domande irrisolte che si porta dietro anche dopo la fine sono la vera essenza del mistero, tipo:

- Perché alla fine il tassista del macinino è lui stesso un ghoul/zombie?
- Per il sigaro assassino?
- Perché fantasmi che se non li sfiori se ne stanno comodamente seduti come se stesso bevendo il tè delle 5 e appena li sfiori diventano sanguinari assassini?
- Il topo/ragno/coniglio strabico (sembra quasi che indossa occhiali da sole XD) che sbatte minaccioso la mandibola?
- Il vortice fuori dalla casa?
- Molto altro...

Il tutto ricalca elementi espressionisti e grotteschi secondo me superbi, e sono del parere che nessun altro tipo di grafica potrebbe essere all'altezza di ciò, perché è come un film vecchio in bianco e nero. Prendete il capolavoro Nosferatu del 1922, un suo remake per quanto bene possa essere fatto non potrà ricreare le stesse atmosfere così drammatiche e accentuate dell'originale, a meno che non si utilizzi lo stesso stile (cosa che han fatto secondo me in maniera esemplare con un mediometraggio del 2005 "The Call of Cthulhu" dove hanno usato uno stile cinematografico simile a quello di Nosferatu... davvero superbo!). Quindi mentre di solito si tiene lo stesso titolo e se ne fa un remake, vorrei fare l'opposto io, ovvero ricreare il motore grafico (sfruttando ovviamente quello che la tecnologia da a disposizione al giorno d'oggi, cercando di colmare lacune che nei primi anni 90 erano inevitabili (anche se sarà difficile trovarne)) e creare una avventura nuova, cercando magari di rendere il motore grafico stesso facilmente customizzabile ed espandibile per aggiunte di ogni tipo.
Micartu
Bellissima cosa questa! Se riesci a creare un motore simile e lo rilasci, potrebbero arrivare delle mod o dei giochi in stile Alone in the Dark nuovi di pacca.
marcocio
Ciao e complimenti! Io Alone in the Dark me lo ricordo soprattutto per la sua immensa difficoltà!! Purtroppo non ho mai avuto il piacere di giocare al primo, ho fatto il secondo, ma solo con le soluzioni...
Shinetop
Bhe secondo me il grosso fascino di Alone in the Dark, sta proprio nel fatto di dover esplorare una magione infestata dai fantasmi (infatti il secondo ed il terzo episodio perdono un po'). Alla fine se ci pensate è una location credibile, non è un qualcosa di fantasioso come può essere una stazione spaziale. La cosa che ricordo ancora oggi di Alone in the Dark 1 sono..... i passi sul pavimento in legno blush.gif
Era davvero qualcosa di unico per l'epoca....... non c'era quasi mai musica di sottofondo ma solo i tuoi passi!!

C'era stata, se non ricordo male, una riedizione di Alone in the Dark verso il 2000, dove si usava una torcia per illuminare gli oggetti, ma non mi aveva preso più di tanto.... forse perchè la casa era troppo grossa e si disperdeva un po' la sensazione del primo episodio.

Alla fine è successa la stessa cosa con Resident Evil, il primo episodio faceva davvero paura, gli altri ambientati fuori dalla casa perdevano parecchio.

Non so come la pensate voi blush.gif
Ray1184
CITAZIONE
Bellissima cosa questa! Se riesci a creare un motore simile e lo rilasci, potrebbero arrivare delle mod o dei giochi in stile Alone in the Dark nuovi di pacca.

Ma te lo immagine che bello? Sicuramente rilascerò l'engine open source appena sarà pronto. Poi adesso vedo che stanno tornando in scena diversi giochi indie (anche commerciali) con grafica retrò (son felice di vedere che anche all'alba del 2014 resta sempre apprezzata).

@Shinetop
Penso ti riferisci ad AITD: the new nightmare, atmosfere davvero belle, superiori secondo me a quelle già fantastiche dei primi RE (anche se meccanicamente il gameplay è meno efficace), anche se sono d'accordo con te, il mito del primo capitolo è un punto inarrivabile (un detective panzuto baffuto e squattrinato, una villa vintage infestata, ambientazione metà 1920... sono elementi che fusi insieme rendono il tutto un classico e nello stesso tempo originalissimo).
L'unica cosa su cui non sono d'accordo con te è sulla dimensione della villa, certo Derceto era già piuttosto grande (almeno con i sotterranei), ma son del parere che una ambientazione ancora più estesa (magari aggiungendo dei pezzi di giardino, tipo il labirinto di siepi del secondo capitolo) e qualche passaggio nascosto in più, qualche corridoio buio, non avrebbe fatto altro che aumentare il senso di angoscia e di pericolo dietro ogni angolo (che già così rasenta la perfezione a mio parere).

Comunque ho proseguito un po', ho creato un filtro che renderizza la scena come se fosse un vecchio film in bianco e nero (vorrei usarlo per le sequenze animate), utilizza un color seppia e appare un po' di disturbo e farfallii sullo schermo (e grande contrasto tra bianco e nero tipico del cinema espressionista).

Tra l'altro ho quasi terminato modellazione+rendering di un appartamento su due piani, spero proprio di rilasciare entro sera un video che mostra il funzionamento dell'engine, così potrete darmi consigli, sulla "pixellatura" sui colori (che, seguendo i vecchi stili pensavo di tenere piuttosto accentuati) e quanto altro.

Nel frattempo ecco un altro paio di screen, che mostrano la stessa stanza con qualche dettaglio in più (e la risoluzione direttamente in 4x), e sotto la stessa stanza con effetto old movie per le sequenze animate.

Ravenloft
CITAZIONE (Shinetop @ 1 Jan 2014, 14:16) *
Bhe secondo me il grosso fascino di Alone in the Dark, sta proprio nel fatto di dover esplorare una magione infestata dai fantasmi (infatti il secondo ed il terzo episodio perdono un po'). Alla fine se ci pensate è una location credibile, non è un qualcosa di fantasioso come può essere una stazione spaziale. La cosa che ricordo ancora oggi di Alone in the Dark 1 sono..... i passi sul pavimento in legno blush.gif
Era davvero qualcosa di unico per l'epoca....... non c'era quasi mai musica di sottofondo ma solo i tuoi passi!!

C'era stata, se non ricordo male, una riedizione di Alone in the Dark verso il 2000, dove si usava una torcia per illuminare gli oggetti, ma non mi aveva preso più di tanto.... forse perchè la casa era troppo grossa e si disperdeva un po' la sensazione del primo episodio.

Alla fine è successa la stessa cosa con Resident Evil, il primo episodio faceva davvero paura, gli altri ambientati fuori dalla casa perdevano parecchio.

Non so come la pensate voi blush.gif


Non per niente RE è scopiazzato (dall'ambientazione a buona parte del gameplay, più action). (Ri)leggendo le recensioni dell'epoca, il problema grosso dei due capitoli successivi di AitD era la eccessiva deriva action, laddove il primo era considerato una "avventura grafica" (?!?). Non ricordavo questo particolare, ma effettivamente gli enigmi ci sono e sono basati su inventario ed esplorazione. Questo fa la differenza con tutti i successivi "survival horror", a mio parere. Naturalmente i riferimenti lovecraftiani (epoca, ritmo, bestiario) pure aiutano l'atmosfera, rispetto agli effimeri (e fin troppo classici e abusati) zombie, i classici poliziotti "speciali" e robe così, eredità da B-movie insomma.

The New Nightmare era invece molto promettente, per via dell'utilizzo della torcia (ripreso poi da Alan Wake) e della fisica (molto interessante la propagazione del fuoco). Purtroppo grandi ambizioni e troppi bug minarono l'esperienza irrimediabilmente (è uscita una versione successiva che eliminava i bug, solo per PS3 se ricordo bene, restavano i problemi di gameplay). Un gran peccato.
TheRuler
Grande cosa ray, grande cosa. Le ultime screen mi hanno maggiormente esaltato. Basta trovare quell'equilibrio di pixellosità che permetta di vedere bene la maggior parte dei dettagli senza arrivare alle linee perfette dell'alta risoluzione, che in un titolo come AitD stonerebbero. A mio avviso.
Stai usando la 320x200?

Ray1184
Ciao TheRuler, grazie per il commento! biggrin2a.gif
Allora all'inizio volevo usare esattamente quella risoluzione, però purtroppo il motore che sto utilizzando (JMonkeyEngine) mi mette in automatico l'interpolazione bicubica, quindi quando faccio "zoom" sui pixel questo si vede non netto ma sfocato, e se la cosa la posso risolvere per gli sfondi (forzando l'interpolazione Nearest Neighbor), questo non si può fare per il modelli.
Quindi alla fine utilizzo una risoluzione in HD (1280x720) e in seguito applico un filtro di shading che mi permette in post-rendering di pixellare tutto il contenuto della finestra senza più dover modificare la grafica (il che mi permette di sperimentare parecchio senza dover rifare tutto ogni volta).
Al momento sono molto indeciso se usare un ratio 4x (come negli screens, che ridurrebbe la res a 320x180) o ridurre a 3x, farò un po' di prove, metterò un po' di screens e mi direte anche voi. Al momento alle stanze manca il post-editing in photoshop (infatti vorrei arrotondare un po' gli spigoli usando aggiungendo dettagli con la penna grafica, per non parlare di dettagli come ragnatele, polvere ecc...).

Hai proprio colto il punto diciamo, il difficile qui è trovare il giusto compromesso tra "pixellatura" e pulizia. Bisogna anche stare molto attenti ai colori e fare parecchi esperimenti. Tempo fa ho provato (ai tempi con OGRE 3D) a fare la stessa cosa, ma ai tempi provavo a disegnare gli sfondi io da zero, i risultati ovviamente erano scadenti e i tempi di realizzazione eccessivamente lunghi. Facendo invece prima un rendering di scena con blender e poi un post-edit mi sembrano molto meglio.
Ray1184
Ecco qui qualche altro screen, piano piano mi sto avvicinando allo stile finale.
Ora quello che manca è sempre sto maledetto ritocco con la penna grafica (che farò appena ho un minimo di tempo) e ancora un po' di contrasto in più tra i colori, ma direi che ci siamo quasi:



Ora che la componente grafica si sta definendo sempre meglio torno nuovamente al codice, devo ottimizzare le collisioni (al momento certe parti del modello "penetrano" in altre quando ci cammino contro) e alcuni semplici effetti particellari. Dopo queste cose di base posso passare ad un livello più alto per definire le parti tecniche di gioco, come gestione oggetti, nemici enigmi ecc...
Fantasya
Non ho giocato ad Alone in the Dark, ho visto solo qualche immagine, posso sbagliarmi ma....il pavimento non è troppo riflettente?
Ray1184
Si in effetti un po' troppo riflettente, dovrò provare ad abbassarlo un po' da blender blush.gif
The Ancient One
Ciao Ray1184,

non ho ancora letto il thread con la dovuta calma!
Di certo è un'iniziativa splendida!

Appena ho cinque minuti liberi avrò anche qualche domanda da farti.

Intanto però ti dò anche io il benvenuto su OldGamesItalia! n5.gif
E, contemporaneamente, ti chiedo di ridurre un po' le dimensioni della tua (bella) firma (in pasasto il limite era 500x50).
Ray1184
Ciao e grazie mille per il benvenuto!
Chiedo scusa per la firma, per il momento la tolgo, provvederò a crearne in seguito una di dimensioni minori blush.gif
Mi fa molto piacere la cosa, spero davvero di proseguire e creare qualcosa di carino, a breve posterò un video che mostri un po' meglio il gameplay e l'aspetto estetico generale!
TheRuler
Bellissimo collage ray. E' 4x?
potresti farci vedere l'effetto a 3x? (magari anche a 2x) sono curioso.
Ray1184
Esatto è a 4X biggrin2a.gif
Qui sotto le altre risoluzioni, così mi date un po' i vostri pareri! (La 1x stona, perchè manca l'AA al player e gli sfondi sono a 32 colori e si vede tanto la mancanza di dettaglio, secondo me 4x è quella che rende meglio, ma vorrei anche il vostro parere!)

TheRuler
Sei stato una scheggia! Ottima comparazione.

Sono orientato verso il 3x.
E se lasciassi la possibilità di impostare il filtro all'utente? o al limite al modder?
Anche l'1x ha il suo bel dire. Si notano dettagli impossibili da cogliere a 4x (almeno in questa inquadratura), come la texture della scrivania o il grammofono.
Stai facendo un lavoro egregio.
Ray1184
Guarda certamente lascerò il filtro moddabile in qualche modo, o come contenuto extra (sarebbe bello rilasciare una versione "HD", però in questo caso aumenterei i colori almeno a 256).
Guarda il 3x mi ispirava molto, però (non so se è un problema del filtro) mi sembra che rispetto al 4x e al 2x crei troppo disturbo, per esempio la tappezzeria verde, che è a soli 2 colori risulta parecchio disturbata nella 3x, comunque si vedrà, ora gli screens sono ancora pre-alfa, bisognerebbe rifare questo confronto con delle versioni finali complete di post editing e tutto il resto biggrin2a.gif
Shinetop
Io sarei per il 2X!
Pensavo che magari potresti mettere il tuo progetto su kickstarter!! blush.gif
TheRuler
Dovrebbe avere una attività in America o Inghilterra.
Shinetop
CITAZIONE (TheRuler @ 3 Jan 2014, 20:15) *
Dovrebbe avere una attività in America o Inghilterra.


Oppure avere un amico Americano o Inglese con residenza li.
Ray1184
Salve a tutti, ho qualche novità.
Sono riuscito a ricreare una casa completamente esplorabile (piano terra e piano superiore) con 7 inquadrature che cambiano dinamicamente in base alla posizione del player. Ho creato un paio di video che posterò entro questa sera. Ora si passa al miglioramento dell'automatizzazione della gestione dell'engine e all'abbozzo della logica di gioco.
redice
Il fatto che tu disgni comunque ad "alta risoluzione" e poi sgrani solo successivamente è una buona cosa, perchè ti consente volendo di aggiungere una opzione per disattivare "l'effetto oldschool" nei settings finali. Ma queste sono piccolezze.

Piuttosto mi interessava la parte tecnica che accennavi all'inizio riguardo la resa dello spazio. Quali sono i limiti attuali del tuo progetto? Sei in grado di idendificare le collisioni, impedire che il personaggio passi attraverso i muri, che questo possa interagire con gli oggetti?
Hai già le animazioni di base per il movimento? (cammino ad esempio)?

Poi ovviamente (ma visto che parli di "motore" e non di gioco immagino tu sia già orientato così) la cosa migliore è non hardcodare uno specifico gioco ma pensare a un linguaggio di scripting da mettere sopra al motore per realizzare avventure multiple.

Bellissimo progetto comunque, assolutamente. biggrin2a.gif
E io sono per il 3x.
Ray1184
Ciao redice, con immenso piacere rispondo alle tue domande di natura tecnica:

Collisione: è già previsto un sistema di base di collisioni, abbastanza rudimentale e ancora da migliorare, ma essenzialmente efficace, basato sul sistema Ray-casting (si spara un raggio dal personaggio e quando incontra un ostacolo dice la distanza, in base a questa si gestisce il personaggio). JMonkey mette anche a disposizione un framework avanzato, ma non avendo bisogno di fisica avanzata ho optato per questo sistema nativo un po' più leggero, anche se va migliorato (ad esempio al momento se si cammina a filo di un muro pian piano il personaggio finisce con "entrarci" con un braccio, ma si risolve). L'interazione con gli oggetti sarà abbastanza semplice, se classifico tutti gli oggetti di quel tipo come una sotto-istanza di "InteractionObject" posso controllare in tempo reale la distanza tra il giocatore e tutti gli oggetti di quel tipo. Quando questa distanza sarà sotto una certa soglia e si verificheranno altre eventuali condizioni, ci sarà l'interazione!

Animazioni: il personaggio principale (come vedrete nel video) è animato, creo l'animazione semplicemente tramite armature in blender, e le importo all'interno di JMonkey, è molto più semplice di quanto sembri (anche l'animazione è un po' rudimentale ora, una camminata un po' blocchettosa, ma mi serviva giusto per i test, si rifarà un maniera decente).

Motore: mi trovi assolutamente d'accordo, infatti la mia idea è cercare di creare qualcosa customizzabile al 100% e niente di harcodizzato, ovviamente un editor grafico sarebbe l'ideale anche se un po' troppo ambizioso, al momento mi basterebbe qualcosa basato su file di testo (ad esempio file xml per ogni location, che contengono i diversi eventi). Tra l'altro sto pensando di rendere la cosa accoppiata al 100% con blender, almeno per la parte grafica, rendere blender il vero editor e riuscire magari da blender stesso ad aggiungere delle proprietà ai vari oggetti, che verranno poi interpretate dal motore di gioco (cosa che già succede per la gestione delle camere e dei background).
Tutto questo anche perché, si, l'obiettivo ora è quello di avere il motore di gioco, ma ho molte idee che poi vorrei realizzare con esso, e avere degli strumenti che mi permettano ciò in maniera più agevole sarà sicuramente essenziale!

Parlando di limiti (perché è giusto parlarne biggrin2a.gif) per il momento sono le mie capacità di grafico/programmatore, perché comunque l'engine di base che utilizzo è davvero ottimo (la curva di apprendimento è buona e il supporto online è eccellente). Per la logica di gioco non vedo grossi problemi, perché la programmazione ad oggetti sarà un punto a favore con cui potrò sbizzarrirmi, sicuramente incontrerò difficoltà a migliorare le collisioni e la vedo anche piuttosto dura con l'IA dei nemici (anche se sarà piuttosto di base è comunque una cosa piuttosto ardua), ma sono sicuro che in fatto di IA la documentazione sarà ottima.
redice
Info molto interessanti, grazie biggrin2a.gif
Vedo che comunque di grafica e JMonkey ne sai o stai imparando bene, quindi questo non mi pare un grosso ostaclo. Discorso diverso invece l'IA (che non avevo nimimamente considerato prima) che potrebbe essere problematica; non tanto per un singolo gioco in se ma per la possibilità di renderlo customizzabile a livello di engine.

Secondo me dipende molto ovviamente dalle tue capacità, ma soprattutto dal tempo che prevedi di poterci dedicare; settimane, mesi o anni.
La visione utopistica sarebbe quella di poterci dedicare anni e di avere un editor grafico e di scripting che compili e realizzi giochi col tuo engine (una sorta di AGS ma per giochi 3d). Un buon riferimento potrebbe essere XText per la realizzazione di un linguaggio di scripting con tanto di IDE (Eclipse based) di riconoscimento. Oppure mangari anche solo JavaCC per la realizzazione di un parser che prenda in pasto degli script in una grammatica decisa da te.

Va benissimo l'approccio che stai tenendo (prototype based), probabilmente conviene prima realizzare una demo-gioco più o meno hardcodata e pensare all'evoluzione a engine solo successivamente.
Ray1184
Esatto! Guarda arrivare ad avere un clone di AGS è (come dici te) un po' utopico, anche perché se da una parte voglio realizzare un buon engine di base, dall'altra vorrei sfruttarlo per realizzare delle idee che ho in testa da parecchi anni biggrin2a.gif
Sono totalmente d'accordo con l'ultima cosa che dici, cioè di realizzare un prototipo e costruirci sopra una demo. Una idea carina è anche distribuire il tutto come una sorta di demo espandibile. Come ti dicevo blender in se mi viene parecchio in contro, al momento pensavo di realizzare il tutto come API e pensare di gestire gli eventi più comuni come script interpretati (mi piacerebbe trovare il modo in blender (credo ci sia già) di aggiungere delle proparty testuali ai vari oggetti della scena, in modo che poi vengano interpretati lato codice, di modo che blender stesso diventi un editor grafico vero e proprio per il tutto, e poi magari da codice (e magari in futuro tramite scripting) definire la logica di gioco)
Yak
CITAZIONE (Ray1184 @ 31 Dec 2013, 10:40) *
Così grottesca, a tratti cartoonesca a tratti inqueietante, e il fatto che sia pixellata a causa della sua risoluzione non può che migliorare la cosa! Questo perchè rende il tutto più confuso, le figure non bene definite restano a libera interpretazione dei giocatori.


Che in pratica è quello che ha fatto l'immenso Alberto Breccia con il suo "i miti di Cthulhu", usare tratto graffiante e ricco di "macchie" indefinite che dovranno suscitare nel lettore la vera percezione di orrore. In pratica, come disegnare l'invisibile.

Prendendo molto dalla mitologia (e ambientazione) Lovecraftiana, AITD si presta benissimo allo stesso "escamotage" e non puoi trovarmi che d'accordissimo su tutta linea.

Come filtro io sono propenso per il 3X, il 4X mi sembra eccessivo perché effettivamente si perdono tanti dettagli, problema che nei vecchi titoli non c'erano, perché le texture erano a risoluzioni molto più basse (e meno ricche).

Un'immagine pensata e disegnata per quella resa ha un effetto diverso da una, seppur a 32 colori, pixellata in post.

Mi spiego meglio


Le pareti sono disegnate in maniera lineare e geometrica con pochissimi dettagli e "l'effetto pixel" non fa altro che regalare profondita e dettagli, nel tuo caso invece, per esempio guardando la trama del tappeto negli screen comparativi, il risultato a 4X perde tanti dettagli di un disegno che a 1X è molto molto più complesso.

Spero di essermi riuscito a spiegare bene, in tutti i modi rimane solo una mia opinione blush.gif

Ti auguro buon lavoro, perché il progetto è esaltante!
Ray1184
Yak non avrei saputo esprimermi meglio, e diciamo che quello che hai scritto è una pura realtà, a dir la verità il filtro che uso ha il piccolo problema di aggiungere aliasing (per fortuna niente interpolazione bicubica) ai pixel, mentre io vorrei una spixellatura pulita pulita. Se riuscissi ad ottenere questo io renderizzerei dei fondali con meno dettagli e luci uniformi (tranne per le ombre) perchè anche se imperfetto, secondo me lo stile finale dovrebbe essere quello dello screen che hai appena postato. Ma tutto non si può ottenere quindi sperimenterò un poco ora, tra filtro 3x lasciando il dettaglio così come è e provando il filtro 4x cercando di ottenere una interpolazione pulita. Vedremo cosa salta fuori.

PS: guarda il nightgaunt nello screen, niente volto, posizione quasi statica, una entità senza anima, che si trova li senza un nessuno motivo concepibile dal giocatore, se per molti tutto ciò è il risultato dei limiti dell'epoca, secondo me invece è la pura rappresentazione dell'apice del pensiero lovecraftiano
TheRuler
CITAZIONE (Ray1184 @ 7 Jan 2014, 19:42) *
PS: guarda il nightgaunt nello screen, niente volto, posizione quasi statica, una entità senza anima, che si trova li senza un nessuno motivo concepibile dal giocatore, se per molti tutto ciò è il risultato dei limiti dell'epoca, secondo me invece è la pura rappresentazione dell'apice del pensiero lovecraftiano


Quella è cacarella allo stato pixel.
Ray1184
Ecco come promesso il video (consiglio di guardarlo a 720p):



Qui sotto la versione in stile Old Movie (frame rate basso voluto di proposito)



Manca l'animazione sulle scale, al momento si trasporta direttamente al piano superiore, ma ovviamente sarà fatta poi XD
Micartu
Molto Molto Molto bello!
TheRuler
clap.gif
Yak
Mi piace. Il feeling è quello giusto.
Ray1184
Grazie a tutti!
Si Yak, l'importante è che ci sia lo stile, l'atmosfera e le inquadrature, purtroppo lo stile così crudo e pulito dei primi episodi sarà un po' difficile da ottenere e verrà qualcosa inevitabilmente più elaborato, ma l'importante appunto è che tenga lo stile
saxabar
Molto bello complimenti! Per l'IA magari si potrebbe utilizzare Lisp
Ray1184
Ciao saxabar
Guarda l'IA non mi preoccupa particolarmente, in quanto i comportamenti saranno piuttosto semplici (i nemici che inseguono il giocatore e che eventualmente possono sparargli sono il grosso dell'IA).
Alcune tra le innumerevoli aggiunte che vorrei fare (rispetto al sommo classico) riguardano le schermate che compaio all'improvviso con scene raccapriccianti o spaventose accompagnate da un effetto sonoro agghiacciante (ad esempio nel buio, una figura vi prende alle spalle si sentirà un urlo agghiacciante e si vedrà a schermo intero il volto della figura che si avventa su di voi). Una simile strategia è stata adottata in Shadow of the comet (un altro capolavoro a mio parere, basato sui miti di Cthulhu del grande Lovecraft). Ecco cosa succedeva quando nei sotterranei della cripta venivate acciuffati:

Ray1184
Purtroppo la scorsa settimana a causa di notevoli impegni non ho potuto proseguire, sto riprendendo gli sviluppi ora.
Prima di tutto ho provato a fare un po' di post editing del rendering con la penna grafica, e devo dire che il risultato è secondo me di tutt altro livello, vengono infatti ammorbidite le curve, e viene donato al rendering un effetto "disegno" che si addice meglio al pre-rendered background, spazzando via un po' l'effetto poligono che per i miei gusti era un po' troppo accentuato.

Ecco il prima e il dopo (anche in HD l'effetto non è male, anche se il 3/4x accentua notevolmente l'effetto che vorrei ottenere):



Spero in un paio di settimane di rilasciare una demo, una piccola storia della durata di circa mezzora, dal titolo "Walk in the Night" già progettata nello svolgimento, ecco a voi la trama:

Luisiana 1922
Il noto archeologo Jebediah Pritchard è partito per una spedizione in India, per l'occasione ha lasciato la sua casa in custodia al nipote Theodore, un giovane impiegato in un negozio di antiquariato. Arrivato alla villetta al calar delle tenebre il giovane si prepara per coricarsi, ma solo dopo un'ora inizia a sentire strani rumori provenire dall'interno della casa. Pensando a uno spiffero non si da noia e cerca di riprendere il meritato sonno dopo una giornata di lavoro, ma un tintinnio di bottiglie e il suono di passi nella notte allertano il giovane che decide di alzarsi per dare una occhiata. Scoprirà ben presto di non essere solo, qualcuno si nasconde nel buio...

Lo stile sarà quello del classico Survival Horror, con un 90% di esplorazione ed enigmi e un 10% di azione, per sfuggire dalle grinfie di qualcosa che ha intenzioni tutt'altro che benevoli...

Ecco la locandina

simone_pizzi
interessante sto post... molto. Ora me lo rileggo tutto...
Ray1184
Purtroppo a causa di alcuni problemi tecnici ho dovuto riprogettare l'engine... purtroppo il sistema che avevo escogitato (disegnare la scena 3D realtime disegnando solo la profondità e mettere uno sfondo) da alcuni problemi, in particolare le performances (anche con una semplice stanza) ne risentono su sistemi un po' datati, ho paura che un eventuale gioco completo diverrebbe troppo pesante (vorrei invece avere un engine leggero e performante) senza parlare del fatto che se ci sono geometrie complesse da renderizzarne la profondità diventa davvero pesante per l'engine.

Quindi disegnerò ora la scena 3D realtime veramente semplice.... solo box di collisioni, e (come in effetti viene fatto nei veri 2.5D) applicherò alla scena uno o più layers pre-renderizzati, (che rappresentano i vari "strati" del disegno, ad esempio un muro, un tavolo e una sedia), e in base alla loro presumibile distanza (si può usare la distanza delle loro bounding box) dalla camera verrà loro assegnato un valore virtuale Zl (da 0 a N, che aumenta con la distanza). Lo stesso vale per il giocatore, verrà assegnato un valore Zg, a ogni frame verranno confrontati i valori Z tra giocatore e layers.

if Zl > Zg
renderizza prima Zl e poi Zg
else
renderizza prima Zg e poi Zl

Non dovrebbe essere molto difficile, l'unico problema è che lo sviluppo del gioco diventa un pochino più lungo (più semplice a livello 3D, ma bisogna gestire più livelli di pre-rendering), ma sono sicuro ne varrà la pena e le performances ne guadagneranno
TheRuler
Ottimo update. Grazie Ray.
Questo era un problema che immagino in fase di progettazione dell'engine non fosse facile da individuare.
In termini di tempo quanto ti costa riprogettare l'engine?
riesci a mantenere blocchi di codice o devi buttare tutto nel cestino?
Ray1184
Diciamo che preso dalla foga di aver trovato un sistema parecchio dinamico per il tutto non ci avevo pensato, ora che è successo ci ho pensato biggrin2a.gif
Ed era inevitabile, infatti o tenevo i dettagli bassi (ma il pre-rendering in questo caso allora era sprecato) o ne andavano le prestazioni. Mi sono documentato un po' ed effettivamente questo è il metodo corretto. Tra l'altro mi risolverebbe anche lo spiacevole problema del player che "penetra" con gambe e braccia all'interno dei muri, non avendo bisogno della profondità dei bounding box questo problema è automaticamente risolto

Ricreare l'engine non sarà facile, diciamo che comunque non c'era molto, perchè avevo abbozzato le parti a più basso livello (gestione camera e sfondi) ma il codice relativo non conterà più di 150-200 linee di codice, quindi davvero poco parlando di codice. Il problema era gestire tutto concettualmente.

Ovviamente le parti riguardanti il 3D real-time restano sempre buone, quindi le terrò quello e il sistema di rilevamento regione+attivazione camera. Dovrò poi trovare un sistema abbastanza automatico per gestire le profondità virtuali dei vari layers all'interno dell'inquadratura.
Ray1184
Eccomi, purtroppo queste settimane avevo il tempo contato per qualsiasi cosa, come previsto ho dovuto riprogettare l'engine, e dopo innumerevoli test son riuscito ad ottenere quello che mi serviva. Ora il contesto di lavoro è molto più 2D di prima, ed è esattamente lo stesso sistema (mi sono documentato) utilizzato nei vecchi Resident Evil, Alone in the Dark e Final Fantasy (VII, VIII, IX).

Ora di 3D si tengono solo:

- Personaggi
- Oggetti chiave
- Semplici box di collisioni (trasparenti)

Lo sfondo e gli oggetti ad alto dettaglio vengono renderizzati in N livelli di parallasse con un ipotetico valore Z, e in base alla distanza tra camera e oggetto 3D esso verrà renderizzato prima o dopo rispetto al livello.



Rispetto al sistema precedente ci sono molto PRO e pochi CONTRO

PRO:
- Possibilità di usare un dettaglio per i livelli virtualmente illimitato (non esiste più una scena 3D invisibile col medesimo dettaglio)
- Concettualmente più semplice
- Non è necessario che le camere coincidano alla perfezione (anche se inquadratura rendering livelli e scena devono essere molto simili), in questo modo si aumenta notevolmente la portabilità, in quanto non devo forzatamente clonare le camere direttamente da Blender, ma posso riprodurle in un secondo momento ad hoc, guardando ad occhio la sovrapposizione.
- Nessun effetto "compenetrazione" (tipo camminando contro un muro 3D, le braccia potrebbero compenetrare in esso, essendo ora il muro senza profondità non ci sarà questo spiacevole problema)
- Applicazione molto più leggera (semplici modelli 3D e livelli ad alto dettaglio in PNG)
- Utilizzo di uno standard consolidato (anche se poco documentato purtroppo)

CONTRO:
- Programmaticamente più lungo da realizzare (diventa tutto un po' più manuale e meno automatizzato)
- Difficoltà nel gestire la profondità in più punti per un oggetto renderizzato (ad esempio c'è da capire come gestire un tavolo che si estende lungo la profondità Z e "campionarne" diversi livelli di profondità), in merito a questo bisogna ragionare un poco sulle inquadrature e sulla disposizione di livelli intermedi (tipo un tavolo in mezzo ad una stanza).

Purtroppo ci vorrà ancora un po' di lavoro per recuperare il tutto, anche se sicuramente ne vale la pena.
Yak
Il tuo entusiasmo fa bene alla vita. Buon lavoro! blush.gif
Gamanek
CITAZIONE (Ray1184 @ 28 Feb 2014, 12:48) *
-cut-


All hail la forza lavoro shocked.gif
simone_pizzi
CITAZIONE (Yak @ 1 Mar 2014, 02:28) *
Il tuo entusiasmo fa bene alla vita. Buon lavoro! blush.gif

bella frase, la condivido!
AprilSkies
Premetto che ho notato solo ora questo progetto.
E' grandioso!
Complimenti davvero!

Ho appena letto tutto il thread e la mia aspettativa di vedere una demo è alle stelle!
Ray1184
Grazie per il commento! biggrin2a.gif
Spero davvero di rilasciare qualcosa di giocabile il prima possibile, al momento sto cercando di automatizzare il più possibile l'engine, così da ridurre al minimo i tempi di sviluppo. La parte di "core" è quasi pronta, quindi una tech demo spero di rilasciarla il prima possibile, appena riesco cerco poi di implementare elementi quali inventario e gestione dell'IA così da creare qualcosa di veramente giocabile!
AprilSkies
Ovviamente sarebbe stupendo se un giorno la rendessi disponibile in modo che chiunque possa creare dei suoi MOD biggrin2a.gif
Io per una engine del genere pagherei dai 10 ai 20 euro di sicuro!
Perché non ti kickstarterizzi?
Ray1184
L'idea è proprio renderla disponibile, prima di farlo ovviamente devo essere sicuro che tutto funzioni a dovere biggrin2a.gif
L'engine vorrei renderlo disponibile completamente gratuito ed open source e sarebbe bellissimo vedere progetti con questo stile biggrin2a.gif
Al momento non è un vero e proprio engine ma è un prototipo che gira sopra JMonkey (con non pochi problemi, perchè per far gestire sfondi pre-renderizzati e livelli di parallasse da un engine 3D ad alto livello c'è da andare un po' contro le strutture basi di JMonkey). Se viene fuori qualcosa di robusto cercherò poi di aggiungerci un minimo di scripting e interfaccia usabile.
Questa è la versione 'lo-fi' del forum. Per visualizzare la versione completa con molte più informazioni, formattazione ed immagini, per favore clicca qui.
Invision Power Board © 2001-2018 Invision Power Services, Inc.