blob: 80e63a9e000152561da5d23164c4a3d36631f001 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
#pragma once
#include "../../types.hpp"
#include <string>
namespace amalgine
{
struct ShaderAttribute
{
std::string name;
const char *typeName;
};
static bool isAlpha(char c)
{
return (c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z');
}
static bool isDigit(char c)
{
return c >= '0' && c <= '9';
}
static bool isShaderVariableNameValid(const char *variableName)
{
const char *p = &variableName[0];
if(isAlpha(*p) || *p == '_')
{
++p;
while(true)
{
char c = *p;
if(c == '\0')
return true;
else if(isAlpha(c) || isDigit(c) || c == '_')
++p;
}
}
return false;
}
std::string getShaderCompileLog(u32 shaderId);
}
|