GPU: GLSL-C++ compilation stubs #4

Closed
Clément Foucault wants to merge 38 commits from glsl-cpp-stubs-2 into glsl-include

When changing the target branch, be careful to rebase the branch in your fork to match. See documentation.
Showing only changes of commit 9066c90b3e - Show all commits

View File

@ -312,7 +312,7 @@ template<int R> struct MatBase<2, R> : MatOp<2, R> {
explicit MatBase(T) {} explicit MatBase(T) {}
explicit MatBase(T, T, T, T) {} explicit MatBase(T, T, T, T) {}
explicit MatBase(ColT, ColT) {} explicit MatBase(ColT, ColT) {}
template<typename OtherC, typename OtherR> explicit MatBase(const MatBase<OtherC, OtherR> &) {} template<int OtherC, int OtherR> explicit MatBase(const MatBase<OtherC, OtherR> &) {}
}; };
template<int R> struct MatBase<3, R> : MatOp<3, R> { template<int R> struct MatBase<3, R> : MatOp<3, R> {
@ -605,22 +605,22 @@ template<typename T, int D> float reflect(VecBase<T, D>, VecBase<T, D>) {}
template<typename T, int D> float refract(VecBase<T, D>, VecBase<T, D>, double) {} template<typename T, int D> float refract(VecBase<T, D>, VecBase<T, D>, double) {}
/* Atomic operations. */ /* Atomic operations. */
int atomicAdd(int &, int); int atomicAdd(int &, int) {}
int atomicAnd(int &, int); int atomicAnd(int &, int) {}
int atomicOr(int &, int); int atomicOr(int &, int) {}
int atomicXor(int &, int); int atomicXor(int &, int) {}
int atomicMin(int &, int); int atomicMin(int &, int) {}
int atomicMax(int &, int); int atomicMax(int &, int) {}
int atomicExchange(int &, int); int atomicExchange(int &, int) {}
int atomicCompSwap(int &, int, int); int atomicCompSwap(int &, int, int) {}
uint atomicAdd(uint &, uint); uint atomicAdd(uint &, uint) {}
uint atomicAnd(uint &, uint); uint atomicAnd(uint &, uint) {}
uint atomicOr(uint &, uint); uint atomicOr(uint &, uint) {}
uint atomicXor(uint &, uint); uint atomicXor(uint &, uint) {}
uint atomicMin(uint &, uint); uint atomicMin(uint &, uint) {}
uint atomicMax(uint &, uint); uint atomicMax(uint &, uint) {}
uint atomicExchange(uint &, uint); uint atomicExchange(uint &, uint) {}
uint atomicCompSwap(uint &, uint, uint); uint atomicCompSwap(uint &, uint, uint) {}
/* Packing functions. */ /* Packing functions. */
uint packHalf2x16(float2) {} uint packHalf2x16(float2) {}
@ -651,23 +651,23 @@ bool is_zero(vec4) {}
* \{ */ * \{ */
/* Vertex Shader Special Variables. */ /* Vertex Shader Special Variables. */
const int gl_VertexID; const int gl_VertexID = 0;
const int gl_InstanceID; const int gl_InstanceID = 0;
const int gl_BaseVertex; const int gl_BaseVertex = 0;
const int gl_BaseInstance; const int gl_BaseInstance = 0;
float4 gl_Position; float4 gl_Position = float4(0);
float gl_PointSize; double gl_PointSize = 0;
/* Fragment Shader Special Variables. */ /* Fragment Shader Special Variables. */
const float4 gl_FragCoord; const float4 gl_FragCoord = float4(0);
const bool gl_FrontFacing; const bool gl_FrontFacing = true;
const float2 gl_PointCoord; const float2 gl_PointCoord = float2(0);
const int gl_PrimitiveID; const int gl_PrimitiveID = 0;
float gl_FragDepth; float gl_FragDepth = 0;
/* Read-only in Fragment Shader and write-only in vertex shader. */ /* Read-only in Fragment Shader and write-only in vertex shader. */
float gl_ClipDistance[]; float gl_ClipDistance[6] = {0};
/* Note: Use GPU variant as they might be emulated. */ /* Note: Use GPU variant as they might be emulated. */
int gpu_Layer; int gpu_Layer = 0;
int gpu_ViewportIndex; int gpu_ViewportIndex = 0;
/** \} */ /** \} */
@ -684,8 +684,8 @@ int gpu_ViewportIndex;
/* Pass argument by copy (default). */ /* Pass argument by copy (default). */
# define in # define in
/* Cannot easily mutate them. Pass every by copy for now. */ /* Discards the output of the current fragment shader invocation and halts its execution. */
void discard; # define discard
/** \} */ /** \} */