mirror of
https://github.com/overte-org/overte.git
synced 2025-04-08 11:54:20 +02:00
Merge pull request #13117 from SamGondelman/android
Test highp floats for Android
This commit is contained in:
commit
75164201d1
9 changed files with 25 additions and 31 deletions
|
@ -17,7 +17,6 @@ std::string GL41Backend::getBackendShaderHeader() const {
|
|||
static const std::string header(
|
||||
R"SHADER(#version 410 core
|
||||
#define GPU_GL410
|
||||
#define PRECISIONQ
|
||||
#define BITFIELD int
|
||||
)SHADER");
|
||||
return header;
|
||||
|
|
|
@ -18,7 +18,6 @@ std::string GL45Backend::getBackendShaderHeader() const {
|
|||
static const std::string header(
|
||||
R"SHADER(#version 450 core
|
||||
#define GPU_GL450
|
||||
#define PRECISIONQ
|
||||
#define BITFIELD int
|
||||
)SHADER"
|
||||
#ifdef GPU_SSBO_TRANSFORM_OBJECT
|
||||
|
|
|
@ -17,10 +17,9 @@ std::string GLESBackend::getBackendShaderHeader() const {
|
|||
static const std::string header(
|
||||
R"SHADER(#version 310 es
|
||||
#extension GL_EXT_texture_buffer : enable
|
||||
precision lowp float; // check precision 2
|
||||
precision lowp samplerBuffer;
|
||||
precision lowp sampler2DShadow;
|
||||
#define PRECISIONQ highp
|
||||
precision highp float;
|
||||
precision highp samplerBuffer;
|
||||
precision highp sampler2DShadow;
|
||||
#define BITFIELD highp int
|
||||
)SHADER");
|
||||
return header;
|
||||
|
|
|
@ -34,7 +34,7 @@ vec3 getLightIrradiance(Light l) { return lightIrradiance_getIrradiance(l.irradi
|
|||
// Light Ambient
|
||||
|
||||
struct LightAmbient {
|
||||
PRECISIONQ vec4 _ambient;
|
||||
vec4 _ambient;
|
||||
SphericalHarmonics _ambientSphere;
|
||||
mat4 transform;
|
||||
};
|
||||
|
|
|
@ -14,9 +14,9 @@
|
|||
#define LightIrradianceConstRef LightIrradiance
|
||||
|
||||
struct LightIrradiance {
|
||||
PRECISIONQ vec4 colorIntensity;
|
||||
vec4 colorIntensity;
|
||||
// falloffRadius, cutoffRadius, falloffSpot, spare
|
||||
PRECISIONQ vec4 attenuation;
|
||||
vec4 attenuation;
|
||||
};
|
||||
|
||||
|
||||
|
|
|
@ -16,8 +16,8 @@
|
|||
#define LightVolumeConstRef LightVolume
|
||||
|
||||
struct LightVolume {
|
||||
PRECISIONQ vec4 positionRadius;
|
||||
PRECISIONQ vec4 directionSpotCos;
|
||||
vec4 positionRadius;
|
||||
vec4 directionSpotCos;
|
||||
};
|
||||
|
||||
bool lightVolume_isPoint(LightVolume lv) { return bool(lv.directionSpotCos.w < 0.f); }
|
||||
|
|
|
@ -15,10 +15,10 @@
|
|||
// to what is provided by the uniform buffer, or the material key has the wrong bits
|
||||
|
||||
struct Material {
|
||||
PRECISIONQ vec4 _emissiveOpacity;
|
||||
PRECISIONQ vec4 _albedoRoughness;
|
||||
PRECISIONQ vec4 _fresnelMetallic;
|
||||
PRECISIONQ vec4 _scatteringSpare2Key;
|
||||
vec4 _emissiveOpacity;
|
||||
vec4 _albedoRoughness;
|
||||
vec4 _fresnelMetallic;
|
||||
vec4 _scatteringSpare2Key;
|
||||
};
|
||||
|
||||
uniform materialBuffer {
|
||||
|
@ -64,7 +64,4 @@ const BITFIELD OCCLUSION_MAP_BIT = 0x00004000;
|
|||
const BITFIELD LIGHTMAP_MAP_BIT = 0x00008000;
|
||||
const BITFIELD SCATTERING_MAP_BIT = 0x00010000;
|
||||
|
||||
#ifdef GL_ES
|
||||
precision lowp float;
|
||||
#endif
|
||||
<@endif@>
|
||||
|
|
|
@ -16,15 +16,15 @@
|
|||
#define SphericalHarmonicsConstRef SphericalHarmonics
|
||||
|
||||
struct SphericalHarmonics {
|
||||
PRECISIONQ vec4 L00;
|
||||
PRECISIONQ vec4 L1m1;
|
||||
PRECISIONQ vec4 L10;
|
||||
PRECISIONQ vec4 L11;
|
||||
PRECISIONQ vec4 L2m2;
|
||||
PRECISIONQ vec4 L2m1;
|
||||
PRECISIONQ vec4 L20;
|
||||
PRECISIONQ vec4 L21;
|
||||
PRECISIONQ vec4 L22;
|
||||
vec4 L00;
|
||||
vec4 L1m1;
|
||||
vec4 L10;
|
||||
vec4 L11;
|
||||
vec4 L2m2;
|
||||
vec4 L2m1;
|
||||
vec4 L20;
|
||||
vec4 L21;
|
||||
vec4 L22;
|
||||
};
|
||||
|
||||
vec4 sphericalHarmonics_evalSphericalLight(SphericalHarmonicsConstRef sh, vec3 direction) {
|
||||
|
|
|
@ -14,10 +14,10 @@
|
|||
<@func declareLightingModel()@>
|
||||
|
||||
struct LightingModel {
|
||||
PRECISIONQ vec4 _UnlitEmissiveLightmapBackground;
|
||||
PRECISIONQ vec4 _ScatteringDiffuseSpecularAlbedo;
|
||||
PRECISIONQ vec4 _AmbientDirectionalPointSpot;
|
||||
PRECISIONQ vec4 _ShowContourObscuranceWireframe;
|
||||
vec4 _UnlitEmissiveLightmapBackground;
|
||||
vec4 _ScatteringDiffuseSpecularAlbedo;
|
||||
vec4 _AmbientDirectionalPointSpot;
|
||||
vec4 _ShowContourObscuranceWireframe;
|
||||
};
|
||||
|
||||
uniform lightingModelBuffer{
|
||||
|
|
Loading…
Reference in a new issue