Lightfeather 3D engine

from Wikipedia, the free encyclopedia

Lightfeather 3D engine
Basic data

Current  version 0.9.6
( June 20, 2011 )
operating system Windows , Linux , macOS
category 3D graphics engine
License zlib
www.lightfeather.de

Lightfeather is a platform-independent free graphics engine written in C ++ and using OpenGL for rendering. The engine has been in development since May 2005; the first public version was presented on October 7, 2005. The project started as a spin-off from the Irrlicht Engine , but over time all components were rewritten from scratch. Applications that are developed with Lightfeather can run on Windows , macOS and Linux , while the extremely liberal zlib license also allows use in commercial projects.

features

Lightfeather contains an exporter script which allows models to be written directly in the Lightfeather file format from the Blender 3D software . In addition, software is included to convert various file formats (e.g .: .X, .LMTS, .OBJ) into Lightfeather's own format.

Lightfeather can easily be integrated as a widget in applications that were developed with one of the GUI libraries Qt , WxWidgets and MFC .

At shaders are vertex , pixel , and geometry shader support, which in GLSL or Cg can be written.

The paging manager in Lightfeather allows the creation of very large worlds, whereby the automatic reloading of the currently required (visible) data is also possible for user-defined data.

The support of three different terrain implementations allows flexibility and adaptation to needs. One of the implementations is also supported by the paging manager. One of the implementations is loosely based on the geomipmapping algorithm, the other two use LOD based on the distance from the camera and a quadtree is used for culling.

Lightfeather supports both skeleton-based and morph animations with animation blending and skinning.

The built-in GUI uses skins / themes, so it is very easy to create your own look for the GUI.

Lightfeather contains a post-processing framework, supports HDR and MRT. Examples of post processes include blooming, motion blur, and black and white filters.

A bounding volume tree , portals, octrees , occlusion culling and potentially visible set (PVS) are available for culling invisible objects in a scene .

The resource manager in Lightfeather enables all resources (textures, materials, models) to be handled in the same way and also enables user-defined resources to be managed.

The file format enables textures , shaders, materials, models, GUI skins / themes, animations, complete scenes and post processes to be loaded from a single file. The models and animations are saved in a binary file format, while the rest is saved in an ASCII file for easy manual editing.

Tools

Lightfeather contains a terrain editor, a terrain generator, a particle system editor, a model viewer and a GUI designer.

The programming interface also contains a wrapper for the enet network library and there is another, related, project that connects to the ODE physics engine . These wrappers are used to simplify the writing of programs that use Lightfeather and one of the libraries mentioned.

Since January 5th, 2008 there is also a scene editor called Feathered, which makes it possible to create scenes which can then later be loaded into a program that uses the Lightfeather engine. Feathered also includes a material editor, an editor for post-processes and a shader editor for GLSL shaders.

history

The project was originally started under the name IrrlichtNX to provide a CVS repository for the Irrlicht engine with community-developed changes that were not yet integrated into the engine. After a few months, the developers wanted to make some major changes to the engine that would break compatibility with will-o'-the-wisps. Therefore it was decided to outsource the development to a separate engine. To make this clear, this new engine was called IrrlichtNX ++. In May 2005, a new component for rendering was completed, and in the course of this change the whole core of the engine, including resource management, its own file format, etc. a. newly developed so that the engine had nothing in common with will-o'-the-wisps. The developers decided to make this evident in the name as well, and the engine was renamed one last time and was given the current name "Lightfeather".

Web links