Last active
August 29, 2015 13:57
Revisions
-
nheagy revised this gist
Apr 1, 2014 . 1 changed file with 62 additions and 61 deletions.There are no files selected for viewing
This file contains hidden or 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 charactersOriginal file line number Diff line number Diff line change @@ -1,5 +1,39 @@ const GLchar *blurVertex = "attribute vec4 a_position;\n\ attribute vec4 a_texCoord;\n\ attribute vec4 a_color;\n\ \n\ uniform float texelWidthOffset;\n\ uniform float texelHeightOffset;\n\ \n\ varying vec2 blurCoordinates[15];\n\ varying lowp vec4 v_fragmentColor;\n\ \n\ void main()\n\ {\n\ gl_Position = a_position;\n\ \n\ vec2 singleStepOffset = vec2(texelWidthOffset, texelHeightOffset);\n\ blurCoordinates[0] = a_texCoord.xy;\n\ blurCoordinates[1] = a_texCoord.xy + singleStepOffset * 1.496250;\n\ blurCoordinates[2] = a_texCoord.xy - singleStepOffset * 1.496250;\n\ blurCoordinates[3] = a_texCoord.xy + singleStepOffset * 3.491251;\n\ blurCoordinates[4] = a_texCoord.xy - singleStepOffset * 3.491251;\n\ blurCoordinates[5] = a_texCoord.xy + singleStepOffset * 5.486253;\n\ blurCoordinates[6] = a_texCoord.xy - singleStepOffset * 5.486253;\n\ blurCoordinates[7] = a_texCoord.xy + singleStepOffset * 7.481259;\n\ blurCoordinates[8] = a_texCoord.xy - singleStepOffset * 7.481259;\n\ blurCoordinates[9] = a_texCoord.xy + singleStepOffset * 9.476268;\n\ blurCoordinates[10] = a_texCoord.xy - singleStepOffset * 9.476268;\n\ blurCoordinates[11] = a_texCoord.xy + singleStepOffset * 11.471281;\n\ blurCoordinates[12] = a_texCoord.xy - singleStepOffset * 11.471281;\n\ blurCoordinates[13] = a_texCoord.xy + singleStepOffset * 13.466302;\n\ blurCoordinates[14] = a_texCoord.xy - singleStepOffset * 13.466302;\n\ v_fragmentColor = a_color;\n\ }\n"; const GLchar *blurFragment = "uniform sampler2D CC_Texture0;\n\ uniform highp float texelWidthOffset;\n\ uniform highp float texelHeightOffset;\n\ \n\ @@ -9,67 +43,34 @@ void main()\n\ {\n\ lowp vec4 sum = vec4(0.0);\n\ sum += texture2D(CC_Texture0, blurCoordinates[0]) * 0.040892;\n\ sum += texture2D(CC_Texture0, blurCoordinates[1]) * 0.080769;\n\ sum += texture2D(CC_Texture0, blurCoordinates[2]) * 0.080769;\n\ sum += texture2D(CC_Texture0, blurCoordinates[3]) * 0.076840;\n\ sum += texture2D(CC_Texture0, blurCoordinates[4]) * 0.076840;\n\ sum += texture2D(CC_Texture0, blurCoordinates[5]) * 0.070242;\n\ sum += texture2D(CC_Texture0, blurCoordinates[6]) * 0.070242;\n\ sum += texture2D(CC_Texture0, blurCoordinates[7]) * 0.061699;\n\ sum += texture2D(CC_Texture0, blurCoordinates[8]) * 0.061699;\n\ sum += texture2D(CC_Texture0, blurCoordinates[9]) * 0.052076;\n\ sum += texture2D(CC_Texture0, blurCoordinates[10]) * 0.052076;\n\ sum += texture2D(CC_Texture0, blurCoordinates[11]) * 0.042234;\n\ sum += texture2D(CC_Texture0, blurCoordinates[12]) * 0.042234;\n\ sum += texture2D(CC_Texture0, blurCoordinates[13]) * 0.032912;\n\ sum += texture2D(CC_Texture0, blurCoordinates[14]) * 0.032912;\n\ highp vec2 singleStepOffset = vec2(texelWidthOffset, texelHeightOffset);\n\ sum += texture2D(CC_Texture0, blurCoordinates[0] + singleStepOffset * 15.461327) * 0.024645;\n\ sum += texture2D(CC_Texture0, blurCoordinates[0] - singleStepOffset * 15.461327) * 0.024645;\n\ sum += texture2D(CC_Texture0, blurCoordinates[0] + singleStepOffset * 17.456362) * 0.017732;\n\ sum += texture2D(CC_Texture0, blurCoordinates[0] - singleStepOffset * 17.456362) * 0.017732;\n\ sum += texture2D(CC_Texture0, blurCoordinates[0] + singleStepOffset * 19.451405) * 0.012260;\n\ sum += texture2D(CC_Texture0, blurCoordinates[0] - singleStepOffset * 19.451405) * 0.012260;\n\ sum += texture2D(CC_Texture0, blurCoordinates[0] + singleStepOffset * 21.446457) * 0.008144;\n\ sum += texture2D(CC_Texture0, blurCoordinates[0] - singleStepOffset * 21.446457) * 0.008144;\n\ gl_FragColor = sum;\n\ }\n\ "; @implementation GameView @synthesize wordcounterTexture, wordlists, touchBeginTile, highscores, score=score; @@ -81,11 +82,11 @@ - (id)init { CCGLProgram *shaderProgram = [[CCGLProgram alloc] initWithVertexShaderByteArray:blurVertex fragmentShaderByteArray:blurFragment]; [shaderProgram addAttribute:@"a_position" index:kCCVertexAttrib_Position]; [shaderProgram addAttribute:@"a_color" index:kCCVertexAttrib_Color]; [shaderProgram addAttribute:@"a_texCoord" index:kCCVertexAttrib_TexCoords]; [shaderProgram link]; [shaderProgram updateUniforms]; [[CCShaderCache sharedShaderCache] addProgram:shaderProgram forKey:@"BlurShader"]; self.shaderProgram = [[CCShaderCache sharedShaderCache] programForKey:@"BlurShader"]; -
nheagy renamed this gist
Apr 1, 2014 . 1 changed file with 0 additions and 0 deletions.There are no files selected for viewing
File renamed without changes. -
nheagy created this gist
Apr 1, 2014 .There are no files selected for viewing
This file contains hidden or 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 charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,91 @@ const GLchar *blurFragment = "uniform sampler2D inputImageTexture;\n\ uniform highp float texelWidthOffset;\n\ uniform highp float texelHeightOffset;\n\ \n\ varying highp vec2 blurCoordinates[15];\n\ varying vec4 v_fragmentColor;\n\ \n\ void main()\n\ {\n\ lowp vec4 sum = vec4(0.0);\n\ sum += texture2D(inputImageTexture, blurCoordinates[0]) * 0.040892;\n\ sum += texture2D(inputImageTexture, blurCoordinates[1]) * 0.080769;\n\ sum += texture2D(inputImageTexture, blurCoordinates[2]) * 0.080769;\n\ sum += texture2D(inputImageTexture, blurCoordinates[3]) * 0.076840;\n\ sum += texture2D(inputImageTexture, blurCoordinates[4]) * 0.076840;\n\ sum += texture2D(inputImageTexture, blurCoordinates[5]) * 0.070242;\n\ sum += texture2D(inputImageTexture, blurCoordinates[6]) * 0.070242;\n\ sum += texture2D(inputImageTexture, blurCoordinates[7]) * 0.061699;\n\ sum += texture2D(inputImageTexture, blurCoordinates[8]) * 0.061699;\n\ sum += texture2D(inputImageTexture, blurCoordinates[9]) * 0.052076;\n\ sum += texture2D(inputImageTexture, blurCoordinates[10]) * 0.052076;\n\ sum += texture2D(inputImageTexture, blurCoordinates[11]) * 0.042234;\n\ sum += texture2D(inputImageTexture, blurCoordinates[12]) * 0.042234;\n\ sum += texture2D(inputImageTexture, blurCoordinates[13]) * 0.032912;\n\ sum += texture2D(inputImageTexture, blurCoordinates[14]) * 0.032912;\n\ highp vec2 singleStepOffset = vec2(texelWidthOffset, texelHeightOffset);\n\ sum += texture2D(inputImageTexture, blurCoordinates[0] + singleStepOffset * 15.461327) * 0.024645;\n\ sum += texture2D(inputImageTexture, blurCoordinates[0] - singleStepOffset * 15.461327) * 0.024645;\n\ sum += texture2D(inputImageTexture, blurCoordinates[0] + singleStepOffset * 17.456362) * 0.017732;\n\ sum += texture2D(inputImageTexture, blurCoordinates[0] - singleStepOffset * 17.456362) * 0.017732;\n\ sum += texture2D(inputImageTexture, blurCoordinates[0] + singleStepOffset * 19.451405) * 0.012260;\n\ sum += texture2D(inputImageTexture, blurCoordinates[0] - singleStepOffset * 19.451405) * 0.012260;\n\ sum += texture2D(inputImageTexture, blurCoordinates[0] + singleStepOffset * 21.446457) * 0.008144;\n\ sum += texture2D(inputImageTexture, blurCoordinates[0] - singleStepOffset * 21.446457) * 0.008144;\n\ gl_FragColor = sum;\n\ }\n\ "; const GLchar *blurVertex = "attribute vec4 position;\n\ attribute vec a_color;\n\ attribute vec4 inputTextureCoordinate;\n\ \n\ uniform float texelWidthOffset;\n\ uniform float texelHeightOffset;\n\ \n\ varying vec2 blurCoordinates[15];\n\ \n\ void main()\n\ {\n\ gl_Position = position;\n\ \n\ vec2 singleStepOffset = vec2(texelWidthOffset, texelHeightOffset);\n\ blurCoordinates[0] = inputTextureCoordinate.xy;\n\ blurCoordinates[1] = inputTextureCoordinate.xy + singleStepOffset * 1.496250;\n\ blurCoordinates[2] = inputTextureCoordinate.xy - singleStepOffset * 1.496250;\n\ blurCoordinates[3] = inputTextureCoordinate.xy + singleStepOffset * 3.491251;\n\ blurCoordinates[4] = inputTextureCoordinate.xy - singleStepOffset * 3.491251;\n\ blurCoordinates[5] = inputTextureCoordinate.xy + singleStepOffset * 5.486253;\n\ blurCoordinates[6] = inputTextureCoordinate.xy - singleStepOffset * 5.486253;\n\ blurCoordinates[7] = inputTextureCoordinate.xy + singleStepOffset * 7.481259;\n\ blurCoordinates[8] = inputTextureCoordinate.xy - singleStepOffset * 7.481259;\n\ blurCoordinates[9] = inputTextureCoordinate.xy + singleStepOffset * 9.476268;\n\ blurCoordinates[10] = inputTextureCoordinate.xy - singleStepOffset * 9.476268;\n\ blurCoordinates[11] = inputTextureCoordinate.xy + singleStepOffset * 11.471281;\n\ blurCoordinates[12] = inputTextureCoordinate.xy - singleStepOffset * 11.471281;\n\ blurCoordinates[13] = inputTextureCoordinate.xy + singleStepOffset * 13.466302;\n\ blurCoordinates[14] = inputTextureCoordinate.xy - singleStepOffset * 13.466302;\n\ v_fragmentColor = a_color;\n\ }\n"; @implementation GameView @synthesize wordcounterTexture, wordlists, touchBeginTile, highscores, score=score; #pragma mark Setup - (id)init { if ((self = [super init])) { CCGLProgram *shaderProgram = [[CCGLProgram alloc] initWithVertexShaderByteArray:blurVertex fragmentShaderByteArray:blurFragment]; [shaderProgram addAttribute:@"position" index:kCCVertexAttrib_Position]; [shaderProgram addAttribute:@"color" index:kCCVertexAttrib_Color]; [shaderProgram addAttribute:@"inputTextureCoordinate" index:kCCVertexAttrib_TexCoords]; [shaderProgram link]; [shaderProgram updateUniforms]; [[CCShaderCache sharedShaderCache] addProgram:shaderProgram forKey:@"BlurShader"]; self.shaderProgram = shaderProgram;