Created
July 7, 2020 07:01
-
-
Save njovy/2eabeec74af974cc8d5228df7497f245 to your computer and use it in GitHub Desktop.
This file has been truncated, but you can view the full file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Message from debugger: Terminated due to signal 9 | |
2020-07-07 15:28:33.090596+0900 Runner[258:8662] Metal API Validation Enabled | |
2020-07-07 15:28:33.133502+0900 Runner[258:8662] libMobileGestalt MobileGestaltSupport.m:153: pid 258 (Runner) does not have sandbox access for frZQaeyWLUvLjeuEK43hmg and IS NOT appropriately entitled | |
2020-07-07 15:28:33.133608+0900 Runner[258:8662] libMobileGestalt MobileGestalt.c:550: no access to InverseDeviceID (see <rdar://problem/11744455>) | |
2020-07-07 15:28:33.471149+0900 Runner[258:8662] [Crashlytics] Version 3.14.0 (144) | |
2020-07-07 15:28:33.572838+0900 Runner[258:8739] 6.21.0 - [Firebase/Messaging][I-FCM001000] FIRMessaging Remote Notifications proxy enabled, will swizzle remote notification receiver handlers. If you'd prefer to manually integrate Firebase Messaging, add "FirebaseAppDelegateProxyEnabled" to your Info.plist, and set it to NO. Follow the instructions at: | |
https://firebase.google.com/docs/cloud-messaging/ios/client#method_swizzling_in_firebase_messaging | |
to ensure proper integration. | |
2020-07-07 15:28:33.830198+0900 Runner[258:8762] flutter: Observatory listening on http://127.0.0.1:50857/lHsihYU0efM=/ | |
2020-07-07 15:28:33.853625+0900 Runner[258:8736] 6.21.0 - [Firebase/Analytics][I-ACS023007] Analytics v.60400000 started | |
2020-07-07 15:28:33.854070+0900 Runner[258:8736] 6.21.0 - [Firebase/Analytics][I-ACS023008] To enable debug logging set the following application argument: -FIRAnalyticsDebugEnabled (see http://goo.gl/RfcP7r) | |
2020-07-07 15:28:33.864514+0900 Runner[258:8662] [Fabric] [Fabric +with] called multiple times. Only the first call is honored, please pass all kits you wish to initialize | |
2020-07-07 15:28:33.941156+0900 Runner[258:8779] 6.21.0 - [Firebase/Analytics][I-ACS031025] Analytics screen reporting is enabled. Call +[FIRAnalytics setScreenName:setScreenClass:] to set the screen name or override the default screen class name. To disable screen reporting, set the flag FirebaseScreenReportingEnabled to NO (boolean) in the Info.plist | |
2020-07-07 15:28:34.267033+0900 Runner[258:8774] [Fabric] failed to download settings Error Domain=FABNetworkError Code=-5 "(null)" UserInfo={status_code=403, type=2, request_id=, content_type=application/json; charset=utf-8} | |
2020-07-07 15:28:35.032398+0900 Runner[258:8780] 6.21.0 - [Firebase/Analytics][I-ACS800023] No pending snapshot to activate. SDK name: app_measurement | |
2020-07-07 15:28:35.124797+0900 Runner[258:8736] 6.21.0 - [Firebase/Analytics][I-ACS023012] Analytics collection enabled | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTextureCoords_Stage0 [[user(locn0)]]; | |
int vTexIndex_Stage0 [[user(locn1)]]; | |
float4 vinColor_Stage0 [[user(locn2)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float2 uAtlasSizeInv_Stage0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage0; | |
sampler uTextureSampler_0_Stage0Smplr; | |
}; | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage0[[texture(0)]], sampler uTextureSampler_0_Stage0Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage0 = uTextureSampler_0_Stage0; | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
float4 outputCoverage_Stage0; | |
{ | |
outputColor_Stage0 = _in.vinColor_Stage0; | |
float4 texColor; | |
{ | |
texColor = _globals->uTextureSampler_0_Stage0.sample(_globals->uTextureSampler_0_Stage0Smplr, _in.vTextureCoords_Stage0).xxxx; | |
} | |
outputCoverage_Stage0 = texColor; | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * outputCoverage_Stage0; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:29:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTextureCoords_Stage0 [[user(locn0)]]; | |
int vTexIndex_Stage0 [[user(locn1)]]; | |
float4 vinColor_Stage0 [[user(locn2)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float2 uAtlasSizeInv_Stage0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage0; | |
sampler uTextureSampler_0_Stage0Smplr; | |
}; | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage0[[texture(0)]], sampler uTextureSampler_0_Stage0Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage0 = uTextureSampler_0_Stage0; | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
float4 outputCoverage_Stage0; | |
{ | |
outputColor_Stage0 = _in.vinColor_Stage0; | |
float4 texColor; | |
{ | |
texColor = _globals->uTextureSampler_0_Stage0.sample(_globals->uTextureSampler_0_Stage0Smplr, _in.vTextureCoords_Stage0).xxxx; | |
} | |
outputCoverage_Stage0 = texColor; | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * outputCoverage_Stage0; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:29:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float3 vinShadowParams_Stage0 [[user(locn0)]]; | |
float4 vinColor_Stage0 [[user(locn1)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage0; | |
sampler uTextureSampler_0_Stage0Smplr; | |
}; | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage0[[texture(0)]], sampler uTextureSampler_0_Stage0Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage0 = uTextureSampler_0_Stage0; | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
float4 outputCoverage_Stage0; | |
{ | |
float3 shadowParams; | |
shadowParams = _in.vinShadowParams_Stage0; | |
outputColor_Stage0 = _in.vinColor_Stage0; | |
float d = length(shadowParams.xy); | |
float2 uv = float2(shadowParams.z * (1.0 - d), 0.5); | |
float factor = _globals->uTextureSampler_0_Stage0.sample(_globals->uTextureSampler_0_Stage0Smplr, uv).x; | |
outputCoverage_Stage0 = float4(factor); | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * outputCoverage_Stage0; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:26:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTextureCoords_Stage0 [[user(locn0)]]; | |
int vTexIndex_Stage0 [[user(locn1)]]; | |
float4 vinColor_Stage0 [[user(locn2)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float2 uAtlasSizeInv_Stage0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage0; | |
sampler uTextureSampler_0_Stage0Smplr; | |
}; | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage0[[texture(0)]], sampler uTextureSampler_0_Stage0Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage0 = uTextureSampler_0_Stage0; | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
float4 outputCoverage_Stage0; | |
{ | |
outputColor_Stage0 = _in.vinColor_Stage0; | |
float4 texColor; | |
{ | |
texColor = _globals->uTextureSampler_0_Stage0.sample(_globals->uTextureSampler_0_Stage0Smplr, _in.vTextureCoords_Stage0).xxxx; | |
} | |
outputCoverage_Stage0 = texColor; | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * outputCoverage_Stage0; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:29:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
float4 inlineResult895; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult895 = _output; | |
} | |
output_Stage1 = inlineResult895; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:22:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:31:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
float4 uclamp_Stage1_c0_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
float2 inCoord = _coords; | |
float2 subsetCoord; | |
subsetCoord.x = inCoord.x; | |
subsetCoord.y = inCoord.y; | |
float2 clampedCoord; | |
clampedCoord.x = clamp(subsetCoord.x, _globals->_anonInterface0->uclamp_Stage1_c0_c0.x, _globals->_anonInterface0->uclamp_Stage1_c0_c0.z); | |
clampedCoord.y = subsetCoord.y; | |
float4 textureColor = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, clampedCoord).xxxx; | |
_output = _input * textureColor; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, _input, _coords); | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
float4 inlineResult1700; | |
float2 inlineArg1700_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1700_1); | |
inlineResult1700 = _output; | |
} | |
output_Stage1 += inlineResult1700 * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1834; | |
float2 inlineArg1834_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1834_1); | |
inlineResult1834 = _output; | |
} | |
output_Stage1 += inlineResult1834 * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1968; | |
float2 inlineArg1968_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1968_1); | |
inlineResult1968 = _output; | |
} | |
output_Stage1 += inlineResult1968 * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2102; | |
float2 inlineArg2102_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2102_1); | |
inlineResult2102 = _output; | |
} | |
output_Stage1 += inlineResult2102 * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2236; | |
float2 inlineArg2236_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2236_1); | |
inlineResult2236 = _output; | |
} | |
output_Stage1 += inlineResult2236 * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2370; | |
float2 inlineArg2370_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2370_1); | |
inlineResult2370 = _output; | |
} | |
output_Stage1 += inlineResult2370 * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2504; | |
float2 inlineArg2504_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2504_1); | |
inlineResult2504 = _output; | |
} | |
output_Stage1 += inlineResult2504 * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2638; | |
float2 inlineArg2638_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2638_1); | |
inlineResult2638 = _output; | |
} | |
output_Stage1 += inlineResult2638 * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2772; | |
float2 inlineArg2772_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2772_1); | |
inlineResult2772 = _output; | |
} | |
output_Stage1 += inlineResult2772 * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2906; | |
float2 inlineArg2906_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2906_1); | |
inlineResult2906 = _output; | |
} | |
output_Stage1 += inlineResult2906 * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3040; | |
float2 inlineArg3040_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3040_1); | |
inlineResult3040 = _output; | |
} | |
output_Stage1 += inlineResult3040 * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3174; | |
float2 inlineArg3174_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3174_1); | |
inlineResult3174 = _output; | |
} | |
output_Stage1 += inlineResult3174 * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3308; | |
float2 inlineArg3308_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3308_1); | |
inlineResult3308 = _output; | |
} | |
output_Stage1 += inlineResult3308 * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3442; | |
float2 inlineArg3442_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3442_1); | |
inlineResult3442 = _output; | |
} | |
output_Stage1 += inlineResult3442 * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3576; | |
float2 inlineArg3576_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3576_1); | |
inlineResult3576 = _output; | |
} | |
output_Stage1 += inlineResult3576 * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3710; | |
float2 inlineArg3710_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3710_1); | |
inlineResult3710 = _output; | |
} | |
output_Stage1 += inlineResult3710 * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3844; | |
float2 inlineArg3844_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3844_1); | |
inlineResult3844 = _output; | |
} | |
output_Stage1 += inlineResult3844 * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3978; | |
float2 inlineArg3978_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3978_1); | |
inlineResult3978 = _output; | |
} | |
output_Stage1 += inlineResult3978 * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4112; | |
float2 inlineArg4112_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4112_1); | |
inlineResult4112 = _output; | |
} | |
output_Stage1 += inlineResult4112 * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4246; | |
float2 inlineArg4246_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4246_1); | |
inlineResult4246 = _output; | |
} | |
output_Stage1 += inlineResult4246 * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4380; | |
float2 inlineArg4380_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4380_1); | |
inlineResult4380 = _output; | |
} | |
output_Stage1 += inlineResult4380 * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4514; | |
float2 inlineArg4514_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4514_1); | |
inlineResult4514 = _output; | |
} | |
output_Stage1 += inlineResult4514 * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4648; | |
float2 inlineArg4648_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4648_1); | |
inlineResult4648 = _output; | |
} | |
output_Stage1 += inlineResult4648 * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4782; | |
float2 inlineArg4782_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4782_1); | |
inlineResult4782 = _output; | |
} | |
output_Stage1 += inlineResult4782 * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4916; | |
float2 inlineArg4916_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4916_1); | |
inlineResult4916 = _output; | |
} | |
output_Stage1 += inlineResult4916 * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:26:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:43:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:52:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _coords).xxxx * _input; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
float4 inlineResult920; | |
float4 inlineArg920_0 = _input; | |
float2 inlineArg920_1 = _coords; | |
{ | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
inlineArg920_1 = (matrix * float3(inlineArg920_1, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, inlineArg920_1).xxxx * inlineArg920_0; | |
inlineResult920 = _output; | |
} | |
_output = inlineResult920; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:25:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:34:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:56:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _coords).xxxx * _input; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
float4 inlineResult920; | |
float4 inlineArg920_0 = _input; | |
float2 inlineArg920_1 = _coords; | |
{ | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
inlineArg920_1 = (matrix * float3(inlineArg920_1, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, inlineArg920_1).xxxx * inlineArg920_0; | |
inlineResult920 = _output; | |
} | |
_output = inlineResult920; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:25:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:34:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:56:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
float4 uclamp_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
float2 inCoord = _in.vTransformedCoords_0_Stage0; | |
float2 subsetCoord; | |
subsetCoord.x = inCoord.x; | |
subsetCoord.y = inCoord.y; | |
float2 clampedCoord; | |
clampedCoord.x = clamp(subsetCoord.x, _globals->_anonInterface0->uclamp_Stage1_c0.x, _globals->_anonInterface0->uclamp_Stage1_c0.z); | |
clampedCoord.y = clamp(subsetCoord.y, _globals->_anonInterface0->uclamp_Stage1_c0.y, _globals->_anonInterface0->uclamp_Stage1_c0.w); | |
float4 textureColor = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, clampedCoord).xxxx; | |
_output = _input * textureColor; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = TextureEffect_Stage1_c0(_in, _globals, float4(1.0)); | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:23:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:40:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
float4 vcolor_Stage0 [[user(locn1)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
{ | |
outputColor_Stage0 = _in.vcolor_Stage0; | |
} | |
float4 output_Stage1; | |
{ | |
float4 inlineResult949; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult949 = _output; | |
} | |
output_Stage1 = inlineResult949; | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * output_Stage1; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:24:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:33:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
float4 vcolor_Stage0 [[user(locn1)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
float4 inlineResult949; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult949 = _output; | |
} | |
output_Stage1 = inlineResult949; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:24:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:33:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
float4 inlineResult895; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult895 = _output; | |
} | |
output_Stage1 = inlineResult895; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:22:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:31:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _coords).xxxx * _input; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
float4 inlineResult920; | |
float4 inlineArg920_0 = _input; | |
float2 inlineArg920_1 = _coords; | |
{ | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
inlineArg920_1 = (matrix * float3(inlineArg920_1, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, inlineArg920_1).xxxx * inlineArg920_0; | |
inlineResult920 = _output; | |
} | |
_output = inlineResult920; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:25:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:34:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:56:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
float4 uclamp_Stage1_c0_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
float2 inCoord = _coords; | |
float2 subsetCoord; | |
subsetCoord.x = inCoord.x; | |
subsetCoord.y = inCoord.y; | |
float2 clampedCoord; | |
clampedCoord.x = subsetCoord.x; | |
clampedCoord.y = clamp(subsetCoord.y, _globals->_anonInterface0->uclamp_Stage1_c0_c0.y, _globals->_anonInterface0->uclamp_Stage1_c0_c0.w); | |
float4 textureColor = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, clampedCoord).xxxx; | |
_output = _input * textureColor; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, _input, _coords); | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
float4 inlineResult1700; | |
float2 inlineArg1700_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1700_1); | |
inlineResult1700 = _output; | |
} | |
output_Stage1 += inlineResult1700 * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1834; | |
float2 inlineArg1834_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1834_1); | |
inlineResult1834 = _output; | |
} | |
output_Stage1 += inlineResult1834 * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1968; | |
float2 inlineArg1968_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1968_1); | |
inlineResult1968 = _output; | |
} | |
output_Stage1 += inlineResult1968 * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2102; | |
float2 inlineArg2102_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2102_1); | |
inlineResult2102 = _output; | |
} | |
output_Stage1 += inlineResult2102 * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2236; | |
float2 inlineArg2236_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2236_1); | |
inlineResult2236 = _output; | |
} | |
output_Stage1 += inlineResult2236 * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2370; | |
float2 inlineArg2370_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2370_1); | |
inlineResult2370 = _output; | |
} | |
output_Stage1 += inlineResult2370 * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2504; | |
float2 inlineArg2504_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2504_1); | |
inlineResult2504 = _output; | |
} | |
output_Stage1 += inlineResult2504 * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2638; | |
float2 inlineArg2638_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2638_1); | |
inlineResult2638 = _output; | |
} | |
output_Stage1 += inlineResult2638 * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2772; | |
float2 inlineArg2772_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2772_1); | |
inlineResult2772 = _output; | |
} | |
output_Stage1 += inlineResult2772 * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2906; | |
float2 inlineArg2906_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2906_1); | |
inlineResult2906 = _output; | |
} | |
output_Stage1 += inlineResult2906 * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3040; | |
float2 inlineArg3040_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3040_1); | |
inlineResult3040 = _output; | |
} | |
output_Stage1 += inlineResult3040 * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3174; | |
float2 inlineArg3174_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3174_1); | |
inlineResult3174 = _output; | |
} | |
output_Stage1 += inlineResult3174 * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3308; | |
float2 inlineArg3308_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3308_1); | |
inlineResult3308 = _output; | |
} | |
output_Stage1 += inlineResult3308 * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3442; | |
float2 inlineArg3442_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3442_1); | |
inlineResult3442 = _output; | |
} | |
output_Stage1 += inlineResult3442 * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3576; | |
float2 inlineArg3576_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3576_1); | |
inlineResult3576 = _output; | |
} | |
output_Stage1 += inlineResult3576 * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3710; | |
float2 inlineArg3710_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3710_1); | |
inlineResult3710 = _output; | |
} | |
output_Stage1 += inlineResult3710 * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3844; | |
float2 inlineArg3844_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3844_1); | |
inlineResult3844 = _output; | |
} | |
output_Stage1 += inlineResult3844 * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3978; | |
float2 inlineArg3978_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3978_1); | |
inlineResult3978 = _output; | |
} | |
output_Stage1 += inlineResult3978 * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4112; | |
float2 inlineArg4112_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4112_1); | |
inlineResult4112 = _output; | |
} | |
output_Stage1 += inlineResult4112 * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4246; | |
float2 inlineArg4246_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4246_1); | |
inlineResult4246 = _output; | |
} | |
output_Stage1 += inlineResult4246 * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4380; | |
float2 inlineArg4380_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4380_1); | |
inlineResult4380 = _output; | |
} | |
output_Stage1 += inlineResult4380 * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4514; | |
float2 inlineArg4514_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4514_1); | |
inlineResult4514 = _output; | |
} | |
output_Stage1 += inlineResult4514 * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4648; | |
float2 inlineArg4648_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4648_1); | |
inlineResult4648 = _output; | |
} | |
output_Stage1 += inlineResult4648 * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4782; | |
float2 inlineArg4782_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4782_1); | |
inlineResult4782 = _output; | |
} | |
output_Stage1 += inlineResult4782 * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4916; | |
float2 inlineArg4916_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4916_1); | |
inlineResult4916 = _output; | |
} | |
output_Stage1 += inlineResult4916 * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:26:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:43:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:52:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _coords).xxxx * _input; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
float4 inlineResult920; | |
float4 inlineArg920_0 = _input; | |
float2 inlineArg920_1 = _coords; | |
{ | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
inlineArg920_1 = (matrix * float3(inlineArg920_1, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, inlineArg920_1).xxxx * inlineArg920_0; | |
inlineResult920 = _output; | |
} | |
_output = inlineResult920; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:25:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:34:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:56:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
float4 uclamp_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
float2 inCoord = _in.vTransformedCoords_0_Stage0; | |
float2 subsetCoord; | |
subsetCoord.x = inCoord.x; | |
subsetCoord.y = inCoord.y; | |
float2 clampedCoord; | |
clampedCoord.x = clamp(subsetCoord.x, _globals->_anonInterface0->uclamp_Stage1_c0.x, _globals->_anonInterface0->uclamp_Stage1_c0.z); | |
clampedCoord.y = clamp(subsetCoord.y, _globals->_anonInterface0->uclamp_Stage1_c0.y, _globals->_anonInterface0->uclamp_Stage1_c0.w); | |
float4 textureColor = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, clampedCoord).xxxx; | |
_output = _input * textureColor; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = TextureEffect_Stage1_c0(_in, _globals, float4(1.0)); | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:23:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:40:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
float4 vcolor_Stage0 [[user(locn1)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
{ | |
outputColor_Stage0 = _in.vcolor_Stage0; | |
} | |
float4 output_Stage1; | |
{ | |
float4 inlineResult949; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult949 = _output; | |
} | |
output_Stage1 = inlineResult949; | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * output_Stage1; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:24:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:33:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
float4 vcolor_Stage0 [[user(locn1)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
{ | |
outputColor_Stage0 = _in.vcolor_Stage0; | |
} | |
float4 output_Stage1; | |
{ | |
float4 inlineResult949; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult949 = _output; | |
} | |
output_Stage1 = inlineResult949; | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * output_Stage1; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:24:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:33:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTextureCoords_Stage0 [[user(locn0)]]; | |
int vTexIndex_Stage0 [[user(locn1)]]; | |
float4 vinColor_Stage0 [[user(locn2)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float2 uAtlasSizeInv_Stage0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage0; | |
sampler uTextureSampler_0_Stage0Smplr; | |
}; | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage0[[texture(0)]], sampler uTextureSampler_0_Stage0Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage0 = uTextureSampler_0_Stage0; | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
float4 outputCoverage_Stage0; | |
{ | |
outputColor_Stage0 = _in.vinColor_Stage0; | |
float4 texColor; | |
{ | |
texColor = _globals->uTextureSampler_0_Stage0.sample(_globals->uTextureSampler_0_Stage0Smplr, _in.vTextureCoords_Stage0).xxxx; | |
} | |
outputCoverage_Stage0 = texColor; | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * outputCoverage_Stage0; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:29:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float4 vinColor_Stage0 [[user(locn0)]]; | |
float2 vTextureCoords_Stage0 [[user(locn1)]]; | |
int vTexIndex_Stage0 [[user(locn2)]]; | |
float2 vIntTextureCoords_Stage0 [[user(locn3)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float2 uAtlasDimensionsInv_Stage0; | |
float uDistanceAdjust_Stage0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage0; | |
sampler uTextureSampler_0_Stage0Smplr; | |
}; | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage0[[texture(0)]], sampler uTextureSampler_0_Stage0Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage0 = uTextureSampler_0_Stage0; | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
float4 outputCoverage_Stage0; | |
{ | |
outputColor_Stage0 = _in.vinColor_Stage0; | |
float2 uv = _in.vTextureCoords_Stage0; | |
float4 texColor; | |
{ | |
texColor = _globals->uTextureSampler_0_Stage0.sample(_globals->uTextureSampler_0_Stage0Smplr, uv).xxxx; | |
} | |
float distance = 7.96875 * (texColor.x - 0.50196081399917603); | |
distance -= _globals->_anonInterface0->uDistanceAdjust_Stage0; | |
float afwidth; | |
afwidth = abs(0.64999997615814209 * dfdy(_in.vIntTextureCoords_Stage0.y)); | |
float val = smoothstep(-afwidth, afwidth, distance); | |
outputCoverage_Stage0 = float4(val); | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * outputCoverage_Stage0; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:32:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
2020-07-07 15:28:38.767409+0900 Runner[258:8662] Debug mode 1 | |
2020-07-07 15:28:38.771563+0900 Runner[258:8662] opening /var/mobile/Containers/Data/Application/4245058B-32B5-4347-A087-5B74158DB097/Documents/app.db | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
float4 inlineResult895; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult895 = _output; | |
} | |
output_Stage1 = inlineResult895; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:22:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:31:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _coords).xxxx * _input; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
float4 inlineResult920; | |
float4 inlineArg920_0 = _input; | |
float2 inlineArg920_1 = _coords; | |
{ | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
inlineArg920_1 = (matrix * float3(inlineArg920_1, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, inlineArg920_1).xxxx * inlineArg920_0; | |
inlineResult920 = _output; | |
} | |
_output = inlineResult920; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:25:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:34:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:56:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
float4 uclamp_Stage1_c0_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
float2 inCoord = _coords; | |
float2 subsetCoord; | |
subsetCoord.x = inCoord.x; | |
subsetCoord.y = inCoord.y; | |
float2 clampedCoord; | |
clampedCoord.x = subsetCoord.x; | |
clampedCoord.y = clamp(subsetCoord.y, _globals->_anonInterface0->uclamp_Stage1_c0_c0.y, _globals->_anonInterface0->uclamp_Stage1_c0_c0.w); | |
float4 textureColor = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, clampedCoord).xxxx; | |
_output = _input * textureColor; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, _input, _coords); | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
float4 inlineResult1700; | |
float2 inlineArg1700_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1700_1); | |
inlineResult1700 = _output; | |
} | |
output_Stage1 += inlineResult1700 * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1834; | |
float2 inlineArg1834_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1834_1); | |
inlineResult1834 = _output; | |
} | |
output_Stage1 += inlineResult1834 * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1968; | |
float2 inlineArg1968_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1968_1); | |
inlineResult1968 = _output; | |
} | |
output_Stage1 += inlineResult1968 * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2102; | |
float2 inlineArg2102_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2102_1); | |
inlineResult2102 = _output; | |
} | |
output_Stage1 += inlineResult2102 * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2236; | |
float2 inlineArg2236_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2236_1); | |
inlineResult2236 = _output; | |
} | |
output_Stage1 += inlineResult2236 * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2370; | |
float2 inlineArg2370_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2370_1); | |
inlineResult2370 = _output; | |
} | |
output_Stage1 += inlineResult2370 * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2504; | |
float2 inlineArg2504_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2504_1); | |
inlineResult2504 = _output; | |
} | |
output_Stage1 += inlineResult2504 * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2638; | |
float2 inlineArg2638_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2638_1); | |
inlineResult2638 = _output; | |
} | |
output_Stage1 += inlineResult2638 * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2772; | |
float2 inlineArg2772_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2772_1); | |
inlineResult2772 = _output; | |
} | |
output_Stage1 += inlineResult2772 * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2906; | |
float2 inlineArg2906_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2906_1); | |
inlineResult2906 = _output; | |
} | |
output_Stage1 += inlineResult2906 * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3040; | |
float2 inlineArg3040_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3040_1); | |
inlineResult3040 = _output; | |
} | |
output_Stage1 += inlineResult3040 * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3174; | |
float2 inlineArg3174_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3174_1); | |
inlineResult3174 = _output; | |
} | |
output_Stage1 += inlineResult3174 * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3308; | |
float2 inlineArg3308_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3308_1); | |
inlineResult3308 = _output; | |
} | |
output_Stage1 += inlineResult3308 * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3442; | |
float2 inlineArg3442_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3442_1); | |
inlineResult3442 = _output; | |
} | |
output_Stage1 += inlineResult3442 * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3576; | |
float2 inlineArg3576_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3576_1); | |
inlineResult3576 = _output; | |
} | |
output_Stage1 += inlineResult3576 * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3710; | |
float2 inlineArg3710_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3710_1); | |
inlineResult3710 = _output; | |
} | |
output_Stage1 += inlineResult3710 * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3844; | |
float2 inlineArg3844_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3844_1); | |
inlineResult3844 = _output; | |
} | |
output_Stage1 += inlineResult3844 * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3978; | |
float2 inlineArg3978_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3978_1); | |
inlineResult3978 = _output; | |
} | |
output_Stage1 += inlineResult3978 * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4112; | |
float2 inlineArg4112_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4112_1); | |
inlineResult4112 = _output; | |
} | |
output_Stage1 += inlineResult4112 * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4246; | |
float2 inlineArg4246_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4246_1); | |
inlineResult4246 = _output; | |
} | |
output_Stage1 += inlineResult4246 * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4380; | |
float2 inlineArg4380_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4380_1); | |
inlineResult4380 = _output; | |
} | |
output_Stage1 += inlineResult4380 * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4514; | |
float2 inlineArg4514_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4514_1); | |
inlineResult4514 = _output; | |
} | |
output_Stage1 += inlineResult4514 * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4648; | |
float2 inlineArg4648_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4648_1); | |
inlineResult4648 = _output; | |
} | |
output_Stage1 += inlineResult4648 * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4782; | |
float2 inlineArg4782_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4782_1); | |
inlineResult4782 = _output; | |
} | |
output_Stage1 += inlineResult4782 * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4916; | |
float2 inlineArg4916_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4916_1); | |
inlineResult4916 = _output; | |
} | |
output_Stage1 += inlineResult4916 * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:26:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:43:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:52:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _coords).xxxx * _input; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
float4 inlineResult920; | |
float4 inlineArg920_0 = _input; | |
float2 inlineArg920_1 = _coords; | |
{ | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
inlineArg920_1 = (matrix * float3(inlineArg920_1, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, inlineArg920_1).xxxx * inlineArg920_0; | |
inlineResult920 = _output; | |
} | |
_output = inlineResult920; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:25:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:34:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:56:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
float4 uclamp_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
float2 inCoord = _in.vTransformedCoords_0_Stage0; | |
float2 subsetCoord; | |
subsetCoord.x = inCoord.x; | |
subsetCoord.y = inCoord.y; | |
float2 clampedCoord; | |
clampedCoord.x = clamp(subsetCoord.x, _globals->_anonInterface0->uclamp_Stage1_c0.x, _globals->_anonInterface0->uclamp_Stage1_c0.z); | |
clampedCoord.y = clamp(subsetCoord.y, _globals->_anonInterface0->uclamp_Stage1_c0.y, _globals->_anonInterface0->uclamp_Stage1_c0.w); | |
float4 textureColor = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, clampedCoord).xxxx; | |
_output = _input * textureColor; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = TextureEffect_Stage1_c0(_in, _globals, float4(1.0)); | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:23:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:40:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
float4 vcolor_Stage0 [[user(locn1)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
{ | |
outputColor_Stage0 = _in.vcolor_Stage0; | |
} | |
float4 output_Stage1; | |
{ | |
float4 inlineResult949; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult949 = _output; | |
} | |
output_Stage1 = inlineResult949; | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * output_Stage1; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:24:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:33:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
float4 vcolor_Stage0 [[user(locn1)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
float4 inlineResult949; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult949 = _output; | |
} | |
output_Stage1 = inlineResult949; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:24:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:33:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
float4 inlineResult895; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult895 = _output; | |
} | |
output_Stage1 = inlineResult895; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:22:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:31:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
float4 inlineResult895; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult895 = _output; | |
} | |
output_Stage1 = inlineResult895; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:22:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:31:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
float4 uclamp_Stage1_c0_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
float2 inCoord = _coords; | |
float2 subsetCoord; | |
subsetCoord.x = inCoord.x; | |
subsetCoord.y = inCoord.y; | |
float2 clampedCoord; | |
clampedCoord.x = clamp(subsetCoord.x, _globals->_anonInterface0->uclamp_Stage1_c0_c0.x, _globals->_anonInterface0->uclamp_Stage1_c0_c0.z); | |
clampedCoord.y = subsetCoord.y; | |
float4 textureColor = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, clampedCoord).xxxx; | |
_output = _input * textureColor; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, _input, _coords); | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
float4 inlineResult1700; | |
float2 inlineArg1700_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1700_1); | |
inlineResult1700 = _output; | |
} | |
output_Stage1 += inlineResult1700 * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1834; | |
float2 inlineArg1834_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1834_1); | |
inlineResult1834 = _output; | |
} | |
output_Stage1 += inlineResult1834 * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1968; | |
float2 inlineArg1968_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1968_1); | |
inlineResult1968 = _output; | |
} | |
output_Stage1 += inlineResult1968 * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2102; | |
float2 inlineArg2102_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2102_1); | |
inlineResult2102 = _output; | |
} | |
output_Stage1 += inlineResult2102 * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2236; | |
float2 inlineArg2236_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2236_1); | |
inlineResult2236 = _output; | |
} | |
output_Stage1 += inlineResult2236 * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2370; | |
float2 inlineArg2370_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2370_1); | |
inlineResult2370 = _output; | |
} | |
output_Stage1 += inlineResult2370 * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2504; | |
float2 inlineArg2504_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2504_1); | |
inlineResult2504 = _output; | |
} | |
output_Stage1 += inlineResult2504 * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2638; | |
float2 inlineArg2638_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2638_1); | |
inlineResult2638 = _output; | |
} | |
output_Stage1 += inlineResult2638 * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2772; | |
float2 inlineArg2772_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2772_1); | |
inlineResult2772 = _output; | |
} | |
output_Stage1 += inlineResult2772 * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2906; | |
float2 inlineArg2906_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2906_1); | |
inlineResult2906 = _output; | |
} | |
output_Stage1 += inlineResult2906 * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3040; | |
float2 inlineArg3040_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3040_1); | |
inlineResult3040 = _output; | |
} | |
output_Stage1 += inlineResult3040 * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3174; | |
float2 inlineArg3174_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3174_1); | |
inlineResult3174 = _output; | |
} | |
output_Stage1 += inlineResult3174 * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3308; | |
float2 inlineArg3308_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3308_1); | |
inlineResult3308 = _output; | |
} | |
output_Stage1 += inlineResult3308 * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3442; | |
float2 inlineArg3442_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3442_1); | |
inlineResult3442 = _output; | |
} | |
output_Stage1 += inlineResult3442 * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3576; | |
float2 inlineArg3576_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3576_1); | |
inlineResult3576 = _output; | |
} | |
output_Stage1 += inlineResult3576 * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3710; | |
float2 inlineArg3710_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3710_1); | |
inlineResult3710 = _output; | |
} | |
output_Stage1 += inlineResult3710 * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3844; | |
float2 inlineArg3844_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3844_1); | |
inlineResult3844 = _output; | |
} | |
output_Stage1 += inlineResult3844 * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3978; | |
float2 inlineArg3978_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3978_1); | |
inlineResult3978 = _output; | |
} | |
output_Stage1 += inlineResult3978 * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4112; | |
float2 inlineArg4112_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4112_1); | |
inlineResult4112 = _output; | |
} | |
output_Stage1 += inlineResult4112 * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4246; | |
float2 inlineArg4246_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4246_1); | |
inlineResult4246 = _output; | |
} | |
output_Stage1 += inlineResult4246 * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4380; | |
float2 inlineArg4380_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4380_1); | |
inlineResult4380 = _output; | |
} | |
output_Stage1 += inlineResult4380 * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4514; | |
float2 inlineArg4514_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4514_1); | |
inlineResult4514 = _output; | |
} | |
output_Stage1 += inlineResult4514 * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4648; | |
float2 inlineArg4648_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4648_1); | |
inlineResult4648 = _output; | |
} | |
output_Stage1 += inlineResult4648 * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4782; | |
float2 inlineArg4782_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4782_1); | |
inlineResult4782 = _output; | |
} | |
output_Stage1 += inlineResult4782 * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4916; | |
float2 inlineArg4916_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4916_1); | |
inlineResult4916 = _output; | |
} | |
output_Stage1 += inlineResult4916 * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:26:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:43:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:52:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _coords).xxxx * _input; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
float4 inlineResult920; | |
float4 inlineArg920_0 = _input; | |
float2 inlineArg920_1 = _coords; | |
{ | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
inlineArg920_1 = (matrix * float3(inlineArg920_1, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, inlineArg920_1).xxxx * inlineArg920_0; | |
inlineResult920 = _output; | |
} | |
_output = inlineResult920; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:25:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:34:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:56:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
float4 uclamp_Stage1_c0_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
float2 inCoord = _coords; | |
float2 subsetCoord; | |
subsetCoord.x = inCoord.x; | |
subsetCoord.y = inCoord.y; | |
float2 clampedCoord; | |
clampedCoord.x = subsetCoord.x; | |
clampedCoord.y = clamp(subsetCoord.y, _globals->_anonInterface0->uclamp_Stage1_c0_c0.y, _globals->_anonInterface0->uclamp_Stage1_c0_c0.w); | |
float4 textureColor = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, clampedCoord).xxxx; | |
_output = _input * textureColor; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, _input, _coords); | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
float4 inlineResult1700; | |
float2 inlineArg1700_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1700_1); | |
inlineResult1700 = _output; | |
} | |
output_Stage1 += inlineResult1700 * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1834; | |
float2 inlineArg1834_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1834_1); | |
inlineResult1834 = _output; | |
} | |
output_Stage1 += inlineResult1834 * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1968; | |
float2 inlineArg1968_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1968_1); | |
inlineResult1968 = _output; | |
} | |
output_Stage1 += inlineResult1968 * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2102; | |
float2 inlineArg2102_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2102_1); | |
inlineResult2102 = _output; | |
} | |
output_Stage1 += inlineResult2102 * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2236; | |
float2 inlineArg2236_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2236_1); | |
inlineResult2236 = _output; | |
} | |
output_Stage1 += inlineResult2236 * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2370; | |
float2 inlineArg2370_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2370_1); | |
inlineResult2370 = _output; | |
} | |
output_Stage1 += inlineResult2370 * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2504; | |
float2 inlineArg2504_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2504_1); | |
inlineResult2504 = _output; | |
} | |
output_Stage1 += inlineResult2504 * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2638; | |
float2 inlineArg2638_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2638_1); | |
inlineResult2638 = _output; | |
} | |
output_Stage1 += inlineResult2638 * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2772; | |
float2 inlineArg2772_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2772_1); | |
inlineResult2772 = _output; | |
} | |
output_Stage1 += inlineResult2772 * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2906; | |
float2 inlineArg2906_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2906_1); | |
inlineResult2906 = _output; | |
} | |
output_Stage1 += inlineResult2906 * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3040; | |
float2 inlineArg3040_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3040_1); | |
inlineResult3040 = _output; | |
} | |
output_Stage1 += inlineResult3040 * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3174; | |
float2 inlineArg3174_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3174_1); | |
inlineResult3174 = _output; | |
} | |
output_Stage1 += inlineResult3174 * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3308; | |
float2 inlineArg3308_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3308_1); | |
inlineResult3308 = _output; | |
} | |
output_Stage1 += inlineResult3308 * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3442; | |
float2 inlineArg3442_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3442_1); | |
inlineResult3442 = _output; | |
} | |
output_Stage1 += inlineResult3442 * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3576; | |
float2 inlineArg3576_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3576_1); | |
inlineResult3576 = _output; | |
} | |
output_Stage1 += inlineResult3576 * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3710; | |
float2 inlineArg3710_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3710_1); | |
inlineResult3710 = _output; | |
} | |
output_Stage1 += inlineResult3710 * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3844; | |
float2 inlineArg3844_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3844_1); | |
inlineResult3844 = _output; | |
} | |
output_Stage1 += inlineResult3844 * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3978; | |
float2 inlineArg3978_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3978_1); | |
inlineResult3978 = _output; | |
} | |
output_Stage1 += inlineResult3978 * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4112; | |
float2 inlineArg4112_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4112_1); | |
inlineResult4112 = _output; | |
} | |
output_Stage1 += inlineResult4112 * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4246; | |
float2 inlineArg4246_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4246_1); | |
inlineResult4246 = _output; | |
} | |
output_Stage1 += inlineResult4246 * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4380; | |
float2 inlineArg4380_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4380_1); | |
inlineResult4380 = _output; | |
} | |
output_Stage1 += inlineResult4380 * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4514; | |
float2 inlineArg4514_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4514_1); | |
inlineResult4514 = _output; | |
} | |
output_Stage1 += inlineResult4514 * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4648; | |
float2 inlineArg4648_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4648_1); | |
inlineResult4648 = _output; | |
} | |
output_Stage1 += inlineResult4648 * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4782; | |
float2 inlineArg4782_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4782_1); | |
inlineResult4782 = _output; | |
} | |
output_Stage1 += inlineResult4782 * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4916; | |
float2 inlineArg4916_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4916_1); | |
inlineResult4916 = _output; | |
} | |
output_Stage1 += inlineResult4916 * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:26:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:43:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:52:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _coords).xxxx * _input; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
float4 inlineResult920; | |
float4 inlineArg920_0 = _input; | |
float2 inlineArg920_1 = _coords; | |
{ | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
inlineArg920_1 = (matrix * float3(inlineArg920_1, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, inlineArg920_1).xxxx * inlineArg920_0; | |
inlineResult920 = _output; | |
} | |
_output = inlineResult920; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:25:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:34:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:56:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
float4 uclamp_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
float2 inCoord = _in.vTransformedCoords_0_Stage0; | |
float2 subsetCoord; | |
subsetCoord.x = inCoord.x; | |
subsetCoord.y = inCoord.y; | |
float2 clampedCoord; | |
clampedCoord.x = clamp(subsetCoord.x, _globals->_anonInterface0->uclamp_Stage1_c0.x, _globals->_anonInterface0->uclamp_Stage1_c0.z); | |
clampedCoord.y = clamp(subsetCoord.y, _globals->_anonInterface0->uclamp_Stage1_c0.y, _globals->_anonInterface0->uclamp_Stage1_c0.w); | |
float4 textureColor = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, clampedCoord).xxxx; | |
_output = _input * textureColor; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = TextureEffect_Stage1_c0(_in, _globals, float4(1.0)); | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:23:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:40:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
float4 vcolor_Stage0 [[user(locn1)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
{ | |
outputColor_Stage0 = _in.vcolor_Stage0; | |
} | |
float4 output_Stage1; | |
{ | |
float4 inlineResult949; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult949 = _output; | |
} | |
output_Stage1 = inlineResult949; | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * output_Stage1; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:24:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:33:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
float4 vcolor_Stage0 [[user(locn1)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
{ | |
outputColor_Stage0 = _in.vcolor_Stage0; | |
} | |
float4 output_Stage1; | |
{ | |
float4 inlineResult949; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult949 = _output; | |
} | |
output_Stage1 = inlineResult949; | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * output_Stage1; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:24:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:33:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTextureCoords_Stage0 [[user(locn0)]]; | |
int vTexIndex_Stage0 [[user(locn1)]]; | |
float4 vinColor_Stage0 [[user(locn2)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float2 uAtlasSizeInv_Stage0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage0; | |
sampler uTextureSampler_0_Stage0Smplr; | |
}; | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage0[[texture(0)]], sampler uTextureSampler_0_Stage0Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage0 = uTextureSampler_0_Stage0; | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
float4 outputCoverage_Stage0; | |
{ | |
outputColor_Stage0 = _in.vinColor_Stage0; | |
float4 texColor; | |
{ | |
texColor = _globals->uTextureSampler_0_Stage0.sample(_globals->uTextureSampler_0_Stage0Smplr, _in.vTextureCoords_Stage0).xxxx; | |
} | |
outputCoverage_Stage0 = texColor; | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * outputCoverage_Stage0; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:29:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float4 vinColor_Stage0 [[user(locn0)]]; | |
float2 vTextureCoords_Stage0 [[user(locn1)]]; | |
int vTexIndex_Stage0 [[user(locn2)]]; | |
float2 vIntTextureCoords_Stage0 [[user(locn3)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float2 uAtlasDimensionsInv_Stage0; | |
float uDistanceAdjust_Stage0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage0; | |
sampler uTextureSampler_0_Stage0Smplr; | |
}; | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage0[[texture(0)]], sampler uTextureSampler_0_Stage0Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage0 = uTextureSampler_0_Stage0; | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
float4 outputCoverage_Stage0; | |
{ | |
outputColor_Stage0 = _in.vinColor_Stage0; | |
float2 uv = _in.vTextureCoords_Stage0; | |
float4 texColor; | |
{ | |
texColor = _globals->uTextureSampler_0_Stage0.sample(_globals->uTextureSampler_0_Stage0Smplr, uv).xxxx; | |
} | |
float distance = 7.96875 * (texColor.x - 0.50196081399917603); | |
distance -= _globals->_anonInterface0->uDistanceAdjust_Stage0; | |
float afwidth; | |
afwidth = abs(0.64999997615814209 * dfdy(_in.vIntTextureCoords_Stage0.y)); | |
float val = smoothstep(-afwidth, afwidth, distance); | |
outputCoverage_Stage0 = float4(val); | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * outputCoverage_Stage0; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:32:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
2020-07-07 15:28:39.628348+0900 Runner[258:8662] Preloading CNContactViewController | |
2020-07-07 15:28:39.735961+0900 Runner[258:8775] PRAGMA user_version | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
float4 inlineResult895; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult895 = _output; | |
} | |
output_Stage1 = inlineResult895; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:22:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:31:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
float4 uclamp_Stage1_c0_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
float2 inCoord = _coords; | |
float2 subsetCoord; | |
subsetCoord.x = inCoord.x; | |
subsetCoord.y = inCoord.y; | |
float2 clampedCoord; | |
clampedCoord.x = clamp(subsetCoord.x, _globals->_anonInterface0->uclamp_Stage1_c0_c0.x, _globals->_anonInterface0->uclamp_Stage1_c0_c0.z); | |
clampedCoord.y = subsetCoord.y; | |
float4 textureColor = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, clampedCoord).xxxx; | |
_output = _input * textureColor; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, _input, _coords); | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
float4 inlineResult1700; | |
float2 inlineArg1700_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1700_1); | |
inlineResult1700 = _output; | |
} | |
output_Stage1 += inlineResult1700 * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1834; | |
float2 inlineArg1834_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1834_1); | |
inlineResult1834 = _output; | |
} | |
output_Stage1 += inlineResult1834 * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1968; | |
float2 inlineArg1968_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1968_1); | |
inlineResult1968 = _output; | |
} | |
output_Stage1 += inlineResult1968 * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2102; | |
float2 inlineArg2102_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2102_1); | |
inlineResult2102 = _output; | |
} | |
output_Stage1 += inlineResult2102 * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2236; | |
float2 inlineArg2236_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2236_1); | |
inlineResult2236 = _output; | |
} | |
output_Stage1 += inlineResult2236 * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2370; | |
float2 inlineArg2370_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2370_1); | |
inlineResult2370 = _output; | |
} | |
output_Stage1 += inlineResult2370 * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2504; | |
float2 inlineArg2504_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2504_1); | |
inlineResult2504 = _output; | |
} | |
output_Stage1 += inlineResult2504 * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2638; | |
float2 inlineArg2638_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2638_1); | |
inlineResult2638 = _output; | |
} | |
output_Stage1 += inlineResult2638 * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2772; | |
float2 inlineArg2772_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2772_1); | |
inlineResult2772 = _output; | |
} | |
output_Stage1 += inlineResult2772 * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2906; | |
float2 inlineArg2906_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2906_1); | |
inlineResult2906 = _output; | |
} | |
output_Stage1 += inlineResult2906 * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3040; | |
float2 inlineArg3040_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3040_1); | |
inlineResult3040 = _output; | |
} | |
output_Stage1 += inlineResult3040 * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3174; | |
float2 inlineArg3174_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3174_1); | |
inlineResult3174 = _output; | |
} | |
output_Stage1 += inlineResult3174 * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3308; | |
float2 inlineArg3308_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3308_1); | |
inlineResult3308 = _output; | |
} | |
output_Stage1 += inlineResult3308 * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3442; | |
float2 inlineArg3442_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3442_1); | |
inlineResult3442 = _output; | |
} | |
output_Stage1 += inlineResult3442 * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3576; | |
float2 inlineArg3576_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3576_1); | |
inlineResult3576 = _output; | |
} | |
output_Stage1 += inlineResult3576 * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3710; | |
float2 inlineArg3710_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3710_1); | |
inlineResult3710 = _output; | |
} | |
output_Stage1 += inlineResult3710 * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3844; | |
float2 inlineArg3844_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3844_1); | |
inlineResult3844 = _output; | |
} | |
output_Stage1 += inlineResult3844 * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3978; | |
float2 inlineArg3978_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3978_1); | |
inlineResult3978 = _output; | |
} | |
output_Stage1 += inlineResult3978 * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4112; | |
float2 inlineArg4112_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4112_1); | |
inlineResult4112 = _output; | |
} | |
output_Stage1 += inlineResult4112 * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4246; | |
float2 inlineArg4246_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4246_1); | |
inlineResult4246 = _output; | |
} | |
output_Stage1 += inlineResult4246 * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4380; | |
float2 inlineArg4380_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4380_1); | |
inlineResult4380 = _output; | |
} | |
output_Stage1 += inlineResult4380 * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4514; | |
float2 inlineArg4514_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4514_1); | |
inlineResult4514 = _output; | |
} | |
output_Stage1 += inlineResult4514 * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4648; | |
float2 inlineArg4648_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4648_1); | |
inlineResult4648 = _output; | |
} | |
output_Stage1 += inlineResult4648 * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4782; | |
float2 inlineArg4782_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4782_1); | |
inlineResult4782 = _output; | |
} | |
output_Stage1 += inlineResult4782 * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4916; | |
float2 inlineArg4916_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4916_1); | |
inlineResult4916 = _output; | |
} | |
output_Stage1 += inlineResult4916 * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:26:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:43:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:52:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _coords).xxxx * _input; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
float4 inlineResult920; | |
float4 inlineArg920_0 = _input; | |
float2 inlineArg920_1 = _coords; | |
{ | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
inlineArg920_1 = (matrix * float3(inlineArg920_1, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, inlineArg920_1).xxxx * inlineArg920_0; | |
inlineResult920 = _output; | |
} | |
_output = inlineResult920; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:25:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:34:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:56:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _coords).xxxx * _input; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
float4 inlineResult920; | |
float4 inlineArg920_0 = _input; | |
float2 inlineArg920_1 = _coords; | |
{ | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
inlineArg920_1 = (matrix * float3(inlineArg920_1, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, inlineArg920_1).xxxx * inlineArg920_0; | |
inlineResult920 = _output; | |
} | |
_output = inlineResult920; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:25:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:34:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:56:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
float4 uclamp_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
float2 inCoord = _in.vTransformedCoords_0_Stage0; | |
float2 subsetCoord; | |
subsetCoord.x = inCoord.x; | |
subsetCoord.y = inCoord.y; | |
float2 clampedCoord; | |
clampedCoord.x = clamp(subsetCoord.x, _globals->_anonInterface0->uclamp_Stage1_c0.x, _globals->_anonInterface0->uclamp_Stage1_c0.z); | |
clampedCoord.y = clamp(subsetCoord.y, _globals->_anonInterface0->uclamp_Stage1_c0.y, _globals->_anonInterface0->uclamp_Stage1_c0.w); | |
float4 textureColor = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, clampedCoord).xxxx; | |
_output = _input * textureColor; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = TextureEffect_Stage1_c0(_in, _globals, float4(1.0)); | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:23:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:40:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
float4 vcolor_Stage0 [[user(locn1)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
{ | |
outputColor_Stage0 = _in.vcolor_Stage0; | |
} | |
float4 output_Stage1; | |
{ | |
float4 inlineResult949; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult949 = _output; | |
} | |
output_Stage1 = inlineResult949; | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * output_Stage1; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:24:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:33:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
float4 vcolor_Stage0 [[user(locn1)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
float4 inlineResult949; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult949 = _output; | |
} | |
output_Stage1 = inlineResult949; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:24:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:33:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
float4 inlineResult895; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult895 = _output; | |
} | |
output_Stage1 = inlineResult895; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:22:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:31:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
float4 inlineResult895; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult895 = _output; | |
} | |
output_Stage1 = inlineResult895; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:22:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:31:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _coords).xxxx * _input; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
float4 inlineResult920; | |
float4 inlineArg920_0 = _input; | |
float2 inlineArg920_1 = _coords; | |
{ | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
inlineArg920_1 = (matrix * float3(inlineArg920_1, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, inlineArg920_1).xxxx * inlineArg920_0; | |
inlineResult920 = _output; | |
} | |
_output = inlineResult920; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:25:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:34:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:56:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
float4 uclamp_Stage1_c0_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
float2 inCoord = _coords; | |
float2 subsetCoord; | |
subsetCoord.x = inCoord.x; | |
subsetCoord.y = inCoord.y; | |
float2 clampedCoord; | |
clampedCoord.x = subsetCoord.x; | |
clampedCoord.y = clamp(subsetCoord.y, _globals->_anonInterface0->uclamp_Stage1_c0_c0.y, _globals->_anonInterface0->uclamp_Stage1_c0_c0.w); | |
float4 textureColor = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, clampedCoord).xxxx; | |
_output = _input * textureColor; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, _input, _coords); | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
float4 inlineResult1700; | |
float2 inlineArg1700_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1700_1); | |
inlineResult1700 = _output; | |
} | |
output_Stage1 += inlineResult1700 * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1834; | |
float2 inlineArg1834_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1834_1); | |
inlineResult1834 = _output; | |
} | |
output_Stage1 += inlineResult1834 * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1968; | |
float2 inlineArg1968_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1968_1); | |
inlineResult1968 = _output; | |
} | |
output_Stage1 += inlineResult1968 * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2102; | |
float2 inlineArg2102_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2102_1); | |
inlineResult2102 = _output; | |
} | |
output_Stage1 += inlineResult2102 * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2236; | |
float2 inlineArg2236_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2236_1); | |
inlineResult2236 = _output; | |
} | |
output_Stage1 += inlineResult2236 * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2370; | |
float2 inlineArg2370_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2370_1); | |
inlineResult2370 = _output; | |
} | |
output_Stage1 += inlineResult2370 * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2504; | |
float2 inlineArg2504_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2504_1); | |
inlineResult2504 = _output; | |
} | |
output_Stage1 += inlineResult2504 * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2638; | |
float2 inlineArg2638_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2638_1); | |
inlineResult2638 = _output; | |
} | |
output_Stage1 += inlineResult2638 * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2772; | |
float2 inlineArg2772_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2772_1); | |
inlineResult2772 = _output; | |
} | |
output_Stage1 += inlineResult2772 * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2906; | |
float2 inlineArg2906_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2906_1); | |
inlineResult2906 = _output; | |
} | |
output_Stage1 += inlineResult2906 * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3040; | |
float2 inlineArg3040_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3040_1); | |
inlineResult3040 = _output; | |
} | |
output_Stage1 += inlineResult3040 * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3174; | |
float2 inlineArg3174_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3174_1); | |
inlineResult3174 = _output; | |
} | |
output_Stage1 += inlineResult3174 * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3308; | |
float2 inlineArg3308_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3308_1); | |
inlineResult3308 = _output; | |
} | |
output_Stage1 += inlineResult3308 * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3442; | |
float2 inlineArg3442_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3442_1); | |
inlineResult3442 = _output; | |
} | |
output_Stage1 += inlineResult3442 * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3576; | |
float2 inlineArg3576_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3576_1); | |
inlineResult3576 = _output; | |
} | |
output_Stage1 += inlineResult3576 * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3710; | |
float2 inlineArg3710_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3710_1); | |
inlineResult3710 = _output; | |
} | |
output_Stage1 += inlineResult3710 * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3844; | |
float2 inlineArg3844_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3844_1); | |
inlineResult3844 = _output; | |
} | |
output_Stage1 += inlineResult3844 * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3978; | |
float2 inlineArg3978_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3978_1); | |
inlineResult3978 = _output; | |
} | |
output_Stage1 += inlineResult3978 * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4112; | |
float2 inlineArg4112_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4112_1); | |
inlineResult4112 = _output; | |
} | |
output_Stage1 += inlineResult4112 * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4246; | |
float2 inlineArg4246_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4246_1); | |
inlineResult4246 = _output; | |
} | |
output_Stage1 += inlineResult4246 * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4380; | |
float2 inlineArg4380_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4380_1); | |
inlineResult4380 = _output; | |
} | |
output_Stage1 += inlineResult4380 * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4514; | |
float2 inlineArg4514_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4514_1); | |
inlineResult4514 = _output; | |
} | |
output_Stage1 += inlineResult4514 * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4648; | |
float2 inlineArg4648_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4648_1); | |
inlineResult4648 = _output; | |
} | |
output_Stage1 += inlineResult4648 * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4782; | |
float2 inlineArg4782_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4782_1); | |
inlineResult4782 = _output; | |
} | |
output_Stage1 += inlineResult4782 * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4916; | |
float2 inlineArg4916_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4916_1); | |
inlineResult4916 = _output; | |
} | |
output_Stage1 += inlineResult4916 * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:26:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:43:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:52:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _coords).xxxx * _input; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
float4 inlineResult920; | |
float4 inlineArg920_0 = _input; | |
float2 inlineArg920_1 = _coords; | |
{ | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
inlineArg920_1 = (matrix * float3(inlineArg920_1, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, inlineArg920_1).xxxx * inlineArg920_0; | |
inlineResult920 = _output; | |
} | |
_output = inlineResult920; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:25:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:34:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:56:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
float4 uclamp_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
float2 inCoord = _in.vTransformedCoords_0_Stage0; | |
float2 subsetCoord; | |
subsetCoord.x = inCoord.x; | |
subsetCoord.y = inCoord.y; | |
float2 clampedCoord; | |
clampedCoord.x = clamp(subsetCoord.x, _globals->_anonInterface0->uclamp_Stage1_c0.x, _globals->_anonInterface0->uclamp_Stage1_c0.z); | |
clampedCoord.y = clamp(subsetCoord.y, _globals->_anonInterface0->uclamp_Stage1_c0.y, _globals->_anonInterface0->uclamp_Stage1_c0.w); | |
float4 textureColor = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, clampedCoord).xxxx; | |
_output = _input * textureColor; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = TextureEffect_Stage1_c0(_in, _globals, float4(1.0)); | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:23:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:40:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
float4 vcolor_Stage0 [[user(locn1)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
{ | |
outputColor_Stage0 = _in.vcolor_Stage0; | |
} | |
float4 output_Stage1; | |
{ | |
float4 inlineResult949; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult949 = _output; | |
} | |
output_Stage1 = inlineResult949; | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * output_Stage1; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:24:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:33:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
float4 vcolor_Stage0 [[user(locn1)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
{ | |
outputColor_Stage0 = _in.vcolor_Stage0; | |
} | |
float4 output_Stage1; | |
{ | |
float4 inlineResult949; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult949 = _output; | |
} | |
output_Stage1 = inlineResult949; | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * output_Stage1; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:24:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:33:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTextureCoords_Stage0 [[user(locn0)]]; | |
int vTexIndex_Stage0 [[user(locn1)]]; | |
float4 vinColor_Stage0 [[user(locn2)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float2 uAtlasSizeInv_Stage0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage0; | |
sampler uTextureSampler_0_Stage0Smplr; | |
}; | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage0[[texture(0)]], sampler uTextureSampler_0_Stage0Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage0 = uTextureSampler_0_Stage0; | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
float4 outputCoverage_Stage0; | |
{ | |
outputColor_Stage0 = _in.vinColor_Stage0; | |
float4 texColor; | |
{ | |
texColor = _globals->uTextureSampler_0_Stage0.sample(_globals->uTextureSampler_0_Stage0Smplr, _in.vTextureCoords_Stage0).xxxx; | |
} | |
outputCoverage_Stage0 = texColor; | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * outputCoverage_Stage0; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:29:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float4 vinColor_Stage0 [[user(locn0)]]; | |
float2 vTextureCoords_Stage0 [[user(locn1)]]; | |
int vTexIndex_Stage0 [[user(locn2)]]; | |
float2 vIntTextureCoords_Stage0 [[user(locn3)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float2 uAtlasDimensionsInv_Stage0; | |
float uDistanceAdjust_Stage0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage0; | |
sampler uTextureSampler_0_Stage0Smplr; | |
}; | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage0[[texture(0)]], sampler uTextureSampler_0_Stage0Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage0 = uTextureSampler_0_Stage0; | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
float4 outputCoverage_Stage0; | |
{ | |
outputColor_Stage0 = _in.vinColor_Stage0; | |
float2 uv = _in.vTextureCoords_Stage0; | |
float4 texColor; | |
{ | |
texColor = _globals->uTextureSampler_0_Stage0.sample(_globals->uTextureSampler_0_Stage0Smplr, uv).xxxx; | |
} | |
float distance = 7.96875 * (texColor.x - 0.50196081399917603); | |
distance -= _globals->_anonInterface0->uDistanceAdjust_Stage0; | |
float afwidth; | |
afwidth = abs(0.64999997615814209 * dfdy(_in.vIntTextureCoords_Stage0.y)); | |
float val = smoothstep(-afwidth, afwidth, distance); | |
outputCoverage_Stage0 = float4(val); | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * outputCoverage_Stage0; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:32:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
float4 inlineResult895; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult895 = _output; | |
} | |
output_Stage1 = inlineResult895; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:22:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:31:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
float4 inlineResult895; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult895 = _output; | |
} | |
output_Stage1 = inlineResult895; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:22:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:31:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _coords).xxxx * _input; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
float4 inlineResult920; | |
float4 inlineArg920_0 = _input; | |
float2 inlineArg920_1 = _coords; | |
{ | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
inlineArg920_1 = (matrix * float3(inlineArg920_1, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, inlineArg920_1).xxxx * inlineArg920_0; | |
inlineResult920 = _output; | |
} | |
_output = inlineResult920; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:25:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:34:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:56:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
float4 uclamp_Stage1_c0_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
float2 inCoord = _coords; | |
float2 subsetCoord; | |
subsetCoord.x = inCoord.x; | |
subsetCoord.y = inCoord.y; | |
float2 clampedCoord; | |
clampedCoord.x = subsetCoord.x; | |
clampedCoord.y = clamp(subsetCoord.y, _globals->_anonInterface0->uclamp_Stage1_c0_c0.y, _globals->_anonInterface0->uclamp_Stage1_c0_c0.w); | |
float4 textureColor = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, clampedCoord).xxxx; | |
_output = _input * textureColor; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, _input, _coords); | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
float4 inlineResult1700; | |
float2 inlineArg1700_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1700_1); | |
inlineResult1700 = _output; | |
} | |
output_Stage1 += inlineResult1700 * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1834; | |
float2 inlineArg1834_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1834_1); | |
inlineResult1834 = _output; | |
} | |
output_Stage1 += inlineResult1834 * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1968; | |
float2 inlineArg1968_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1968_1); | |
inlineResult1968 = _output; | |
} | |
output_Stage1 += inlineResult1968 * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2102; | |
float2 inlineArg2102_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2102_1); | |
inlineResult2102 = _output; | |
} | |
output_Stage1 += inlineResult2102 * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2236; | |
float2 inlineArg2236_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2236_1); | |
inlineResult2236 = _output; | |
} | |
output_Stage1 += inlineResult2236 * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2370; | |
float2 inlineArg2370_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2370_1); | |
inlineResult2370 = _output; | |
} | |
output_Stage1 += inlineResult2370 * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2504; | |
float2 inlineArg2504_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2504_1); | |
inlineResult2504 = _output; | |
} | |
output_Stage1 += inlineResult2504 * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2638; | |
float2 inlineArg2638_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2638_1); | |
inlineResult2638 = _output; | |
} | |
output_Stage1 += inlineResult2638 * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2772; | |
float2 inlineArg2772_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2772_1); | |
inlineResult2772 = _output; | |
} | |
output_Stage1 += inlineResult2772 * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2906; | |
float2 inlineArg2906_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2906_1); | |
inlineResult2906 = _output; | |
} | |
output_Stage1 += inlineResult2906 * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3040; | |
float2 inlineArg3040_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3040_1); | |
inlineResult3040 = _output; | |
} | |
output_Stage1 += inlineResult3040 * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3174; | |
float2 inlineArg3174_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3174_1); | |
inlineResult3174 = _output; | |
} | |
output_Stage1 += inlineResult3174 * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3308; | |
float2 inlineArg3308_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3308_1); | |
inlineResult3308 = _output; | |
} | |
output_Stage1 += inlineResult3308 * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3442; | |
float2 inlineArg3442_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3442_1); | |
inlineResult3442 = _output; | |
} | |
output_Stage1 += inlineResult3442 * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3576; | |
float2 inlineArg3576_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3576_1); | |
inlineResult3576 = _output; | |
} | |
output_Stage1 += inlineResult3576 * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3710; | |
float2 inlineArg3710_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3710_1); | |
inlineResult3710 = _output; | |
} | |
output_Stage1 += inlineResult3710 * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3844; | |
float2 inlineArg3844_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3844_1); | |
inlineResult3844 = _output; | |
} | |
output_Stage1 += inlineResult3844 * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3978; | |
float2 inlineArg3978_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3978_1); | |
inlineResult3978 = _output; | |
} | |
output_Stage1 += inlineResult3978 * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4112; | |
float2 inlineArg4112_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4112_1); | |
inlineResult4112 = _output; | |
} | |
output_Stage1 += inlineResult4112 * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4246; | |
float2 inlineArg4246_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4246_1); | |
inlineResult4246 = _output; | |
} | |
output_Stage1 += inlineResult4246 * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4380; | |
float2 inlineArg4380_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4380_1); | |
inlineResult4380 = _output; | |
} | |
output_Stage1 += inlineResult4380 * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4514; | |
float2 inlineArg4514_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4514_1); | |
inlineResult4514 = _output; | |
} | |
output_Stage1 += inlineResult4514 * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4648; | |
float2 inlineArg4648_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4648_1); | |
inlineResult4648 = _output; | |
} | |
output_Stage1 += inlineResult4648 * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4782; | |
float2 inlineArg4782_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4782_1); | |
inlineResult4782 = _output; | |
} | |
output_Stage1 += inlineResult4782 * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4916; | |
float2 inlineArg4916_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4916_1); | |
inlineResult4916 = _output; | |
} | |
output_Stage1 += inlineResult4916 * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:26:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:43:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:52:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _coords).xxxx * _input; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
float4 inlineResult920; | |
float4 inlineArg920_0 = _input; | |
float2 inlineArg920_1 = _coords; | |
{ | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
inlineArg920_1 = (matrix * float3(inlineArg920_1, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, inlineArg920_1).xxxx * inlineArg920_0; | |
inlineResult920 = _output; | |
} | |
_output = inlineResult920; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:25:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:34:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:56:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
float4 uclamp_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
float2 inCoord = _in.vTransformedCoords_0_Stage0; | |
float2 subsetCoord; | |
subsetCoord.x = inCoord.x; | |
subsetCoord.y = inCoord.y; | |
float2 clampedCoord; | |
clampedCoord.x = clamp(subsetCoord.x, _globals->_anonInterface0->uclamp_Stage1_c0.x, _globals->_anonInterface0->uclamp_Stage1_c0.z); | |
clampedCoord.y = clamp(subsetCoord.y, _globals->_anonInterface0->uclamp_Stage1_c0.y, _globals->_anonInterface0->uclamp_Stage1_c0.w); | |
float4 textureColor = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, clampedCoord).xxxx; | |
_output = _input * textureColor; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = TextureEffect_Stage1_c0(_in, _globals, float4(1.0)); | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:23:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:40:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
float4 vcolor_Stage0 [[user(locn1)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
{ | |
outputColor_Stage0 = _in.vcolor_Stage0; | |
} | |
float4 output_Stage1; | |
{ | |
float4 inlineResult949; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult949 = _output; | |
} | |
output_Stage1 = inlineResult949; | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * output_Stage1; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:24:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:33:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
float4 vcolor_Stage0 [[user(locn1)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
float4 inlineResult949; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult949 = _output; | |
} | |
output_Stage1 = inlineResult949; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:24:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:33:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
float4 inlineResult895; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult895 = _output; | |
} | |
output_Stage1 = inlineResult895; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:22:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:31:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
float4 inlineResult895; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult895 = _output; | |
} | |
output_Stage1 = inlineResult895; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:22:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:31:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
float4 uclamp_Stage1_c0_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
float2 inCoord = _coords; | |
float2 subsetCoord; | |
subsetCoord.x = inCoord.x; | |
subsetCoord.y = inCoord.y; | |
float2 clampedCoord; | |
clampedCoord.x = clamp(subsetCoord.x, _globals->_anonInterface0->uclamp_Stage1_c0_c0.x, _globals->_anonInterface0->uclamp_Stage1_c0_c0.z); | |
clampedCoord.y = subsetCoord.y; | |
float4 textureColor = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, clampedCoord).xxxx; | |
_output = _input * textureColor; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, _input, _coords); | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
float4 inlineResult1700; | |
float2 inlineArg1700_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1700_1); | |
inlineResult1700 = _output; | |
} | |
output_Stage1 += inlineResult1700 * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1834; | |
float2 inlineArg1834_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1834_1); | |
inlineResult1834 = _output; | |
} | |
output_Stage1 += inlineResult1834 * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1968; | |
float2 inlineArg1968_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1968_1); | |
inlineResult1968 = _output; | |
} | |
output_Stage1 += inlineResult1968 * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2102; | |
float2 inlineArg2102_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2102_1); | |
inlineResult2102 = _output; | |
} | |
output_Stage1 += inlineResult2102 * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2236; | |
float2 inlineArg2236_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2236_1); | |
inlineResult2236 = _output; | |
} | |
output_Stage1 += inlineResult2236 * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2370; | |
float2 inlineArg2370_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2370_1); | |
inlineResult2370 = _output; | |
} | |
output_Stage1 += inlineResult2370 * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2504; | |
float2 inlineArg2504_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2504_1); | |
inlineResult2504 = _output; | |
} | |
output_Stage1 += inlineResult2504 * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2638; | |
float2 inlineArg2638_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2638_1); | |
inlineResult2638 = _output; | |
} | |
output_Stage1 += inlineResult2638 * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2772; | |
float2 inlineArg2772_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2772_1); | |
inlineResult2772 = _output; | |
} | |
output_Stage1 += inlineResult2772 * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2906; | |
float2 inlineArg2906_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2906_1); | |
inlineResult2906 = _output; | |
} | |
output_Stage1 += inlineResult2906 * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3040; | |
float2 inlineArg3040_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3040_1); | |
inlineResult3040 = _output; | |
} | |
output_Stage1 += inlineResult3040 * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3174; | |
float2 inlineArg3174_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3174_1); | |
inlineResult3174 = _output; | |
} | |
output_Stage1 += inlineResult3174 * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3308; | |
float2 inlineArg3308_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3308_1); | |
inlineResult3308 = _output; | |
} | |
output_Stage1 += inlineResult3308 * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3442; | |
float2 inlineArg3442_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3442_1); | |
inlineResult3442 = _output; | |
} | |
output_Stage1 += inlineResult3442 * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3576; | |
float2 inlineArg3576_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3576_1); | |
inlineResult3576 = _output; | |
} | |
output_Stage1 += inlineResult3576 * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3710; | |
float2 inlineArg3710_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3710_1); | |
inlineResult3710 = _output; | |
} | |
output_Stage1 += inlineResult3710 * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3844; | |
float2 inlineArg3844_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3844_1); | |
inlineResult3844 = _output; | |
} | |
output_Stage1 += inlineResult3844 * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3978; | |
float2 inlineArg3978_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3978_1); | |
inlineResult3978 = _output; | |
} | |
output_Stage1 += inlineResult3978 * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4112; | |
float2 inlineArg4112_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4112_1); | |
inlineResult4112 = _output; | |
} | |
output_Stage1 += inlineResult4112 * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4246; | |
float2 inlineArg4246_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4246_1); | |
inlineResult4246 = _output; | |
} | |
output_Stage1 += inlineResult4246 * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4380; | |
float2 inlineArg4380_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4380_1); | |
inlineResult4380 = _output; | |
} | |
output_Stage1 += inlineResult4380 * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4514; | |
float2 inlineArg4514_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4514_1); | |
inlineResult4514 = _output; | |
} | |
output_Stage1 += inlineResult4514 * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4648; | |
float2 inlineArg4648_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4648_1); | |
inlineResult4648 = _output; | |
} | |
output_Stage1 += inlineResult4648 * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4782; | |
float2 inlineArg4782_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4782_1); | |
inlineResult4782 = _output; | |
} | |
output_Stage1 += inlineResult4782 * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4916; | |
float2 inlineArg4916_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4916_1); | |
inlineResult4916 = _output; | |
} | |
output_Stage1 += inlineResult4916 * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:26:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:43:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:52:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _coords).xxxx * _input; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
float4 inlineResult920; | |
float4 inlineArg920_0 = _input; | |
float2 inlineArg920_1 = _coords; | |
{ | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
inlineArg920_1 = (matrix * float3(inlineArg920_1, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, inlineArg920_1).xxxx * inlineArg920_0; | |
inlineResult920 = _output; | |
} | |
_output = inlineResult920; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:25:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:34:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:56:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
float4 uclamp_Stage1_c0_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
float2 inCoord = _coords; | |
float2 subsetCoord; | |
subsetCoord.x = inCoord.x; | |
subsetCoord.y = inCoord.y; | |
float2 clampedCoord; | |
clampedCoord.x = subsetCoord.x; | |
clampedCoord.y = clamp(subsetCoord.y, _globals->_anonInterface0->uclamp_Stage1_c0_c0.y, _globals->_anonInterface0->uclamp_Stage1_c0_c0.w); | |
float4 textureColor = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, clampedCoord).xxxx; | |
_output = _input * textureColor; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, _input, _coords); | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
float4 inlineResult1700; | |
float2 inlineArg1700_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1700_1); | |
inlineResult1700 = _output; | |
} | |
output_Stage1 += inlineResult1700 * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1834; | |
float2 inlineArg1834_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1834_1); | |
inlineResult1834 = _output; | |
} | |
output_Stage1 += inlineResult1834 * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1968; | |
float2 inlineArg1968_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1968_1); | |
inlineResult1968 = _output; | |
} | |
output_Stage1 += inlineResult1968 * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2102; | |
float2 inlineArg2102_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2102_1); | |
inlineResult2102 = _output; | |
} | |
output_Stage1 += inlineResult2102 * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2236; | |
float2 inlineArg2236_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2236_1); | |
inlineResult2236 = _output; | |
} | |
output_Stage1 += inlineResult2236 * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2370; | |
float2 inlineArg2370_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2370_1); | |
inlineResult2370 = _output; | |
} | |
output_Stage1 += inlineResult2370 * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2504; | |
float2 inlineArg2504_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2504_1); | |
inlineResult2504 = _output; | |
} | |
output_Stage1 += inlineResult2504 * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2638; | |
float2 inlineArg2638_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2638_1); | |
inlineResult2638 = _output; | |
} | |
output_Stage1 += inlineResult2638 * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2772; | |
float2 inlineArg2772_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2772_1); | |
inlineResult2772 = _output; | |
} | |
output_Stage1 += inlineResult2772 * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2906; | |
float2 inlineArg2906_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2906_1); | |
inlineResult2906 = _output; | |
} | |
output_Stage1 += inlineResult2906 * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3040; | |
float2 inlineArg3040_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3040_1); | |
inlineResult3040 = _output; | |
} | |
output_Stage1 += inlineResult3040 * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3174; | |
float2 inlineArg3174_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3174_1); | |
inlineResult3174 = _output; | |
} | |
output_Stage1 += inlineResult3174 * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3308; | |
float2 inlineArg3308_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3308_1); | |
inlineResult3308 = _output; | |
} | |
output_Stage1 += inlineResult3308 * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3442; | |
float2 inlineArg3442_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3442_1); | |
inlineResult3442 = _output; | |
} | |
output_Stage1 += inlineResult3442 * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3576; | |
float2 inlineArg3576_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3576_1); | |
inlineResult3576 = _output; | |
} | |
output_Stage1 += inlineResult3576 * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3710; | |
float2 inlineArg3710_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3710_1); | |
inlineResult3710 = _output; | |
} | |
output_Stage1 += inlineResult3710 * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3844; | |
float2 inlineArg3844_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3844_1); | |
inlineResult3844 = _output; | |
} | |
output_Stage1 += inlineResult3844 * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3978; | |
float2 inlineArg3978_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3978_1); | |
inlineResult3978 = _output; | |
} | |
output_Stage1 += inlineResult3978 * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4112; | |
float2 inlineArg4112_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4112_1); | |
inlineResult4112 = _output; | |
} | |
output_Stage1 += inlineResult4112 * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4246; | |
float2 inlineArg4246_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4246_1); | |
inlineResult4246 = _output; | |
} | |
output_Stage1 += inlineResult4246 * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4380; | |
float2 inlineArg4380_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4380_1); | |
inlineResult4380 = _output; | |
} | |
output_Stage1 += inlineResult4380 * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4514; | |
float2 inlineArg4514_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4514_1); | |
inlineResult4514 = _output; | |
} | |
output_Stage1 += inlineResult4514 * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4648; | |
float2 inlineArg4648_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4648_1); | |
inlineResult4648 = _output; | |
} | |
output_Stage1 += inlineResult4648 * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4782; | |
float2 inlineArg4782_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4782_1); | |
inlineResult4782 = _output; | |
} | |
output_Stage1 += inlineResult4782 * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4916; | |
float2 inlineArg4916_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4916_1); | |
inlineResult4916 = _output; | |
} | |
output_Stage1 += inlineResult4916 * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:26:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:43:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:52:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _coords).xxxx * _input; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
float4 inlineResult920; | |
float4 inlineArg920_0 = _input; | |
float2 inlineArg920_1 = _coords; | |
{ | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
inlineArg920_1 = (matrix * float3(inlineArg920_1, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, inlineArg920_1).xxxx * inlineArg920_0; | |
inlineResult920 = _output; | |
} | |
_output = inlineResult920; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:25:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:34:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:56:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
float4 uclamp_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
float2 inCoord = _in.vTransformedCoords_0_Stage0; | |
float2 subsetCoord; | |
subsetCoord.x = inCoord.x; | |
subsetCoord.y = inCoord.y; | |
float2 clampedCoord; | |
clampedCoord.x = clamp(subsetCoord.x, _globals->_anonInterface0->uclamp_Stage1_c0.x, _globals->_anonInterface0->uclamp_Stage1_c0.z); | |
clampedCoord.y = clamp(subsetCoord.y, _globals->_anonInterface0->uclamp_Stage1_c0.y, _globals->_anonInterface0->uclamp_Stage1_c0.w); | |
float4 textureColor = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, clampedCoord).xxxx; | |
_output = _input * textureColor; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = TextureEffect_Stage1_c0(_in, _globals, float4(1.0)); | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:23:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:40:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
float4 vcolor_Stage0 [[user(locn1)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
{ | |
outputColor_Stage0 = _in.vcolor_Stage0; | |
} | |
float4 output_Stage1; | |
{ | |
float4 inlineResult949; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult949 = _output; | |
} | |
output_Stage1 = inlineResult949; | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * output_Stage1; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:24:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:33:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
float4 vcolor_Stage0 [[user(locn1)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
{ | |
outputColor_Stage0 = _in.vcolor_Stage0; | |
} | |
float4 output_Stage1; | |
{ | |
float4 inlineResult949; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult949 = _output; | |
} | |
output_Stage1 = inlineResult949; | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * output_Stage1; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:24:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:33:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTextureCoords_Stage0 [[user(locn0)]]; | |
int vTexIndex_Stage0 [[user(locn1)]]; | |
float4 vinColor_Stage0 [[user(locn2)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float2 uAtlasSizeInv_Stage0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage0; | |
sampler uTextureSampler_0_Stage0Smplr; | |
}; | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage0[[texture(0)]], sampler uTextureSampler_0_Stage0Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage0 = uTextureSampler_0_Stage0; | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
float4 outputCoverage_Stage0; | |
{ | |
outputColor_Stage0 = _in.vinColor_Stage0; | |
float4 texColor; | |
{ | |
texColor = _globals->uTextureSampler_0_Stage0.sample(_globals->uTextureSampler_0_Stage0Smplr, _in.vTextureCoords_Stage0).xxxx; | |
} | |
outputCoverage_Stage0 = texColor; | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * outputCoverage_Stage0; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:29:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float4 vinColor_Stage0 [[user(locn0)]]; | |
float2 vTextureCoords_Stage0 [[user(locn1)]]; | |
int vTexIndex_Stage0 [[user(locn2)]]; | |
float2 vIntTextureCoords_Stage0 [[user(locn3)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float2 uAtlasDimensionsInv_Stage0; | |
float uDistanceAdjust_Stage0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage0; | |
sampler uTextureSampler_0_Stage0Smplr; | |
}; | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage0[[texture(0)]], sampler uTextureSampler_0_Stage0Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage0 = uTextureSampler_0_Stage0; | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
float4 outputCoverage_Stage0; | |
{ | |
outputColor_Stage0 = _in.vinColor_Stage0; | |
float2 uv = _in.vTextureCoords_Stage0; | |
float4 texColor; | |
{ | |
texColor = _globals->uTextureSampler_0_Stage0.sample(_globals->uTextureSampler_0_Stage0Smplr, uv).xxxx; | |
} | |
float distance = 7.96875 * (texColor.x - 0.50196081399917603); | |
distance -= _globals->_anonInterface0->uDistanceAdjust_Stage0; | |
float afwidth; | |
afwidth = abs(0.64999997615814209 * dfdy(_in.vIntTextureCoords_Stage0.y)); | |
float val = smoothstep(-afwidth, afwidth, distance); | |
outputCoverage_Stage0 = float4(val); | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * outputCoverage_Stage0; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:32:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
float4 inlineResult895; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult895 = _output; | |
} | |
output_Stage1 = inlineResult895; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:22:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:31:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
2020-07-07 15:28:41.348360+0900 Runner[258:8755] flutter: FINE: 2020-07-07 15:28:41.332317: _initChannel | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
float4 uclamp_Stage1_c0_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
float2 inCoord = _coords; | |
float2 subsetCoord; | |
subsetCoord.x = inCoord.x; | |
subsetCoord.y = inCoord.y; | |
float2 clampedCoord; | |
clampedCoord.x = clamp(subsetCoord.x, _globals->_anonInterface0->uclamp_Stage1_c0_c0.x, _globals->_anonInterface0->uclamp_Stage1_c0_c0.z); | |
clampedCoord.y = subsetCoord.y; | |
float4 textureColor = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, clampedCoord).xxxx; | |
_output = _input * textureColor; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, _input, _coords); | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
float4 inlineResult1700; | |
float2 inlineArg1700_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1700_1); | |
inlineResult1700 = _output; | |
} | |
output_Stage1 += inlineResult1700 * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1834; | |
float2 inlineArg1834_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1834_1); | |
inlineResult1834 = _output; | |
} | |
output_Stage1 += inlineResult1834 * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1968; | |
float2 inlineArg1968_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1968_1); | |
inlineResult1968 = _output; | |
} | |
output_Stage1 += inlineResult1968 * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2102; | |
float2 inlineArg2102_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2102_1); | |
inlineResult2102 = _output; | |
} | |
output_Stage1 += inlineResult2102 * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2236; | |
float2 inlineArg2236_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2236_1); | |
inlineResult2236 = _output; | |
} | |
output_Stage1 += inlineResult2236 * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2370; | |
float2 inlineArg2370_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2370_1); | |
inlineResult2370 = _output; | |
} | |
output_Stage1 += inlineResult2370 * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2504; | |
float2 inlineArg2504_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2504_1); | |
inlineResult2504 = _output; | |
} | |
output_Stage1 += inlineResult2504 * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2638; | |
float2 inlineArg2638_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2638_1); | |
inlineResult2638 = _output; | |
} | |
output_Stage1 += inlineResult2638 * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2772; | |
float2 inlineArg2772_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2772_1); | |
inlineResult2772 = _output; | |
} | |
output_Stage1 += inlineResult2772 * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2906; | |
float2 inlineArg2906_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2906_1); | |
inlineResult2906 = _output; | |
} | |
output_Stage1 += inlineResult2906 * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3040; | |
float2 inlineArg3040_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3040_1); | |
inlineResult3040 = _output; | |
} | |
output_Stage1 += inlineResult3040 * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3174; | |
float2 inlineArg3174_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3174_1); | |
inlineResult3174 = _output; | |
} | |
output_Stage1 += inlineResult3174 * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3308; | |
float2 inlineArg3308_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3308_1); | |
inlineResult3308 = _output; | |
} | |
output_Stage1 += inlineResult3308 * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3442; | |
float2 inlineArg3442_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3442_1); | |
inlineResult3442 = _output; | |
} | |
output_Stage1 += inlineResult3442 * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3576; | |
float2 inlineArg3576_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3576_1); | |
inlineResult3576 = _output; | |
} | |
output_Stage1 += inlineResult3576 * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3710; | |
float2 inlineArg3710_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3710_1); | |
inlineResult3710 = _output; | |
} | |
output_Stage1 += inlineResult3710 * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3844; | |
float2 inlineArg3844_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3844_1); | |
inlineResult3844 = _output; | |
} | |
output_Stage1 += inlineResult3844 * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3978; | |
float2 inlineArg3978_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3978_1); | |
inlineResult3978 = _output; | |
} | |
output_Stage1 += inlineResult3978 * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4112; | |
float2 inlineArg4112_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4112_1); | |
inlineResult4112 = _output; | |
} | |
output_Stage1 += inlineResult4112 * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4246; | |
float2 inlineArg4246_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4246_1); | |
inlineResult4246 = _output; | |
} | |
output_Stage1 += inlineResult4246 * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4380; | |
float2 inlineArg4380_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4380_1); | |
inlineResult4380 = _output; | |
} | |
output_Stage1 += inlineResult4380 * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4514; | |
float2 inlineArg4514_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4514_1); | |
inlineResult4514 = _output; | |
} | |
output_Stage1 += inlineResult4514 * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4648; | |
float2 inlineArg4648_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4648_1); | |
inlineResult4648 = _output; | |
} | |
output_Stage1 += inlineResult4648 * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4782; | |
float2 inlineArg4782_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4782_1); | |
inlineResult4782 = _output; | |
} | |
output_Stage1 += inlineResult4782 * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4916; | |
float2 inlineArg4916_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4916_1); | |
inlineResult4916 = _output; | |
} | |
output_Stage1 += inlineResult4916 * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:26:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:43:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:52:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _coords).xxxx * _input; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
float4 inlineResult920; | |
float4 inlineArg920_0 = _input; | |
float2 inlineArg920_1 = _coords; | |
{ | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
inlineArg920_1 = (matrix * float3(inlineArg920_1, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, inlineArg920_1).xxxx * inlineArg920_0; | |
inlineResult920 = _output; | |
} | |
_output = inlineResult920; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:25:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:34:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:56:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _coords).xxxx * _input; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
float4 inlineResult920; | |
float4 inlineArg920_0 = _input; | |
float2 inlineArg920_1 = _coords; | |
{ | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
inlineArg920_1 = (matrix * float3(inlineArg920_1, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, inlineArg920_1).xxxx * inlineArg920_0; | |
inlineResult920 = _output; | |
} | |
_output = inlineResult920; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:25:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:34:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:56:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
float4 uclamp_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
float2 inCoord = _in.vTransformedCoords_0_Stage0; | |
float2 subsetCoord; | |
subsetCoord.x = inCoord.x; | |
subsetCoord.y = inCoord.y; | |
float2 clampedCoord; | |
clampedCoord.x = clamp(subsetCoord.x, _globals->_anonInterface0->uclamp_Stage1_c0.x, _globals->_anonInterface0->uclamp_Stage1_c0.z); | |
clampedCoord.y = clamp(subsetCoord.y, _globals->_anonInterface0->uclamp_Stage1_c0.y, _globals->_anonInterface0->uclamp_Stage1_c0.w); | |
float4 textureColor = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, clampedCoord).xxxx; | |
_output = _input * textureColor; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = TextureEffect_Stage1_c0(_in, _globals, float4(1.0)); | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:23:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:40:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
float4 vcolor_Stage0 [[user(locn1)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
{ | |
outputColor_Stage0 = _in.vcolor_Stage0; | |
} | |
float4 output_Stage1; | |
{ | |
float4 inlineResult949; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult949 = _output; | |
} | |
output_Stage1 = inlineResult949; | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * output_Stage1; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:24:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:33:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
float4 vcolor_Stage0 [[user(locn1)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
float4 inlineResult949; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult949 = _output; | |
} | |
output_Stage1 = inlineResult949; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:24:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:33:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
float4 inlineResult895; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult895 = _output; | |
} | |
output_Stage1 = inlineResult895; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:22:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:31:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _coords).xxxx * _input; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
float4 inlineResult920; | |
float4 inlineArg920_0 = _input; | |
float2 inlineArg920_1 = _coords; | |
{ | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
inlineArg920_1 = (matrix * float3(inlineArg920_1, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, inlineArg920_1).xxxx * inlineArg920_0; | |
inlineResult920 = _output; | |
} | |
_output = inlineResult920; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:25:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:34:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:56:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
float4 uclamp_Stage1_c0_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
float2 inCoord = _coords; | |
float2 subsetCoord; | |
subsetCoord.x = inCoord.x; | |
subsetCoord.y = inCoord.y; | |
float2 clampedCoord; | |
clampedCoord.x = subsetCoord.x; | |
clampedCoord.y = clamp(subsetCoord.y, _globals->_anonInterface0->uclamp_Stage1_c0_c0.y, _globals->_anonInterface0->uclamp_Stage1_c0_c0.w); | |
float4 textureColor = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, clampedCoord).xxxx; | |
_output = _input * textureColor; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, _input, _coords); | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
float4 inlineResult1700; | |
float2 inlineArg1700_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1700_1); | |
inlineResult1700 = _output; | |
} | |
output_Stage1 += inlineResult1700 * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1834; | |
float2 inlineArg1834_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1834_1); | |
inlineResult1834 = _output; | |
} | |
output_Stage1 += inlineResult1834 * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1968; | |
float2 inlineArg1968_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1968_1); | |
inlineResult1968 = _output; | |
} | |
output_Stage1 += inlineResult1968 * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2102; | |
float2 inlineArg2102_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2102_1); | |
inlineResult2102 = _output; | |
} | |
output_Stage1 += inlineResult2102 * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2236; | |
float2 inlineArg2236_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2236_1); | |
inlineResult2236 = _output; | |
} | |
output_Stage1 += inlineResult2236 * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2370; | |
float2 inlineArg2370_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2370_1); | |
inlineResult2370 = _output; | |
} | |
output_Stage1 += inlineResult2370 * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2504; | |
float2 inlineArg2504_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2504_1); | |
inlineResult2504 = _output; | |
} | |
output_Stage1 += inlineResult2504 * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2638; | |
float2 inlineArg2638_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2638_1); | |
inlineResult2638 = _output; | |
} | |
output_Stage1 += inlineResult2638 * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2772; | |
float2 inlineArg2772_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2772_1); | |
inlineResult2772 = _output; | |
} | |
output_Stage1 += inlineResult2772 * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2906; | |
float2 inlineArg2906_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2906_1); | |
inlineResult2906 = _output; | |
} | |
output_Stage1 += inlineResult2906 * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3040; | |
float2 inlineArg3040_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3040_1); | |
inlineResult3040 = _output; | |
} | |
output_Stage1 += inlineResult3040 * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3174; | |
float2 inlineArg3174_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3174_1); | |
inlineResult3174 = _output; | |
} | |
output_Stage1 += inlineResult3174 * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3308; | |
float2 inlineArg3308_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3308_1); | |
inlineResult3308 = _output; | |
} | |
output_Stage1 += inlineResult3308 * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3442; | |
float2 inlineArg3442_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3442_1); | |
inlineResult3442 = _output; | |
} | |
output_Stage1 += inlineResult3442 * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3576; | |
float2 inlineArg3576_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3576_1); | |
inlineResult3576 = _output; | |
} | |
output_Stage1 += inlineResult3576 * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3710; | |
float2 inlineArg3710_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3710_1); | |
inlineResult3710 = _output; | |
} | |
output_Stage1 += inlineResult3710 * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3844; | |
float2 inlineArg3844_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3844_1); | |
inlineResult3844 = _output; | |
} | |
output_Stage1 += inlineResult3844 * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3978; | |
float2 inlineArg3978_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3978_1); | |
inlineResult3978 = _output; | |
} | |
output_Stage1 += inlineResult3978 * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4112; | |
float2 inlineArg4112_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4112_1); | |
inlineResult4112 = _output; | |
} | |
output_Stage1 += inlineResult4112 * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4246; | |
float2 inlineArg4246_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4246_1); | |
inlineResult4246 = _output; | |
} | |
output_Stage1 += inlineResult4246 * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4380; | |
float2 inlineArg4380_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4380_1); | |
inlineResult4380 = _output; | |
} | |
output_Stage1 += inlineResult4380 * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4514; | |
float2 inlineArg4514_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4514_1); | |
inlineResult4514 = _output; | |
} | |
output_Stage1 += inlineResult4514 * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4648; | |
float2 inlineArg4648_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4648_1); | |
inlineResult4648 = _output; | |
} | |
output_Stage1 += inlineResult4648 * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4782; | |
float2 inlineArg4782_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4782_1); | |
inlineResult4782 = _output; | |
} | |
output_Stage1 += inlineResult4782 * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4916; | |
float2 inlineArg4916_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4916_1); | |
inlineResult4916 = _output; | |
} | |
output_Stage1 += inlineResult4916 * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:26:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:43:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:52:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _coords).xxxx * _input; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
float4 inlineResult920; | |
float4 inlineArg920_0 = _input; | |
float2 inlineArg920_1 = _coords; | |
{ | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
inlineArg920_1 = (matrix * float3(inlineArg920_1, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, inlineArg920_1).xxxx * inlineArg920_0; | |
inlineResult920 = _output; | |
} | |
_output = inlineResult920; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:25:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:34:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:56:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
float4 uclamp_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
float2 inCoord = _in.vTransformedCoords_0_Stage0; | |
float2 subsetCoord; | |
subsetCoord.x = inCoord.x; | |
subsetCoord.y = inCoord.y; | |
float2 clampedCoord; | |
clampedCoord.x = clamp(subsetCoord.x, _globals->_anonInterface0->uclamp_Stage1_c0.x, _globals->_anonInterface0->uclamp_Stage1_c0.z); | |
clampedCoord.y = clamp(subsetCoord.y, _globals->_anonInterface0->uclamp_Stage1_c0.y, _globals->_anonInterface0->uclamp_Stage1_c0.w); | |
float4 textureColor = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, clampedCoord).xxxx; | |
_output = _input * textureColor; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = TextureEffect_Stage1_c0(_in, _globals, float4(1.0)); | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:23:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:40:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
float4 vcolor_Stage0 [[user(locn1)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
{ | |
outputColor_Stage0 = _in.vcolor_Stage0; | |
} | |
float4 output_Stage1; | |
{ | |
float4 inlineResult949; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult949 = _output; | |
} | |
output_Stage1 = inlineResult949; | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * output_Stage1; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:24:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:33:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
float4 vcolor_Stage0 [[user(locn1)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
{ | |
outputColor_Stage0 = _in.vcolor_Stage0; | |
} | |
float4 output_Stage1; | |
{ | |
float4 inlineResult949; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult949 = _output; | |
} | |
output_Stage1 = inlineResult949; | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * output_Stage1; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:24:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:33:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTextureCoords_Stage0 [[user(locn0)]]; | |
int vTexIndex_Stage0 [[user(locn1)]]; | |
float4 vinColor_Stage0 [[user(locn2)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float2 uAtlasSizeInv_Stage0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage0; | |
sampler uTextureSampler_0_Stage0Smplr; | |
}; | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage0[[texture(0)]], sampler uTextureSampler_0_Stage0Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage0 = uTextureSampler_0_Stage0; | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
float4 outputCoverage_Stage0; | |
{ | |
outputColor_Stage0 = _in.vinColor_Stage0; | |
float4 texColor; | |
{ | |
texColor = _globals->uTextureSampler_0_Stage0.sample(_globals->uTextureSampler_0_Stage0Smplr, _in.vTextureCoords_Stage0).xxxx; | |
} | |
outputCoverage_Stage0 = texColor; | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * outputCoverage_Stage0; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:29:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float4 vinColor_Stage0 [[user(locn0)]]; | |
float2 vTextureCoords_Stage0 [[user(locn1)]]; | |
int vTexIndex_Stage0 [[user(locn2)]]; | |
float2 vIntTextureCoords_Stage0 [[user(locn3)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float2 uAtlasDimensionsInv_Stage0; | |
float uDistanceAdjust_Stage0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage0; | |
sampler uTextureSampler_0_Stage0Smplr; | |
}; | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage0[[texture(0)]], sampler uTextureSampler_0_Stage0Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage0 = uTextureSampler_0_Stage0; | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
float4 outputCoverage_Stage0; | |
{ | |
outputColor_Stage0 = _in.vinColor_Stage0; | |
float2 uv = _in.vTextureCoords_Stage0; | |
float4 texColor; | |
{ | |
texColor = _globals->uTextureSampler_0_Stage0.sample(_globals->uTextureSampler_0_Stage0Smplr, uv).xxxx; | |
} | |
float distance = 7.96875 * (texColor.x - 0.50196081399917603); | |
distance -= _globals->_anonInterface0->uDistanceAdjust_Stage0; | |
float afwidth; | |
afwidth = abs(0.64999997615814209 * dfdy(_in.vIntTextureCoords_Stage0.y)); | |
float val = smoothstep(-afwidth, afwidth, distance); | |
outputCoverage_Stage0 = float4(val); | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * outputCoverage_Stage0; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:32:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1_c0; | |
float3x3 umatrix_Stage1_c1; | |
float3x3 umatrix_Stage1_c2; | |
float3x3 umatrix_Stage1_c3; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
texture2d<float> uTextureSampler_1_Stage1; | |
sampler uTextureSampler_1_Stage1Smplr; | |
texture2d<float> uTextureSampler_2_Stage1; | |
sampler uTextureSampler_2_Stage1Smplr; | |
texture2d<float> uTextureSampler_3_Stage1; | |
sampler uTextureSampler_3_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _coords).xxxx * _input; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
float4 inlineResult1160; | |
float4 inlineArg1160_0 = _input; | |
float2 inlineArg1160_1 = _coords; | |
{ | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
inlineArg1160_1 = (matrix * float3(inlineArg1160_1, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, inlineArg1160_1).xxxx * inlineArg1160_0; | |
inlineResult1160 = _output; | |
} | |
_output = inlineResult1160; | |
return _output; | |
} | |
float4 TextureEffect_Stage1_c1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c1; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_1_Stage1.sample(_globals->uTextureSampler_1_Stage1Smplr, _coords).xxxx * _input; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c1(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
float4 inlineResult1562; | |
float4 inlineArg1562_0 = _input; | |
float2 inlineArg1562_1 = _coords; | |
{ | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c1; | |
inlineArg1562_1 = (matrix * float3(inlineArg1562_1, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_1_Stage1.sample(_globals->uTextureSampler_1_Stage1Smplr, inlineArg1562_1).xxxx * inlineArg1562_0; | |
inlineResult1562 = _output; | |
} | |
_output = inlineResult1562; | |
return _output; | |
} | |
float4 TextureEffect_Stage1_c2_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c2; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_2_Stage1.sample(_globals->uTextureSampler_2_Stage1Smplr, _coords).xxxx * _input; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c2(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
float4 inlineResult1964; | |
float4 inlineArg1964_0 = _input; | |
float2 inlineArg1964_1 = _coords; | |
{ | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c2; | |
inlineArg1964_1 = (matrix * float3(inlineArg1964_1, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_2_Stage1.sample(_globals->uTextureSampler_2_Stage1Smplr, inlineArg1964_1).xxxx * inlineArg1964_0; | |
inlineResult1964 = _output; | |
} | |
_output = inlineResult1964; | |
return _output; | |
} | |
float4 TextureEffect_Stage1_c3_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c3; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_3_Stage1.sample(_globals->uTextureSampler_3_Stage1Smplr, _coords).xxxx * _input; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c3(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
float4 inlineResult2366; | |
float4 inlineArg2366_0 = _input; | |
float2 inlineArg2366_1 = _coords; | |
{ | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c3; | |
inlineArg2366_1 = (matrix * float3(inlineArg2366_1, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_3_Stage1.sample(_globals->uTextureSampler_3_Stage1Smplr, inlineArg2366_1).xxxx * inlineArg2366_0; | |
inlineResult2366 = _output; | |
} | |
_output = inlineResult2366; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], texture2d<float> uTextureSampler_1_Stage1[[texture(1)]], sampler uTextureSampler_1_Stage1Smplr[[sampler(1)]], texture2d<float> uTextureSampler_2_Stage1[[texture(2)]], sampler uTextureSampler_2_Stage1Smplr[[sampler(2)]], texture2d<float> uTextureSampler_3_Stage1[[texture(3)]], sampler uTextureSampler_3_Stage1Smplr[[sampler(3)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
globalStruct.uTextureSampler_1_Stage1 = uTextureSampler_1_Stage1; | |
globalStruct.uTextureSampler_1_Stage1Smplr = uTextureSampler_1_Stage1Smplr; | |
globalStruct.uTextureSampler_2_Stage1 = uTextureSampler_2_Stage1; | |
globalStruct.uTextureSampler_2_Stage1Smplr = uTextureSampler_2_Stage1Smplr; | |
globalStruct.uTextureSampler_3_Stage1 = uTextureSampler_3_Stage1; | |
globalStruct.uTextureSampler_3_Stage1Smplr = uTextureSampler_3_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(1.0); | |
output_Stage1 = MatrixEffect_Stage1_c0(_globals, float4(1.0), _in.vTransformedCoords_0_Stage0); | |
output_Stage1 += MatrixEffect_Stage1_c1(_globals, float4(1.0), _in.vTransformedCoords_0_Stage0); | |
output_Stage1 += MatrixEffect_Stage1_c2(_globals, float4(1.0), _in.vTransformedCoords_0_Stage0); | |
output_Stage1 += MatrixEffect_Stage1_c3(_globals, float4(1.0), _in.vTransformedCoords_0_Stage0); | |
output_Stage1 /= 4.0; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:34:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:43:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:61:8: warning: no previous prototype for function 'TextureEffect_Stage1_c1_c0' | |
float4 TextureEffect_Stage1_c1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:70:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c1' | |
float4 MatrixEffect_Stage1_c1(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:88:8: warning: no previous prototype for function 'TextureEffect_Stage1_c2_c0' | |
float4 TextureEffect_Stage1_c2_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:97:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c2' | |
float4 MatrixEffect_Stage1_c2(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:115:8: warning: no previous prototype for function 'TextureEffect_Stage1_c3_c0' | |
float4 TextureEffect_Stage1_c3_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:124:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c3' | |
float4 MatrixEffect_Stage1_c3(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:146:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
program_source:148:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_1_Stage1Smplr = uTextureSampler_1_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
program_source:150:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_2_Stage1Smplr = uTextureSampler_2_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
program_source:152:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_3_Stage1Smplr = uTextureSampler_3_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
float4 uclamp_Stage1_c0_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
float2 inCoord = _coords; | |
float2 subsetCoord; | |
subsetCoord.x = inCoord.x; | |
subsetCoord.y = inCoord.y; | |
float2 clampedCoord; | |
clampedCoord.x = clamp(subsetCoord.x, _globals->_anonInterface0->uclamp_Stage1_c0_c0.x, _globals->_anonInterface0->uclamp_Stage1_c0_c0.z); | |
clampedCoord.y = subsetCoord.y; | |
float4 textureColor = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, clampedCoord).xxxx; | |
_output = _input * textureColor; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, _input, _coords); | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
float4 inlineResult1700; | |
float2 inlineArg1700_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1700_1); | |
inlineResult1700 = _output; | |
} | |
output_Stage1 += inlineResult1700 * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1834; | |
float2 inlineArg1834_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1834_1); | |
inlineResult1834 = _output; | |
} | |
output_Stage1 += inlineResult1834 * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1968; | |
float2 inlineArg1968_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1968_1); | |
inlineResult1968 = _output; | |
} | |
output_Stage1 += inlineResult1968 * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2102; | |
float2 inlineArg2102_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2102_1); | |
inlineResult2102 = _output; | |
} | |
output_Stage1 += inlineResult2102 * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2236; | |
float2 inlineArg2236_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2236_1); | |
inlineResult2236 = _output; | |
} | |
output_Stage1 += inlineResult2236 * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2370; | |
float2 inlineArg2370_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2370_1); | |
inlineResult2370 = _output; | |
} | |
output_Stage1 += inlineResult2370 * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2504; | |
float2 inlineArg2504_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2504_1); | |
inlineResult2504 = _output; | |
} | |
output_Stage1 += inlineResult2504 * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2638; | |
float2 inlineArg2638_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2638_1); | |
inlineResult2638 = _output; | |
} | |
output_Stage1 += inlineResult2638 * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2772; | |
float2 inlineArg2772_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2772_1); | |
inlineResult2772 = _output; | |
} | |
output_Stage1 += inlineResult2772 * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2906; | |
float2 inlineArg2906_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2906_1); | |
inlineResult2906 = _output; | |
} | |
output_Stage1 += inlineResult2906 * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3040; | |
float2 inlineArg3040_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3040_1); | |
inlineResult3040 = _output; | |
} | |
output_Stage1 += inlineResult3040 * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3174; | |
float2 inlineArg3174_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3174_1); | |
inlineResult3174 = _output; | |
} | |
output_Stage1 += inlineResult3174 * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3308; | |
float2 inlineArg3308_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3308_1); | |
inlineResult3308 = _output; | |
} | |
output_Stage1 += inlineResult3308 * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3442; | |
float2 inlineArg3442_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3442_1); | |
inlineResult3442 = _output; | |
} | |
output_Stage1 += inlineResult3442 * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3576; | |
float2 inlineArg3576_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3576_1); | |
inlineResult3576 = _output; | |
} | |
output_Stage1 += inlineResult3576 * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3710; | |
float2 inlineArg3710_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3710_1); | |
inlineResult3710 = _output; | |
} | |
output_Stage1 += inlineResult3710 * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3844; | |
float2 inlineArg3844_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3844_1); | |
inlineResult3844 = _output; | |
} | |
output_Stage1 += inlineResult3844 * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3978; | |
float2 inlineArg3978_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3978_1); | |
inlineResult3978 = _output; | |
} | |
output_Stage1 += inlineResult3978 * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4112; | |
float2 inlineArg4112_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4112_1); | |
inlineResult4112 = _output; | |
} | |
output_Stage1 += inlineResult4112 * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4246; | |
float2 inlineArg4246_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4246_1); | |
inlineResult4246 = _output; | |
} | |
output_Stage1 += inlineResult4246 * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4380; | |
float2 inlineArg4380_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4380_1); | |
inlineResult4380 = _output; | |
} | |
output_Stage1 += inlineResult4380 * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4514; | |
float2 inlineArg4514_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4514_1); | |
inlineResult4514 = _output; | |
} | |
output_Stage1 += inlineResult4514 * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4648; | |
float2 inlineArg4648_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4648_1); | |
inlineResult4648 = _output; | |
} | |
output_Stage1 += inlineResult4648 * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4782; | |
float2 inlineArg4782_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4782_1); | |
inlineResult4782 = _output; | |
} | |
output_Stage1 += inlineResult4782 * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4916; | |
float2 inlineArg4916_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4916_1); | |
inlineResult4916 = _output; | |
} | |
output_Stage1 += inlineResult4916 * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:26:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:43:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:52:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _coords).xxxx * _input; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
float4 inlineResult920; | |
float4 inlineArg920_0 = _input; | |
float2 inlineArg920_1 = _coords; | |
{ | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
inlineArg920_1 = (matrix * float3(inlineArg920_1, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, inlineArg920_1).xxxx * inlineArg920_0; | |
inlineResult920 = _output; | |
} | |
_output = inlineResult920; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:25:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:34:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:56:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
float4 uclamp_Stage1_c0_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
float2 inCoord = _coords; | |
float2 subsetCoord; | |
subsetCoord.x = inCoord.x; | |
subsetCoord.y = inCoord.y; | |
float2 clampedCoord; | |
clampedCoord.x = subsetCoord.x; | |
clampedCoord.y = clamp(subsetCoord.y, _globals->_anonInterface0->uclamp_Stage1_c0_c0.y, _globals->_anonInterface0->uclamp_Stage1_c0_c0.w); | |
float4 textureColor = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, clampedCoord).xxxx; | |
_output = _input * textureColor; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, _input, _coords); | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
float4 inlineResult1700; | |
float2 inlineArg1700_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1700_1); | |
inlineResult1700 = _output; | |
} | |
output_Stage1 += inlineResult1700 * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1834; | |
float2 inlineArg1834_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1834_1); | |
inlineResult1834 = _output; | |
} | |
output_Stage1 += inlineResult1834 * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1968; | |
float2 inlineArg1968_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1968_1); | |
inlineResult1968 = _output; | |
} | |
output_Stage1 += inlineResult1968 * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2102; | |
float2 inlineArg2102_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2102_1); | |
inlineResult2102 = _output; | |
} | |
output_Stage1 += inlineResult2102 * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2236; | |
float2 inlineArg2236_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2236_1); | |
inlineResult2236 = _output; | |
} | |
output_Stage1 += inlineResult2236 * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2370; | |
float2 inlineArg2370_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2370_1); | |
inlineResult2370 = _output; | |
} | |
output_Stage1 += inlineResult2370 * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2504; | |
float2 inlineArg2504_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2504_1); | |
inlineResult2504 = _output; | |
} | |
output_Stage1 += inlineResult2504 * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2638; | |
float2 inlineArg2638_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2638_1); | |
inlineResult2638 = _output; | |
} | |
output_Stage1 += inlineResult2638 * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2772; | |
float2 inlineArg2772_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2772_1); | |
inlineResult2772 = _output; | |
} | |
output_Stage1 += inlineResult2772 * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2906; | |
float2 inlineArg2906_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2906_1); | |
inlineResult2906 = _output; | |
} | |
output_Stage1 += inlineResult2906 * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3040; | |
float2 inlineArg3040_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3040_1); | |
inlineResult3040 = _output; | |
} | |
output_Stage1 += inlineResult3040 * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3174; | |
float2 inlineArg3174_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3174_1); | |
inlineResult3174 = _output; | |
} | |
output_Stage1 += inlineResult3174 * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3308; | |
float2 inlineArg3308_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3308_1); | |
inlineResult3308 = _output; | |
} | |
output_Stage1 += inlineResult3308 * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3442; | |
float2 inlineArg3442_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3442_1); | |
inlineResult3442 = _output; | |
} | |
output_Stage1 += inlineResult3442 * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3576; | |
float2 inlineArg3576_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3576_1); | |
inlineResult3576 = _output; | |
} | |
output_Stage1 += inlineResult3576 * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3710; | |
float2 inlineArg3710_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3710_1); | |
inlineResult3710 = _output; | |
} | |
output_Stage1 += inlineResult3710 * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3844; | |
float2 inlineArg3844_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3844_1); | |
inlineResult3844 = _output; | |
} | |
output_Stage1 += inlineResult3844 * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3978; | |
float2 inlineArg3978_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3978_1); | |
inlineResult3978 = _output; | |
} | |
output_Stage1 += inlineResult3978 * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4112; | |
float2 inlineArg4112_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4112_1); | |
inlineResult4112 = _output; | |
} | |
output_Stage1 += inlineResult4112 * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4246; | |
float2 inlineArg4246_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4246_1); | |
inlineResult4246 = _output; | |
} | |
output_Stage1 += inlineResult4246 * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4380; | |
float2 inlineArg4380_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4380_1); | |
inlineResult4380 = _output; | |
} | |
output_Stage1 += inlineResult4380 * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4514; | |
float2 inlineArg4514_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4514_1); | |
inlineResult4514 = _output; | |
} | |
output_Stage1 += inlineResult4514 * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4648; | |
float2 inlineArg4648_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4648_1); | |
inlineResult4648 = _output; | |
} | |
output_Stage1 += inlineResult4648 * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4782; | |
float2 inlineArg4782_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4782_1); | |
inlineResult4782 = _output; | |
} | |
output_Stage1 += inlineResult4782 * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4916; | |
float2 inlineArg4916_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4916_1); | |
inlineResult4916 = _output; | |
} | |
output_Stage1 += inlineResult4916 * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:26:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:43:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:52:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _coords).xxxx * _input; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
float4 inlineResult920; | |
float4 inlineArg920_0 = _input; | |
float2 inlineArg920_1 = _coords; | |
{ | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
inlineArg920_1 = (matrix * float3(inlineArg920_1, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, inlineArg920_1).xxxx * inlineArg920_0; | |
inlineResult920 = _output; | |
} | |
_output = inlineResult920; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:25:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:34:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:56:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
float4 uclamp_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
float2 inCoord = _in.vTransformedCoords_0_Stage0; | |
float2 subsetCoord; | |
subsetCoord.x = inCoord.x; | |
subsetCoord.y = inCoord.y; | |
float2 clampedCoord; | |
clampedCoord.x = clamp(subsetCoord.x, _globals->_anonInterface0->uclamp_Stage1_c0.x, _globals->_anonInterface0->uclamp_Stage1_c0.z); | |
clampedCoord.y = clamp(subsetCoord.y, _globals->_anonInterface0->uclamp_Stage1_c0.y, _globals->_anonInterface0->uclamp_Stage1_c0.w); | |
float4 textureColor = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, clampedCoord).xxxx; | |
_output = _input * textureColor; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = TextureEffect_Stage1_c0(_in, _globals, float4(1.0)); | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:23:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:40:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
float4 vcolor_Stage0 [[user(locn1)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
{ | |
outputColor_Stage0 = _in.vcolor_Stage0; | |
} | |
float4 output_Stage1; | |
{ | |
float4 inlineResult949; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult949 = _output; | |
} | |
output_Stage1 = inlineResult949; | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * output_Stage1; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:24:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:33:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
float4 vcolor_Stage0 [[user(locn1)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
float4 inlineResult949; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult949 = _output; | |
} | |
output_Stage1 = inlineResult949; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:24:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:33:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
float4 inlineResult895; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult895 = _output; | |
} | |
output_Stage1 = inlineResult895; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:22:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:31:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
float4 inlineResult895; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult895 = _output; | |
} | |
output_Stage1 = inlineResult895; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:22:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:31:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
float4 uclamp_Stage1_c0_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
float2 inCoord = _coords; | |
float2 subsetCoord; | |
subsetCoord.x = inCoord.x; | |
subsetCoord.y = inCoord.y; | |
float2 clampedCoord; | |
clampedCoord.x = clamp(subsetCoord.x, _globals->_anonInterface0->uclamp_Stage1_c0_c0.x, _globals->_anonInterface0->uclamp_Stage1_c0_c0.z); | |
clampedCoord.y = subsetCoord.y; | |
float4 textureColor = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, clampedCoord).xxxx; | |
_output = _input * textureColor; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, _input, _coords); | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
float4 inlineResult1700; | |
float2 inlineArg1700_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1700_1); | |
inlineResult1700 = _output; | |
} | |
output_Stage1 += inlineResult1700 * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1834; | |
float2 inlineArg1834_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1834_1); | |
inlineResult1834 = _output; | |
} | |
output_Stage1 += inlineResult1834 * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1968; | |
float2 inlineArg1968_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1968_1); | |
inlineResult1968 = _output; | |
} | |
output_Stage1 += inlineResult1968 * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2102; | |
float2 inlineArg2102_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2102_1); | |
inlineResult2102 = _output; | |
} | |
output_Stage1 += inlineResult2102 * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2236; | |
float2 inlineArg2236_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2236_1); | |
inlineResult2236 = _output; | |
} | |
output_Stage1 += inlineResult2236 * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2370; | |
float2 inlineArg2370_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2370_1); | |
inlineResult2370 = _output; | |
} | |
output_Stage1 += inlineResult2370 * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2504; | |
float2 inlineArg2504_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2504_1); | |
inlineResult2504 = _output; | |
} | |
output_Stage1 += inlineResult2504 * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2638; | |
float2 inlineArg2638_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2638_1); | |
inlineResult2638 = _output; | |
} | |
output_Stage1 += inlineResult2638 * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2772; | |
float2 inlineArg2772_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2772_1); | |
inlineResult2772 = _output; | |
} | |
output_Stage1 += inlineResult2772 * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2906; | |
float2 inlineArg2906_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2906_1); | |
inlineResult2906 = _output; | |
} | |
output_Stage1 += inlineResult2906 * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3040; | |
float2 inlineArg3040_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3040_1); | |
inlineResult3040 = _output; | |
} | |
output_Stage1 += inlineResult3040 * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3174; | |
float2 inlineArg3174_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3174_1); | |
inlineResult3174 = _output; | |
} | |
output_Stage1 += inlineResult3174 * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3308; | |
float2 inlineArg3308_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3308_1); | |
inlineResult3308 = _output; | |
} | |
output_Stage1 += inlineResult3308 * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3442; | |
float2 inlineArg3442_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3442_1); | |
inlineResult3442 = _output; | |
} | |
output_Stage1 += inlineResult3442 * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3576; | |
float2 inlineArg3576_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3576_1); | |
inlineResult3576 = _output; | |
} | |
output_Stage1 += inlineResult3576 * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3710; | |
float2 inlineArg3710_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3710_1); | |
inlineResult3710 = _output; | |
} | |
output_Stage1 += inlineResult3710 * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3844; | |
float2 inlineArg3844_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3844_1); | |
inlineResult3844 = _output; | |
} | |
output_Stage1 += inlineResult3844 * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3978; | |
float2 inlineArg3978_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3978_1); | |
inlineResult3978 = _output; | |
} | |
output_Stage1 += inlineResult3978 * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4112; | |
float2 inlineArg4112_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4112_1); | |
inlineResult4112 = _output; | |
} | |
output_Stage1 += inlineResult4112 * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4246; | |
float2 inlineArg4246_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4246_1); | |
inlineResult4246 = _output; | |
} | |
output_Stage1 += inlineResult4246 * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4380; | |
float2 inlineArg4380_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4380_1); | |
inlineResult4380 = _output; | |
} | |
output_Stage1 += inlineResult4380 * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4514; | |
float2 inlineArg4514_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4514_1); | |
inlineResult4514 = _output; | |
} | |
output_Stage1 += inlineResult4514 * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4648; | |
float2 inlineArg4648_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4648_1); | |
inlineResult4648 = _output; | |
} | |
output_Stage1 += inlineResult4648 * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4782; | |
float2 inlineArg4782_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4782_1); | |
inlineResult4782 = _output; | |
} | |
output_Stage1 += inlineResult4782 * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4916; | |
float2 inlineArg4916_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4916_1); | |
inlineResult4916 = _output; | |
} | |
output_Stage1 += inlineResult4916 * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:26:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:43:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:52:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _coords).xxxx * _input; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
float4 inlineResult920; | |
float4 inlineArg920_0 = _input; | |
float2 inlineArg920_1 = _coords; | |
{ | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
inlineArg920_1 = (matrix * float3(inlineArg920_1, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, inlineArg920_1).xxxx * inlineArg920_0; | |
inlineResult920 = _output; | |
} | |
_output = inlineResult920; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:25:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:34:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:56:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
float4 uclamp_Stage1_c0_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
float2 inCoord = _coords; | |
float2 subsetCoord; | |
subsetCoord.x = inCoord.x; | |
subsetCoord.y = inCoord.y; | |
float2 clampedCoord; | |
clampedCoord.x = subsetCoord.x; | |
clampedCoord.y = clamp(subsetCoord.y, _globals->_anonInterface0->uclamp_Stage1_c0_c0.y, _globals->_anonInterface0->uclamp_Stage1_c0_c0.w); | |
float4 textureColor = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, clampedCoord).xxxx; | |
_output = _input * textureColor; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, _input, _coords); | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
float4 inlineResult1700; | |
float2 inlineArg1700_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1700_1); | |
inlineResult1700 = _output; | |
} | |
output_Stage1 += inlineResult1700 * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1834; | |
float2 inlineArg1834_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1834_1); | |
inlineResult1834 = _output; | |
} | |
output_Stage1 += inlineResult1834 * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1968; | |
float2 inlineArg1968_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1968_1); | |
inlineResult1968 = _output; | |
} | |
output_Stage1 += inlineResult1968 * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2102; | |
float2 inlineArg2102_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2102_1); | |
inlineResult2102 = _output; | |
} | |
output_Stage1 += inlineResult2102 * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2236; | |
float2 inlineArg2236_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2236_1); | |
inlineResult2236 = _output; | |
} | |
output_Stage1 += inlineResult2236 * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2370; | |
float2 inlineArg2370_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2370_1); | |
inlineResult2370 = _output; | |
} | |
output_Stage1 += inlineResult2370 * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2504; | |
float2 inlineArg2504_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2504_1); | |
inlineResult2504 = _output; | |
} | |
output_Stage1 += inlineResult2504 * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2638; | |
float2 inlineArg2638_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2638_1); | |
inlineResult2638 = _output; | |
} | |
output_Stage1 += inlineResult2638 * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2772; | |
float2 inlineArg2772_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2772_1); | |
inlineResult2772 = _output; | |
} | |
output_Stage1 += inlineResult2772 * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2906; | |
float2 inlineArg2906_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2906_1); | |
inlineResult2906 = _output; | |
} | |
output_Stage1 += inlineResult2906 * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3040; | |
float2 inlineArg3040_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3040_1); | |
inlineResult3040 = _output; | |
} | |
output_Stage1 += inlineResult3040 * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3174; | |
float2 inlineArg3174_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3174_1); | |
inlineResult3174 = _output; | |
} | |
output_Stage1 += inlineResult3174 * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3308; | |
float2 inlineArg3308_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3308_1); | |
inlineResult3308 = _output; | |
} | |
output_Stage1 += inlineResult3308 * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3442; | |
float2 inlineArg3442_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3442_1); | |
inlineResult3442 = _output; | |
} | |
output_Stage1 += inlineResult3442 * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3576; | |
float2 inlineArg3576_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3576_1); | |
inlineResult3576 = _output; | |
} | |
output_Stage1 += inlineResult3576 * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3710; | |
float2 inlineArg3710_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3710_1); | |
inlineResult3710 = _output; | |
} | |
output_Stage1 += inlineResult3710 * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3844; | |
float2 inlineArg3844_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3844_1); | |
inlineResult3844 = _output; | |
} | |
output_Stage1 += inlineResult3844 * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3978; | |
float2 inlineArg3978_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3978_1); | |
inlineResult3978 = _output; | |
} | |
output_Stage1 += inlineResult3978 * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4112; | |
float2 inlineArg4112_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4112_1); | |
inlineResult4112 = _output; | |
} | |
output_Stage1 += inlineResult4112 * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4246; | |
float2 inlineArg4246_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4246_1); | |
inlineResult4246 = _output; | |
} | |
output_Stage1 += inlineResult4246 * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4380; | |
float2 inlineArg4380_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4380_1); | |
inlineResult4380 = _output; | |
} | |
output_Stage1 += inlineResult4380 * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4514; | |
float2 inlineArg4514_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4514_1); | |
inlineResult4514 = _output; | |
} | |
output_Stage1 += inlineResult4514 * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4648; | |
float2 inlineArg4648_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4648_1); | |
inlineResult4648 = _output; | |
} | |
output_Stage1 += inlineResult4648 * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4782; | |
float2 inlineArg4782_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4782_1); | |
inlineResult4782 = _output; | |
} | |
output_Stage1 += inlineResult4782 * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4916; | |
float2 inlineArg4916_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4916_1); | |
inlineResult4916 = _output; | |
} | |
output_Stage1 += inlineResult4916 * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:26:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:43:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:52:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _coords).xxxx * _input; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
float4 inlineResult920; | |
float4 inlineArg920_0 = _input; | |
float2 inlineArg920_1 = _coords; | |
{ | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
inlineArg920_1 = (matrix * float3(inlineArg920_1, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, inlineArg920_1).xxxx * inlineArg920_0; | |
inlineResult920 = _output; | |
} | |
_output = inlineResult920; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:25:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:34:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:56:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
float4 uclamp_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
float2 inCoord = _in.vTransformedCoords_0_Stage0; | |
float2 subsetCoord; | |
subsetCoord.x = inCoord.x; | |
subsetCoord.y = inCoord.y; | |
float2 clampedCoord; | |
clampedCoord.x = clamp(subsetCoord.x, _globals->_anonInterface0->uclamp_Stage1_c0.x, _globals->_anonInterface0->uclamp_Stage1_c0.z); | |
clampedCoord.y = clamp(subsetCoord.y, _globals->_anonInterface0->uclamp_Stage1_c0.y, _globals->_anonInterface0->uclamp_Stage1_c0.w); | |
float4 textureColor = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, clampedCoord).xxxx; | |
_output = _input * textureColor; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = TextureEffect_Stage1_c0(_in, _globals, float4(1.0)); | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:23:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:40:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
float4 vcolor_Stage0 [[user(locn1)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
{ | |
outputColor_Stage0 = _in.vcolor_Stage0; | |
} | |
float4 output_Stage1; | |
{ | |
float4 inlineResult949; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult949 = _output; | |
} | |
output_Stage1 = inlineResult949; | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * output_Stage1; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:24:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:33:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
float4 vcolor_Stage0 [[user(locn1)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
{ | |
outputColor_Stage0 = _in.vcolor_Stage0; | |
} | |
float4 output_Stage1; | |
{ | |
float4 inlineResult949; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult949 = _output; | |
} | |
output_Stage1 = inlineResult949; | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * output_Stage1; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:24:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:33:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTextureCoords_Stage0 [[user(locn0)]]; | |
int vTexIndex_Stage0 [[user(locn1)]]; | |
float4 vinColor_Stage0 [[user(locn2)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float2 uAtlasSizeInv_Stage0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage0; | |
sampler uTextureSampler_0_Stage0Smplr; | |
}; | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage0[[texture(0)]], sampler uTextureSampler_0_Stage0Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage0 = uTextureSampler_0_Stage0; | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
float4 outputCoverage_Stage0; | |
{ | |
outputColor_Stage0 = _in.vinColor_Stage0; | |
float4 texColor; | |
{ | |
texColor = _globals->uTextureSampler_0_Stage0.sample(_globals->uTextureSampler_0_Stage0Smplr, _in.vTextureCoords_Stage0).xxxx; | |
} | |
outputCoverage_Stage0 = texColor; | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * outputCoverage_Stage0; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:29:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float4 vinColor_Stage0 [[user(locn0)]]; | |
float2 vTextureCoords_Stage0 [[user(locn1)]]; | |
int vTexIndex_Stage0 [[user(locn2)]]; | |
float2 vIntTextureCoords_Stage0 [[user(locn3)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float2 uAtlasDimensionsInv_Stage0; | |
float uDistanceAdjust_Stage0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage0; | |
sampler uTextureSampler_0_Stage0Smplr; | |
}; | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage0[[texture(0)]], sampler uTextureSampler_0_Stage0Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage0 = uTextureSampler_0_Stage0; | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
float4 outputCoverage_Stage0; | |
{ | |
outputColor_Stage0 = _in.vinColor_Stage0; | |
float2 uv = _in.vTextureCoords_Stage0; | |
float4 texColor; | |
{ | |
texColor = _globals->uTextureSampler_0_Stage0.sample(_globals->uTextureSampler_0_Stage0Smplr, uv).xxxx; | |
} | |
float distance = 7.96875 * (texColor.x - 0.50196081399917603); | |
distance -= _globals->_anonInterface0->uDistanceAdjust_Stage0; | |
float afwidth; | |
afwidth = abs(0.64999997615814209 * dfdy(_in.vIntTextureCoords_Stage0.y)); | |
float val = smoothstep(-afwidth, afwidth, distance); | |
outputCoverage_Stage0 = float4(val); | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * outputCoverage_Stage0; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:32:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
2020-07-07 15:28:42.988792+0900 Runner[258:8755] flutter: FINE: 2020-07-07 15:28:42.988528: app= | |
2020-07-07 15:28:42.990650+0900 Runner[258:8755] flutter: FINE: 2020-07-07 15:28:42.990515: buildNumber=10 reviewing=true | |
2020-07-07 15:28:42.991131+0900 Runner[258:8755] flutter: FINE: 2020-07-07 15:28:42.990983: configure | |
2020-07-07 15:28:43.021033+0900 Runner[258:8755] flutter: FINE: 2020-07-07 15:28:43.020696: AppState=AppLoaded{status: Session.anonymous, unreadNotifications: false, points: 0, chatPass: 0, settings: 0} | |
2020-07-07 15:28:43.022006+0900 Runner[258:8755] flutter: FINE: 2020-07-07 15:28:43.021864: routed=false state=AppLoaded{status: Session.anonymous, unreadNotifications: false, points: 0, chatPass: 0, settings: 0} | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
float4 inlineResult895; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult895 = _output; | |
} | |
output_Stage1 = inlineResult895; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:22:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:31:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
2020-07-07 15:28:44.215052+0900 Runner[258:8755] flutter: FINE: 2020-07-07 15:28:44.214834: token=fQHPoweX_kMYhawmgcswes:APA91bELrNjPqYtCHxgMamlsmf3214QHNBwLgBCfNkE1jZRMiNHywc66rFtvj3ze9C3AFwcldP1rqGdCq8PgzXVLimjK8EpN2mt3A4Esa8oazvEKYg3e4xg5Dl61MM83gvKeE10P-G9B | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
float4 uclamp_Stage1_c0_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
float2 inCoord = _coords; | |
float2 subsetCoord; | |
subsetCoord.x = inCoord.x; | |
subsetCoord.y = inCoord.y; | |
float2 clampedCoord; | |
clampedCoord.x = clamp(subsetCoord.x, _globals->_anonInterface0->uclamp_Stage1_c0_c0.x, _globals->_anonInterface0->uclamp_Stage1_c0_c0.z); | |
clampedCoord.y = subsetCoord.y; | |
float4 textureColor = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, clampedCoord).xxxx; | |
_output = _input * textureColor; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, _input, _coords); | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
float4 inlineResult1700; | |
float2 inlineArg1700_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1700_1); | |
inlineResult1700 = _output; | |
} | |
output_Stage1 += inlineResult1700 * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1834; | |
float2 inlineArg1834_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1834_1); | |
inlineResult1834 = _output; | |
} | |
output_Stage1 += inlineResult1834 * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1968; | |
float2 inlineArg1968_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1968_1); | |
inlineResult1968 = _output; | |
} | |
output_Stage1 += inlineResult1968 * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2102; | |
float2 inlineArg2102_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2102_1); | |
inlineResult2102 = _output; | |
} | |
output_Stage1 += inlineResult2102 * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2236; | |
float2 inlineArg2236_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2236_1); | |
inlineResult2236 = _output; | |
} | |
output_Stage1 += inlineResult2236 * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2370; | |
float2 inlineArg2370_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2370_1); | |
inlineResult2370 = _output; | |
} | |
output_Stage1 += inlineResult2370 * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2504; | |
float2 inlineArg2504_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2504_1); | |
inlineResult2504 = _output; | |
} | |
output_Stage1 += inlineResult2504 * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2638; | |
float2 inlineArg2638_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2638_1); | |
inlineResult2638 = _output; | |
} | |
output_Stage1 += inlineResult2638 * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2772; | |
float2 inlineArg2772_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2772_1); | |
inlineResult2772 = _output; | |
} | |
output_Stage1 += inlineResult2772 * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2906; | |
float2 inlineArg2906_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2906_1); | |
inlineResult2906 = _output; | |
} | |
output_Stage1 += inlineResult2906 * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3040; | |
float2 inlineArg3040_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3040_1); | |
inlineResult3040 = _output; | |
} | |
output_Stage1 += inlineResult3040 * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3174; | |
float2 inlineArg3174_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3174_1); | |
inlineResult3174 = _output; | |
} | |
output_Stage1 += inlineResult3174 * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3308; | |
float2 inlineArg3308_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3308_1); | |
inlineResult3308 = _output; | |
} | |
output_Stage1 += inlineResult3308 * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3442; | |
float2 inlineArg3442_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3442_1); | |
inlineResult3442 = _output; | |
} | |
output_Stage1 += inlineResult3442 * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3576; | |
float2 inlineArg3576_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3576_1); | |
inlineResult3576 = _output; | |
} | |
output_Stage1 += inlineResult3576 * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3710; | |
float2 inlineArg3710_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3710_1); | |
inlineResult3710 = _output; | |
} | |
output_Stage1 += inlineResult3710 * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3844; | |
float2 inlineArg3844_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3844_1); | |
inlineResult3844 = _output; | |
} | |
output_Stage1 += inlineResult3844 * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3978; | |
float2 inlineArg3978_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3978_1); | |
inlineResult3978 = _output; | |
} | |
output_Stage1 += inlineResult3978 * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4112; | |
float2 inlineArg4112_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4112_1); | |
inlineResult4112 = _output; | |
} | |
output_Stage1 += inlineResult4112 * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4246; | |
float2 inlineArg4246_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4246_1); | |
inlineResult4246 = _output; | |
} | |
output_Stage1 += inlineResult4246 * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4380; | |
float2 inlineArg4380_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4380_1); | |
inlineResult4380 = _output; | |
} | |
output_Stage1 += inlineResult4380 * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4514; | |
float2 inlineArg4514_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4514_1); | |
inlineResult4514 = _output; | |
} | |
output_Stage1 += inlineResult4514 * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4648; | |
float2 inlineArg4648_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4648_1); | |
inlineResult4648 = _output; | |
} | |
output_Stage1 += inlineResult4648 * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4782; | |
float2 inlineArg4782_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4782_1); | |
inlineResult4782 = _output; | |
} | |
output_Stage1 += inlineResult4782 * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4916; | |
float2 inlineArg4916_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4916_1); | |
inlineResult4916 = _output; | |
} | |
output_Stage1 += inlineResult4916 * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:26:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:43:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:52:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _coords).xxxx * _input; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
float4 inlineResult920; | |
float4 inlineArg920_0 = _input; | |
float2 inlineArg920_1 = _coords; | |
{ | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
inlineArg920_1 = (matrix * float3(inlineArg920_1, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, inlineArg920_1).xxxx * inlineArg920_0; | |
inlineResult920 = _output; | |
} | |
_output = inlineResult920; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:25:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:34:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:56:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _coords).xxxx * _input; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
float4 inlineResult920; | |
float4 inlineArg920_0 = _input; | |
float2 inlineArg920_1 = _coords; | |
{ | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
inlineArg920_1 = (matrix * float3(inlineArg920_1, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, inlineArg920_1).xxxx * inlineArg920_0; | |
inlineResult920 = _output; | |
} | |
_output = inlineResult920; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:25:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:34:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:56:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
float4 uclamp_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
float2 inCoord = _in.vTransformedCoords_0_Stage0; | |
float2 subsetCoord; | |
subsetCoord.x = inCoord.x; | |
subsetCoord.y = inCoord.y; | |
float2 clampedCoord; | |
clampedCoord.x = clamp(subsetCoord.x, _globals->_anonInterface0->uclamp_Stage1_c0.x, _globals->_anonInterface0->uclamp_Stage1_c0.z); | |
clampedCoord.y = clamp(subsetCoord.y, _globals->_anonInterface0->uclamp_Stage1_c0.y, _globals->_anonInterface0->uclamp_Stage1_c0.w); | |
float4 textureColor = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, clampedCoord).xxxx; | |
_output = _input * textureColor; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = TextureEffect_Stage1_c0(_in, _globals, float4(1.0)); | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:23:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:40:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
float4 vcolor_Stage0 [[user(locn1)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
{ | |
outputColor_Stage0 = _in.vcolor_Stage0; | |
} | |
float4 output_Stage1; | |
{ | |
float4 inlineResult949; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult949 = _output; | |
} | |
output_Stage1 = inlineResult949; | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * output_Stage1; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:24:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:33:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
float4 vcolor_Stage0 [[user(locn1)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
float4 inlineResult949; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult949 = _output; | |
} | |
output_Stage1 = inlineResult949; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:24:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:33:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
float4 inlineResult895; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult895 = _output; | |
} | |
output_Stage1 = inlineResult895; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:22:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:31:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
float4 inlineResult895; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult895 = _output; | |
} | |
output_Stage1 = inlineResult895; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:22:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:31:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _coords).xxxx * _input; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
float4 inlineResult920; | |
float4 inlineArg920_0 = _input; | |
float2 inlineArg920_1 = _coords; | |
{ | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
inlineArg920_1 = (matrix * float3(inlineArg920_1, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, inlineArg920_1).xxxx * inlineArg920_0; | |
inlineResult920 = _output; | |
} | |
_output = inlineResult920; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:25:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:34:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:56:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
float4 uclamp_Stage1_c0_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
float2 inCoord = _coords; | |
float2 subsetCoord; | |
subsetCoord.x = inCoord.x; | |
subsetCoord.y = inCoord.y; | |
float2 clampedCoord; | |
clampedCoord.x = subsetCoord.x; | |
clampedCoord.y = clamp(subsetCoord.y, _globals->_anonInterface0->uclamp_Stage1_c0_c0.y, _globals->_anonInterface0->uclamp_Stage1_c0_c0.w); | |
float4 textureColor = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, clampedCoord).xxxx; | |
_output = _input * textureColor; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, _input, _coords); | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
float4 inlineResult1700; | |
float2 inlineArg1700_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1700_1); | |
inlineResult1700 = _output; | |
} | |
output_Stage1 += inlineResult1700 * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1834; | |
float2 inlineArg1834_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1834_1); | |
inlineResult1834 = _output; | |
} | |
output_Stage1 += inlineResult1834 * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1968; | |
float2 inlineArg1968_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1968_1); | |
inlineResult1968 = _output; | |
} | |
output_Stage1 += inlineResult1968 * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2102; | |
float2 inlineArg2102_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2102_1); | |
inlineResult2102 = _output; | |
} | |
output_Stage1 += inlineResult2102 * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2236; | |
float2 inlineArg2236_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2236_1); | |
inlineResult2236 = _output; | |
} | |
output_Stage1 += inlineResult2236 * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2370; | |
float2 inlineArg2370_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2370_1); | |
inlineResult2370 = _output; | |
} | |
output_Stage1 += inlineResult2370 * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2504; | |
float2 inlineArg2504_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2504_1); | |
inlineResult2504 = _output; | |
} | |
output_Stage1 += inlineResult2504 * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2638; | |
float2 inlineArg2638_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2638_1); | |
inlineResult2638 = _output; | |
} | |
output_Stage1 += inlineResult2638 * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2772; | |
float2 inlineArg2772_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2772_1); | |
inlineResult2772 = _output; | |
} | |
output_Stage1 += inlineResult2772 * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2906; | |
float2 inlineArg2906_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2906_1); | |
inlineResult2906 = _output; | |
} | |
output_Stage1 += inlineResult2906 * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3040; | |
float2 inlineArg3040_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3040_1); | |
inlineResult3040 = _output; | |
} | |
output_Stage1 += inlineResult3040 * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3174; | |
float2 inlineArg3174_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3174_1); | |
inlineResult3174 = _output; | |
} | |
output_Stage1 += inlineResult3174 * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3308; | |
float2 inlineArg3308_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3308_1); | |
inlineResult3308 = _output; | |
} | |
output_Stage1 += inlineResult3308 * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3442; | |
float2 inlineArg3442_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3442_1); | |
inlineResult3442 = _output; | |
} | |
output_Stage1 += inlineResult3442 * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3576; | |
float2 inlineArg3576_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3576_1); | |
inlineResult3576 = _output; | |
} | |
output_Stage1 += inlineResult3576 * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3710; | |
float2 inlineArg3710_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3710_1); | |
inlineResult3710 = _output; | |
} | |
output_Stage1 += inlineResult3710 * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3844; | |
float2 inlineArg3844_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3844_1); | |
inlineResult3844 = _output; | |
} | |
output_Stage1 += inlineResult3844 * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3978; | |
float2 inlineArg3978_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3978_1); | |
inlineResult3978 = _output; | |
} | |
output_Stage1 += inlineResult3978 * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4112; | |
float2 inlineArg4112_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4112_1); | |
inlineResult4112 = _output; | |
} | |
output_Stage1 += inlineResult4112 * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4246; | |
float2 inlineArg4246_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4246_1); | |
inlineResult4246 = _output; | |
} | |
output_Stage1 += inlineResult4246 * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4380; | |
float2 inlineArg4380_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4380_1); | |
inlineResult4380 = _output; | |
} | |
output_Stage1 += inlineResult4380 * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4514; | |
float2 inlineArg4514_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4514_1); | |
inlineResult4514 = _output; | |
} | |
output_Stage1 += inlineResult4514 * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4648; | |
float2 inlineArg4648_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4648_1); | |
inlineResult4648 = _output; | |
} | |
output_Stage1 += inlineResult4648 * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4782; | |
float2 inlineArg4782_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4782_1); | |
inlineResult4782 = _output; | |
} | |
output_Stage1 += inlineResult4782 * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult4916; | |
float2 inlineArg4916_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg4916_1); | |
inlineResult4916 = _output; | |
} | |
output_Stage1 += inlineResult4916 * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:26:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:43:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:52:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[7]; | |
float3x3 umatrix_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _coords).xxxx * _input; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
float4 inlineResult920; | |
float4 inlineArg920_0 = _input; | |
float2 inlineArg920_1 = _coords; | |
{ | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
inlineArg920_1 = (matrix * float3(inlineArg920_1, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, inlineArg920_1).xxxx * inlineArg920_0; | |
inlineResult920 = _output; | |
} | |
_output = inlineResult920; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 12.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[4].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[5].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[6].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:25:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:34:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:56:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
float4 uclamp_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
float2 inCoord = _in.vTransformedCoords_0_Stage0; | |
float2 subsetCoord; | |
subsetCoord.x = inCoord.x; | |
subsetCoord.y = inCoord.y; | |
float2 clampedCoord; | |
clampedCoord.x = clamp(subsetCoord.x, _globals->_anonInterface0->uclamp_Stage1_c0.x, _globals->_anonInterface0->uclamp_Stage1_c0.z); | |
clampedCoord.y = clamp(subsetCoord.y, _globals->_anonInterface0->uclamp_Stage1_c0.y, _globals->_anonInterface0->uclamp_Stage1_c0.w); | |
float4 textureColor = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, clampedCoord).xxxx; | |
_output = _input * textureColor; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = TextureEffect_Stage1_c0(_in, _globals, float4(1.0)); | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:23:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:40:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
float4 vcolor_Stage0 [[user(locn1)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
{ | |
outputColor_Stage0 = _in.vcolor_Stage0; | |
} | |
float4 output_Stage1; | |
{ | |
float4 inlineResult949; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult949 = _output; | |
} | |
output_Stage1 = inlineResult949; | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * output_Stage1; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:24:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:33:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
float4 vcolor_Stage0 [[user(locn1)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float3x3 umatrix_Stage1; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx * _input; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
{ | |
outputColor_Stage0 = _in.vcolor_Stage0; | |
} | |
float4 output_Stage1; | |
{ | |
float4 inlineResult949; | |
{ | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _in.vTransformedCoords_0_Stage0).xxxx; | |
inlineResult949 = _output; | |
} | |
output_Stage1 = inlineResult949; | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * output_Stage1; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:24:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0' | |
float4 TextureEffect_Stage1_c0(Inputs _in, thread Globals* _globals, float4 _input) { | |
^ | |
program_source:33:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTextureCoords_Stage0 [[user(locn0)]]; | |
int vTexIndex_Stage0 [[user(locn1)]]; | |
float4 vinColor_Stage0 [[user(locn2)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float2 uAtlasSizeInv_Stage0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage0; | |
sampler uTextureSampler_0_Stage0Smplr; | |
}; | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage0[[texture(0)]], sampler uTextureSampler_0_Stage0Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage0 = uTextureSampler_0_Stage0; | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
float4 outputCoverage_Stage0; | |
{ | |
outputColor_Stage0 = _in.vinColor_Stage0; | |
float4 texColor; | |
{ | |
texColor = _globals->uTextureSampler_0_Stage0.sample(_globals->uTextureSampler_0_Stage0Smplr, _in.vTextureCoords_Stage0).xxxx; | |
} | |
outputCoverage_Stage0 = texColor; | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * outputCoverage_Stage0; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:29:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float4 vinColor_Stage0 [[user(locn0)]]; | |
float2 vTextureCoords_Stage0 [[user(locn1)]]; | |
int vTexIndex_Stage0 [[user(locn2)]]; | |
float2 vIntTextureCoords_Stage0 [[user(locn3)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float2 uAtlasDimensionsInv_Stage0; | |
float uDistanceAdjust_Stage0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage0; | |
sampler uTextureSampler_0_Stage0Smplr; | |
}; | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage0[[texture(0)]], sampler uTextureSampler_0_Stage0Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage0 = uTextureSampler_0_Stage0; | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
float4 outputCoverage_Stage0; | |
{ | |
outputColor_Stage0 = _in.vinColor_Stage0; | |
float2 uv = _in.vTextureCoords_Stage0; | |
float4 texColor; | |
{ | |
texColor = _globals->uTextureSampler_0_Stage0.sample(_globals->uTextureSampler_0_Stage0Smplr, uv).xxxx; | |
} | |
float distance = 7.96875 * (texColor.x - 0.50196081399917603); | |
distance -= _globals->_anonInterface0->uDistanceAdjust_Stage0; | |
float afwidth; | |
afwidth = abs(0.64999997615814209 * dfdy(_in.vIntTextureCoords_Stage0.y)); | |
float val = smoothstep(-afwidth, afwidth, distance); | |
outputCoverage_Stage0 = float4(val); | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * outputCoverage_Stage0; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:32:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
2020-07-07 15:28:44.836970+0900 Runner[258:8755] flutter: FINE: 2020-07-07 15:28:44.836737: oldToken=null | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float3 vinShadowParams_Stage0 [[user(locn0)]]; | |
float4 vinColor_Stage0 [[user(locn1)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage0; | |
sampler uTextureSampler_0_Stage0Smplr; | |
}; | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage0[[texture(0)]], sampler uTextureSampler_0_Stage0Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage0 = uTextureSampler_0_Stage0; | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 outputColor_Stage0; | |
float4 outputCoverage_Stage0; | |
{ | |
float3 shadowParams; | |
shadowParams = _in.vinShadowParams_Stage0; | |
outputColor_Stage0 = _in.vinColor_Stage0; | |
float d = length(shadowParams.xy); | |
float2 uv = float2(shadowParams.z * (1.0 - d), 0.5); | |
float factor = _globals->uTextureSampler_0_Stage0.sample(_globals->uTextureSampler_0_Stage0Smplr, uv).x; | |
outputCoverage_Stage0 = float4(factor); | |
} | |
{ | |
_out->sk_FragColor = outputColor_Stage0 * outputCoverage_Stage0; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:26:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage0Smplr = uTextureSampler_0_Stage0Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[4]; | |
float3x3 umatrix_Stage1_c0; | |
float4 uclamp_Stage1_c0_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
float2 inCoord = _coords; | |
float2 subsetCoord; | |
subsetCoord.x = inCoord.x; | |
subsetCoord.y = inCoord.y; | |
float2 clampedCoord; | |
clampedCoord.x = clamp(subsetCoord.x, _globals->_anonInterface0->uclamp_Stage1_c0_c0.x, _globals->_anonInterface0->uclamp_Stage1_c0_c0.z); | |
clampedCoord.y = subsetCoord.y; | |
float4 textureColor = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, clampedCoord).xxxx; | |
_output = _input * textureColor; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, _input, _coords); | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 6.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
float4 inlineResult1699; | |
float2 inlineArg1699_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1699_1); | |
inlineResult1699 = _output; | |
} | |
output_Stage1 += inlineResult1699 * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1833; | |
float2 inlineArg1833_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1833_1); | |
inlineResult1833 = _output; | |
} | |
output_Stage1 += inlineResult1833 * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1967; | |
float2 inlineArg1967_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1967_1); | |
inlineResult1967 = _output; | |
} | |
output_Stage1 += inlineResult1967 * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2101; | |
float2 inlineArg2101_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2101_1); | |
inlineResult2101 = _output; | |
} | |
output_Stage1 += inlineResult2101 * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2235; | |
float2 inlineArg2235_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2235_1); | |
inlineResult2235 = _output; | |
} | |
output_Stage1 += inlineResult2235 * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2369; | |
float2 inlineArg2369_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2369_1); | |
inlineResult2369 = _output; | |
} | |
output_Stage1 += inlineResult2369 * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2503; | |
float2 inlineArg2503_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2503_1); | |
inlineResult2503 = _output; | |
} | |
output_Stage1 += inlineResult2503 * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2637; | |
float2 inlineArg2637_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2637_1); | |
inlineResult2637 = _output; | |
} | |
output_Stage1 += inlineResult2637 * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2771; | |
float2 inlineArg2771_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2771_1); | |
inlineResult2771 = _output; | |
} | |
output_Stage1 += inlineResult2771 * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2905; | |
float2 inlineArg2905_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2905_1); | |
inlineResult2905 = _output; | |
} | |
output_Stage1 += inlineResult2905 * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3039; | |
float2 inlineArg3039_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3039_1); | |
inlineResult3039 = _output; | |
} | |
output_Stage1 += inlineResult3039 * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3173; | |
float2 inlineArg3173_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3173_1); | |
inlineResult3173 = _output; | |
} | |
output_Stage1 += inlineResult3173 * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3307; | |
float2 inlineArg3307_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3307_1); | |
inlineResult3307 = _output; | |
} | |
output_Stage1 += inlineResult3307 * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:26:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:43:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:52:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[4]; | |
float3x3 umatrix_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _coords).xxxx * _input; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
float4 inlineResult920; | |
float4 inlineArg920_0 = _input; | |
float2 inlineArg920_1 = _coords; | |
{ | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
inlineArg920_1 = (matrix * float3(inlineArg920_1, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, inlineArg920_1).xxxx * inlineArg920_0; | |
inlineResult920 = _output; | |
} | |
_output = inlineResult920; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 6.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:25:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:34:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:56:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[4]; | |
float3x3 umatrix_Stage1_c0; | |
float4 uclamp_Stage1_c0_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
float2 inCoord = _coords; | |
float2 subsetCoord; | |
subsetCoord.x = inCoord.x; | |
subsetCoord.y = inCoord.y; | |
float2 clampedCoord; | |
clampedCoord.x = subsetCoord.x; | |
clampedCoord.y = clamp(subsetCoord.y, _globals->_anonInterface0->uclamp_Stage1_c0_c0.y, _globals->_anonInterface0->uclamp_Stage1_c0_c0.w); | |
float4 textureColor = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, clampedCoord).xxxx; | |
_output = _input * textureColor; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, _input, _coords); | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 6.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
float4 inlineResult1699; | |
float2 inlineArg1699_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1699_1); | |
inlineResult1699 = _output; | |
} | |
output_Stage1 += inlineResult1699 * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1833; | |
float2 inlineArg1833_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1833_1); | |
inlineResult1833 = _output; | |
} | |
output_Stage1 += inlineResult1833 * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult1967; | |
float2 inlineArg1967_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg1967_1); | |
inlineResult1967 = _output; | |
} | |
output_Stage1 += inlineResult1967 * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2101; | |
float2 inlineArg2101_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2101_1); | |
inlineResult2101 = _output; | |
} | |
output_Stage1 += inlineResult2101 * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2235; | |
float2 inlineArg2235_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2235_1); | |
inlineResult2235 = _output; | |
} | |
output_Stage1 += inlineResult2235 * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2369; | |
float2 inlineArg2369_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2369_1); | |
inlineResult2369 = _output; | |
} | |
output_Stage1 += inlineResult2369 * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2503; | |
float2 inlineArg2503_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2503_1); | |
inlineResult2503 = _output; | |
} | |
output_Stage1 += inlineResult2503 * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2637; | |
float2 inlineArg2637_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2637_1); | |
inlineResult2637 = _output; | |
} | |
output_Stage1 += inlineResult2637 * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2771; | |
float2 inlineArg2771_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2771_1); | |
inlineResult2771 = _output; | |
} | |
output_Stage1 += inlineResult2771 * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult2905; | |
float2 inlineArg2905_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg2905_1); | |
inlineResult2905 = _output; | |
} | |
output_Stage1 += inlineResult2905 * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3039; | |
float2 inlineArg3039_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3039_1); | |
inlineResult3039 = _output; | |
} | |
output_Stage1 += inlineResult3039 * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3173; | |
float2 inlineArg3173_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3173_1); | |
inlineResult3173 = _output; | |
} | |
output_Stage1 += inlineResult3173 * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
float4 inlineResult3307; | |
float2 inlineArg3307_1 = coordSampled; | |
{ | |
float4 _output; | |
_output = TextureEffect_Stage1_c0_c0(_globals, float4(1.0), inlineArg3307_1); | |
inlineResult3307 = _output; | |
} | |
output_Stage1 += inlineResult3307 * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:26:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:43:8: warning: no previous prototype for function 'MatrixEffect_Stage1_c0' | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
^ | |
program_source:52:48: error: overload resolution selected deleted operator '=' | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:197:21: note: candidate function has been explicitly deleted | |
thread sampler &operator=(const thread sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:198:21: note: candidate function not viable: 1st argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
thread sampler &operator=(const constant sampler&) thread = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:295:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const thread sampler&) constant = delete; | |
^ | |
/System/Library/PrivateFrameworks/GPUCompiler.framework/Versions/A/lib/clang/3.5/include/metal/metal_texture:296:23: note: candidate function not viable: 'this' argument ('metal::sampler') is in address space 0, but parameter must be in address space 16776969 | |
constant sampler &operator=(const constant sampler&) constant = delete; | |
^ | |
Error compiling MSL shader: #include <metal_stdlib> | |
#include <simd/simd.h> | |
using namespace metal; | |
struct Inputs { | |
float2 vTransformedCoords_0_Stage0 [[user(locn0)]]; | |
}; | |
struct Outputs { | |
float4 sk_FragColor [[color(0)]]; | |
}; | |
struct uniformBuffer { | |
float4 sk_RTAdjust; | |
float3x3 uCoordTransformMatrix_0_Stage0; | |
float2 uIncrement_Stage1; | |
char pad0[8]; | |
float4 uKernel_Stage1[4]; | |
float3x3 umatrix_Stage1_c0; | |
}; | |
struct Globals { | |
constant uniformBuffer* _anonInterface0; | |
texture2d<float> uTextureSampler_0_Stage1; | |
sampler uTextureSampler_0_Stage1Smplr; | |
}; | |
float4 TextureEffect_Stage1_c0_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
_coords = (matrix * float3(_coords, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, _coords).xxxx * _input; | |
return _output; | |
} | |
float4 MatrixEffect_Stage1_c0(thread Globals* _globals, float4 _input, float2 _coords) { | |
float4 _output; | |
float4 inlineResult920; | |
float4 inlineArg920_0 = _input; | |
float2 inlineArg920_1 = _coords; | |
{ | |
{ | |
float3x3 matrix = _globals->_anonInterface0->umatrix_Stage1_c0; | |
inlineArg920_1 = (matrix * float3(inlineArg920_1, 1.0)).xy; | |
} | |
float4 _output; | |
_output = _globals->uTextureSampler_0_Stage1.sample(_globals->uTextureSampler_0_Stage1Smplr, inlineArg920_1).xxxx * inlineArg920_0; | |
inlineResult920 = _output; | |
} | |
_output = inlineResult920; | |
return _output; | |
} | |
fragment Outputs fragmentMain(Inputs _in [[stage_in]], texture2d<float> uTextureSampler_0_Stage1[[texture(0)]], sampler uTextureSampler_0_Stage1Smplr[[sampler(0)]], constant uniformBuffer& _anonInterface0 [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { | |
Globals globalStruct; | |
globalStruct._anonInterface0 = &_anonInterface0; | |
globalStruct.uTextureSampler_0_Stage1 = uTextureSampler_0_Stage1; | |
globalStruct.uTextureSampler_0_Stage1Smplr = uTextureSampler_0_Stage1Smplr; | |
thread Globals* _globals = &globalStruct; | |
(void)_globals; | |
Outputs _outputStruct; | |
thread Outputs* _out = &_outputStruct; | |
float4 output_Stage1; | |
{ | |
output_Stage1 = float4(0.0, 0.0, 0.0, 0.0); | |
float2 coord = _in.vTransformedCoords_0_Stage0 - 6.0 * _globals->_anonInterface0->uIncrement_Stage1; | |
float2 coordSampled = float2(0.0, 0.0); | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[0].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[1].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].y; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].z; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[2].w; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
coordSampled = coord; | |
output_Stage1 += MatrixEffect_Stage1_c0(_globals, float4(1.0), coordSampled) * _globals->_anonInterface0->uKernel_Stage1[3].x; | |
coord += _globals->_anonInterface0->uIncrement_Stage1; | |
} | |
{ | |
_out->sk_FragColor = output_Stage1; | |
_out->sk_FragColor = _out->sk_FragColor.wwww; | |
} | |
return *_out; | |
} | |
Compilation failed: | |
program_source:25:8: warning: no previous prototype for function 'TextureEffect_Stage1_c0_c0' | |
float4 TextureEffect_ |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment