English
Italiano
II - Shiva3D
Name | Shiva3D |
Website | http://www.stonetrip.com |
Rendering | OpenGL 2.1*, OpenGL ES2.0*, DirectX 9, DirectX 11** |
Audio | 2D and 3D |
Physics | ODE Physics engine |
Editor | Yes - Shiva3D itself is the editor |
Languages | C++, LUA 4.0 |
Target Platforms | Everything! |
* = I could not find a page that explicity state which version of OpenGL it uses.
** = from the upcoming version 2.0 of the Engine. Not available as of writing.
I don't have an answer to this question.
What they lacks in marketing they feature in coolness. Can I use this word? No? Who care!
Shiva3D is what Unity should really be: full of features, that works. If you want to compare every feature of the engine they seems less powerful then Unity. However they works.
An example:
Unity feature a really cool pathfinding that uses modern navmeshes, off-links, multiple layers... Shiva offer a "common" A* graph navigation.
Much better Unity, isn'it?
Not at all: you can't modify the navmesh at run-time in Unity. What if you add an obstacle to the mesh on Unity? If it's static you can define parts of the navmesh that can be turnet on and off but what about if a rock randomly fall on the ground? Or even better: think about an House editor (like in Fable). You don't know a priori where the user will place an item. With the base path-finding in Unity you can't do it, you have to rely on nasty tricks or external tool in the Asset Store.
Should I really talk about the UI system?
No, I don't think so. Any Unity user know the horribad experience of developing an User Interface on Unity. Should I mention that Shiva have a powerful integrated 2D system?
Fantastic!
I could compare every feature of both engine and still find Shiva winning.
And most of all Shiva export pratically everywhere!
The game logic can be edited using the integrated LUA editor which is good for most of the needs, however if you find it too restricting you can attach C++ code to the Engine and use the Authoring Tool to compile everything and use external libraries. To be honest it's a bit tricky use C++ code but it's a great freedom.
Shiva can be expanded through the use of plugins. There are many plugins available in their Store which is similar to Unity's one. The plugin system is a little limited but still a lot useful.
The engine integrate many advanced features like a Terrain Editor, a good particle editor, many advanced techniques like the Ambient Occlusion, hard and soft shadows and so on. Opposed to Unity, Shiva's features are not editable. This means you cannot access the shadow shader or (easily) add your own Ambient Occlusion. While this may sounds bad, it is not, because it gives more control to the engine when it works on optimizations and quality settings (the LOD system, the quality settings and similar, are all controlled by the Engine easily).
Shiva Forum - StoneTrip
To summarize: someone stated that the company was in liquidation so people thought of the end of the company and consequentially of the engine. But their main moderator, Broozar cooled down the spirits with some juicy news (in that post and in more others).
Now it seems that the company changed their (legal) name but it's still alive and, most of all, the long-wait for the newer and highly wanted version 2.0 is coming to an end (yes, I know this has been stated every year, I still have hopes).
EDIT:
It became true! The first 2.0 beta is available to all the previous clients who own a license for Shiva 1.9.2! This is great!
This engine share the concept of "prefab" as for other engines: you pack one or more entities, which can be a model,a particle, etc, then you can attach to it scripts to give them the behaviours you script.
An important concept is the one of the AI States: in pratice every script is always a State Pattern which three main states: OnEnter, OnLoop and OnExit, which are, all of them, loops. The concept may sound strange at the beginning but instead it is really useful because, if you think about, all the logics work using these states (well, almost).
You can still define functions and logics outside of these loop but you call them from one of these.
- Feature-rich. Think about a tool or a feature you need: Shiva has it. And it works.
- Everything is integrated, works and it's easy to use.
- There is a [Store] that gives you a lot of assets, as well as good documentations on their website.
- The Engine can export for a lot of target platforms.
- The plugins are great but a little hard to develop.
- Version 2.0 is still in development.
- Working with just LUA sometimes is very limiting, but integrate C++ code is tricky.
However while the old version is still valid, until version 2.0 is out I'm still reclutant to adopt it as main engine.
1 comments
Yeah ShiVa3D is awesome.
Great article!
Yes LUA can feel weird to start with if you're coming from Java or C/C++, but as you say it's not limiting, in fact one can follow OOP methodology with it and make very robust solutions.
I'm currently writing a UDP multiplayer natice C++ plugin for ShiVa, currently builds for PC and Android.
Also ShiVa engine runs relatively fast, you can throw a few more tris at the screen on any given hardware. And memory management.... well I've used many libs in my years, but this engine when running does not leak one byte. Yup it's a gem of an engine for sure and the tools to use it are also extremely cool!
ShiVa2 is gonna be incredible, I can say from my Beta2 experience, it's fast (faster!) and is going to enter some sublime techno singularity because the toolset is now scriptable, devs can extend the tools with very powerful new features!
Add new comment