ShiVa Editor has a very particular interface that may seems odd at a first, in fact because it is different. Why different ? To be more powerful than any other tool.
There is something similar with Autodesk Softimage, for people coming from 3dsMax for instance, softimage is a headache but only at start and once the interface own its user, well, 3dsMax seems so heavy, slow and unusual.
It’s the same with ShiVa, so one advice, don’t give up after few clicks, give the time ShiVa to deliver its messages, digest and enjoy!
Main concepts
Desktops
ShiVa desktops are like in Linux or MacOS, you can access the same data but with a different view. Each desktop contains a set of modules you can setup as you want.
The main top bar of the Editor contains 3 menu items, a button to mute sounds, and 5 buttons to switch between desktops.
Each desktop is fully customizable: modules count, position and type.
To switch between desktops, simply click on its name or use the keyboard combination Ctrl+Alt+F1 to F8 ( you can add up to 8 desktops ).
To setup a desktop, select it then go to Desktop > Desktop option, and change module count, configuration and name.
Modules
ShiVa Editor comes with 19 modules ( 20 for the advanced edition ), each with a specific function. A module is a set of tools designed to perform a precise type of action like creating a shader, analyse the application performance, create a terrain,etc.
The square icon allows to select a different module
Please note that you can’t have two time the same module on a desktop, so when you want to load a module in a position, if this module is used in another position, modules will be swapped.
ShiVa Editor 1.9 gives the ability to detach one or more modules to be used on another desktop for instance, once detached, the module is no longer linked to a desktop but when you wan to re-attach the module, it will be re-affected to the desktop it came from.
Click on top right icon ( the one with the arrow) to detach the module.
To set a module full screen, press F5 or click the top right icon.
When you exit ShiVa, modules are re-attached first, then ShiVa exit so you will not keep your configuration with module detached uppon next launch.
Here is a brief description for each module:
AI Model Editor
Allows to declare variables, functions, states and handlers. Note that you cannot declare functions or global variables directly in the Script Editor, this to have the functions, handlers, etc.. available in other modules like the HUD Editor, Attributes Editor,etc... => Works with the Script Editor
Ambience Editor
To add post render effects, compute lightmap, change optimisation settings,etc.
=> Works with the SceneViewer ( in scene mode )
AnimBank Editor
Object animation are stored in AnimClip, an AnimBank contains the AnimClip, and is an object controller
AnimClip Editor
To edit AnimClip ie animation, display the animation TRS curves
Attributes Editor
To edit or view object properties, attributes and controllers, when you add a dynamic controller for instance, the attributes of the controllers will be available in this panel => Works when a scene is opened and an object selected
Data Explorer
The assets manager, import your data ( 3d models, textures, sounds ), create new models and empty scene, export your game. => Works with almost all the other modules
Game Editor
Your application masterpiece, will gather all the assets together, models, scenes, ai etc... define here your main script and export your game.
HUD Editor
Create here your 2D interface with a WYSIWYG Editor, define label, button, slider, progress bar,etc. => Works with the Scene Viewer
Log reporter
When a game is running, display all the message, warning and error sent by the game, the Log Reporter is also used by the editor itself to display message from various action like import, export,etc.
Material Editor
WYSIWYG Editor, create your shaders with few click. => Works with the Scene Viewer
NavMesh Editor
Used for the built-in pathfinding, allow to compute a navigation proxy mesh on selected object => Works with the Scene Viewer when an object is selected
Particle Editor
Create fire, smoke, snow effect. Click the play button to see the currently opened particle in action. => Works with the Scene Viewer
Performance Reporter
Only available in the Advanced Edition, this module allow to debug a running application and find the bottleneck. => Works when a game is opened and running.
PolyTrail Editor
Create sword movement, tires burn on the road,etc.Click the play button to see the currently opened trail in action. => Works with the Scene Viewer
Scene Viewer
Display your 3d contents, scene or model. Note that the Scene viewer has tree different modes, scene view, model view and preview, in model mode, the Ambience Editor is not available, the preview mode is only for the HUD, Particle and Trail WYSIWYG edition.
Script Editor
The place to write the script. Code coloration, auto-completion, direct link to the documentation, the Script Editor use the features-rich scintilla system to enhance the scripting experience. => Works with the AI Model Editor
SoundBank Editor
Like the AnimBank Editor, allows to collect sound in one place. The AnimBank can be affected to an object, note that sound and music are two different things, music are used in the Ambiance Editor.
Terrain Editor
Originally designed to create terrain from heightmaps, create vast environment using the built-in mesh optimisation system.
Web Navigator
Embed a web brower in the editor to have a direct access to the documentation
Drag'n'drop
Most of the modules support the “drag’n’drop” system, some examples:
To open a scene, simply drag’n’drop the scene from the Data Explorer to the Scene Viewer.
To add an AI to an object : drag’n’drop the AI model from the Data Explorer to the object in the Scene Viewer.
To affect a material on an object : Drag’n’drop the preview from the Material Editor or Data Explorer to the object in the Scene Viewer
To add an AnimClip in an AnimBank : Drag’n’drop the AnimClip from the DataExplorer to the AnimClip Ed.
Fast filter
Some modules have a fast filter ( DataExplorer, AIModelEditor, GameEditor>Environement, SceneExplorer ) that allow to sort data, function of its name, with a good nomenclature it will become quickly a must used.
3D view manipulation
How to use the scene viewer...
The manipulation of the camera in the Scene Viewer is accomplished by the ALT key and the three mouse buttons:
- the left button for the rotation
- the middle button for the pan, or left and right button
- the right button to zoom
A panoramic mode is also available by pressing only on the middle mouse button and using the Q and W keys to move forward and backward ( Shift to speed up ).
Navigate with the mouse :
Alt + right clic : Zoom, move the mouse to zoom or unzoom.
Alt + Clic : rotate the camera around the clic point.
Shift + Alt + Clic : rotate around the selected object pivot.
Alt + middle click or Alt + right and left click : move the camera.
When an object is selected, scrolling the wheel allows access to the pivot transformation
To get information about a selected object, load the Attribute Editor and access to its name, TRS, lightmap information, view its attributes, controllers, etc.
Note: to access the active camera attribute, select Display>active camera attributes.
You can lock the Attibutes Editor to a particular object, select the object and go to Display>lock on current object attributes
Default lighting
Model mode
When you open a model, the scene viewer is in model mode, you can’t access to the Ambience Editor and the background color is grey, in this mode, the camera has a dynamic head light so if you change some dynamic lighting attributes in the Material Editor, you will see the result directly.
Scene mode
You can access to the Ambience Editor and the background is purple, in this mode, there is no default light and the camera has no head light, so if you put a model directly in the scene, it may appear all black, you have to add a light first ( model folder > d’n’d a light in the scene ).
Also, when you import a model, materials are created but lighting options are not set, so even if you have added a dynamic light ( the light icon is yellow, orange is for the precomputed one ) the object will remain black until you set the lighting option on in the Material Editor ( press M and pick the object to select its material ).
Special Color
Flash Pink no shade
This is the default color when there is no material affected on the object, create a new material and dragn’n’drop it to the object.
Pink gouraud shaded
Appears when you set an objet as collider, you can disable this effect in the Scene Viewer > Display > Object filter > Collider Attribute.
Black
not a special color but a normal behaviour, please read the section about default lighting.
Global copy-past
On a resource, will copy its name
On a handler, will copy "aiName","aiHandler"
On a variable, will copy this.variablenameY ( )
On a function, will copy this.functionName ( functionParameters)
On a HUD action, will copy HUDName.componentName
on a HUD component, will copy HUDName.actionName Color dialog
This dialog sets the colour to be returned when the 'OK' button is clicked, and is used to generate colours in several different areas in ShiVa.
Misc
Color dialog
There are several options available for selecting the colour:
Click in the large window to the left of the dialog to select the colour.
Type the hexadecimal value of the colour in the 'Ref:' field.
Type the 'Red:', 'Green:' and 'Blue:' values of the colour into the respective fields.
Pick a previously saved colour from one of the boxes at the bottom right of the dialog.
Pick a color on the entire screen by clicking the eyedropper
Note: any of the above methods will populate each of the others.
To change the brightness of the colour, the slider bar in the middle of the dialog can be used, with brighter colours towards the top of the slider, or you can change the value in the 'Lum:' field (the higher the value, the brighter the colour).
The 'Hue' and 'Saturation' of the colour can also be changed by typing values into the respective fields.
Both the currently selected colour and the new colour will be displayed in the 'Current Color' and 'New Color' fields, and the current colour can be picked by clicking in the 'Current Color' field.
Finally, preferred colours (such as internet colours) can be saved to the 12 boxes to the bottom right of the dialog. This can be achieved by dragging the colour from either the 'Current Color' or 'New Color' fields into one of the 12 boxes.