The Irrlicht Engine is an open source high performance realtime 3D engine written and usable in C++ and also available for .NET languages. It is completely cross-platform, using D3D, OpenGL and its own software renderer, and has all of the state-of-the-art features which can be found in commercial 3d engines.

Post feature Report RSS Materials and Shaders/Supported Formats

Here are some features of the materials and shaders and the supported formats for textures and meshes.

Posted by on

Materials and Shaders

To be able to create realistic environments quickly, there are lots of common built in materials available in the engine. Some materials are based on the fixed function pipeline (light mapped geometry for example) and some are relying on the programmable pipline (normal mapped/parallax per pixel lighted materials for example) todays 3d hardware is offering. It is possible to mix these types of materials in a scene without problems and when using a material which needs features the hardware is not able to do, the engine provides fall back materials. However, if the built in materials are not enough, it is possible to add new materials to Irrlicht at runtime, without the need of modifying/recompiling the engine. Currently supported shader languages for this are:

  • Pixel and Vertex Shaders 1.1 to 3.0
  • ARB Fragment and Vertex Programs
  • HLSL
  • GLSL


Supported Formats

Lots of common file formats are supported, and are able to be loaded (and partially also written) directly from within the engine. In this way, data is never needed to be converted for using it with the Irrlicht Engine, saving development time. The list of all supported formats is constantly growing. If you need the Irrlicht Engine to be able to load a file format which it cannot currently handle, simply raise a feature request and ask for it.

Currently supported textures file formats:

  • JPEG File Interchange Format (.jpg, r/w)
  • Portable Network Graphics (.png, r/w)
  • Truevision Targa (.tga, r/w)
  • Windows Bitmap (.bmp, r/w)
  • Adobe Photoshop (.psd, r)
  • Zsoft Paintbrush (.pcx, r/w)
  • Portable Pixmaps (.ppm, r/w)
  • Quake 2 textures (.wal, r)

Currently supported mesh file formats:

  • Irrlicht scenes (.irr, r/w)
  • Irrlicht static meshes (.irrmesh, r/w)
  • 3D Studio meshes (.3ds, r)
  • B3D files (.b3d, r)
  • Alias Wavefront Maya (.obj, r/w)
  • Lightwave Objects (.lwo, r)
  • COLLADA 1.4 (.xml, .dae, r/w)
  • Microsoft DirectX (.x, r) (binary & text)
  • Milkshape (.ms3d, r)
  • OGRE meshes (.mesh, r)
  • My3DTools 3 (.my3D, r)
  • Pulsar LMTools (.lmts, r)
  • Quake 3 levels (.bsp, r)
  • Quake 2 models (.md2, r)
  • Quake 3 models (.md3, r)
  • DeleD (.dmf, r)
  • FSRad oct (.oct, r)
  • Cartography shop 4 (.csm, r)
  • STL 3D files (.stl, r/w)
Post a comment

Your comment will be anonymous unless you join the community. Or sign in with your social account: