1// 2// Copyright (c) 2014 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#ifndef SAMPLE_UTIL_SHADER_UTILS_H 8#define SAMPLE_UTIL_SHADER_UTILS_H 9 10#define GL_GLEXT_PROTOTYPES 11 12#include <GLES3/gl3.h> 13#include <GLES3/gl3ext.h> 14#include <GLES2/gl2.h> 15#include <GLES2/gl2ext.h> 16#include <EGL/egl.h> 17#include <EGL/eglext.h> 18 19#include <string> 20 21#define SHADER_SOURCE(...) #__VA_ARGS__ 22 23GLuint CompileShader(GLenum type, const std::string &source); 24GLuint CompileShaderFromFile(GLenum type, const std::string &sourcePath); 25 26GLuint CompileProgram(const std::string &vsSource, const std::string &fsSource); 27GLuint CompileProgramFromFiles(const std::string &vsPath, const std::string &fsPath); 28 29#endif // SAMPLE_UTIL_SHADER_UTILS_H 30