Incuriosito da una recente diatriba ho fatto un rapido esperimento per un rogue-like in 3D, sempre con Blender e python (che sto usando per l'altro gioco).
Il test è di straordinaria pochezza (pregasi notare la maestria nella gestione dell'illuminazione globale) ma mi ha dato quella sensazione "ma sì, se po' 'fa" sul genere di gioco che sarebbe.
Siccome il codice non fa neanche così schifo ho salvato il progetto in rete, casomai qualcuno avesse la curiosità di vedere un'ipotesi di funzionamento di un gioco di quel tipo.
Per parte mia, oltre ad aver aggiunto un'altra cosa che avrò il tempo di fare dopo la sepoltura, ho scoperto un paio di cose sul blender game engine che mi torneranno utili per i miei Mech.
pierluigi grassi
geotagged!
27-04-2012 20:59
71104
Member
Messaggi: 216
Registrato: Mar 2012
Offline
comunque resto impressionato più che altro da ciò che si può fare con Blender: hai cliccato su un oggetto e si è animato, cioè Blender l'ha rintracciato nello spazio tridimensionale partendo da coordinate sul piano bidimensionale visivo
con l'OpenGL vecchio si poteva fare facilmente usando il feedback buffer ma ora è diverso e sinceramente il modo per fare questa cosa non è che mi venga in mente con uno schiocco di dita ._.
(a parte fare tutto sulla CPU proiettando manualmente i punti ma come soluzione fa schifo)
(27-04-2012 21:26)71104 ha scritto: ok... ma la diatriba qual era??
comunque resto impressionato più che altro da ciò che si può fare con Blender: hai cliccato su un oggetto e si è animato, cioè Blender l'ha rintracciato nello spazio tridimensionale partendo da coordinate sul piano bidimensionale visivo
(27-04-2012 21:26)71104 ha scritto: con l'OpenGL vecchio si poteva fare facilmente usando il feedback buffer ma ora è diverso e sinceramente il modo per fare questa cosa non è che mi venga in mente con uno schiocco di dita ._.
(a parte fare tutto sulla CPU proiettando manualmente i punti ma come soluzione fa schifo)
che vuol dire "tutto sulla CPU"? dove vorresti farlo?
comunque basta o trasformare il raggio del mouse da 2d a 3d oppure fare il contrario e trasformare la bbox dell'oggetto in 2d, entrambe le cose si fanno con le semplici matrici view*projection (in un caso devi invertire)
(27-04-2012 21:26)71104 ha scritto: ok... ma la diatriba qual era??
Una divergenza di opinioni sulla "difficoltà" nel realizzare la meccanica di un gioco del genere.
L'idea che mi sono fatto scrivendo quel test è che per quanto possa - e deva - essere complesso, cioè composto di una marea di parti, un gioco di quel genere abbia una complessità quasi lineare, vale a dire che il gioco è costruito intorno alla ripetizione di funzioni che hanno una bassa dipendenza reciproca.
Dico "quasi" e "bassa" anzichè solo e nulla per tenermi largo: in realtà del genere di gioco non so nulla e le sorprese, si sa, non finiscono mai.
Sicuramente il trucco non sta nel sistema a mosse, nell'alternanza dei turni, nella gestione dell'interazione con l'ambiente, perchè quelli sono assolutamente elementari - non solo nel blender game engine, tutti i motori di gioco 3D che ho provato finora hanno le stesse funzioni di quelle che uso nel test, anzi, alcuni la fanno anche più facile.
pierluigi grassi
geotagged!
(Questo messaggio è stato modificato l'ultima volta il: 28-04-2012 10:24 da pgi.)