Começarei citando por ordem alfabética para não mostrar tendências. ;D

Aposto que você nem sequer ouviu falar nessa engine. Foi assim mesmo que eu me senti quando descobri a existência dela: indiferente contente! Começando a estudá-la pude perceber seu grande potencial, mas afinal, de onde vem essa Shiva 3D? Stonetrip
1. Descrição.
Shiva3D é uma game engine capaz de produzir jogos para (Windows/MAC/Linux), para mobiles (Iphone, Ipad, Android, Palm), consoles (Wii), Airplay (Symbiam, Windows Phone …) e jogos via Browser
Exagerada não? Demais!
Para essa incrível proeza de portabilidade utiliza o OpenGL ES. (Era de se esperar). Você pode optar por usar o 1.1 ou o 2.0 (padrão)
Ao contrário das outras engines, a ferramenta de exportação do game é separada do editor visual. Ela utiliza o Shiva Authoring Tool. A aplicação principal apenas exporta um pacote (acrescido ou não do código fonte em C++) para que a Authoring Tool gere a aplicação final.
Shiva Editor:

O Shiva editor possui um grande pontencial, HUD editor, Material editor, Model editor, Code editor, …. várias funcionalidades!
No entanto deixa a desejar na navegação da cena durante a edição e nos contantes reloads necessários para recarregar a cena depois de uma modificação em um modelo, código, etc…
Também possui um layout rígido, embora você tenha opções de layout predefinidas, além de poder acrescer de novas perspectivas ao layout atual.
O editor de códigos imbutido é realmente muito bom. Bem prático, com intellisense e outros recursos. No momento ainda não há debug, mas a próxima versão terá.
Shiva Authoring Tool:

Com authoring tool é possível compilar o código-fonte original (ou customizado) entre outras funcionalidades: ícones, build ….
A desvantagem do authoring tool é que é necessário instalar programas por fora do Shiva 3D: cygwin e make, ferramentas para o android (incluindo o NDK), sdk/psk do palm web os e o ant apache, entre outros (.NET, Visual C++, XCode, ….). Mas superado essa fase, o authoring tool te oferece uma maneira rápida de gerar o aplicativo final já customizado com ícone, versionamento e pré-instalação (caso de mobiles)
O ambiente de trabalho se resume a isto:

2. Linguagens utilizadas
Utiliza uma modificação do Lua: o stonetrip script. Que na verdade é apenas uma melhorada no Lua.
Se você está acostumado com as linguagens oriundas da era Algol, como o Pascal, facilmente pegará a sintaxe. Mas se você vem da raiz do C, terá que se acostumar.
Ao contrário do que se diz por aí, o Stonetrip script está muito longe das linguagens Orientada a Objeto (O.O), embora a empresa tenha costruído uma framework na linguagem e criado o Stonestrip Script para modelar comportamentos (AIModel), em vão (Mesmo que no site morram de dizer que é O.O)! Está mais perto das linguagens funcionais estruturadas, como o C. Apenas alguns recursos da O.O aparecem, que na verdade são muito mais semelhantes aos recursos das linguagens estruturas que as da O.O.
Vantagens? Tem que ter! E a principal é a possibilidade de modelar máquinas de estados sem mexer um dedo se quer! Lembra, nesse aspecto, a Unreal Script.
Você é bom em C++? Não é o bastante! Expert? Por aí! A Shiva3D te oferece, também, o código-fonte da sua aplicação em C++, para que você customize da sua forma! Uma mão na roda para otimizar e ganhar uns FPS a mais, principalmente em Mobiles. Mas que para a maioria dos programadores comuns é só uma perda de tempo.
Também é possível utilzar o Objective C
3. Licenças
Comparativo entre Free, Basic e Pro
Basicamente free e basic são iguais, exceto pelo fato de a versão Basic te dá o direito de publicar suas aplicações. (Custa 169 euros)
Já a Pro é repleta de detalhes de otimização, mas é igualmente a versão Basic (Custa 1600 euros) =/
4. Vantanges vs Desvantagens
O fato dela poder utilizar o mesmo projeto para vários targets (inúmeros) é bastante atrativo! Além do que a versão basic é 169 euros e praticamente dá o mesmo poderio que a versão pro. Embora a tendência do mercado seja aparecer diversas engines multiplataforma, nem sempre as empresas estão dispostas a não cobrar por cada plataforma possível de exportação: Unity3D é um exemplo.
Para empresas pequenas, e verba também, onde o maior foco é em jogos casuais, com certeza a Shiva3D será uma ótima opção.
Mas ao que há de ruim: embora sua linguagem seja razoavelmente produtiva, não podemos comparar o poderio da Stonetrip Script com um C#, Javascript e até mesmo, UnrealScript. Ah! Mas ela exporta código em C++, grande coisa! Se na sua equipe não há pessoas com nível avançado em C++, os códigos exportados não passarão de espaço em disco ocupado. (Embora para mim seja vantagem ter em mãos o código nativo, basicamente não utilizo esta possibilidade, porque simplemente não é necessário em 99,9% das vezes)
E, ao meu ver, o que a torna tão desconhecida: sua versão free não permite que você venda/distribua seus games. Sucks!
5. Conclusão
Uma boa engine, barata, com uma excelente IDE, embora alguns contratempos.
É bastante produtiva, mesmo utilizando uma “linguagem não O.O”, pois o essencial é feito igualmente a Unity3D: scripts de comportamento.
A possibilidade de reuso de código é um pouco menor que a da Unity3D, embora ambas utilizem a idéia de scripts de comportamento, pois na Shiva3D é muito mais provável aparecer scripts interdependentes que na Unity3D. (Só vai usando para saber do que falo)
Até o momento me parece uma boa escolha. ![]()
PS.: A próxima será sobre a UNITY3D e a última sobre a UDK e por fim, um resumo das 3!





