• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 //
2 // Copyright (c) 2013 The ANGLE Project Authors. All rights reserved.
3 // Use of this source code is governed by a BSD-style license that can be
4 // found in the LICENSE file.
5 //
6 
7 // Contants.h: Defines some implementation specific and gl constants
8 
9 #ifndef LIBGLESV2_CONSTANTS_H_
10 #define LIBGLESV2_CONSTANTS_H_
11 
12 namespace gl
13 {
14 
15 enum
16 {
17     MAX_VERTEX_ATTRIBS = 16,
18     MAX_TEXTURE_IMAGE_UNITS = 16,
19 
20     // Implementation upper limits, real maximums depend on the hardware
21     IMPLEMENTATION_MAX_VERTEX_TEXTURE_IMAGE_UNITS = 16,
22     IMPLEMENTATION_MAX_COMBINED_TEXTURE_IMAGE_UNITS = MAX_TEXTURE_IMAGE_UNITS + IMPLEMENTATION_MAX_VERTEX_TEXTURE_IMAGE_UNITS,
23 
24     IMPLEMENTATION_MAX_VARYING_VECTORS = 32,
25     IMPLEMENTATION_MAX_DRAW_BUFFERS = 8,
26     IMPLEMENTATION_MAX_FRAMEBUFFER_ATTACHMENTS = IMPLEMENTATION_MAX_DRAW_BUFFERS + 2, // 2 extra for depth and/or stencil buffers
27 
28     IMPLEMENTATION_MAX_VERTEX_SHADER_UNIFORM_BUFFERS = 16,
29     IMPLEMENTATION_MAX_FRAGMENT_SHADER_UNIFORM_BUFFERS = 16,
30     IMPLEMENTATION_MAX_COMBINED_SHADER_UNIFORM_BUFFERS = IMPLEMENTATION_MAX_VERTEX_SHADER_UNIFORM_BUFFERS +
31                                                          IMPLEMENTATION_MAX_FRAGMENT_SHADER_UNIFORM_BUFFERS,
32 
33     IMPLEMENTATION_MAX_TRANSFORM_FEEDBACK_BUFFERS = 4,
34 };
35 
36 const float ALIASED_LINE_WIDTH_RANGE_MIN = 1.0f;
37 const float ALIASED_LINE_WIDTH_RANGE_MAX = 1.0f;
38 const float ALIASED_POINT_SIZE_RANGE_MIN = 1.0f;
39 
40 }
41 
42 #endif // LIBGLESV2_CONSTANTS_H_
43