183 lines
4.0 KiB
C++
183 lines
4.0 KiB
C++
// Copyright (C) 2017 Jérôme Leclercq
|
|
// This file is part of the "Nazara Engine - Graphics module"
|
|
// For conditions of distribution and use, see copyright notice in Config.hpp
|
|
|
|
#pragma once
|
|
|
|
#ifndef NAZARA_ENUMS_GRAPHICS_HPP
|
|
#define NAZARA_ENUMS_GRAPHICS_HPP
|
|
|
|
namespace Nz
|
|
{
|
|
enum BackgroundType
|
|
{
|
|
BackgroundType_Color, // ColorBackground
|
|
BackgroundType_Skybox, // SkyboxBackground
|
|
BackgroundType_Texture, // TextureBackground
|
|
BackgroundType_User,
|
|
|
|
BackgroundType_Max = BackgroundType_User
|
|
};
|
|
|
|
enum class CullTest
|
|
{
|
|
NoTest,
|
|
Sphere,
|
|
Volume
|
|
};
|
|
|
|
enum ProjectionType
|
|
{
|
|
ProjectionType_Orthogonal,
|
|
ProjectionType_Perspective,
|
|
|
|
ProjectionType_Max = ProjectionType_Perspective
|
|
};
|
|
|
|
enum LightType
|
|
{
|
|
LightType_Directional,
|
|
LightType_Point,
|
|
LightType_Spot,
|
|
|
|
LightType_Max = LightType_Spot
|
|
};
|
|
|
|
enum MaterialUniform
|
|
{
|
|
MaterialUniform_AlphaMap,
|
|
MaterialUniform_AlphaThreshold,
|
|
MaterialUniform_Ambient,
|
|
MaterialUniform_Diffuse,
|
|
MaterialUniform_DiffuseMap,
|
|
MaterialUniform_EmissiveMap,
|
|
MaterialUniform_HeightMap,
|
|
MaterialUniform_NormalMap,
|
|
MaterialUniform_Shininess,
|
|
MaterialUniform_Specular,
|
|
MaterialUniform_SpecularMap,
|
|
|
|
MaterialUniform_Max = MaterialUniform_SpecularMap
|
|
};
|
|
|
|
enum ParticleComponent
|
|
{
|
|
ParticleComponent_Unused = -1,
|
|
|
|
ParticleComponent_Color,
|
|
ParticleComponent_Life,
|
|
ParticleComponent_Mass,
|
|
ParticleComponent_Normal,
|
|
ParticleComponent_Position,
|
|
ParticleComponent_Radius,
|
|
ParticleComponent_Rotation,
|
|
ParticleComponent_Size,
|
|
ParticleComponent_Velocity,
|
|
ParticleComponent_Userdata0,
|
|
ParticleComponent_Userdata1,
|
|
ParticleComponent_Userdata2,
|
|
ParticleComponent_Userdata3,
|
|
ParticleComponent_Userdata4,
|
|
ParticleComponent_Userdata5,
|
|
ParticleComponent_Userdata6,
|
|
ParticleComponent_Userdata7,
|
|
ParticleComponent_Userdata8,
|
|
|
|
ParticleComponent_Max = ParticleComponent_Userdata8
|
|
};
|
|
|
|
enum ParticleLayout
|
|
{
|
|
ParticleLayout_Billboard,
|
|
ParticleLayout_Model,
|
|
ParticleLayout_Sprite,
|
|
|
|
ParticleLayout_Max = ParticleLayout_Sprite
|
|
};
|
|
|
|
enum RenderPassType
|
|
{
|
|
RenderPassType_AA,
|
|
RenderPassType_Bloom,
|
|
RenderPassType_DOF,
|
|
RenderPassType_Final,
|
|
RenderPassType_Fog,
|
|
RenderPassType_Forward,
|
|
RenderPassType_Lighting,
|
|
RenderPassType_Geometry,
|
|
RenderPassType_SSAO,
|
|
|
|
RenderPassType_Max = RenderPassType_SSAO
|
|
};
|
|
|
|
enum RenderTechniqueType
|
|
{
|
|
RenderTechniqueType_AdvancedForward, // AdvancedForwardRenderTechnique
|
|
RenderTechniqueType_BasicForward, // BasicForwardRenderTechnique
|
|
RenderTechniqueType_DeferredShading, // DeferredRenderTechnique
|
|
RenderTechniqueType_Depth, // DepthRenderTechnique
|
|
RenderTechniqueType_LightPrePass, // LightPrePassRenderTechnique
|
|
RenderTechniqueType_User,
|
|
|
|
RenderTechniqueType_Max = RenderTechniqueType_User
|
|
};
|
|
|
|
enum ReflectionMode
|
|
{
|
|
ReflectionMode_RealTime,
|
|
ReflectionMode_Probe,
|
|
ReflectionMode_Skybox,
|
|
|
|
ReflectionMode_Max = ReflectionMode_Skybox
|
|
};
|
|
|
|
enum SceneNodeType
|
|
{
|
|
SceneNodeType_Light, // Light
|
|
SceneNodeType_Model, // Model
|
|
SceneNodeType_ParticleEmitter, // ParticleEmitter
|
|
SceneNodeType_Root, // SceneRoot
|
|
SceneNodeType_Sprite, // Sprite
|
|
SceneNodeType_TextSprite, // TextSprite
|
|
SceneNodeType_User,
|
|
|
|
SceneNodeType_Max = SceneNodeType_User
|
|
};
|
|
|
|
// These parameters are independant of the material: they can not be asked for the moment
|
|
enum ShaderFlags
|
|
{
|
|
ShaderFlags_None = 0,
|
|
|
|
ShaderFlags_Billboard = 0x01,
|
|
ShaderFlags_Deferred = 0x02,
|
|
ShaderFlags_Instancing = 0x04,
|
|
ShaderFlags_TextureOverlay = 0x08,
|
|
ShaderFlags_VertexColor = 0x10,
|
|
|
|
ShaderFlags_Max = ShaderFlags_VertexColor * 2 - 1
|
|
};
|
|
|
|
enum TextureMap
|
|
{
|
|
TextureMap_Alpha,
|
|
TextureMap_Diffuse,
|
|
TextureMap_Emissive,
|
|
TextureMap_Height,
|
|
TextureMap_ReflectionCube,
|
|
TextureMap_Normal,
|
|
TextureMap_Overlay,
|
|
TextureMap_Shadow2D_1,
|
|
TextureMap_Shadow2D_2,
|
|
TextureMap_Shadow2D_3,
|
|
TextureMap_ShadowCube_1,
|
|
TextureMap_ShadowCube_2,
|
|
TextureMap_ShadowCube_3,
|
|
TextureMap_Specular,
|
|
|
|
TextureMap_Max = TextureMap_Specular
|
|
};
|
|
}
|
|
|
|
#endif // NAZARA_ENUMS_GRAPHICS_HPP
|