Subversion Repository Public Repository

Nextrek

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
{
    "uid": "D3A4011838BF80460B58F607AF6563D9221E",
    "isLoaded": true,
    "lastModificationTime": 0,
    "items": {
        "name": "CircularDistortionEffect",
        "type": "game_script",
        "order": 0,
        "content": "# ===================================================================\n#\n#   Script: CircularDistortionEffect\n#\n#   $$COPYRIGHT$$\n#\n# ===================================================================\nclass CircularDistortionEffect extends gs.GraphicEffect\n    ###*\n    * An example effect to show you how to define your own shader-based effects. It is important\n    * that the name-property matches the name of the registered EffectInfo in gs.Main.setupEffects. Keep in mind that using\n    * custom OpenGL/GLSL shaders binds your game to platforms with OpenGL support.\n    *\n    * All effects are fragment/pixel shaders by default.\n    *\n    * @module gs\n    * @class CircularDistortionEffect\n    * @extends gs.CircularDistortionEffect\n    * @memberof gs\n    * @constructor\n    ###\n    constructor: (data) ->\n        super(data)\n        @type = gs.GraphicEffectType.BASE\n        @name = \"circularDistortion\"\n     \n    ###*\n    * Setup the effect for rendering. All uniforms/shader-inputs need to be set here.\n    *\n    * @method setup\n    * @param {gs.Effect} effect - The shader-effect/program object which allows you to set uniforms.\n    * @param {gs.RenderTask} task - The render-task object contains additional information about the object being rendered.\n    * @param {gs.Texture2D} texture - The texture used for rendering.\n    ###   \n    setup: (effect, task, texture) ->\n        effect.setVector2Value(\"TextureMax\", Graphics.width / texture.realWidth, Graphics.height / texture.realHeight)\n        effect.setFloatValue(\"CircDistTime\", Graphics.frameCount / 50)\n        \n    ###*\n    * Called before the graphics system is initialized to register your custom shader-based effect. See\n    * gs.Main.setupEffects for more info.\n    *\n    * @method register\n    ###    \n    @register: ->\n        # This is an example of how to register your own custom shader-based effect.\n        gs.Effect.registerEffect(new gs.EffectInfo({\n            # Use BASE if the effect overwrites gl_FragColor. Use ADDON if the effect uses gl_FragColor as input.\n            type: gs.GraphicEffectType.BASE,\n            # The name-property needs to match the value of the name-property of the effect-class.\n            name: \"circularDistortion\",\n            # preprocessor defines, this not used in most cases except for internal effects.\n            defines: [\"\"],\n            # A list of all uniforms with correct syntax.\n            uniforms: [\"uniform sampler2D Texture0;\", \"uniform float CircDistTime;\", \"uniform vec2 TextureMax;\"],\n            # A list of all varyings with correct syntax\n            varying: [\"varying vec2 textureCoord;\", \"varying vec4 vColor;\"],\n            # A list of all functions calls with correct syntax.\n            functionCalls: [\"circular_distortion();\"],\n            # A list of all functions with correct syntax.\n            functions: [\"\"\"\n                void circular_distortion()\n                {\n                    vec2 uv = textureCoord;\n                    uv.x += sin(uv.y * 10.0 + CircDistTime) / 10.0;\n                    uv.y += cos(uv.x * 10.0 + CircDistTime) / 10.0;\n                \n                    gl_FragColor = texture2D(Texture0, max(mod(uv, TextureMax), 0.0));\n                    gl_FragColor[3] *= vColor[3]\n                }\n            \"\"\"]\n        }))\n\ngs.CircularDistortionEffect = CircularDistortionEffect     \n",
        "parentId": "11501DAC2D04074EBF7A77A258891F726F54",
        "folder": false,
        "scriptType": 0,
        "compiledContent": "var CircularDistortionEffect,\n  extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n  hasProp = {}.hasOwnProperty;\n\nCircularDistortionEffect = (function(superClass) {\n  extend(CircularDistortionEffect, superClass);\n\n\n  /**\n  * An example effect to show you how to define your own shader-based effects. It is important\n  * that the name-property matches the name of the registered EffectInfo in gs.Main.setupEffects. Keep in mind that using\n  * custom OpenGL/GLSL shaders binds your game to platforms with OpenGL support.\n  *\n  * All effects are fragment/pixel shaders by default.\n  *\n  * @module gs\n  * @class CircularDistortionEffect\n  * @extends gs.CircularDistortionEffect\n  * @memberof gs\n  * @constructor\n   */\n\n  function CircularDistortionEffect(data) {\n    CircularDistortionEffect.__super__.constructor.call(this, data);\n    this.type = gs.GraphicEffectType.BASE;\n    this.name = \"circularDistortion\";\n  }\n\n\n  /**\n  * Setup the effect for rendering. All uniforms/shader-inputs need to be set here.\n  *\n  * @method setup\n  * @param {gs.Effect} effect - The shader-effect/program object which allows you to set uniforms.\n  * @param {gs.RenderTask} task - The render-task object contains additional information about the object being rendered.\n  * @param {gs.Texture2D} texture - The texture used for rendering.\n   */\n\n  CircularDistortionEffect.prototype.setup = function(effect, task, texture) {\n    effect.setVector2Value(\"TextureMax\", Graphics.width / texture.realWidth, Graphics.height / texture.realHeight);\n    return effect.setFloatValue(\"CircDistTime\", Graphics.frameCount / 50);\n  };\n\n\n  /**\n  * Called before the graphics system is initialized to register your custom shader-based effect. See\n  * gs.Main.setupEffects for more info.\n  *\n  * @method register\n   */\n\n  CircularDistortionEffect.register = function() {\n    return gs.Effect.registerEffect(new gs.EffectInfo({\n      type: gs.GraphicEffectType.BASE,\n      name: \"circularDistortion\",\n      defines: [\"\"],\n      uniforms: [\"uniform sampler2D Texture0;\", \"uniform float CircDistTime;\", \"uniform vec2 TextureMax;\"],\n      varying: [\"varying vec2 textureCoord;\", \"varying vec4 vColor;\"],\n      functionCalls: [\"circular_distortion();\"],\n      functions: [\"void circular_distortion()\\n{\\n    vec2 uv = textureCoord;\\n    uv.x += sin(uv.y * 10.0 + CircDistTime) / 10.0;\\n    uv.y += cos(uv.x * 10.0 + CircDistTime) / 10.0;\\n\\n    gl_FragColor = texture2D(Texture0, max(mod(uv, TextureMax), 0.0));\\n    gl_FragColor[3] *= vColor[3]\\n}\"]\n    }));\n  };\n\n  return CircularDistortionEffect;\n\n})(gs.GraphicEffect);\n\ngs.CircularDistortionEffect = CircularDistortionEffect;\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9BLElBQUEsd0JBQUE7RUFBQTs7O0FBQU07Ozs7QUFDRjs7Ozs7Ozs7Ozs7Ozs7RUFhYSxrQ0FBQyxJQUFEO0lBQ1QsMERBQU0sSUFBTjtJQUNBLElBQUMsQ0FBQSxJQUFELEdBQVEsRUFBRSxDQUFDLGlCQUFpQixDQUFDO0lBQzdCLElBQUMsQ0FBQSxJQUFELEdBQVE7RUFIQzs7O0FBS2I7Ozs7Ozs7OztxQ0FRQSxLQUFBLEdBQU8sU0FBQyxNQUFELEVBQVMsSUFBVCxFQUFlLE9BQWY7SUFDSCxNQUFNLENBQUMsZUFBUCxDQUF1QixZQUF2QixFQUFxQyxRQUFRLENBQUMsS0FBVCxHQUFpQixPQUFPLENBQUMsU0FBOUQsRUFBeUUsUUFBUSxDQUFDLE1BQVQsR0FBa0IsT0FBTyxDQUFDLFVBQW5HO1dBQ0EsTUFBTSxDQUFDLGFBQVAsQ0FBcUIsY0FBckIsRUFBcUMsUUFBUSxDQUFDLFVBQVQsR0FBc0IsRUFBM0Q7RUFGRzs7O0FBSVA7Ozs7Ozs7RUFNQSx3QkFBQyxDQUFBLFFBQUQsR0FBVyxTQUFBO1dBRVAsRUFBRSxDQUFDLE1BQU0sQ0FBQyxjQUFWLENBQTZCLElBQUEsRUFBRSxDQUFDLFVBQUgsQ0FBYztNQUV2QyxJQUFBLEVBQU0sRUFBRSxDQUFDLGlCQUFpQixDQUFDLElBRlk7TUFJdkMsSUFBQSxFQUFNLG9CQUppQztNQU12QyxPQUFBLEVBQVMsQ0FBQyxFQUFELENBTjhCO01BUXZDLFFBQUEsRUFBVSxDQUFDLDZCQUFELEVBQWdDLDZCQUFoQyxFQUErRCwwQkFBL0QsQ0FSNkI7TUFVdkMsT0FBQSxFQUFTLENBQUMsNEJBQUQsRUFBK0Isc0JBQS9CLENBVjhCO01BWXZDLGFBQUEsRUFBZSxDQUFDLHdCQUFELENBWndCO01BY3ZDLFNBQUEsRUFBVyxDQUFDLHFSQUFELENBZDRCO0tBQWQsQ0FBN0I7RUFGTzs7OztHQXJDd0IsRUFBRSxDQUFDOztBQWtFMUMsRUFBRSxDQUFDLHdCQUFILEdBQThCIiwic291cmNlc0NvbnRlbnQiOlsiIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4jXG4jICAgU2NyaXB0OiBDaXJjdWxhckRpc3RvcnRpb25FZmZlY3RcbiNcbiMgICAkJENPUFlSSUdIVCQkXG4jXG4jID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbmNsYXNzIENpcmN1bGFyRGlzdG9ydGlvbkVmZmVjdCBleHRlbmRzIGdzLkdyYXBoaWNFZmZlY3RcbiAgICAjIyMqXG4gICAgKiBBbiBleGFtcGxlIGVmZmVjdCB0byBzaG93IHlvdSBob3cgdG8gZGVmaW5lIHlvdXIgb3duIHNoYWRlci1iYXNlZCBlZmZlY3RzLiBJdCBpcyBpbXBvcnRhbnRcbiAgICAqIHRoYXQgdGhlIG5hbWUtcHJvcGVydHkgbWF0Y2hlcyB0aGUgbmFtZSBvZiB0aGUgcmVnaXN0ZXJlZCBFZmZlY3RJbmZvIGluIGdzLk1haW4uc2V0dXBFZmZlY3RzLiBLZWVwIGluIG1pbmQgdGhhdCB1c2luZ1xuICAgICogY3VzdG9tIE9wZW5HTC9HTFNMIHNoYWRlcnMgYmluZHMgeW91ciBnYW1lIHRvIHBsYXRmb3JtcyB3aXRoIE9wZW5HTCBzdXBwb3J0LlxuICAgICpcbiAgICAqIEFsbCBlZmZlY3RzIGFyZSBmcmFnbWVudC9waXhlbCBzaGFkZXJzIGJ5IGRlZmF1bHQuXG4gICAgKlxuICAgICogQG1vZHVsZSBnc1xuICAgICogQGNsYXNzIENpcmN1bGFyRGlzdG9ydGlvbkVmZmVjdFxuICAgICogQGV4dGVuZHMgZ3MuQ2lyY3VsYXJEaXN0b3J0aW9uRWZmZWN0XG4gICAgKiBAbWVtYmVyb2YgZ3NcbiAgICAqIEBjb25zdHJ1Y3RvclxuICAgICMjI1xuICAgIGNvbnN0cnVjdG9yOiAoZGF0YSkgLT5cbiAgICAgICAgc3VwZXIoZGF0YSlcbiAgICAgICAgQHR5cGUgPSBncy5HcmFwaGljRWZmZWN0VHlwZS5CQVNFXG4gICAgICAgIEBuYW1lID0gXCJjaXJjdWxhckRpc3RvcnRpb25cIlxuICAgICBcbiAgICAjIyMqXG4gICAgKiBTZXR1cCB0aGUgZWZmZWN0IGZvciByZW5kZXJpbmcuIEFsbCB1bmlmb3Jtcy9zaGFkZXItaW5wdXRzIG5lZWQgdG8gYmUgc2V0IGhlcmUuXG4gICAgKlxuICAgICogQG1ldGhvZCBzZXR1cFxuICAgICogQHBhcmFtIHtncy5FZmZlY3R9IGVmZmVjdCAtIFRoZSBzaGFkZXItZWZmZWN0L3Byb2dyYW0gb2JqZWN0IHdoaWNoIGFsbG93cyB5b3UgdG8gc2V0IHVuaWZvcm1zLlxuICAgICogQHBhcmFtIHtncy5SZW5kZXJUYXNrfSB0YXNrIC0gVGhlIHJlbmRlci10YXNrIG9iamVjdCBjb250YWlucyBhZGRpdGlvbmFsIGluZm9ybWF0aW9uIGFib3V0IHRoZSBvYmplY3QgYmVpbmcgcmVuZGVyZWQuXG4gICAgKiBAcGFyYW0ge2dzLlRleHR1cmUyRH0gdGV4dHVyZSAtIFRoZSB0ZXh0dXJlIHVzZWQgZm9yIHJlbmRlcmluZy5cbiAgICAjIyMgICBcbiAgICBzZXR1cDogKGVmZmVjdCwgdGFzaywgdGV4dHVyZSkgLT5cbiAgICAgICAgZWZmZWN0LnNldFZlY3RvcjJWYWx1ZShcIlRleHR1cmVNYXhcIiwgR3JhcGhpY3Mud2lkdGggLyB0ZXh0dXJlLnJlYWxXaWR0aCwgR3JhcGhpY3MuaGVpZ2h0IC8gdGV4dHVyZS5yZWFsSGVpZ2h0KVxuICAgICAgICBlZmZlY3Quc2V0RmxvYXRWYWx1ZShcIkNpcmNEaXN0VGltZVwiLCBHcmFwaGljcy5mcmFtZUNvdW50IC8gNTApXG4gICAgICAgIFxuICAgICMjIypcbiAgICAqIENhbGxlZCBiZWZvcmUgdGhlIGdyYXBoaWNzIHN5c3RlbSBpcyBpbml0aWFsaXplZCB0byByZWdpc3RlciB5b3VyIGN1c3RvbSBzaGFkZXItYmFzZWQgZWZmZWN0LiBTZWVcbiAgICAqIGdzLk1haW4uc2V0dXBFZmZlY3RzIGZvciBtb3JlIGluZm8uXG4gICAgKlxuICAgICogQG1ldGhvZCByZWdpc3RlclxuICAgICMjIyAgICBcbiAgICBAcmVnaXN0ZXI6IC0+XG4gICAgICAgICMgVGhpcyBpcyBhbiBleGFtcGxlIG9mIGhvdyB0byByZWdpc3RlciB5b3VyIG93biBjdXN0b20gc2hhZGVyLWJhc2VkIGVmZmVjdC5cbiAgICAgICAgZ3MuRWZmZWN0LnJlZ2lzdGVyRWZmZWN0KG5ldyBncy5FZmZlY3RJbmZvKHtcbiAgICAgICAgICAgICMgVXNlIEJBU0UgaWYgdGhlIGVmZmVjdCBvdmVyd3JpdGVzIGdsX0ZyYWdDb2xvci4gVXNlIEFERE9OIGlmIHRoZSBlZmZlY3QgdXNlcyBnbF9GcmFnQ29sb3IgYXMgaW5wdXQuXG4gICAgICAgICAgICB0eXBlOiBncy5HcmFwaGljRWZmZWN0VHlwZS5CQVNFLFxuICAgICAgICAgICAgIyBUaGUgbmFtZS1wcm9wZXJ0eSBuZWVkcyB0byBtYXRjaCB0aGUgdmFsdWUgb2YgdGhlIG5hbWUtcHJvcGVydHkgb2YgdGhlIGVmZmVjdC1jbGFzcy5cbiAgICAgICAgICAgIG5hbWU6IFwiY2lyY3VsYXJEaXN0b3J0aW9uXCIsXG4gICAgICAgICAgICAjIHByZXByb2Nlc3NvciBkZWZpbmVzLCB0aGlzIG5vdCB1c2VkIGluIG1vc3QgY2FzZXMgZXhjZXB0IGZvciBpbnRlcm5hbCBlZmZlY3RzLlxuICAgICAgICAgICAgZGVmaW5lczogW1wiXCJdLFxuICAgICAgICAgICAgIyBBIGxpc3Qgb2YgYWxsIHVuaWZvcm1zIHdpdGggY29ycmVjdCBzeW50YXguXG4gICAgICAgICAgICB1bmlmb3JtczogW1widW5pZm9ybSBzYW1wbGVyMkQgVGV4dHVyZTA7XCIsIFwidW5pZm9ybSBmbG9hdCBDaXJjRGlzdFRpbWU7XCIsIFwidW5pZm9ybSB2ZWMyIFRleHR1cmVNYXg7XCJdLFxuICAgICAgICAgICAgIyBBIGxpc3Qgb2YgYWxsIHZhcnlpbmdzIHdpdGggY29ycmVjdCBzeW50YXhcbiAgICAgICAgICAgIHZhcnlpbmc6IFtcInZhcnlpbmcgdmVjMiB0ZXh0dXJlQ29vcmQ7XCIsIFwidmFyeWluZyB2ZWM0IHZDb2xvcjtcIl0sXG4gICAgICAgICAgICAjIEEgbGlzdCBvZiBhbGwgZnVuY3Rpb25zIGNhbGxzIHdpdGggY29ycmVjdCBzeW50YXguXG4gICAgICAgICAgICBmdW5jdGlvbkNhbGxzOiBbXCJjaXJjdWxhcl9kaXN0b3J0aW9uKCk7XCJdLFxuICAgICAgICAgICAgIyBBIGxpc3Qgb2YgYWxsIGZ1bmN0aW9ucyB3aXRoIGNvcnJlY3Qgc3ludGF4LlxuICAgICAgICAgICAgZnVuY3Rpb25zOiBbXCJcIlwiXG4gICAgICAgICAgICAgICAgdm9pZCBjaXJjdWxhcl9kaXN0b3J0aW9uKClcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHZlYzIgdXYgPSB0ZXh0dXJlQ29vcmQ7XG4gICAgICAgICAgICAgICAgICAgIHV2LnggKz0gc2luKHV2LnkgKiAxMC4wICsgQ2lyY0Rpc3RUaW1lKSAvIDEwLjA7XG4gICAgICAgICAgICAgICAgICAgIHV2LnkgKz0gY29zKHV2LnggKiAxMC4wICsgQ2lyY0Rpc3RUaW1lKSAvIDEwLjA7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIGdsX0ZyYWdDb2xvciA9IHRleHR1cmUyRChUZXh0dXJlMCwgbWF4KG1vZCh1diwgVGV4dHVyZU1heCksIDAuMCkpO1xuICAgICAgICAgICAgICAgICAgICBnbF9GcmFnQ29sb3JbM10gKj0gdkNvbG9yWzNdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXCJcIlwiXVxuICAgICAgICB9KSlcblxuZ3MuQ2lyY3VsYXJEaXN0b3J0aW9uRWZmZWN0ID0gQ2lyY3VsYXJEaXN0b3J0aW9uRWZmZWN0ICAgICBcbiJdfQ==\n//# sourceURL=CircularDistortionEffect_13.js"
    },
    "summary": [
        "name",
        "type"
    ]
}

Commits for Nextrek/s2s/data/D3A4011838BF80460B58F607AF6563D9221E.json

Diff revisions: vs.
Revision Author Commited Message
1084 MOliva picture MOliva Fri 11 May, 2018 12:41:55 +0000