Horde3D

Free and open source graphic engine for your Mac
Download

Horde3D Ranking & Summary

Advertisement

  • Rating:
  • License:
  • Freeware
  • Price:
  • FREE
  • Publisher Name:
  • Nicolas Schulz
  • Publisher web site:
  • http://www.horde3d.org
  • Operating Systems:
  • Mac OS X
  • File Size:
  • 3.3 MB

Horde3D Tags


Horde3D Description

Free and open source graphic engine for your Mac Horde3D is a small open source 3D rendering engine. It is written in an effort to create a graphics engine that offers the stunning visual effects expected in next-generation games while at the same time being as lightweight and conceptually clean as possible. Horde3D has a simple and intuitive interface accessible from virtually any programming language and is particularly suitable for rendering large crowds of animated characters in next-generation quality. NOTE: Horde3D is licensed and distributed under the terms of the GNU Library or Lesser General Public License (LGPL). Here are some key features of "Horde3D": General Features: · Powerful graphics engine designed to meet the requirements of next-generation games · Shader driven architecture with SM 2.0 compatible hardware as a minimum requirement · Simple and lightweight overall design with very few dependencies, avoiding complexity where possible · Clean object-oriented C++ code · Simple and intuitive C-style DLL interface for easy integration with virtually any programming language · Cross-platform compatible using OpenGL as rendering API · Suitable for Augmented Reality (AR) and stereo applications · Functionality for easy integration with game engines and other middleware like physics engines Resource Features: · Robust resource management for avoiding unnecessary loading of data · Garbage collection for handling resource dependencies · Interface for loading data from files, streams or any type of archives · Dynamic reloading of resources for more efficient development · Loading of models and animations from optimized binary formats · Loading of materials from a custom XML format · Loading of shaders from a custom XML format including vertex and fragment shaders written in GLSL · Loading of 2D and cubemap textures in jpg, png, tga, bmp, psd and HDR formats · Loading of pipelines to quickly switch rendering techniques (e.g. from forward to deferred shading) Scene Features: · Scene graph structure with hierarchical transformations and bounding volumes · Unified scene system where world, models and skeletons are just scene graph branches and no special objects · Loading of scene graph branches from XML files with complete orthogonality to API functions · Optimized frustum culling on the scene graph using AABB trees · Occlusion culling · Level of detail support · Possibility to attach scene nodes to joints (e.g. for character props) · Access to vertex data for collision detection and interoperability with physics engines · Ray collision queries and node picking Animation Features: · Unified animation system working directly on scene graph · Keyframe animation for joints and meshes · Skeletal animation with up to 4 weights per vertex for articulated models · Layered animation blending and mixing using masks and additive channels · Inter-frame interpolation for smooth animations · Access to joint data for dynamic animations and ragdoll physics · Morph targets for facial animation and lip synchronization Visual Features: · XML based customizable rendering pipeline with allocatable render targets and commands for rapid testing of different rendering techniques · Postprocessing framework for effects like bloom, DOF or motion blur · Support for forward rendering and different deferred shading techniques · Support for High Dynamic Range (HDR) textures and lighting · Support for almost all modern rendering techniques, including normal-mapped phong lighting and parallax mapping · Support for real-time reflections and other techniques that require several cameras for rendering · Realtime shadows based on Parallel Split Shadow Maps · Shaders for materials and light source interaction · Software skinning and vertex shader skinning for rendering hundreds of animated characters · Fully integrated particle systems that can cast shadows and receive other effects like motion blur · Overlays for rendering GUI elements and font Tool Features: · Powerful Collada Converter for importing model data and animation from many widely used modelling packages · Calculation of tangent space basis for bump mapping · Optimization of geometry for GPU cache What's New in This Release: · Refactored shader system: new shader file format without XML CDATA sections, support for #include directive and automatic permutation generation based on flags. · Replaced texture unit configuration in materials by named samplers (pipeline command BindBuffer was changed and UnbindBuffers added). · Added more configurable render states to shader contexts. · Added configurable sampler states to shader format (resource flags NoTexFiltering and NoTexRepeat were removed). · Adapted all sample shaders to refactored shader system and implemented a single übershader for models. · Refactored LOD system: models can have LOD meshes now (Group node params MinDist and MaxDist were removed). · Optimized scene management by implementing a basic spatial graph. · Optimized performance of adding nodes to large scene graphs. · Added support for loading DDS files (cube maps must be stored as dds now; vertical cross layout no longer supported). · Merged Texture2D and TextureCube resources to a single Texture resource. · Removed POT conversion of NPOT textures. · Added color support for overlays (added shader uniform and modified API function showOverlay and utility function showText). · Extended utility function showFrameStats. · Changed overlay coordinate system origin from bottom-left to top-left in order to make overlay system more intuitive. · Exposed camera transformation to pipeline fullscreen-quad passes. · Added nicer looking info box for frame stats. · Added engine option DumpFailedShaders for dumping corrupt shader code to a file. · Added API function getNextResource for iterating over resources. · Added API function finalizeFrame which should be called after all rendering for the current frame has been done. · Added API function setMaterialSampler. · Replaced API function resize by setupViewport. · Added API function checkNodeVisibility to find out if a node is visible. · Renamed API function calcCameraProjectionMatrix to getCameraProjectionMatrix since it just returns the matrix now instead of recalculating it. · Renamed AnisotropyFactor to MaxAnisotropy in EngineOptions enum. · Renamed resource Effect to ParticleEffect in order to avoid confusion with shader effects (also adapted emitter node params and default file extension). · Did many smaller bug fixes, code cleanups and optimizations in engine core. · ColladaConv update: Removed shader name command line parameter since it is usually not required with übershaders. · ColladaConv update: ColladaConv writes skinning shader flag to materials when the model has joints. · Added support for node libraries to ColladaConv. · Added support for polygon tags to ColladaConv.


Horde3D Related Software