Dagon 0.8.0
IMPORTANT: this release doesn't work with DMD 2.081.0. Please, use Dagon 0.8.2.
Changes:
- Rendering
- Dagon now requires OpenGL 4.0 (because of need for
glBlendFunci
). A long-term plan is to move to 4.3 to utilize compute shaders ParticleBackend
- a dedicated material backend for particle systems. It supports diffuse texture, per-particle color and transparency. Particle system now usesGenericMaterial
instead ofMaterial
- Dagon now requires OpenGL 4.0 (because of need for
- Materials
- Non-opaque blending modes now work correctly for all shaders.
Additive
mode now takes transparency into account - More material properties are supported by standard shader, namely,
shadeless
,shadowFilter
,transparency
- Non-opaque blending modes now work correctly for all shaders.
- Assets & logics
- Package assets support. A package asset is a Box container that stores meshes, entities, materials (for standard shader) and textures. They can be added directly to the scene or referenced using drawable mechanism, so you can use package assets both for level geometry and dynamic objects. Exporter for Blender is available. Format specification is here
Scene
have been renamed toBaseScene
,BaseScene3D
have been renamed toScene
(there is an alias for backward compatibility)- Factory methods for creating assets (like
addTextureAsset
) are now part ofScene
(formerBaseScene3D
). New factory methods have been added:addOBJAsset
,addIQMAsset
,addPackageAsset
Entity
class now implementsDrawable
interface, meaning that entities can render other entities. This is especially useful to render multiple instances of the same package asset- Entity children are now sorted by layer when new entity is added to a scene.