Qualche motore 3d sporco / economico, leggero, adatto ai principianti là fuori? [chiuso]


8

Ho 2 domande, la seconda è più una specie di domanda d'opinione.

1a domanda:

Tutti hanno sentito parlare di panda3d, OGRE e IrrLicht: sono grandi motori, con molte caratteristiche. Con OGRE puoi fare quasi tutto l'immaginabile se impari il motore, con Irrlicht puoi fare molto, ma il motore è un po 'più adatto ai principianti e leggero. Panda3D è anche fantastico, Python facilita le cose, ma molte cose sono anche fattibili.

Prima della nuova era della programmazione portata dall'evoluzione del C ++, i giochi 3D che dovevano essere eseguiti su macchine lente erano programmati in C, ma da allora ogni giorno spingiamo i transistor a ulteriori limiti, dimenticando quanto sia stato orribile programmare i giochi in il "vecchio tempo". Va bene forse non è stato orribile, ma dal momento che la programmazione 3D è complicata dal 2D, e dal momento che la maggior parte dei motori supporta roba splendente come shader, scene manager, nodi di scena, NURBS, ombre, animazioni ecc., Non c'è un semplice motore 3D o renderer si adatterebbe solo alle persone che ne hanno abbastanza con un semplice 3D semplice, senza trame o solo trame davvero semplici?

Dato che ho sentito "non reinventare la ruota", sono sicuro che è un po 'troppo per imparare a realizzare un motore completo usando D3D o Opengl, e poiché imparerò D3D questo in una scuola di programmazione 3D, pensato che con tutti i motori gratuiti là fuori, ci deve essere uno che si adatta alle mie esigenze.

2a domanda:

Sin dai bei vecchi tempi di PlayStation, continuo a vedere l'imminente grafica ad alta definizione (come 360, PS3) come una piaga: è sempre più difficile imparare a programmare software più sofisticati, è impegnativo e dà un risultato soddisfacente , ma alla fine, è ancora uno stupido programma che rende i pixel!

Sento che il divertimento nei giochi non si è affatto evoluto o è semplicemente calato rispetto ai vecchi tempi in cui i ragazzi che facevano il gioco non erano necessari solo per nutrire l'occhio del giocatore, ma dovevano offrire un'esperienza e un divertimento.

Sento che oggigiorno i giochi sono solo software che mostra la tecnologia disponibile, ma ad eccezione di alcune perle, i giochi non sono più idee, sono solo una sorta di dimostrazione di come i dollari investiti possano brillare nella bellezza del CEO che non sa niente di merda come viene realizzato un gioco e cosa è davvero possibile fare.

Ovviamente, tranne i giochi indipendenti, che brilleranno un giorno o l'altro grazie a XBox Live e Steam, ma è tutt'altro che consentire a programmatori e designer di fare ciò che vogliono. Non sto dicendo "società malvagie" ecc., Ma sento che il realismo fotografico è solo un peccato: anche se abbiamo migliaia di risorse di computer in più, qual è il punto da provare: non possiamo davvero "simulare la realtà", dal momento che contraddice le leggi della fisica ... Potremmo calcolare una realtà alternativa, ma sarebbe molto complicato progettare ...


5
Dovrebbe esserci solo una domanda per ogni domanda.
Tetrad,

Cerca di rendere la domanda più breve e più semplice. Inoltre, non riesco a trovare la domanda parte della domanda 2, vedo solo molte opinioni e dichiarazioni.
Attaccando

1
domanda 1 tl; dr -> Alla ricerca di barebone, motore 3D facile da usare senza tutti gli espedienti. domanda 2 tl; dr (penso?) -> I nuovi giochi sacrificano il divertimento per la tecnologia, non credi?
Deleter,

Penso che le tue opinioni sarebbero divertenti da discutere nella chat di gamedev. chat.meta.stackoverflow.com/rooms/73/game-development - non è la tua tradizionale chat room in tempo reale; se non c'è nessuno, lascia un messaggio e poi torna più tardi e leggi le risposte.
Ricket,

duh. ho bisogno di 20 rappresentanti, ma in meta.stackoverflow
jokoon

Risposte:


3

Per quanto riguarda OpenGL, penso a Horde3D valga la pena menzionare . Forse non è così adatto ai principianti poiché non offre molti strumenti della GUI come fa Unreal SDK, ma questo lo rende molto leggero. Soprattutto, penso che sia fantastico per l'apprendimento.

Horde ti insegna ad essere molto organizzato con il tuo codice. Utilizza XML per i dati (mesh, shader, grafici di scene, ecc.) E C ++ per il controllo.

Mi piace il fatto che non sia un "motore di gioco". È un motore di rendering 3D che gestisce l'abbattimento, i livelli di dettaglio, i fulmini, l'animazione, ecc., Ma ti lascia tutta la logica del programma.

Come ha detto bummzack, ogni motore là fuori ti permetterà di fare cose poligonali di base. Ma poiché stai seguendo un percorso di apprendimento, potresti voler imparare un motore che ti permetterà anche di affrontare argomenti più complessi in futuro.


Al diavolo gli strumenti dell'interfaccia utente, ho dimenticato di menzionare che questi non sono davvero necessari, e spesso o non fanno il loro lavoro come avrei bisogno o mangiano le funzionalità del motore per consentire migliori funzioni dell'editor. Horde3d è ancora in beta ma sembra essere quello che sto cercando ...
jokoon

3

Bene, ci proverò.

