Digital Omerta – 3D Game Engine
The Digital Omerta™ Game Engine is a built from scratch advanced 3D Game Engine from MaxLogic. This engine technology, is the first commercially available Advanced 3D Engine written in the fully object oriented Borland Delphi language. The Digital Omerta™ Game Engine has the ability to facilitate fast, advanced, high performance real-time content rendering, as well as scene management and collision detection features. The Digital Omerta™ provides not only a comprehensive multi-platform 3D Engine, but also valuable and comprehensive support service including direct connection to the MaxLogic development team. With a paid Digital Omerta™ license, your team receives support for the duration of your development project and for a 12-month period after shipping.
- Full 3D using Microsoft’s DirectX
- Point, Bilinear, Trilinear and Anisotropic Filtering
- 2x/4x/8x(16x) AntiAliasing
- Multitexturing for main and detail textures
- Animated Textures and fast AVI rendering to texture
- Texture Settings : Position, Scale, Tile, Flip, rotation
- Environmental Mapping
- Alphablending (with variable values)
- Color keying (using alphachannel from TGA files)
- Vertex and Pixel Fog
- Projected Shadows using Stencil Buffer.
- Indexed Vertex Buffer
- AABB-Frustum, Backface and OOBB Culling to reduce amount of objects and vertices drawn.
- Vertex-Tweaking / Blending (Software) and Vertex Shader Interpolation (Hardware Acceleration)
- unlimited number of static and dynamic Lights
- Lightmaps for Static Lights
- Ambient Light (color)
- Point Light (color)
- Spot Light (color)
- Smooth Shadows (2x Gauss Blur)
- Coronas (Color)
- Fully compatible with the data format of 3D Studio MAX, making it possible to import geometry, lights and animation created in 3DSMAX
- Dynamic Memory Usage – almost unlimited objects, players, sectors and particle systems can be used in one single map
- Fast Collision detection (world, object, meshes, and players) based on QuadTrees
- Dynamic weather effects (Snow, Rain, etc.)
- Highly customizable particle system using Point Sprites and Billboards
The camera can be controlled with keyboard and/or mouse. It has complete Freelook capabilities and provides stepless Zoom and Rotation. The camera collides with objects on scene, and adjusts its position to avoid those obstacles.
LOD – Level of Detail
Our Engine has had to render huge amounts of objects/models at the same time. We use lowpoly models for camera zoom-outs and more detailed models for camera zoom-ins. The game-models will have 0,2 – 5 K polygons. With this, we are able to render an entire city, while driving cars for instance, and an extremely large number of characters walking about while still preserving the quality of all objects in view.
We use Vertex blending for most animations. All textures are compressed to speed up loading times and to enhance memory usage. Entire cities and worlds are dynamically “cached up” on the HDD, which allows Digital Omerta™ to manage and maintain enormous maps. We are also able to create swap files to cache textures, model data and audio files for faster access.
The Digital Omerta™ environment is based on a QuadTree and FVD for visibility checks, so our Engine renders only what is currently on screen. The QuadTree gives us the possibility to speed up collision checks as well.
Digital Omerta™ uses particle systems to simulate weather effects such as rain, wind, snow and also for effects such as explosions, fire, smoke and so on. Motion Blur is also used in fight scenes. With the combination of the particle systems, volumetric lighting, dot3 bump map shading, volumetric fog and environmental mapping, Digital Omerta™ assist the design team with their ultimate task of creating a realistic and exciting looking game world.
The Particle Engine uses Point Sprites as the default displaying mode, but can also support billboards as an alternative. Tests perfectly with major Graphics cards such as the nVIDIA GeForce family of products. The amount of particles needed to achieve effects is quite low. Realistic smoke can be designed within 30 to 60 particles, but effects containing thousands of single particles and plenty of movement algorithms are being supported as well. The performance cost is marginal, due to controlled particle update techniques of each emitter.
Digital Omerta™ Game Engine is capable of displaying a variety of particle effects, such as smoke/steam, rain/snow, fire, water and others. The sprite movement exhibits tremendous flexibility from simple one-point effects to complex position, and texture changes. The emitters are bound to game objects, which will inherit dummy sub-objects controlling position and direction of the parent object’s particle systems (e.g. car exhaust or cigarette smoke). Designs involving particle effects, and a variety of movement, colors, or texture changes can be set easily via an editor tool.
Digital Omerta™ has Dot3 product Bump map implemented. It also has Environmental Bump Mapping.
The water effects used in the Digital Omerta™ Engine are built on animated meshes with animated textures for less graphic memory expanse and still looks awesome.
The Engine has two types of shadowing implemented in the product; Matrix-based shadows, which render a model’s shape onto a plane, and complex Stencil-based volumetric shadows. To avoid problems with semitransparent Matrix-based shadows, and the fact that they add themselves and appear darker where more shadows meet at the same point, we render them without any alpha onto a texture and render that texture on the scene with an overall alpha. Those Shadows are calculated considering the models’ textures and Transparent Segments don’t cast Shadows.
The volumetric shadows, although a great visual effect, are also quite heavy on performance, because they triple the amount of vertices rendered. Digital Omerta™ considers them only as Very High Detail Setting and for non-static objects only (compared to other games, that make use of this technique, we feature multiple times the number of objects simultaneously rendered on screen and thus cannot afford to render all shadows as Volumes.
AI Structures Overview
The AI of the city and its inhibitors bases on a Hive system technique. The Hive represents the collective avatar of all citizens. Each one will have his own ‘will’, but will be controlled by the Hive, and the Hive will be influenced by the appropriate game unit.
Our Digital Omerta™ Game Engine handles collision detection using fast sphere tests and additional more accurate Object Orientated Bounding-Box (OOBB) tests to determine the collision point after the first test turned true. When necessary, as third step, the exact collision point can be handled by polygonal checks. This technique gives us very fast and still accurate collision detection scenario. The collision detection system is based on a QuadTree division, reducing the number of total tests needed.
Digital Assets Creation
Mesh, mapping, animating, placing visuals is very intuitive in the Digital Omerta™ Game Engine. The meshes are exported from ASE files. This format gives the designer much more information then the usual 3DS files. The models are converted into our own format named “GMF”. This file stores all the needed information such as vertices (which are indexed to rise performance – we do not render duplicate the same vertex), texture coordinates, animations and some additional information.
The DigitalOmerta™ Game Engine uses DirectX Vertex-Lightning and creates a light-mesh to display the light cone. All light sources (street lanterns, flash lights, headlights etc.) light up objects and cast shadows.
Following you will find some Developer Videos. Please don’t mind the bad video quality. Those videos are a bit old, used only in-house. But we wanted to show you something anyway.