diff options
author | Hans-Kristian Arntzen <post@arntzen-software.no> | 2022-01-05 14:53:45 +0300 |
---|---|---|
committer | Hans-Kristian Arntzen <post@arntzen-software.no> | 2022-01-05 14:53:45 +0300 |
commit | 2793d22af5187c1037a4eca9b9d2ecc0738d5148 (patch) | |
tree | 0634379c806652767414a4ec603a215a2ac971d3 /reference | |
parent | e0ae55d5e2be4c7d909a5936af9edf8c0634a89f (diff) | |
parent | 2acf0e73ddfadcd16c5ab1224671f7920c7c6a95 (diff) |
Merge branch 'master' of git://github.com/cfnptr/SPIRV-Cross
Diffstat (limited to 'reference')
-rw-r--r-- | reference/opt/shaders-msl/asm/tese/unnamed-builtin-array.asm.tese | 3 | ||||
-rw-r--r-- | reference/opt/shaders-msl/tese/input-array.tese | 3 | ||||
-rw-r--r-- | reference/opt/shaders-msl/tese/quad.domain.tese | 3 | ||||
-rw-r--r-- | reference/opt/shaders-msl/tese/quad.tese | 3 | ||||
-rw-r--r-- | reference/opt/shaders-msl/tese/water_tess.tese | 9 | ||||
-rw-r--r-- | reference/shaders-msl/asm/tese/unnamed-builtin-array.asm.tese | 3 | ||||
-rw-r--r-- | reference/shaders-msl/tese/input-array.tese | 5 | ||||
-rw-r--r-- | reference/shaders-msl/tese/quad.domain.tese | 3 | ||||
-rw-r--r-- | reference/shaders-msl/tese/quad.tese | 5 | ||||
-rw-r--r-- | reference/shaders-msl/tese/water_tess.tese | 5 |
10 files changed, 26 insertions, 16 deletions
diff --git a/reference/opt/shaders-msl/asm/tese/unnamed-builtin-array.asm.tese b/reference/opt/shaders-msl/asm/tese/unnamed-builtin-array.asm.tese index 99803754..2f2716eb 100644 --- a/reference/opt/shaders-msl/asm/tese/unnamed-builtin-array.asm.tese +++ b/reference/opt/shaders-msl/asm/tese/unnamed-builtin-array.asm.tese @@ -55,8 +55,9 @@ struct main0_patchIn float2 gl_TessLevelInner [[attribute(1)]]; }; -[[ patch(quad, 0) ]] vertex main0_out main0(main0_patchIn patchIn [[stage_in]], float2 gl_TessCoord [[position_in_patch]]) +[[ patch(quad, 0) ]] vertex main0_out main0(main0_patchIn patchIn [[stage_in]], float2 gl_TessCoordIn [[position_in_patch]]) { + float3 gl_TessCoord = float3(gl_TessCoordIn.x, gl_TessCoordIn.y, 0.0); main0_out out = {}; spvUnsafeArray<float, 2> gl_TessLevelInner = {}; spvUnsafeArray<float, 4> gl_TessLevelOuter = {}; diff --git a/reference/opt/shaders-msl/tese/input-array.tese b/reference/opt/shaders-msl/tese/input-array.tese index 97a83b4e..d1dec4bb 100644 --- a/reference/opt/shaders-msl/tese/input-array.tese +++ b/reference/opt/shaders-msl/tese/input-array.tese @@ -19,8 +19,9 @@ struct main0_patchIn patch_control_point<main0_in> gl_in; }; -[[ patch(quad, 0) ]] vertex main0_out main0(main0_patchIn patchIn [[stage_in]], float2 gl_TessCoord [[position_in_patch]]) +[[ patch(quad, 0) ]] vertex main0_out main0(main0_patchIn patchIn [[stage_in]], float2 gl_TessCoordIn [[position_in_patch]]) { + float3 gl_TessCoord = float3(gl_TessCoordIn.x, gl_TessCoordIn.y, 0.0); main0_out out = {}; out.gl_Position = (patchIn.gl_in[0].Floats * gl_TessCoord.x) + (patchIn.gl_in[1].Floats2 * gl_TessCoord.y); return out; diff --git a/reference/opt/shaders-msl/tese/quad.domain.tese b/reference/opt/shaders-msl/tese/quad.domain.tese index 9dadebc4..fe2e9ae4 100644 --- a/reference/opt/shaders-msl/tese/quad.domain.tese +++ b/reference/opt/shaders-msl/tese/quad.domain.tese @@ -55,8 +55,9 @@ struct main0_patchIn float2 gl_TessLevelInner [[attribute(1)]]; }; -[[ patch(quad, 0) ]] vertex main0_out main0(main0_patchIn patchIn [[stage_in]], float2 gl_TessCoord [[position_in_patch]]) +[[ patch(quad, 0) ]] vertex main0_out main0(main0_patchIn patchIn [[stage_in]], float2 gl_TessCoordIn [[position_in_patch]]) { + float3 gl_TessCoord = float3(gl_TessCoordIn.x, gl_TessCoordIn.y, 0.0); main0_out out = {}; spvUnsafeArray<float, 2> gl_TessLevelInner = {}; spvUnsafeArray<float, 4> gl_TessLevelOuter = {}; diff --git a/reference/opt/shaders-msl/tese/quad.tese b/reference/opt/shaders-msl/tese/quad.tese index 99803754..2f2716eb 100644 --- a/reference/opt/shaders-msl/tese/quad.tese +++ b/reference/opt/shaders-msl/tese/quad.tese @@ -55,8 +55,9 @@ struct main0_patchIn float2 gl_TessLevelInner [[attribute(1)]]; }; -[[ patch(quad, 0) ]] vertex main0_out main0(main0_patchIn patchIn [[stage_in]], float2 gl_TessCoord [[position_in_patch]]) +[[ patch(quad, 0) ]] vertex main0_out main0(main0_patchIn patchIn [[stage_in]], float2 gl_TessCoordIn [[position_in_patch]]) { + float3 gl_TessCoord = float3(gl_TessCoordIn.x, gl_TessCoordIn.y, 0.0); main0_out out = {}; spvUnsafeArray<float, 2> gl_TessLevelInner = {}; spvUnsafeArray<float, 4> gl_TessLevelOuter = {}; diff --git a/reference/opt/shaders-msl/tese/water_tess.tese b/reference/opt/shaders-msl/tese/water_tess.tese index df539ebb..1a84d01f 100644 --- a/reference/opt/shaders-msl/tese/water_tess.tese +++ b/reference/opt/shaders-msl/tese/water_tess.tese @@ -26,12 +26,13 @@ struct main0_patchIn float4 vPatchLods [[attribute(1)]]; }; -[[ patch(quad, 0) ]] vertex main0_out main0(main0_patchIn patchIn [[stage_in]], constant UBO& _31 [[buffer(0)]], texture2d<float> uHeightmapDisplacement [[texture(0)]], sampler uHeightmapDisplacementSmplr [[sampler(0)]], float2 gl_TessCoord [[position_in_patch]]) +[[ patch(quad, 0) ]] vertex main0_out main0(main0_patchIn patchIn [[stage_in]], constant UBO& _31 [[buffer(0)]], texture2d<float> uHeightmapDisplacement [[texture(0)]], sampler uHeightmapDisplacementSmplr [[sampler(0)]], float2 gl_TessCoordIn [[position_in_patch]]) { + float3 gl_TessCoord = float3(gl_TessCoordIn.x, gl_TessCoordIn.y, 0.0); main0_out out = {}; - float2 _202 = patchIn.vOutPatchPosBase + (float3(gl_TessCoord, 0).xy * _31.uPatchSize); - float2 _216 = mix(patchIn.vPatchLods.yx, patchIn.vPatchLods.zw, float2(float3(gl_TessCoord, 0).x)); - float _223 = mix(_216.x, _216.y, float3(gl_TessCoord, 0).y); + float2 _202 = patchIn.vOutPatchPosBase + (gl_TessCoord.xy * _31.uPatchSize); + float2 _216 = mix(patchIn.vPatchLods.yx, patchIn.vPatchLods.zw, float2(gl_TessCoord.x)); + float _223 = mix(_216.x, _216.y, gl_TessCoord.y); float _225 = floor(_223); float2 _125 = _202 * _31.uInvHeightmapSize; float2 _141 = _31.uInvHeightmapSize * exp2(_225); diff --git a/reference/shaders-msl/asm/tese/unnamed-builtin-array.asm.tese b/reference/shaders-msl/asm/tese/unnamed-builtin-array.asm.tese index 99803754..2f2716eb 100644 --- a/reference/shaders-msl/asm/tese/unnamed-builtin-array.asm.tese +++ b/reference/shaders-msl/asm/tese/unnamed-builtin-array.asm.tese @@ -55,8 +55,9 @@ struct main0_patchIn float2 gl_TessLevelInner [[attribute(1)]]; }; -[[ patch(quad, 0) ]] vertex main0_out main0(main0_patchIn patchIn [[stage_in]], float2 gl_TessCoord [[position_in_patch]]) +[[ patch(quad, 0) ]] vertex main0_out main0(main0_patchIn patchIn [[stage_in]], float2 gl_TessCoordIn [[position_in_patch]]) { + float3 gl_TessCoord = float3(gl_TessCoordIn.x, gl_TessCoordIn.y, 0.0); main0_out out = {}; spvUnsafeArray<float, 2> gl_TessLevelInner = {}; spvUnsafeArray<float, 4> gl_TessLevelOuter = {}; diff --git a/reference/shaders-msl/tese/input-array.tese b/reference/shaders-msl/tese/input-array.tese index f6cfa2fb..f0dfb4cf 100644 --- a/reference/shaders-msl/tese/input-array.tese +++ b/reference/shaders-msl/tese/input-array.tese @@ -22,13 +22,14 @@ struct main0_patchIn }; static inline __attribute__((always_inline)) -void set_position(thread float4& gl_Position, thread patch_control_point<main0_in>& gl_in, thread float2& gl_TessCoord) +void set_position(thread float4& gl_Position, thread patch_control_point<main0_in>& gl_in, thread float3& gl_TessCoord) { gl_Position = (gl_in[0].Floats * gl_TessCoord.x) + (gl_in[1].Floats2 * gl_TessCoord.y); } -[[ patch(quad, 0) ]] vertex main0_out main0(main0_patchIn patchIn [[stage_in]], float2 gl_TessCoord [[position_in_patch]]) +[[ patch(quad, 0) ]] vertex main0_out main0(main0_patchIn patchIn [[stage_in]], float2 gl_TessCoordIn [[position_in_patch]]) { + float3 gl_TessCoord = float3(gl_TessCoordIn.x, gl_TessCoordIn.y, 0.0); main0_out out = {}; set_position(out.gl_Position, patchIn.gl_in, gl_TessCoord); return out; diff --git a/reference/shaders-msl/tese/quad.domain.tese b/reference/shaders-msl/tese/quad.domain.tese index 9dadebc4..fe2e9ae4 100644 --- a/reference/shaders-msl/tese/quad.domain.tese +++ b/reference/shaders-msl/tese/quad.domain.tese @@ -55,8 +55,9 @@ struct main0_patchIn float2 gl_TessLevelInner [[attribute(1)]]; }; -[[ patch(quad, 0) ]] vertex main0_out main0(main0_patchIn patchIn [[stage_in]], float2 gl_TessCoord [[position_in_patch]]) +[[ patch(quad, 0) ]] vertex main0_out main0(main0_patchIn patchIn [[stage_in]], float2 gl_TessCoordIn [[position_in_patch]]) { + float3 gl_TessCoord = float3(gl_TessCoordIn.x, gl_TessCoordIn.y, 0.0); main0_out out = {}; spvUnsafeArray<float, 2> gl_TessLevelInner = {}; spvUnsafeArray<float, 4> gl_TessLevelOuter = {}; diff --git a/reference/shaders-msl/tese/quad.tese b/reference/shaders-msl/tese/quad.tese index ae320812..92a1b546 100644 --- a/reference/shaders-msl/tese/quad.tese +++ b/reference/shaders-msl/tese/quad.tese @@ -56,13 +56,14 @@ struct main0_patchIn }; static inline __attribute__((always_inline)) -void set_position(thread float4& gl_Position, thread float2& gl_TessCoord, thread spvUnsafeArray<float, 2>& gl_TessLevelInner, thread spvUnsafeArray<float, 4>& gl_TessLevelOuter) +void set_position(thread float4& gl_Position, thread float3& gl_TessCoord, thread spvUnsafeArray<float, 2>& gl_TessLevelInner, thread spvUnsafeArray<float, 4>& gl_TessLevelOuter) { gl_Position = float4(((gl_TessCoord.x * gl_TessLevelInner[0]) * gl_TessLevelOuter[0]) + (((1.0 - gl_TessCoord.x) * gl_TessLevelInner[0]) * gl_TessLevelOuter[2]), ((gl_TessCoord.y * gl_TessLevelInner[1]) * gl_TessLevelOuter[1]) + (((1.0 - gl_TessCoord.y) * gl_TessLevelInner[1]) * gl_TessLevelOuter[3]), 0.0, 1.0); } -[[ patch(quad, 0) ]] vertex main0_out main0(main0_patchIn patchIn [[stage_in]], float2 gl_TessCoord [[position_in_patch]]) +[[ patch(quad, 0) ]] vertex main0_out main0(main0_patchIn patchIn [[stage_in]], float2 gl_TessCoordIn [[position_in_patch]]) { + float3 gl_TessCoord = float3(gl_TessCoordIn.x, gl_TessCoordIn.y, 0.0); main0_out out = {}; spvUnsafeArray<float, 2> gl_TessLevelInner = {}; spvUnsafeArray<float, 4> gl_TessLevelOuter = {}; diff --git a/reference/shaders-msl/tese/water_tess.tese b/reference/shaders-msl/tese/water_tess.tese index 1295c459..4b54c9b7 100644 --- a/reference/shaders-msl/tese/water_tess.tese +++ b/reference/shaders-msl/tese/water_tess.tese @@ -50,10 +50,11 @@ float3 sample_height_displacement(thread const float2& uv, thread const float2& return mix(uHeightmapDisplacement.sample(uHeightmapDisplacementSmplr, (uv + (off * 0.5)), level(lod.x)).xyz, uHeightmapDisplacement.sample(uHeightmapDisplacementSmplr, (uv + (off * 1.0)), level(lod.x + 1.0)).xyz, float3(lod.y)); } -[[ patch(quad, 0) ]] vertex main0_out main0(main0_patchIn patchIn [[stage_in]], constant UBO& v_31 [[buffer(0)]], texture2d<float> uHeightmapDisplacement [[texture(0)]], sampler uHeightmapDisplacementSmplr [[sampler(0)]], float2 gl_TessCoord [[position_in_patch]]) +[[ patch(quad, 0) ]] vertex main0_out main0(main0_patchIn patchIn [[stage_in]], constant UBO& v_31 [[buffer(0)]], texture2d<float> uHeightmapDisplacement [[texture(0)]], sampler uHeightmapDisplacementSmplr [[sampler(0)]], float2 gl_TessCoordIn [[position_in_patch]]) { + float3 gl_TessCoord = float3(gl_TessCoordIn.x, gl_TessCoordIn.y, 0.0); main0_out out = {}; - float2 tess_coord = float3(gl_TessCoord, 0).xy; + float2 tess_coord = gl_TessCoord.xy; float2 param = tess_coord; float2 pos = lerp_vertex(param, patchIn.vOutPatchPosBase, v_31); float2 param_1 = tess_coord; |