Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
PojavLauncherTeam
GitHub Repository: PojavLauncherTeam/angle
Path: blob/main_old/src/compiler/translator/BuiltInFunctionEmulatorGLSL.h
1693 views
1
//
2
// Copyright 2011 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 COMPILER_TRANSLATOR_BUILTINFUNCTIONEMULATORGLSL_H_
8
#define COMPILER_TRANSLATOR_BUILTINFUNCTIONEMULATORGLSL_H_
9
10
#include "GLSLANG/ShaderLang.h"
11
12
namespace sh
13
{
14
class BuiltInFunctionEmulator;
15
16
//
17
// This works around bug in Intel Mac drivers.
18
//
19
void InitBuiltInAbsFunctionEmulatorForGLSLWorkarounds(BuiltInFunctionEmulator *emu,
20
sh::GLenum shaderType);
21
22
//
23
// This works around isnan() bug in Intel Mac drivers
24
//
25
void InitBuiltInIsnanFunctionEmulatorForGLSLWorkarounds(BuiltInFunctionEmulator *emu,
26
int targetGLSLVersion);
27
//
28
// This works around atan(y, x) bug in NVIDIA drivers.
29
//
30
void InitBuiltInAtanFunctionEmulatorForGLSLWorkarounds(BuiltInFunctionEmulator *emu);
31
32
//
33
// This function is emulating built-in functions missing from GLSL 1.30 and higher.
34
//
35
void InitBuiltInFunctionEmulatorForGLSLMissingFunctions(BuiltInFunctionEmulator *emu,
36
sh::GLenum shaderType,
37
int targetGLSLVersion);
38
} // namespace sh
39
40
#endif // COMPILER_TRANSLATOR_BUILTINFUNCTIONEMULATORGLSL_H_
41
42