Programmare (facilmente) giochi 3D. Panorama dei software disponibili.
In this article I want to list and describe those software used to program games essentially three-dimensional space, based on my previous knowledge and to my various migrations from one system to another looking for something easy, powerful, well-structured while platform independent. The order e' cronologico in base alle esperienze personali.
Cominciamo da 3 software sviluppati per Windows.
Dark Basic . Si tratta in sostanza di uno pseudo BASIC applicato alla programmazione 3D e quindi con una serie di comandi dedicati alla creazione di oggetti, textures e gestione del frame buffer, rendering, e gestione generale dei contenuti multimendiali. Dark Basic e' a pagamento e comunque e' un po limitato, sebbene sia ottimo per imparare i rudimenti della programmazione 3D.
Dark Basic Pro . E' la versione potenziata del dark basic, che contiene un sacco di funzionalita' e ottimizzazioni in piu', ma per quel che ricordo io ha introdotto una serie di bachi non indifferente, risolti with numerous patches. Next to it and 'have been developed recently DarkGDK a package. NET APIs that implement most of the features' 3D, maybe even better, and be used for example using C #.
Blitz Basic . Other language oriented Basic 3D. The Blitz and 'pretty solid and functional, in my opinion a lot more' Dark Basic, and has a good community with which to discuss and tricks needed to get from where optimizations. The only downside, and 'that is based on DirectX 7. Outputs are similar to other versions of Blitz (BlitzMax) but do not support full 3D. Some people we are currently developing games also Grossetti.
Doing a little guide I can say that the community has a basic Blitz 'more' articulate, and a language slightly more 'quick and powerful. These languages, however, that fee 'offer very good performance also for developers who do not settle for the usual snake 3d. Obviously require Windows and DirectX, trying to avoid Vista for the known incompatibility 'with DirectX 7.
Now to view free and open development of 3D gaming.
JMonkey Engine: Engine developed in Java via JNI and integrated with system libraries (available for both Win and Linux). What can I say? With the structure of a java program and 'almost inherently strong, syntactically impeccable and full of features'. The recent performance on computers are not bad and just using native libraries, you can reach extreme effects and uses the graphics card. The demo on the site are significant.
However, one should expect a learning curve more 'slow speed and a' deployment for simple toys and sometimes' annoying. Pero 'I think that this is a good compromise if we want good performance and set a language almost user friendly rather than' directly using C + +. If you want to get an idea of \u200b\u200bthe work Jmonkey there are many videos on youtube.
engine Jmonkey and 'currently undergoing major changes, so we choose to rely on the 1.x versions that have maggior stabilita' sul framewrok precedente, oppure le 2.x che non sono ancora ben rodate, ma offrono un framework piu' snello che toglie molte rogne al programmatore in particolare nella gestione di alcuni thread.
Panda3d : Veniamo ad un progetto sviluppato dalla Carnegie Mellon University (Entertainment Technology Center) per introdurre gli studenti alla programmazione 3d. Si tratta di una serie di librerie sviluppate e usate direttamente mediante python. Se pensate a quanto e' veloce python, immaginate quanto sia comodo avere a corredo un ulteriore set di classi e funzioni, con tanto di framework impostato per far girare intere applicazioni 3d. Senza dilungarmi troppo, perche' ho intenzione di scrivere qualche articol su panda3d more 'specific, I shall say' that the performance is less good than jmonkey, although the purpose for which 'was initially created perhaps was not, however,' the structure and how to program are fortunately very very slim. Just a few instructions to get started and see something on the screen, with a room and checks on it by default framework (volontariamnte if they are not disabled). Panda catches your eye as it integrates with regard to models, textures and cubemaps (mainly used for the purposes of discussion) with different three-dimensional graphical tools, the first of Blender. On the site and 'can have the samples, not always exhaustive and I think you can make many projects more' attractive. Disney has used this engine for its graphics mmorpg 'Pirates of the Caribbean' so do not throw it away.
The peculiarity 'of panda3d and' that it was written in python, at the end of the fair draws c functions, so as in any python program in order to increase the performance we create for ourselves our beautiful features c. However, the purpose of this overview was just showing something that was not related to graphics drivers and too difficult for those who approach the world of game programming.
JMonkey Panda3D and are strictly free and opensource.
There are many other projects for the more 'Java-based, as Xith3d , or LUA scripting using various frameworks but rely on graphics engines written in C as Ogre. Then do not forget Crystal Space 3D (c + +) and the same blender that provides a Python interface to build logic with graphical objects, but not well-kept, it 'performance.
Finally I can say that now, as well as it has 'developed Panda3d and' the best framework with which to begin to go into the game programming without resorting to system libraries, and immediately obtain surprising results with very few instructions. The manual and 'sufficiently clear and the Forum (English) I have so far solved a bunch of questions and problems.
If you already know 'how to study something 3D programming JMonkey try,' cause it's really worth.
0 comments:
Post a Comment