• Benvenuto in Making Videogames!
  • Dai sfogo alla tua fantasia!
  • Crea il tuo Videogioco!
Benvenuto ospite! Login Registrati




Valutazione discussione:
  • 0 voto(i) - 0 media
  • 1
  • 2
  • 3
  • 4
  • 5
OpenGL/Direct3D vs Librerie di gioco
#1
Salve a tutti eccoci all'ennesimo post di questo anonimo imbecille masochista. Sarò breve, togliendo i "è impossibile, ci vuole troppo eccecceccecc", tra usare librerie per la creazione di engine (e quindi anche di giochi) come le OpenGL Direct3D, e librerie per la creazione di GIOCHI come la sfml, sdl e libgdx (togliendo che sono librerie di 2 linguaggi differenti): quale bisogna usare? E tra i due linguaggi va bene sacrificare in livello di difficolta per aumentare le prestazioni utilizzando quindi il c++?
 
Rispondi
#2
Per aumentare le prestazioni col c++ bisogna saperlo comunque usare di conseguenza, tu lo sai usare cosi? Le tre librerie che indichi usano opengl ma sono diverse tra loro, anche molto, controlla le rispettive features e lo vedrai da te. Quanto ai due render gl e dx molto dipende dalle piattaforme target.
 
Rispondi
#3
mmm beh no il c++ anzi non ne conosco nemmeno le feature oop, mentre java l'ho fatto a scuola, non abbastanza da poter usare queste librerie (in quanto non conosco enumeratori non benissimo la try catch finally e altre cose) ma quasi sicuramente lo conosco meglio di c++ (anche se netbeans fa schifo oltre l'assurdo), quindi alla fine dovrei utilizzare libGDX?
 
Rispondi
#4
Tra i tre framework che indichi libgdx è forse il piú game-oriented, sfml e sdl sono appena un passo indietro nella loro "specificità".

Le SDL sono un pò vecchiotte, da programmare in C/C++, diversi i bindings ma non per Java mi pare.
Molte le componenti ma mi pare di notare, rispetto alle altre librerie, che manchi di alcune cose, ci sono l'audio, l'input, i thread, i timer ma manca (potrei sbagliarmi però) qualcosa per gestire facilmente oggetti come sprite e spritesheet, le collisioni, la fisica, una UI anche generica (finestre, bottoni, ecc..), gli shaders, i font, il network. Se è tuo interesse dovresti codartele da te.

Le SFML sono adatte tanto col C/C++ che con altri linguaggi compreso il Java (un pò vecchiotta ma c'è la JFML ). E' molto usata e qui nel forum c'è chi la sta studiando credo. I suoi moduli sono molto più completi e vicini ad un game engine, ci sono gli shader, la UI, sprite, texture, 2d, 3d, vettori, thread, time, font, audio, network. Mancano forse, le collisioni e la fisica che sarebbero da integrare con librerie esterne come l'onnipresente box2d. Non vedo una gerarchia di entità specifiche per i game.

Le libgdx sono proprio specifiche per gioghi e hanno una nutrita serie di moduli la pecca è che sono per java. L'altro difetto è che naturalmente devi accettare il suo modo di organizzare la programmazione del gioco, ovviamente più ci si avvicina alla specificità in una libreria più si perde la libertà di agire in autonomia.

Per il java non butterei via quello che hai imparato a scuola. Poi bisogna vedere cosa vuoi fare, il target, ecc..

Se ti serve aiuto per java chiedi pure nel forum, lo conosco io lo conoscono altri Wink
 
Rispondi
#5
Grazie mille, alla fine devo scegliere tra java e c++, poi le librerie me le hai dette tu, unico problema è che visual studio è stupendo per scrivere codice, netbeans mi fa un pò schifo (devo provare eclipse però non credo cambi molto) le libgdx però bisogna scaricare un bel pò di cosucce...
 
Rispondi
#6
Si libgdx c'è molto da scaricare. In termimi lavorativi (extra videogame ) la conoscenza di java e eclipse/netbeans ti tornerà più utile.
 
Rispondi
#7
Sempre perche sono alternatuvo (stupido) ho visto su youtube (come titoli poi non ho visto abbastanza approfonditamente) lidGDX si può usare per creare un motore di gioco? Lo so che è indicata per i giochi, ma ho visto qualcosa su youtube e mi sono incuriosito
 
Rispondi
#8
Come detto tra i tre che indichi è il framework che più si avvicina ad un motore completo. Questo significa che offre nativamente molti dei componenti di un tipico motore di gioco che gli altri framework invece lasciano liberi di codarsi da se.

Ha una struttura gerarchica per gestire gli elementi presenti nella scena
https://github.com/libgdx/libgdx/wiki/Scene2d

Una modulo per la UI
https://github.com/libgdx/libgdx/wiki/Scene2d.ui

Un modulo per i font compatibile con un tool molto usato per crearli
https://libgdx.badlogicgames.com/nightli...pFont.html
https://github.com/libgdx/libgdx/wiki/Hiero
http://www.angelcode.com/products/bmfont/

Un modulo per gli shader
https://libgdx.badlogicgames.com/nightli...ogram.html

Un modulo per gli sprites e le animazioni
https://github.com/libgdx/libgdx/wiki/Sp...nd-Sprites
https://github.com/libgdx/libgdx/wiki/2D-Animation

Un modulo per i sistemi particellari ed un editor annesso
https://libgdx.badlogicgames.com/nightli...itter.html
https://github.com/libgdx/libgdx/wiki/2D...cle-Editor

Un modulo per utilizzare le tile-map create con un software molto usato
https://github.com/libgdx/libgdx/wiki/Tile-maps
http://www.mapeditor.org/

Poi ha moduli per le collisioni, la fisica, una classe per astrarre l'IO su tutte le piattaforme, audio, musica, insomma c'è molta roba. Anche se offre moduli 3D credo sia decisamente più adatto al 2D multipiattaforma con una particolare attenzione ad Android.

Molti criticano che sul sito ufficiale non si trovino esempi completi e ben strutturati, ed è vero, quasi tutti suggeriscono questo tutorial di gamefromscratch in inglese che probabilmente avrai visto su youtube.

Anche a te consiglio di iscriverti alla Packt Publisching che periodicamente offre un libro gratuito online, a me il 24/10/2015 è capitato questo learning-libgdx-game-development è molto schematico e semplice.
 
Rispondi
#9
Grazie di tutte le informazioni, molto dettagliato chip
 
Rispondi
#10
Thanks a lot dude
 
Rispondi
  


Discussioni simili
Discussione Autore Risposte Letto Ultimo messaggio
Question Far saltare il personaggio di un gioco (Game Maker) Utente GameMaker:Studio 1 823 02-07-2013, 05:05 PM
Ultimo messaggio: skynet
  Programma per la grafica di un gioco HumHayAru 15 1,321 28-02-2013, 08:15 PM
Ultimo messaggio: BassMonsterZ

Vai al forum:


Browsing: 1 Ospite(i)