The Apparatus (folow us on Facebook) is a game built on custom engine writen in Java from zero. Thanks this I can add any capability to the engine, whatever I want. For now the engine is in 40% complete but it's possible to build whole platform game using it.
Below we can see how the character's look is changing after manipulate graphics options.
- Shadow quality - controls shadows casts by interactive objects:
- off (hide all interactive shadows)
- medium (show simple shadows without filtering)
- high (show shadow with filtering like: blur, nonaffine transform)
- Shading -- controls shading interactive objects and effects:
- off (interactive object and effects like waves are not shading)
- creature (interactive object are shading, but no effects)
- creature & effects (all interactive objects and effects are shading)
- Dynamic light -- controls whether dynamic lights on or not:
- off (dynamic lights are off)
- on (dynamic lights are on)
- Reflections -- controls reflections in water or other surfaces:
- off (reflections are off)
- medium (reflection are on, but without filtering)
- high (reflection are on with all defined filtering)
- Effects -- on or off any environmental effects like waves, dust or smoke:
- off (effects are off)
- on (effects are on)
The engine can detects all devices that are able to use OpenCL library. This devices' list we can find in OPTIONS -> ADVANCED GRAPHICS -> OPENCL DEVICE. For now the OpenCL library is using for pixel filtering (i.e. for dynamic light). The main GPU can be used for hardware acceleration (DirectX or OpenGL). If there is another GPU in PC, it can be used in the same time for OpenCL calculation. So two GPUs can be used in the same time. For now, there isn't enough sophisticated pixel filter (or other task) for OpenCL device, that we can see clear a efficiency improve. Above short video about this issu.