SilverMotion Technical Specs

Simple

User friendly, yet fully functional API, designed in every step to be logical and obvious for any user. SilverMotion's software architecture wraps the abstract logic and mathematics of 3D into a user API, aimed at purely practical tasks, the very most of which require no previous knowledge of 3D mechanics from the developer. Silvermotion's goal is to deliver immediate 3D to anyone who simply wants to have it.

Multi-core CPU utilization

The very base of SilverMotion's rendering engine is a genuine multi processing system, that utilizes the fullest potential of modern multi-core CPUs. It is a next-level technology, that works fine on the simplest single-core processors as well as on the most modern ones.

Automatic keyframe animation

SilverMotion supports model keyframe animation, which gives the rendered scene dynamic look, enables the rendered models to perform specific predefined animation sequences or even play a whole scenario that the user can interact with. Putting the animation in motion is easy and simple one-step action.

Variety of spatial transformation approaches for easy manipulation of objects in 3D space

All basic transformations are incorporated. Including local and global rotation around base or given axis, translation and scaling.

Variety of automated motions

Motions automatically perform a given action with scene contents. Defining the action is intuitive. You basically need to point the type of motion - be it some transformation, animation or a custom one - and indicate its continuity or desired ending state.

Smooth groups support

Smooth groups provide the ability to render specific edges of an object smooth or sharp. For example a diamond or also many technical geometries have sharp edges, while curved surfaces and most natual geometries should appear with smooth edges. Also smooth groups provide the ability to render meshes with both sharp and smooth edges.

Importing entire scenes with models, materials, lights and cameras

Importing entire scenes with models, materials, lights and cameras directly from 3D modelling environment (Blender, 3DS Max, Maya and etc) via .3ds files - it's the easiest thing. You just provide the address to the .3DS file. SilverMotion then internally manages loading of the required resources, cameras and lights, creates materials with textures and shaders and creates an hierarchical object structure. If cameras are encounterd, one is automatically set, so the environment is immediately ready to be rendered.

Fully dynamical cameras

Cameras with dynamically adjustable position, target, FOV, lens focal distance, screen aspect ratio and projection type. Cameras in SilverMotion can be freely rolled, moved and targeted anywhere and are equipped with the standard properties of an actual filming camera as their aspect ratio, lens' focal distance and Field Of View, enabling to perform different real-time camera motion effects.

Unified Dynamic Lighting for vertex and pixel shading

SilverMotion provides a single set of lights, that unify vertex and pixel lighting. That means these same lights will illuminate in vertex and pixel shaders.

Unlimited complexity of the scene environment

You can load and keep active as much objects as you want in SilverMotion and interact with them. The scene hierarchy tree has no limit of complexity and is optimized so that its complexity itself has little impact on performance.

Unlimited number of texture layers

Unlike hardware rendering engines, SilverMotion has no limit of the texture layers that can be mapped onto a mesh in a single pass though many textures mean more CPU demand.

Unlimited number of dynamic lights in the environment

Unlike hardware rendering engines, SilverMotion supports unlimited number of active lights.

Hierarchical structure of environment

Environment in SilverMotion has hierarchical structure, which enables assembling of complex logical objects.

Scene rendering optimizations

SilverMotion internally performs a variety of scene and rendering optimizations (like view frustum culling) in order to deliver maximum performance and provide the ability to display as much rich and complex scenes as possible.

Between-shader alpha and color blending

SilverMotion can perform alpha and color blending between shaders. Basically, that means blending between textures, lighting and any other shader-generated layers.

Fog

A standard effect that can be used for simulating fog or other effecs like depth-fading or smoothly culling distant objects in scene.

Bilinear texture filtering

By default SilverMotion renders textured meshes with full-frame bilinear filtering. However, texture filtering can be switched at any time with nearest neighbour if performance is preferred than visual quality.

StackShading

This is SilverMotion's shading architecture. Although shading in its essence is a complicated and a highly technical matter, StackShading is SilverMotion's approach in delivering a versatile and in the same way naturally easy way for creating custom shaders by anyone without the need of additional training. It represents shaders as simple-logic layers that perform some effect and that can be intermixed together.

Normal map bump mapping

Shading capability that renders an object as having a bumpy surface. This is a technique used in modern games for achieving more realistic look. SilverMotion supports both normal and bump maps. Recognition and managing the two types is automatically handled internally.

Automatic normal map generation

SilverMotion can automatically generate normal map from a bump or color map, which means you can have normal mapping on an object even if you initially don't have the required normal map.

Refraction mapping

Shading capability that renders an object as translucent with optical refraction, appearing as it is made of glass-like material.

Reflection mapping

Shading capability that renders an object as having a shiny and reflective surface. Sometimes referred to as sphere mapping.

Cell shading

Special set of shaders in SilverMotion that provide a cartoon-like effect on rendered meshes. Also cell shaded environment mapping is available. Cell shading is a techniquie supported by most of the modern hi-end graphic engines and is commonly used when aiming to deliver more than the typical visual experience in 3d graphics. A typical example of cell-shading game is Zelda Wind Waker for Nintendo GameCube.

Fast and easy screen picking functionality

Just by specifying a set of screen coordinates (in 2D) you can get exact and thorough information for the object there among the whole scene geometry

Rendering onto a user-defined background picture or color gradient

A simple functionality, providing the ability to render onto a user-defined background image or onto a four-point color gradient. If necessary, the given background image is automatically interpolated and filtered in order to fit the screen.

Purely Software

SilverMotion's rendering engine is entirely in software, which means it's 100% compatible and independable from any GPU hardware. No matter what shaders you're using, how many lights you have, what are the textures' sizes and etc, you can be sure the 3D content you're displaying will look the same on any machine.