
Vire Life Engine™
Vire Life Engine™ is a feature-rich 3D engine optimized for implementation and acceleration of the 3D User Interface (UI). The engine is flexible and usable also for example games. The engine utilizes OpenGL ES 2.0 API to implement and accelerate stunning shader-based visual effects, such as normal mapped surfaces with per pixel image based lighting.

Designer of the UI doesn't need the knowledge of OpenGL ES 2.0 nor shader programming, although, it's entirely possible also to write custom shaders. All visual effects can be configured via the flexible material system, which then auto-generates an optimal OpenGL ES 2.0 shader code. Graphical assets and materials can be authored using world-class third party 3D modeling software, such as Luxology Modo, and then exported to an optimized Vire Labs format. Designing and building the user interfaces is made easy with the built-in Lua-based scripting system that allows binding of the graphical assets into working UI elements. These elements are not restricted to the normal 2D plane, since Vire multi-touch gestures work with arbitrarily oriented 3D surfaces.
UI element library allows rapid development of widgets and new UI components. UI look is decoupled from the feel by allowing theming of the UI elements. In case of Vire Life Engine™, theming can be anything from changing the color of an element, to changing the whole shape, form and material of the element. Feel can be configured separately by tuning parameters of the multi-touch gestures, such as the friction of the kinetic scrolling. UI Widget development is further accelerated by Vire Life Engine™ social data stream abstraction. The engine abstracts the access to the mobile device data such as contacts, SMS messages, and other social data. This data can be readily used in development of widgets since the engine provides events when new messages, calendar events, twitter messages, etc. have arrived.
Features
- 3D multi-touch gestures
- Stereoscopic 3D
- Advanced shader based visual effects
- Flexible material system
- UI element library
- Platform agnostic social data streams
Visual Editor
The Vire Visual Editor is a WYSIWYG UI editor we are actively developing, which makes it even faster to develop stunning user interfaces using the Vire Life Engine. Using the Visual Editor, it’s trivial to browse through the graphical assets developed in a 3D modeling software, as well as to build complex widgets from individual UI elements. Visual Editor also makes it possible to build themes and user configurable parameter sets, for example, a wallpaper texture or a color theme. The Visual Editor also allows you to fill in the required code for UI elements in Lua scripting language and to instantly see the effect on screen using the Vire Device Simulator. With a press of a button the content can be packaged and deployed on a real mobile device.
Vire Labs Quality Assurance System
Vire Labs Quality Assurance System (VLQA) is a fully automated regression testing system designed specifically for graphics and UI development needs on mobile devices. VLQA automatically builds and installs test cases on mobile devices, runs test cases in parallel on mobile phones, collects results into a centralized database and reports testing results via e-mail and web interface. VLQA includes support for version control systems and can handle testing of mobile devices. Mobile devices can be hot swapped in and out of the system. Test serve automatically detects attached devices and includes it into the test runs. Test reporting is programmable and features like custom image comparison and custom log file parsing can be integrated easily.
The test system has an automated power measurement feature. When certain tests are run, it switches off the charging power and measures the rate at which the battery level changes. This allows fast measurements of the power consumption. Distribution of testing load can be achieved by using master-slave server configuration, in which master server has command and control over one or more slave servers. All servers can have heterogeneous set of mobile devices attached. Results from devices will be stored centrally, visualized on a web page, as well as compiled into summary e-mails.

