Merlin3D

A71df8ab 5ec7 47a1 8208 452e0d0341d3

Website:
http://merlin3d.wordpress...

Developer:
Balázs Jákó

Launched:
Jan 01, 2010

Status:
Active

Supported Platforms:
Windows, Linux

Languages Written In:
C/C++, C#, Lua

Languages Supported:
C/C++, Lua

Graphics APIs:
OpenGL

Rating:
Not reviewed yet

Editor:
00000000000000000000000000000000 balage

Merlin3D is currently a hobby project, but aims to be real game project in the future.

Balázs Jákó started the development several years ago with the intention of learning C++, OpenGL, design patterns, algorithm and game programming, etc.

Supported Features

General

  • Properties on all accessible engine objects
  • Trigger-based engine callbacks
  • Own system classes (DateTime, File, etc.) with specific OS implementations
  • Own template class set (containers, strings, smart pointers, etc.)
  • Independent from STL or Boost
  • A* pathfinding with automatic navigation graph generation

Lighting

  • Fully dynamic lighting: directional, omnidirectional and spot lights
  • Real-time volumetric light shafts

Shadows

  • Dynamic shadows
  • Shadow mapping techniques: simple, PCF, CSM, VSM
  • Shadow map flicker reduction in CSM with directional lights

Shaders

  • “Effect” XML files: shaders with parameters
  • Uber-shader support
  • Automatic engine built-in variable binding
  • Console variable binding
  • C++ and Lua API
  • Optimized rendering with minimized GL state changes

Meshes

  • Supports Blender ** imports models, scenes, lights, properties, etc. ** automatic scene, effect and model file generation, no manual work is required

Scene Management

  • Hierarchical scene graph, nodes are organized in a hybrid structure (list, child-parent relations, and spatial index)
  • Scene elements: mesh, camera, light source, sound source, terrain (heightfield), particle system, empty object, light probe, sector, portal, etc.
  • Automatic light probe placement
  • Quadtree, Octree. Spatial index is replaceable even in runtime.
  • Spatial query support (objects in range, nearest object of a type, ray hit tests, etc.)
  • Hierarchical view frustum culling
  • CHC++ occlusion culling
  • Portal based occlusion culling with automatic portal and sector connectivity graph generation for indoor scenes

Sound

  • Wrapper around OpenAL
  • Sound management
  • SoundScape support: background noises, looping, random play with varying volume, pitch, etc.

UI

  • OS/API independent UI element class set (not complete): Label, Button, Panel, Slider, Desktop, Window, etc.
  • XML UI declaration files
  • Skinnable: XML skin description files, controls are built from primitives (boxes, texts, colors, textures, etc.) defined in skin files, skin is replaceable at runtime
  • Automatic GUI layout management
  • Rendered with 3D API, independent from any OS-specific GUI API
  • Scriptable events
  • C++ wrapper class generator included

Scripting

  • Fully script-based game logic
  • Lua support
  • All scene and game objects are accessible in the scripting environment
  • Engine objects can be decorated with properties

Input

Keyboard & Mouse support

Special Effects

  • Supports easy setup of rendering and post-processing passes using XML descriptor files
  • Data dependency graph: nodes are passes, links are dependencies between passes Particle systems. High Dynamic Range Rendering BPCEM environment reflections Built-in post processing effects: MSSAO, Bloom, lens flare, vignetting, crepuscular rays, color grading

Licensing

License Name Price in $US Source Code Included?
Other Unspecified No

This engine hasn't been reviewed yet. Be the first!

Write a Review

Suggest Edits

Last edited Sep 29, 2013 at 05:02