Per quanto riguarda la tua prima domanda, ti consiglio di cuore SDL . Non è un motore grafico per scene e tutta la tua grafica verrà eseguita con OpenGL, ma gestisce gli elementi essenziali per te, come la creazione di una finestra, l'impostazione del contesto OpenGL, la ricezione di input e la riproduzione dell'audio. Sento assolutamente il tuo dolore quando si tratta di motori 3D e ho trovato il mio studio su OpenGL molto interessante e stimolante. Mi sono trasferito personalmente a Java, usando LWJGL (o JOGL se preferisci), perché mi piace il linguaggio di livello superiore e l'uso di applet, e Java gestisce allo stesso modo la creazione di finestre, input, suono, ecc.

Tuttavia, il fatto che imparerai presto DirectX potrebbe significare che dovresti concentrarti su questo. Non conosco alcun equivalente di SDL per DirectX, ma credo che DirectX al giorno d'oggi abbia alcune funzioni di supporto che ti mettono in funzione abbastanza rapidamente. Sfortunatamente non so molto di DirectX, quindi non posso parlare di particolari. Ma ti consiglio di provarlo.

Sono sicuro che è un po 'troppo per imparare a realizzare un motore completo usando D3D o Opengl

Sì, è troppo E lo vedo sempre. Non fare un motore; fare un gioco. Non lasciarti sorprendere dalla creazione di un sacco di classi con codice non testato e inutilizzato in esse e chiamalo una "libreria" o un "motore" perché è più probabile solo un "pasticcio teorico". Fai solo quello che devi fare per creare un gioco.


La tua seconda "domanda" è solo un'osservazione, e deprimente e (secondo me) molto sbagliata. Ci sono sicuramente brutti giochi là fuori, giochi ricchi di grafica con poco gameplay. Mi vengono in mente i videogiochi, poiché spesso sono quelli che non sono così fantastici. Ma la grafica e il gameplay non si escludono a vicenda . Leggendo il tuo rant mi chiedo quasi se hai giocato qualche gioco ultimamente; c'è una grande varietà di scelte là fuori e sono sicuro che c'è qualcosa per te. Ma non vedo affatto perché la bella grafica implichi un gameplay negativo. E se sei completamente contrario alla grafica elegante, ci sono ancora giochi là fuori per te. Potresti persino andare su eBay e acquistare un vecchio sistema e vecchi giochi a buon mercato.

La cosa divertente è che sarei disposto a scommettere che questa opinione esiste da molto tempo ormai, attraverso le ultime generazioni di console. Sono sicuro che la gente ha guardato Nintendo 64 quando è uscito e ha pensato la stessa cosa: ottima grafica (per il suo tempo) = cattivo gameplay. E c'erano buoni e cattivi giochi N64. E poi so per certo che le persone si preoccupavano di questo genere di cose durante l'era di Gamecube, PS2 e Xbox. Cavolo, mi sono seduto e ho visto i giochi per Xbox fare esattamente questa cosa. Quindi ci sono sempre buoni giochi e cattivi giochi, e devi solo calmarti, fare un respiro profondo e andare a trovare alcuni giochi che ti piacciono. Ci saranno sempre giochi alle due estremità dello spettro; giochi a bassa risoluzione che non puoi smettere di giocare anni dopo (CounterStrike 1.6 chiunque?) e giochi ad alta risoluzione che sono flop totali.

E sì, ce ne saranno sempre di più, poiché la grafica è più facile da avviare rispetto alle buone idee di gioco . La loro esistenza non toglie l'esistenza dei buoni giochi, né riduce il loro numero. Offrono ai designer più prove di cosa non fare quando progettano il loro prossimo gioco. È una brutta cosa?


Buona risposta e ottima risposta alla seconda domanda / dichiarazione dei PO.
Bummzack,

È una buona risposta, ma SDL non è più un motore 3D di quanto lo sia l'API Win32.
Kylotan,

1

Se non desideri tutti i vantaggi (e il gonfiore?) Di un motore 3D, perché non utilizzare GLUT ?

Penso che SceneManager e simili aggiungano effettivamente alla facilità d' uso di un motore 3D invece di rendere le cose più complicate.

Puoi eseguire un rendering di base (niente texture, niente shader) con tutti i motori 3D che hai citato. Alcuni di essi hanno persino un'architettura modulare (plug-in) in modo da poter effettivamente eliminare tutto ciò che (al momento) non è necessario.

IMHO non esiste un motore 3D adatto ai principianti o persino una struttura / libreria adatta ai principianti . Dovrai sempre imparare e abituarti prima a un pacchetto software. Mi sembra che tu stia cercando di saltare quel passaggio :)


(Questo è inteso come un commento alla risposta di bummzack) Invece di usare direttamente GLUT, penso che GLFW potrebbe essere più adatto ai giochi, poiché gestisce anche input e timing.
Utente non trovato il

-2
  1. un. SDL (Simple Direct Layer) Ha un motore di rendering 3D abbastanza semplice ed estensibile che è open source. Tuttavia il C ++ è efficiente, è una curva di apprendimento ripida.

    b. sdlbasic è un interprete BASIC piccolo, efficiente e multipiattaforma per la creazione di giochi sfruttando la potenza della libreria SDL. È stato ispirato dal vecchio e glorioso AMOS. - è nel repository Ubuntu e probabilmente anche altri.

    c. ?

  2. un. concordo con i tuoi sentimenti anche se "giochi casuali" come puzzle 2D e giochi di divertimento online e come pacchetti da collezione sembrano aver acquisito più beni immobili nel mercato dei giochi rispetto al tipo ad alta intensità hardware semplicemente a causa della natura pratica di un gioco con bassi requisiti di sistema. sarebbe bello vedere un po 'più di creatività nei substrati inferiori dell'emisfero inventario di creazioni 3d di games world inc.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.