Blender
V3.3
source
blender
gpu
GPU_primitive.h
Go to the documentation of this file.
1
/* SPDX-License-Identifier: GPL-2.0-or-later
2
* Copyright 2016 by Mike Erwin. All rights reserved. */
3
10
#pragma once
11
12
#include "
GPU_common.h
"
13
14
#ifdef __cplusplus
15
extern
"C"
{
16
#endif
17
18
typedef
enum
{
19
GPU_PRIM_POINTS
,
20
GPU_PRIM_LINES
,
21
GPU_PRIM_TRIS
,
22
GPU_PRIM_LINE_STRIP
,
23
GPU_PRIM_LINE_LOOP
,
/* GL has this, Vulkan and Metal do not */
24
GPU_PRIM_TRI_STRIP
,
25
GPU_PRIM_TRI_FAN
,
/* Metal API does not support this. */
26
27
/* Metal API does not support ADJ primitive types but
28
* handled via the geometry-shader-alternative path. */
29
GPU_PRIM_LINES_ADJ
,
30
GPU_PRIM_TRIS_ADJ
,
31
GPU_PRIM_LINE_STRIP_ADJ
,
32
33
GPU_PRIM_NONE
,
34
}
GPUPrimType
;
35
36
/* what types of primitives does each shader expect? */
37
typedef
enum
{
38
GPU_PRIM_CLASS_NONE
= 0,
39
GPU_PRIM_CLASS_POINT
= (1 << 0),
40
GPU_PRIM_CLASS_LINE
= (1 << 1),
41
GPU_PRIM_CLASS_SURFACE
= (1 << 2),
42
GPU_PRIM_CLASS_ANY
=
GPU_PRIM_CLASS_POINT
|
GPU_PRIM_CLASS_LINE
|
GPU_PRIM_CLASS_SURFACE
,
43
}
GPUPrimClass
;
44
51
#ifdef __cplusplus
52
}
53
#endif
GPU_common.h
GPUPrimType
GPUPrimType
Definition:
GPU_primitive.h:18
GPU_PRIM_TRI_FAN
@ GPU_PRIM_TRI_FAN
Definition:
GPU_primitive.h:25
GPU_PRIM_LINE_LOOP
@ GPU_PRIM_LINE_LOOP
Definition:
GPU_primitive.h:23
GPU_PRIM_LINE_STRIP_ADJ
@ GPU_PRIM_LINE_STRIP_ADJ
Definition:
GPU_primitive.h:31
GPU_PRIM_TRIS_ADJ
@ GPU_PRIM_TRIS_ADJ
Definition:
GPU_primitive.h:30
GPU_PRIM_NONE
@ GPU_PRIM_NONE
Definition:
GPU_primitive.h:33
GPU_PRIM_LINES
@ GPU_PRIM_LINES
Definition:
GPU_primitive.h:20
GPU_PRIM_POINTS
@ GPU_PRIM_POINTS
Definition:
GPU_primitive.h:19
GPU_PRIM_LINES_ADJ
@ GPU_PRIM_LINES_ADJ
Definition:
GPU_primitive.h:29
GPU_PRIM_LINE_STRIP
@ GPU_PRIM_LINE_STRIP
Definition:
GPU_primitive.h:22
GPU_PRIM_TRI_STRIP
@ GPU_PRIM_TRI_STRIP
Definition:
GPU_primitive.h:24
GPU_PRIM_TRIS
@ GPU_PRIM_TRIS
Definition:
GPU_primitive.h:21
GPUPrimClass
GPUPrimClass
Definition:
GPU_primitive.h:37
GPU_PRIM_CLASS_NONE
@ GPU_PRIM_CLASS_NONE
Definition:
GPU_primitive.h:38
GPU_PRIM_CLASS_POINT
@ GPU_PRIM_CLASS_POINT
Definition:
GPU_primitive.h:39
GPU_PRIM_CLASS_LINE
@ GPU_PRIM_CLASS_LINE
Definition:
GPU_primitive.h:40
GPU_PRIM_CLASS_SURFACE
@ GPU_PRIM_CLASS_SURFACE
Definition:
GPU_primitive.h:41
GPU_PRIM_CLASS_ANY
@ GPU_PRIM_CLASS_ANY
Definition:
GPU_primitive.h:42
Generated on Tue Oct 22 2024 13:18:25 for Blender by
doxygen
1.9.1