Come creare un videogioco? Quali tool e linguaggi utilizzare? Come impostare un nuovo progetto?
Ecco una panoramica e utilizzo dei motori più conosciuti per la creazione di videogiochi

Post in evidenza

Vendere il tuo videogioco, quali piattaforme usare?

Supponiamo abbiate sviluppato di giorno (ma soprattutto di notte) negli ultimi 12 mesi un gioco che vi sta particolarmente a cuore (vuoi per...

Visualizzazioni totali

Urho3D, un eroe per gli sviluppatori di videogiochi in 3D


Urho3D (finlandese per "eroe" o "coraggioso combattente")  è un motore per la creazione di videogiochi 2D e 3D cross-platform completamente realizzato in C ++ e rilasciato sotto la licenza MIT.
A detta dei suoi autori è "ispirato" ai due motori OGRE e Horde3D (il primo sicuramente ben conosciuto dagli addetti ai lavori).

Non si può paragonare a colossi quali Unity 3D e UDK perchè non dispone di un ambiente completo di sviluppo ma è composto da una serie di librerie e un editor (ancora poco user-frendly in verità).
Anche se è un motore poco conosciuto, ad un primo impatto si intuiscono i suoi enormi potenziali (spinti dalla licenza MIT che viene incontro a tutte le esigenze dei team di lavoro).
Rispetto a Irrlicht o altre librerie ha molti punti di vantaggio:

Urho3D (fonte http://urho3d.github.io/)

  • inclusione di librerie non solo grafiche (audio, rete..ecc)
  • possibilità "nativa" di utilizzare linguaggi di scripting (come poteva essere LUA integrato manualmente nel motore base)
  • un vasto elenco di librerie di terze parti incluse nel motore
  • il motore è disponibile per quasi tutte le piattaforme esistenti (Windows, Linux, MacOSX, Android, HTML5)
Urho3D in azione - editor integrato


L'elenco di librerie di terze parti incluse è davvero lungo e consente di avere a disposizione un ambiente organico e completo per lo sviluppo di un videogioco:

  • AngelScript 2.30.2 (http://www.angelcode.com/angelscript/)
  • Box2D 2.3.0 (http://box2d.org/)
  • Bullet 2.83.6 (http://www.bulletphysics.org/)
  • Civetweb (http://sourceforge.net/projects/civetweb/)
  • FreeType 2.5.0 (http://www.freetype.org/)
  • GLEW 1.9.0 (http://glew.sourceforge.net/)
  • jo_jpeg 1.52 (http://www.jonolick.com/uploads/7/9/2/1/7921194/jo_jpeg.cpp)
  • kNet (https://github.com/juj/kNet)
  • libcpuid 0.2.0 (http://libcpuid.sourceforge.net/)
  • Lua 5.1 (http://www.lua.org)
  • LuaJIT 2.1.0+ (http://www.luajit.org)
  • LZ4 (http://code.google.com/p/lz4/)
  • MojoShader (http://icculus.org/mojoshader/)
  • Mustache 1.0 (http://mustache.github.io/, https://github.com/kainjow/Mustache)
  • nanodbc 2.11.3+ (http://lexicalunit.github.io/nanodbc/)
  • Open Asset Import Library (http://assimp.sourceforge.net/)
  • pugixml 1.5 (http://pugixml.org/)
  • rapidjson 0.11 (https://code.google.com/p/rapidjson/)
  • Recast/Detour (https://github.com/memononen/recastnavigation/)
  • SDL 2.0.3 (http://www.libsdl.org/)
  • StanHull (http://codesuppository.blogspot.com/2006/03/ john-ratcliffs-code-suppository-blog.html)
  • stb_image 2.05 (http://nothings.org/)
  • stb_image_write 0.98 (http://nothings.org/)
  • stb_vorbis 1.05 (http://nothings.org/)
  • SQLite 3.8.10.2 (https://www.sqlite.org/)
  • tolua++ 1.0.93 (http://www.codenix.com/~tolua)


In questo video è possibile vedere gli esempi principali in esecuzione.


Pro:
  • licenza MIT
  • presenza di un editor (anche se non evoluto come quello di Unity) 
  • costantemente aggiornato dagli sviluppatori
  • si può partecipare al progetto, presente su github

Contro:
  • E' richiesta una buona conoscenza C++
  • La documentazione non è ancora ai livelli di Unity o di Unreal

Riferimenti

http://urho3d.github.io/

0 commenti:

Posta un commento