1 // Copyright (c) 2016 OPEN CASCADE SAS
3 // This file is part of Open CASCADE Technology software library.
5 // This library is free software; you can redistribute it and/or modify it under
6 // the terms of the GNU Lesser General Public License version 2.1 as published
7 // by the Free Software Foundation, with special exception defined in the file
8 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
9 // distribution for complete text of the license and disclaimer of any warranty.
11 // Alternatively, this file may be used under the terms of Open CASCADE
12 // commercial license or contractual agreement.
14 #ifndef _Graphic3d_TypeOfLimit_HeaderFile
15 #define _Graphic3d_TypeOfLimit_HeaderFile
17 //! Type of graphic resource limit.
18 enum Graphic3d_TypeOfLimit
20 Graphic3d_TypeOfLimit_MaxNbLights, //!< maximum number of active light sources
21 Graphic3d_TypeOfLimit_MaxNbClipPlanes, //!< maximum number of active clipping planes
22 Graphic3d_TypeOfLimit_MaxNbViews, //!< maximum number of views
23 Graphic3d_TypeOfLimit_MaxTextureSize, //!< maximum size of texture
24 Graphic3d_TypeOfLimit_MaxViewDumpSizeX, //!< maximum width for image dump
25 Graphic3d_TypeOfLimit_MaxViewDumpSizeY, //!< maximum height for image dump
26 Graphic3d_TypeOfLimit_MaxCombinedTextureUnits, //!< maximum number of combined texture units for multitexturing
27 Graphic3d_TypeOfLimit_MaxMsaa, //!< maximum number of MSAA samples
28 Graphic3d_TypeOfLimit_HasPBR, //!< indicates whether PBR metallic-roughness shading model is supported
29 Graphic3d_TypeOfLimit_HasRayTracing, //!< indicates whether ray tracing is supported
30 Graphic3d_TypeOfLimit_HasRayTracingTextures, //!< indicates whether ray tracing textures are supported
31 Graphic3d_TypeOfLimit_HasRayTracingAdaptiveSampling, //!< indicates whether adaptive screen sampling is supported
32 Graphic3d_TypeOfLimit_HasRayTracingAdaptiveSamplingAtomic,//!< indicates whether optimized adaptive screen sampling is supported (hardware supports atomic float operations)
33 Graphic3d_TypeOfLimit_HasSRGB, //!< indicates whether sRGB rendering is supported
34 Graphic3d_TypeOfLimit_HasBlendedOit, //!< indicates whether necessary GL extensions for Weighted, Blended OIT available (without MSAA).
35 Graphic3d_TypeOfLimit_HasBlendedOitMsaa, //!< indicates whether necessary GL extensions for Weighted, Blended OIT available (with MSAA).
36 Graphic3d_TypeOfLimit_HasFlatShading, //!< indicates whether Flat shading (Graphic3d_TOSM_FACET) is supported
37 Graphic3d_TypeOfLimit_HasMeshEdges, //!< indicates whether advanced mesh edges presentation is supported
38 Graphic3d_TypeOfLimit_IsWorkaroundFBO, //!< indicates whether workaround for Intel driver problem with empty FBO for images with big width is applyed.
39 Graphic3d_TypeOfLimit_NB //!< number of elements in this enumeration
42 #endif // _Graphic3d_TypeOfLimit_HeaderFile