Commit dad6427b authored by Li MingZhe's avatar Li MingZhe

feat: 底部item 宽度适配

parent 9ef2a016
No preview for this file type
......@@ -22,6 +22,7 @@ cc.Class({
_maxPage: null,
_lineMaxCount: null,
_disW: null,
_maxW: null,
onLoad() {
this._canTouch = true;
this._isTop = false;
......@@ -35,8 +36,8 @@ cc.Class({
this._maxPage = 0;
this._disW = 5;
const maxW = 1280 - 90;
this._lineMaxCount = Math.floor(maxW / (this._disW + this._itemLen));
this._maxW = 1280 - 90;
this._lineMaxCount = Math.floor(this._maxW / (this._disW + this._itemLen));
},
......@@ -112,7 +113,7 @@ cc.Class({
return;
}
if (this._pageIndex >= this._maxPage) {
if (this._pageIndex >= this._maxPage - 1) {
return;
}
this._pageIndex++;
......@@ -142,7 +143,7 @@ cc.Class({
this._pageUpBtn.opacity = 255;
}
if (this._pageIndex == this._maxPage) {
if (this._pageIndex == this._maxPage - 1) {
this._pageDownBtn.opacity = 100;
} else {
this._pageDownBtn.opacity = 255;
......@@ -185,12 +186,35 @@ cc.Class({
return;
}
this._dataArr = dataArr;
this._maxPage = Math.ceil(dataArr.length / this._lineMaxCount) - 1;
// this._maxPage = Math.ceil(dataArr.length / this._lineMaxCount) - 1;
this._initPageArr();
this._pageIndex = 0;
this._refreshPage();
},
_pageArr: null,
_initPageArr() {
let tmpArr = [];
this._pageArr = [tmpArr];
let curLen = this._disW;
for (let i=0; i<this._dataArr.length; i++) {
const item = this._addOneItem(this._dataArr[i]);
curLen += item.width + this._disW;
if (curLen > this._maxW) {
tmpArr = [item];
this._pageArr.push(tmpArr);
} else {
tmpArr.push(item);
}
}
this._maxPage = this._pageArr.length;
console.log('this._maxPage: ', this._maxPage);
},
_itemLen: null,
_addOneItem(data) {
......@@ -207,6 +231,7 @@ cc.Class({
this._addItemLabel(item, data.text);
this._addItemAudio(item, data.audio_url);
item.data = data;
return item;
},
......@@ -254,6 +279,10 @@ cc.Class({
}
label.font = this._labelFont;
label._forceUpdateRenderData(true)
if (labelNode.width > this._itemLen) {
item.width = labelNode.width;
}
},
......@@ -286,20 +315,35 @@ cc.Class({
const disW = this._disW;
const startIndex = this._pageIndex * this._lineMaxCount;
const showArr = dataArr.slice(startIndex, startIndex + this._lineMaxCount);
// const showArr = dataArr.slice(startIndex, startIndex + this._lineMaxCount);
const showArr = this._pageArr[this._pageIndex];
let baseX = this._getCurPageBaseX();
const baseX = -(disW + this._itemLen) * (showArr.length - 1) / 2;
// const baseX = -(disW + this._itemLen) * (showArr.length - 1) / 2;
const baseY = -25;
showArr.forEach((data, i) => {
const item = this._addOneItem(data);
showArr.forEach((el, i) => {
const item = this._addOneItem(el.data);
this._itemLayer.addChild(item);
item.x = baseX + (disW + this._itemLen) * i;
item.x = baseX + (disW + item.width) / 2
item.y = baseY;
baseX = item.x + (disW + item.width) / 2;
});
this._setPageBtnState();
},
_getCurPageBaseX() {
const arr = this._pageArr[this._pageIndex];
console.log('arr: ', arr);
let curLen = this._disW;
for (let i=0; i<arr.length; i++) {
curLen += (arr[i].width + this._disW)
}
return -curLen / 2;
},
// update (dt) {},
});
{"paths":{"0":["effects/builtin-2d-spine",0],"1":["effects/builtin-2d-gray-sprite",0],"2":["materials/builtin-unlit",1],"3":["effects/builtin-3d-trail",0],"4":["effects/builtin-2d-graphics",0],"5":["materials/builtin-2d-gray-sprite",1],"6":["materials/builtin-3d-particle",1],"7":["materials/builtin-3d-trail",1],"8":["effects/builtin-unlit",0],"9":["materials/builtin-2d-spine",1],"10":["effects/builtin-3d-particle",0],"11":["materials/builtin-2d-graphics",1],"12":["effects/builtin-clear-stencil",0],"13":["materials/builtin-clear-stencil",1],"14":["materials/builtin-2d-label",1],"15":["effects/builtin-2d-label",0],"17":["effects/builtin-2d-sprite",0],"19":["materials/builtin-2d-base",1],"20":["materials/builtin-2d-sprite",1]},"types":["cc.EffectAsset","cc.Material"],"uuids":["0ek66qC1NOQLjgYmi04HvX","14TDKXr2NJ6LjvHPops74o","2aKWBXJHxKHLvrBUi2yYZQ","2afAA24LNP4YmYiaVLiivs","30aC+Hnw1PF4pEcoY3kUYb","3ae7efMv1CLq2ilvUY/tQi","43L6CczwNM/6GGmCYEQIoH","46bU+b5fROqIXVPG6aZWWK","6dkeWRTOBGXICfYQ7JUBnG","7a/QZLET9IDreTiBfRn2PD","82migssElAGb04Ws6NimQX","a1U5RdJRFMFL57BdJC9H1X","c0BAyVxX9JzZy8EjFrc9DU","cffgu4qBxEqa150o1DmRAy","e0LYfU5ZlNFoAB4UiRrGUG","f1h0LXVtJOta5JLZ1xCzfI","02delMVqdBD70a/HSD99FK","28dPjdQWxEQIG3VVl1Qm6T","60AwGqM1dKELCGhPAR+jK6","6fgBCSDDdPMInvyNlggls2","ecpdLyjvZBwrvm+cedCcQy"],"scenes":{},"redirect":[],"deps":[],"packs":{"0771a325d":[6,10],"079499991":[2,8],"07ce7530a":[1,5],"08018726a":[14,15],"0a5cba09d":[3,7],"0d5255670":[4,11],"0d669730c":[12,13],"0e4bc3b03":[0,9],"0ea3dbfa0":[16,18]},"name":"internal","importBase":"import","nativeBase":"native","debug":false,"isZip":false,"encrypted":true}
\ No newline at end of file
{
"paths": {
"30aC+Hnw1PF4pEcoY3kUYb": [
"effects/builtin-2d-graphics",
"cc.EffectAsset"
],
"14TDKXr2NJ6LjvHPops74o": [
"effects/builtin-2d-gray-sprite",
"cc.EffectAsset"
],
"f1h0LXVtJOta5JLZ1xCzfI": [
"effects/builtin-2d-label",
"cc.EffectAsset"
],
"0ek66qC1NOQLjgYmi04HvX": [
"effects/builtin-2d-spine",
"cc.EffectAsset"
],
"28dPjdQWxEQIG3VVl1Qm6T": [
"effects/builtin-2d-sprite",
"cc.EffectAsset"
],
"82migssElAGb04Ws6NimQX": [
"effects/builtin-3d-particle",
"cc.EffectAsset"
],
"2afAA24LNP4YmYiaVLiivs": [
"effects/builtin-3d-trail",
"cc.EffectAsset"
],
"c0BAyVxX9JzZy8EjFrc9DU": [
"effects/builtin-clear-stencil",
"cc.EffectAsset"
],
"6dkeWRTOBGXICfYQ7JUBnG": [
"effects/builtin-unlit",
"cc.EffectAsset"
],
"6fgBCSDDdPMInvyNlggls2": [
"materials/builtin-2d-base",
"cc.Material"
],
"a1U5RdJRFMFL57BdJC9H1X": [
"materials/builtin-2d-graphics",
"cc.Material"
],
"3ae7efMv1CLq2ilvUY/tQi": [
"materials/builtin-2d-gray-sprite",
"cc.Material"
],
"e0LYfU5ZlNFoAB4UiRrGUG": [
"materials/builtin-2d-label",
"cc.Material"
],
"7a/QZLET9IDreTiBfRn2PD": [
"materials/builtin-2d-spine",
"cc.Material"
],
"ecpdLyjvZBwrvm+cedCcQy": [
"materials/builtin-2d-sprite",
"cc.Material"
],
"43L6CczwNM/6GGmCYEQIoH": [
"materials/builtin-3d-particle",
"cc.Material"
],
"46bU+b5fROqIXVPG6aZWWK": [
"materials/builtin-3d-trail",
"cc.Material"
],
"cffgu4qBxEqa150o1DmRAy": [
"materials/builtin-clear-stencil",
"cc.Material"
],
"2aKWBXJHxKHLvrBUi2yYZQ": [
"materials/builtin-unlit",
"cc.Material"
]
},
"uuids": [
"02delMVqdBD70a/HSD99FK",
"0ek66qC1NOQLjgYmi04HvX",
"14TDKXr2NJ6LjvHPops74o",
"28dPjdQWxEQIG3VVl1Qm6T",
"2aKWBXJHxKHLvrBUi2yYZQ",
"2afAA24LNP4YmYiaVLiivs",
"30aC+Hnw1PF4pEcoY3kUYb",
"3ae7efMv1CLq2ilvUY/tQi",
"43L6CczwNM/6GGmCYEQIoH",
"46bU+b5fROqIXVPG6aZWWK",
"60AwGqM1dKELCGhPAR+jK6",
"6dkeWRTOBGXICfYQ7JUBnG",
"6fgBCSDDdPMInvyNlggls2",
"7a/QZLET9IDreTiBfRn2PD",
"82migssElAGb04Ws6NimQX",
"a1U5RdJRFMFL57BdJC9H1X",
"c0BAyVxX9JzZy8EjFrc9DU",
"cffgu4qBxEqa150o1DmRAy",
"e0LYfU5ZlNFoAB4UiRrGUG",
"ecpdLyjvZBwrvm+cedCcQy",
"f1h0LXVtJOta5JLZ1xCzfI"
],
"scenes": {},
"redirect": [],
"deps": [],
"packs": {
"0771a325d": [
"43L6CczwNM/6GGmCYEQIoH",
"82migssElAGb04Ws6NimQX"
],
"079499991": [
"2aKWBXJHxKHLvrBUi2yYZQ",
"6dkeWRTOBGXICfYQ7JUBnG"
],
"07ce7530a": [
"14TDKXr2NJ6LjvHPops74o",
"3ae7efMv1CLq2ilvUY/tQi"
],
"08018726a": [
"e0LYfU5ZlNFoAB4UiRrGUG",
"f1h0LXVtJOta5JLZ1xCzfI"
],
"0a5cba09d": [
"2afAA24LNP4YmYiaVLiivs",
"46bU+b5fROqIXVPG6aZWWK"
],
"0d5255670": [
"30aC+Hnw1PF4pEcoY3kUYb",
"a1U5RdJRFMFL57BdJC9H1X"
],
"0d669730c": [
"c0BAyVxX9JzZy8EjFrc9DU",
"cffgu4qBxEqa150o1DmRAy"
],
"0e4bc3b03": [
"0ek66qC1NOQLjgYmi04HvX",
"7a/QZLET9IDreTiBfRn2PD"
],
"0ea3dbfa0": [
"02delMVqdBD70a/HSD99FK",
"60AwGqM1dKELCGhPAR+jK6"
]
},
"name": "internal",
"importBase": "import",
"nativeBase": "native",
"debug": true,
"isZip": false,
"encrypted": false
}
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
[{"__type__":"cc.Material","_name":"builtin-unlit","_effectAsset":{"__uuid__":"6dkeWRTOBGXICfYQ7JUBnG"},"_techniqueData":{"0":{"props":{"diffuseTexture":{"__uuid__":"02delMVqdBD70a/HSD99FK"}},"defines":{"USE_DIFFUSE_TEXTURE":true}}}},{"__type__":"cc.EffectAsset","_name":"builtin-unlit","techniques":[{"name":"opaque","passes":[{"blendState":{"targets":[{"blend":true}]},"rasterizerState":{"cullMode":0},"depthStencilState":{"depthTest":true,"depthWrite":true},"properties":{"diffuseTexture":{"value":"white","type":29},"diffuseColor":{"value":[1,1,1,1],"editor":{"type":"color"},"type":16},"alphaThreshold":{"value":[0.5],"type":13},"mainTiling":{"value":[1,1],"type":14},"mainOffset":{"value":[0,0],"type":14}},"program":"builtin-unlit|unlit-vs|unlit-fs"}]},{"name":"transparent","passes":[{"stage":"transparent","blendState":{"targets":[{"blend":true}]},"rasterizerState":{"cullMode":0},"depthStencilState":{"depthTest":true,"depthWrite":true},"properties":{"diffuseTexture":{"value":"white","type":29},"diffuseColor":{"value":[1,1,1,1],"editor":{"type":"color"},"type":16},"alphaThreshold":{"value":[0.5],"type":13},"mainTiling":{"value":[1,1],"type":14},"mainOffset":{"value":[0,0],"type":14}},"program":"builtin-unlit|unlit-vs|unlit-fs"}]}],"shaders":[{"hash":922858114,"glsl3":{"vert":"\nprecision highp float;\nuniform CCLocal {\n mat4 cc_matWorld;\n mat4 cc_matWorldIT;\n};\nuniform CCGlobal {\n mat4 cc_matView;\n mat4 cc_matViewInv;\n mat4 cc_matProj;\n mat4 cc_matProjInv;\n mat4 cc_matViewProj;\n mat4 cc_matViewProjInv;\n vec4 cc_cameraPos;\n vec4 cc_time;\n mediump vec4 cc_screenSize;\n mediump vec4 cc_screenScale;\n};\n#if CC_USE_SKINNING\n in vec4 a_weights;\n in vec4 a_joints;\n #if CC_USE_JOINTS_TEXTRUE\n uniform SKINNING {\n vec2 jointsTextureSize;\n };\n uniform sampler2D jointsTexture;\n #if CC_JOINTS_TEXTURE_FLOAT32\n mat4 getBoneMatrix(const in float i) {\n float width = jointsTextureSize.x;\n float height = jointsTextureSize.y;\n float j = i * 4.0;\n float x = mod(j, width);\n float y = floor(j / width);\n float dx = 1.0 / width;\n float dy = 1.0 / height;\n y = dy * (y + 0.5);\n vec4 v1 = texture(jointsTexture, vec2(dx * (x + 0.5), y));\n vec4 v2 = texture(jointsTexture, vec2(dx * (x + 1.5), y));\n vec4 v3 = texture(jointsTexture, vec2(dx * (x + 2.5), y));\n vec4 v4 = texture(jointsTexture, vec2(dx * (x + 3.5), y));\n return mat4(v1, v2, v3, v4);\n }\n #else\n float decode32(vec4 rgba) {\n float Sign = 1.0 - step(128.0, rgba[0]) * 2.0;\n float Exponent = 2.0 * mod(rgba[0], 128.0) + step(128.0, rgba[1]) - 127.0;\n float Mantissa = mod(rgba[1], 128.0) * 65536.0 + rgba[2] * 256.0 + rgba[3] + 8388608.0;\n return Sign * exp2(Exponent - 23.0) * Mantissa;\n }\n vec4 decodevec4 (vec4 x, vec4 y, vec4 z, vec4 w) {\n return vec4(\n decode32(x.wzyx * 255.0),\n decode32(y.wzyx * 255.0),\n decode32(z.wzyx * 255.0),\n decode32(w.wzyx * 255.0)\n );\n }\n vec4 decodevec4 (float dx, float x, float y) {\n return decodevec4(\n texture(jointsTexture, vec2(dx * (x + 0.5), y)),\n texture(jointsTexture, vec2(dx * (x + 1.5), y)),\n texture(jointsTexture, vec2(dx * (x + 2.5), y)),\n texture(jointsTexture, vec2(dx * (x + 3.5), y))\n );\n }\n mat4 getBoneMatrix(const in float i) {\n float width = jointsTextureSize.x;\n float height = jointsTextureSize.y;\n float j = i * 16.0;\n float x = mod(j, width);\n float y = floor(j / width);\n float dx = 1.0 / width;\n float dy = 1.0 / height;\n y = dy * (y + 0.5);\n vec4 v1 = decodevec4(dx, x, y);\n vec4 v2 = decodevec4(dx, x+4.0, y);\n vec4 v3 = decodevec4(dx, x+8.0, y);\n vec4 v4 = decodevec4(dx, x+12.0, y);\n return mat4(v1, v2, v3, v4);\n }\n #endif\n #else\n uniform JOINT_MATRIX {\n mat4 jointMatrices[50];\n };\n mat4 getBoneMatrix(const in float i) {\n return jointMatrices[int(i)];\n }\n #endif\n mat4 skinMatrix() {\n return\n getBoneMatrix(a_joints.x) * a_weights.x +\n getBoneMatrix(a_joints.y) * a_weights.y +\n getBoneMatrix(a_joints.z) * a_weights.z +\n getBoneMatrix(a_joints.w) * a_weights.w\n ;\n }\n#endif\nstruct StandardVertInput {\n vec2 uv;\n vec4 position;\n vec3 normal;\n vec4 tangent;\n vec4 color;\n};\nin vec3 a_position;\n#if CC_USE_ATTRIBUTE_UV0\nin vec2 a_uv0;\n#endif\n#if CC_USE_ATTRIBUTE_COLOR\nin vec4 a_color;\n#endif\n#if CC_USE_ATTRIBUTE_NORMAL\nin vec3 a_normal;\n#endif\n#if CC_USE_ATTRIBUTE_TANGENT\nin vec4 a_tangent;\n#endif\nvoid CCAttribute (out StandardVertInput In) {\n In.position = vec4(a_position, 1.0);\n #if CC_USE_ATTRIBUTE_UV0\n In.uv = a_uv0;\n #else\n In.uv = vec2(0.0);\n #endif\n #if CC_USE_ATTRIBUTE_COLOR\n In.color = a_color;\n #else\n In.color = vec4(1.0);\n #endif\n #if CC_USE_ATTRIBUTE_NORMAL\n In.normal = a_normal;\n #else\n In.normal = vec3(0.0, 1.0, 0.0);\n #endif\n #if CC_USE_ATTRIBUTE_TANGENT\n In.tangent = a_tangent;\n #else\n In.tangent = vec4(1.0, 0.0, 0.0, 0.0);\n #endif\n}\nvoid CCVertInput(out StandardVertInput In) {\n CCAttribute(In);\n #if CC_USE_SKINNING\n mat4 m = skinMatrix();\n In.position = m * In.position;\n #if CC_USE_ATTRIBUTE_NORMAL\n In.normal = (m * vec4(In.normal, 0)).xyz;\n #endif\n #if CC_USE_ATTRIBUTE_TANGENT\n In.tangent = m * In.tangent;\n #endif\n #endif\n}\nuniform MAIN_TILING {\n vec2 mainTiling;\n vec2 mainOffset;\n};\n#if CC_USE_ATTRIBUTE_UV0 && USE_DIFFUSE_TEXTURE\n out mediump vec2 v_uv0;\n#endif\n#if CC_USE_ATTRIBUTE_COLOR\n out lowp vec4 v_color;\n#endif\nvoid main () {\n StandardVertInput In;\n CCVertInput(In);\n #if CC_USE_ATTRIBUTE_COLOR\n v_color = In.color;\n #endif\n #if CC_USE_ATTRIBUTE_UV0 && USE_DIFFUSE_TEXTURE\n v_uv0 = In.uv * mainTiling + mainOffset;\n #endif\n gl_Position = cc_matViewProj * cc_matWorld * In.position;\n}","frag":"\nprecision highp float;\n#if USE_ALPHA_TEST\n uniform ALPHA_TEST {\n float alphaThreshold;\n };\n#endif\nvoid ALPHA_TEST (in vec4 color) {\n #if USE_ALPHA_TEST\n if (color.a < alphaThreshold) discard;\n #endif\n}\nvoid ALPHA_TEST (in float alpha) {\n #if USE_ALPHA_TEST\n if (alpha < alphaThreshold) discard;\n #endif\n}\nvec4 CCFragOutput (vec4 color) {\n #if OUTPUT_TO_GAMMA\n color.rgb = sqrt(color.rgb);\n #endif\n\treturn color;\n}\nuniform UNLIT {\n lowp vec4 diffuseColor;\n};\n#if USE_DIFFUSE_TEXTURE\n uniform sampler2D diffuseTexture;\n#endif\n#if CC_USE_ATTRIBUTE_COLOR\n in lowp vec4 v_color;\n#endif\n#if CC_USE_ATTRIBUTE_UV0 && USE_DIFFUSE_TEXTURE\n in mediump vec2 v_uv0;\n#endif\nvoid main () {\n vec4 color = diffuseColor;\n #if CC_USE_ATTRIBUTE_UV0 && USE_DIFFUSE_TEXTURE\n vec4 diffuseTexture_tmp = texture(diffuseTexture, v_uv0);\n #if CC_USE_ALPHA_ATLAS_diffuseTexture\n diffuseTexture_tmp.a *= texture(diffuseTexture, v_uv0 + vec2(0, 0.5)).r;\n #endif\n #if INPUT_IS_GAMMA\n color.rgb *= (diffuseTexture_tmp.rgb * diffuseTexture_tmp.rgb);\n color.a *= diffuseTexture_tmp.a;\n #else\n color *= diffuseTexture_tmp;\n #endif\n #endif\n #if CC_USE_ATTRIBUTE_COLOR\n color *= v_color;\n #endif\n ALPHA_TEST(color);\n gl_FragColor = CCFragOutput(color);\n}"},"glsl1":{"vert":"\nprecision highp float;\nuniform mat4 cc_matWorld;\nuniform mat4 cc_matViewProj;\n#if CC_USE_SKINNING\n attribute vec4 a_weights;\n attribute vec4 a_joints;\n #if CC_USE_JOINTS_TEXTRUE\n uniform vec2 jointsTextureSize;\n uniform sampler2D jointsTexture;\n #if CC_JOINTS_TEXTURE_FLOAT32\n mat4 getBoneMatrix(const in float i) {\n float width = jointsTextureSize.x;\n float height = jointsTextureSize.y;\n float j = i * 4.0;\n float x = mod(j, width);\n float y = floor(j / width);\n float dx = 1.0 / width;\n float dy = 1.0 / height;\n y = dy * (y + 0.5);\n vec4 v1 = texture2D(jointsTexture, vec2(dx * (x + 0.5), y));\n vec4 v2 = texture2D(jointsTexture, vec2(dx * (x + 1.5), y));\n vec4 v3 = texture2D(jointsTexture, vec2(dx * (x + 2.5), y));\n vec4 v4 = texture2D(jointsTexture, vec2(dx * (x + 3.5), y));\n return mat4(v1, v2, v3, v4);\n }\n #else\n float decode32(vec4 rgba) {\n float Sign = 1.0 - step(128.0, rgba[0]) * 2.0;\n float Exponent = 2.0 * mod(rgba[0], 128.0) + step(128.0, rgba[1]) - 127.0;\n float Mantissa = mod(rgba[1], 128.0) * 65536.0 + rgba[2] * 256.0 + rgba[3] + 8388608.0;\n return Sign * exp2(Exponent - 23.0) * Mantissa;\n }\n vec4 decodevec4 (vec4 x, vec4 y, vec4 z, vec4 w) {\n return vec4(\n decode32(x.wzyx * 255.0),\n decode32(y.wzyx * 255.0),\n decode32(z.wzyx * 255.0),\n decode32(w.wzyx * 255.0)\n );\n }\n vec4 decodevec4 (float dx, float x, float y) {\n return decodevec4(\n texture2D(jointsTexture, vec2(dx * (x + 0.5), y)),\n texture2D(jointsTexture, vec2(dx * (x + 1.5), y)),\n texture2D(jointsTexture, vec2(dx * (x + 2.5), y)),\n texture2D(jointsTexture, vec2(dx * (x + 3.5), y))\n );\n }\n mat4 getBoneMatrix(const in float i) {\n float width = jointsTextureSize.x;\n float height = jointsTextureSize.y;\n float j = i * 16.0;\n float x = mod(j, width);\n float y = floor(j / width);\n float dx = 1.0 / width;\n float dy = 1.0 / height;\n y = dy * (y + 0.5);\n vec4 v1 = decodevec4(dx, x, y);\n vec4 v2 = decodevec4(dx, x+4.0, y);\n vec4 v3 = decodevec4(dx, x+8.0, y);\n vec4 v4 = decodevec4(dx, x+12.0, y);\n return mat4(v1, v2, v3, v4);\n }\n #endif\n #else\n uniform mat4 jointMatrices[50];\n mat4 getBoneMatrix(const in float i) {\n return jointMatrices[int(i)];\n }\n #endif\n mat4 skinMatrix() {\n return\n getBoneMatrix(a_joints.x) * a_weights.x +\n getBoneMatrix(a_joints.y) * a_weights.y +\n getBoneMatrix(a_joints.z) * a_weights.z +\n getBoneMatrix(a_joints.w) * a_weights.w\n ;\n }\n#endif\nstruct StandardVertInput {\n vec2 uv;\n vec4 position;\n vec3 normal;\n vec4 tangent;\n vec4 color;\n};\nattribute vec3 a_position;\n#if CC_USE_ATTRIBUTE_UV0\nattribute vec2 a_uv0;\n#endif\n#if CC_USE_ATTRIBUTE_COLOR\nattribute vec4 a_color;\n#endif\n#if CC_USE_ATTRIBUTE_NORMAL\nattribute vec3 a_normal;\n#endif\n#if CC_USE_ATTRIBUTE_TANGENT\nattribute vec4 a_tangent;\n#endif\nvoid CCAttribute (out StandardVertInput In) {\n In.position = vec4(a_position, 1.0);\n #if CC_USE_ATTRIBUTE_UV0\n In.uv = a_uv0;\n #else\n In.uv = vec2(0.0);\n #endif\n #if CC_USE_ATTRIBUTE_COLOR\n In.color = a_color;\n #else\n In.color = vec4(1.0);\n #endif\n #if CC_USE_ATTRIBUTE_NORMAL\n In.normal = a_normal;\n #else\n In.normal = vec3(0.0, 1.0, 0.0);\n #endif\n #if CC_USE_ATTRIBUTE_TANGENT\n In.tangent = a_tangent;\n #else\n In.tangent = vec4(1.0, 0.0, 0.0, 0.0);\n #endif\n}\nvoid CCVertInput(out StandardVertInput In) {\n CCAttribute(In);\n #if CC_USE_SKINNING\n mat4 m = skinMatrix();\n In.position = m * In.position;\n #if CC_USE_ATTRIBUTE_NORMAL\n In.normal = (m * vec4(In.normal, 0)).xyz;\n #endif\n #if CC_USE_ATTRIBUTE_TANGENT\n In.tangent = m * In.tangent;\n #endif\n #endif\n}\nuniform vec2 mainTiling;\nuniform vec2 mainOffset;\n#if CC_USE_ATTRIBUTE_UV0 && USE_DIFFUSE_TEXTURE\n varying mediump vec2 v_uv0;\n#endif\n#if CC_USE_ATTRIBUTE_COLOR\n varying lowp vec4 v_color;\n#endif\nvoid main () {\n StandardVertInput In;\n CCVertInput(In);\n #if CC_USE_ATTRIBUTE_COLOR\n v_color = In.color;\n #endif\n #if CC_USE_ATTRIBUTE_UV0 && USE_DIFFUSE_TEXTURE\n v_uv0 = In.uv * mainTiling + mainOffset;\n #endif\n gl_Position = cc_matViewProj * cc_matWorld * In.position;\n}","frag":"\nprecision highp float;\n#if USE_ALPHA_TEST\n uniform float alphaThreshold;\n#endif\nvoid ALPHA_TEST (in vec4 color) {\n #if USE_ALPHA_TEST\n if (color.a < alphaThreshold) discard;\n #endif\n}\nvoid ALPHA_TEST (in float alpha) {\n #if USE_ALPHA_TEST\n if (alpha < alphaThreshold) discard;\n #endif\n}\nvec4 CCFragOutput (vec4 color) {\n #if OUTPUT_TO_GAMMA\n color.rgb = sqrt(color.rgb);\n #endif\n\treturn color;\n}\nuniform lowp vec4 diffuseColor;\n#if USE_DIFFUSE_TEXTURE\n uniform sampler2D diffuseTexture;\n#endif\n#if CC_USE_ATTRIBUTE_COLOR\n varying lowp vec4 v_color;\n#endif\n#if CC_USE_ATTRIBUTE_UV0 && USE_DIFFUSE_TEXTURE\n varying mediump vec2 v_uv0;\n#endif\nvoid main () {\n vec4 color = diffuseColor;\n #if CC_USE_ATTRIBUTE_UV0 && USE_DIFFUSE_TEXTURE\n vec4 diffuseTexture_tmp = texture2D(diffuseTexture, v_uv0);\n #if CC_USE_ALPHA_ATLAS_diffuseTexture\n diffuseTexture_tmp.a *= texture2D(diffuseTexture, v_uv0 + vec2(0, 0.5)).r;\n #endif\n #if INPUT_IS_GAMMA\n color.rgb *= (diffuseTexture_tmp.rgb * diffuseTexture_tmp.rgb);\n color.a *= diffuseTexture_tmp.a;\n #else\n color *= diffuseTexture_tmp;\n #endif\n #endif\n #if CC_USE_ATTRIBUTE_COLOR\n color *= v_color;\n #endif\n ALPHA_TEST(color);\n gl_FragColor = CCFragOutput(color);\n}"},"builtins":{"globals":{"blocks":[{"name":"CCGlobal","defines":[]}],"samplers":[]},"locals":{"blocks":[{"name":"CCLocal","defines":[]}],"samplers":[]}},"defines":[{"name":"CC_USE_SKINNING","type":"boolean","defines":[]},{"name":"CC_USE_JOINTS_TEXTRUE","type":"boolean","defines":["CC_USE_SKINNING"]},{"name":"CC_JOINTS_TEXTURE_FLOAT32","type":"boolean","defines":["CC_USE_SKINNING","CC_USE_JOINTS_TEXTRUE"]},{"name":"CC_USE_ATTRIBUTE_UV0","type":"boolean","defines":[]},{"name":"CC_USE_ATTRIBUTE_COLOR","type":"boolean","defines":[]},{"name":"CC_USE_ATTRIBUTE_NORMAL","type":"boolean","defines":[]},{"name":"CC_USE_ATTRIBUTE_TANGENT","type":"boolean","defines":[]},{"name":"USE_DIFFUSE_TEXTURE","type":"boolean","defines":[]},{"name":"USE_ALPHA_TEST","type":"boolean","defines":[]},{"name":"OUTPUT_TO_GAMMA","type":"boolean","defines":[]},{"name":"CC_USE_ALPHA_ATLAS_diffuseTexture","type":"boolean","defines":["CC_USE_ATTRIBUTE_UV0","USE_DIFFUSE_TEXTURE"]},{"name":"INPUT_IS_GAMMA","type":"boolean","defines":["CC_USE_ATTRIBUTE_UV0","USE_DIFFUSE_TEXTURE"]}],"blocks":[{"name":"SKINNING","members":[{"name":"jointsTextureSize","type":14,"count":1}],"defines":["CC_USE_SKINNING","CC_USE_JOINTS_TEXTRUE"],"binding":0},{"name":"JOINT_MATRIX","members":[{"name":"jointMatrices","type":26,"count":50}],"defines":["CC_USE_SKINNING"],"binding":1},{"name":"MAIN_TILING","members":[{"name":"mainTiling","type":14,"count":1},{"name":"mainOffset","type":14,"count":1}],"defines":[],"binding":2},{"name":"ALPHA_TEST","members":[{"name":"alphaThreshold","type":13,"count":1}],"defines":["USE_ALPHA_TEST"],"binding":3},{"name":"UNLIT","members":[{"name":"diffuseColor","type":16,"count":1}],"defines":[],"binding":4}],"samplers":[{"name":"jointsTexture","type":29,"count":1,"defines":["CC_USE_SKINNING","CC_USE_JOINTS_TEXTRUE"],"binding":30},{"name":"diffuseTexture","type":29,"count":1,"defines":["USE_DIFFUSE_TEXTURE"],"binding":31}],"record":null,"name":"builtin-unlit|unlit-vs|unlit-fs"}]}]
\ No newline at end of file
[
{
"__type__": "cc.Material",
"_name": "builtin-unlit",
"_effectAsset": {
"__uuid__": "6dkeWRTOBGXICfYQ7JUBnG"
},
"_techniqueData": {
"0": {
"props": {
"diffuseTexture": {
"__uuid__": "02delMVqdBD70a/HSD99FK"
}
},
"defines": {
"USE_DIFFUSE_TEXTURE": true
}
}
}
},
{
"__type__": "cc.EffectAsset",
"_name": "builtin-unlit",
"techniques": [
{
"name": "opaque",
"passes": [
{
"blendState": {
"targets": [
{
"blend": true
}
]
},
"rasterizerState": {
"cullMode": 0
},
"depthStencilState": {
"depthTest": true,
"depthWrite": true
},
"properties": {
"diffuseTexture": {
"value": "white",
"type": 29
},
"diffuseColor": {
"value": [
1,
1,
1,
1
],
"editor": {
"type": "color"
},
"type": 16
},
"alphaThreshold": {
"value": [
0.5
],
"type": 13
},
"mainTiling": {
"value": [
1,
1
],
"type": 14
},
"mainOffset": {
"value": [
0,
0
],
"type": 14
}
},
"program": "builtin-unlit|unlit-vs|unlit-fs"
}
]
},
{
"name": "transparent",
"passes": [
{
"stage": "transparent",
"blendState": {
"targets": [
{
"blend": true
}
]
},
"rasterizerState": {
"cullMode": 0
},
"depthStencilState": {
"depthTest": true,
"depthWrite": true
},
"properties": {
"diffuseTexture": {
"value": "white",
"type": 29
},
"diffuseColor": {
"value": [
1,
1,
1,
1
],
"editor": {
"type": "color"
},
"type": 16
},
"alphaThreshold": {
"value": [
0.5
],
"type": 13
},
"mainTiling": {
"value": [
1,
1
],
"type": 14
},
"mainOffset": {
"value": [
0,
0
],
"type": 14
}
},
"program": "builtin-unlit|unlit-vs|unlit-fs"
}
]
}
],
"shaders": [
{
"hash": 922858114,
"glsl3": {
"vert": "\nprecision highp float;\nuniform CCLocal {\n mat4 cc_matWorld;\n mat4 cc_matWorldIT;\n};\nuniform CCGlobal {\n mat4 cc_matView;\n mat4 cc_matViewInv;\n mat4 cc_matProj;\n mat4 cc_matProjInv;\n mat4 cc_matViewProj;\n mat4 cc_matViewProjInv;\n vec4 cc_cameraPos;\n vec4 cc_time;\n mediump vec4 cc_screenSize;\n mediump vec4 cc_screenScale;\n};\n#if CC_USE_SKINNING\n in vec4 a_weights;\n in vec4 a_joints;\n #if CC_USE_JOINTS_TEXTRUE\n uniform SKINNING {\n vec2 jointsTextureSize;\n };\n uniform sampler2D jointsTexture;\n #if CC_JOINTS_TEXTURE_FLOAT32\n mat4 getBoneMatrix(const in float i) {\n float width = jointsTextureSize.x;\n float height = jointsTextureSize.y;\n float j = i * 4.0;\n float x = mod(j, width);\n float y = floor(j / width);\n float dx = 1.0 / width;\n float dy = 1.0 / height;\n y = dy * (y + 0.5);\n vec4 v1 = texture(jointsTexture, vec2(dx * (x + 0.5), y));\n vec4 v2 = texture(jointsTexture, vec2(dx * (x + 1.5), y));\n vec4 v3 = texture(jointsTexture, vec2(dx * (x + 2.5), y));\n vec4 v4 = texture(jointsTexture, vec2(dx * (x + 3.5), y));\n return mat4(v1, v2, v3, v4);\n }\n #else\n float decode32(vec4 rgba) {\n float Sign = 1.0 - step(128.0, rgba[0]) * 2.0;\n float Exponent = 2.0 * mod(rgba[0], 128.0) + step(128.0, rgba[1]) - 127.0;\n float Mantissa = mod(rgba[1], 128.0) * 65536.0 + rgba[2] * 256.0 + rgba[3] + 8388608.0;\n return Sign * exp2(Exponent - 23.0) * Mantissa;\n }\n vec4 decodevec4 (vec4 x, vec4 y, vec4 z, vec4 w) {\n return vec4(\n decode32(x.wzyx * 255.0),\n decode32(y.wzyx * 255.0),\n decode32(z.wzyx * 255.0),\n decode32(w.wzyx * 255.0)\n );\n }\n vec4 decodevec4 (float dx, float x, float y) {\n return decodevec4(\n texture(jointsTexture, vec2(dx * (x + 0.5), y)),\n texture(jointsTexture, vec2(dx * (x + 1.5), y)),\n texture(jointsTexture, vec2(dx * (x + 2.5), y)),\n texture(jointsTexture, vec2(dx * (x + 3.5), y))\n );\n }\n mat4 getBoneMatrix(const in float i) {\n float width = jointsTextureSize.x;\n float height = jointsTextureSize.y;\n float j = i * 16.0;\n float x = mod(j, width);\n float y = floor(j / width);\n float dx = 1.0 / width;\n float dy = 1.0 / height;\n y = dy * (y + 0.5);\n vec4 v1 = decodevec4(dx, x, y);\n vec4 v2 = decodevec4(dx, x+4.0, y);\n vec4 v3 = decodevec4(dx, x+8.0, y);\n vec4 v4 = decodevec4(dx, x+12.0, y);\n return mat4(v1, v2, v3, v4);\n }\n #endif\n #else\n uniform JOINT_MATRIX {\n mat4 jointMatrices[50];\n };\n mat4 getBoneMatrix(const in float i) {\n return jointMatrices[int(i)];\n }\n #endif\n mat4 skinMatrix() {\n return\n getBoneMatrix(a_joints.x) * a_weights.x +\n getBoneMatrix(a_joints.y) * a_weights.y +\n getBoneMatrix(a_joints.z) * a_weights.z +\n getBoneMatrix(a_joints.w) * a_weights.w\n ;\n }\n#endif\nstruct StandardVertInput {\n vec2 uv;\n vec4 position;\n vec3 normal;\n vec4 tangent;\n vec4 color;\n};\nin vec3 a_position;\n#if CC_USE_ATTRIBUTE_UV0\nin vec2 a_uv0;\n#endif\n#if CC_USE_ATTRIBUTE_COLOR\nin vec4 a_color;\n#endif\n#if CC_USE_ATTRIBUTE_NORMAL\nin vec3 a_normal;\n#endif\n#if CC_USE_ATTRIBUTE_TANGENT\nin vec4 a_tangent;\n#endif\nvoid CCAttribute (out StandardVertInput In) {\n In.position = vec4(a_position, 1.0);\n #if CC_USE_ATTRIBUTE_UV0\n In.uv = a_uv0;\n #else\n In.uv = vec2(0.0);\n #endif\n #if CC_USE_ATTRIBUTE_COLOR\n In.color = a_color;\n #else\n In.color = vec4(1.0);\n #endif\n #if CC_USE_ATTRIBUTE_NORMAL\n In.normal = a_normal;\n #else\n In.normal = vec3(0.0, 1.0, 0.0);\n #endif\n #if CC_USE_ATTRIBUTE_TANGENT\n In.tangent = a_tangent;\n #else\n In.tangent = vec4(1.0, 0.0, 0.0, 0.0);\n #endif\n}\nvoid CCVertInput(out StandardVertInput In) {\n CCAttribute(In);\n #if CC_USE_SKINNING\n mat4 m = skinMatrix();\n In.position = m * In.position;\n #if CC_USE_ATTRIBUTE_NORMAL\n In.normal = (m * vec4(In.normal, 0)).xyz;\n #endif\n #if CC_USE_ATTRIBUTE_TANGENT\n In.tangent = m * In.tangent;\n #endif\n #endif\n}\nuniform MAIN_TILING {\n vec2 mainTiling;\n vec2 mainOffset;\n};\n#if CC_USE_ATTRIBUTE_UV0 && USE_DIFFUSE_TEXTURE\n out mediump vec2 v_uv0;\n#endif\n#if CC_USE_ATTRIBUTE_COLOR\n out lowp vec4 v_color;\n#endif\nvoid main () {\n StandardVertInput In;\n CCVertInput(In);\n #if CC_USE_ATTRIBUTE_COLOR\n v_color = In.color;\n #endif\n #if CC_USE_ATTRIBUTE_UV0 && USE_DIFFUSE_TEXTURE\n v_uv0 = In.uv * mainTiling + mainOffset;\n #endif\n gl_Position = cc_matViewProj * cc_matWorld * In.position;\n}",
"frag": "\nprecision highp float;\n#if USE_ALPHA_TEST\n uniform ALPHA_TEST {\n float alphaThreshold;\n };\n#endif\nvoid ALPHA_TEST (in vec4 color) {\n #if USE_ALPHA_TEST\n if (color.a < alphaThreshold) discard;\n #endif\n}\nvoid ALPHA_TEST (in float alpha) {\n #if USE_ALPHA_TEST\n if (alpha < alphaThreshold) discard;\n #endif\n}\nvec4 CCFragOutput (vec4 color) {\n #if OUTPUT_TO_GAMMA\n color.rgb = sqrt(color.rgb);\n #endif\n\treturn color;\n}\nuniform UNLIT {\n lowp vec4 diffuseColor;\n};\n#if USE_DIFFUSE_TEXTURE\n uniform sampler2D diffuseTexture;\n#endif\n#if CC_USE_ATTRIBUTE_COLOR\n in lowp vec4 v_color;\n#endif\n#if CC_USE_ATTRIBUTE_UV0 && USE_DIFFUSE_TEXTURE\n in mediump vec2 v_uv0;\n#endif\nvoid main () {\n vec4 color = diffuseColor;\n #if CC_USE_ATTRIBUTE_UV0 && USE_DIFFUSE_TEXTURE\n vec4 diffuseTexture_tmp = texture(diffuseTexture, v_uv0);\n #if CC_USE_ALPHA_ATLAS_diffuseTexture\n diffuseTexture_tmp.a *= texture(diffuseTexture, v_uv0 + vec2(0, 0.5)).r;\n #endif\n #if INPUT_IS_GAMMA\n color.rgb *= (diffuseTexture_tmp.rgb * diffuseTexture_tmp.rgb);\n color.a *= diffuseTexture_tmp.a;\n #else\n color *= diffuseTexture_tmp;\n #endif\n #endif\n #if CC_USE_ATTRIBUTE_COLOR\n color *= v_color;\n #endif\n ALPHA_TEST(color);\n gl_FragColor = CCFragOutput(color);\n}"
},
"glsl1": {
"vert": "\nprecision highp float;\nuniform mat4 cc_matWorld;\nuniform mat4 cc_matViewProj;\n#if CC_USE_SKINNING\n attribute vec4 a_weights;\n attribute vec4 a_joints;\n #if CC_USE_JOINTS_TEXTRUE\n uniform vec2 jointsTextureSize;\n uniform sampler2D jointsTexture;\n #if CC_JOINTS_TEXTURE_FLOAT32\n mat4 getBoneMatrix(const in float i) {\n float width = jointsTextureSize.x;\n float height = jointsTextureSize.y;\n float j = i * 4.0;\n float x = mod(j, width);\n float y = floor(j / width);\n float dx = 1.0 / width;\n float dy = 1.0 / height;\n y = dy * (y + 0.5);\n vec4 v1 = texture2D(jointsTexture, vec2(dx * (x + 0.5), y));\n vec4 v2 = texture2D(jointsTexture, vec2(dx * (x + 1.5), y));\n vec4 v3 = texture2D(jointsTexture, vec2(dx * (x + 2.5), y));\n vec4 v4 = texture2D(jointsTexture, vec2(dx * (x + 3.5), y));\n return mat4(v1, v2, v3, v4);\n }\n #else\n float decode32(vec4 rgba) {\n float Sign = 1.0 - step(128.0, rgba[0]) * 2.0;\n float Exponent = 2.0 * mod(rgba[0], 128.0) + step(128.0, rgba[1]) - 127.0;\n float Mantissa = mod(rgba[1], 128.0) * 65536.0 + rgba[2] * 256.0 + rgba[3] + 8388608.0;\n return Sign * exp2(Exponent - 23.0) * Mantissa;\n }\n vec4 decodevec4 (vec4 x, vec4 y, vec4 z, vec4 w) {\n return vec4(\n decode32(x.wzyx * 255.0),\n decode32(y.wzyx * 255.0),\n decode32(z.wzyx * 255.0),\n decode32(w.wzyx * 255.0)\n );\n }\n vec4 decodevec4 (float dx, float x, float y) {\n return decodevec4(\n texture2D(jointsTexture, vec2(dx * (x + 0.5), y)),\n texture2D(jointsTexture, vec2(dx * (x + 1.5), y)),\n texture2D(jointsTexture, vec2(dx * (x + 2.5), y)),\n texture2D(jointsTexture, vec2(dx * (x + 3.5), y))\n );\n }\n mat4 getBoneMatrix(const in float i) {\n float width = jointsTextureSize.x;\n float height = jointsTextureSize.y;\n float j = i * 16.0;\n float x = mod(j, width);\n float y = floor(j / width);\n float dx = 1.0 / width;\n float dy = 1.0 / height;\n y = dy * (y + 0.5);\n vec4 v1 = decodevec4(dx, x, y);\n vec4 v2 = decodevec4(dx, x+4.0, y);\n vec4 v3 = decodevec4(dx, x+8.0, y);\n vec4 v4 = decodevec4(dx, x+12.0, y);\n return mat4(v1, v2, v3, v4);\n }\n #endif\n #else\n uniform mat4 jointMatrices[50];\n mat4 getBoneMatrix(const in float i) {\n return jointMatrices[int(i)];\n }\n #endif\n mat4 skinMatrix() {\n return\n getBoneMatrix(a_joints.x) * a_weights.x +\n getBoneMatrix(a_joints.y) * a_weights.y +\n getBoneMatrix(a_joints.z) * a_weights.z +\n getBoneMatrix(a_joints.w) * a_weights.w\n ;\n }\n#endif\nstruct StandardVertInput {\n vec2 uv;\n vec4 position;\n vec3 normal;\n vec4 tangent;\n vec4 color;\n};\nattribute vec3 a_position;\n#if CC_USE_ATTRIBUTE_UV0\nattribute vec2 a_uv0;\n#endif\n#if CC_USE_ATTRIBUTE_COLOR\nattribute vec4 a_color;\n#endif\n#if CC_USE_ATTRIBUTE_NORMAL\nattribute vec3 a_normal;\n#endif\n#if CC_USE_ATTRIBUTE_TANGENT\nattribute vec4 a_tangent;\n#endif\nvoid CCAttribute (out StandardVertInput In) {\n In.position = vec4(a_position, 1.0);\n #if CC_USE_ATTRIBUTE_UV0\n In.uv = a_uv0;\n #else\n In.uv = vec2(0.0);\n #endif\n #if CC_USE_ATTRIBUTE_COLOR\n In.color = a_color;\n #else\n In.color = vec4(1.0);\n #endif\n #if CC_USE_ATTRIBUTE_NORMAL\n In.normal = a_normal;\n #else\n In.normal = vec3(0.0, 1.0, 0.0);\n #endif\n #if CC_USE_ATTRIBUTE_TANGENT\n In.tangent = a_tangent;\n #else\n In.tangent = vec4(1.0, 0.0, 0.0, 0.0);\n #endif\n}\nvoid CCVertInput(out StandardVertInput In) {\n CCAttribute(In);\n #if CC_USE_SKINNING\n mat4 m = skinMatrix();\n In.position = m * In.position;\n #if CC_USE_ATTRIBUTE_NORMAL\n In.normal = (m * vec4(In.normal, 0)).xyz;\n #endif\n #if CC_USE_ATTRIBUTE_TANGENT\n In.tangent = m * In.tangent;\n #endif\n #endif\n}\nuniform vec2 mainTiling;\nuniform vec2 mainOffset;\n#if CC_USE_ATTRIBUTE_UV0 && USE_DIFFUSE_TEXTURE\n varying mediump vec2 v_uv0;\n#endif\n#if CC_USE_ATTRIBUTE_COLOR\n varying lowp vec4 v_color;\n#endif\nvoid main () {\n StandardVertInput In;\n CCVertInput(In);\n #if CC_USE_ATTRIBUTE_COLOR\n v_color = In.color;\n #endif\n #if CC_USE_ATTRIBUTE_UV0 && USE_DIFFUSE_TEXTURE\n v_uv0 = In.uv * mainTiling + mainOffset;\n #endif\n gl_Position = cc_matViewProj * cc_matWorld * In.position;\n}",
"frag": "\nprecision highp float;\n#if USE_ALPHA_TEST\n uniform float alphaThreshold;\n#endif\nvoid ALPHA_TEST (in vec4 color) {\n #if USE_ALPHA_TEST\n if (color.a < alphaThreshold) discard;\n #endif\n}\nvoid ALPHA_TEST (in float alpha) {\n #if USE_ALPHA_TEST\n if (alpha < alphaThreshold) discard;\n #endif\n}\nvec4 CCFragOutput (vec4 color) {\n #if OUTPUT_TO_GAMMA\n color.rgb = sqrt(color.rgb);\n #endif\n\treturn color;\n}\nuniform lowp vec4 diffuseColor;\n#if USE_DIFFUSE_TEXTURE\n uniform sampler2D diffuseTexture;\n#endif\n#if CC_USE_ATTRIBUTE_COLOR\n varying lowp vec4 v_color;\n#endif\n#if CC_USE_ATTRIBUTE_UV0 && USE_DIFFUSE_TEXTURE\n varying mediump vec2 v_uv0;\n#endif\nvoid main () {\n vec4 color = diffuseColor;\n #if CC_USE_ATTRIBUTE_UV0 && USE_DIFFUSE_TEXTURE\n vec4 diffuseTexture_tmp = texture2D(diffuseTexture, v_uv0);\n #if CC_USE_ALPHA_ATLAS_diffuseTexture\n diffuseTexture_tmp.a *= texture2D(diffuseTexture, v_uv0 + vec2(0, 0.5)).r;\n #endif\n #if INPUT_IS_GAMMA\n color.rgb *= (diffuseTexture_tmp.rgb * diffuseTexture_tmp.rgb);\n color.a *= diffuseTexture_tmp.a;\n #else\n color *= diffuseTexture_tmp;\n #endif\n #endif\n #if CC_USE_ATTRIBUTE_COLOR\n color *= v_color;\n #endif\n ALPHA_TEST(color);\n gl_FragColor = CCFragOutput(color);\n}"
},
"builtins": {
"globals": {
"blocks": [
{
"name": "CCGlobal",
"defines": []
}
],
"samplers": []
},
"locals": {
"blocks": [
{
"name": "CCLocal",
"defines": []
}
],
"samplers": []
}
},
"defines": [
{
"name": "CC_USE_SKINNING",
"type": "boolean",
"defines": []
},
{
"name": "CC_USE_JOINTS_TEXTRUE",
"type": "boolean",
"defines": [
"CC_USE_SKINNING"
]
},
{
"name": "CC_JOINTS_TEXTURE_FLOAT32",
"type": "boolean",
"defines": [
"CC_USE_SKINNING",
"CC_USE_JOINTS_TEXTRUE"
]
},
{
"name": "CC_USE_ATTRIBUTE_UV0",
"type": "boolean",
"defines": []
},
{
"name": "CC_USE_ATTRIBUTE_COLOR",
"type": "boolean",
"defines": []
},
{
"name": "CC_USE_ATTRIBUTE_NORMAL",
"type": "boolean",
"defines": []
},
{
"name": "CC_USE_ATTRIBUTE_TANGENT",
"type": "boolean",
"defines": []
},
{
"name": "USE_DIFFUSE_TEXTURE",
"type": "boolean",
"defines": []
},
{
"name": "USE_ALPHA_TEST",
"type": "boolean",
"defines": []
},
{
"name": "OUTPUT_TO_GAMMA",
"type": "boolean",
"defines": []
},
{
"name": "CC_USE_ALPHA_ATLAS_diffuseTexture",
"type": "boolean",
"defines": [
"CC_USE_ATTRIBUTE_UV0",
"USE_DIFFUSE_TEXTURE"
]
},
{
"name": "INPUT_IS_GAMMA",
"type": "boolean",
"defines": [
"CC_USE_ATTRIBUTE_UV0",
"USE_DIFFUSE_TEXTURE"
]
}
],
"blocks": [
{
"name": "SKINNING",
"members": [
{
"name": "jointsTextureSize",
"type": 14,
"count": 1
}
],
"defines": [
"CC_USE_SKINNING",
"CC_USE_JOINTS_TEXTRUE"
],
"binding": 0
},
{
"name": "JOINT_MATRIX",
"members": [
{
"name": "jointMatrices",
"type": 26,
"count": 50
}
],
"defines": [
"CC_USE_SKINNING"
],
"binding": 1
},
{
"name": "MAIN_TILING",
"members": [
{
"name": "mainTiling",
"type": 14,
"count": 1
},
{
"name": "mainOffset",
"type": 14,
"count": 1
}
],
"defines": [],
"binding": 2
},
{
"name": "ALPHA_TEST",
"members": [
{
"name": "alphaThreshold",
"type": 13,
"count": 1
}
],
"defines": [
"USE_ALPHA_TEST"
],
"binding": 3
},
{
"name": "UNLIT",
"members": [
{
"name": "diffuseColor",
"type": 16,
"count": 1
}
],
"defines": [],
"binding": 4
}
],
"samplers": [
{
"name": "jointsTexture",
"type": 29,
"count": 1,
"defines": [
"CC_USE_SKINNING",
"CC_USE_JOINTS_TEXTRUE"
],
"binding": 30
},
{
"name": "diffuseTexture",
"type": 29,
"count": 1,
"defines": [
"USE_DIFFUSE_TEXTURE"
],
"binding": 31
}
],
"record": null,
"name": "builtin-unlit|unlit-vs|unlit-fs"
}
]
}
]
\ No newline at end of file
[{"__type__":"cc.EffectAsset","_name":"builtin-2d-gray-sprite","techniques":[{"passes":[{"blendState":{"targets":[{"blend":true}]},"rasterizerState":{"cullMode":0},"properties":{"texture":{"value":"white","type":29}},"program":"builtin-2d-gray-sprite|vs|fs"}]}],"shaders":[{"hash":4278481454,"glsl3":{"vert":"\nprecision highp float;\nuniform CCGlobal {\n mat4 cc_matView;\n mat4 cc_matViewInv;\n mat4 cc_matProj;\n mat4 cc_matProjInv;\n mat4 cc_matViewProj;\n mat4 cc_matViewProjInv;\n vec4 cc_cameraPos;\n vec4 cc_time;\n mediump vec4 cc_screenSize;\n mediump vec4 cc_screenScale;\n};\nin vec3 a_position;\nin mediump vec2 a_uv0;\nout mediump vec2 v_uv0;\nin vec4 a_color;\nout vec4 v_color;\nvoid main () {\n gl_Position = cc_matViewProj * vec4(a_position, 1);\n v_uv0 = a_uv0;\n v_color = a_color;\n}","frag":"\nprecision highp float;\nuniform sampler2D texture;\nin mediump vec2 v_uv0;\nin vec4 v_color;\nvoid main () {\n vec4 color = v_color;\n vec4 texture_tmp = texture(texture, v_uv0);\n #if CC_USE_ALPHA_ATLAS_texture\n texture_tmp.a *= texture(texture, v_uv0 + vec2(0, 0.5)).r;\n #endif\n #if INPUT_IS_GAMMA\n color.rgb *= (texture_tmp.rgb * texture_tmp.rgb);\n color.a *= texture_tmp.a;\n #else\n color *= texture_tmp;\n #endif\n float gray = 0.2126*color.r + 0.7152*color.g + 0.0722*color.b;\n gl_FragColor = vec4(gray, gray, gray, color.a);\n}"},"glsl1":{"vert":"\nprecision highp float;\nuniform mat4 cc_matViewProj;\nattribute vec3 a_position;\nattribute mediump vec2 a_uv0;\nvarying mediump vec2 v_uv0;\nattribute vec4 a_color;\nvarying vec4 v_color;\nvoid main () {\n gl_Position = cc_matViewProj * vec4(a_position, 1);\n v_uv0 = a_uv0;\n v_color = a_color;\n}","frag":"\nprecision highp float;\nuniform sampler2D texture;\nvarying mediump vec2 v_uv0;\nvarying vec4 v_color;\nvoid main () {\n vec4 color = v_color;\n vec4 texture_tmp = texture2D(texture, v_uv0);\n #if CC_USE_ALPHA_ATLAS_texture\n texture_tmp.a *= texture2D(texture, v_uv0 + vec2(0, 0.5)).r;\n #endif\n #if INPUT_IS_GAMMA\n color.rgb *= (texture_tmp.rgb * texture_tmp.rgb);\n color.a *= texture_tmp.a;\n #else\n color *= texture_tmp;\n #endif\n float gray = 0.2126*color.r + 0.7152*color.g + 0.0722*color.b;\n gl_FragColor = vec4(gray, gray, gray, color.a);\n}"},"builtins":{"globals":{"blocks":[{"name":"CCGlobal","defines":[]}],"samplers":[]},"locals":{"blocks":[],"samplers":[]}},"defines":[{"name":"CC_USE_ALPHA_ATLAS_texture","type":"boolean","defines":[]},{"name":"INPUT_IS_GAMMA","type":"boolean","defines":[]}],"blocks":[],"samplers":[{"name":"texture","type":29,"count":1,"defines":[],"binding":30}],"record":null,"name":"builtin-2d-gray-sprite|vs|fs"}]},{"__type__":"cc.Material","_name":"builtin-2d-gray-sprite","_effectAsset":{"__uuid__":"14TDKXr2NJ6LjvHPops74o"},"_techniqueData":{}}]
\ No newline at end of file
[
{
"__type__": "cc.EffectAsset",
"_name": "builtin-2d-gray-sprite",
"techniques": [
{
"passes": [
{
"blendState": {
"targets": [
{
"blend": true
}
]
},
"rasterizerState": {
"cullMode": 0
},
"properties": {
"texture": {
"value": "white",
"type": 29
}
},
"program": "builtin-2d-gray-sprite|vs|fs"
}
]
}
],
"shaders": [
{
"hash": 4278481454,
"glsl3": {
"vert": "\nprecision highp float;\nuniform CCGlobal {\n mat4 cc_matView;\n mat4 cc_matViewInv;\n mat4 cc_matProj;\n mat4 cc_matProjInv;\n mat4 cc_matViewProj;\n mat4 cc_matViewProjInv;\n vec4 cc_cameraPos;\n vec4 cc_time;\n mediump vec4 cc_screenSize;\n mediump vec4 cc_screenScale;\n};\nin vec3 a_position;\nin mediump vec2 a_uv0;\nout mediump vec2 v_uv0;\nin vec4 a_color;\nout vec4 v_color;\nvoid main () {\n gl_Position = cc_matViewProj * vec4(a_position, 1);\n v_uv0 = a_uv0;\n v_color = a_color;\n}",
"frag": "\nprecision highp float;\nuniform sampler2D texture;\nin mediump vec2 v_uv0;\nin vec4 v_color;\nvoid main () {\n vec4 color = v_color;\n vec4 texture_tmp = texture(texture, v_uv0);\n #if CC_USE_ALPHA_ATLAS_texture\n texture_tmp.a *= texture(texture, v_uv0 + vec2(0, 0.5)).r;\n #endif\n #if INPUT_IS_GAMMA\n color.rgb *= (texture_tmp.rgb * texture_tmp.rgb);\n color.a *= texture_tmp.a;\n #else\n color *= texture_tmp;\n #endif\n float gray = 0.2126*color.r + 0.7152*color.g + 0.0722*color.b;\n gl_FragColor = vec4(gray, gray, gray, color.a);\n}"
},
"glsl1": {
"vert": "\nprecision highp float;\nuniform mat4 cc_matViewProj;\nattribute vec3 a_position;\nattribute mediump vec2 a_uv0;\nvarying mediump vec2 v_uv0;\nattribute vec4 a_color;\nvarying vec4 v_color;\nvoid main () {\n gl_Position = cc_matViewProj * vec4(a_position, 1);\n v_uv0 = a_uv0;\n v_color = a_color;\n}",
"frag": "\nprecision highp float;\nuniform sampler2D texture;\nvarying mediump vec2 v_uv0;\nvarying vec4 v_color;\nvoid main () {\n vec4 color = v_color;\n vec4 texture_tmp = texture2D(texture, v_uv0);\n #if CC_USE_ALPHA_ATLAS_texture\n texture_tmp.a *= texture2D(texture, v_uv0 + vec2(0, 0.5)).r;\n #endif\n #if INPUT_IS_GAMMA\n color.rgb *= (texture_tmp.rgb * texture_tmp.rgb);\n color.a *= texture_tmp.a;\n #else\n color *= texture_tmp;\n #endif\n float gray = 0.2126*color.r + 0.7152*color.g + 0.0722*color.b;\n gl_FragColor = vec4(gray, gray, gray, color.a);\n}"
},
"builtins": {
"globals": {
"blocks": [
{
"name": "CCGlobal",
"defines": []
}
],
"samplers": []
},
"locals": {
"blocks": [],
"samplers": []
}
},
"defines": [
{
"name": "CC_USE_ALPHA_ATLAS_texture",
"type": "boolean",
"defines": []
},
{
"name": "INPUT_IS_GAMMA",
"type": "boolean",
"defines": []
}
],
"blocks": [],
"samplers": [
{
"name": "texture",
"type": 29,
"count": 1,
"defines": [],
"binding": 30
}
],
"record": null,
"name": "builtin-2d-gray-sprite|vs|fs"
}
]
},
{
"__type__": "cc.Material",
"_name": "builtin-2d-gray-sprite",
"_effectAsset": {
"__uuid__": "14TDKXr2NJ6LjvHPops74o"
},
"_techniqueData": {}
}
]
\ No newline at end of file
[{"__type__":"cc.Material","_name":"builtin-2d-label","_effectAsset":{"__uuid__":"f1h0LXVtJOta5JLZ1xCzfI"},"_techniqueData":{"0":{"defines":{"USE_TEXTURE":true}}}},{"__type__":"cc.EffectAsset","_name":"builtin-2d-label","techniques":[{"passes":[{"blendState":{"targets":[{"blend":true}]},"rasterizerState":{"cullMode":0},"properties":{"texture":{"value":"white","type":29},"alphaThreshold":{"value":[0.5],"type":13},"outlineSize":{"value":[0],"type":13},"outlineColor":{"value":[1,1,1,1],"type":16}},"program":"builtin-2d-label|vs|fs"}]}],"shaders":[{"hash":1105459032,"glsl3":{"vert":"\nprecision highp float;\nuniform CCGlobal {\n mat4 cc_matView;\n mat4 cc_matViewInv;\n mat4 cc_matProj;\n mat4 cc_matProjInv;\n mat4 cc_matViewProj;\n mat4 cc_matViewProjInv;\n vec4 cc_cameraPos;\n vec4 cc_time;\n mediump vec4 cc_screenSize;\n mediump vec4 cc_screenScale;\n};\nuniform CCLocal {\n mat4 cc_matWorld;\n mat4 cc_matWorldIT;\n};\nin vec3 a_position;\nin vec4 a_color;\nout vec4 v_color;\n#if USE_TEXTURE\nin vec2 a_uv0;\nout vec2 v_uv0;\n#endif\nvoid main () {\n vec4 pos = vec4(a_position, 1);\n #if CC_USE_MODEL\n pos = cc_matViewProj * cc_matWorld * pos;\n #else\n pos = cc_matViewProj * pos;\n #endif\n #if USE_TEXTURE\n v_uv0 = a_uv0;\n #endif\n v_color = a_color;\n gl_Position = pos;\n}","frag":"\n#if CC_SUPPORT_standard_derivatives\n #extension GL_OES_standard_derivatives : enable\n#endif\nprecision highp float;\n#if USE_ALPHA_TEST\n uniform ALPHA_TEST {\n float alphaThreshold;\n };\n#endif\nvoid ALPHA_TEST (in vec4 color) {\n #if USE_ALPHA_TEST\n if (color.a < alphaThreshold) discard;\n #endif\n}\nvoid ALPHA_TEST (in float alpha) {\n #if USE_ALPHA_TEST\n if (alpha < alphaThreshold) discard;\n #endif\n}\nin vec4 v_color;\n#if USE_TEXTURE\nin vec2 v_uv0;\nuniform sampler2D texture;\n#endif\n#if USE_SDF\nuniform Outline {\n vec4 outlineColor;\n float outlineSize;\n};\n#endif\nvoid main () {\n#if USE_SDF\n #if USE_TEXTURE_ALPHAONLY\n float dist = texture(texture, v_uv0).a;\n #else\n float dist = texture(texture, v_uv0).r;\n #endif\n #if USE_SDF_EXTEND\n const float EDGE_VALUE = 0.45;\n #else\n const float EDGE_VALUE = 0.5;\n #endif\n #if CC_SUPPORT_standard_derivatives\n float smoothing = fwidth(dist);\n #else\n float smoothing = 0.05;\n #endif\n float outEdge = EDGE_VALUE - outlineSize;\n float bg = smoothstep(outEdge - smoothing, outEdge, dist);\n float fg = smoothstep(EDGE_VALUE - smoothing, EDGE_VALUE, dist);\n vec4 fgColor = outlineColor * (1.0 - fg) + v_color * fg;\n gl_FragColor = vec4(fgColor.rgb, fgColor.a * bg);\n#else\n vec4 o = vec4(1, 1, 1, 1);\n #if USE_TEXTURE\n #if USE_TEXTURE_ALPHAONLY\n o.a *= texture(texture, v_uv0).a;\n #else\n o *= texture(texture, v_uv0);\n #endif\n #if CC_USE_ALPHA_ATLAS_TEXTURE\n o.a *= texture2D(texture, v_uv0 + vec2(0, 0.5)).r;\n #endif\n #endif\n o *= v_color;\n ALPHA_TEST(o);\n gl_FragColor = o;\n#endif\n}"},"glsl1":{"vert":"\nprecision highp float;\nuniform mat4 cc_matViewProj;\nuniform mat4 cc_matWorld;\nattribute vec3 a_position;\nattribute vec4 a_color;\nvarying vec4 v_color;\n#if USE_TEXTURE\nattribute vec2 a_uv0;\nvarying vec2 v_uv0;\n#endif\nvoid main () {\n vec4 pos = vec4(a_position, 1);\n #if CC_USE_MODEL\n pos = cc_matViewProj * cc_matWorld * pos;\n #else\n pos = cc_matViewProj * pos;\n #endif\n #if USE_TEXTURE\n v_uv0 = a_uv0;\n #endif\n v_color = a_color;\n gl_Position = pos;\n}","frag":"\n#if CC_SUPPORT_standard_derivatives\n #extension GL_OES_standard_derivatives : enable\n#endif\nprecision highp float;\n#if USE_ALPHA_TEST\n uniform float alphaThreshold;\n#endif\nvoid ALPHA_TEST (in vec4 color) {\n #if USE_ALPHA_TEST\n if (color.a < alphaThreshold) discard;\n #endif\n}\nvoid ALPHA_TEST (in float alpha) {\n #if USE_ALPHA_TEST\n if (alpha < alphaThreshold) discard;\n #endif\n}\nvarying vec4 v_color;\n#if USE_TEXTURE\nvarying vec2 v_uv0;\nuniform sampler2D texture;\n#endif\n#if USE_SDF\nuniform vec4 outlineColor;\nuniform float outlineSize;\n#endif\nvoid main () {\n#if USE_SDF\n #if USE_TEXTURE_ALPHAONLY\n float dist = texture2D(texture, v_uv0).a;\n #else\n float dist = texture2D(texture, v_uv0).r;\n #endif\n #if USE_SDF_EXTEND\n const float EDGE_VALUE = 0.45;\n #else\n const float EDGE_VALUE = 0.5;\n #endif\n #if CC_SUPPORT_standard_derivatives\n float smoothing = fwidth(dist);\n #else\n float smoothing = 0.05;\n #endif\n float outEdge = EDGE_VALUE - outlineSize;\n float bg = smoothstep(outEdge - smoothing, outEdge, dist);\n float fg = smoothstep(EDGE_VALUE - smoothing, EDGE_VALUE, dist);\n vec4 fgColor = outlineColor * (1.0 - fg) + v_color * fg;\n gl_FragColor = vec4(fgColor.rgb, fgColor.a * bg);\n#else\n vec4 o = vec4(1, 1, 1, 1);\n #if USE_TEXTURE\n #if USE_TEXTURE_ALPHAONLY\n o.a *= texture2D(texture, v_uv0).a;\n #else\n o *= texture2D(texture, v_uv0);\n #endif\n #if CC_USE_ALPHA_ATLAS_TEXTURE\n o.a *= texture2D(texture, v_uv0 + vec2(0, 0.5)).r;\n #endif\n #endif\n o *= v_color;\n ALPHA_TEST(o);\n gl_FragColor = o;\n#endif\n}"},"builtins":{"globals":{"blocks":[{"name":"CCGlobal","defines":[]}],"samplers":[]},"locals":{"blocks":[{"name":"CCLocal","defines":[]}],"samplers":[]}},"defines":[{"name":"USE_TEXTURE","type":"boolean","defines":[]},{"name":"CC_USE_MODEL","type":"boolean","defines":[]},{"name":"CC_SUPPORT_standard_derivatives","type":"boolean","defines":[]},{"name":"USE_ALPHA_TEST","type":"boolean","defines":[]},{"name":"USE_SDF","type":"boolean","defines":[]},{"name":"USE_TEXTURE_ALPHAONLY","type":"boolean","defines":["USE_SDF"]},{"name":"USE_SDF_EXTEND","type":"boolean","defines":["USE_SDF"]},{"name":"CC_USE_ALPHA_ATLAS_TEXTURE","type":"boolean","defines":["USE_TEXTURE"]}],"blocks":[{"name":"ALPHA_TEST","members":[{"name":"alphaThreshold","type":13,"count":1}],"defines":["USE_ALPHA_TEST"],"binding":0},{"name":"Outline","members":[{"name":"outlineColor","type":16,"count":1},{"name":"outlineSize","type":13,"count":1}],"defines":["USE_SDF"],"binding":1}],"samplers":[{"name":"texture","type":29,"count":1,"defines":["USE_TEXTURE"],"binding":30}],"record":null,"name":"builtin-2d-label|vs|fs"}]}]
\ No newline at end of file
[
{
"__type__": "cc.Material",
"_name": "builtin-2d-label",
"_effectAsset": {
"__uuid__": "f1h0LXVtJOta5JLZ1xCzfI"
},
"_techniqueData": {
"0": {
"defines": {
"USE_TEXTURE": true
}
}
}
},
{
"__type__": "cc.EffectAsset",
"_name": "builtin-2d-label",
"techniques": [
{
"passes": [
{
"blendState": {
"targets": [
{
"blend": true
}
]
},
"rasterizerState": {
"cullMode": 0
},
"properties": {
"texture": {
"value": "white",
"type": 29
},
"alphaThreshold": {
"value": [
0.5
],
"type": 13
},
"outlineSize": {
"value": [
0
],
"type": 13
},
"outlineColor": {
"value": [
1,
1,
1,
1
],
"type": 16
}
},
"program": "builtin-2d-label|vs|fs"
}
]
}
],
"shaders": [
{
"hash": 1105459032,
"glsl3": {
"vert": "\nprecision highp float;\nuniform CCGlobal {\n mat4 cc_matView;\n mat4 cc_matViewInv;\n mat4 cc_matProj;\n mat4 cc_matProjInv;\n mat4 cc_matViewProj;\n mat4 cc_matViewProjInv;\n vec4 cc_cameraPos;\n vec4 cc_time;\n mediump vec4 cc_screenSize;\n mediump vec4 cc_screenScale;\n};\nuniform CCLocal {\n mat4 cc_matWorld;\n mat4 cc_matWorldIT;\n};\nin vec3 a_position;\nin vec4 a_color;\nout vec4 v_color;\n#if USE_TEXTURE\nin vec2 a_uv0;\nout vec2 v_uv0;\n#endif\nvoid main () {\n vec4 pos = vec4(a_position, 1);\n #if CC_USE_MODEL\n pos = cc_matViewProj * cc_matWorld * pos;\n #else\n pos = cc_matViewProj * pos;\n #endif\n #if USE_TEXTURE\n v_uv0 = a_uv0;\n #endif\n v_color = a_color;\n gl_Position = pos;\n}",
"frag": "\n#if CC_SUPPORT_standard_derivatives\n #extension GL_OES_standard_derivatives : enable\n#endif\nprecision highp float;\n#if USE_ALPHA_TEST\n uniform ALPHA_TEST {\n float alphaThreshold;\n };\n#endif\nvoid ALPHA_TEST (in vec4 color) {\n #if USE_ALPHA_TEST\n if (color.a < alphaThreshold) discard;\n #endif\n}\nvoid ALPHA_TEST (in float alpha) {\n #if USE_ALPHA_TEST\n if (alpha < alphaThreshold) discard;\n #endif\n}\nin vec4 v_color;\n#if USE_TEXTURE\nin vec2 v_uv0;\nuniform sampler2D texture;\n#endif\n#if USE_SDF\nuniform Outline {\n vec4 outlineColor;\n float outlineSize;\n};\n#endif\nvoid main () {\n#if USE_SDF\n #if USE_TEXTURE_ALPHAONLY\n float dist = texture(texture, v_uv0).a;\n #else\n float dist = texture(texture, v_uv0).r;\n #endif\n #if USE_SDF_EXTEND\n const float EDGE_VALUE = 0.45;\n #else\n const float EDGE_VALUE = 0.5;\n #endif\n #if CC_SUPPORT_standard_derivatives\n float smoothing = fwidth(dist);\n #else\n float smoothing = 0.05;\n #endif\n float outEdge = EDGE_VALUE - outlineSize;\n float bg = smoothstep(outEdge - smoothing, outEdge, dist);\n float fg = smoothstep(EDGE_VALUE - smoothing, EDGE_VALUE, dist);\n vec4 fgColor = outlineColor * (1.0 - fg) + v_color * fg;\n gl_FragColor = vec4(fgColor.rgb, fgColor.a * bg);\n#else\n vec4 o = vec4(1, 1, 1, 1);\n #if USE_TEXTURE\n #if USE_TEXTURE_ALPHAONLY\n o.a *= texture(texture, v_uv0).a;\n #else\n o *= texture(texture, v_uv0);\n #endif\n #if CC_USE_ALPHA_ATLAS_TEXTURE\n o.a *= texture2D(texture, v_uv0 + vec2(0, 0.5)).r;\n #endif\n #endif\n o *= v_color;\n ALPHA_TEST(o);\n gl_FragColor = o;\n#endif\n}"
},
"glsl1": {
"vert": "\nprecision highp float;\nuniform mat4 cc_matViewProj;\nuniform mat4 cc_matWorld;\nattribute vec3 a_position;\nattribute vec4 a_color;\nvarying vec4 v_color;\n#if USE_TEXTURE\nattribute vec2 a_uv0;\nvarying vec2 v_uv0;\n#endif\nvoid main () {\n vec4 pos = vec4(a_position, 1);\n #if CC_USE_MODEL\n pos = cc_matViewProj * cc_matWorld * pos;\n #else\n pos = cc_matViewProj * pos;\n #endif\n #if USE_TEXTURE\n v_uv0 = a_uv0;\n #endif\n v_color = a_color;\n gl_Position = pos;\n}",
"frag": "\n#if CC_SUPPORT_standard_derivatives\n #extension GL_OES_standard_derivatives : enable\n#endif\nprecision highp float;\n#if USE_ALPHA_TEST\n uniform float alphaThreshold;\n#endif\nvoid ALPHA_TEST (in vec4 color) {\n #if USE_ALPHA_TEST\n if (color.a < alphaThreshold) discard;\n #endif\n}\nvoid ALPHA_TEST (in float alpha) {\n #if USE_ALPHA_TEST\n if (alpha < alphaThreshold) discard;\n #endif\n}\nvarying vec4 v_color;\n#if USE_TEXTURE\nvarying vec2 v_uv0;\nuniform sampler2D texture;\n#endif\n#if USE_SDF\nuniform vec4 outlineColor;\nuniform float outlineSize;\n#endif\nvoid main () {\n#if USE_SDF\n #if USE_TEXTURE_ALPHAONLY\n float dist = texture2D(texture, v_uv0).a;\n #else\n float dist = texture2D(texture, v_uv0).r;\n #endif\n #if USE_SDF_EXTEND\n const float EDGE_VALUE = 0.45;\n #else\n const float EDGE_VALUE = 0.5;\n #endif\n #if CC_SUPPORT_standard_derivatives\n float smoothing = fwidth(dist);\n #else\n float smoothing = 0.05;\n #endif\n float outEdge = EDGE_VALUE - outlineSize;\n float bg = smoothstep(outEdge - smoothing, outEdge, dist);\n float fg = smoothstep(EDGE_VALUE - smoothing, EDGE_VALUE, dist);\n vec4 fgColor = outlineColor * (1.0 - fg) + v_color * fg;\n gl_FragColor = vec4(fgColor.rgb, fgColor.a * bg);\n#else\n vec4 o = vec4(1, 1, 1, 1);\n #if USE_TEXTURE\n #if USE_TEXTURE_ALPHAONLY\n o.a *= texture2D(texture, v_uv0).a;\n #else\n o *= texture2D(texture, v_uv0);\n #endif\n #if CC_USE_ALPHA_ATLAS_TEXTURE\n o.a *= texture2D(texture, v_uv0 + vec2(0, 0.5)).r;\n #endif\n #endif\n o *= v_color;\n ALPHA_TEST(o);\n gl_FragColor = o;\n#endif\n}"
},
"builtins": {
"globals": {
"blocks": [
{
"name": "CCGlobal",
"defines": []
}
],
"samplers": []
},
"locals": {
"blocks": [
{
"name": "CCLocal",
"defines": []
}
],
"samplers": []
}
},
"defines": [
{
"name": "USE_TEXTURE",
"type": "boolean",
"defines": []
},
{
"name": "CC_USE_MODEL",
"type": "boolean",
"defines": []
},
{
"name": "CC_SUPPORT_standard_derivatives",
"type": "boolean",
"defines": []
},
{
"name": "USE_ALPHA_TEST",
"type": "boolean",
"defines": []
},
{
"name": "USE_SDF",
"type": "boolean",
"defines": []
},
{
"name": "USE_TEXTURE_ALPHAONLY",
"type": "boolean",
"defines": [
"USE_SDF"
]
},
{
"name": "USE_SDF_EXTEND",
"type": "boolean",
"defines": [
"USE_SDF"
]
},
{
"name": "CC_USE_ALPHA_ATLAS_TEXTURE",
"type": "boolean",
"defines": [
"USE_TEXTURE"
]
}
],
"blocks": [
{
"name": "ALPHA_TEST",
"members": [
{
"name": "alphaThreshold",
"type": 13,
"count": 1
}
],
"defines": [
"USE_ALPHA_TEST"
],
"binding": 0
},
{
"name": "Outline",
"members": [
{
"name": "outlineColor",
"type": 16,
"count": 1
},
{
"name": "outlineSize",
"type": 13,
"count": 1
}
],
"defines": [
"USE_SDF"
],
"binding": 1
}
],
"samplers": [
{
"name": "texture",
"type": 29,
"count": 1,
"defines": [
"USE_TEXTURE"
],
"binding": 30
}
],
"record": null,
"name": "builtin-2d-label|vs|fs"
}
]
}
]
\ No newline at end of file
[{"__type__":"cc.EffectAsset","_name":"builtin-3d-trail","techniques":[{"name":"add","passes":[{"rasterizerState":{"cullMode":0},"blendState":{"targets":[{"blend":true,"blendSrc":770,"blendDst":1,"blendSrcAlpha":770,"blendDstAlpha":1}]},"depthStencilState":{"depthTest":true,"depthWrite":false},"properties":{"mainTexture":{"value":"grey","type":29},"mainTiling_Offset":{"value":[1,1,0,0],"type":16},"frameTile_velLenScale":{"value":[1,1,0,0],"type":16},"tintColor":{"value":[0.5,0.5,0.5,0.5],"inspector":{"type":"color"},"type":16}},"program":"builtin-3d-trail|particle-trail:vs_main|tinted-fs:add"}]},{"name":"alpha-blend","passes":[{"rasterizerState":{"cullMode":0},"blendState":{"targets":[{"blend":true,"blendSrc":1,"blendDst":771,"blendSrcAlpha":1,"blendDstAlpha":771}]},"depthStencilState":{"depthTest":true,"depthWrite":false},"properties":{"mainTexture":{"value":"grey","type":29},"mainTiling_Offset":{"value":[1,1,0,0],"type":16},"frameTile_velLenScale":{"value":[1,1,0,0],"type":16},"tintColor":{"value":[0.5,0.5,0.5,0.5],"inspector":{"type":"color"},"type":16}},"program":"builtin-3d-trail|particle-trail:vs_main|tinted-fs:add"}]},{"name":"add-multiply","passes":[{"rasterizerState":{"cullMode":0},"blendState":{"targets":[{"blend":true,"blendSrc":1,"blendDst":771,"blendSrcAlpha":1,"blendDstAlpha":771}]},"depthStencilState":{"depthTest":true,"depthWrite":false},"properties":{"mainTexture":{"value":"grey","type":29},"mainTiling_Offset":{"value":[1,1,0,0],"type":16},"frameTile_velLenScale":{"value":[1,1,0,0],"type":16},"tintColor":{"value":[0.5,0.5,0.5,0.5],"inspector":{"type":"color"},"type":16}},"program":"builtin-3d-trail|particle-trail:vs_main|tinted-fs:multiply"}]},{"name":"add-smooth","passes":[{"rasterizerState":{"cullMode":0},"blendState":{"targets":[{"blend":true,"blendSrc":1,"blendDst":771,"blendSrcAlpha":1,"blendDstAlpha":771}]},"depthStencilState":{"depthTest":true,"depthWrite":false},"properties":{"mainTexture":{"value":"grey","type":29},"mainTiling_Offset":{"value":[1,1,0,0],"type":16},"frameTile_velLenScale":{"value":[1,1,0,0],"type":16}},"program":"builtin-3d-trail|particle-trail:vs_main|no-tint-fs:addSmooth"}]},{"name":"premultiply-blend","passes":[{"rasterizerState":{"cullMode":0},"blendState":{"targets":[{"blend":true,"blendSrc":1,"blendDst":771,"blendSrcAlpha":1,"blendDstAlpha":771}]},"depthStencilState":{"depthTest":true,"depthWrite":false},"properties":{"mainTexture":{"value":"grey","type":29},"mainTiling_Offset":{"value":[1,1,0,0],"type":16},"frameTile_velLenScale":{"value":[1,1,0,0],"type":16}},"program":"builtin-3d-trail|particle-trail:vs_main|no-tint-fs:premultiplied"}]}],"shaders":[{"hash":2929688198,"glsl3":{"vert":"\nprecision mediump float;\nuniform Constants{\n vec4 mainTiling_Offset;\n vec4 frameTile_velLenScale;\n vec4 scale;\n};\nuniform CCGlobal {\n mat4 cc_matView;\n mat4 cc_matViewInv;\n mat4 cc_matProj;\n mat4 cc_matProjInv;\n mat4 cc_matViewProj;\n mat4 cc_matViewProjInv;\n vec4 cc_cameraPos;\n vec4 cc_time;\n mediump vec4 cc_screenSize;\n mediump vec4 cc_screenScale;\n};\nuniform CCLocal {\n mat4 cc_matWorld;\n mat4 cc_matWorldIT;\n};\nout vec2 uv;\nout vec4 color;\nin vec3 a_position;\nin vec4 a_texCoord;\nin vec3 a_texCoord1;\nin vec3 a_texCoord2;\nin vec4 a_color;\n#if CC_DRAW_WIRE_FRAME\n out vec3 vBarycentric;\n#endif\nvec4 vs_main() {\n highp vec4 pos = vec4(a_position, 1);\n vec4 velocity = vec4(a_texCoord1.xyz, 0);\n#if !CC_USE_WORLD_SPACE\n pos = cc_matWorld * pos;\n velocity = cc_matWorld * velocity;\n#endif\n float vertOffset = (a_texCoord.x - 0.5) * a_texCoord.y;\n vec3 camUp = normalize(cross(pos.xyz - cc_cameraPos.xyz, velocity.xyz));\n pos.xyz += camUp * vertOffset;\n pos = cc_matViewProj * pos;\n uv = a_texCoord.zw * mainTiling_Offset.xy + mainTiling_Offset.zw;;\n color = a_color;\n#if CC_DRAW_WIRE_FRAME\n vBarycentric = a_texCoord2;\n#endif\n return pos;\n}\nvoid main() { gl_Position = vs_main(); }","frag":"\nprecision mediump float;\nvec4 CCFragOutput (vec4 color) {\n #if OUTPUT_TO_GAMMA\n color.rgb = sqrt(color.rgb);\n #endif\n\treturn color;\n}\nin vec2 uv;\nin vec4 color;\n#if CC_DRAW_WIRE_FRAME\n in vec3 vBarycentric;\n#endif\nuniform sampler2D mainTexture;\nuniform FragConstants {\n vec4 tintColor;\n};\nvec4 add () {\n vec4 col = 2.0 * color * tintColor * texture(mainTexture, uv);\n #if CC_DRAW_WIRE_FRAME\n if (any(lessThan(vBarycentric, vec3(0.02)))) {\n col = vec4(0., 1., 1., 1.);\n }\n #endif\n return CCFragOutput(col);\n}\nout vec4 cc_FragColor;\nvoid main() { cc_FragColor = add(); }"},"glsl1":{"vert":"\nprecision mediump float;\nuniform vec4 mainTiling_Offset;\nuniform mat4 cc_matViewProj;\nuniform vec4 cc_cameraPos;\nuniform mat4 cc_matWorld;\nvarying vec2 uv;\nvarying vec4 color;\nattribute vec3 a_position;\nattribute vec4 a_texCoord;\nattribute vec3 a_texCoord1;\nattribute vec3 a_texCoord2;\nattribute vec4 a_color;\n#if CC_DRAW_WIRE_FRAME\n varying vec3 vBarycentric;\n#endif\nvec4 vs_main() {\n highp vec4 pos = vec4(a_position, 1);\n vec4 velocity = vec4(a_texCoord1.xyz, 0);\n#if !CC_USE_WORLD_SPACE\n pos = cc_matWorld * pos;\n velocity = cc_matWorld * velocity;\n#endif\n float vertOffset = (a_texCoord.x - 0.5) * a_texCoord.y;\n vec3 camUp = normalize(cross(pos.xyz - cc_cameraPos.xyz, velocity.xyz));\n pos.xyz += camUp * vertOffset;\n pos = cc_matViewProj * pos;\n uv = a_texCoord.zw * mainTiling_Offset.xy + mainTiling_Offset.zw;;\n color = a_color;\n#if CC_DRAW_WIRE_FRAME\n vBarycentric = a_texCoord2;\n#endif\n return pos;\n}\nvoid main() { gl_Position = vs_main(); }","frag":"\nprecision mediump float;\nvec4 CCFragOutput (vec4 color) {\n #if OUTPUT_TO_GAMMA\n color.rgb = sqrt(color.rgb);\n #endif\n\treturn color;\n}\nvarying vec2 uv;\nvarying vec4 color;\n#if CC_DRAW_WIRE_FRAME\n varying vec3 vBarycentric;\n#endif\nuniform sampler2D mainTexture;\nuniform vec4 tintColor;\nvec4 add () {\n vec4 col = 2.0 * color * tintColor * texture2D(mainTexture, uv);\n #if CC_DRAW_WIRE_FRAME\n if (any(lessThan(vBarycentric, vec3(0.02)))) {\n col = vec4(0., 1., 1., 1.);\n }\n #endif\n return CCFragOutput(col);\n}\nvoid main() { gl_FragColor = add(); }"},"builtins":{"globals":{"blocks":[{"name":"CCGlobal","defines":[]}],"samplers":[]},"locals":{"blocks":[{"name":"CCLocal","defines":[]}],"samplers":[]}},"defines":[{"name":"CC_DRAW_WIRE_FRAME","type":"boolean","defines":[]},{"name":"CC_USE_WORLD_SPACE","type":"boolean","defines":[]},{"name":"OUTPUT_TO_GAMMA","type":"boolean","defines":[]}],"blocks":[{"name":"Constants","members":[{"name":"mainTiling_Offset","type":16,"count":1},{"name":"frameTile_velLenScale","type":16,"count":1},{"name":"scale","type":16,"count":1}],"defines":[],"binding":0},{"name":"FragConstants","members":[{"name":"tintColor","type":16,"count":1}],"defines":[],"binding":1}],"samplers":[{"name":"mainTexture","type":29,"count":1,"defines":[],"binding":30}],"record":null,"name":"builtin-3d-trail|particle-trail:vs_main|tinted-fs:add"},{"hash":4224037318,"glsl3":{"vert":"\nprecision mediump float;\nuniform Constants{\n vec4 mainTiling_Offset;\n vec4 frameTile_velLenScale;\n vec4 scale;\n};\nuniform CCGlobal {\n mat4 cc_matView;\n mat4 cc_matViewInv;\n mat4 cc_matProj;\n mat4 cc_matProjInv;\n mat4 cc_matViewProj;\n mat4 cc_matViewProjInv;\n vec4 cc_cameraPos;\n vec4 cc_time;\n mediump vec4 cc_screenSize;\n mediump vec4 cc_screenScale;\n};\nuniform CCLocal {\n mat4 cc_matWorld;\n mat4 cc_matWorldIT;\n};\nout vec2 uv;\nout vec4 color;\nin vec3 a_position;\nin vec4 a_texCoord;\nin vec3 a_texCoord1;\nin vec3 a_texCoord2;\nin vec4 a_color;\n#if CC_DRAW_WIRE_FRAME\n out vec3 vBarycentric;\n#endif\nvec4 vs_main() {\n highp vec4 pos = vec4(a_position, 1);\n vec4 velocity = vec4(a_texCoord1.xyz, 0);\n#if !CC_USE_WORLD_SPACE\n pos = cc_matWorld * pos;\n velocity = cc_matWorld * velocity;\n#endif\n float vertOffset = (a_texCoord.x - 0.5) * a_texCoord.y;\n vec3 camUp = normalize(cross(pos.xyz - cc_cameraPos.xyz, velocity.xyz));\n pos.xyz += camUp * vertOffset;\n pos = cc_matViewProj * pos;\n uv = a_texCoord.zw * mainTiling_Offset.xy + mainTiling_Offset.zw;;\n color = a_color;\n#if CC_DRAW_WIRE_FRAME\n vBarycentric = a_texCoord2;\n#endif\n return pos;\n}\nvoid main() { gl_Position = vs_main(); }","frag":"\nprecision mediump float;\nvec4 CCFragOutput (vec4 color) {\n #if OUTPUT_TO_GAMMA\n color.rgb = sqrt(color.rgb);\n #endif\n\treturn color;\n}\nin vec2 uv;\nin vec4 color;\n#if CC_DRAW_WIRE_FRAME\n in vec3 vBarycentric;\n#endif\nuniform sampler2D mainTexture;\nuniform FragConstants {\n vec4 tintColor;\n};\nvec4 multiply () {\n vec4 col;\n vec4 texColor = texture(mainTexture, uv);\n col.rgb = tintColor.rgb * texColor.rgb * color.rgb * vec3(2.0);\n col.a = (1.0 - texColor.a) * (tintColor.a * color.a * 2.0);\n #if CC_DRAW_WIRE_FRAME\n if (any(lessThan(vBarycentric, vec3(0.02)))) {\n col = vec4(0., 1., 1., col.a);\n }\n #endif\n return CCFragOutput(col);\n}\nout vec4 cc_FragColor;\nvoid main() { cc_FragColor = multiply(); }"},"glsl1":{"vert":"\nprecision mediump float;\nuniform vec4 mainTiling_Offset;\nuniform mat4 cc_matViewProj;\nuniform vec4 cc_cameraPos;\nuniform mat4 cc_matWorld;\nvarying vec2 uv;\nvarying vec4 color;\nattribute vec3 a_position;\nattribute vec4 a_texCoord;\nattribute vec3 a_texCoord1;\nattribute vec3 a_texCoord2;\nattribute vec4 a_color;\n#if CC_DRAW_WIRE_FRAME\n varying vec3 vBarycentric;\n#endif\nvec4 vs_main() {\n highp vec4 pos = vec4(a_position, 1);\n vec4 velocity = vec4(a_texCoord1.xyz, 0);\n#if !CC_USE_WORLD_SPACE\n pos = cc_matWorld * pos;\n velocity = cc_matWorld * velocity;\n#endif\n float vertOffset = (a_texCoord.x - 0.5) * a_texCoord.y;\n vec3 camUp = normalize(cross(pos.xyz - cc_cameraPos.xyz, velocity.xyz));\n pos.xyz += camUp * vertOffset;\n pos = cc_matViewProj * pos;\n uv = a_texCoord.zw * mainTiling_Offset.xy + mainTiling_Offset.zw;;\n color = a_color;\n#if CC_DRAW_WIRE_FRAME\n vBarycentric = a_texCoord2;\n#endif\n return pos;\n}\nvoid main() { gl_Position = vs_main(); }","frag":"\nprecision mediump float;\nvec4 CCFragOutput (vec4 color) {\n #if OUTPUT_TO_GAMMA\n color.rgb = sqrt(color.rgb);\n #endif\n\treturn color;\n}\nvarying vec2 uv;\nvarying vec4 color;\n#if CC_DRAW_WIRE_FRAME\n varying vec3 vBarycentric;\n#endif\nuniform sampler2D mainTexture;\nuniform vec4 tintColor;\nvec4 multiply () {\n vec4 col;\n vec4 texColor = texture2D(mainTexture, uv);\n col.rgb = tintColor.rgb * texColor.rgb * color.rgb * vec3(2.0);\n col.a = (1.0 - texColor.a) * (tintColor.a * color.a * 2.0);\n #if CC_DRAW_WIRE_FRAME\n if (any(lessThan(vBarycentric, vec3(0.02)))) {\n col = vec4(0., 1., 1., col.a);\n }\n #endif\n return CCFragOutput(col);\n}\nvoid main() { gl_FragColor = multiply(); }"},"builtins":{"globals":{"blocks":[{"name":"CCGlobal","defines":[]}],"samplers":[]},"locals":{"blocks":[{"name":"CCLocal","defines":[]}],"samplers":[]}},"defines":[{"name":"CC_DRAW_WIRE_FRAME","type":"boolean","defines":[]},{"name":"CC_USE_WORLD_SPACE","type":"boolean","defines":[]},{"name":"OUTPUT_TO_GAMMA","type":"boolean","defines":[]}],"blocks":[{"name":"Constants","members":[{"name":"mainTiling_Offset","type":16,"count":1},{"name":"frameTile_velLenScale","type":16,"count":1},{"name":"scale","type":16,"count":1}],"defines":[],"binding":0},{"name":"FragConstants","members":[{"name":"tintColor","type":16,"count":1}],"defines":[],"binding":1}],"samplers":[{"name":"mainTexture","type":29,"count":1,"defines":[],"binding":30}],"record":null,"name":"builtin-3d-trail|particle-trail:vs_main|tinted-fs:multiply"},{"hash":1704877102,"glsl3":{"vert":"\nprecision mediump float;\nuniform Constants{\n vec4 mainTiling_Offset;\n vec4 frameTile_velLenScale;\n vec4 scale;\n};\nuniform CCGlobal {\n mat4 cc_matView;\n mat4 cc_matViewInv;\n mat4 cc_matProj;\n mat4 cc_matProjInv;\n mat4 cc_matViewProj;\n mat4 cc_matViewProjInv;\n vec4 cc_cameraPos;\n vec4 cc_time;\n mediump vec4 cc_screenSize;\n mediump vec4 cc_screenScale;\n};\nuniform CCLocal {\n mat4 cc_matWorld;\n mat4 cc_matWorldIT;\n};\nout vec2 uv;\nout vec4 color;\nin vec3 a_position;\nin vec4 a_texCoord;\nin vec3 a_texCoord1;\nin vec3 a_texCoord2;\nin vec4 a_color;\n#if CC_DRAW_WIRE_FRAME\n out vec3 vBarycentric;\n#endif\nvec4 vs_main() {\n highp vec4 pos = vec4(a_position, 1);\n vec4 velocity = vec4(a_texCoord1.xyz, 0);\n#if !CC_USE_WORLD_SPACE\n pos = cc_matWorld * pos;\n velocity = cc_matWorld * velocity;\n#endif\n float vertOffset = (a_texCoord.x - 0.5) * a_texCoord.y;\n vec3 camUp = normalize(cross(pos.xyz - cc_cameraPos.xyz, velocity.xyz));\n pos.xyz += camUp * vertOffset;\n pos = cc_matViewProj * pos;\n uv = a_texCoord.zw * mainTiling_Offset.xy + mainTiling_Offset.zw;;\n color = a_color;\n#if CC_DRAW_WIRE_FRAME\n vBarycentric = a_texCoord2;\n#endif\n return pos;\n}\nvoid main() { gl_Position = vs_main(); }","frag":"\nprecision mediump float;\nvec4 CCFragOutput (vec4 color) {\n #if OUTPUT_TO_GAMMA\n color.rgb = sqrt(color.rgb);\n #endif\n\treturn color;\n}\nin vec2 uv;\nin vec4 color;\nuniform sampler2D mainTexture;\nvec4 addSmooth () {\n vec4 col = color * texture(mainTexture, uv);\n col.rgb *= col.a;\n return CCFragOutput(col);\n}\nout vec4 cc_FragColor;\nvoid main() { cc_FragColor = addSmooth(); }"},"glsl1":{"vert":"\nprecision mediump float;\nuniform vec4 mainTiling_Offset;\nuniform mat4 cc_matViewProj;\nuniform vec4 cc_cameraPos;\nuniform mat4 cc_matWorld;\nvarying vec2 uv;\nvarying vec4 color;\nattribute vec3 a_position;\nattribute vec4 a_texCoord;\nattribute vec3 a_texCoord1;\nattribute vec3 a_texCoord2;\nattribute vec4 a_color;\n#if CC_DRAW_WIRE_FRAME\n varying vec3 vBarycentric;\n#endif\nvec4 vs_main() {\n highp vec4 pos = vec4(a_position, 1);\n vec4 velocity = vec4(a_texCoord1.xyz, 0);\n#if !CC_USE_WORLD_SPACE\n pos = cc_matWorld * pos;\n velocity = cc_matWorld * velocity;\n#endif\n float vertOffset = (a_texCoord.x - 0.5) * a_texCoord.y;\n vec3 camUp = normalize(cross(pos.xyz - cc_cameraPos.xyz, velocity.xyz));\n pos.xyz += camUp * vertOffset;\n pos = cc_matViewProj * pos;\n uv = a_texCoord.zw * mainTiling_Offset.xy + mainTiling_Offset.zw;;\n color = a_color;\n#if CC_DRAW_WIRE_FRAME\n vBarycentric = a_texCoord2;\n#endif\n return pos;\n}\nvoid main() { gl_Position = vs_main(); }","frag":"\nprecision mediump float;\nvec4 CCFragOutput (vec4 color) {\n #if OUTPUT_TO_GAMMA\n color.rgb = sqrt(color.rgb);\n #endif\n\treturn color;\n}\nvarying vec2 uv;\nvarying vec4 color;\nuniform sampler2D mainTexture;\nvec4 addSmooth () {\n vec4 col = color * texture2D(mainTexture, uv);\n col.rgb *= col.a;\n return CCFragOutput(col);\n}\nvoid main() { gl_FragColor = addSmooth(); }"},"builtins":{"globals":{"blocks":[{"name":"CCGlobal","defines":[]}],"samplers":[]},"locals":{"blocks":[{"name":"CCLocal","defines":[]}],"samplers":[]}},"defines":[{"name":"CC_DRAW_WIRE_FRAME","type":"boolean","defines":[]},{"name":"CC_USE_WORLD_SPACE","type":"boolean","defines":[]},{"name":"OUTPUT_TO_GAMMA","type":"boolean","defines":[]}],"blocks":[{"name":"Constants","members":[{"name":"mainTiling_Offset","type":16,"count":1},{"name":"frameTile_velLenScale","type":16,"count":1},{"name":"scale","type":16,"count":1}],"defines":[],"binding":0}],"samplers":[{"name":"mainTexture","type":29,"count":1,"defines":[],"binding":30}],"record":null,"name":"builtin-3d-trail|particle-trail:vs_main|no-tint-fs:addSmooth"},{"hash":2717357054,"glsl3":{"vert":"\nprecision mediump float;\nuniform Constants{\n vec4 mainTiling_Offset;\n vec4 frameTile_velLenScale;\n vec4 scale;\n};\nuniform CCGlobal {\n mat4 cc_matView;\n mat4 cc_matViewInv;\n mat4 cc_matProj;\n mat4 cc_matProjInv;\n mat4 cc_matViewProj;\n mat4 cc_matViewProjInv;\n vec4 cc_cameraPos;\n vec4 cc_time;\n mediump vec4 cc_screenSize;\n mediump vec4 cc_screenScale;\n};\nuniform CCLocal {\n mat4 cc_matWorld;\n mat4 cc_matWorldIT;\n};\nout vec2 uv;\nout vec4 color;\nin vec3 a_position;\nin vec4 a_texCoord;\nin vec3 a_texCoord1;\nin vec3 a_texCoord2;\nin vec4 a_color;\n#if CC_DRAW_WIRE_FRAME\n out vec3 vBarycentric;\n#endif\nvec4 vs_main() {\n highp vec4 pos = vec4(a_position, 1);\n vec4 velocity = vec4(a_texCoord1.xyz, 0);\n#if !CC_USE_WORLD_SPACE\n pos = cc_matWorld * pos;\n velocity = cc_matWorld * velocity;\n#endif\n float vertOffset = (a_texCoord.x - 0.5) * a_texCoord.y;\n vec3 camUp = normalize(cross(pos.xyz - cc_cameraPos.xyz, velocity.xyz));\n pos.xyz += camUp * vertOffset;\n pos = cc_matViewProj * pos;\n uv = a_texCoord.zw * mainTiling_Offset.xy + mainTiling_Offset.zw;;\n color = a_color;\n#if CC_DRAW_WIRE_FRAME\n vBarycentric = a_texCoord2;\n#endif\n return pos;\n}\nvoid main() { gl_Position = vs_main(); }","frag":"\nprecision mediump float;\nvec4 CCFragOutput (vec4 color) {\n #if OUTPUT_TO_GAMMA\n color.rgb = sqrt(color.rgb);\n #endif\n\treturn color;\n}\nin vec2 uv;\nin vec4 color;\nuniform sampler2D mainTexture;\nvec4 premultiplied () {\n vec4 col = color * texture(mainTexture, uv) * color.a;\n return CCFragOutput(col);\n}\nout vec4 cc_FragColor;\nvoid main() { cc_FragColor = premultiplied(); }"},"glsl1":{"vert":"\nprecision mediump float;\nuniform vec4 mainTiling_Offset;\nuniform mat4 cc_matViewProj;\nuniform vec4 cc_cameraPos;\nuniform mat4 cc_matWorld;\nvarying vec2 uv;\nvarying vec4 color;\nattribute vec3 a_position;\nattribute vec4 a_texCoord;\nattribute vec3 a_texCoord1;\nattribute vec3 a_texCoord2;\nattribute vec4 a_color;\n#if CC_DRAW_WIRE_FRAME\n varying vec3 vBarycentric;\n#endif\nvec4 vs_main() {\n highp vec4 pos = vec4(a_position, 1);\n vec4 velocity = vec4(a_texCoord1.xyz, 0);\n#if !CC_USE_WORLD_SPACE\n pos = cc_matWorld * pos;\n velocity = cc_matWorld * velocity;\n#endif\n float vertOffset = (a_texCoord.x - 0.5) * a_texCoord.y;\n vec3 camUp = normalize(cross(pos.xyz - cc_cameraPos.xyz, velocity.xyz));\n pos.xyz += camUp * vertOffset;\n pos = cc_matViewProj * pos;\n uv = a_texCoord.zw * mainTiling_Offset.xy + mainTiling_Offset.zw;;\n color = a_color;\n#if CC_DRAW_WIRE_FRAME\n vBarycentric = a_texCoord2;\n#endif\n return pos;\n}\nvoid main() { gl_Position = vs_main(); }","frag":"\nprecision mediump float;\nvec4 CCFragOutput (vec4 color) {\n #if OUTPUT_TO_GAMMA\n color.rgb = sqrt(color.rgb);\n #endif\n\treturn color;\n}\nvarying vec2 uv;\nvarying vec4 color;\nuniform sampler2D mainTexture;\nvec4 premultiplied () {\n vec4 col = color * texture2D(mainTexture, uv) * color.a;\n return CCFragOutput(col);\n}\nvoid main() { gl_FragColor = premultiplied(); }"},"builtins":{"globals":{"blocks":[{"name":"CCGlobal","defines":[]}],"samplers":[]},"locals":{"blocks":[{"name":"CCLocal","defines":[]}],"samplers":[]}},"defines":[{"name":"CC_DRAW_WIRE_FRAME","type":"boolean","defines":[]},{"name":"CC_USE_WORLD_SPACE","type":"boolean","defines":[]},{"name":"OUTPUT_TO_GAMMA","type":"boolean","defines":[]}],"blocks":[{"name":"Constants","members":[{"name":"mainTiling_Offset","type":16,"count":1},{"name":"frameTile_velLenScale","type":16,"count":1},{"name":"scale","type":16,"count":1}],"defines":[],"binding":0}],"samplers":[{"name":"mainTexture","type":29,"count":1,"defines":[],"binding":30}],"record":null,"name":"builtin-3d-trail|particle-trail:vs_main|no-tint-fs:premultiplied"}]},{"__type__":"cc.Material","_name":"builtin-3d-trail","_effectAsset":{"__uuid__":"2afAA24LNP4YmYiaVLiivs"},"_techniqueData":{"0":{"props":{"mainTexture":{"__uuid__":"02delMVqdBD70a/HSD99FK"}}}}}]
\ No newline at end of file
[
{
"__type__": "cc.EffectAsset",
"_name": "builtin-3d-trail",
"techniques": [
{
"name": "add",
"passes": [
{
"rasterizerState": {
"cullMode": 0
},
"blendState": {
"targets": [
{
"blend": true,
"blendSrc": 770,
"blendDst": 1,
"blendSrcAlpha": 770,
"blendDstAlpha": 1
}
]
},
"depthStencilState": {
"depthTest": true,
"depthWrite": false
},
"properties": {
"mainTexture": {
"value": "grey",
"type": 29
},
"mainTiling_Offset": {
"value": [
1,
1,
0,
0
],
"type": 16
},
"frameTile_velLenScale": {
"value": [
1,
1,
0,
0
],
"type": 16
},
"tintColor": {
"value": [
0.5,
0.5,
0.5,
0.5
],
"inspector": {
"type": "color"
},
"type": 16
}
},
"program": "builtin-3d-trail|particle-trail:vs_main|tinted-fs:add"
}
]
},
{
"name": "alpha-blend",
"passes": [
{
"rasterizerState": {
"cullMode": 0
},
"blendState": {
"targets": [
{
"blend": true,
"blendSrc": 1,
"blendDst": 771,
"blendSrcAlpha": 1,
"blendDstAlpha": 771
}
]
},
"depthStencilState": {
"depthTest": true,
"depthWrite": false
},
"properties": {
"mainTexture": {
"value": "grey",
"type": 29
},
"mainTiling_Offset": {
"value": [
1,
1,
0,
0
],
"type": 16
},
"frameTile_velLenScale": {
"value": [
1,
1,
0,
0
],
"type": 16
},
"tintColor": {
"value": [
0.5,
0.5,
0.5,
0.5
],
"inspector": {
"type": "color"
},
"type": 16
}
},
"program": "builtin-3d-trail|particle-trail:vs_main|tinted-fs:add"
}
]
},
{
"name": "add-multiply",
"passes": [
{
"rasterizerState": {
"cullMode": 0
},
"blendState": {
"targets": [
{
"blend": true,
"blendSrc": 1,
"blendDst": 771,
"blendSrcAlpha": 1,
"blendDstAlpha": 771
}
]
},
"depthStencilState": {
"depthTest": true,
"depthWrite": false
},
"properties": {
"mainTexture": {
"value": "grey",
"type": 29
},
"mainTiling_Offset": {
"value": [
1,
1,
0,
0
],
"type": 16
},
"frameTile_velLenScale": {
"value": [
1,
1,
0,
0
],
"type": 16
},
"tintColor": {
"value": [
0.5,
0.5,
0.5,
0.5
],
"inspector": {
"type": "color"
},
"type": 16
}
},
"program": "builtin-3d-trail|particle-trail:vs_main|tinted-fs:multiply"
}
]
},
{
"name": "add-smooth",
"passes": [
{
"rasterizerState": {
"cullMode": 0
},
"blendState": {
"targets": [
{
"blend": true,
"blendSrc": 1,
"blendDst": 771,
"blendSrcAlpha": 1,
"blendDstAlpha": 771
}
]
},
"depthStencilState": {
"depthTest": true,
"depthWrite": false
},
"properties": {
"mainTexture": {
"value": "grey",
"type": 29
},
"mainTiling_Offset": {
"value": [
1,
1,
0,
0
],
"type": 16
},
"frameTile_velLenScale": {
"value": [
1,
1,
0,
0
],
"type": 16
}
},
"program": "builtin-3d-trail|particle-trail:vs_main|no-tint-fs:addSmooth"
}
]
},
{
"name": "premultiply-blend",
"passes": [
{
"rasterizerState": {
"cullMode": 0
},
"blendState": {
"targets": [
{
"blend": true,
"blendSrc": 1,
"blendDst": 771,
"blendSrcAlpha": 1,
"blendDstAlpha": 771
}
]
},
"depthStencilState": {
"depthTest": true,
"depthWrite": false
},
"properties": {
"mainTexture": {
"value": "grey",
"type": 29
},
"mainTiling_Offset": {
"value": [
1,
1,
0,
0
],
"type": 16
},
"frameTile_velLenScale": {
"value": [
1,
1,
0,
0
],
"type": 16
}
},
"program": "builtin-3d-trail|particle-trail:vs_main|no-tint-fs:premultiplied"
}
]
}
],
"shaders": [
{
"hash": 2929688198,
"glsl3": {
"vert": "\nprecision mediump float;\nuniform Constants{\n vec4 mainTiling_Offset;\n vec4 frameTile_velLenScale;\n vec4 scale;\n};\nuniform CCGlobal {\n mat4 cc_matView;\n mat4 cc_matViewInv;\n mat4 cc_matProj;\n mat4 cc_matProjInv;\n mat4 cc_matViewProj;\n mat4 cc_matViewProjInv;\n vec4 cc_cameraPos;\n vec4 cc_time;\n mediump vec4 cc_screenSize;\n mediump vec4 cc_screenScale;\n};\nuniform CCLocal {\n mat4 cc_matWorld;\n mat4 cc_matWorldIT;\n};\nout vec2 uv;\nout vec4 color;\nin vec3 a_position;\nin vec4 a_texCoord;\nin vec3 a_texCoord1;\nin vec3 a_texCoord2;\nin vec4 a_color;\n#if CC_DRAW_WIRE_FRAME\n out vec3 vBarycentric;\n#endif\nvec4 vs_main() {\n highp vec4 pos = vec4(a_position, 1);\n vec4 velocity = vec4(a_texCoord1.xyz, 0);\n#if !CC_USE_WORLD_SPACE\n pos = cc_matWorld * pos;\n velocity = cc_matWorld * velocity;\n#endif\n float vertOffset = (a_texCoord.x - 0.5) * a_texCoord.y;\n vec3 camUp = normalize(cross(pos.xyz - cc_cameraPos.xyz, velocity.xyz));\n pos.xyz += camUp * vertOffset;\n pos = cc_matViewProj * pos;\n uv = a_texCoord.zw * mainTiling_Offset.xy + mainTiling_Offset.zw;;\n color = a_color;\n#if CC_DRAW_WIRE_FRAME\n vBarycentric = a_texCoord2;\n#endif\n return pos;\n}\nvoid main() { gl_Position = vs_main(); }",
"frag": "\nprecision mediump float;\nvec4 CCFragOutput (vec4 color) {\n #if OUTPUT_TO_GAMMA\n color.rgb = sqrt(color.rgb);\n #endif\n\treturn color;\n}\nin vec2 uv;\nin vec4 color;\n#if CC_DRAW_WIRE_FRAME\n in vec3 vBarycentric;\n#endif\nuniform sampler2D mainTexture;\nuniform FragConstants {\n vec4 tintColor;\n};\nvec4 add () {\n vec4 col = 2.0 * color * tintColor * texture(mainTexture, uv);\n #if CC_DRAW_WIRE_FRAME\n if (any(lessThan(vBarycentric, vec3(0.02)))) {\n col = vec4(0., 1., 1., 1.);\n }\n #endif\n return CCFragOutput(col);\n}\nout vec4 cc_FragColor;\nvoid main() { cc_FragColor = add(); }"
},
"glsl1": {
"vert": "\nprecision mediump float;\nuniform vec4 mainTiling_Offset;\nuniform mat4 cc_matViewProj;\nuniform vec4 cc_cameraPos;\nuniform mat4 cc_matWorld;\nvarying vec2 uv;\nvarying vec4 color;\nattribute vec3 a_position;\nattribute vec4 a_texCoord;\nattribute vec3 a_texCoord1;\nattribute vec3 a_texCoord2;\nattribute vec4 a_color;\n#if CC_DRAW_WIRE_FRAME\n varying vec3 vBarycentric;\n#endif\nvec4 vs_main() {\n highp vec4 pos = vec4(a_position, 1);\n vec4 velocity = vec4(a_texCoord1.xyz, 0);\n#if !CC_USE_WORLD_SPACE\n pos = cc_matWorld * pos;\n velocity = cc_matWorld * velocity;\n#endif\n float vertOffset = (a_texCoord.x - 0.5) * a_texCoord.y;\n vec3 camUp = normalize(cross(pos.xyz - cc_cameraPos.xyz, velocity.xyz));\n pos.xyz += camUp * vertOffset;\n pos = cc_matViewProj * pos;\n uv = a_texCoord.zw * mainTiling_Offset.xy + mainTiling_Offset.zw;;\n color = a_color;\n#if CC_DRAW_WIRE_FRAME\n vBarycentric = a_texCoord2;\n#endif\n return pos;\n}\nvoid main() { gl_Position = vs_main(); }",
"frag": "\nprecision mediump float;\nvec4 CCFragOutput (vec4 color) {\n #if OUTPUT_TO_GAMMA\n color.rgb = sqrt(color.rgb);\n #endif\n\treturn color;\n}\nvarying vec2 uv;\nvarying vec4 color;\n#if CC_DRAW_WIRE_FRAME\n varying vec3 vBarycentric;\n#endif\nuniform sampler2D mainTexture;\nuniform vec4 tintColor;\nvec4 add () {\n vec4 col = 2.0 * color * tintColor * texture2D(mainTexture, uv);\n #if CC_DRAW_WIRE_FRAME\n if (any(lessThan(vBarycentric, vec3(0.02)))) {\n col = vec4(0., 1., 1., 1.);\n }\n #endif\n return CCFragOutput(col);\n}\nvoid main() { gl_FragColor = add(); }"
},
"builtins": {
"globals": {
"blocks": [
{
"name": "CCGlobal",
"defines": []
}
],
"samplers": []
},
"locals": {
"blocks": [
{
"name": "CCLocal",
"defines": []
}
],
"samplers": []
}
},
"defines": [
{
"name": "CC_DRAW_WIRE_FRAME",
"type": "boolean",
"defines": []
},
{
"name": "CC_USE_WORLD_SPACE",
"type": "boolean",
"defines": []
},
{
"name": "OUTPUT_TO_GAMMA",
"type": "boolean",
"defines": []
}
],
"blocks": [
{
"name": "Constants",
"members": [
{
"name": "mainTiling_Offset",
"type": 16,
"count": 1
},
{
"name": "frameTile_velLenScale",
"type": 16,
"count": 1
},
{
"name": "scale",
"type": 16,
"count": 1
}
],
"defines": [],
"binding": 0
},
{
"name": "FragConstants",
"members": [
{
"name": "tintColor",
"type": 16,
"count": 1
}
],
"defines": [],
"binding": 1
}
],
"samplers": [
{
"name": "mainTexture",
"type": 29,
"count": 1,
"defines": [],
"binding": 30
}
],
"record": null,
"name": "builtin-3d-trail|particle-trail:vs_main|tinted-fs:add"
},
{
"hash": 4224037318,
"glsl3": {
"vert": "\nprecision mediump float;\nuniform Constants{\n vec4 mainTiling_Offset;\n vec4 frameTile_velLenScale;\n vec4 scale;\n};\nuniform CCGlobal {\n mat4 cc_matView;\n mat4 cc_matViewInv;\n mat4 cc_matProj;\n mat4 cc_matProjInv;\n mat4 cc_matViewProj;\n mat4 cc_matViewProjInv;\n vec4 cc_cameraPos;\n vec4 cc_time;\n mediump vec4 cc_screenSize;\n mediump vec4 cc_screenScale;\n};\nuniform CCLocal {\n mat4 cc_matWorld;\n mat4 cc_matWorldIT;\n};\nout vec2 uv;\nout vec4 color;\nin vec3 a_position;\nin vec4 a_texCoord;\nin vec3 a_texCoord1;\nin vec3 a_texCoord2;\nin vec4 a_color;\n#if CC_DRAW_WIRE_FRAME\n out vec3 vBarycentric;\n#endif\nvec4 vs_main() {\n highp vec4 pos = vec4(a_position, 1);\n vec4 velocity = vec4(a_texCoord1.xyz, 0);\n#if !CC_USE_WORLD_SPACE\n pos = cc_matWorld * pos;\n velocity = cc_matWorld * velocity;\n#endif\n float vertOffset = (a_texCoord.x - 0.5) * a_texCoord.y;\n vec3 camUp = normalize(cross(pos.xyz - cc_cameraPos.xyz, velocity.xyz));\n pos.xyz += camUp * vertOffset;\n pos = cc_matViewProj * pos;\n uv = a_texCoord.zw * mainTiling_Offset.xy + mainTiling_Offset.zw;;\n color = a_color;\n#if CC_DRAW_WIRE_FRAME\n vBarycentric = a_texCoord2;\n#endif\n return pos;\n}\nvoid main() { gl_Position = vs_main(); }",
"frag": "\nprecision mediump float;\nvec4 CCFragOutput (vec4 color) {\n #if OUTPUT_TO_GAMMA\n color.rgb = sqrt(color.rgb);\n #endif\n\treturn color;\n}\nin vec2 uv;\nin vec4 color;\n#if CC_DRAW_WIRE_FRAME\n in vec3 vBarycentric;\n#endif\nuniform sampler2D mainTexture;\nuniform FragConstants {\n vec4 tintColor;\n};\nvec4 multiply () {\n vec4 col;\n vec4 texColor = texture(mainTexture, uv);\n col.rgb = tintColor.rgb * texColor.rgb * color.rgb * vec3(2.0);\n col.a = (1.0 - texColor.a) * (tintColor.a * color.a * 2.0);\n #if CC_DRAW_WIRE_FRAME\n if (any(lessThan(vBarycentric, vec3(0.02)))) {\n col = vec4(0., 1., 1., col.a);\n }\n #endif\n return CCFragOutput(col);\n}\nout vec4 cc_FragColor;\nvoid main() { cc_FragColor = multiply(); }"
},
"glsl1": {
"vert": "\nprecision mediump float;\nuniform vec4 mainTiling_Offset;\nuniform mat4 cc_matViewProj;\nuniform vec4 cc_cameraPos;\nuniform mat4 cc_matWorld;\nvarying vec2 uv;\nvarying vec4 color;\nattribute vec3 a_position;\nattribute vec4 a_texCoord;\nattribute vec3 a_texCoord1;\nattribute vec3 a_texCoord2;\nattribute vec4 a_color;\n#if CC_DRAW_WIRE_FRAME\n varying vec3 vBarycentric;\n#endif\nvec4 vs_main() {\n highp vec4 pos = vec4(a_position, 1);\n vec4 velocity = vec4(a_texCoord1.xyz, 0);\n#if !CC_USE_WORLD_SPACE\n pos = cc_matWorld * pos;\n velocity = cc_matWorld * velocity;\n#endif\n float vertOffset = (a_texCoord.x - 0.5) * a_texCoord.y;\n vec3 camUp = normalize(cross(pos.xyz - cc_cameraPos.xyz, velocity.xyz));\n pos.xyz += camUp * vertOffset;\n pos = cc_matViewProj * pos;\n uv = a_texCoord.zw * mainTiling_Offset.xy + mainTiling_Offset.zw;;\n color = a_color;\n#if CC_DRAW_WIRE_FRAME\n vBarycentric = a_texCoord2;\n#endif\n return pos;\n}\nvoid main() { gl_Position = vs_main(); }",
"frag": "\nprecision mediump float;\nvec4 CCFragOutput (vec4 color) {\n #if OUTPUT_TO_GAMMA\n color.rgb = sqrt(color.rgb);\n #endif\n\treturn color;\n}\nvarying vec2 uv;\nvarying vec4 color;\n#if CC_DRAW_WIRE_FRAME\n varying vec3 vBarycentric;\n#endif\nuniform sampler2D mainTexture;\nuniform vec4 tintColor;\nvec4 multiply () {\n vec4 col;\n vec4 texColor = texture2D(mainTexture, uv);\n col.rgb = tintColor.rgb * texColor.rgb * color.rgb * vec3(2.0);\n col.a = (1.0 - texColor.a) * (tintColor.a * color.a * 2.0);\n #if CC_DRAW_WIRE_FRAME\n if (any(lessThan(vBarycentric, vec3(0.02)))) {\n col = vec4(0., 1., 1., col.a);\n }\n #endif\n return CCFragOutput(col);\n}\nvoid main() { gl_FragColor = multiply(); }"
},
"builtins": {
"globals": {
"blocks": [
{
"name": "CCGlobal",
"defines": []
}
],
"samplers": []
},
"locals": {
"blocks": [
{
"name": "CCLocal",
"defines": []
}
],
"samplers": []
}
},
"defines": [
{
"name": "CC_DRAW_WIRE_FRAME",
"type": "boolean",
"defines": []
},
{
"name": "CC_USE_WORLD_SPACE",
"type": "boolean",
"defines": []
},
{
"name": "OUTPUT_TO_GAMMA",
"type": "boolean",
"defines": []
}
],
"blocks": [
{
"name": "Constants",
"members": [
{
"name": "mainTiling_Offset",
"type": 16,
"count": 1
},
{
"name": "frameTile_velLenScale",
"type": 16,
"count": 1
},
{
"name": "scale",
"type": 16,
"count": 1
}
],
"defines": [],
"binding": 0
},
{
"name": "FragConstants",
"members": [
{
"name": "tintColor",
"type": 16,
"count": 1
}
],
"defines": [],
"binding": 1
}
],
"samplers": [
{
"name": "mainTexture",
"type": 29,
"count": 1,
"defines": [],
"binding": 30
}
],
"record": null,
"name": "builtin-3d-trail|particle-trail:vs_main|tinted-fs:multiply"
},
{
"hash": 1704877102,
"glsl3": {
"vert": "\nprecision mediump float;\nuniform Constants{\n vec4 mainTiling_Offset;\n vec4 frameTile_velLenScale;\n vec4 scale;\n};\nuniform CCGlobal {\n mat4 cc_matView;\n mat4 cc_matViewInv;\n mat4 cc_matProj;\n mat4 cc_matProjInv;\n mat4 cc_matViewProj;\n mat4 cc_matViewProjInv;\n vec4 cc_cameraPos;\n vec4 cc_time;\n mediump vec4 cc_screenSize;\n mediump vec4 cc_screenScale;\n};\nuniform CCLocal {\n mat4 cc_matWorld;\n mat4 cc_matWorldIT;\n};\nout vec2 uv;\nout vec4 color;\nin vec3 a_position;\nin vec4 a_texCoord;\nin vec3 a_texCoord1;\nin vec3 a_texCoord2;\nin vec4 a_color;\n#if CC_DRAW_WIRE_FRAME\n out vec3 vBarycentric;\n#endif\nvec4 vs_main() {\n highp vec4 pos = vec4(a_position, 1);\n vec4 velocity = vec4(a_texCoord1.xyz, 0);\n#if !CC_USE_WORLD_SPACE\n pos = cc_matWorld * pos;\n velocity = cc_matWorld * velocity;\n#endif\n float vertOffset = (a_texCoord.x - 0.5) * a_texCoord.y;\n vec3 camUp = normalize(cross(pos.xyz - cc_cameraPos.xyz, velocity.xyz));\n pos.xyz += camUp * vertOffset;\n pos = cc_matViewProj * pos;\n uv = a_texCoord.zw * mainTiling_Offset.xy + mainTiling_Offset.zw;;\n color = a_color;\n#if CC_DRAW_WIRE_FRAME\n vBarycentric = a_texCoord2;\n#endif\n return pos;\n}\nvoid main() { gl_Position = vs_main(); }",
"frag": "\nprecision mediump float;\nvec4 CCFragOutput (vec4 color) {\n #if OUTPUT_TO_GAMMA\n color.rgb = sqrt(color.rgb);\n #endif\n\treturn color;\n}\nin vec2 uv;\nin vec4 color;\nuniform sampler2D mainTexture;\nvec4 addSmooth () {\n vec4 col = color * texture(mainTexture, uv);\n col.rgb *= col.a;\n return CCFragOutput(col);\n}\nout vec4 cc_FragColor;\nvoid main() { cc_FragColor = addSmooth(); }"
},
"glsl1": {
"vert": "\nprecision mediump float;\nuniform vec4 mainTiling_Offset;\nuniform mat4 cc_matViewProj;\nuniform vec4 cc_cameraPos;\nuniform mat4 cc_matWorld;\nvarying vec2 uv;\nvarying vec4 color;\nattribute vec3 a_position;\nattribute vec4 a_texCoord;\nattribute vec3 a_texCoord1;\nattribute vec3 a_texCoord2;\nattribute vec4 a_color;\n#if CC_DRAW_WIRE_FRAME\n varying vec3 vBarycentric;\n#endif\nvec4 vs_main() {\n highp vec4 pos = vec4(a_position, 1);\n vec4 velocity = vec4(a_texCoord1.xyz, 0);\n#if !CC_USE_WORLD_SPACE\n pos = cc_matWorld * pos;\n velocity = cc_matWorld * velocity;\n#endif\n float vertOffset = (a_texCoord.x - 0.5) * a_texCoord.y;\n vec3 camUp = normalize(cross(pos.xyz - cc_cameraPos.xyz, velocity.xyz));\n pos.xyz += camUp * vertOffset;\n pos = cc_matViewProj * pos;\n uv = a_texCoord.zw * mainTiling_Offset.xy + mainTiling_Offset.zw;;\n color = a_color;\n#if CC_DRAW_WIRE_FRAME\n vBarycentric = a_texCoord2;\n#endif\n return pos;\n}\nvoid main() { gl_Position = vs_main(); }",
"frag": "\nprecision mediump float;\nvec4 CCFragOutput (vec4 color) {\n #if OUTPUT_TO_GAMMA\n color.rgb = sqrt(color.rgb);\n #endif\n\treturn color;\n}\nvarying vec2 uv;\nvarying vec4 color;\nuniform sampler2D mainTexture;\nvec4 addSmooth () {\n vec4 col = color * texture2D(mainTexture, uv);\n col.rgb *= col.a;\n return CCFragOutput(col);\n}\nvoid main() { gl_FragColor = addSmooth(); }"
},
"builtins": {
"globals": {
"blocks": [
{
"name": "CCGlobal",
"defines": []
}
],
"samplers": []
},
"locals": {
"blocks": [
{
"name": "CCLocal",
"defines": []
}
],
"samplers": []
}
},
"defines": [
{
"name": "CC_DRAW_WIRE_FRAME",
"type": "boolean",
"defines": []
},
{
"name": "CC_USE_WORLD_SPACE",
"type": "boolean",
"defines": []
},
{
"name": "OUTPUT_TO_GAMMA",
"type": "boolean",
"defines": []
}
],
"blocks": [
{
"name": "Constants",
"members": [
{
"name": "mainTiling_Offset",
"type": 16,
"count": 1
},
{
"name": "frameTile_velLenScale",
"type": 16,
"count": 1
},
{
"name": "scale",
"type": 16,
"count": 1
}
],
"defines": [],
"binding": 0
}
],
"samplers": [
{
"name": "mainTexture",
"type": 29,
"count": 1,
"defines": [],
"binding": 30
}
],
"record": null,
"name": "builtin-3d-trail|particle-trail:vs_main|no-tint-fs:addSmooth"
},
{
"hash": 2717357054,
"glsl3": {
"vert": "\nprecision mediump float;\nuniform Constants{\n vec4 mainTiling_Offset;\n vec4 frameTile_velLenScale;\n vec4 scale;\n};\nuniform CCGlobal {\n mat4 cc_matView;\n mat4 cc_matViewInv;\n mat4 cc_matProj;\n mat4 cc_matProjInv;\n mat4 cc_matViewProj;\n mat4 cc_matViewProjInv;\n vec4 cc_cameraPos;\n vec4 cc_time;\n mediump vec4 cc_screenSize;\n mediump vec4 cc_screenScale;\n};\nuniform CCLocal {\n mat4 cc_matWorld;\n mat4 cc_matWorldIT;\n};\nout vec2 uv;\nout vec4 color;\nin vec3 a_position;\nin vec4 a_texCoord;\nin vec3 a_texCoord1;\nin vec3 a_texCoord2;\nin vec4 a_color;\n#if CC_DRAW_WIRE_FRAME\n out vec3 vBarycentric;\n#endif\nvec4 vs_main() {\n highp vec4 pos = vec4(a_position, 1);\n vec4 velocity = vec4(a_texCoord1.xyz, 0);\n#if !CC_USE_WORLD_SPACE\n pos = cc_matWorld * pos;\n velocity = cc_matWorld * velocity;\n#endif\n float vertOffset = (a_texCoord.x - 0.5) * a_texCoord.y;\n vec3 camUp = normalize(cross(pos.xyz - cc_cameraPos.xyz, velocity.xyz));\n pos.xyz += camUp * vertOffset;\n pos = cc_matViewProj * pos;\n uv = a_texCoord.zw * mainTiling_Offset.xy + mainTiling_Offset.zw;;\n color = a_color;\n#if CC_DRAW_WIRE_FRAME\n vBarycentric = a_texCoord2;\n#endif\n return pos;\n}\nvoid main() { gl_Position = vs_main(); }",
"frag": "\nprecision mediump float;\nvec4 CCFragOutput (vec4 color) {\n #if OUTPUT_TO_GAMMA\n color.rgb = sqrt(color.rgb);\n #endif\n\treturn color;\n}\nin vec2 uv;\nin vec4 color;\nuniform sampler2D mainTexture;\nvec4 premultiplied () {\n vec4 col = color * texture(mainTexture, uv) * color.a;\n return CCFragOutput(col);\n}\nout vec4 cc_FragColor;\nvoid main() { cc_FragColor = premultiplied(); }"
},
"glsl1": {
"vert": "\nprecision mediump float;\nuniform vec4 mainTiling_Offset;\nuniform mat4 cc_matViewProj;\nuniform vec4 cc_cameraPos;\nuniform mat4 cc_matWorld;\nvarying vec2 uv;\nvarying vec4 color;\nattribute vec3 a_position;\nattribute vec4 a_texCoord;\nattribute vec3 a_texCoord1;\nattribute vec3 a_texCoord2;\nattribute vec4 a_color;\n#if CC_DRAW_WIRE_FRAME\n varying vec3 vBarycentric;\n#endif\nvec4 vs_main() {\n highp vec4 pos = vec4(a_position, 1);\n vec4 velocity = vec4(a_texCoord1.xyz, 0);\n#if !CC_USE_WORLD_SPACE\n pos = cc_matWorld * pos;\n velocity = cc_matWorld * velocity;\n#endif\n float vertOffset = (a_texCoord.x - 0.5) * a_texCoord.y;\n vec3 camUp = normalize(cross(pos.xyz - cc_cameraPos.xyz, velocity.xyz));\n pos.xyz += camUp * vertOffset;\n pos = cc_matViewProj * pos;\n uv = a_texCoord.zw * mainTiling_Offset.xy + mainTiling_Offset.zw;;\n color = a_color;\n#if CC_DRAW_WIRE_FRAME\n vBarycentric = a_texCoord2;\n#endif\n return pos;\n}\nvoid main() { gl_Position = vs_main(); }",
"frag": "\nprecision mediump float;\nvec4 CCFragOutput (vec4 color) {\n #if OUTPUT_TO_GAMMA\n color.rgb = sqrt(color.rgb);\n #endif\n\treturn color;\n}\nvarying vec2 uv;\nvarying vec4 color;\nuniform sampler2D mainTexture;\nvec4 premultiplied () {\n vec4 col = color * texture2D(mainTexture, uv) * color.a;\n return CCFragOutput(col);\n}\nvoid main() { gl_FragColor = premultiplied(); }"
},
"builtins": {
"globals": {
"blocks": [
{
"name": "CCGlobal",
"defines": []
}
],
"samplers": []
},
"locals": {
"blocks": [
{
"name": "CCLocal",
"defines": []
}
],
"samplers": []
}
},
"defines": [
{
"name": "CC_DRAW_WIRE_FRAME",
"type": "boolean",
"defines": []
},
{
"name": "CC_USE_WORLD_SPACE",
"type": "boolean",
"defines": []
},
{
"name": "OUTPUT_TO_GAMMA",
"type": "boolean",
"defines": []
}
],
"blocks": [
{
"name": "Constants",
"members": [
{
"name": "mainTiling_Offset",
"type": 16,
"count": 1
},
{
"name": "frameTile_velLenScale",
"type": 16,
"count": 1
},
{
"name": "scale",
"type": 16,
"count": 1
}
],
"defines": [],
"binding": 0
}
],
"samplers": [
{
"name": "mainTexture",
"type": 29,
"count": 1,
"defines": [],
"binding": 30
}
],
"record": null,
"name": "builtin-3d-trail|particle-trail:vs_main|no-tint-fs:premultiplied"
}
]
},
{
"__type__": "cc.Material",
"_name": "builtin-3d-trail",
"_effectAsset": {
"__uuid__": "2afAA24LNP4YmYiaVLiivs"
},
"_techniqueData": {
"0": {
"props": {
"mainTexture": {
"__uuid__": "02delMVqdBD70a/HSD99FK"
}
}
}
}
}
]
\ No newline at end of file
[{"__type__":"cc.EffectAsset","_name":"builtin-2d-graphics","techniques":[{"passes":[{"blendState":{"targets":[{"blend":true,"blendSrc":1,"blendDst":771,"blendSrcAlpha":1,"blendDstAlpha":771}]},"rasterizerState":{"cullMode":0},"properties":{"alphaThreshold":{"value":[0.5],"type":13}},"program":"builtin-2d-graphics|vs|fs"}]}],"shaders":[{"hash":550349795,"glsl3":{"vert":"\nprecision highp float;\nuniform CCGlobal {\n mat4 cc_matView;\n mat4 cc_matViewInv;\n mat4 cc_matProj;\n mat4 cc_matProjInv;\n mat4 cc_matViewProj;\n mat4 cc_matViewProjInv;\n vec4 cc_cameraPos;\n vec4 cc_time;\n mediump vec4 cc_screenSize;\n mediump vec4 cc_screenScale;\n};\nuniform CCLocal {\n mat4 cc_matWorld;\n mat4 cc_matWorldIT;\n};\nin vec3 a_position;\nin vec4 a_color;\nout vec4 v_color;\nin float a_dist;\nout float v_dist;\nvoid main () {\n vec4 pos = vec4(a_position, 1);\n pos = cc_matViewProj * cc_matWorld * pos;\n v_color = a_color;\n v_dist = a_dist;\n gl_Position = pos;\n}","frag":"\n#if CC_SUPPORT_standard_derivatives\n #extension GL_OES_standard_derivatives : enable\n#endif\nprecision highp float;\n#if USE_ALPHA_TEST\n uniform ALPHA_TEST {\n float alphaThreshold;\n };\n#endif\nvoid ALPHA_TEST (in vec4 color) {\n #if USE_ALPHA_TEST\n if (color.a < alphaThreshold) discard;\n #endif\n}\nvoid ALPHA_TEST (in float alpha) {\n #if USE_ALPHA_TEST\n if (alpha < alphaThreshold) discard;\n #endif\n}\nin vec4 v_color;\nin float v_dist;\nvoid main () {\n vec4 o = v_color;\n ALPHA_TEST(o);\n #if CC_SUPPORT_standard_derivatives\n float aa = fwidth(v_dist);\n #else\n float aa = 0.05;\n #endif\n float alpha = 1. - smoothstep(-aa, 0., abs(v_dist) - 1.0);\n o.rgb *= o.a;\n o *= alpha;\n gl_FragColor = o;\n}"},"glsl1":{"vert":"\nprecision highp float;\nuniform mat4 cc_matViewProj;\nuniform mat4 cc_matWorld;\nattribute vec3 a_position;\nattribute vec4 a_color;\nvarying vec4 v_color;\nattribute float a_dist;\nvarying float v_dist;\nvoid main () {\n vec4 pos = vec4(a_position, 1);\n pos = cc_matViewProj * cc_matWorld * pos;\n v_color = a_color;\n v_dist = a_dist;\n gl_Position = pos;\n}","frag":"\n#if CC_SUPPORT_standard_derivatives\n #extension GL_OES_standard_derivatives : enable\n#endif\nprecision highp float;\n#if USE_ALPHA_TEST\n uniform float alphaThreshold;\n#endif\nvoid ALPHA_TEST (in vec4 color) {\n #if USE_ALPHA_TEST\n if (color.a < alphaThreshold) discard;\n #endif\n}\nvoid ALPHA_TEST (in float alpha) {\n #if USE_ALPHA_TEST\n if (alpha < alphaThreshold) discard;\n #endif\n}\nvarying vec4 v_color;\nvarying float v_dist;\nvoid main () {\n vec4 o = v_color;\n ALPHA_TEST(o);\n #if CC_SUPPORT_standard_derivatives\n float aa = fwidth(v_dist);\n #else\n float aa = 0.05;\n #endif\n float alpha = 1. - smoothstep(-aa, 0., abs(v_dist) - 1.0);\n o.rgb *= o.a;\n o *= alpha;\n gl_FragColor = o;\n}"},"builtins":{"globals":{"blocks":[{"name":"CCGlobal","defines":[]}],"samplers":[]},"locals":{"blocks":[{"name":"CCLocal","defines":[]}],"samplers":[]}},"defines":[{"name":"CC_SUPPORT_standard_derivatives","type":"boolean","defines":[]},{"name":"USE_ALPHA_TEST","type":"boolean","defines":[]}],"blocks":[{"name":"ALPHA_TEST","members":[{"name":"alphaThreshold","type":13,"count":1}],"defines":["USE_ALPHA_TEST"],"binding":0}],"samplers":[],"record":null,"name":"builtin-2d-graphics|vs|fs"}]},{"__type__":"cc.Material","_name":"builtin-2d-graphics","_effectAsset":{"__uuid__":"30aC+Hnw1PF4pEcoY3kUYb"},"_techniqueData":{"0":{"defines":{}}}}]
\ No newline at end of file
[
{
"__type__": "cc.EffectAsset",
"_name": "builtin-2d-graphics",
"techniques": [
{
"passes": [
{
"blendState": {
"targets": [
{
"blend": true,
"blendSrc": 1,
"blendDst": 771,
"blendSrcAlpha": 1,
"blendDstAlpha": 771
}
]
},
"rasterizerState": {
"cullMode": 0
},
"properties": {
"alphaThreshold": {
"value": [
0.5
],
"type": 13
}
},
"program": "builtin-2d-graphics|vs|fs"
}
]
}
],
"shaders": [
{
"hash": 550349795,
"glsl3": {
"vert": "\nprecision highp float;\nuniform CCGlobal {\n mat4 cc_matView;\n mat4 cc_matViewInv;\n mat4 cc_matProj;\n mat4 cc_matProjInv;\n mat4 cc_matViewProj;\n mat4 cc_matViewProjInv;\n vec4 cc_cameraPos;\n vec4 cc_time;\n mediump vec4 cc_screenSize;\n mediump vec4 cc_screenScale;\n};\nuniform CCLocal {\n mat4 cc_matWorld;\n mat4 cc_matWorldIT;\n};\nin vec3 a_position;\nin vec4 a_color;\nout vec4 v_color;\nin float a_dist;\nout float v_dist;\nvoid main () {\n vec4 pos = vec4(a_position, 1);\n pos = cc_matViewProj * cc_matWorld * pos;\n v_color = a_color;\n v_dist = a_dist;\n gl_Position = pos;\n}",
"frag": "\n#if CC_SUPPORT_standard_derivatives\n #extension GL_OES_standard_derivatives : enable\n#endif\nprecision highp float;\n#if USE_ALPHA_TEST\n uniform ALPHA_TEST {\n float alphaThreshold;\n };\n#endif\nvoid ALPHA_TEST (in vec4 color) {\n #if USE_ALPHA_TEST\n if (color.a < alphaThreshold) discard;\n #endif\n}\nvoid ALPHA_TEST (in float alpha) {\n #if USE_ALPHA_TEST\n if (alpha < alphaThreshold) discard;\n #endif\n}\nin vec4 v_color;\nin float v_dist;\nvoid main () {\n vec4 o = v_color;\n ALPHA_TEST(o);\n #if CC_SUPPORT_standard_derivatives\n float aa = fwidth(v_dist);\n #else\n float aa = 0.05;\n #endif\n float alpha = 1. - smoothstep(-aa, 0., abs(v_dist) - 1.0);\n o.rgb *= o.a;\n o *= alpha;\n gl_FragColor = o;\n}"
},
"glsl1": {
"vert": "\nprecision highp float;\nuniform mat4 cc_matViewProj;\nuniform mat4 cc_matWorld;\nattribute vec3 a_position;\nattribute vec4 a_color;\nvarying vec4 v_color;\nattribute float a_dist;\nvarying float v_dist;\nvoid main () {\n vec4 pos = vec4(a_position, 1);\n pos = cc_matViewProj * cc_matWorld * pos;\n v_color = a_color;\n v_dist = a_dist;\n gl_Position = pos;\n}",
"frag": "\n#if CC_SUPPORT_standard_derivatives\n #extension GL_OES_standard_derivatives : enable\n#endif\nprecision highp float;\n#if USE_ALPHA_TEST\n uniform float alphaThreshold;\n#endif\nvoid ALPHA_TEST (in vec4 color) {\n #if USE_ALPHA_TEST\n if (color.a < alphaThreshold) discard;\n #endif\n}\nvoid ALPHA_TEST (in float alpha) {\n #if USE_ALPHA_TEST\n if (alpha < alphaThreshold) discard;\n #endif\n}\nvarying vec4 v_color;\nvarying float v_dist;\nvoid main () {\n vec4 o = v_color;\n ALPHA_TEST(o);\n #if CC_SUPPORT_standard_derivatives\n float aa = fwidth(v_dist);\n #else\n float aa = 0.05;\n #endif\n float alpha = 1. - smoothstep(-aa, 0., abs(v_dist) - 1.0);\n o.rgb *= o.a;\n o *= alpha;\n gl_FragColor = o;\n}"
},
"builtins": {
"globals": {
"blocks": [
{
"name": "CCGlobal",
"defines": []
}
],
"samplers": []
},
"locals": {
"blocks": [
{
"name": "CCLocal",
"defines": []
}
],
"samplers": []
}
},
"defines": [
{
"name": "CC_SUPPORT_standard_derivatives",
"type": "boolean",
"defines": []
},
{
"name": "USE_ALPHA_TEST",
"type": "boolean",
"defines": []
}
],
"blocks": [
{
"name": "ALPHA_TEST",
"members": [
{
"name": "alphaThreshold",
"type": 13,
"count": 1
}
],
"defines": [
"USE_ALPHA_TEST"
],
"binding": 0
}
],
"samplers": [],
"record": null,
"name": "builtin-2d-graphics|vs|fs"
}
]
},
{
"__type__": "cc.Material",
"_name": "builtin-2d-graphics",
"_effectAsset": {
"__uuid__": "30aC+Hnw1PF4pEcoY3kUYb"
},
"_techniqueData": {
"0": {
"defines": {}
}
}
}
]
\ No newline at end of file
[{"__type__":"cc.EffectAsset","_name":"builtin-clear-stencil","techniques":[{"passes":[{"blendState":{"targets":[{"blend":true}]},"rasterizerState":{"cullMode":0},"program":"builtin-clear-stencil|vs|fs"}]}],"shaders":[{"hash":2075641479,"glsl3":{"vert":"\nprecision highp float;\nin vec3 a_position;\nvoid main () {\n gl_Position = vec4(a_position, 1);\n}","frag":"\nprecision highp float;\nvoid main () {\n gl_FragColor = vec4(1.0);\n}"},"glsl1":{"vert":"\nprecision highp float;\nattribute vec3 a_position;\nvoid main () {\n gl_Position = vec4(a_position, 1);\n}","frag":"\nprecision highp float;\nvoid main () {\n gl_FragColor = vec4(1.0);\n}"},"builtins":{"globals":{"blocks":[],"samplers":[]},"locals":{"blocks":[],"samplers":[]}},"defines":[],"blocks":[],"samplers":[],"record":null,"name":"builtin-clear-stencil|vs|fs"}]},{"__type__":"cc.Material","_name":"builtin-clear-stencil","_effectAsset":{"__uuid__":"c0BAyVxX9JzZy8EjFrc9DU"},"_techniqueData":{}}]
\ No newline at end of file
[
{
"__type__": "cc.EffectAsset",
"_name": "builtin-clear-stencil",
"techniques": [
{
"passes": [
{
"blendState": {
"targets": [
{
"blend": true
}
]
},
"rasterizerState": {
"cullMode": 0
},
"program": "builtin-clear-stencil|vs|fs"
}
]
}
],
"shaders": [
{
"hash": 2075641479,
"glsl3": {
"vert": "\nprecision highp float;\nin vec3 a_position;\nvoid main () {\n gl_Position = vec4(a_position, 1);\n}",
"frag": "\nprecision highp float;\nvoid main () {\n gl_FragColor = vec4(1.0);\n}"
},
"glsl1": {
"vert": "\nprecision highp float;\nattribute vec3 a_position;\nvoid main () {\n gl_Position = vec4(a_position, 1);\n}",
"frag": "\nprecision highp float;\nvoid main () {\n gl_FragColor = vec4(1.0);\n}"
},
"builtins": {
"globals": {
"blocks": [],
"samplers": []
},
"locals": {
"blocks": [],
"samplers": []
}
},
"defines": [],
"blocks": [],
"samplers": [],
"record": null,
"name": "builtin-clear-stencil|vs|fs"
}
]
},
{
"__type__": "cc.Material",
"_name": "builtin-clear-stencil",
"_effectAsset": {
"__uuid__": "c0BAyVxX9JzZy8EjFrc9DU"
},
"_techniqueData": {}
}
]
\ No newline at end of file
[{"__type__":"cc.EffectAsset","_name":"builtin-2d-spine","techniques":[{"passes":[{"blendState":{"targets":[{"blend":true}]},"rasterizerState":{"cullMode":0},"properties":{"texture":{"value":"white","type":29},"alphaThreshold":{"value":[0.5],"type":13}},"program":"builtin-2d-spine|vs|fs"}]}],"shaders":[{"hash":3550530479,"glsl3":{"vert":"\nprecision highp float;\nuniform CCGlobal {\n mat4 cc_matView;\n mat4 cc_matViewInv;\n mat4 cc_matProj;\n mat4 cc_matProjInv;\n mat4 cc_matViewProj;\n mat4 cc_matViewProjInv;\n vec4 cc_cameraPos;\n vec4 cc_time;\n mediump vec4 cc_screenSize;\n mediump vec4 cc_screenScale;\n};\nuniform CCLocal {\n mat4 cc_matWorld;\n mat4 cc_matWorldIT;\n};\nin vec3 a_position;\nin vec4 a_color;\n#if USE_TINT\n in vec4 a_color0;\n#endif\nin vec2 a_uv0;\nout vec2 v_uv0;\nout vec4 v_light;\n#if USE_TINT\n out vec4 v_dark;\n#endif\nvoid main () {\n mat4 mvp;\n #if CC_USE_MODEL\n mvp = cc_matViewProj * cc_matWorld;\n #else\n mvp = cc_matViewProj;\n #endif\n v_uv0 = a_uv0;\n v_light = a_color;\n #if USE_TINT\n v_dark = a_color0;\n #endif\n gl_Position = mvp * vec4(a_position, 1);\n}","frag":"\nprecision highp float;\nuniform sampler2D texture;\nin vec2 v_uv0;\nin vec4 v_light;\n#if USE_TINT\n in vec4 v_dark;\n#endif\n#if USE_ALPHA_TEST\n uniform ALPHA_TEST {\n float alphaThreshold;\n };\n#endif\nvoid ALPHA_TEST (in vec4 color) {\n #if USE_ALPHA_TEST\n if (color.a < alphaThreshold) discard;\n #endif\n}\nvoid ALPHA_TEST (in float alpha) {\n #if USE_ALPHA_TEST\n if (alpha < alphaThreshold) discard;\n #endif\n}\nvoid main () {\n vec4 texColor = vec4(1.0);\n vec4 texture_tmp = texture(texture, v_uv0);\n #if CC_USE_ALPHA_ATLAS_texture\n texture_tmp.a *= texture(texture, v_uv0 + vec2(0, 0.5)).r;\n #endif\n #if INPUT_IS_GAMMA\n texColor.rgb *= (texture_tmp.rgb * texture_tmp.rgb);\n texColor.a *= texture_tmp.a;\n #else\n texColor *= texture_tmp;\n #endif\n vec4 finalColor;\n #if USE_TINT\n finalColor.a = v_light.a * texColor.a;\n finalColor.rgb = ((texColor.a - 1.0) * v_dark.a + 1.0 - texColor.rgb) * v_dark.rgb + texColor.rgb * v_light.rgb;\n #else\n finalColor = texColor * v_light;\n #endif\n ALPHA_TEST(finalColor);\n gl_FragColor = finalColor;\n}"},"glsl1":{"vert":"\nprecision highp float;\nuniform mat4 cc_matViewProj;\nuniform mat4 cc_matWorld;\nattribute vec3 a_position;\nattribute vec4 a_color;\n#if USE_TINT\n attribute vec4 a_color0;\n#endif\nattribute vec2 a_uv0;\nvarying vec2 v_uv0;\nvarying vec4 v_light;\n#if USE_TINT\n varying vec4 v_dark;\n#endif\nvoid main () {\n mat4 mvp;\n #if CC_USE_MODEL\n mvp = cc_matViewProj * cc_matWorld;\n #else\n mvp = cc_matViewProj;\n #endif\n v_uv0 = a_uv0;\n v_light = a_color;\n #if USE_TINT\n v_dark = a_color0;\n #endif\n gl_Position = mvp * vec4(a_position, 1);\n}","frag":"\nprecision highp float;\nuniform sampler2D texture;\nvarying vec2 v_uv0;\nvarying vec4 v_light;\n#if USE_TINT\n varying vec4 v_dark;\n#endif\n#if USE_ALPHA_TEST\n uniform float alphaThreshold;\n#endif\nvoid ALPHA_TEST (in vec4 color) {\n #if USE_ALPHA_TEST\n if (color.a < alphaThreshold) discard;\n #endif\n}\nvoid ALPHA_TEST (in float alpha) {\n #if USE_ALPHA_TEST\n if (alpha < alphaThreshold) discard;\n #endif\n}\nvoid main () {\n vec4 texColor = vec4(1.0);\n vec4 texture_tmp = texture2D(texture, v_uv0);\n #if CC_USE_ALPHA_ATLAS_texture\n texture_tmp.a *= texture2D(texture, v_uv0 + vec2(0, 0.5)).r;\n #endif\n #if INPUT_IS_GAMMA\n texColor.rgb *= (texture_tmp.rgb * texture_tmp.rgb);\n texColor.a *= texture_tmp.a;\n #else\n texColor *= texture_tmp;\n #endif\n vec4 finalColor;\n #if USE_TINT\n finalColor.a = v_light.a * texColor.a;\n finalColor.rgb = ((texColor.a - 1.0) * v_dark.a + 1.0 - texColor.rgb) * v_dark.rgb + texColor.rgb * v_light.rgb;\n #else\n finalColor = texColor * v_light;\n #endif\n ALPHA_TEST(finalColor);\n gl_FragColor = finalColor;\n}"},"builtins":{"globals":{"blocks":[{"name":"CCGlobal","defines":[]}],"samplers":[]},"locals":{"blocks":[{"name":"CCLocal","defines":[]}],"samplers":[]}},"defines":[{"name":"USE_TINT","type":"boolean","defines":[]},{"name":"CC_USE_MODEL","type":"boolean","defines":[]},{"name":"USE_ALPHA_TEST","type":"boolean","defines":[]},{"name":"CC_USE_ALPHA_ATLAS_texture","type":"boolean","defines":[]},{"name":"INPUT_IS_GAMMA","type":"boolean","defines":[]}],"blocks":[{"name":"ALPHA_TEST","members":[{"name":"alphaThreshold","type":13,"count":1}],"defines":["USE_ALPHA_TEST"],"binding":0}],"samplers":[{"name":"texture","type":29,"count":1,"defines":[],"binding":30}],"record":null,"name":"builtin-2d-spine|vs|fs"}]},{"__type__":"cc.Material","_name":"builtin-2d-spine","_effectAsset":{"__uuid__":"0ek66qC1NOQLjgYmi04HvX"},"_techniqueData":{}}]
\ No newline at end of file
[
{
"__type__": "cc.EffectAsset",
"_name": "builtin-2d-spine",
"techniques": [
{
"passes": [
{
"blendState": {
"targets": [
{
"blend": true
}
]
},
"rasterizerState": {
"cullMode": 0
},
"properties": {
"texture": {
"value": "white",
"type": 29
},
"alphaThreshold": {
"value": [
0.5
],
"type": 13
}
},
"program": "builtin-2d-spine|vs|fs"
}
]
}
],
"shaders": [
{
"hash": 3550530479,
"glsl3": {
"vert": "\nprecision highp float;\nuniform CCGlobal {\n mat4 cc_matView;\n mat4 cc_matViewInv;\n mat4 cc_matProj;\n mat4 cc_matProjInv;\n mat4 cc_matViewProj;\n mat4 cc_matViewProjInv;\n vec4 cc_cameraPos;\n vec4 cc_time;\n mediump vec4 cc_screenSize;\n mediump vec4 cc_screenScale;\n};\nuniform CCLocal {\n mat4 cc_matWorld;\n mat4 cc_matWorldIT;\n};\nin vec3 a_position;\nin vec4 a_color;\n#if USE_TINT\n in vec4 a_color0;\n#endif\nin vec2 a_uv0;\nout vec2 v_uv0;\nout vec4 v_light;\n#if USE_TINT\n out vec4 v_dark;\n#endif\nvoid main () {\n mat4 mvp;\n #if CC_USE_MODEL\n mvp = cc_matViewProj * cc_matWorld;\n #else\n mvp = cc_matViewProj;\n #endif\n v_uv0 = a_uv0;\n v_light = a_color;\n #if USE_TINT\n v_dark = a_color0;\n #endif\n gl_Position = mvp * vec4(a_position, 1);\n}",
"frag": "\nprecision highp float;\nuniform sampler2D texture;\nin vec2 v_uv0;\nin vec4 v_light;\n#if USE_TINT\n in vec4 v_dark;\n#endif\n#if USE_ALPHA_TEST\n uniform ALPHA_TEST {\n float alphaThreshold;\n };\n#endif\nvoid ALPHA_TEST (in vec4 color) {\n #if USE_ALPHA_TEST\n if (color.a < alphaThreshold) discard;\n #endif\n}\nvoid ALPHA_TEST (in float alpha) {\n #if USE_ALPHA_TEST\n if (alpha < alphaThreshold) discard;\n #endif\n}\nvoid main () {\n vec4 texColor = vec4(1.0);\n vec4 texture_tmp = texture(texture, v_uv0);\n #if CC_USE_ALPHA_ATLAS_texture\n texture_tmp.a *= texture(texture, v_uv0 + vec2(0, 0.5)).r;\n #endif\n #if INPUT_IS_GAMMA\n texColor.rgb *= (texture_tmp.rgb * texture_tmp.rgb);\n texColor.a *= texture_tmp.a;\n #else\n texColor *= texture_tmp;\n #endif\n vec4 finalColor;\n #if USE_TINT\n finalColor.a = v_light.a * texColor.a;\n finalColor.rgb = ((texColor.a - 1.0) * v_dark.a + 1.0 - texColor.rgb) * v_dark.rgb + texColor.rgb * v_light.rgb;\n #else\n finalColor = texColor * v_light;\n #endif\n ALPHA_TEST(finalColor);\n gl_FragColor = finalColor;\n}"
},
"glsl1": {
"vert": "\nprecision highp float;\nuniform mat4 cc_matViewProj;\nuniform mat4 cc_matWorld;\nattribute vec3 a_position;\nattribute vec4 a_color;\n#if USE_TINT\n attribute vec4 a_color0;\n#endif\nattribute vec2 a_uv0;\nvarying vec2 v_uv0;\nvarying vec4 v_light;\n#if USE_TINT\n varying vec4 v_dark;\n#endif\nvoid main () {\n mat4 mvp;\n #if CC_USE_MODEL\n mvp = cc_matViewProj * cc_matWorld;\n #else\n mvp = cc_matViewProj;\n #endif\n v_uv0 = a_uv0;\n v_light = a_color;\n #if USE_TINT\n v_dark = a_color0;\n #endif\n gl_Position = mvp * vec4(a_position, 1);\n}",
"frag": "\nprecision highp float;\nuniform sampler2D texture;\nvarying vec2 v_uv0;\nvarying vec4 v_light;\n#if USE_TINT\n varying vec4 v_dark;\n#endif\n#if USE_ALPHA_TEST\n uniform float alphaThreshold;\n#endif\nvoid ALPHA_TEST (in vec4 color) {\n #if USE_ALPHA_TEST\n if (color.a < alphaThreshold) discard;\n #endif\n}\nvoid ALPHA_TEST (in float alpha) {\n #if USE_ALPHA_TEST\n if (alpha < alphaThreshold) discard;\n #endif\n}\nvoid main () {\n vec4 texColor = vec4(1.0);\n vec4 texture_tmp = texture2D(texture, v_uv0);\n #if CC_USE_ALPHA_ATLAS_texture\n texture_tmp.a *= texture2D(texture, v_uv0 + vec2(0, 0.5)).r;\n #endif\n #if INPUT_IS_GAMMA\n texColor.rgb *= (texture_tmp.rgb * texture_tmp.rgb);\n texColor.a *= texture_tmp.a;\n #else\n texColor *= texture_tmp;\n #endif\n vec4 finalColor;\n #if USE_TINT\n finalColor.a = v_light.a * texColor.a;\n finalColor.rgb = ((texColor.a - 1.0) * v_dark.a + 1.0 - texColor.rgb) * v_dark.rgb + texColor.rgb * v_light.rgb;\n #else\n finalColor = texColor * v_light;\n #endif\n ALPHA_TEST(finalColor);\n gl_FragColor = finalColor;\n}"
},
"builtins": {
"globals": {
"blocks": [
{
"name": "CCGlobal",
"defines": []
}
],
"samplers": []
},
"locals": {
"blocks": [
{
"name": "CCLocal",
"defines": []
}
],
"samplers": []
}
},
"defines": [
{
"name": "USE_TINT",
"type": "boolean",
"defines": []
},
{
"name": "CC_USE_MODEL",
"type": "boolean",
"defines": []
},
{
"name": "USE_ALPHA_TEST",
"type": "boolean",
"defines": []
},
{
"name": "CC_USE_ALPHA_ATLAS_texture",
"type": "boolean",
"defines": []
},
{
"name": "INPUT_IS_GAMMA",
"type": "boolean",
"defines": []
}
],
"blocks": [
{
"name": "ALPHA_TEST",
"members": [
{
"name": "alphaThreshold",
"type": 13,
"count": 1
}
],
"defines": [
"USE_ALPHA_TEST"
],
"binding": 0
}
],
"samplers": [
{
"name": "texture",
"type": 29,
"count": 1,
"defines": [],
"binding": 30
}
],
"record": null,
"name": "builtin-2d-spine|vs|fs"
}
]
},
{
"__type__": "cc.Material",
"_name": "builtin-2d-spine",
"_effectAsset": {
"__uuid__": "0ek66qC1NOQLjgYmi04HvX"
},
"_techniqueData": {}
}
]
\ No newline at end of file
{"type":"cc.Texture2D","data":"0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,1,0,0"}
\ No newline at end of file
{
"type": "cc.Texture2D",
"data": "0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,1,0,0"
}
\ No newline at end of file
{"__type__":"cc.EffectAsset","_name":"builtin-2d-sprite","techniques":[{"passes":[{"blendState":{"targets":[{"blend":true}]},"rasterizerState":{"cullMode":0},"properties":{"texture":{"value":"white","type":29},"alphaThreshold":{"value":[0.5],"type":13}},"program":"builtin-2d-sprite|vs|fs"}]}],"shaders":[{"hash":3278106612,"glsl3":{"vert":"\nprecision highp float;\nuniform CCGlobal {\n mat4 cc_matView;\n mat4 cc_matViewInv;\n mat4 cc_matProj;\n mat4 cc_matProjInv;\n mat4 cc_matViewProj;\n mat4 cc_matViewProjInv;\n vec4 cc_cameraPos;\n vec4 cc_time;\n mediump vec4 cc_screenSize;\n mediump vec4 cc_screenScale;\n};\nuniform CCLocal {\n mat4 cc_matWorld;\n mat4 cc_matWorldIT;\n};\nin vec3 a_position;\nin vec4 a_color;\nout vec4 v_color;\n#if USE_TEXTURE\nin vec2 a_uv0;\nout vec2 v_uv0;\n#endif\nvoid main () {\n vec4 pos = vec4(a_position, 1);\n #if CC_USE_MODEL\n pos = cc_matViewProj * cc_matWorld * pos;\n #else\n pos = cc_matViewProj * pos;\n #endif\n #if USE_TEXTURE\n v_uv0 = a_uv0;\n #endif\n v_color = a_color;\n gl_Position = pos;\n}","frag":"\nprecision highp float;\n#if USE_ALPHA_TEST\n uniform ALPHA_TEST {\n float alphaThreshold;\n };\n#endif\nvoid ALPHA_TEST (in vec4 color) {\n #if USE_ALPHA_TEST\n if (color.a < alphaThreshold) discard;\n #endif\n}\nvoid ALPHA_TEST (in float alpha) {\n #if USE_ALPHA_TEST\n if (alpha < alphaThreshold) discard;\n #endif\n}\nin vec4 v_color;\n#if USE_TEXTURE\nin vec2 v_uv0;\nuniform sampler2D texture;\n#endif\nvoid main () {\n vec4 o = vec4(1, 1, 1, 1);\n #if USE_TEXTURE\n vec4 texture_tmp = texture(texture, v_uv0);\n #if CC_USE_ALPHA_ATLAS_texture\n texture_tmp.a *= texture(texture, v_uv0 + vec2(0, 0.5)).r;\n #endif\n #if INPUT_IS_GAMMA\n o.rgb *= (texture_tmp.rgb * texture_tmp.rgb);\n o.a *= texture_tmp.a;\n #else\n o *= texture_tmp;\n #endif\n #endif\n o *= v_color;\n ALPHA_TEST(o);\n gl_FragColor = o;\n}"},"glsl1":{"vert":"\nprecision highp float;\nuniform mat4 cc_matViewProj;\nuniform mat4 cc_matWorld;\nattribute vec3 a_position;\nattribute vec4 a_color;\nvarying vec4 v_color;\n#if USE_TEXTURE\nattribute vec2 a_uv0;\nvarying vec2 v_uv0;\n#endif\nvoid main () {\n vec4 pos = vec4(a_position, 1);\n #if CC_USE_MODEL\n pos = cc_matViewProj * cc_matWorld * pos;\n #else\n pos = cc_matViewProj * pos;\n #endif\n #if USE_TEXTURE\n v_uv0 = a_uv0;\n #endif\n v_color = a_color;\n gl_Position = pos;\n}","frag":"\nprecision highp float;\n#if USE_ALPHA_TEST\n uniform float alphaThreshold;\n#endif\nvoid ALPHA_TEST (in vec4 color) {\n #if USE_ALPHA_TEST\n if (color.a < alphaThreshold) discard;\n #endif\n}\nvoid ALPHA_TEST (in float alpha) {\n #if USE_ALPHA_TEST\n if (alpha < alphaThreshold) discard;\n #endif\n}\nvarying vec4 v_color;\n#if USE_TEXTURE\nvarying vec2 v_uv0;\nuniform sampler2D texture;\n#endif\nvoid main () {\n vec4 o = vec4(1, 1, 1, 1);\n #if USE_TEXTURE\n vec4 texture_tmp = texture2D(texture, v_uv0);\n #if CC_USE_ALPHA_ATLAS_texture\n texture_tmp.a *= texture2D(texture, v_uv0 + vec2(0, 0.5)).r;\n #endif\n #if INPUT_IS_GAMMA\n o.rgb *= (texture_tmp.rgb * texture_tmp.rgb);\n o.a *= texture_tmp.a;\n #else\n o *= texture_tmp;\n #endif\n #endif\n o *= v_color;\n ALPHA_TEST(o);\n gl_FragColor = o;\n}"},"builtins":{"globals":{"blocks":[{"name":"CCGlobal","defines":[]}],"samplers":[]},"locals":{"blocks":[{"name":"CCLocal","defines":[]}],"samplers":[]}},"defines":[{"name":"USE_TEXTURE","type":"boolean","defines":[]},{"name":"CC_USE_MODEL","type":"boolean","defines":[]},{"name":"USE_ALPHA_TEST","type":"boolean","defines":[]},{"name":"CC_USE_ALPHA_ATLAS_texture","type":"boolean","defines":["USE_TEXTURE"]},{"name":"INPUT_IS_GAMMA","type":"boolean","defines":["USE_TEXTURE"]}],"blocks":[{"name":"ALPHA_TEST","members":[{"name":"alphaThreshold","type":13,"count":1}],"defines":["USE_ALPHA_TEST"],"binding":0}],"samplers":[{"name":"texture","type":29,"count":1,"defines":["USE_TEXTURE"],"binding":30}],"record":null,"name":"builtin-2d-sprite|vs|fs"}]}
\ No newline at end of file
{
"__type__": "cc.EffectAsset",
"_name": "builtin-2d-sprite",
"techniques": [
{
"passes": [
{
"blendState": {
"targets": [
{
"blend": true
}
]
},
"rasterizerState": {
"cullMode": 0
},
"properties": {
"texture": {
"value": "white",
"type": 29
},
"alphaThreshold": {
"value": [
0.5
],
"type": 13
}
},
"program": "builtin-2d-sprite|vs|fs"
}
]
}
],
"shaders": [
{
"hash": 3278106612,
"glsl3": {
"vert": "\nprecision highp float;\nuniform CCGlobal {\n mat4 cc_matView;\n mat4 cc_matViewInv;\n mat4 cc_matProj;\n mat4 cc_matProjInv;\n mat4 cc_matViewProj;\n mat4 cc_matViewProjInv;\n vec4 cc_cameraPos;\n vec4 cc_time;\n mediump vec4 cc_screenSize;\n mediump vec4 cc_screenScale;\n};\nuniform CCLocal {\n mat4 cc_matWorld;\n mat4 cc_matWorldIT;\n};\nin vec3 a_position;\nin vec4 a_color;\nout vec4 v_color;\n#if USE_TEXTURE\nin vec2 a_uv0;\nout vec2 v_uv0;\n#endif\nvoid main () {\n vec4 pos = vec4(a_position, 1);\n #if CC_USE_MODEL\n pos = cc_matViewProj * cc_matWorld * pos;\n #else\n pos = cc_matViewProj * pos;\n #endif\n #if USE_TEXTURE\n v_uv0 = a_uv0;\n #endif\n v_color = a_color;\n gl_Position = pos;\n}",
"frag": "\nprecision highp float;\n#if USE_ALPHA_TEST\n uniform ALPHA_TEST {\n float alphaThreshold;\n };\n#endif\nvoid ALPHA_TEST (in vec4 color) {\n #if USE_ALPHA_TEST\n if (color.a < alphaThreshold) discard;\n #endif\n}\nvoid ALPHA_TEST (in float alpha) {\n #if USE_ALPHA_TEST\n if (alpha < alphaThreshold) discard;\n #endif\n}\nin vec4 v_color;\n#if USE_TEXTURE\nin vec2 v_uv0;\nuniform sampler2D texture;\n#endif\nvoid main () {\n vec4 o = vec4(1, 1, 1, 1);\n #if USE_TEXTURE\n vec4 texture_tmp = texture(texture, v_uv0);\n #if CC_USE_ALPHA_ATLAS_texture\n texture_tmp.a *= texture(texture, v_uv0 + vec2(0, 0.5)).r;\n #endif\n #if INPUT_IS_GAMMA\n o.rgb *= (texture_tmp.rgb * texture_tmp.rgb);\n o.a *= texture_tmp.a;\n #else\n o *= texture_tmp;\n #endif\n #endif\n o *= v_color;\n ALPHA_TEST(o);\n gl_FragColor = o;\n}"
},
"glsl1": {
"vert": "\nprecision highp float;\nuniform mat4 cc_matViewProj;\nuniform mat4 cc_matWorld;\nattribute vec3 a_position;\nattribute vec4 a_color;\nvarying vec4 v_color;\n#if USE_TEXTURE\nattribute vec2 a_uv0;\nvarying vec2 v_uv0;\n#endif\nvoid main () {\n vec4 pos = vec4(a_position, 1);\n #if CC_USE_MODEL\n pos = cc_matViewProj * cc_matWorld * pos;\n #else\n pos = cc_matViewProj * pos;\n #endif\n #if USE_TEXTURE\n v_uv0 = a_uv0;\n #endif\n v_color = a_color;\n gl_Position = pos;\n}",
"frag": "\nprecision highp float;\n#if USE_ALPHA_TEST\n uniform float alphaThreshold;\n#endif\nvoid ALPHA_TEST (in vec4 color) {\n #if USE_ALPHA_TEST\n if (color.a < alphaThreshold) discard;\n #endif\n}\nvoid ALPHA_TEST (in float alpha) {\n #if USE_ALPHA_TEST\n if (alpha < alphaThreshold) discard;\n #endif\n}\nvarying vec4 v_color;\n#if USE_TEXTURE\nvarying vec2 v_uv0;\nuniform sampler2D texture;\n#endif\nvoid main () {\n vec4 o = vec4(1, 1, 1, 1);\n #if USE_TEXTURE\n vec4 texture_tmp = texture2D(texture, v_uv0);\n #if CC_USE_ALPHA_ATLAS_texture\n texture_tmp.a *= texture2D(texture, v_uv0 + vec2(0, 0.5)).r;\n #endif\n #if INPUT_IS_GAMMA\n o.rgb *= (texture_tmp.rgb * texture_tmp.rgb);\n o.a *= texture_tmp.a;\n #else\n o *= texture_tmp;\n #endif\n #endif\n o *= v_color;\n ALPHA_TEST(o);\n gl_FragColor = o;\n}"
},
"builtins": {
"globals": {
"blocks": [
{
"name": "CCGlobal",
"defines": []
}
],
"samplers": []
},
"locals": {
"blocks": [
{
"name": "CCLocal",
"defines": []
}
],
"samplers": []
}
},
"defines": [
{
"name": "USE_TEXTURE",
"type": "boolean",
"defines": []
},
{
"name": "CC_USE_MODEL",
"type": "boolean",
"defines": []
},
{
"name": "USE_ALPHA_TEST",
"type": "boolean",
"defines": []
},
{
"name": "CC_USE_ALPHA_ATLAS_texture",
"type": "boolean",
"defines": [
"USE_TEXTURE"
]
},
{
"name": "INPUT_IS_GAMMA",
"type": "boolean",
"defines": [
"USE_TEXTURE"
]
}
],
"blocks": [
{
"name": "ALPHA_TEST",
"members": [
{
"name": "alphaThreshold",
"type": 13,
"count": 1
}
],
"defines": [
"USE_ALPHA_TEST"
],
"binding": 0
}
],
"samplers": [
{
"name": "texture",
"type": 29,
"count": 1,
"defines": [
"USE_TEXTURE"
],
"binding": 30
}
],
"record": null,
"name": "builtin-2d-sprite|vs|fs"
}
]
}
\ No newline at end of file
{"__type__":"cc.Material","_name":"builtin-2d-base","_effectAsset":{"__uuid__":"28dPjdQWxEQIG3VVl1Qm6T"},"_techniqueData":{}}
\ No newline at end of file
{
"__type__": "cc.Material",
"_name": "builtin-2d-base",
"_effectAsset": {
"__uuid__": "28dPjdQWxEQIG3VVl1Qm6T"
},
"_techniqueData": {}
}
\ No newline at end of file
{"__type__":"cc.Material","_name":"builtin-2d-sprite","_effectAsset":{"__uuid__":"28dPjdQWxEQIG3VVl1Qm6T"},"_techniqueData":{"0":{"defines":{"USE_TEXTURE":true}}}}
\ No newline at end of file
{
"__type__": "cc.Material",
"_name": "builtin-2d-sprite",
"_effectAsset": {
"__uuid__": "28dPjdQWxEQIG3VVl1Qm6T"
},
"_techniqueData": {
"0": {
"defines": {
"USE_TEXTURE": true
}
}
}
}
\ No newline at end of file
(function r(e,n,t){function i(u,f){if(!n[u]){if(!e[u]){var _=u.split("/");if(_=_[_.length-1],!e[_]){var p="function"==typeof __require&&__require;if(!f&&p)return p(_,!0);if(o)return o(_,!0);throw new Error("Cannot find module '"+u+"'")}u=_}var a=n[u]={exports:{}};e[u][0].call(a.exports,function(r){return i(e[u][1][r]||r)},a,a.exports,r,e,n,t)}return n[u].exports}for(var o="function"==typeof __require&&__require,u=0;u<t.length;u++)i(t[u]);return i})({},{},[]);
\ No newline at end of file
(function e(t, n, r) {
function s(o, u) {
if (!n[o]) {
if (!t[o]) {
var b = o.split("/");
b = b[b.length - 1];
if (!t[b]) {
var a = "function" == typeof __require && __require;
if (!u && a) return a(b, !0);
if (i) return i(b, !0);
throw new Error("Cannot find module '" + o + "'");
}
o = b;
}
var f = n[o] = {
exports: {}
};
t[o][0].call(f.exports, function(e) {
var n = t[o][1][e];
return s(n || e);
}, f, f.exports, e, t, n, r);
}
return n[o].exports;
}
var i = "function" == typeof __require && __require;
for (var o = 0; o < r.length; o++) s(r[o]);
return s;
})({}, {}, []);
\ No newline at end of file
{"paths":{},"types":[],"uuids":["c38YYUxxZPH4mfCfBzrGxD","02delMVqdBD70a/HSD99FK","10jEphdBFOu6ZZQmSeBs3z","1ejl+z0StELb2mEvEiZ6vl","23FwyEU6VHPL4kx+ue0b+s","35MdfsfclJvb6Ukmd9ybfA","3dKPHJglZBzI+eAcfj4Tcf","43dIM3eEVID7q17+J3if3y","47IBQCBJVA+JgCZj8hhYJe","58amK658xERYqfswqnS0cS","82nQe40gpGGLBfTRrGc7FO","8bAJ+sKehJ1J1k2EgZ9QAz","8e8ut3kpRBhpKmX4dq0oBB","8fjHmUGH5DnrGqgruYvYar","99k7fI5ORLSIkinFX0I72z","9bvaMerUlDyary99mJa6xp","a2MjXRFdtLlYQ5ouAFv/+R","a61QWNTm1PcKeDbmxqviuz","a8ok1LbyZDWKL7JK1OVhjE","abBAGcwMFDC6xD0tMtsFUn","b8nYBWqRFFm6W9ONFNUD7C","bcbmiDGrpPcaMERxUpJKEF","c8Gskh2AlF1Zhou/3P22sh","d8HsitJHxOYqo801xBk8ev","e5N4U/fdJDP7EIQ6GrCaVv","ecpdLyjvZBwrvm+cedCcQy"],"scenes":{"db://assets/mz_004/scene/scene.fire":0},"redirect":[1,0,25,0],"deps":["internal"],"packs":{"0cbb995cd":[2,4,9,10,12,13,14,15,16,18,19,20,0,24],"0fd04bd60":[3,5,6,7,8,11,17,21,22,23]},"name":"main","importBase":"import","nativeBase":"native","debug":false,"isZip":false,"encrypted":true}
\ No newline at end of file
{
"paths": {},
"uuids": [
"02delMVqdBD70a/HSD99FK",
"10jEphdBFOu6ZZQmSeBs3z",
"1ejl+z0StELb2mEvEiZ6vl",
"23FwyEU6VHPL4kx+ue0b+s",
"35MdfsfclJvb6Ukmd9ybfA",
"3dKPHJglZBzI+eAcfj4Tcf",
"43dIM3eEVID7q17+J3if3y",
"47IBQCBJVA+JgCZj8hhYJe",
"58amK658xERYqfswqnS0cS",
"82nQe40gpGGLBfTRrGc7FO",
"8bAJ+sKehJ1J1k2EgZ9QAz",
"8e8ut3kpRBhpKmX4dq0oBB",
"8fjHmUGH5DnrGqgruYvYar",
"99k7fI5ORLSIkinFX0I72z",
"9bvaMerUlDyary99mJa6xp",
"a2MjXRFdtLlYQ5ouAFv/+R",
"a61QWNTm1PcKeDbmxqviuz",
"a8ok1LbyZDWKL7JK1OVhjE",
"abBAGcwMFDC6xD0tMtsFUn",
"b8nYBWqRFFm6W9ONFNUD7C",
"bcbmiDGrpPcaMERxUpJKEF",
"c38YYUxxZPH4mfCfBzrGxD",
"c8Gskh2AlF1Zhou/3P22sh",
"d8HsitJHxOYqo801xBk8ev",
"e5N4U/fdJDP7EIQ6GrCaVv",
"ecpdLyjvZBwrvm+cedCcQy"
],
"scenes": {
"db://assets/mz_004/scene/scene.fire": "c38YYUxxZPH4mfCfBzrGxD"
},
"redirect": [
"02delMVqdBD70a/HSD99FK",
0,
"ecpdLyjvZBwrvm+cedCcQy",
0
],
"deps": [
"internal"
],
"packs": {
"0cbb995cd": [
"10jEphdBFOu6ZZQmSeBs3z",
"23FwyEU6VHPL4kx+ue0b+s",
"58amK658xERYqfswqnS0cS",
"82nQe40gpGGLBfTRrGc7FO",
"8e8ut3kpRBhpKmX4dq0oBB",
"8fjHmUGH5DnrGqgruYvYar",
"99k7fI5ORLSIkinFX0I72z",
"9bvaMerUlDyary99mJa6xp",
"a2MjXRFdtLlYQ5ouAFv/+R",
"a8ok1LbyZDWKL7JK1OVhjE",
"abBAGcwMFDC6xD0tMtsFUn",
"b8nYBWqRFFm6W9ONFNUD7C",
"c38YYUxxZPH4mfCfBzrGxD",
"e5N4U/fdJDP7EIQ6GrCaVv"
],
"0fd04bd60": [
"1ejl+z0StELb2mEvEiZ6vl",
"35MdfsfclJvb6Ukmd9ybfA",
"3dKPHJglZBzI+eAcfj4Tcf",
"43dIM3eEVID7q17+J3if3y",
"47IBQCBJVA+JgCZj8hhYJe",
"8bAJ+sKehJ1J1k2EgZ9QAz",
"a61QWNTm1PcKeDbmxqviuz",
"bcbmiDGrpPcaMERxUpJKEF",
"c8Gskh2AlF1Zhou/3P22sh",
"d8HsitJHxOYqo801xBk8ev"
]
},
"name": "main",
"importBase": "import",
"nativeBase": "native",
"debug": true,
"isZip": false,
"encrypted": false
}
\ No newline at end of file
[{"__type__":"cc.SpriteFrame","content":{"name":"white_bg","texture":"47IBQCBJVA+JgCZj8hhYJe","rect":[0,0,1280,640],"offset":[0,0],"originalSize":[1280,640],"capInsets":[0,0,0,0]}},{"__type__":"cc.SpriteFrame","content":{"name":"circle","texture":"bcbmiDGrpPcaMERxUpJKEF","rect":[0,0,1026,1026],"offset":[0,0],"originalSize":[1026,1026],"capInsets":[0,0,0,0]}},{"__type__":"cc.SpriteFrame","content":{"name":"bg","texture":"35MdfsfclJvb6Ukmd9ybfA","rect":[0,0,715,715],"offset":[0,0],"originalSize":[715,715],"capInsets":[0,0,0,0]}},{"__type__":"cc.SpriteFrame","content":{"name":"page_down","texture":"c8Gskh2AlF1Zhou/3P22sh","rect":[0,0,22,23],"offset":[0,0],"originalSize":[22,23],"capInsets":[0,0,0,0]}},{"__type__":"cc.TTFFont","_name":"KGMissKindyMarker","_native":"KGMissKindyMarker.ttf"},{"__type__":"cc.SpriteFrame","content":{"name":"page_up","texture":"8bAJ+sKehJ1J1k2EgZ9QAz","rect":[0,0,22,23],"offset":[0,0],"originalSize":[22,23],"capInsets":[0,0,0,0]}},[{"__type__":"cc.Prefab","_name":"bgBottom","data":{"__id__":1}},{"__type__":"cc.Node","_name":"bgBottom","_children":[{"__id__":2},{"__id__":3},{"__id__":4},{"__id__":5},{"__id__":7},{"__id__":9}],"_components":[{"__type__":"cc.Sprite","node":{"__id__":1},"_materials":[{"__uuid__":"ecpdLyjvZBwrvm+cedCcQy"}],"_spriteFrame":{"__uuid__":"a8ok1LbyZDWKL7JK1OVhjE"},"_sizeMode":0},{"__type__":"ff0e9h++NlKOLbC+Bu/RH2+","node":{"__id__":1}}],"_prefab":{"__type__":"cc.PrefabInfo","root":{"__id__":1},"asset":{"__uuid__":"99k7fI5ORLSIkinFX0I72z"},"fileId":"b4DhAnBsxPoJbGH3BcGt5i"},"_contentSize":{"__type__":"cc.Size","width":1280,"height":132},"_trs":{"__type__":"TypedArray","ctor":"Float64Array","array":[0,-360,0,0,0,0,1,1,1,1]}},{"__type__":"cc.Node","_name":"btn","_parent":{"__id__":1},"_components":[{"__type__":"cc.Sprite","node":{"__id__":2},"_materials":[{"__uuid__":"ecpdLyjvZBwrvm+cedCcQy"}],"_spriteFrame":{"__uuid__":"a2MjXRFdtLlYQ5ouAFv/+R"},"_sizeMode":0},{"__type__":"cc.Button","node":{"__id__":2}}],"_prefab":{"__type__":"cc.PrefabInfo","root":{"__id__":1},"asset":{"__uuid__":"99k7fI5ORLSIkinFX0I72z"},"fileId":"084fApz9JAurWaytg+oJAF"},"_opacity":0,"_contentSize":{"__type__":"cc.Size","width":70,"height":50},"_trs":{"__type__":"TypedArray","ctor":"Float64Array","array":[1.55,33.325,0,0,0,0,1,1,1,1]}},{"__type__":"cc.Node","_name":"arrowUp","_parent":{"__id__":1},"_components":[{"__type__":"cc.Sprite","node":{"__id__":3},"_materials":[{"__uuid__":"ecpdLyjvZBwrvm+cedCcQy"}],"_spriteFrame":{"__uuid__":"e5N4U/fdJDP7EIQ6GrCaVv"}}],"_prefab":{"__type__":"cc.PrefabInfo","root":{"__id__":1},"asset":{"__uuid__":"99k7fI5ORLSIkinFX0I72z"},"fileId":"edRAfQIkFF1YKIsDN8VNAl"},"_contentSize":{"__type__":"cc.Size","width":24,"height":18},"_trs":{"__type__":"TypedArray","ctor":"Float64Array","array":[0,33,0,0,0,0,1,1,1,1]}},{"__type__":"cc.Node","_name":"arrowDown","_parent":{"__id__":1},"_active":false,"_components":[{"__type__":"cc.Sprite","node":{"__id__":4},"_materials":[{"__uuid__":"ecpdLyjvZBwrvm+cedCcQy"}],"_spriteFrame":{"__uuid__":"b8nYBWqRFFm6W9ONFNUD7C"}}],"_prefab":{"__type__":"cc.PrefabInfo","root":{"__id__":1},"asset":{"__uuid__":"99k7fI5ORLSIkinFX0I72z"},"fileId":"d7byJPt2FE3KHHfVE1bP90"},"_contentSize":{"__type__":"cc.Size","width":24,"height":18},"_trs":{"__type__":"TypedArray","ctor":"Float64Array","array":[0,33,0,0,0,0,1,1,1,1]}},{"__type__":"cc.Node","_name":"pageUp","_parent":{"__id__":1},"_children":[{"__id__":6}],"_components":[{"__type__":"cc.Sprite","node":{"__id__":5},"_enabled":false,"_materials":[{"__uuid__":"ecpdLyjvZBwrvm+cedCcQy"}],"_spriteFrame":{"__uuid__":"9bvaMerUlDyary99mJa6xp"},"_type":1,"_sizeMode":0},{"__type__":"cc.Button","node":{"__id__":5}}],"_prefab":{"__type__":"cc.PrefabInfo","root":{"__id__":1},"asset":{"__uuid__":"99k7fI5ORLSIkinFX0I72z"},"fileId":"a9Fom8DbRPSZOeMw0Jqr8X"},"_contentSize":{"__type__":"cc.Size","width":40,"height":40},"_trs":{"__type__":"TypedArray","ctor":"Float64Array","array":[618.054,-2.429,0,0,0,0,1,1,1,1]}},{"__type__":"cc.Node","_name":"spr","_parent":{"__id__":5},"_components":[{"__type__":"cc.Sprite","node":{"__id__":6},"_materials":[{"__uuid__":"ecpdLyjvZBwrvm+cedCcQy"}],"_spriteFrame":{"__uuid__":"8fjHmUGH5DnrGqgruYvYar"}}],"_prefab":{"__type__":"cc.PrefabInfo","root":{"__id__":1},"asset":{"__uuid__":"99k7fI5ORLSIkinFX0I72z"},"fileId":"7aCx+Zp2ROf6cAIGRgh4ap"},"_contentSize":{"__type__":"cc.Size","width":22,"height":23},"_trs":{"__type__":"TypedArray","ctor":"Float64Array","array":[0,-3,0,0,0,0,1,1,1,1]}},{"__type__":"cc.Node","_name":"pageDown","_parent":{"__id__":1},"_children":[{"__id__":8}],"_components":[{"__type__":"cc.Sprite","node":{"__id__":7},"_enabled":false,"_materials":[{"__uuid__":"ecpdLyjvZBwrvm+cedCcQy"}],"_spriteFrame":{"__uuid__":"9bvaMerUlDyary99mJa6xp"},"_type":1,"_sizeMode":0},{"__type__":"cc.Layout","node":{"__id__":7},"_enabled":false,"_layoutSize":{"__type__":"cc.Size","width":40,"height":40}},{"__type__":"cc.Button","node":{"__id__":7}}],"_prefab":{"__type__":"cc.PrefabInfo","root":{"__id__":1},"asset":{"__uuid__":"99k7fI5ORLSIkinFX0I72z"},"fileId":"295OcbmFNPGKH4Ej0r/d1D"},"_contentSize":{"__type__":"cc.Size","width":40,"height":40},"_trs":{"__type__":"TypedArray","ctor":"Float64Array","array":[618.054,-43.563,0,0,0,0,1,1,1,1]}},{"__type__":"cc.Node","_name":"spr","_parent":{"__id__":7},"_components":[{"__type__":"cc.Sprite","node":{"__id__":8},"_materials":[{"__uuid__":"ecpdLyjvZBwrvm+cedCcQy"}],"_spriteFrame":{"__uuid__":"82nQe40gpGGLBfTRrGc7FO"}}],"_prefab":{"__type__":"cc.PrefabInfo","root":{"__id__":1},"asset":{"__uuid__":"99k7fI5ORLSIkinFX0I72z"},"fileId":"acNVn9rVVHIrqRc23p2mf8"},"_contentSize":{"__type__":"cc.Size","width":22,"height":23},"_trs":{"__type__":"TypedArray","ctor":"Float64Array","array":[0,3,0,0,0,0,1,1,1,1]}},{"__type__":"cc.Node","_name":"font","_parent":{"__id__":1},"_active":false,"_components":[{"__type__":"cc.Label","node":{"__id__":9},"_materials":[{"__uuid__":"ecpdLyjvZBwrvm+cedCcQy"}],"_useOriginalSize":false,"_string":"Label","_N$string":"Label","_N$file":{"__uuid__":"8e8ut3kpRBhpKmX4dq0oBB"},"_isSystemFontUsed":false,"_N$horizontalAlign":1,"_N$verticalAlign":1}],"_prefab":{"__type__":"cc.PrefabInfo","root":{"__id__":1},"asset":{"__uuid__":"99k7fI5ORLSIkinFX0I72z"},"fileId":"352OaAKCxOMYj+KGjjLk/4"},"_contentSize":{"__type__":"cc.Size","width":122.85,"height":50.4},"_trs":{"__type__":"TypedArray","ctor":"Float64Array","array":[0,0,0,0,0,0,1,1,1,1]}}],{"__type__":"cc.SpriteFrame","content":{"name":"default_panel","texture":"d8HsitJHxOYqo801xBk8ev","rect":[0,0,20,20],"offset":[0,0],"originalSize":[20,20],"capInsets":[6,6,6,6]}},{"__type__":"cc.SpriteFrame","content":{"name":"default_sprite_splash","texture":"02delMVqdBD70a/HSD99FK","rect":[0,0,2,2],"offset":[0,0],"originalSize":[2,2],"capInsets":[0,0,0,0]}},{"__type__":"cc.SpriteFrame","content":{"name":"bg_bottom","texture":"a61QWNTm1PcKeDbmxqviuz","rect":[0,0,1280,132],"offset":[0,0],"originalSize":[1280,132],"capInsets":[0,0,0,0]}},{"__type__":"cc.SpriteFrame","content":{"name":"bg_points","texture":"1ejl+z0StELb2mEvEiZ6vl","rect":[0,0,1279,720],"offset":[-0.5,0],"originalSize":[1280,720],"capInsets":[0,0,0,0]}},{"__type__":"cc.SpriteFrame","content":{"name":"arrow_down","texture":"43dIM3eEVID7q17+J3if3y","rect":[0,0,24,18],"offset":[0,0],"originalSize":[24,18],"capInsets":[0,0,0,0]}},[{"__type__":"cc.SceneAsset","_name":"scene","scene":{"__id__":1},"asyncLoadAssets":null},{"__type__":"cc.Scene","_name":"New Node","_children":[{"__id__":2}],"_active":false,"_anchorPoint":{"__type__":"cc.Vec2"},"_trs":{"__type__":"TypedArray","ctor":"Float64Array","array":[0,0,0,0,0,0,1,1,1,1]}},{"__type__":"cc.Node","_name":"Canvas","_parent":{"__id__":1},"_children":[{"__id__":3},{"__id__":4},{"__id__":5},{"__id__":6},{"__id__":7},{"__id__":16}],"_components":[{"__type__":"cc.Canvas","node":{"__id__":2},"_designResolution":{"__type__":"cc.Size","width":1280,"height":720},"_fitHeight":false},{"__type__":"cc.Widget","node":{"__id__":2},"_alignFlags":45},{"__type__":"335fea4K1JFqanJyztUAUJR","node":{"__id__":2}}],"_contentSize":{"__type__":"cc.Size","width":1280,"height":720},"_trs":{"__type__":"TypedArray","ctor":"Float64Array","array":[640,360,0,0,0,0,1,1,1,1]},"_id":"a5esZu+45LA5mBpvttspPD"},{"__type__":"cc.Node","_name":"Main Camera","_parent":{"__id__":2},"_components":[{"__type__":"cc.Camera","node":{"__id__":3},"_clearFlags":7,"_depth":-1},{"__type__":"cc.Widget","node":{"__id__":3},"_alignFlags":45,"_originalWidth":1280,"_originalHeight":720}],"_contentSize":{"__type__":"cc.Size","width":1280,"height":720},"_trs":{"__type__":"TypedArray","ctor":"Float64Array","array":[0,0,0,0,0,0,1,1,1,1]}},{"__type__":"cc.Node","_name":"bg","_parent":{"__id__":2},"_components":[{"__type__":"cc.Sprite","node":{"__id__":4},"_materials":[{"__uuid__":"ecpdLyjvZBwrvm+cedCcQy"}],"_spriteFrame":{"__uuid__":"58amK658xERYqfswqnS0cS"},"_sizeMode":0},{"__type__":"cc.Widget","node":{"__id__":4},"alignMode":2,"_left":282.5,"_top":2.5,"_originalWidth":715,"_originalHeight":715}],"_contentSize":{"__type__":"cc.Size","width":715,"height":715},"_trs":{"__type__":"TypedArray","ctor":"Float64Array","array":[0,0,0,0,0,0,1,1,1,1]}},{"__type__":"cc.Node","_name":"bgPoint","_parent":{"__id__":2},"_components":[{"__type__":"cc.Sprite","node":{"__id__":5},"_materials":[{"__uuid__":"ecpdLyjvZBwrvm+cedCcQy"}],"_spriteFrame":{"__uuid__":"abBAGcwMFDC6xD0tMtsFUn"},"_sizeMode":0},{"__type__":"cc.Widget","node":{"__id__":5},"_alignFlags":44,"_bottom":-10,"_originalWidth":1280}],"_contentSize":{"__type__":"cc.Size","width":1280,"height":720},"_trs":{"__type__":"TypedArray","ctor":"Float64Array","array":[0,-10,0,0,0,0,1,1,1,1]}},{"__type__":"cc.Node","_name":"bgWhite","_parent":{"__id__":2},"_components":[{"__type__":"cc.Sprite","node":{"__id__":6},"_materials":[{"__uuid__":"ecpdLyjvZBwrvm+cedCcQy"}],"_spriteFrame":{"__uuid__":"10jEphdBFOu6ZZQmSeBs3z"}}],"_contentSize":{"__type__":"cc.Size","width":1280,"height":640},"_trs":{"__type__":"TypedArray","ctor":"Float64Array","array":[0,38.789,0,0,0,0,1,1,1,1]}},{"__type__":"cc.Node","_name":"bgBottom","_parent":{"__id__":2},"_children":[{"__id__":8},{"__id__":9},{"__id__":10},{"__id__":11},{"__id__":13},{"__id__":15}],"_components":[{"__type__":"cc.Sprite","node":{"__id__":7},"_materials":[{"__uuid__":"ecpdLyjvZBwrvm+cedCcQy"}],"_spriteFrame":{"__uuid__":"a8ok1LbyZDWKL7JK1OVhjE"},"_sizeMode":0},{"__type__":"ff0e9h++NlKOLbC+Bu/RH2+","node":{"__id__":7}}],"_prefab":{"__type__":"cc.PrefabInfo","root":{"__id__":7},"asset":{"__uuid__":"99k7fI5ORLSIkinFX0I72z"},"fileId":"b4DhAnBsxPoJbGH3BcGt5i"},"_contentSize":{"__type__":"cc.Size","width":1280,"height":132},"_trs":{"__type__":"TypedArray","ctor":"Float64Array","array":[0,-360,0,0,0,0,1,1,1,1]}},{"__type__":"cc.Node","_name":"btn","_parent":{"__id__":7},"_components":[{"__type__":"cc.Sprite","node":{"__id__":8},"_materials":[{"__uuid__":"ecpdLyjvZBwrvm+cedCcQy"}],"_spriteFrame":{"__uuid__":"a2MjXRFdtLlYQ5ouAFv/+R"},"_sizeMode":0},{"__type__":"cc.Button","node":{"__id__":8}}],"_prefab":{"__type__":"cc.PrefabInfo","root":{"__id__":7},"asset":{"__uuid__":"99k7fI5ORLSIkinFX0I72z"},"fileId":"084fApz9JAurWaytg+oJAF"},"_opacity":0,"_contentSize":{"__type__":"cc.Size","width":70,"height":50},"_trs":{"__type__":"TypedArray","ctor":"Float64Array","array":[1.55,33.325,0,0,0,0,1,1,1,1]}},{"__type__":"cc.Node","_name":"arrowUp","_parent":{"__id__":7},"_components":[{"__type__":"cc.Sprite","node":{"__id__":9},"_materials":[{"__uuid__":"ecpdLyjvZBwrvm+cedCcQy"}],"_spriteFrame":{"__uuid__":"e5N4U/fdJDP7EIQ6GrCaVv"}}],"_prefab":{"__type__":"cc.PrefabInfo","root":{"__id__":7},"asset":{"__uuid__":"99k7fI5ORLSIkinFX0I72z"},"fileId":"edRAfQIkFF1YKIsDN8VNAl"},"_contentSize":{"__type__":"cc.Size","width":24,"height":18},"_trs":{"__type__":"TypedArray","ctor":"Float64Array","array":[0,33,0,0,0,0,1,1,1,1]}},{"__type__":"cc.Node","_name":"arrowDown","_parent":{"__id__":7},"_components":[{"__type__":"cc.Sprite","node":{"__id__":10},"_materials":[{"__uuid__":"ecpdLyjvZBwrvm+cedCcQy"}],"_spriteFrame":{"__uuid__":"b8nYBWqRFFm6W9ONFNUD7C"}}],"_prefab":{"__type__":"cc.PrefabInfo","root":{"__id__":7},"asset":{"__uuid__":"99k7fI5ORLSIkinFX0I72z"},"fileId":"d7byJPt2FE3KHHfVE1bP90"},"_contentSize":{"__type__":"cc.Size","width":24,"height":18},"_trs":{"__type__":"TypedArray","ctor":"Float64Array","array":[0,33,0,0,0,0,1,0,0,1]}},{"__type__":"cc.Node","_name":"pageUp","_parent":{"__id__":7},"_children":[{"__id__":12}],"_components":[{"__type__":"cc.Sprite","node":{"__id__":11},"_enabled":false,"_materials":[{"__uuid__":"ecpdLyjvZBwrvm+cedCcQy"}],"_spriteFrame":{"__uuid__":"9bvaMerUlDyary99mJa6xp"},"_type":1,"_sizeMode":0},{"__type__":"cc.Button","node":{"__id__":11}}],"_prefab":{"__type__":"cc.PrefabInfo","root":{"__id__":7},"asset":{"__uuid__":"99k7fI5ORLSIkinFX0I72z"},"fileId":"a9Fom8DbRPSZOeMw0Jqr8X"},"_contentSize":{"__type__":"cc.Size","width":40,"height":40},"_trs":{"__type__":"TypedArray","ctor":"Float64Array","array":[618.054,-2.429,0,0,0,0,1,1,1,1]}},{"__type__":"cc.Node","_name":"spr","_parent":{"__id__":11},"_components":[{"__type__":"cc.Sprite","node":{"__id__":12},"_materials":[{"__uuid__":"ecpdLyjvZBwrvm+cedCcQy"}],"_spriteFrame":{"__uuid__":"8fjHmUGH5DnrGqgruYvYar"}}],"_prefab":{"__type__":"cc.PrefabInfo","root":{"__id__":7},"asset":{"__uuid__":"99k7fI5ORLSIkinFX0I72z"},"fileId":"7aCx+Zp2ROf6cAIGRgh4ap"},"_contentSize":{"__type__":"cc.Size","width":22,"height":23},"_trs":{"__type__":"TypedArray","ctor":"Float64Array","array":[0,-3,0,0,0,0,1,1,1,1]}},{"__type__":"cc.Node","_name":"pageDown","_parent":{"__id__":7},"_children":[{"__id__":14}],"_components":[{"__type__":"cc.Sprite","node":{"__id__":13},"_enabled":false,"_materials":[{"__uuid__":"ecpdLyjvZBwrvm+cedCcQy"}],"_spriteFrame":{"__uuid__":"9bvaMerUlDyary99mJa6xp"},"_type":1,"_sizeMode":0},{"__type__":"cc.Layout","node":{"__id__":13},"_enabled":false,"_layoutSize":{"__type__":"cc.Size","width":40,"height":40}},{"__type__":"cc.Button","node":{"__id__":13}}],"_prefab":{"__type__":"cc.PrefabInfo","root":{"__id__":7},"asset":{"__uuid__":"99k7fI5ORLSIkinFX0I72z"},"fileId":"295OcbmFNPGKH4Ej0r/d1D"},"_contentSize":{"__type__":"cc.Size","width":40,"height":40},"_trs":{"__type__":"TypedArray","ctor":"Float64Array","array":[618.054,-43.563,0,0,0,0,1,1,1,1]}},{"__type__":"cc.Node","_name":"spr","_parent":{"__id__":13},"_components":[{"__type__":"cc.Sprite","node":{"__id__":14},"_materials":[{"__uuid__":"ecpdLyjvZBwrvm+cedCcQy"}],"_spriteFrame":{"__uuid__":"82nQe40gpGGLBfTRrGc7FO"}}],"_prefab":{"__type__":"cc.PrefabInfo","root":{"__id__":7},"asset":{"__uuid__":"99k7fI5ORLSIkinFX0I72z"},"fileId":"acNVn9rVVHIrqRc23p2mf8"},"_contentSize":{"__type__":"cc.Size","width":22,"height":23},"_trs":{"__type__":"TypedArray","ctor":"Float64Array","array":[0,3,0,0,0,0,1,1,1,1]}},{"__type__":"cc.Node","_name":"font","_parent":{"__id__":7},"_active":false,"_components":[{"__type__":"cc.Label","node":{"__id__":15},"_materials":[{"__uuid__":"ecpdLyjvZBwrvm+cedCcQy"}],"_useOriginalSize":false,"_string":"Label","_N$string":"Label","_N$file":{"__uuid__":"8e8ut3kpRBhpKmX4dq0oBB"},"_isSystemFontUsed":false,"_N$horizontalAlign":1,"_N$verticalAlign":1}],"_prefab":{"__type__":"cc.PrefabInfo","root":{"__id__":7},"asset":{"__uuid__":"99k7fI5ORLSIkinFX0I72z"},"fileId":"352OaAKCxOMYj+KGjjLk/4"},"_contentSize":{"__type__":"cc.Size","width":122.85,"height":50.4},"_trs":{"__type__":"TypedArray","ctor":"Float64Array","array":[0,0,0,0,0,0,1,1,1,1]}},{"__type__":"cc.Node","_name":"circle","_parent":{"__id__":2},"_active":false,"_components":[{"__type__":"cc.Sprite","node":{"__id__":16},"_materials":[{"__uuid__":"ecpdLyjvZBwrvm+cedCcQy"}],"_spriteFrame":{"__uuid__":"23FwyEU6VHPL4kx+ue0b+s"}}],"_contentSize":{"__type__":"cc.Size","width":1026,"height":1026},"_trs":{"__type__":"TypedArray","ctor":"Float64Array","array":[0,0,0,0,0,0,1,1,1,1]}}],{"__type__":"cc.SpriteFrame","content":{"name":"arrow_up","texture":"3dKPHJglZBzI+eAcfj4Tcf","rect":[0,0,24,18],"offset":[0,0],"originalSize":[24,18],"capInsets":[0,0,0,0]}}]
\ No newline at end of file
[
{
"__type__": "cc.SpriteFrame",
"content": {
"name": "white_bg",
"texture": "47IBQCBJVA+JgCZj8hhYJe",
"rect": [
0,
0,
1280,
640
],
"offset": [
0,
0
],
"originalSize": [
1280,
640
],
"capInsets": [
0,
0,
0,
0
]
}
},
{
"__type__": "cc.SpriteFrame",
"content": {
"name": "circle",
"texture": "bcbmiDGrpPcaMERxUpJKEF",
"rect": [
0,
0,
1026,
1026
],
"offset": [
0,
0
],
"originalSize": [
1026,
1026
],
"capInsets": [
0,
0,
0,
0
]
}
},
{
"__type__": "cc.SpriteFrame",
"content": {
"name": "bg",
"texture": "35MdfsfclJvb6Ukmd9ybfA",
"rect": [
0,
0,
715,
715
],
"offset": [
0,
0
],
"originalSize": [
715,
715
],
"capInsets": [
0,
0,
0,
0
]
}
},
{
"__type__": "cc.SpriteFrame",
"content": {
"name": "page_down",
"texture": "c8Gskh2AlF1Zhou/3P22sh",
"rect": [
0,
0,
22,
23
],
"offset": [
0,
0
],
"originalSize": [
22,
23
],
"capInsets": [
0,
0,
0,
0
]
}
},
{
"__type__": "cc.TTFFont",
"_name": "KGMissKindyMarker",
"_native": "KGMissKindyMarker.ttf"
},
{
"__type__": "cc.SpriteFrame",
"content": {
"name": "page_up",
"texture": "8bAJ+sKehJ1J1k2EgZ9QAz",
"rect": [
0,
0,
22,
23
],
"offset": [
0,
0
],
"originalSize": [
22,
23
],
"capInsets": [
0,
0,
0,
0
]
}
},
[
{
"__type__": "cc.Prefab",
"_name": "bgBottom",
"data": {
"__id__": 1
}
},
{
"__type__": "cc.Node",
"_name": "bgBottom",
"_children": [
{
"__id__": 2
},
{
"__id__": 3
},
{
"__id__": 4
},
{
"__id__": 5
},
{
"__id__": 7
},
{
"__id__": 9
}
],
"_components": [
{
"__type__": "cc.Sprite",
"node": {
"__id__": 1
},
"_materials": [
{
"__uuid__": "ecpdLyjvZBwrvm+cedCcQy"
}
],
"_spriteFrame": {
"__uuid__": "a8ok1LbyZDWKL7JK1OVhjE"
},
"_sizeMode": 0
},
{
"__type__": "ff0e9h++NlKOLbC+Bu/RH2+",
"node": {
"__id__": 1
}
}
],
"_prefab": {
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__uuid__": "99k7fI5ORLSIkinFX0I72z"
},
"fileId": "b4DhAnBsxPoJbGH3BcGt5i"
},
"_contentSize": {
"__type__": "cc.Size",
"width": 1280,
"height": 132
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
-360,
0,
0,
0,
0,
1,
1,
1,
1
]
}
},
{
"__type__": "cc.Node",
"_name": "btn",
"_parent": {
"__id__": 1
},
"_components": [
{
"__type__": "cc.Sprite",
"node": {
"__id__": 2
},
"_materials": [
{
"__uuid__": "ecpdLyjvZBwrvm+cedCcQy"
}
],
"_spriteFrame": {
"__uuid__": "a2MjXRFdtLlYQ5ouAFv/+R"
},
"_sizeMode": 0
},
{
"__type__": "cc.Button",
"node": {
"__id__": 2
}
}
],
"_prefab": {
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__uuid__": "99k7fI5ORLSIkinFX0I72z"
},
"fileId": "084fApz9JAurWaytg+oJAF"
},
"_opacity": 0,
"_contentSize": {
"__type__": "cc.Size",
"width": 70,
"height": 50
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
1.55,
33.325,
0,
0,
0,
0,
1,
1,
1,
1
]
}
},
{
"__type__": "cc.Node",
"_name": "arrowUp",
"_parent": {
"__id__": 1
},
"_components": [
{
"__type__": "cc.Sprite",
"node": {
"__id__": 3
},
"_materials": [
{
"__uuid__": "ecpdLyjvZBwrvm+cedCcQy"
}
],
"_spriteFrame": {
"__uuid__": "e5N4U/fdJDP7EIQ6GrCaVv"
}
}
],
"_prefab": {
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__uuid__": "99k7fI5ORLSIkinFX0I72z"
},
"fileId": "edRAfQIkFF1YKIsDN8VNAl"
},
"_contentSize": {
"__type__": "cc.Size",
"width": 24,
"height": 18
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
33,
0,
0,
0,
0,
1,
1,
1,
1
]
}
},
{
"__type__": "cc.Node",
"_name": "arrowDown",
"_parent": {
"__id__": 1
},
"_active": false,
"_components": [
{
"__type__": "cc.Sprite",
"node": {
"__id__": 4
},
"_materials": [
{
"__uuid__": "ecpdLyjvZBwrvm+cedCcQy"
}
],
"_spriteFrame": {
"__uuid__": "b8nYBWqRFFm6W9ONFNUD7C"
}
}
],
"_prefab": {
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__uuid__": "99k7fI5ORLSIkinFX0I72z"
},
"fileId": "d7byJPt2FE3KHHfVE1bP90"
},
"_contentSize": {
"__type__": "cc.Size",
"width": 24,
"height": 18
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
33,
0,
0,
0,
0,
1,
1,
1,
1
]
}
},
{
"__type__": "cc.Node",
"_name": "pageUp",
"_parent": {
"__id__": 1
},
"_children": [
{
"__id__": 6
}
],
"_components": [
{
"__type__": "cc.Sprite",
"node": {
"__id__": 5
},
"_enabled": false,
"_materials": [
{
"__uuid__": "ecpdLyjvZBwrvm+cedCcQy"
}
],
"_spriteFrame": {
"__uuid__": "9bvaMerUlDyary99mJa6xp"
},
"_type": 1,
"_sizeMode": 0
},
{
"__type__": "cc.Button",
"node": {
"__id__": 5
}
}
],
"_prefab": {
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__uuid__": "99k7fI5ORLSIkinFX0I72z"
},
"fileId": "a9Fom8DbRPSZOeMw0Jqr8X"
},
"_contentSize": {
"__type__": "cc.Size",
"width": 40,
"height": 40
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
618.054,
-2.429,
0,
0,
0,
0,
1,
1,
1,
1
]
}
},
{
"__type__": "cc.Node",
"_name": "spr",
"_parent": {
"__id__": 5
},
"_components": [
{
"__type__": "cc.Sprite",
"node": {
"__id__": 6
},
"_materials": [
{
"__uuid__": "ecpdLyjvZBwrvm+cedCcQy"
}
],
"_spriteFrame": {
"__uuid__": "8fjHmUGH5DnrGqgruYvYar"
}
}
],
"_prefab": {
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__uuid__": "99k7fI5ORLSIkinFX0I72z"
},
"fileId": "7aCx+Zp2ROf6cAIGRgh4ap"
},
"_contentSize": {
"__type__": "cc.Size",
"width": 22,
"height": 23
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
-3,
0,
0,
0,
0,
1,
1,
1,
1
]
}
},
{
"__type__": "cc.Node",
"_name": "pageDown",
"_parent": {
"__id__": 1
},
"_children": [
{
"__id__": 8
}
],
"_components": [
{
"__type__": "cc.Sprite",
"node": {
"__id__": 7
},
"_enabled": false,
"_materials": [
{
"__uuid__": "ecpdLyjvZBwrvm+cedCcQy"
}
],
"_spriteFrame": {
"__uuid__": "9bvaMerUlDyary99mJa6xp"
},
"_type": 1,
"_sizeMode": 0
},
{
"__type__": "cc.Layout",
"node": {
"__id__": 7
},
"_enabled": false,
"_layoutSize": {
"__type__": "cc.Size",
"width": 40,
"height": 40
}
},
{
"__type__": "cc.Button",
"node": {
"__id__": 7
}
}
],
"_prefab": {
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__uuid__": "99k7fI5ORLSIkinFX0I72z"
},
"fileId": "295OcbmFNPGKH4Ej0r/d1D"
},
"_contentSize": {
"__type__": "cc.Size",
"width": 40,
"height": 40
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
618.054,
-43.563,
0,
0,
0,
0,
1,
1,
1,
1
]
}
},
{
"__type__": "cc.Node",
"_name": "spr",
"_parent": {
"__id__": 7
},
"_components": [
{
"__type__": "cc.Sprite",
"node": {
"__id__": 8
},
"_materials": [
{
"__uuid__": "ecpdLyjvZBwrvm+cedCcQy"
}
],
"_spriteFrame": {
"__uuid__": "82nQe40gpGGLBfTRrGc7FO"
}
}
],
"_prefab": {
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__uuid__": "99k7fI5ORLSIkinFX0I72z"
},
"fileId": "acNVn9rVVHIrqRc23p2mf8"
},
"_contentSize": {
"__type__": "cc.Size",
"width": 22,
"height": 23
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
3,
0,
0,
0,
0,
1,
1,
1,
1
]
}
},
{
"__type__": "cc.Node",
"_name": "font",
"_parent": {
"__id__": 1
},
"_active": false,
"_components": [
{
"__type__": "cc.Label",
"node": {
"__id__": 9
},
"_materials": [
{
"__uuid__": "ecpdLyjvZBwrvm+cedCcQy"
}
],
"_useOriginalSize": false,
"_string": "Label",
"_N$string": "Label",
"_N$file": {
"__uuid__": "8e8ut3kpRBhpKmX4dq0oBB"
},
"_isSystemFontUsed": false,
"_N$horizontalAlign": 1,
"_N$verticalAlign": 1
}
],
"_prefab": {
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__uuid__": "99k7fI5ORLSIkinFX0I72z"
},
"fileId": "352OaAKCxOMYj+KGjjLk/4"
},
"_contentSize": {
"__type__": "cc.Size",
"width": 122.85,
"height": 50.4
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
0,
0,
0,
0,
0,
1,
1,
1,
1
]
}
}
],
{
"__type__": "cc.SpriteFrame",
"content": {
"name": "default_panel",
"texture": "d8HsitJHxOYqo801xBk8ev",
"rect": [
0,
0,
20,
20
],
"offset": [
0,
0
],
"originalSize": [
20,
20
],
"capInsets": [
6,
6,
6,
6
]
}
},
{
"__type__": "cc.SpriteFrame",
"content": {
"name": "default_sprite_splash",
"texture": "02delMVqdBD70a/HSD99FK",
"rect": [
0,
0,
2,
2
],
"offset": [
0,
0
],
"originalSize": [
2,
2
],
"capInsets": [
0,
0,
0,
0
]
}
},
{
"__type__": "cc.SpriteFrame",
"content": {
"name": "bg_bottom",
"texture": "a61QWNTm1PcKeDbmxqviuz",
"rect": [
0,
0,
1280,
132
],
"offset": [
0,
0
],
"originalSize": [
1280,
132
],
"capInsets": [
0,
0,
0,
0
]
}
},
{
"__type__": "cc.SpriteFrame",
"content": {
"name": "bg_points",
"texture": "1ejl+z0StELb2mEvEiZ6vl",
"rect": [
0,
0,
1279,
720
],
"offset": [
-0.5,
0
],
"originalSize": [
1280,
720
],
"capInsets": [
0,
0,
0,
0
]
}
},
{
"__type__": "cc.SpriteFrame",
"content": {
"name": "arrow_down",
"texture": "43dIM3eEVID7q17+J3if3y",
"rect": [
0,
0,
24,
18
],
"offset": [
0,
0
],
"originalSize": [
24,
18
],
"capInsets": [
0,
0,
0,
0
]
}
},
[
{
"__type__": "cc.SceneAsset",
"_name": "scene",
"scene": {
"__id__": 1
},
"asyncLoadAssets": null
},
{
"__type__": "cc.Scene",
"_name": "New Node",
"_children": [
{
"__id__": 2
}
],
"_active": false,
"_anchorPoint": {
"__type__": "cc.Vec2"
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
0,
0,
0,
0,
0,
1,
1,
1,
1
]
}
},
{
"__type__": "cc.Node",
"_name": "Canvas",
"_parent": {
"__id__": 1
},
"_children": [
{
"__id__": 3
},
{
"__id__": 4
},
{
"__id__": 5
},
{
"__id__": 6
},
{
"__id__": 7
},
{
"__id__": 16
}
],
"_components": [
{
"__type__": "cc.Canvas",
"node": {
"__id__": 2
},
"_designResolution": {
"__type__": "cc.Size",
"width": 1280,
"height": 720
},
"_fitHeight": false
},
{
"__type__": "cc.Widget",
"node": {
"__id__": 2
},
"_alignFlags": 45
},
{
"__type__": "335fea4K1JFqanJyztUAUJR",
"node": {
"__id__": 2
}
}
],
"_contentSize": {
"__type__": "cc.Size",
"width": 1280,
"height": 720
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
640,
360,
0,
0,
0,
0,
1,
1,
1,
1
]
},
"_id": "a5esZu+45LA5mBpvttspPD"
},
{
"__type__": "cc.Node",
"_name": "Main Camera",
"_parent": {
"__id__": 2
},
"_components": [
{
"__type__": "cc.Camera",
"node": {
"__id__": 3
},
"_clearFlags": 7,
"_depth": -1
},
{
"__type__": "cc.Widget",
"node": {
"__id__": 3
},
"_alignFlags": 45,
"_originalWidth": 1280,
"_originalHeight": 720
}
],
"_contentSize": {
"__type__": "cc.Size",
"width": 1280,
"height": 720
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
0,
0,
0,
0,
0,
1,
1,
1,
1
]
}
},
{
"__type__": "cc.Node",
"_name": "bg",
"_parent": {
"__id__": 2
},
"_components": [
{
"__type__": "cc.Sprite",
"node": {
"__id__": 4
},
"_materials": [
{
"__uuid__": "ecpdLyjvZBwrvm+cedCcQy"
}
],
"_spriteFrame": {
"__uuid__": "58amK658xERYqfswqnS0cS"
},
"_sizeMode": 0
},
{
"__type__": "cc.Widget",
"node": {
"__id__": 4
},
"alignMode": 2,
"_left": 282.5,
"_top": 2.5,
"_originalWidth": 715,
"_originalHeight": 715
}
],
"_contentSize": {
"__type__": "cc.Size",
"width": 715,
"height": 715
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
0,
0,
0,
0,
0,
1,
1,
1,
1
]
}
},
{
"__type__": "cc.Node",
"_name": "bgPoint",
"_parent": {
"__id__": 2
},
"_components": [
{
"__type__": "cc.Sprite",
"node": {
"__id__": 5
},
"_materials": [
{
"__uuid__": "ecpdLyjvZBwrvm+cedCcQy"
}
],
"_spriteFrame": {
"__uuid__": "abBAGcwMFDC6xD0tMtsFUn"
},
"_sizeMode": 0
},
{
"__type__": "cc.Widget",
"node": {
"__id__": 5
},
"_alignFlags": 44,
"_bottom": -10,
"_originalWidth": 1280
}
],
"_contentSize": {
"__type__": "cc.Size",
"width": 1280,
"height": 720
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
-10,
0,
0,
0,
0,
1,
1,
1,
1
]
}
},
{
"__type__": "cc.Node",
"_name": "bgWhite",
"_parent": {
"__id__": 2
},
"_components": [
{
"__type__": "cc.Sprite",
"node": {
"__id__": 6
},
"_materials": [
{
"__uuid__": "ecpdLyjvZBwrvm+cedCcQy"
}
],
"_spriteFrame": {
"__uuid__": "10jEphdBFOu6ZZQmSeBs3z"
}
}
],
"_contentSize": {
"__type__": "cc.Size",
"width": 1280,
"height": 640
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
38.789,
0,
0,
0,
0,
1,
1,
1,
1
]
}
},
{
"__type__": "cc.Node",
"_name": "bgBottom",
"_parent": {
"__id__": 2
},
"_children": [
{
"__id__": 8
},
{
"__id__": 9
},
{
"__id__": 10
},
{
"__id__": 11
},
{
"__id__": 13
},
{
"__id__": 15
}
],
"_components": [
{
"__type__": "cc.Sprite",
"node": {
"__id__": 7
},
"_materials": [
{
"__uuid__": "ecpdLyjvZBwrvm+cedCcQy"
}
],
"_spriteFrame": {
"__uuid__": "a8ok1LbyZDWKL7JK1OVhjE"
},
"_sizeMode": 0
},
{
"__type__": "ff0e9h++NlKOLbC+Bu/RH2+",
"node": {
"__id__": 7
}
}
],
"_prefab": {
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 7
},
"asset": {
"__uuid__": "99k7fI5ORLSIkinFX0I72z"
},
"fileId": "b4DhAnBsxPoJbGH3BcGt5i"
},
"_contentSize": {
"__type__": "cc.Size",
"width": 1280,
"height": 132
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
-360,
0,
0,
0,
0,
1,
1,
1,
1
]
}
},
{
"__type__": "cc.Node",
"_name": "btn",
"_parent": {
"__id__": 7
},
"_components": [
{
"__type__": "cc.Sprite",
"node": {
"__id__": 8
},
"_materials": [
{
"__uuid__": "ecpdLyjvZBwrvm+cedCcQy"
}
],
"_spriteFrame": {
"__uuid__": "a2MjXRFdtLlYQ5ouAFv/+R"
},
"_sizeMode": 0
},
{
"__type__": "cc.Button",
"node": {
"__id__": 8
}
}
],
"_prefab": {
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 7
},
"asset": {
"__uuid__": "99k7fI5ORLSIkinFX0I72z"
},
"fileId": "084fApz9JAurWaytg+oJAF"
},
"_opacity": 0,
"_contentSize": {
"__type__": "cc.Size",
"width": 70,
"height": 50
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
1.55,
33.325,
0,
0,
0,
0,
1,
1,
1,
1
]
}
},
{
"__type__": "cc.Node",
"_name": "arrowUp",
"_parent": {
"__id__": 7
},
"_components": [
{
"__type__": "cc.Sprite",
"node": {
"__id__": 9
},
"_materials": [
{
"__uuid__": "ecpdLyjvZBwrvm+cedCcQy"
}
],
"_spriteFrame": {
"__uuid__": "e5N4U/fdJDP7EIQ6GrCaVv"
}
}
],
"_prefab": {
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 7
},
"asset": {
"__uuid__": "99k7fI5ORLSIkinFX0I72z"
},
"fileId": "edRAfQIkFF1YKIsDN8VNAl"
},
"_contentSize": {
"__type__": "cc.Size",
"width": 24,
"height": 18
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
33,
0,
0,
0,
0,
1,
1,
1,
1
]
}
},
{
"__type__": "cc.Node",
"_name": "arrowDown",
"_parent": {
"__id__": 7
},
"_components": [
{
"__type__": "cc.Sprite",
"node": {
"__id__": 10
},
"_materials": [
{
"__uuid__": "ecpdLyjvZBwrvm+cedCcQy"
}
],
"_spriteFrame": {
"__uuid__": "b8nYBWqRFFm6W9ONFNUD7C"
}
}
],
"_prefab": {
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 7
},
"asset": {
"__uuid__": "99k7fI5ORLSIkinFX0I72z"
},
"fileId": "d7byJPt2FE3KHHfVE1bP90"
},
"_contentSize": {
"__type__": "cc.Size",
"width": 24,
"height": 18
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
33,
0,
0,
0,
0,
1,
0,
0,
1
]
}
},
{
"__type__": "cc.Node",
"_name": "pageUp",
"_parent": {
"__id__": 7
},
"_children": [
{
"__id__": 12
}
],
"_components": [
{
"__type__": "cc.Sprite",
"node": {
"__id__": 11
},
"_enabled": false,
"_materials": [
{
"__uuid__": "ecpdLyjvZBwrvm+cedCcQy"
}
],
"_spriteFrame": {
"__uuid__": "9bvaMerUlDyary99mJa6xp"
},
"_type": 1,
"_sizeMode": 0
},
{
"__type__": "cc.Button",
"node": {
"__id__": 11
}
}
],
"_prefab": {
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 7
},
"asset": {
"__uuid__": "99k7fI5ORLSIkinFX0I72z"
},
"fileId": "a9Fom8DbRPSZOeMw0Jqr8X"
},
"_contentSize": {
"__type__": "cc.Size",
"width": 40,
"height": 40
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
618.054,
-2.429,
0,
0,
0,
0,
1,
1,
1,
1
]
}
},
{
"__type__": "cc.Node",
"_name": "spr",
"_parent": {
"__id__": 11
},
"_components": [
{
"__type__": "cc.Sprite",
"node": {
"__id__": 12
},
"_materials": [
{
"__uuid__": "ecpdLyjvZBwrvm+cedCcQy"
}
],
"_spriteFrame": {
"__uuid__": "8fjHmUGH5DnrGqgruYvYar"
}
}
],
"_prefab": {
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 7
},
"asset": {
"__uuid__": "99k7fI5ORLSIkinFX0I72z"
},
"fileId": "7aCx+Zp2ROf6cAIGRgh4ap"
},
"_contentSize": {
"__type__": "cc.Size",
"width": 22,
"height": 23
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
-3,
0,
0,
0,
0,
1,
1,
1,
1
]
}
},
{
"__type__": "cc.Node",
"_name": "pageDown",
"_parent": {
"__id__": 7
},
"_children": [
{
"__id__": 14
}
],
"_components": [
{
"__type__": "cc.Sprite",
"node": {
"__id__": 13
},
"_enabled": false,
"_materials": [
{
"__uuid__": "ecpdLyjvZBwrvm+cedCcQy"
}
],
"_spriteFrame": {
"__uuid__": "9bvaMerUlDyary99mJa6xp"
},
"_type": 1,
"_sizeMode": 0
},
{
"__type__": "cc.Layout",
"node": {
"__id__": 13
},
"_enabled": false,
"_layoutSize": {
"__type__": "cc.Size",
"width": 40,
"height": 40
}
},
{
"__type__": "cc.Button",
"node": {
"__id__": 13
}
}
],
"_prefab": {
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 7
},
"asset": {
"__uuid__": "99k7fI5ORLSIkinFX0I72z"
},
"fileId": "295OcbmFNPGKH4Ej0r/d1D"
},
"_contentSize": {
"__type__": "cc.Size",
"width": 40,
"height": 40
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
618.054,
-43.563,
0,
0,
0,
0,
1,
1,
1,
1
]
}
},
{
"__type__": "cc.Node",
"_name": "spr",
"_parent": {
"__id__": 13
},
"_components": [
{
"__type__": "cc.Sprite",
"node": {
"__id__": 14
},
"_materials": [
{
"__uuid__": "ecpdLyjvZBwrvm+cedCcQy"
}
],
"_spriteFrame": {
"__uuid__": "82nQe40gpGGLBfTRrGc7FO"
}
}
],
"_prefab": {
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 7
},
"asset": {
"__uuid__": "99k7fI5ORLSIkinFX0I72z"
},
"fileId": "acNVn9rVVHIrqRc23p2mf8"
},
"_contentSize": {
"__type__": "cc.Size",
"width": 22,
"height": 23
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
3,
0,
0,
0,
0,
1,
1,
1,
1
]
}
},
{
"__type__": "cc.Node",
"_name": "font",
"_parent": {
"__id__": 7
},
"_active": false,
"_components": [
{
"__type__": "cc.Label",
"node": {
"__id__": 15
},
"_materials": [
{
"__uuid__": "ecpdLyjvZBwrvm+cedCcQy"
}
],
"_useOriginalSize": false,
"_string": "Label",
"_N$string": "Label",
"_N$file": {
"__uuid__": "8e8ut3kpRBhpKmX4dq0oBB"
},
"_isSystemFontUsed": false,
"_N$horizontalAlign": 1,
"_N$verticalAlign": 1
}
],
"_prefab": {
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 7
},
"asset": {
"__uuid__": "99k7fI5ORLSIkinFX0I72z"
},
"fileId": "352OaAKCxOMYj+KGjjLk/4"
},
"_contentSize": {
"__type__": "cc.Size",
"width": 122.85,
"height": 50.4
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
0,
0,
0,
0,
0,
1,
1,
1,
1
]
}
},
{
"__type__": "cc.Node",
"_name": "circle",
"_parent": {
"__id__": 2
},
"_active": false,
"_components": [
{
"__type__": "cc.Sprite",
"node": {
"__id__": 16
},
"_materials": [
{
"__uuid__": "ecpdLyjvZBwrvm+cedCcQy"
}
],
"_spriteFrame": {
"__uuid__": "23FwyEU6VHPL4kx+ue0b+s"
}
}
],
"_contentSize": {
"__type__": "cc.Size",
"width": 1026,
"height": 1026
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
0,
0,
0,
0,
0,
1,
1,
1,
1
]
}
}
],
{
"__type__": "cc.SpriteFrame",
"content": {
"name": "arrow_up",
"texture": "3dKPHJglZBzI+eAcfj4Tcf",
"rect": [
0,
0,
24,
18
],
"offset": [
0,
0
],
"originalSize": [
24,
18
],
"capInsets": [
0,
0,
0,
0
]
}
}
]
\ No newline at end of file
{"type":"cc.Texture2D","data":"0,9729,9729,33071,33071,0,0,1|1,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|1,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1"}
\ No newline at end of file
{
"type": "cc.Texture2D",
"data": "0,9729,9729,33071,33071,0,0,1|1,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|1,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1|0,9729,9729,33071,33071,0,0,1"
}
\ No newline at end of file
window.__require=function t(e,i,a){function n(c,h){if(!i[c]){if(!e[c]){var s=c.split("/");if(s=s[s.length-1],!e[s]){var r="function"==typeof __require&&__require;if(!h&&r)return r(s,!0);if(o)return o(s,!0);throw new Error("Cannot find module '"+c+"'")}c=s}var d=i[c]={exports:{}};e[c][0].call(d.exports,function(t){return n(e[c][1][t]||t)},d,d.exports,t,e,i,a)}return i[c].exports}for(var o="function"==typeof __require&&__require,c=0;c<a.length;c++)n(a[c]);return n}({bgBottom:[function(t,e,i){"use strict";cc._RF.push(e,"ff0e9h++NlKOLbC+Bu/RH2+","bgBottom");var a=t("../script/util");cc.Class({extends:cc.Component,properties:{},_canTouch:null,_isTop:null,_arrowUp:null,_arrowDown:null,_pageIndex:null,_maxPage:null,_lineMaxCount:null,_disW:null,onLoad:function(){this._canTouch=!0,this._isTop=!1,this._arrowUp=this.node.getChildByName("arrowUp"),this._arrowDown=this.node.getChildByName("arrowDown"),this.node.zIndex=10,this._itemLen=75,this._pageIndex=0,this._maxPage=0,this._disW=5;this._lineMaxCount=Math.floor(1190/(this._disW+this._itemLen))},start:function(){this._initListener(),this._initItemLayer()},_itemLayer:null,_initItemLayer:function(){this._itemLayer=new cc.Node,this.node.addChild(this._itemLayer)},_initListener:function(){this._initTopBtnListener(),this._initPageBtnListener()},_initTopBtnListener:function(){var t=this;this.node.getChildByName("btn").on("click",function(){if(t._canTouch){t._canTouch=!1;var e=80*t.node.scaleY,i=e;t._isTop&&(i=-e),cc.tween(t.node).by(.5,{y:i}).call(function(){t._canTouch=!0}).start(),t._setTopBtnState(.5),t._isTop=!t._isTop}})},_pageUpBtn:null,_pageDownBtn:null,_initPageBtnListener:function(){var t=this,e=this.node.getChildByName("pageUp");e.on("click",function(){t._canTouch&&(t._pageIndex<=0||(t._pageIndex--,t._refreshPage(),t._showBtnAnima(e)))}),this._pageUpBtn=e;var i=this.node.getChildByName("pageDown");i.on("click",function(){t._canTouch&&(t._pageIndex>=t._maxPage||(t._pageIndex++,t._refreshPage(),t._showBtnAnima(i)))}),this._pageDownBtn=i},_showBtnAnima:function(t){cc.tween(t).to(.08,{scale:1.3},{easing:"sineOut"}).to(.08,{scale:1},{easing:"sineOut"}).start()},_setPageBtnState:function(){0!=this._maxPage?(0==this._pageIndex?this._pageUpBtn.opacity=100:this._pageUpBtn.opacity=255,this._pageIndex==this._maxPage?this._pageDownBtn.opacity=100:this._pageDownBtn.opacity=255):this._pageUpBtn.active=this._pageDownBtn.active=!1},_setTopBtnState:function(t){var e,i;this._isTop?(e=this._arrowDown,i=this._arrowUp):(e=this._arrowUp,i=this._arrowDown),e.scale=1,i.scale=0,cc.tween(e).to(t/2,{scale:0},{easing:"cubicOut"}).start(),cc.tween(i).delay(t/2).to(t/2,{scale:1},{easing:"cubicOut"}).start()},_dataArr:null,setItemData:function(t){console.log(" in setItemData",t),t&&0!=t.length&&(this._dataArr=t,this._maxPage=Math.ceil(t.length/this._lineMaxCount)-1,this._pageIndex=0,this._refreshPage())},_itemLen:null,_addOneItem:function(t){var e=new cc.Node;return e.width=this._itemLen,e.height=this._itemLen,this._addItemPic(e,t.pic_url),this._addItemLabel(e,t.text),this._addItemAudio(e,t.audio_url),e},_addItemPic:function(t,e){var i=this;if(e){var n=.8*this._itemLen;cc.assetManager.loadRemote(e,function(e,o){var c=new cc.Node;t.addChild(c),c.width=o.width,c.height=o.height,c.y=(i._itemLen-n)/2,(0,a.setSprNodeMaxLen)(c,n,n);var h=new cc.SpriteFrame(o);c.addComponent(cc.Sprite).spriteFrame=h})}},_labelFont:null,_addItemLabel:function(t,e){if(e){var i=new cc.Node;i.color=cc.Color.BLACK;var a=i.addComponent(cc.Label);if(a.string=e,t.addChild(i),i.y=.4*-this._itemLen,a.fontSize=16,a.verticalAlign=cc.Label.VerticalAlign.CENTER,!this._labelFont){var n=this.node.getChildByName("font").getComponent(cc.Label);this._labelFont=n.font}a.font=this._labelFont}},_addItemAudio:function(t,e){var i=this;e&&cc.assetManager.loadRemote(e,function(e,a){t.audioClip=a,i._addItemListener(t)})},_addItemListener:function(t){t.addComponent(cc.Button),t.on("click",function(){t.audioClip&&(cc.audioEngine.stopAll(),cc.audioEngine.play(t.audioClip,!1,.5))})},_refreshPage:function(){var t=this;this._itemLayer.removeAllChildren();var e=this._dataArr,i=this._disW,a=this._pageIndex*this._lineMaxCount,n=e.slice(a,a+this._lineMaxCount),o=-(i+this._itemLen)*(n.length-1)/2;n.forEach(function(e,a){var n=t._addOneItem(e);t._itemLayer.addChild(n),n.x=o+(i+t._itemLen)*a,n.y=-25}),this._setPageBtnState()}}),cc._RF.pop()},{"../script/util":"util"}],scene:[function(t,e,i){"use strict";cc._RF.push(e,"335fea4K1JFqanJyztUAUJR","scene");var a=t("./util");cc.Class({extends:cc.Component,properties:{baseWidth:{default:1280,type:cc.Integer},baseHeight:{default:720,type:cc.Integer}},onLoad:function(){this.initSceneData(),this.initSize()},initSceneData:function(){this._imageResList=[],this._audioResList=[],this._animaResList=[]},_designSize:null,initSize:function(){this._designSize=cc.view.getDesignResolutionSize()},start:function(){var t=this,e=this.getData.bind(this);window&&window.courseware&&(e=window.courseware.getData),e(function(e){console.log("data:",e),t.data=e||t.getDefaultData(),t.preloadItem()})},_imageResList:null,_audioResList:null,_animaResList:null,preloadItem:function(){this.addPreloadImage(),this.addPreloadAudio(),this.addPreloadAnima(),this.preload()},getData:function(t){t(this.getDefaultData())},getDefaultData:function(){return JSON.parse('{"bgItem":{"url":"http://staging-teach.cdn.ireadabc.com/cea0606b09735d7346dc57626f0a0a9b.png","rect":{"x":205.28,"y":0,"width":844.44,"height":475}},"hotZoneItemArr":[{"id":"1597805601321","index":0,"pic_url":"http://staging-teach.cdn.ireadabc.com/ddf2a304102c90bd2ed1cadf27f8feb7.png","text":"arrow","audio_url":"http://staging-teach.cdn.ireadabc.com/1961d807c944e6551af02c7b57e117f3.mp3","itemType":"rect","fontScale":0.98046875,"imgScale":4.139756944444445,"mapScale":0.98046875,"skeJsonData":{"url":"http://staging-teach.cdn.ireadabc.com/ab66b9d704187f60fd8a61c981435b8e.json","name":"finish2_ske.json"},"texJsonData":{"url":"http://staging-teach.cdn.ireadabc.com/a4b74d67df855493b394c7df9625ba24.json","name":"finish2_tex.json"},"texPngData":{"url":"http://staging-teach.cdn.ireadabc.com/e485027385bab93761a5d1749166ba83.png","name":"finish2_tex.png"},"gIdx":"0","fontSize":50,"fontName":"BRLNSR_1","ontColor":"#8f3758","rect":{"x":75.22,"y":135.5,"width":200,"height":200}},{"id":"1597805655229","index":1,"pic_url":"http://staging-teach.cdn.ireadabc.com/18f2a029e02d679da8d42746daea228f.png","text":"home","audio_url":"http://staging-teach.cdn.ireadabc.com/0128a59057e63c4c6b4b96556d077a98.mp3","itemType":"rect","fontScale":0.98046875,"imgScale":3.72578125,"mapScale":0.98046875,"skeJsonData":{"url":"http://staging-teach.cdn.ireadabc.com/bd825dcceea298d1146be8067ae3d17f.json","name":"finish1_ske.json"},"texJsonData":{"url":"http://staging-teach.cdn.ireadabc.com/246f8991b729fa3e5a7f4802de828efa.json","name":"finish1_tex.json"},"texPngData":{"url":"http://staging-teach.cdn.ireadabc.com/5a0c5af3e952acd0ac83a6e5c6f03ff1.png","name":"finish1_tex.png"},"gIdx":"0","fontSize":50,"fontName":"BRLNSR_1","ontColor":"#8f3758","rect":{"x":661.72,"y":69,"width":77,"height":77}}],"picArr":[{"pic_url":"http://staging-teach.cdn.ireadabc.com/29cdcc64c0898a1ec63f89b8b2fdd0e6.png","audio_url":"http://staging-teach.cdn.ireadabc.com/f51e3fedc88aa69a99f6ef579f7de047.mp3","text":"arrow"},{"pic_url":"http://staging-teach.cdn.ireadabc.com/18f2a029e02d679da8d42746daea228f.png","audio_url":"http://staging-teach.cdn.ireadabc.com/fbe2f23b9eb191a9330f99800e0d54d5.mp3","text":"home"}]}')},preload:function(){var t=this,e=this._imageResList.concat(this._audioResList).concat(this._animaResList);cc.assetManager.loadAny(e,null,null,function(e,i){console.log(" preload data, ",i),t.loadEnd(),window&&window.air&&window.air.hideAirClassLoading()})},addPreloadImage:function(){this.data.bgItem&&this._imageResList.push({url:this.data.bgItem.url})},addPreloadAudio:function(){var t=this;this.data.hotZoneItemArr&&this.data.hotZoneItemArr.forEach(function(e){t._audioResList.push({url:e.audio_url})})},addPreloadAnima:function(){this.data.hotZoneItemArr&&this.data.hotZoneItemArr.forEach(function(t){})},loadEnd:function(){this.initView()},initView:function(){this.initBg(),this.initHotZone(),this.initBottomPart(),this.initCircle(),this.initListener()},_cocosScale:null,initBg:function(){var t=cc.view.getFrameSize(),e=cc.winSize.width/t.width,i=cc.winSize.height/t.height,a=Math.min(e,i);this._cocosScale=a;var n=cc.find("Canvas/bg");e=t.width/n.width,i=t.height/n.height,n.scale=Math.max(e,i)*a,n.anchorX=1,n.anchorY=0,n.x=t.width/2*a,n.y=-t.height/2*a},initHotZone:function(){this.initHotZoneBg()},hotZoneBg:null,initHotZoneBg:function(){var t=this;this.hotZoneBg=new cc.Node,this.hotZoneBg.name="hotZoneBg",this.hotZoneBg.parent=cc.find("Canvas"),this.hotZoneBg.zIndex=4;cc.find("Canvas/Main Camera");this.data.bgItem&&cc.loader.load({url:this.data.bgItem.url},function(e,i){t.addMask(t.hotZoneBg),t.hotZoneBg.width=i.width,t.hotZoneBg.height=i.height;t.hotZoneBg.getBoundingBox();var a=cc.view.getFrameSize();cc.winSize;console.log("this.hotZoneBg.box: ",t.hotZoneBg.getBoundingBox()),console.log("let visiSize=cc.director.getVisibleSize();: ",cc.view.getVisibleSize()),console.log("lframeSize: ",a);var n=a.width/t._designSize.width,o=a.height/t._designSize.height,c=Math.min(n,o),h=cc.find("Canvas/bgBottom");h.scale=c*t._cocosScale,n=a.width*t._cocosScale/i.width,o=(a.height*t._cocosScale-80*c*t._cocosScale)/i.height;var s=new cc.Node,r=new cc.SpriteFrame(i);s.addComponent(cc.Sprite).spriteFrame=r,s.width=t.hotZoneBg.width,s.height=t.hotZoneBg.height,s.parent=t.hotZoneBg,t.hotZoneBg.scale=Math.min(n,o),t.hotZoneBg.y=a.height/2*t._cocosScale-t.hotZoneBg.height/2*t.hotZoneBg.scaleY;var d=cc.find("Canvas/bgWhite");d.y=t.hotZoneBg.y,d.scaleX=t.hotZoneBg.width*t.hotZoneBg.scaleX/d.width,d.scaleY=t.hotZoneBg.height*t.hotZoneBg.scaleY/d.height;var l=cc.find("Canvas"),g=new cc.Node;g.y=d.y,g.scaleX=d.scaleX,g.scaleY=d.scaleY,l.addChild(g);var u=g.addComponent(cc.Graphics);u.fillColor=cc.Color.BLACK.setA(30),u.fillRect(-d.width/2+8/d.scaleX*t.hotZoneBg.scale,-d.height/2-8/d.scaleX*t.hotZoneBg.scale,d.width,d.height),u.fill(),g.zIndex=1,d.zIndex=2,h.y=-a.height/2*t._cocosScale-15*h.scaleY,t.data.hotZoneItemArr.forEach(function(e){t.setOneCircle(e)})})},addMask:function(t){t.addComponent(cc.Mask).type=cc.Mask.Type.RECT},initBottomPart:function(){cc.find("Canvas/bgBottom").getComponent("bgBottom").setItemData(this.data.hotZoneItemArr)},setOneAnima:function(t){var e=this.hotZoneBg.scale*this.hotZoneBg.width/this.data.bgItem.rect.width,i=new cc.Node;i.name="rect"+t.index,this.hotZoneBg.addChild(i);var a=i.addComponent(cc.Graphics);a.lineWidth=4,a.strokeColor=cc.Color.BLACK,a.fillColor=cc.Color.WHITE.setA(100);var n=e/this.hotZoneBg.scaleY;i.width=t.rect.width*n,i.height=t.rect.height*n,i.x=-this.hotZoneBg.width/2+t.rect.x*n,i.y=this.hotZoneBg.height/2-t.rect.height*n-t.rect.y*n,i.anchorX=i.anchorY=0,this.data.bgItem.isShowDebugLine&&a.rect(0,0,i.width,i.height),a.stroke(),a.fill();var o=new cc.Node;o.name="anima_"+t.index,this.hotZoneBg.addChild(o),t.audio_url&&cc.assetManager.loadRemote(t.audio_url,function(t,e){o.audioClip=e});var c=o.addComponent(dragonBones.ArmatureDisplay),h=t.texPngData.url,s=t.skeJsonData.url,r=t.texJsonData.url;cc.loader.load(h,function(t,e){cc.loader.load({url:r,type:"txt"},function(t,a){cc.loader.load({url:s,type:"txt"},function(t,n){var h=new dragonBones.DragonBonesAtlasAsset;h.atlasJson=a,h.texture=e;var s=new dragonBones.DragonBonesAsset;s.dragonBonesJson=n,c.dragonAtlasAsset=h,c.dragonAsset=s;var r=JSON.parse(s.dragonBonesJson).armature;console.log("armatures: ",r);for(var d=[],l=0;l<r.length;l++)d.push(r[l].name);if(d.length>0){var g=d[0];c.armatureName=g;for(var u=r[0].animation,m=[],p=0;p<u.length;p++)m.push(u[p].name);i.addComponent(cc.Button),i.on("click",function(){i.isClicked,i.isClicked=!0,console.log("clicked"),o.audioClip&&(cc.audioEngine.stopAll(),cc.audioEngine.play(o.audioClip,!1,.8)),m.length>0&&c.playAnimation(m[0],1)})}})})})},setOnePic:function(t){var e=this,i=this.hotZoneBg.scale*this.hotZoneBg.width/this.data.bgItem.rect.width,a=new cc.Node;a.data=t,this.hotZoneBg.addChild(a),cc.loader.load({url:t.pic_url},function(n,o){a.addComponent(cc.Sprite).spriteFrame=new cc.SpriteFrame(o);var c=i/e.hotZoneBg.scaleY;a.width=t.rect.width*c,a.height=t.rect.height*c,a.x=-e.hotZoneBg.width/2+t.rect.x*c,a.y=e.hotZoneBg.height/2-t.rect.height*c-t.rect.y*c,a.anchorX=a.anchorY=0})},setOneCircle:function(t){var e=this,i=this.hotZoneBg.scale*this.hotZoneBg.width/this.data.bgItem.rect.width,a=new cc.Node;a.name="rect"+t.index,a.data=t,this.hotZoneBg.addChild(a);var n=i/this.hotZoneBg.scaleY;a.width=t.rect.width*n,a.height=t.rect.height*n,a.x=-this.hotZoneBg.width/2+t.rect.x*n,a.y=this.hotZoneBg.height/2-t.rect.height*n-t.rect.y*n,a.anchorX=a.anchorY=0,t.audio_url&&cc.assetManager.loadRemote(t.audio_url,function(e,i){t.audioClip=i}),a.addComponent(cc.Button),a.on("click",function(){e.showCircle(a)});var o=new cc.Node;o.name="anima_"+t.index,this.hotZoneBg.addChild(o),t.animaNode=o,t.audio_url&&cc.assetManager.loadRemote(t.audio_url,function(t,e){o.audioClip=e});var c=o.addComponent(dragonBones.ArmatureDisplay),h=t.texPngData.url,s=t.skeJsonData.url,r=t.texJsonData.url;cc.loader.load(h,function(t,e){cc.loader.load({url:r,type:"txt"},function(t,i){cc.loader.load({url:s,type:"txt"},function(t,n){var h=new dragonBones.DragonBonesAtlasAsset;h.atlasJson=i,h.texture=e;var s=new dragonBones.DragonBonesAsset;s.dragonBonesJson=n,c.dragonAtlasAsset=h,c.dragonAsset=s;var r=JSON.parse(s.dragonBonesJson).armature;console.log("armatures: ",r);for(var d=[],l=0;l<r.length;l++)d.push(r[l].name);if(d.length>0){var g=d[0];c.armatureName=g;for(var u=r[0].animation,m=[],p=0;p<u.length;p++)m.push(u[p].name);o.showAnima=function(){a.isClicked,a.isClicked=!0,console.log("clicked"),o.audioClip&&(cc.audioEngine.stopAll(),cc.audioEngine.play(o.audioClip,!1,.8)),m.length>0&&c.playAnimation(m[0],1)}}})})})},_circle:null,initCircle:function(){this._circle=cc.find("Canvas/circle"),this._circle.active=!1,this._circle.zIndex=12},showCircle:function(t){if(console.log(" in showCircle"),t==this._circle.itemNode)return t.data.animaNode.showAnima(),void this.hideCircle();this._circle.itemNode=t,t.x+=t.width/2,t.y+=t.height/2;var e=(0,a.getScaleRateBy2Node)(this._circle,t),i=(0,a.localPosTolocalPos)(this._circle,t);t.x-=t.width/2,t.y-=t.height/2,this._circle.scale*=e,this._circle.scale*=5/4,this._circle.x=i.x,this._circle.y=i.y,this._circle.active=!0,this._circle.opacity=0,cc.tween(this._circle).to(1,{opacity:255},{easing:"cubicOut"}).start()},initListener:function(){var t=this,e=cc.find("Canvas");e.addComponent(cc.Button),e.on("click",function(){t.hideCircle()})},hideCircle:function(){this._circle.itemNode=null,cc.tween(this._circle).to(1,{opacity:0},{easing:"cubicOut"}).start()}}),cc._RF.pop()},{"./util":"util"}],util:[function(t,e,i){"use strict";cc._RF.push(e,"5ac8b17OKNJaawviu75DIhe","util"),i.__esModule=!0,i.getPosByAngle=function(t,e){var i=t*Math.PI/180,a=Math.sin(i)*e,n=Math.cos(i)*e;return{x:a,y:n}},i.getAngleByPos=function(t,e,i,a){var n=Math.abs(t-i),o=Math.abs(e-a),c=Math.sqrt(Math.pow(n,2)+Math.pow(o,2)),h=o/c,s=Math.acos(h),r=Math.floor(180/(Math.PI/s)*100)/100;i>t&&a>e&&(r=180-r);i===t&&a>e&&(r=180);i>t&&a===e&&(r=90);i<t&&a>e&&(r=180+r);i<t&&a===e&&(r=270);i<t&&a<e&&(r=360-r);return r},i.exchangeNodePos=function(t,e){return t.convertToNodeSpaceAR(e._parent.convertToWorldSpaceAR(cc.v2(e.x,e.y)))},i.RandomInt=function(t,e){void 0===e&&(e=0);var i=Math.max(t,e),a=Math.min(t,e);return Math.floor(Math.random()*(i-a)+a)},i.randomSortByArr=function(t){var e=[],i=t.concat();for(;i.length>0;){var a=Math.floor(i.length*Math.random());e.push(i[a]),i.splice(a,1)}return e},i.setSprNodeMaxLen=function(t,e,i){var a=e/t.width,n=i/t.height,o=Math.min(a,n);t.scale=Math.round(1e3*o)/1e3},i.localPosTolocalPos=function(t,e){var i=e.parent.convertToWorldSpaceAR(cc.v2(e.x,e.y));return t.parent.convertToNodeSpaceAR(cc.v2(i.x,i.y))},i.getScaleRateBy2Node=function(t,e,i){void 0===i&&(i=!0);var a=e.getBoundingBoxToWorld(),n=t.getBoundingBoxToWorld(),o=a.width/n.width,c=a.height/n.height;return i?Math.max(o,c):Math.min(o,c)},cc._RF.pop()},{}]},{},["bgBottom","scene","util"]);
\ No newline at end of file
window.__require = function e(t, n, r) {
function s(o, u) {
if (!n[o]) {
if (!t[o]) {
var b = o.split("/");
b = b[b.length - 1];
if (!t[b]) {
var a = "function" == typeof __require && __require;
if (!u && a) return a(b, !0);
if (i) return i(b, !0);
throw new Error("Cannot find module '" + o + "'");
}
o = b;
}
var f = n[o] = {
exports: {}
};
t[o][0].call(f.exports, function(e) {
var n = t[o][1][e];
return s(n || e);
}, f, f.exports, e, t, n, r);
}
return n[o].exports;
}
var i = "function" == typeof __require && __require;
for (var o = 0; o < r.length; o++) s(r[o]);
return s;
}({
bgBottom: [ function(require, module, exports) {
"use strict";
cc._RF.push(module, "ff0e9h++NlKOLbC+Bu/RH2+", "bgBottom");
"use strict";
var _util = require("../script/util");
cc.Class({
extends: cc.Component,
properties: {},
_canTouch: null,
_isTop: null,
_arrowUp: null,
_arrowDown: null,
_pageIndex: null,
_maxPage: null,
_lineMaxCount: null,
_disW: null,
onLoad: function onLoad() {
this._canTouch = true;
this._isTop = false;
this._arrowUp = this.node.getChildByName("arrowUp");
this._arrowDown = this.node.getChildByName("arrowDown");
this.node.zIndex = 10;
this._itemLen = 75;
this._pageIndex = 0;
this._maxPage = 0;
this._disW = 5;
var maxW = 1190;
this._lineMaxCount = Math.floor(maxW / (this._disW + this._itemLen));
},
start: function start() {
this._initListener();
this._initItemLayer();
},
_itemLayer: null,
_initItemLayer: function _initItemLayer() {
this._itemLayer = new cc.Node();
this.node.addChild(this._itemLayer);
},
_initListener: function _initListener() {
this._initTopBtnListener();
this._initPageBtnListener();
},
_initTopBtnListener: function _initTopBtnListener() {
var _this = this;
var btn = this.node.getChildByName("btn");
btn.on("click", function() {
if (!_this._canTouch) return;
_this._canTouch = false;
var moveLen = 80 * _this.node.scaleY;
var time = .5;
var targetY = moveLen;
_this._isTop && (targetY = -moveLen);
cc.tween(_this.node).by(time, {
y: targetY
}).call(function() {
_this._canTouch = true;
}).start();
_this._setTopBtnState(time);
_this._isTop = !_this._isTop;
});
},
_pageUpBtn: null,
_pageDownBtn: null,
_initPageBtnListener: function _initPageBtnListener() {
var _this2 = this;
var pageUp = this.node.getChildByName("pageUp");
pageUp.on("click", function() {
if (!_this2._canTouch) return;
if (_this2._pageIndex <= 0) return;
_this2._pageIndex--;
_this2._refreshPage();
_this2._showBtnAnima(pageUp);
});
this._pageUpBtn = pageUp;
var pageDown = this.node.getChildByName("pageDown");
pageDown.on("click", function() {
if (!_this2._canTouch) return;
if (_this2._pageIndex >= _this2._maxPage) return;
_this2._pageIndex++;
_this2._refreshPage();
_this2._showBtnAnima(pageDown);
});
this._pageDownBtn = pageDown;
},
_showBtnAnima: function _showBtnAnima(btn) {
cc.tween(btn).to(.08, {
scale: 1.3
}, {
easing: "sineOut"
}).to(.08, {
scale: 1
}, {
easing: "sineOut"
}).start();
},
_setPageBtnState: function _setPageBtnState() {
if (0 == this._maxPage) {
this._pageUpBtn.active = this._pageDownBtn.active = false;
return;
}
0 == this._pageIndex ? this._pageUpBtn.opacity = 100 : this._pageUpBtn.opacity = 255;
this._pageIndex == this._maxPage ? this._pageDownBtn.opacity = 100 : this._pageDownBtn.opacity = 255;
},
_setTopBtnState: function _setTopBtnState(time) {
var arrow1, arrow2;
if (this._isTop) {
arrow1 = this._arrowDown;
arrow2 = this._arrowUp;
} else {
arrow1 = this._arrowUp;
arrow2 = this._arrowDown;
}
arrow1.scale = 1;
arrow2.scale = 0;
cc.tween(arrow1).to(time / 2, {
scale: 0
}, {
easing: "cubicOut"
}).start();
cc.tween(arrow2).delay(time / 2).to(time / 2, {
scale: 1
}, {
easing: "cubicOut"
}).start();
},
_dataArr: null,
setItemData: function setItemData(dataArr) {
console.log(" in setItemData", dataArr);
if (!dataArr || 0 == dataArr.length) return;
this._dataArr = dataArr;
this._maxPage = Math.ceil(dataArr.length / this._lineMaxCount) - 1;
this._pageIndex = 0;
this._refreshPage();
},
_itemLen: null,
_addOneItem: function _addOneItem(data) {
var item = new cc.Node();
item.width = this._itemLen;
item.height = this._itemLen;
this._addItemPic(item, data.pic_url);
this._addItemLabel(item, data.text);
this._addItemAudio(item, data.audio_url);
return item;
},
_addItemPic: function _addItemPic(item, url) {
var _this3 = this;
if (!url) return;
var imgLen = .8 * this._itemLen;
cc.assetManager.loadRemote(url, function(err, texture) {
var sprNode = new cc.Node();
item.addChild(sprNode);
sprNode.width = texture.width;
sprNode.height = texture.height;
sprNode.y = (_this3._itemLen - imgLen) / 2;
(0, _util.setSprNodeMaxLen)(sprNode, imgLen, imgLen);
var sf = new cc.SpriteFrame(texture);
sprNode.addComponent(cc.Sprite).spriteFrame = sf;
});
},
_labelFont: null,
_addItemLabel: function _addItemLabel(item, text) {
if (!text) return;
var labelNode = new cc.Node();
labelNode.color = cc.Color.BLACK;
var label = labelNode.addComponent(cc.Label);
label.string = text;
item.addChild(labelNode);
labelNode.y = .4 * -this._itemLen;
label.fontSize = 16;
label.verticalAlign = cc.Label.VerticalAlign.CENTER;
if (!this._labelFont) {
var fontLabel = this.node.getChildByName("font").getComponent(cc.Label);
this._labelFont = fontLabel.font;
}
label.font = this._labelFont;
},
_addItemAudio: function _addItemAudio(item, url) {
var _this4 = this;
if (!url) return;
cc.assetManager.loadRemote(url, function(err, audioClip) {
item.audioClip = audioClip;
_this4._addItemListener(item);
});
},
_addItemListener: function _addItemListener(item) {
item.addComponent(cc.Button);
item.on("click", function() {
if (item.audioClip) {
cc.audioEngine.stopAll();
cc.audioEngine.play(item.audioClip, false, .5);
}
});
},
_refreshPage: function _refreshPage() {
var _this5 = this;
this._itemLayer.removeAllChildren();
var dataArr = this._dataArr;
var disW = this._disW;
var startIndex = this._pageIndex * this._lineMaxCount;
var showArr = dataArr.slice(startIndex, startIndex + this._lineMaxCount);
var baseX = -(disW + this._itemLen) * (showArr.length - 1) / 2;
var baseY = -25;
showArr.forEach(function(data, i) {
var item = _this5._addOneItem(data);
_this5._itemLayer.addChild(item);
item.x = baseX + (disW + _this5._itemLen) * i;
item.y = baseY;
});
this._setPageBtnState();
}
});
cc._RF.pop();
}, {
"../script/util": "util"
} ],
scene: [ function(require, module, exports) {
"use strict";
cc._RF.push(module, "335fea4K1JFqanJyztUAUJR", "scene");
"use strict";
var _util = require("./util");
cc.Class({
extends: cc.Component,
properties: {
baseWidth: {
default: 1280,
type: cc.Integer
},
baseHeight: {
default: 720,
type: cc.Integer
}
},
onLoad: function onLoad() {
cc.debug.setDisplayStats(false);
this.initSceneData();
this.initSize();
},
initSceneData: function initSceneData() {
this._imageResList = [];
this._audioResList = [];
this._animaResList = [];
},
_designSize: null,
initSize: function initSize() {
this._designSize = cc.view.getDesignResolutionSize();
},
start: function start() {
var _this = this;
var getData = this.getData.bind(this);
window && window.courseware && (getData = window.courseware.getData);
getData(function(data) {
console.log("data:", data);
_this.data = data || _this.getDefaultData();
_this.preloadItem();
});
},
_imageResList: null,
_audioResList: null,
_animaResList: null,
preloadItem: function preloadItem() {
this.addPreloadImage();
this.addPreloadAudio();
this.addPreloadAnima();
this.preload();
},
getData: function getData(func) {
func(this.getDefaultData());
},
getDefaultData: function getDefaultData() {
var dataJson = '{"bgItem":{"url":"http://staging-teach.cdn.ireadabc.com/cea0606b09735d7346dc57626f0a0a9b.png","rect":{"x":205.28,"y":0,"width":844.44,"height":475}},"hotZoneItemArr":[{"id":"1597805601321","index":0,"pic_url":"http://staging-teach.cdn.ireadabc.com/ddf2a304102c90bd2ed1cadf27f8feb7.png","text":"arrow","audio_url":"http://staging-teach.cdn.ireadabc.com/1961d807c944e6551af02c7b57e117f3.mp3","itemType":"rect","fontScale":0.98046875,"imgScale":4.139756944444445,"mapScale":0.98046875,"skeJsonData":{"url":"http://staging-teach.cdn.ireadabc.com/ab66b9d704187f60fd8a61c981435b8e.json","name":"finish2_ske.json"},"texJsonData":{"url":"http://staging-teach.cdn.ireadabc.com/a4b74d67df855493b394c7df9625ba24.json","name":"finish2_tex.json"},"texPngData":{"url":"http://staging-teach.cdn.ireadabc.com/e485027385bab93761a5d1749166ba83.png","name":"finish2_tex.png"},"gIdx":"0","fontSize":50,"fontName":"BRLNSR_1","ontColor":"#8f3758","rect":{"x":75.22,"y":135.5,"width":200,"height":200}},{"id":"1597805655229","index":1,"pic_url":"http://staging-teach.cdn.ireadabc.com/18f2a029e02d679da8d42746daea228f.png","text":"home","audio_url":"http://staging-teach.cdn.ireadabc.com/0128a59057e63c4c6b4b96556d077a98.mp3","itemType":"rect","fontScale":0.98046875,"imgScale":3.72578125,"mapScale":0.98046875,"skeJsonData":{"url":"http://staging-teach.cdn.ireadabc.com/bd825dcceea298d1146be8067ae3d17f.json","name":"finish1_ske.json"},"texJsonData":{"url":"http://staging-teach.cdn.ireadabc.com/246f8991b729fa3e5a7f4802de828efa.json","name":"finish1_tex.json"},"texPngData":{"url":"http://staging-teach.cdn.ireadabc.com/5a0c5af3e952acd0ac83a6e5c6f03ff1.png","name":"finish1_tex.png"},"gIdx":"0","fontSize":50,"fontName":"BRLNSR_1","ontColor":"#8f3758","rect":{"x":661.72,"y":69,"width":77,"height":77}}],"picArr":[{"pic_url":"http://staging-teach.cdn.ireadabc.com/29cdcc64c0898a1ec63f89b8b2fdd0e6.png","audio_url":"http://staging-teach.cdn.ireadabc.com/f51e3fedc88aa69a99f6ef579f7de047.mp3","text":"arrow"},{"pic_url":"http://staging-teach.cdn.ireadabc.com/18f2a029e02d679da8d42746daea228f.png","audio_url":"http://staging-teach.cdn.ireadabc.com/fbe2f23b9eb191a9330f99800e0d54d5.mp3","text":"home"}]}';
var data1 = JSON.parse(dataJson);
return data1;
var data;
},
preload: function preload() {
var _this2 = this;
var preloadArr = this._imageResList.concat(this._audioResList).concat(this._animaResList);
cc.assetManager.loadAny(preloadArr, null, null, function(err, data) {
console.log(" preload data, ", data);
_this2.loadEnd();
window && window["air"] && window["air"].hideAirClassLoading();
});
},
addPreloadImage: function addPreloadImage() {
this.data.bgItem && this._imageResList.push({
url: this.data.bgItem.url
});
},
addPreloadAudio: function addPreloadAudio() {
var _this3 = this;
if (!this.data.hotZoneItemArr) return;
this.data.hotZoneItemArr.forEach(function(item) {
_this3._audioResList.push({
url: item.audio_url
});
});
},
addPreloadAnima: function addPreloadAnima() {
if (!this.data.hotZoneItemArr) return;
this.data.hotZoneItemArr.forEach(function(item) {});
},
loadEnd: function loadEnd() {
this.initView();
},
initView: function initView() {
this.initBg();
this.initHotZone();
this.initBottomPart();
this.initCircle();
this.initListener();
},
_cocosScale: null,
initBg: function initBg() {
var frameSize = cc.view.getFrameSize();
var sx = cc.winSize.width / frameSize.width;
var sy = cc.winSize.height / frameSize.height;
var s = Math.min(sx, sy);
this._cocosScale = s;
var bgNode = cc.find("Canvas/bg");
sx = frameSize.width / bgNode.width;
sy = frameSize.height / bgNode.height;
bgNode.scale = Math.max(sx, sy) * s;
bgNode.anchorX = 1;
bgNode.anchorY = 0;
bgNode.x = frameSize.width / 2 * s;
bgNode.y = -frameSize.height / 2 * s;
var bg = cc.find("Canvas/bg");
var rectNode = new cc.Node();
rectNode.x = -bg.x;
rectNode.y = -bg.y;
rectNode.scaleX = bg.scaleX;
rectNode.scaleY = bg.scaleY;
bg.addChild(rectNode);
var ctx = rectNode.addComponent(cc.Graphics);
ctx.fillColor = this.data.bgColor || "#f9bd03";
ctx.fillRect(-bg.width / 2, -bg.height / 2, bg.width, bg.height);
ctx.fill();
},
initHotZone: function initHotZone() {
this.initHotZoneBg();
},
hotZoneBg: null,
initHotZoneBg: function initHotZoneBg() {
var _this4 = this;
this.hotZoneBg = new cc.Node();
this.hotZoneBg.name = "hotZoneBg";
this.hotZoneBg.parent = cc.find("Canvas");
this.hotZoneBg.zIndex = 4;
var canvas = cc.find("Canvas/Main Camera");
if (!this.data.bgItem) return;
cc.loader.load({
url: this.data.bgItem.url
}, function(err, img) {
_this4.addMask(_this4.hotZoneBg);
_this4.hotZoneBg.width = img.width;
_this4.hotZoneBg.height = img.height;
var box = _this4.hotZoneBg.getBoundingBox();
var tmpS = 640 / 720;
var subNum = 80;
var frameSize = cc.view.getFrameSize();
var winSize = cc.winSize;
console.log("this.hotZoneBg.box: ", _this4.hotZoneBg.getBoundingBox());
console.log("let visiSize=cc.director.getVisibleSize();: ", cc.view.getVisibleSize());
console.log("lframeSize: ", frameSize);
var sx = frameSize.width / _this4._designSize.width;
var sy = frameSize.height / _this4._designSize.height;
var mapS = Math.min(sx, sy);
var bgBottom = cc.find("Canvas/bgBottom");
bgBottom.scale = mapS * _this4._cocosScale;
sx = frameSize.width * _this4._cocosScale / img.width;
sy = (frameSize.height * _this4._cocosScale - subNum * mapS * _this4._cocosScale) / img.height;
var sprNode = new cc.Node();
var sf = new cc.SpriteFrame(img);
var spr = sprNode.addComponent(cc.Sprite);
spr.spriteFrame = sf;
sprNode.width = _this4.hotZoneBg.width;
sprNode.height = _this4.hotZoneBg.height;
sprNode.parent = _this4.hotZoneBg;
_this4.hotZoneBg.scale = Math.min(sx, sy);
_this4.hotZoneBg.y = frameSize.height / 2 * _this4._cocosScale - _this4.hotZoneBg.height / 2 * _this4.hotZoneBg.scaleY;
var bgWhite = cc.find("Canvas/bgWhite");
bgWhite.y = _this4.hotZoneBg.y;
bgWhite.scaleX = _this4.hotZoneBg.width * _this4.hotZoneBg.scaleX / bgWhite.width;
bgWhite.scaleY = _this4.hotZoneBg.height * _this4.hotZoneBg.scaleY / bgWhite.height;
var canvas = cc.find("Canvas");
var shadowNode = new cc.Node();
shadowNode.y = bgWhite.y;
shadowNode.scaleX = bgWhite.scaleX;
shadowNode.scaleY = bgWhite.scaleY;
canvas.addChild(shadowNode);
var ctx = shadowNode.addComponent(cc.Graphics);
ctx.fillColor = cc.Color.BLACK.setA(30);
ctx.fillRect(-bgWhite.width / 2 + 8 / bgWhite.scaleX * _this4.hotZoneBg.scale, -bgWhite.height / 2 - 8 / bgWhite.scaleX * _this4.hotZoneBg.scale, bgWhite.width, bgWhite.height);
ctx.fill();
shadowNode.zIndex = 1;
bgWhite.zIndex = 2;
bgBottom.y = -frameSize.height / 2 * _this4._cocosScale - 15 * bgBottom.scaleY;
_this4.data.hotZoneItemArr.forEach(function(item) {
_this4.setOneCircle(item);
});
});
},
addMask: function addMask(node) {
var mask = node.addComponent(cc.Mask);
mask.type = cc.Mask.Type.RECT;
},
initBottomPart: function initBottomPart() {
var bgBottom = cc.find("Canvas/bgBottom");
var script = bgBottom.getComponent("bgBottom");
script.setItemData(this.data.hotZoneItemArr);
},
setOneAnima: function setOneAnima(data) {
var rate = this.hotZoneBg.scale * this.hotZoneBg.width / this.data.bgItem.rect.width;
var rectNode = new cc.Node();
rectNode.name = "rect" + data.index;
this.hotZoneBg.addChild(rectNode);
var ctx = rectNode.addComponent(cc.Graphics);
ctx.lineWidth = 4;
ctx.strokeColor = cc.Color.BLACK;
ctx.fillColor = cc.Color.WHITE.setA(100);
var scale = rate / this.hotZoneBg.scaleY;
rectNode.width = data.rect.width * scale;
rectNode.height = data.rect.height * scale;
rectNode.x = -this.hotZoneBg.width / 2 + data.rect.x * scale;
rectNode.y = this.hotZoneBg.height / 2 - data.rect.height * scale - data.rect.y * scale;
rectNode.anchorX = rectNode.anchorY = 0;
this.data.bgItem.isShowDebugLine && ctx.rect(0, 0, rectNode.width, rectNode.height);
ctx.stroke();
ctx.fill();
var animaNode = new cc.Node();
animaNode.name = "anima_" + data.index;
this.hotZoneBg.addChild(animaNode);
data.audio_url && cc.assetManager.loadRemote(data.audio_url, function(err, audioClip) {
animaNode.audioClip = audioClip;
});
var dragonDisplay = animaNode.addComponent(dragonBones.ArmatureDisplay);
var image = data.texPngData.url;
var ske = data.skeJsonData.url;
var atlas = data.texJsonData.url;
cc.loader.load(image, function(error, texture) {
cc.loader.load({
url: atlas,
type: "txt"
}, function(error, atlasJson) {
cc.loader.load({
url: ske,
type: "txt"
}, function(error, dragonBonesJson) {
var atlas = new dragonBones.DragonBonesAtlasAsset();
atlas.atlasJson = atlasJson;
atlas.texture = texture;
var asset = new dragonBones.DragonBonesAsset();
asset.dragonBonesJson = dragonBonesJson;
dragonDisplay.dragonAtlasAsset = atlas;
dragonDisplay.dragonAsset = asset;
var json = JSON.parse(asset.dragonBonesJson);
var armatures = json["armature"];
console.log("armatures: ", armatures);
var armatureNames = [];
for (var i = 0; i < armatures.length; i++) armatureNames.push(armatures[i].name);
if (armatureNames.length > 0) {
var defaultArmatureName = armatureNames[0];
dragonDisplay.armatureName = defaultArmatureName;
var defaultArmature = armatures[0];
var animations = defaultArmature.animation;
var animationNames = [];
for (var _i = 0; _i < animations.length; _i++) animationNames.push(animations[_i].name);
rectNode.addComponent(cc.Button);
rectNode.on("click", function() {
rectNode.isClicked;
rectNode.isClicked = true;
console.log("clicked");
if (animaNode.audioClip) {
cc.audioEngine.stopAll();
cc.audioEngine.play(animaNode.audioClip, false, .8);
}
animationNames.length > 0 && dragonDisplay.playAnimation(animationNames[0], 1);
});
}
});
});
});
},
setOnePic: function setOnePic(data) {
var _this5 = this;
var rate = this.hotZoneBg.scale * this.hotZoneBg.width / this.data.bgItem.rect.width;
var picNode = new cc.Node();
picNode.data = data;
this.hotZoneBg.addChild(picNode);
cc.loader.load({
url: data.pic_url
}, function(err, img) {
var spr = picNode.addComponent(cc.Sprite);
spr.spriteFrame = new cc.SpriteFrame(img);
var scale = rate / _this5.hotZoneBg.scaleY;
picNode.width = data.rect.width * scale;
picNode.height = data.rect.height * scale;
picNode.x = -_this5.hotZoneBg.width / 2 + data.rect.x * scale;
picNode.y = _this5.hotZoneBg.height / 2 - data.rect.height * scale - data.rect.y * scale;
picNode.anchorX = picNode.anchorY = 0;
});
},
setOneCircle: function setOneCircle(data) {
var _this6 = this;
var rate = this.hotZoneBg.scale * this.hotZoneBg.width / this.data.bgItem.rect.width;
var rectNode = new cc.Node();
rectNode.name = "rect" + data.index;
rectNode.data = data;
this.hotZoneBg.addChild(rectNode);
var scale = rate / this.hotZoneBg.scaleY;
rectNode.width = data.rect.width * scale;
rectNode.height = data.rect.height * scale;
rectNode.x = -this.hotZoneBg.width / 2 + data.rect.x * scale;
rectNode.y = this.hotZoneBg.height / 2 - data.rect.height * scale - data.rect.y * scale;
rectNode.anchorX = rectNode.anchorY = 0;
data.audio_url && cc.assetManager.loadRemote(data.audio_url, function(err, audioClip) {
data.audioClip = audioClip;
});
rectNode.addComponent(cc.Button);
rectNode.on("click", function() {
_this6.showCircle(rectNode);
});
var animaNode = new cc.Node();
animaNode.name = "anima_" + data.index;
this.hotZoneBg.addChild(animaNode);
data.animaNode = animaNode;
data.audio_url && cc.assetManager.loadRemote(data.audio_url, function(err, audioClip) {
animaNode.audioClip = audioClip;
});
var dragonDisplay = animaNode.addComponent(dragonBones.ArmatureDisplay);
var image = data.texPngData.url;
var ske = data.skeJsonData.url;
var atlas = data.texJsonData.url;
cc.loader.load(image, function(error, texture) {
cc.loader.load({
url: atlas,
type: "txt"
}, function(error, atlasJson) {
cc.loader.load({
url: ske,
type: "txt"
}, function(error, dragonBonesJson) {
var atlas = new dragonBones.DragonBonesAtlasAsset();
atlas.atlasJson = atlasJson;
atlas.texture = texture;
var asset = new dragonBones.DragonBonesAsset();
asset.dragonBonesJson = dragonBonesJson;
dragonDisplay.dragonAtlasAsset = atlas;
dragonDisplay.dragonAsset = asset;
var json = JSON.parse(asset.dragonBonesJson);
var armatures = json["armature"];
console.log("armatures: ", armatures);
var armatureNames = [];
for (var i = 0; i < armatures.length; i++) armatureNames.push(armatures[i].name);
if (armatureNames.length > 0) {
var defaultArmatureName = armatureNames[0];
dragonDisplay.armatureName = defaultArmatureName;
var defaultArmature = armatures[0];
var animations = defaultArmature.animation;
var animationNames = [];
for (var _i2 = 0; _i2 < animations.length; _i2++) animationNames.push(animations[_i2].name);
animaNode.showAnima = function() {
rectNode.isClicked;
rectNode.isClicked = true;
console.log("clicked");
if (animaNode.audioClip) {
cc.audioEngine.stopAll();
cc.audioEngine.play(animaNode.audioClip, false, .8);
}
animationNames.length > 0 && dragonDisplay.playAnimation(animationNames[0], 1);
};
}
});
});
});
},
_circle: null,
initCircle: function initCircle() {
this._circle = cc.find("Canvas/circle");
this._circle.active = false;
this._circle.zIndex = 12;
},
showCircle: function showCircle(node) {
console.log(" in showCircle");
if (node == this._circle.itemNode) {
node.data.animaNode.showAnima();
this.hideCircle();
return;
}
this._circle.itemNode = node;
node.x += node.width / 2;
node.y += node.height / 2;
var rate = (0, _util.getScaleRateBy2Node)(this._circle, node);
var pos = (0, _util.localPosTolocalPos)(this._circle, node);
node.x -= node.width / 2;
node.y -= node.height / 2;
this._circle.scale *= rate;
this._circle.scale *= 5 / 4;
this._circle.x = pos.x;
this._circle.y = pos.y;
this._circle.active = true;
this._circle.opacity = 0;
cc.tween(this._circle).to(1, {
opacity: 255
}, {
easing: "cubicOut"
}).start();
},
initListener: function initListener() {
var _this7 = this;
var canvas = cc.find("Canvas");
canvas.addComponent(cc.Button);
canvas.on("click", function() {
_this7.hideCircle();
});
},
hideCircle: function hideCircle() {
this._circle.itemNode = null;
cc.tween(this._circle).to(1, {
opacity: 0
}, {
easing: "cubicOut"
}).start();
}
});
cc._RF.pop();
}, {
"./util": "util"
} ],
util: [ function(require, module, exports) {
"use strict";
cc._RF.push(module, "5ac8b17OKNJaawviu75DIhe", "util");
"use strict";
exports.__esModule = true;
exports.getPosByAngle = getPosByAngle;
exports.getAngleByPos = getAngleByPos;
exports.exchangeNodePos = exchangeNodePos;
exports.RandomInt = RandomInt;
exports.randomSortByArr = randomSortByArr;
exports.setSprNodeMaxLen = setSprNodeMaxLen;
exports.localPosTolocalPos = localPosTolocalPos;
exports.getScaleRateBy2Node = getScaleRateBy2Node;
function getPosByAngle(angle, len) {
var radian = angle * Math.PI / 180;
var x = Math.sin(radian) * len;
var y = Math.cos(radian) * len;
return {
x: x,
y: y
};
}
function getAngleByPos(px, py, mx, my) {
var x = Math.abs(px - mx);
var y = Math.abs(py - my);
var z = Math.sqrt(Math.pow(x, 2) + Math.pow(y, 2));
var cos = y / z;
var radina = Math.acos(cos);
var angle = Math.floor(180 / (Math.PI / radina) * 100) / 100;
mx > px && my > py && (angle = 180 - angle);
mx === px && my > py && (angle = 180);
mx > px && my === py && (angle = 90);
mx < px && my > py && (angle = 180 + angle);
mx < px && my === py && (angle = 270);
mx < px && my < py && (angle = 360 - angle);
return angle;
}
function exchangeNodePos(baseNode, targetNode) {
return baseNode.convertToNodeSpaceAR(targetNode._parent.convertToWorldSpaceAR(cc.v2(targetNode.x, targetNode.y)));
}
function RandomInt(a, b) {
void 0 === b && (b = 0);
var max = Math.max(a, b);
var min = Math.min(a, b);
return Math.floor(Math.random() * (max - min) + min);
}
function randomSortByArr(arr) {
var newArr = [];
var tmpArr = arr.concat();
while (tmpArr.length > 0) {
var randomIndex = Math.floor(tmpArr.length * Math.random());
newArr.push(tmpArr[randomIndex]);
tmpArr.splice(randomIndex, 1);
}
return newArr;
}
function setSprNodeMaxLen(sprNode, maxW, maxH) {
var sx = maxW / sprNode.width;
var sy = maxH / sprNode.height;
var s = Math.min(sx, sy);
sprNode.scale = Math.round(1e3 * s) / 1e3;
}
function localPosTolocalPos(baseNode, targetNode) {
var worldPos = targetNode.parent.convertToWorldSpaceAR(cc.v2(targetNode.x, targetNode.y));
var localPos = baseNode.parent.convertToNodeSpaceAR(cc.v2(worldPos.x, worldPos.y));
return localPos;
}
function getScaleRateBy2Node(baseNode, targetNode, maxFlag) {
void 0 === maxFlag && (maxFlag = true);
var worldRect1 = targetNode.getBoundingBoxToWorld();
var worldRect2 = baseNode.getBoundingBoxToWorld();
var sx = worldRect1.width / worldRect2.width;
var sy = worldRect1.height / worldRect2.height;
return maxFlag ? Math.max(sx, sy) : Math.min(sx, sy);
}
cc._RF.pop();
}, {} ]
}, {}, [ "bgBottom", "scene", "util" ]);
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -15,14 +15,14 @@
<meta name="renderer" content="webkit"/>
<meta name="force-rendering" content="webkit"/>
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"/>
<link rel="stylesheet" type="text/css" href="style-desktop.css"/>
<link rel="icon" href="favicon.ico"/>
</head>
<body>
<h1 class="header">play</h1>
<div id="GameDiv" style="width:1280px; height: 720px;">
<div id="GameDiv" style="width:1280px; height: 720px;">
<canvas id="GameCanvas" width="1280" height="720"></canvas>
<div id="splash">
<div class="progress-bar stripes">
......@@ -31,7 +31,7 @@
</div>
</div>
<p class="footer">Made with <a href="https://www.cocos.com/products#CocosCreator" title="cocos creator">Cocos Creator</a></p>
<p class="footer">Made with <a href="https://www.cocos.com/products#CocosCreator" title="Cocos Creator">Cocos Creator</a></p>
<script src="src/settings.js" charset="utf-8"></script>
<script src="main.js" charset="utf-8"></script>
......@@ -70,6 +70,5 @@
});
})();
</script>
</body>
</html>
This source diff could not be displayed because it is too large. You can view the blob instead.
window._CCSettings={platform:"web-desktop",groupList:["default"],collisionMatrix:[[true]],hasResourcesBundle:false,hasStartSceneBundle:false,remoteBundles:[],subpackages:[],launchScene:"db://assets/mz_004/scene/scene.fire",orientation:"",jsList:[]};
\ No newline at end of file
window._CCSettings = {
platform: "web-desktop",
groupList: [
"default"
],
collisionMatrix: [
[
true
]
],
hasResourcesBundle: false,
hasStartSceneBundle: false,
remoteBundles: [],
subpackages: [],
launchScene: "db://assets/mz_004/scene/scene.fire",
orientation: "",
debug: true,
jsList: []
};
{
"9836134e-b892-4283-b6b2-78b5acf3ed45": {
"asset": 1592807258000,
"meta": 1607418166825,
"meta": 1607493469228,
"relativePath": "effects"
},
"430eccbf-bf2c-4e6e-8c0c-884bbb487f32": {
"asset": 1592807258000,
"meta": 1607418166869,
"meta": 1607493469260,
"relativePath": "effects/__builtin-editor-gizmo-line.effect"
},
"6c5cf6e1-b044-4eac-9431-835644d57381": {
"asset": 1592807258000,
"meta": 1607418166880,
"meta": 1607493469271,
"relativePath": "effects/__builtin-editor-gizmo-unlit.effect"
},
"115286d1-2e10-49ee-aab4-341583f607e8": {
"asset": 1592807258000,
"meta": 1607418166912,
"meta": 1607493469302,
"relativePath": "effects/__builtin-editor-gizmo.effect"
},
"abc2cb62-7852-4525-a90d-d474487b88f2": {
"asset": 1592807258000,
"meta": 1607418167011,
"meta": 1607493469426,
"relativePath": "effects/builtin-phong.effect"
},
"e2f00085-c597-422d-9759-52c360279106": {
"asset": 1592807258000,
"meta": 1607418167075,
"meta": 1607493469476,
"relativePath": "effects/builtin-toon.effect"
},
"f8e6b000-5643-4b86-9080-aa680ce1f599": {
"asset": 1592807258000,
"meta": 1607418167077,
"meta": 1607493469478,
"relativePath": "image"
},
"e851e89b-faa2-4484-bea6-5c01dd9f06e2": {
"asset": 1592807258000,
"meta": 1607418167100,
"meta": 1607493469497,
"relativePath": "image/default_btn_normal.png"
},
"71561142-4c83-4933-afca-cb7a17f67053": {
"asset": 1592807258000,
"meta": 1607418167099,
"meta": 1607493469499,
"relativePath": "image/default_btn_disabled.png"
},
"b43ff3c2-02bb-4874-81f7-f2dea6970f18": {
"asset": 1592807258000,
"meta": 1607418167114,
"meta": 1607493469508,
"relativePath": "image/default_btn_pressed.png"
},
"edd215b9-2796-4a05-aaf5-81f96c9281ce": {
"asset": 1592807258000,
"meta": 1607418167113,
"meta": 1607493469510,
"relativePath": "image/default_editbox_bg.png"
},
"d81ec8ad-247c-4e62-aa3c-d35c4193c7af": {
"asset": 1592807258000,
"meta": 1607418167128,
"meta": 1607493469519,
"relativePath": "image/default_panel.png"
},
"99170b0b-d210-46f1-b213-7d9e3f23098a": {
"asset": 1592807258000,
"meta": 1607418167130,
"meta": 1607493469520,
"relativePath": "image/default_progressbar_bg.png"
},
"cfef78f1-c8df-49b7-8ed0-4c953ace2621": {
"asset": 1592807258000,
"meta": 1607418167144,
"meta": 1607493469529,
"relativePath": "image/default_progressbar.png"
},
"567dcd80-8bf4-4535-8a5a-313f1caf078a": {
"asset": 1592807258000,
"meta": 1607418167145,
"meta": 1607493469531,
"relativePath": "image/default_radio_button_off.png"
},
"9d60001f-b5f4-4726-a629-2659e3ded0b8": {
"asset": 1592807258000,
"meta": 1607418167159,
"meta": 1607493469543,
"relativePath": "image/default_radio_button_on.png"
},
"4bab67cb-18e6-4099-b840-355f0473f890": {
"asset": 1592807258000,
"meta": 1607418167158,
"meta": 1607493469542,
"relativePath": "image/default_scrollbar_bg.png"
},
"617323dd-11f4-4dd3-8eec-0caf6b3b45b9": {
"asset": 1592807258000,
"meta": 1607418167170,
"meta": 1607493469554,
"relativePath": "image/default_scrollbar_vertical_bg.png"
},
"d6d3ca85-4681-47c1-b5dd-d036a9d39ea2": {
"asset": 1592807258000,
"meta": 1607418167171,
"meta": 1607493469553,
"relativePath": "image/default_scrollbar_vertical.png"
},
"0275e94c-56a7-410f-bd1a-fc7483f7d14a": {
"asset": 1592807258000,
"meta": 1607418167181,
"meta": 1607493469561,
"relativePath": "image/default_sprite_splash.png"
},
"0291c134-b3da-4098-b7b5-e397edbe947f": {
"asset": 1592807258000,
"meta": 1607418167184,
"meta": 1607493469563,
"relativePath": "image/default_scrollbar.png"
},
"6e056173-d285-473c-b206-40a7fff5386e": {
"asset": 1592807258000,
"meta": 1607418167198,
"meta": 1607493469574,
"relativePath": "image/default_sprite.png"
},
"73a0903d-d80e-4e3c-aa67-f999543c08f5": {
"asset": 1592807258000,
"meta": 1607418167200,
"meta": 1607493469575,
"relativePath": "image/default_toggle_checkmark.png"
},
"d29077ba-1627-4a72-9579-7b56a235340c": {
"asset": 1592807258000,
"meta": 1607418167215,
"meta": 1607493469589,
"relativePath": "image/default_toggle_normal.png"
},
"c25b9d50-c8fc-4d27-beeb-6e7c1f2e5c0f": {
"asset": 1592807258000,
"meta": 1607418167217,
"meta": 1607493469588,
"relativePath": "image/default_toggle_disabled.png"
},
"b181c1e4-0a72-4a91-bfb0-ae6f36ca60bd": {
"asset": 1592807258000,
"meta": 1607418167232,
"meta": 1607493469597,
"relativePath": "image/default_toggle_pressed.png"
},
"5c3eedba-6c41-4c0c-9ba7-d91f813cbd1c": {
"asset": 1592807258000,
"meta": 1607418167234,
"meta": 1607493469598,
"relativePath": "materials"
},
"c4480a0a-6ac5-443f-8b40-361a14257fc8": {
"asset": 1592807258000,
"meta": 1607418167719,
"meta": 1607493469976,
"relativePath": "materials/builtin-phong.mtl"
},
"fc09f9bd-2cce-4605-b630-8145ef809ed6": {
"asset": 1592807258000,
"meta": 1607418167238,
"meta": 1607493469601,
"relativePath": "misc"
},
"2be36297-9abb-4fee-8049-9ed5e271da8a": {
"asset": 1592807258000,
"meta": 1607418167246,
"meta": 1607493469604,
"relativePath": "misc/default_video.mp4"
},
"db019bf7-f71c-4111-98cf-918ea180cb48": {
"asset": 1592807258000,
"meta": 1607418167248,
"meta": 1607493469604,
"relativePath": "model"
},
"e39e96e6-6f6e-413f-bcf1-ac7679bb648a": {
"asset": 1592807258000,
"meta": 1607418167249,
"meta": 1607493469605,
"relativePath": "model/prefab"
},
"a87cc147-01b2-43f8-8e42-a7ca90b0c757": {
"asset": 1599374686636,
"meta": 1607418167253,
"meta": 1607493469607,
"relativePath": "model/prefab/box.prefab"
},
"600301aa-3357-4a10-b086-84f011fa32ba": {
"asset": 1592807258000,
"meta": 1607418167256,
"meta": 1607493469610,
"relativePath": "image/default-particle.png"
},
"fe1417b6-fe6b-46a4-ae7c-9fd331f33a2a": {
"asset": 1599374686639,
"meta": 1607418167260,
"meta": 1607493469609,
"relativePath": "model/prefab/capsule.prefab"
},
"b5fc2cf2-7942-483d-be1f-bbeadc4714ad": {
"asset": 1599374686640,
"meta": 1607418167263,
"meta": 1607493469612,
"relativePath": "model/prefab/cone.prefab"
},
"1c5e4038-953a-44c2-b620-0bbfc6170477": {
"asset": 1599374686642,
"meta": 1607418167265,
"meta": 1607493469613,
"relativePath": "model/prefab/cylinder.prefab"
},
"3f376125-a699-40ca-ad05-04d662eaa1f2": {
"asset": 1599374686643,
"meta": 1607418167268,
"meta": 1607493469614,
"relativePath": "model/prefab/plane.prefab"
},
"6c9ef10d-b479-420b-bfe6-39cdda6a8ae0": {
"asset": 1599374686645,
"meta": 1607418167270,
"meta": 1607493469616,
"relativePath": "model/prefab/quad.prefab"
},
"2d9a4b85-b0ab-4c46-84c5-18f393ab2058": {
"asset": 1599374686646,
"meta": 1607418167273,
"meta": 1607493469617,
"relativePath": "model/prefab/sphere.prefab"
},
"de510076-056b-484f-b94c-83bef217d0e1": {
"asset": 1599374686668,
"meta": 1607418167306,
"meta": 1607493469635,
"relativePath": "model/prefab/torus.prefab"
},
"f6e6dd15-71d1-4ffe-ace7-24fd39942c05": {
"asset": 1592807258000,
"meta": 1607418167306,
"meta": 1607493469635,
"relativePath": "obsolete"
},
"8a96b965-2dc0-4e03-aa90-3b79cb93b5b4": {
"asset": 1592807258000,
"meta": 1607418167324,
"meta": 1607493469647,
"relativePath": "obsolete/atom.png"
},
"f743d2b6-b7ea-4c14-a55b-547ed4d0a045": {
"asset": 1592807258000,
"meta": 1607418167325,
"meta": 1607493469648,
"relativePath": "particle"
},
"b8223619-7e38-47c4-841f-9160c232495a": {
"asset": 1592807258000,
"meta": 1607418167740,
"meta": 1607493469993,
"relativePath": "obsolete/atom.plist"
},
"d0a82d39-bede-46c4-b698-c81ff0dedfff": {
"asset": 1592807258000,
"meta": 1607418167341,
"meta": 1607493469657,
"relativePath": "particle/atom.png"
},
"ae6c6c98-11e4-452f-8758-75f5c6a56e83": {
"asset": 1592807258000,
"meta": 1607418167342,
"meta": 1607493469658,
"relativePath": "prefab"
},
"897ef7a1-4860-4f64-968d-f5924b18668a": {
"asset": 1599374686692,
"meta": 1607418167344,
"meta": 1607493469659,
"relativePath": "prefab/2d-camera.prefab"
},
"b2687ac4-099e-403c-a192-ff477686f4f5": {
"asset": 1592807258000,
"meta": 1607418167743,
"meta": 1607493469994,
"relativePath": "particle/atom.plist"
},
"70d7cdb0-04cd-41bb-9480-c06a4785f386": {
"asset": 1599374686694,
"meta": 1607418167346,
"meta": 1607493469661,
"relativePath": "prefab/3d-camera.prefab"
},
"70bbeb73-6dc2-4ee4-8faf-76b3a0e34ec4": {
"asset": 1599374686696,
"meta": 1607418167349,
"meta": 1607493469663,
"relativePath": "prefab/3d-particle.prefab"
},
"ed88f13d-fcad-4848-aa35-65a2cb973584": {
"asset": 1599374686699,
"meta": 1607418167352,
"meta": 1607493469665,
"relativePath": "prefab/3d-stage.prefab"
},
"972b9a4d-47ee-4c74-b5c3-61d8a69bc29f": {
"asset": 1599374686701,
"meta": 1607418167354,
"meta": 1607493469666,
"relativePath": "prefab/button.prefab"
},
"2c937608-2562-40ea-b264-7395df6f0cea": {
"asset": 1599374686703,
"meta": 1607418167357,
"meta": 1607493469669,
"relativePath": "prefab/canvas.prefab"
},
"61aeb05b-3b32-452b-8eed-2b76deeed554": {
"asset": 1599374686704,
"meta": 1607418167359,
"meta": 1607493469671,
"relativePath": "prefab/editbox.prefab"
},
"27756ebb-3d33-44b0-9b96-e858fadd4dd4": {
"asset": 1599374686706,
"meta": 1607418167361,
"meta": 1607493469674,
"relativePath": "prefab/label.prefab"
},
"785a442c-3ceb-45be-a46e-7317f625f3b9": {
"asset": 1599374686711,
"meta": 1607418167363,
"meta": 1607493469676,
"relativePath": "prefab/layout.prefab"
},
"a3ee0214-b432-4865-9666-4a3211814282": {
"asset": 1592807258000,
"meta": 1607418167364,
"meta": 1607493469677,
"relativePath": "prefab/light"
},
"61906da3-7003-4bda-9abc-5769c76faee4": {
"asset": 1599374686714,
"meta": 1607418167366,
"meta": 1607493469680,
"relativePath": "prefab/light/ambient.prefab"
},
"ddb99b39-7004-47cd-9705-751905c43c46": {
"asset": 1599374686715,
"meta": 1607418167368,
"meta": 1607493469682,
"relativePath": "prefab/light/directional.prefab"
},
"0cf30284-9073-46bc-9eba-e62b69dbbff3": {
"asset": 1599374686717,
"meta": 1607418167370,
"meta": 1607493469684,
"relativePath": "prefab/light/point.prefab"
},
"f5331fd2-bf42-4ee3-a3fd-3e1657600eff": {
"asset": 1599374686718,
"meta": 1607418167372,
"meta": 1607493469686,
"relativePath": "prefab/light/spot.prefab"
},
"ca8401fe-ad6e-41a8-bd46-8e3e4e9945be": {
"asset": 1599374686728,
"meta": 1607418167375,
"meta": 1607493469688,
"relativePath": "prefab/pageview.prefab"
},
"cd33edea-55f5-46c2-958d-357a01384a36": {
"asset": 1599374686745,
"meta": 1607418167382,
"meta": 1607493469694,
"relativePath": "prefab/particlesystem.prefab"
},
"5965ffac-69da-4b55-bcde-9225d0613c28": {
"asset": 1599374686753,
"meta": 1607418167384,
"meta": 1607493469695,
"relativePath": "prefab/progressBar.prefab"
},
"4a37dd57-78cd-4cec-aad4-f11a73d12b63": {
"asset": 1599374686755,
"meta": 1607418167387,
"meta": 1607493469697,
"relativePath": "prefab/richtext.prefab"
},
"32044bd2-481f-4cf1-a656-e2b2fb1594eb": {
"asset": 1599374686776,
"meta": 1607418167390,
"meta": 1607493469698,
"relativePath": "prefab/scrollview.prefab"
},
"0004d1cf-a0ad-47d8-ab17-34d3db9d35a3": {
"asset": 1599374686794,
"meta": 1607418167392,
"meta": 1607493469700,
"relativePath": "prefab/slider.prefab"
},
"1f55e3be-b89b-4b79-88de-47fd31018044": {
"asset": 1599374686796,
"meta": 1607418167394,
"meta": 1607493469709,
"relativePath": "prefab/sprite_splash.prefab"
},
"96083d03-c332-4a3f-9386-d03e2d19e8ee": {
"asset": 1599374686799,
"meta": 1607418167396,
"meta": 1607493469710,
"relativePath": "prefab/sprite.prefab"
},
"7de03a80-4457-438d-95a7-3e7cdffd6086": {
"asset": 1599374686802,
"meta": 1607418167398,
"meta": 1607493469728,
"relativePath": "prefab/tiledmap.prefab"
},
"0e42ba95-1fa1-46aa-b2cf-143cd1bcee2c": {
"asset": 1599374686806,
"meta": 1607418167400,
"meta": 1607493469731,
"relativePath": "prefab/tiledtile.prefab"
},
"0d784963-d024-4ea6-a7db-03be0ad63010": {
"asset": 1599374686808,
"meta": 1607418167402,
"meta": 1607493469735,
"relativePath": "prefab/toggle.prefab"
},
"bf0a434c-84dd-4a8e-a08a-7a36f180cc75": {
"asset": 1599374686810,
"meta": 1607418167406,
"meta": 1607493469742,
"relativePath": "prefab/toggleContainer.prefab"
},
"d1b8be49-b0a0-435c-83b7-552bed4bbe35": {
"asset": 1599374686812,
"meta": 1607418167409,
"meta": 1607493469757,
"relativePath": "prefab/toggleGroup.prefab"
},
"232d2782-c4bd-4bb4-9e01-909f03d6d3b9": {
"asset": 1599374686813,
"meta": 1607418167411,
"meta": 1607493469758,
"relativePath": "prefab/videoplayer.prefab"
},
"8c5001fd-07ee-4a4b-a8a0-63e15195e94d": {
"asset": 1599374686827,
"meta": 1607418167413,
"meta": 1607493469762,
"relativePath": "prefab/webview.prefab"
},
"d8afc78c-4eac-4a9f-83dd-67bc70344d33": {
"asset": 1592807258000,
"meta": 1607418167414,
"meta": 1607493469763,
"relativePath": "resources"
},
"294c1663-4adf-4a1e-a795-53808011a38a": {
"asset": 1592807258000,
"meta": 1607418167414,
"meta": 1607493469763,
"relativePath": "resources/effects"
},
"30682f87-9f0d-4f17-8a44-72863791461b": {
"asset": 1592807258000,
"meta": 1607418167426,
"meta": 1607493469774,
"relativePath": "resources/effects/builtin-2d-graphics.effect"
},
"144c3297-af63-49e8-b8ef-1cfa29b3be28": {
"asset": 1592807258000,
"meta": 1607418167435,
"meta": 1607493469787,
"relativePath": "resources/effects/builtin-2d-gray-sprite.effect"
},
"f18742d7-56d2-4eb5-ae49-2d9d710b37c8": {
"asset": 1592807258000,
"meta": 1607418167453,
"meta": 1607493469797,
"relativePath": "resources/effects/builtin-2d-label.effect"
},
"0e93aeaa-0b53-4e40-b8e0-6268b4e07bd7": {
"asset": 1592807258000,
"meta": 1607418167464,
"meta": 1607493469804,
"relativePath": "resources/effects/builtin-2d-spine.effect"
},
"2874f8dd-416c-4440-81b7-555975426e93": {
"asset": 1592807258000,
"meta": 1607418167474,
"meta": 1607493469813,
"relativePath": "resources/effects/builtin-2d-sprite.effect"
},
"829a282c-b049-4019-bd38-5ace8d8a6417": {
"asset": 1592807258000,
"meta": 1607418167575,
"meta": 1607493469908,
"relativePath": "resources/effects/builtin-3d-particle.effect"
},
"2a7c0036-e0b3-4fe1-8998-89a54b8a2bec": {
"asset": 1592807258000,
"meta": 1607418167601,
"meta": 1607493469930,
"relativePath": "resources/effects/builtin-3d-trail.effect"
},
"c0040c95-c57f-49cd-9cbc-12316b73d0d4": {
"asset": 1592807258000,
"meta": 1607418167608,
"meta": 1607493469938,
"relativePath": "resources/effects/builtin-clear-stencil.effect"
},
"6d91e591-4ce0-465c-809f-610ec95019c6": {
"asset": 1592807258000,
"meta": 1607418167626,
"meta": 1607493469952,
"relativePath": "resources/effects/builtin-unlit.effect"
},
"bbee2217-c261-49bd-a8ce-708d6bcc3500": {
"asset": 1592807258000,
"meta": 1607418167627,
"meta": 1607493469953,
"relativePath": "resources/materials"
},
"6f801092-0c37-4f30-89ef-c8d960825b36": {
"asset": 1592807258000,
"meta": 1607418167770,
"meta": 1607493470072,
"relativePath": "resources/materials/builtin-2d-base.mtl"
},
"a153945d-2511-4c14-be7b-05d242f47d57": {
"asset": 1592807258000,
"meta": 1607418167771,
"meta": 1607493470073,
"relativePath": "resources/materials/builtin-2d-graphics.mtl"
},
"3a7bb79f-32fd-422e-ada2-96f518fed422": {
"asset": 1592807258000,
"meta": 1607418167773,
"meta": 1607493470074,
"relativePath": "resources/materials/builtin-2d-gray-sprite.mtl"
},
"e02d87d4-e599-4d16-8001-e14891ac6506": {
"asset": 1592807258000,
"meta": 1607418167774,
"meta": 1607493470076,
"relativePath": "resources/materials/builtin-2d-label.mtl"
},
"7afd064b-113f-480e-b793-8817d19f63c3": {
"asset": 1592807258000,
"meta": 1607418167775,
"meta": 1607493470077,
"relativePath": "resources/materials/builtin-2d-spine.mtl"
},
"eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432": {
"asset": 1592807258000,
"meta": 1607418167777,
"meta": 1607493470077,
"relativePath": "resources/materials/builtin-2d-sprite.mtl"
},
"432fa09c-cf03-4cff-a186-982604408a07": {
"asset": 1592807258000,
"meta": 1607418167778,
"meta": 1607493470078,
"relativePath": "resources/materials/builtin-3d-particle.mtl"
},
"466d4f9b-e5f4-4ea8-85d5-3c6e9a65658a": {
"asset": 1592807258000,
"meta": 1607418167778,
"meta": 1607493470080,
"relativePath": "resources/materials/builtin-3d-trail.mtl"
},
"cf7e0bb8-a81c-44a9-ad79-d28d43991032": {
"asset": 1592807258000,
"meta": 1607418167780,
"meta": 1607493470080,
"relativePath": "resources/materials/builtin-clear-stencil.mtl"
},
"2a296057-247c-4a1c-bbeb-0548b6c98650": {
"asset": 1592807258000,
"meta": 1607418167781,
"meta": 1607493470081,
"relativePath": "resources/materials/builtin-unlit.mtl"
},
"954fec8b-cd16-4bb9-a3b7-7719660e7558": {
"asset": 1592807258000,
"meta": 1607418170135,
"meta": 1607493471848,
"relativePath": "model/primitives.fbx"
},
"b3e401a5-91fc-4a28-87e3-0b4063ba359c": {
......
{"version":"1.0.8","stats":{"/Users/limingzhe/Documents/workspace/pro_hw/pro_cocos/cc_mz_004/play/temp/quick-scripts/src/__qc_index__.js":"2020-12-08T09:02:50.984Z","/Users/limingzhe/Documents/workspace/pro_hw/pro_cocos/cc_mz_004/play/temp/quick-scripts/src/assets/mz_004/script/scene.js":"2020-12-08T09:02:50.963Z","/Users/limingzhe/Documents/workspace/pro_hw/pro_cocos/cc_mz_004/play/temp/quick-scripts/src/assets/mz_004/prefab/bgBottom.js":"2020-12-08T09:02:50.965Z","/Users/limingzhe/Documents/workspace/pro_hw/pro_cocos/cc_mz_004/play/temp/quick-scripts/src/assets/mz_004/script/util.js":"2020-12-08T09:02:50.964Z"}}
{"version":"1.0.8","stats":{"/Users/limingzhe/Documents/workspace/pro_hw/pro_cocos/cc_mz_004/play/temp/quick-scripts/src/__qc_index__.js":"2020-12-09T05:57:51.956Z","/Users/limingzhe/Documents/workspace/pro_hw/pro_cocos/cc_mz_004/play/temp/quick-scripts/src/assets/mz_004/script/util.js":"2020-12-09T05:57:51.938Z","/Users/limingzhe/Documents/workspace/pro_hw/pro_cocos/cc_mz_004/play/temp/quick-scripts/src/assets/mz_004/prefab/bgBottom.js":"2020-12-09T05:57:51.940Z","/Users/limingzhe/Documents/workspace/pro_hw/pro_cocos/cc_mz_004/play/temp/quick-scripts/src/assets/mz_004/script/scene.js":"2020-12-09T05:57:51.936Z"}}
This source diff could not be displayed because it is too large. You can view the blob instead.
(function () {
var scripts = [{"deps":{"./assets/mz_004/script/util":3,"./assets/mz_004/prefab/bgBottom":2,"./assets/mz_004/script/scene":1},"path":"preview-scripts/__qc_index__.js"},{"deps":{"./util":3},"path":"preview-scripts/assets/mz_004/script/scene.js"},{"deps":{"../script/util":3},"path":"preview-scripts/assets/mz_004/prefab/bgBottom.js"},{"deps":{},"path":"preview-scripts/assets/mz_004/script/util.js"}];
var scripts = [{"deps":{"./assets/mz_004/script/util":1,"./assets/mz_004/prefab/bgBottom":2,"./assets/mz_004/script/scene":3},"path":"preview-scripts/__qc_index__.js"},{"deps":{},"path":"preview-scripts/assets/mz_004/script/util.js"},{"deps":{"../script/util":1},"path":"preview-scripts/assets/mz_004/prefab/bgBottom.js"},{"deps":{"./util":1},"path":"preview-scripts/assets/mz_004/script/scene.js"}];
var entries = ["preview-scripts/__qc_index__.js"];
var bundleScript = 'preview-scripts/__qc_bundle__.js';
......
{"version":3,"sources":["assets/mz_004/script/scene.js"],"names":["cc","Class","Component","properties","baseWidth","type","Integer","baseHeight","onLoad","initSceneData","initSize","_imageResList","_audioResList","_animaResList","_designSize","view","getDesignResolutionSize","start","getData","bind","window","courseware","data","console","log","getDefaultData","preloadItem","addPreloadImage","addPreloadAudio","addPreloadAnima","preload","func","dataJson","data1","JSON","parse","bgItem","rect","height","width","x","y","url","hotZoneItemArr","id","imgScale","index","itemType","mapScale","skeJsonData","name","texJsonData","texPngData","picArr","audio_url","pic_url","text","concat","preloadArr","assetManager","loadAny","err","loadEnd","hideAirClassLoading","push","forEach","item","initView","initBg","initHotZone","initBottomPart","initCircle","initListener","_cocosScale","frameSize","getFrameSize","sx","winSize","sy","s","Math","min","bgNode","find","scale","max","anchorX","anchorY","initHotZoneBg","hotZoneBg","Node","parent","zIndex","canvas","loader","load","img","addMask","box","getBoundingBox","tmpS","subNum","getVisibleSize","mapS","bgBottom","sprNode","sf","SpriteFrame","spr","addComponent","Sprite","spriteFrame","scaleY","bgWhite","scaleX","shadowNode","addChild","ctx","Graphics","fillColor","Color","BLACK","setA","fillRect","fill","setOneCircle","node","mask","Mask","Type","RECT","script","getComponent","setItemData","setOneAnima","rate","rectNode","lineWidth","strokeColor","WHITE","isShowDebugLine","stroke","animaNode","loadRemote","audioClip","dragonDisplay","dragonBones","ArmatureDisplay","image","ske","atlas","error","texture","atlasJson","dragonBonesJson","DragonBonesAtlasAsset","asset","DragonBonesAsset","dragonAtlasAsset","dragonAsset","json","armatures","armatureNames","i","length","defaultArmatureName","armatureName","defaultArmature","animations","animation","animationNames","Button","on","isClicked","audioEngine","stopAll","play","playAnimation","setOnePic","picNode","showCircle","showAnima","_circle","active","itemNode","hideCircle","pos","opacity","tween","to","easing"],"mappings":"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","sourceRoot":"/","sourcesContent":["// Learn cc.Class:\n// - https://docs.cocos.com/creator/manual/en/scripting/class.html\n// Learn Attribute:\n// - https://docs.cocos.com/creator/manual/en/scripting/reference/attributes.html\n// Learn life-cycle callbacks:\n// - https://docs.cocos.com/creator/manual/en/scripting/life-cycle-callbacks.html\n\nimport {getScaleRateBy2Node, localPosTolocalPos} from \"./util\";\n\ncc.Class({\n\textends: cc.Component,\n\n\tproperties: {\n\t\tbaseWidth: {\n\t\t\tdefault: 1280,\n\t\t\ttype: cc.Integer\n\t\t},\n\t\tbaseHeight: {\n\t\t\tdefault: 720,\n\t\t\ttype: cc.Integer\n\t\t}\n\t\t// foo: {\n\t\t// // ATTRIBUTES:\n\t\t// default: null, // The default value will be used only when the component attaching\n\t\t// // to a node for the first time\n\t\t// type: cc.SpriteFrame, // optional, default is typeof default\n\t\t// serializable: true, // optional, default is true\n\t\t// },\n\t\t// bar: {\n\t\t// get () {\n\t\t// return this._bar;\n\t\t// },\n\t\t// set (value) {\n\t\t// this._bar = value;\n\t\t// }\n\t\t// },\n\t},\n\n\t// LIFE-CYCLE CALLBACKS:\n\n\t// baseWidth: 1280;\n\t// baseHeight: 720;\n\n\tonLoad() {\n\t\tthis.initSceneData();\n\t\tthis.initSize();\n\t},\n\n\tinitSceneData() {\n\t\tthis._imageResList = [];\n\t\tthis._audioResList = [];\n\t\tthis._animaResList = [];\n\t},\n\n\t_designSize: null,\n\tinitSize() {\n\t\tthis._designSize = cc.view.getDesignResolutionSize();\n\n\t},\n\n\tstart() {\n\t\tlet getData = this.getData.bind(this);\n\t\tif (window && window.courseware) {\n\t\t\t// console.log('has window');\n\t\t\tgetData = window.courseware.getData;\n\t\t}\n\t\tgetData((data) => {\n\t\t\tconsole.log('data:', data);\n\t\t\tthis.data = data || this.getDefaultData();\n\t\t\tthis.preloadItem()\n\t\t})\n\t},\n\n\n\t_imageResList: null,\n\t_audioResList: null,\n\t_animaResList: null,\n\tpreloadItem() {\n\t\tthis.addPreloadImage();\n\t\tthis.addPreloadAudio();\n\t\tthis.addPreloadAnima();\n\t\tthis.preload();\n\t},\n\n\tgetData(func) {\n\t\tfunc(this.getDefaultData());\n\t},\n\n\tgetDefaultData() {\n\n\t\tconst dataJson = '{\"bgItem\":{\"url\":\"http://staging-teach.cdn.ireadabc.com/cea0606b09735d7346dc57626f0a0a9b.png\",\"rect\":{\"x\":205.28,\"y\":0,\"width\":844.44,\"height\":475}},\"hotZoneItemArr\":[{\"id\":\"1597805601321\",\"index\":0,\"pic_url\":\"http://staging-teach.cdn.ireadabc.com/ddf2a304102c90bd2ed1cadf27f8feb7.png\",\"text\":\"arrow\",\"audio_url\":\"http://staging-teach.cdn.ireadabc.com/1961d807c944e6551af02c7b57e117f3.mp3\",\"itemType\":\"rect\",\"fontScale\":0.98046875,\"imgScale\":4.139756944444445,\"mapScale\":0.98046875,\"skeJsonData\":{\"url\":\"http://staging-teach.cdn.ireadabc.com/ab66b9d704187f60fd8a61c981435b8e.json\",\"name\":\"finish2_ske.json\"},\"texJsonData\":{\"url\":\"http://staging-teach.cdn.ireadabc.com/a4b74d67df855493b394c7df9625ba24.json\",\"name\":\"finish2_tex.json\"},\"texPngData\":{\"url\":\"http://staging-teach.cdn.ireadabc.com/e485027385bab93761a5d1749166ba83.png\",\"name\":\"finish2_tex.png\"},\"gIdx\":\"0\",\"fontSize\":50,\"fontName\":\"BRLNSR_1\",\"ontColor\":\"#8f3758\",\"rect\":{\"x\":75.22,\"y\":135.5,\"width\":200,\"height\":200}},{\"id\":\"1597805655229\",\"index\":1,\"pic_url\":\"http://staging-teach.cdn.ireadabc.com/18f2a029e02d679da8d42746daea228f.png\",\"text\":\"home\",\"audio_url\":\"http://staging-teach.cdn.ireadabc.com/0128a59057e63c4c6b4b96556d077a98.mp3\",\"itemType\":\"rect\",\"fontScale\":0.98046875,\"imgScale\":3.72578125,\"mapScale\":0.98046875,\"skeJsonData\":{\"url\":\"http://staging-teach.cdn.ireadabc.com/bd825dcceea298d1146be8067ae3d17f.json\",\"name\":\"finish1_ske.json\"},\"texJsonData\":{\"url\":\"http://staging-teach.cdn.ireadabc.com/246f8991b729fa3e5a7f4802de828efa.json\",\"name\":\"finish1_tex.json\"},\"texPngData\":{\"url\":\"http://staging-teach.cdn.ireadabc.com/5a0c5af3e952acd0ac83a6e5c6f03ff1.png\",\"name\":\"finish1_tex.png\"},\"gIdx\":\"0\",\"fontSize\":50,\"fontName\":\"BRLNSR_1\",\"ontColor\":\"#8f3758\",\"rect\":{\"x\":661.72,\"y\":69,\"width\":77,\"height\":77}}],\"picArr\":[{\"pic_url\":\"http://staging-teach.cdn.ireadabc.com/29cdcc64c0898a1ec63f89b8b2fdd0e6.png\",\"audio_url\":\"http://staging-teach.cdn.ireadabc.com/f51e3fedc88aa69a99f6ef579f7de047.mp3\",\"text\":\"arrow\"},{\"pic_url\":\"http://staging-teach.cdn.ireadabc.com/18f2a029e02d679da8d42746daea228f.png\",\"audio_url\":\"http://staging-teach.cdn.ireadabc.com/fbe2f23b9eb191a9330f99800e0d54d5.mp3\",\"text\":\"home\"}]}'\n\t\tconst data1 = JSON.parse(dataJson);\n\t\treturn data1;\n\n\t\tconst data = {\n\t\t\tbgItem: {\n\t\t\t\trect: {\n\t\t\t\t\theight: 380,\n\t\t\t\t\twidth: 675.56,\n\t\t\t\t\tx: 160.72,\n\t\t\t\t\ty: 0\n\t\t\t\t},\n\t\t\t\t// url: \"http://staging-teach.cdn.ireadabc.com/b31c5881ea5f607c1d3540029a7d29c7.png\"\n\t\t\t\turl: \"http://staging-teach.cdn.ireadabc.com/756b0a8de4cb84ed70e70d60f87a5901.jpg\"\n\t\t\t},\n\t\t\thotZoneItemArr: [\n\t\t\t\t{\n\t\t\t\t\tid: 1595919608244,\n\t\t\t\t\timgScale: 1,\n\t\t\t\t\tindex: 0,\n\t\t\t\t\titemType: \"rect\",\n\t\t\t\t\tmapScale: 0.903125,\n\t\t\t\t\trect: {\n\t\t\t\t\t\theight: 120.84,\n\t\t\t\t\t\twidth: 115.99,\n\t\t\t\t\t\tx: 378.68,\n\t\t\t\t\t\ty: 191.3\n\t\t\t\t\t},\n\t\t\t\t\tskeJsonData: {\n\t\t\t\t\t\tname: \"finish1_ske.json\",\n\t\t\t\t\t\turl: \"http://staging-teach.cdn.ireadabc.com/bd825dcceea298d1146be8067ae3d17f.json\"\n\t\t\t\t\t},\n\t\t\t\t\ttexJsonData: {\n\t\t\t\t\t\tname: \"finish1_tex.json\",\n\t\t\t\t\t\turl: \"http://staging-teach.cdn.ireadabc.com/246f8991b729fa3e5a7f4802de828efa.json\"\n\t\t\t\t\t},\n\t\t\t\t\ttexPngData: {\n\t\t\t\t\t\tname: \"finish1_tex.png\",\n\t\t\t\t\t\turl: \"http://staging-teach.cdn.ireadabc.com/5a0c5af3e952acd0ac83a6e5c6f03ff1.png\"\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t],\n\n\t\t\tpicArr: [\n\t\t\t\t{\n\t\t\t\t\taudio_url: \"http://staging-teach.cdn.ireadabc.com/0128a59057e63c4c6b4b96556d077a98.mp3\",\n\t\t\t\t\tpic_url: \"http://staging-teach.cdn.ireadabc.com/18f2a029e02d679da8d42746daea228f.png\",\n\t\t\t\t\ttext: \"1111\",\n\t\t\t\t}\n\t\t\t]\n\t\t}\n\n\t\tdata.picArr = data.picArr.concat(data.picArr);\n\t\tdata.picArr = data.picArr.concat(data.picArr);\n\t\tdata.picArr = data.picArr.concat(data.picArr);\n\t\tdata.picArr = data.picArr.concat(data.picArr);\n\t\tdata.picArr = data.picArr.concat(data.picArr);\n\t\treturn data;\n\t},\n\n\tpreload() {\n\n\t\tconst preloadArr = this._imageResList.concat(this._audioResList).concat(this._animaResList);\n\t\tcc.assetManager.loadAny(preloadArr, null, null, (err, data) => {\n\t\t\tconsole.log(' preload data, ', data);\n\n\t\t\t// typeof\n\t\t\tthis.loadEnd();\n\t\t\tif (window && window[\"air\"]) {\n\t\t\t\twindow[\"air\"].hideAirClassLoading();\n\t\t\t}\n\t\t});\n\t},\n\n\taddPreloadImage() {\n\t\tif (this.data.bgItem) {\n\t\t\tthis._imageResList.push({url: this.data.bgItem.url});\n\t\t}\n\n\t},\n\n\taddPreloadAudio() {\n\n\t\tif (!this.data.hotZoneItemArr) {\n\t\t\treturn;\n\t\t}\n\t\tthis.data.hotZoneItemArr.forEach((item) => {\n\t\t\tthis._audioResList.push({url: item.audio_url});\n\t\t})\n\t},\n\n\taddPreloadAnima() {\n\t\tif (!this.data.hotZoneItemArr) {\n\t\t\treturn;\n\t\t}\n\t\tthis.data.hotZoneItemArr.forEach((item) => {\n\t\t\t// if (item.gIdx == '0') {\n\t\t\t// \tthis._animaResList.push({url: item.skeJsonData.url});\n\t\t\t// \tthis._animaResList.push({url: item.texJsonData.url});\n\t\t\t// \tthis._animaResList.push({url: item.texPngData.url});\n\t\t\t// }\n\n\t\t})\n\n\t},\n\n\tloadEnd() {\n\t\tthis.initView();\n\t},\n\n\tinitView() {\n\t\tthis.initBg();\n\t\tthis.initHotZone();\n\t\tthis.initBottomPart();\n\t\tthis.initCircle();\n\t\tthis.initListener();\n\t},\n\n\t_cocosScale: null,\n\tinitBg() {\n\t\tconst frameSize = cc.view.getFrameSize();\n\n\t\tlet sx = cc.winSize.width / frameSize.width;\n\t\tlet sy = cc.winSize.height / frameSize.height;\n\t\tlet s = Math.min(sx, sy);\n\n\t\tthis._cocosScale = s;\n\n\t\tconst bgNode = cc.find('Canvas/bg');\n\t\t// const sx = cc.winSize.width / bgNode.width;\n\t\t// const sy = cc.winSize.height / bgNode.height;\n\t\t sx = frameSize.width / bgNode.width;\n\t\t sy = frameSize.height / bgNode.height;\n\t\tbgNode.scale = Math.max(sx, sy) * s;\n\t\tbgNode.anchorX = 1;\n\t\tbgNode.anchorY = 0;\n\t\tbgNode.x = frameSize.width / 2 * s;\n\t\tbgNode.y = -frameSize.height / 2 * s;\n\t},\n\n\n\tinitHotZone() {\n\t\tthis.initHotZoneBg();\n\n\t},\n\n\thotZoneBg: null,\n\tinitHotZoneBg() {\n\t\tthis.hotZoneBg = new cc.Node();\n\t\tthis.hotZoneBg.name = 'hotZoneBg';\n\t\tthis.hotZoneBg.parent = cc.find('Canvas');\n\t\tthis.hotZoneBg.zIndex = 4;\n\n\n\t\tconst canvas = cc.find('Canvas/Main Camera');\n\t\t// console.log('canvas: ', canvas);\n\n\t\tif (!this.data.bgItem) {\n\t\t\treturn;\n\t\t}\n\n\t\tcc.loader.load({url: this.data.bgItem.url}, (err, img) => {\n\n\t\t\tthis.addMask(this.hotZoneBg);\n\n\t\t\tthis.hotZoneBg.width = img.width;\n\t\t\tthis.hotZoneBg.height = img.height;\n\n\n\n\t\t\tconst box = this.hotZoneBg.getBoundingBox();\n\n\n\t\t\tconst tmpS = 640 / 720;\n\t\t\tlet subNum = 720 - 640;\n\t\t\tconst frameSize = cc.view.getFrameSize();\n\t\t\tconst winSize = cc.winSize;\n\n\t\t\tconsole.log('this.hotZoneBg.box: ', this.hotZoneBg.getBoundingBox());\n\t\t\tconsole.log('let visiSize=cc.director.getVisibleSize();: ', cc.view.getVisibleSize());\n\t\t\tconsole.log('lframeSize: ', frameSize);\n\n\t\t\tlet sx = frameSize.width / this._designSize.width;\n\t\t\tlet sy = frameSize.height / this._designSize.height;\n\t\t\tconst mapS = Math.min(sx, sy);\n\t\t\t// const sy = canvas.height * tmpS / box.height;\n\n\n\t\t\tconst bgBottom = cc.find('Canvas/bgBottom');\n\t\t\tbgBottom.scale = mapS * this._cocosScale;\n\t\t\t// subNum = bgBottom.height;\n\n\t\t\t sx = frameSize.width * this._cocosScale / img.width;\n\t\t\t sy = (frameSize.height * this._cocosScale - subNum * mapS * this._cocosScale) / img.height;\n\n\n\t\t\tconst sprNode = new cc.Node();\n\t\t\tvar sf = new cc.SpriteFrame(img);\n\t\t\t// const spr = this.hotZoneBg.addComponent(cc.Sprite);\n\t\t\tconst spr = sprNode.addComponent(cc.Sprite);\n\t\t\tspr.spriteFrame = sf\n\t\t\tsprNode.width = this.hotZoneBg.width;\n\t\t\tsprNode.height = this.hotZoneBg.height;\n\t\t\tsprNode.parent = this.hotZoneBg;\n\n\t\t\tthis.hotZoneBg.scale = Math.min(sx, sy);\n\n\t\t\t// this.hotZoneBg.y = -frameSize.height / 2 * this._cocosScale + this.hotZoneBg.height / 2 * this.hotZoneBg.scaleY + (subNum * mapS * this._cocosScale);\n\t\t\tthis.hotZoneBg.y = frameSize.height / 2 * this._cocosScale - this.hotZoneBg.height / 2 * this.hotZoneBg.scaleY ;\n\n\n\t\t\t// this.hotZoneBg.opacity = 20;\n\n\t\t\tconst bgWhite = cc.find('Canvas/bgWhite');\n\t\t\tbgWhite.y = this.hotZoneBg.y;\n\n\t\t\tbgWhite.scaleX = this.hotZoneBg.width * this.hotZoneBg.scaleX / bgWhite.width;\n\t\t\tbgWhite.scaleY = this.hotZoneBg.height * this.hotZoneBg.scaleY / bgWhite.height;\n\n\n\t\t\tconst canvas = cc.find('Canvas');\n\t\t\tconst shadowNode = new cc.Node();\n\t\t\tshadowNode.y = bgWhite.y;\n\t\t\tshadowNode.scaleX = bgWhite.scaleX;\n\t\t\tshadowNode.scaleY = bgWhite.scaleY;\n\t\t\tcanvas.addChild(shadowNode);\n\t\t\tconst ctx = shadowNode.addComponent(cc.Graphics);\n\t\t\tctx.fillColor = cc.Color.BLACK.setA(30);\n\t\t\t// ctx.fillRect(5, 5, this.hotZoneBg.width*this.hotZoneBg.scaleX, this.hotZoneBg.height * this.hotZoneBg.scaleY);\n\t\t\tctx.fillRect(-bgWhite.width / 2 + 8 / bgWhite.scaleX * this.hotZoneBg.scale, -bgWhite.height / 2 - 8 / bgWhite.scaleX * this.hotZoneBg.scale, bgWhite.width, bgWhite.height);\n\t\t\tctx.fill();\n\n\t\t\tshadowNode.zIndex = 1;\n\t\t\tbgWhite.zIndex = 2;\n\n\t\t\tbgBottom.y = -frameSize.height / 2 * this._cocosScale - 15 * bgBottom.scaleY;\n\n\t\t\tthis.data.hotZoneItemArr.forEach((item) => {\n\t\t\t\t// if (item.gIdx == '0') {\n\t\t\t\t// \tthis.setOneAnima(item);\n\t\t\t\t// } else if (item.gIdx == '1') {\n\t\t\t\t// \tthis.setOnePic(item);\n\t\t\t\t// }\n\t\t\t\tthis.setOneCircle(item);\n\t\t\t});\n\n\t\t});\n\n\t},\n\n\taddMask(node) {\n\t\tconst mask = node.addComponent(cc.Mask);\n\t\tmask.type = cc.Mask.Type.RECT;\n\t},\n\n\tinitBottomPart() {\n\n\t\tconst bgBottom = cc.find('Canvas/bgBottom');\n\t\tconst script = bgBottom.getComponent('bgBottom');\n\t\tscript.setItemData(this.data.hotZoneItemArr);\n\t},\n\n\n\tsetOneAnima(data) {\n\n\n\t\tconst rate = (this.hotZoneBg.scale * this.hotZoneBg.width) / this.data.bgItem.rect.width;\n\n\t\tconst rectNode = new cc.Node();\n\t\trectNode.name = 'rect' + data.index;\n\t\tthis.hotZoneBg.addChild(rectNode);\n\n\n\t\tconst ctx = rectNode.addComponent(cc.Graphics);\n\t\t// 红色矩形\n\t\tctx.lineWidth = 4;\n\t\tctx.strokeColor = cc.Color.BLACK;\n\t\tctx.fillColor = cc.Color.WHITE.setA(100);\n\n\t\tconst scale = rate / this.hotZoneBg.scaleY;\n\n\t\trectNode.width = data.rect.width * scale;\n\t\trectNode.height = data.rect.height * scale;\n\t\trectNode.x = -this.hotZoneBg.width / 2 + data.rect.x * scale;\n\t\trectNode.y = this.hotZoneBg.height / 2 - data.rect.height * scale - data.rect.y * scale;\n\n\t\trectNode.anchorX = rectNode.anchorY = 0;\n\n\n\t\tif (this.data.bgItem.isShowDebugLine) {\n\t\t\tctx.rect(0, 0, rectNode.width, rectNode.height);\n\t\t}\n\t\tctx.stroke();\n\t\tctx.fill();\n\n\n\n\t\tconst animaNode = new cc.Node();\n\t\tanimaNode.name = 'anima_' + data.index;\n\t\tthis.hotZoneBg.addChild(animaNode);\n\n\t\t// rectNode.addChild(animaNode);\n\t\t// animaNode.x = rectNode.width / 2;\n\t\t// animaNode.y = rectNode.height / 2;\n\n\n\t\tif (data.audio_url) {\n\t\t\tcc.assetManager.loadRemote(data.audio_url, (err, audioClip) => {\n\t\t\t\tanimaNode.audioClip = audioClip;\n\t\t\t});\n\t\t}\n\n\n\t\tconst dragonDisplay = animaNode.addComponent(dragonBones.ArmatureDisplay);\n\n\t\tconst image = data.texPngData.url//\"http://staging-teach.cdn.ireadabc.com/5a0c5af3e952acd0ac83a6e5c6f03ff1.png\";\n\t\tconst ske = data.skeJsonData.url//\"http://staging-teach.cdn.ireadabc.com/bd825dcceea298d1146be8067ae3d17f.json\";\n\t\tconst atlas = data.texJsonData.url//\"http://staging-teach.cdn.ireadabc.com/246f8991b729fa3e5a7f4802de828efa.json\";\n\t\tcc.loader.load(image, (error, texture) => {\n\n\t\t\tcc.loader.load({url: atlas, type: 'txt'}, (error, atlasJson) => {\n\n\t\t\t\tcc.loader.load({url: ske, type: 'txt'}, (error, dragonBonesJson) => {\n\n\t\t\t\t\tconst atlas = new dragonBones.DragonBonesAtlasAsset();\n\t\t\t\t\tatlas.atlasJson = atlasJson;\n\t\t\t\t\tatlas.texture = texture;\n\n\t\t\t\t\tconst asset = new dragonBones.DragonBonesAsset();\n\t\t\t\t\tasset.dragonBonesJson = dragonBonesJson;\n\n\t\t\t\t\tdragonDisplay.dragonAtlasAsset = atlas;\n\t\t\t\t\tdragonDisplay.dragonAsset = asset;\n\n\t\t\t\t\tlet json = JSON.parse(asset.dragonBonesJson);\n\t\t\t\t\tlet armatures = json[\"armature\"];\n\t\t\t\t\tconsole.log('armatures: ', armatures);\n\t\t\t\t\tlet armatureNames = [];\n\t\t\t\t\tfor (let i = 0; i < armatures.length; i++) {\n\t\t\t\t\t\tarmatureNames.push(armatures[i].name);\n\t\t\t\t\t}\n\t\t\t\t\t// console.log('armatureNames: ', armatureNames);\n\t\t\t\t\tif (armatureNames.length > 0) {\n\t\t\t\t\t\tlet defaultArmatureName = armatureNames[0];\n\t\t\t\t\t\tdragonDisplay.armatureName = defaultArmatureName;\n\t\t\t\t\t\t// let animationNames = dragonDisplay.getAnimationNames(defaultArmatureName);\n\t\t\t\t\t\tlet defaultArmature = armatures[0];\n\t\t\t\t\t\tlet animations = defaultArmature.animation;\n\t\t\t\t\t\tlet animationNames = [];\n\t\t\t\t\t\tfor (let i = 0; i < animations.length; i++) {\n\t\t\t\t\t\t\tanimationNames.push(animations[i].name);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\trectNode.addComponent(cc.Button);\n\t\t\t\t\t\trectNode.on('click', () => {\n\t\t\t\t\t\t\tif (rectNode.isClicked) {\n\t\t\t\t\t\t\t\t// return;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\trectNode.isClicked = true;\n\t\t\t\t\t\t\tconsole.log('clicked');\n\n\t\t\t\t\t\t\tif (animaNode.audioClip) {\n\t\t\t\t\t\t\t\tcc.audioEngine.stopAll();\n\t\t\t\t\t\t\t\tcc.audioEngine.play(animaNode.audioClip, false, 0.8);\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tif (animationNames.length > 0) {\n\t\t\t\t\t\t\t\tdragonDisplay.playAnimation(animationNames[0], 1);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\n\t\t\t\t});\n\t\t\t});\n\t\t});\n\n\t},\n\n\n\tsetOnePic(data) {\n\t\tconst rate = (this.hotZoneBg.scale * this.hotZoneBg.width) / this.data.bgItem.rect.width;\n\n\t\tconst picNode = new cc.Node();\n\t\tpicNode.data = data;\n\t\tthis.hotZoneBg.addChild(picNode);\n\n\t\tcc.loader.load({url: data.pic_url}, (err, img) => {\n\n\t\t\tconst spr = picNode.addComponent(cc.Sprite);\n\t\t\tspr.spriteFrame = new cc.SpriteFrame(img)\n\n\t\t\tconst scale = rate / this.hotZoneBg.scaleY;\n\n\t\t\tpicNode.width = data.rect.width * scale;\n\t\t\tpicNode.height = data.rect.height * scale;\n\t\t\tpicNode.x = -this.hotZoneBg.width / 2 + data.rect.x * scale;\n\t\t\tpicNode.y = this.hotZoneBg.height / 2 - data.rect.height * scale - data.rect.y * scale;\n\n\t\t\tpicNode.anchorX = picNode.anchorY = 0;\n\t\t});\n\n\t},\n\n\tsetOneCircle(data) {\n\t\tconst rate = (this.hotZoneBg.scale * this.hotZoneBg.width) / this.data.bgItem.rect.width;\n\n\t\tconst rectNode = new cc.Node();\n\t\trectNode.name = 'rect' + data.index;\n\t\trectNode.data = data;\n\t\tthis.hotZoneBg.addChild(rectNode);\n\n\n\t\tconst scale = rate / this.hotZoneBg.scaleY;\n\n\t\trectNode.width = data.rect.width * scale;\n\t\trectNode.height = data.rect.height * scale;\n\t\trectNode.x = -this.hotZoneBg.width / 2 + data.rect.x * scale;\n\t\trectNode.y = this.hotZoneBg.height / 2 - data.rect.height * scale - data.rect.y * scale;\n\n\t\trectNode.anchorX = rectNode.anchorY = 0;\n\n\n\t\tif (data.audio_url) {\n\t\t\tcc.assetManager.loadRemote(data.audio_url, (err, audioClip) => {\n\t\t\t\tdata.audioClip = audioClip;\n\t\t\t});\n\t\t}\n\n\t\trectNode.addComponent(cc.Button);\n\t\trectNode.on('click', () => {\n\t\t\tthis.showCircle(rectNode);\n\t\t});\n\n\n\n\n\n\t\tconst animaNode = new cc.Node();\n\t\tanimaNode.name = 'anima_' + data.index;\n\t\tthis.hotZoneBg.addChild(animaNode);\n\t\tdata.animaNode = animaNode;\n\n\n\t\tif (data.audio_url) {\n\t\t\tcc.assetManager.loadRemote(data.audio_url, (err, audioClip) => {\n\t\t\t\tanimaNode.audioClip = audioClip;\n\t\t\t});\n\t\t}\n\n\n\t\tconst dragonDisplay = animaNode.addComponent(dragonBones.ArmatureDisplay);\n\n\t\tconst image = data.texPngData.url//\"http://staging-teach.cdn.ireadabc.com/5a0c5af3e952acd0ac83a6e5c6f03ff1.png\";\n\t\tconst ske = data.skeJsonData.url//\"http://staging-teach.cdn.ireadabc.com/bd825dcceea298d1146be8067ae3d17f.json\";\n\t\tconst atlas = data.texJsonData.url//\"http://staging-teach.cdn.ireadabc.com/246f8991b729fa3e5a7f4802de828efa.json\";\n\t\tcc.loader.load(image, (error, texture) => {\n\n\t\t\tcc.loader.load({url: atlas, type: 'txt'}, (error, atlasJson) => {\n\n\t\t\t\tcc.loader.load({url: ske, type: 'txt'}, (error, dragonBonesJson) => {\n\n\t\t\t\t\tconst atlas = new dragonBones.DragonBonesAtlasAsset();\n\t\t\t\t\tatlas.atlasJson = atlasJson;\n\t\t\t\t\tatlas.texture = texture;\n\n\t\t\t\t\tconst asset = new dragonBones.DragonBonesAsset();\n\t\t\t\t\tasset.dragonBonesJson = dragonBonesJson;\n\n\t\t\t\t\tdragonDisplay.dragonAtlasAsset = atlas;\n\t\t\t\t\tdragonDisplay.dragonAsset = asset;\n\n\t\t\t\t\tlet json = JSON.parse(asset.dragonBonesJson);\n\t\t\t\t\tlet armatures = json[\"armature\"];\n\t\t\t\t\tconsole.log('armatures: ', armatures);\n\t\t\t\t\tlet armatureNames = [];\n\t\t\t\t\tfor (let i = 0; i < armatures.length; i++) {\n\t\t\t\t\t\tarmatureNames.push(armatures[i].name);\n\t\t\t\t\t}\n\t\t\t\t\t// console.log('armatureNames: ', armatureNames);\n\t\t\t\t\tif (armatureNames.length > 0) {\n\t\t\t\t\t\tlet defaultArmatureName = armatureNames[0];\n\t\t\t\t\t\tdragonDisplay.armatureName = defaultArmatureName;\n\t\t\t\t\t\t// let animationNames = dragonDisplay.getAnimationNames(defaultArmatureName);\n\t\t\t\t\t\tlet defaultArmature = armatures[0];\n\t\t\t\t\t\tlet animations = defaultArmature.animation;\n\t\t\t\t\t\tlet animationNames = [];\n\t\t\t\t\t\tfor (let i = 0; i < animations.length; i++) {\n\t\t\t\t\t\t\tanimationNames.push(animations[i].name);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// rectNode.addComponent(cc.Button);\n\t\t\t\t\t\t// rectNode.on('click', () => {\n\t\t\t\t\t\tanimaNode.showAnima = () => {\n\t\t\t\t\t\t\tif (rectNode.isClicked) {\n\t\t\t\t\t\t\t\t// return;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\trectNode.isClicked = true;\n\t\t\t\t\t\t\tconsole.log('clicked');\n\n\t\t\t\t\t\t\tif (animaNode.audioClip) {\n\t\t\t\t\t\t\t\tcc.audioEngine.stopAll();\n\t\t\t\t\t\t\t\tcc.audioEngine.play(animaNode.audioClip, false, 0.8);\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tif (animationNames.length > 0) {\n\t\t\t\t\t\t\t\tdragonDisplay.playAnimation(animationNames[0], 1);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t});\n\t\t\t});\n\t\t});\n\n\t},\n\n\t_circle: null,\n\tinitCircle() {\n\n\t\tthis._circle = cc.find('Canvas/circle');\n\t\tthis._circle.active = false;\n\t\tthis._circle.zIndex = 12;\n\t},\n\n\tshowCircle(node) {\n\t\tconsole.log(' in showCircle');\n\n\t\tif (node == this._circle.itemNode) {\n\n\t\t\tnode.data.animaNode.showAnima();\n\t\t\t// if (node.data.audioClip) {\n\t\t\t// \tcc.audioEngine.stopAll();\n\t\t\t// \tcc.audioEngine.play(node.data.audioClip, false, 0.8);\n\t\t\t// }\n\t\t\tthis.hideCircle();\n\t\t\treturn;\n\t\t}\n\n\t\tthis._circle.itemNode = node;\n\n\t\tnode.x += node.width / 2;\n\t\tnode.y += node.height / 2;\n\t\tconst rate = getScaleRateBy2Node(this._circle, node);\n\t\tconst pos = localPosTolocalPos(this._circle, node);\n\t\tnode.x -= node.width / 2;\n\t\tnode.y -= node.height / 2;\n\n\t\tthis._circle.scale *= rate;\n\t\tthis._circle.scale *= (5/4);\n\n\t\tthis._circle.x = pos.x;\n\t\tthis._circle.y = pos.y;\n\n\t\tthis._circle.active = true;\n\n\t\tthis._circle.opacity = 0;\n\t\tcc.tween(this._circle)\n\t\t\t.to(1, {opacity: 255}, {easing: 'cubicOut'})\n\t\t\t.start();\n\n\t},\n\n\tinitListener() {\n\t\tconst canvas = cc.find('Canvas');\n\t\tcanvas.addComponent(cc.Button);\n\t\tcanvas.on('click', () => {\n\t\t\tthis.hideCircle();\n\t\t});\n\t},\n\n\thideCircle() {\n\t\tthis._circle.itemNode = null;\n\t\tcc.tween(this._circle)\n\t\t\t.to(1, {opacity: 0}, {easing: 'cubicOut'})\n\t\t\t.start();\n\t}\n\n\n\t// update (dt) {},\n});\n"]}
\ No newline at end of file
{"version":3,"sources":["assets/mz_004/script/scene.js"],"names":["cc","Class","Component","properties","baseWidth","type","Integer","baseHeight","onLoad","debug","setDisplayStats","initSceneData","initSize","_imageResList","_audioResList","_animaResList","_designSize","view","getDesignResolutionSize","start","getData","bind","window","courseware","data","console","log","getDefaultData","preloadItem","addPreloadImage","addPreloadAudio","addPreloadAnima","preload","func","dataJson","data1","JSON","parse","bgItem","rect","height","width","x","y","url","hotZoneItemArr","id","imgScale","index","itemType","mapScale","skeJsonData","name","texJsonData","texPngData","picArr","audio_url","pic_url","text","concat","preloadArr","assetManager","loadAny","err","loadEnd","hideAirClassLoading","push","forEach","item","initView","initBg","initHotZone","initBottomPart","initCircle","initListener","_cocosScale","frameSize","getFrameSize","sx","winSize","sy","s","Math","min","bgNode","find","scale","max","anchorX","anchorY","bg","rectNode","Node","scaleX","scaleY","addChild","ctx","addComponent","Graphics","fillColor","bgColor","fillRect","fill","initHotZoneBg","hotZoneBg","parent","zIndex","canvas","loader","load","img","addMask","box","getBoundingBox","tmpS","subNum","getVisibleSize","mapS","bgBottom","sprNode","sf","SpriteFrame","spr","Sprite","spriteFrame","bgWhite","shadowNode","Color","BLACK","setA","setOneCircle","node","mask","Mask","Type","RECT","script","getComponent","setItemData","setOneAnima","rate","lineWidth","strokeColor","WHITE","isShowDebugLine","stroke","animaNode","loadRemote","audioClip","dragonDisplay","dragonBones","ArmatureDisplay","image","ske","atlas","error","texture","atlasJson","dragonBonesJson","DragonBonesAtlasAsset","asset","DragonBonesAsset","dragonAtlasAsset","dragonAsset","json","armatures","armatureNames","i","length","defaultArmatureName","armatureName","defaultArmature","animations","animation","animationNames","Button","on","isClicked","audioEngine","stopAll","play","playAnimation","setOnePic","picNode","showCircle","showAnima","_circle","active","itemNode","hideCircle","pos","opacity","tween","to","easing"],"mappings":"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","sourceRoot":"/","sourcesContent":["// Learn cc.Class:\n// - https://docs.cocos.com/creator/manual/en/scripting/class.html\n// Learn Attribute:\n// - https://docs.cocos.com/creator/manual/en/scripting/reference/attributes.html\n// Learn life-cycle callbacks:\n// - https://docs.cocos.com/creator/manual/en/scripting/life-cycle-callbacks.html\n\nimport {getScaleRateBy2Node, localPosTolocalPos} from \"./util\";\n\ncc.Class({\n\textends: cc.Component,\n\n\tproperties: {\n\t\tbaseWidth: {\n\t\t\tdefault: 1280,\n\t\t\ttype: cc.Integer\n\t\t},\n\t\tbaseHeight: {\n\t\t\tdefault: 720,\n\t\t\ttype: cc.Integer\n\t\t}\n\t\t// foo: {\n\t\t// // ATTRIBUTES:\n\t\t// default: null, // The default value will be used only when the component attaching\n\t\t// // to a node for the first time\n\t\t// type: cc.SpriteFrame, // optional, default is typeof default\n\t\t// serializable: true, // optional, default is true\n\t\t// },\n\t\t// bar: {\n\t\t// get () {\n\t\t// return this._bar;\n\t\t// },\n\t\t// set (value) {\n\t\t// this._bar = value;\n\t\t// }\n\t\t// },\n\t},\n\n\t// LIFE-CYCLE CALLBACKS:\n\n\t// baseWidth: 1280;\n\t// baseHeight: 720;\n\n\tonLoad() {\n\t\tcc.debug.setDisplayStats(false);\n\t\tthis.initSceneData();\n\t\tthis.initSize();\n\t},\n\n\tinitSceneData() {\n\t\tthis._imageResList = [];\n\t\tthis._audioResList = [];\n\t\tthis._animaResList = [];\n\t},\n\n\t_designSize: null,\n\tinitSize() {\n\t\tthis._designSize = cc.view.getDesignResolutionSize();\n\n\t},\n\n\tstart() {\n\t\tlet getData = this.getData.bind(this);\n\t\tif (window && window.courseware) {\n\t\t\t// console.log('has window');\n\t\t\tgetData = window.courseware.getData;\n\t\t}\n\t\tgetData((data) => {\n\t\t\tconsole.log('data:', data);\n\t\t\tthis.data = data || this.getDefaultData();\n\t\t\tthis.preloadItem()\n\t\t})\n\t},\n\n\n\t_imageResList: null,\n\t_audioResList: null,\n\t_animaResList: null,\n\tpreloadItem() {\n\t\tthis.addPreloadImage();\n\t\tthis.addPreloadAudio();\n\t\tthis.addPreloadAnima();\n\t\tthis.preload();\n\t},\n\n\tgetData(func) {\n\t\tfunc(this.getDefaultData());\n\t},\n\n\tgetDefaultData() {\n\n\t\tconst dataJson = '{\"bgItem\":{\"url\":\"http://staging-teach.cdn.ireadabc.com/cea0606b09735d7346dc57626f0a0a9b.png\",\"rect\":{\"x\":205.28,\"y\":0,\"width\":844.44,\"height\":475}},\"hotZoneItemArr\":[{\"id\":\"1597805601321\",\"index\":0,\"pic_url\":\"http://staging-teach.cdn.ireadabc.com/ddf2a304102c90bd2ed1cadf27f8feb7.png\",\"text\":\"arrow\",\"audio_url\":\"http://staging-teach.cdn.ireadabc.com/1961d807c944e6551af02c7b57e117f3.mp3\",\"itemType\":\"rect\",\"fontScale\":0.98046875,\"imgScale\":4.139756944444445,\"mapScale\":0.98046875,\"skeJsonData\":{\"url\":\"http://staging-teach.cdn.ireadabc.com/ab66b9d704187f60fd8a61c981435b8e.json\",\"name\":\"finish2_ske.json\"},\"texJsonData\":{\"url\":\"http://staging-teach.cdn.ireadabc.com/a4b74d67df855493b394c7df9625ba24.json\",\"name\":\"finish2_tex.json\"},\"texPngData\":{\"url\":\"http://staging-teach.cdn.ireadabc.com/e485027385bab93761a5d1749166ba83.png\",\"name\":\"finish2_tex.png\"},\"gIdx\":\"0\",\"fontSize\":50,\"fontName\":\"BRLNSR_1\",\"ontColor\":\"#8f3758\",\"rect\":{\"x\":75.22,\"y\":135.5,\"width\":200,\"height\":200}},{\"id\":\"1597805655229\",\"index\":1,\"pic_url\":\"http://staging-teach.cdn.ireadabc.com/18f2a029e02d679da8d42746daea228f.png\",\"text\":\"home\",\"audio_url\":\"http://staging-teach.cdn.ireadabc.com/0128a59057e63c4c6b4b96556d077a98.mp3\",\"itemType\":\"rect\",\"fontScale\":0.98046875,\"imgScale\":3.72578125,\"mapScale\":0.98046875,\"skeJsonData\":{\"url\":\"http://staging-teach.cdn.ireadabc.com/bd825dcceea298d1146be8067ae3d17f.json\",\"name\":\"finish1_ske.json\"},\"texJsonData\":{\"url\":\"http://staging-teach.cdn.ireadabc.com/246f8991b729fa3e5a7f4802de828efa.json\",\"name\":\"finish1_tex.json\"},\"texPngData\":{\"url\":\"http://staging-teach.cdn.ireadabc.com/5a0c5af3e952acd0ac83a6e5c6f03ff1.png\",\"name\":\"finish1_tex.png\"},\"gIdx\":\"0\",\"fontSize\":50,\"fontName\":\"BRLNSR_1\",\"ontColor\":\"#8f3758\",\"rect\":{\"x\":661.72,\"y\":69,\"width\":77,\"height\":77}}],\"picArr\":[{\"pic_url\":\"http://staging-teach.cdn.ireadabc.com/29cdcc64c0898a1ec63f89b8b2fdd0e6.png\",\"audio_url\":\"http://staging-teach.cdn.ireadabc.com/f51e3fedc88aa69a99f6ef579f7de047.mp3\",\"text\":\"arrow\"},{\"pic_url\":\"http://staging-teach.cdn.ireadabc.com/18f2a029e02d679da8d42746daea228f.png\",\"audio_url\":\"http://staging-teach.cdn.ireadabc.com/fbe2f23b9eb191a9330f99800e0d54d5.mp3\",\"text\":\"home\"}]}'\n\t\tconst data1 = JSON.parse(dataJson);\n\t\treturn data1;\n\n\t\tconst data = {\n\t\t\tbgItem: {\n\t\t\t\trect: {\n\t\t\t\t\theight: 380,\n\t\t\t\t\twidth: 675.56,\n\t\t\t\t\tx: 160.72,\n\t\t\t\t\ty: 0\n\t\t\t\t},\n\t\t\t\t// url: \"http://staging-teach.cdn.ireadabc.com/b31c5881ea5f607c1d3540029a7d29c7.png\"\n\t\t\t\turl: \"http://staging-teach.cdn.ireadabc.com/756b0a8de4cb84ed70e70d60f87a5901.jpg\"\n\t\t\t},\n\t\t\thotZoneItemArr: [\n\t\t\t\t{\n\t\t\t\t\tid: 1595919608244,\n\t\t\t\t\timgScale: 1,\n\t\t\t\t\tindex: 0,\n\t\t\t\t\titemType: \"rect\",\n\t\t\t\t\tmapScale: 0.903125,\n\t\t\t\t\trect: {\n\t\t\t\t\t\theight: 120.84,\n\t\t\t\t\t\twidth: 115.99,\n\t\t\t\t\t\tx: 378.68,\n\t\t\t\t\t\ty: 191.3\n\t\t\t\t\t},\n\t\t\t\t\tskeJsonData: {\n\t\t\t\t\t\tname: \"finish1_ske.json\",\n\t\t\t\t\t\turl: \"http://staging-teach.cdn.ireadabc.com/bd825dcceea298d1146be8067ae3d17f.json\"\n\t\t\t\t\t},\n\t\t\t\t\ttexJsonData: {\n\t\t\t\t\t\tname: \"finish1_tex.json\",\n\t\t\t\t\t\turl: \"http://staging-teach.cdn.ireadabc.com/246f8991b729fa3e5a7f4802de828efa.json\"\n\t\t\t\t\t},\n\t\t\t\t\ttexPngData: {\n\t\t\t\t\t\tname: \"finish1_tex.png\",\n\t\t\t\t\t\turl: \"http://staging-teach.cdn.ireadabc.com/5a0c5af3e952acd0ac83a6e5c6f03ff1.png\"\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t],\n\n\t\t\tpicArr: [\n\t\t\t\t{\n\t\t\t\t\taudio_url: \"http://staging-teach.cdn.ireadabc.com/0128a59057e63c4c6b4b96556d077a98.mp3\",\n\t\t\t\t\tpic_url: \"http://staging-teach.cdn.ireadabc.com/18f2a029e02d679da8d42746daea228f.png\",\n\t\t\t\t\ttext: \"1111\",\n\t\t\t\t}\n\t\t\t]\n\t\t}\n\n\t\tdata.picArr = data.picArr.concat(data.picArr);\n\t\tdata.picArr = data.picArr.concat(data.picArr);\n\t\tdata.picArr = data.picArr.concat(data.picArr);\n\t\tdata.picArr = data.picArr.concat(data.picArr);\n\t\tdata.picArr = data.picArr.concat(data.picArr);\n\t\treturn data;\n\t},\n\n\tpreload() {\n\n\t\tconst preloadArr = this._imageResList.concat(this._audioResList).concat(this._animaResList);\n\t\tcc.assetManager.loadAny(preloadArr, null, null, (err, data) => {\n\t\t\tconsole.log(' preload data, ', data);\n\n\t\t\t// typeof\n\t\t\tthis.loadEnd();\n\t\t\tif (window && window[\"air\"]) {\n\t\t\t\twindow[\"air\"].hideAirClassLoading();\n\t\t\t}\n\t\t});\n\t},\n\n\taddPreloadImage() {\n\t\tif (this.data.bgItem) {\n\t\t\tthis._imageResList.push({url: this.data.bgItem.url});\n\t\t}\n\n\t},\n\n\taddPreloadAudio() {\n\n\t\tif (!this.data.hotZoneItemArr) {\n\t\t\treturn;\n\t\t}\n\t\tthis.data.hotZoneItemArr.forEach((item) => {\n\t\t\tthis._audioResList.push({url: item.audio_url});\n\t\t})\n\t},\n\n\taddPreloadAnima() {\n\t\tif (!this.data.hotZoneItemArr) {\n\t\t\treturn;\n\t\t}\n\t\tthis.data.hotZoneItemArr.forEach((item) => {\n\t\t\t// if (item.gIdx == '0') {\n\t\t\t// \tthis._animaResList.push({url: item.skeJsonData.url});\n\t\t\t// \tthis._animaResList.push({url: item.texJsonData.url});\n\t\t\t// \tthis._animaResList.push({url: item.texPngData.url});\n\t\t\t// }\n\n\t\t})\n\n\t},\n\n\tloadEnd() {\n\t\tthis.initView();\n\t},\n\n\tinitView() {\n\t\tthis.initBg();\n\t\tthis.initHotZone();\n\t\tthis.initBottomPart();\n\t\tthis.initCircle();\n\t\tthis.initListener();\n\t},\n\n\t_cocosScale: null,\n\tinitBg() {\n\t\tconst frameSize = cc.view.getFrameSize();\n\n\t\tlet sx = cc.winSize.width / frameSize.width;\n\t\tlet sy = cc.winSize.height / frameSize.height;\n\t\tlet s = Math.min(sx, sy);\n\n\t\tthis._cocosScale = s;\n\n\t\tconst bgNode = cc.find('Canvas/bg');\n\t\t// const sx = cc.winSize.width / bgNode.width;\n\t\t// const sy = cc.winSize.height / bgNode.height;\n\t\t sx = frameSize.width / bgNode.width;\n\t\t sy = frameSize.height / bgNode.height;\n\t\tbgNode.scale = Math.max(sx, sy) * s;\n\t\tbgNode.anchorX = 1;\n\t\tbgNode.anchorY = 0;\n\t\tbgNode.x = frameSize.width / 2 * s;\n\t\tbgNode.y = -frameSize.height / 2 * s;\n\n\n\n\t\n\t\tconst bg = cc.find('Canvas/bg');\n\t\tconst rectNode = new cc.Node();\n\t\trectNode.x = -bg.x;\n\t\trectNode.y = -bg.y;\n\t\trectNode.scaleX = bg.scaleX;\n\t\trectNode.scaleY = bg.scaleY;\n\t\tbg.addChild(rectNode);\n\t\tconst ctx = rectNode.addComponent(cc.Graphics);\n\t\tctx.fillColor = this.data.bgColor || '#f9bd03';\n\t\tctx.fillRect(-bg.width / 2 , -bg.height / 2, bg.width, bg.height);\n\t\tctx.fill();\n\n\t},\n\n\n\tinitHotZone() {\n\t\tthis.initHotZoneBg();\n\n\t},\n\n\thotZoneBg: null,\n\tinitHotZoneBg() {\n\t\tthis.hotZoneBg = new cc.Node();\n\t\tthis.hotZoneBg.name = 'hotZoneBg';\n\t\tthis.hotZoneBg.parent = cc.find('Canvas');\n\t\tthis.hotZoneBg.zIndex = 4;\n\n\n\t\tconst canvas = cc.find('Canvas/Main Camera');\n\t\t// console.log('canvas: ', canvas);\n\n\t\tif (!this.data.bgItem) {\n\t\t\treturn;\n\t\t}\n\n\t\tcc.loader.load({url: this.data.bgItem.url}, (err, img) => {\n\n\t\t\tthis.addMask(this.hotZoneBg);\n\n\t\t\tthis.hotZoneBg.width = img.width;\n\t\t\tthis.hotZoneBg.height = img.height;\n\n\n\n\t\t\tconst box = this.hotZoneBg.getBoundingBox();\n\n\n\t\t\tconst tmpS = 640 / 720;\n\t\t\tlet subNum = 720 - 640;\n\t\t\tconst frameSize = cc.view.getFrameSize();\n\t\t\tconst winSize = cc.winSize;\n\n\t\t\tconsole.log('this.hotZoneBg.box: ', this.hotZoneBg.getBoundingBox());\n\t\t\tconsole.log('let visiSize=cc.director.getVisibleSize();: ', cc.view.getVisibleSize());\n\t\t\tconsole.log('lframeSize: ', frameSize);\n\n\t\t\tlet sx = frameSize.width / this._designSize.width;\n\t\t\tlet sy = frameSize.height / this._designSize.height;\n\t\t\tconst mapS = Math.min(sx, sy);\n\t\t\t// const sy = canvas.height * tmpS / box.height;\n\n\n\t\t\tconst bgBottom = cc.find('Canvas/bgBottom');\n\t\t\tbgBottom.scale = mapS * this._cocosScale;\n\t\t\t// subNum = bgBottom.height;\n\n\t\t\t sx = frameSize.width * this._cocosScale / img.width;\n\t\t\t sy = (frameSize.height * this._cocosScale - subNum * mapS * this._cocosScale) / img.height;\n\n\n\t\t\tconst sprNode = new cc.Node();\n\t\t\tvar sf = new cc.SpriteFrame(img);\n\t\t\t// const spr = this.hotZoneBg.addComponent(cc.Sprite);\n\t\t\tconst spr = sprNode.addComponent(cc.Sprite);\n\t\t\tspr.spriteFrame = sf\n\t\t\tsprNode.width = this.hotZoneBg.width;\n\t\t\tsprNode.height = this.hotZoneBg.height;\n\t\t\tsprNode.parent = this.hotZoneBg;\n\n\t\t\tthis.hotZoneBg.scale = Math.min(sx, sy);\n\n\t\t\t// this.hotZoneBg.y = -frameSize.height / 2 * this._cocosScale + this.hotZoneBg.height / 2 * this.hotZoneBg.scaleY + (subNum * mapS * this._cocosScale);\n\t\t\tthis.hotZoneBg.y = frameSize.height / 2 * this._cocosScale - this.hotZoneBg.height / 2 * this.hotZoneBg.scaleY ;\n\n\n\t\t\t// this.hotZoneBg.opacity = 20;\n\n\t\t\tconst bgWhite = cc.find('Canvas/bgWhite');\n\t\t\tbgWhite.y = this.hotZoneBg.y;\n\n\t\t\tbgWhite.scaleX = this.hotZoneBg.width * this.hotZoneBg.scaleX / bgWhite.width;\n\t\t\tbgWhite.scaleY = this.hotZoneBg.height * this.hotZoneBg.scaleY / bgWhite.height;\n\n\n\t\t\tconst canvas = cc.find('Canvas');\n\t\t\tconst shadowNode = new cc.Node();\n\t\t\tshadowNode.y = bgWhite.y;\n\t\t\tshadowNode.scaleX = bgWhite.scaleX;\n\t\t\tshadowNode.scaleY = bgWhite.scaleY;\n\t\t\tcanvas.addChild(shadowNode);\n\t\t\tconst ctx = shadowNode.addComponent(cc.Graphics);\n\t\t\tctx.fillColor = cc.Color.BLACK.setA(30);\n\t\t\t// ctx.fillRect(5, 5, this.hotZoneBg.width*this.hotZoneBg.scaleX, this.hotZoneBg.height * this.hotZoneBg.scaleY);\n\t\t\tctx.fillRect(-bgWhite.width / 2 + 8 / bgWhite.scaleX * this.hotZoneBg.scale, -bgWhite.height / 2 - 8 / bgWhite.scaleX * this.hotZoneBg.scale, bgWhite.width, bgWhite.height);\n\t\t\tctx.fill();\n\n\t\t\tshadowNode.zIndex = 1;\n\t\t\tbgWhite.zIndex = 2;\n\n\t\t\tbgBottom.y = -frameSize.height / 2 * this._cocosScale - 15 * bgBottom.scaleY;\n\n\t\t\tthis.data.hotZoneItemArr.forEach((item) => {\n\t\t\t\t// if (item.gIdx == '0') {\n\t\t\t\t// \tthis.setOneAnima(item);\n\t\t\t\t// } else if (item.gIdx == '1') {\n\t\t\t\t// \tthis.setOnePic(item);\n\t\t\t\t// }\n\t\t\t\tthis.setOneCircle(item);\n\t\t\t});\n\n\t\t});\n\n\t},\n\n\taddMask(node) {\n\t\tconst mask = node.addComponent(cc.Mask);\n\t\tmask.type = cc.Mask.Type.RECT;\n\t},\n\n\tinitBottomPart() {\n\n\t\tconst bgBottom = cc.find('Canvas/bgBottom');\n\t\tconst script = bgBottom.getComponent('bgBottom');\n\t\tscript.setItemData(this.data.hotZoneItemArr);\n\t},\n\n\n\tsetOneAnima(data) {\n\n\n\t\tconst rate = (this.hotZoneBg.scale * this.hotZoneBg.width) / this.data.bgItem.rect.width;\n\n\t\tconst rectNode = new cc.Node();\n\t\trectNode.name = 'rect' + data.index;\n\t\tthis.hotZoneBg.addChild(rectNode);\n\n\n\t\tconst ctx = rectNode.addComponent(cc.Graphics);\n\t\t// 红色矩形\n\t\tctx.lineWidth = 4;\n\t\tctx.strokeColor = cc.Color.BLACK;\n\t\tctx.fillColor = cc.Color.WHITE.setA(100);\n\n\t\tconst scale = rate / this.hotZoneBg.scaleY;\n\n\t\trectNode.width = data.rect.width * scale;\n\t\trectNode.height = data.rect.height * scale;\n\t\trectNode.x = -this.hotZoneBg.width / 2 + data.rect.x * scale;\n\t\trectNode.y = this.hotZoneBg.height / 2 - data.rect.height * scale - data.rect.y * scale;\n\n\t\trectNode.anchorX = rectNode.anchorY = 0;\n\n\n\t\tif (this.data.bgItem.isShowDebugLine) {\n\t\t\tctx.rect(0, 0, rectNode.width, rectNode.height);\n\t\t}\n\t\tctx.stroke();\n\t\tctx.fill();\n\n\n\n\t\tconst animaNode = new cc.Node();\n\t\tanimaNode.name = 'anima_' + data.index;\n\t\tthis.hotZoneBg.addChild(animaNode);\n\n\t\t// rectNode.addChild(animaNode);\n\t\t// animaNode.x = rectNode.width / 2;\n\t\t// animaNode.y = rectNode.height / 2;\n\n\n\t\tif (data.audio_url) {\n\t\t\tcc.assetManager.loadRemote(data.audio_url, (err, audioClip) => {\n\t\t\t\tanimaNode.audioClip = audioClip;\n\t\t\t});\n\t\t}\n\n\n\t\tconst dragonDisplay = animaNode.addComponent(dragonBones.ArmatureDisplay);\n\n\t\tconst image = data.texPngData.url//\"http://staging-teach.cdn.ireadabc.com/5a0c5af3e952acd0ac83a6e5c6f03ff1.png\";\n\t\tconst ske = data.skeJsonData.url//\"http://staging-teach.cdn.ireadabc.com/bd825dcceea298d1146be8067ae3d17f.json\";\n\t\tconst atlas = data.texJsonData.url//\"http://staging-teach.cdn.ireadabc.com/246f8991b729fa3e5a7f4802de828efa.json\";\n\t\tcc.loader.load(image, (error, texture) => {\n\n\t\t\tcc.loader.load({url: atlas, type: 'txt'}, (error, atlasJson) => {\n\n\t\t\t\tcc.loader.load({url: ske, type: 'txt'}, (error, dragonBonesJson) => {\n\n\t\t\t\t\tconst atlas = new dragonBones.DragonBonesAtlasAsset();\n\t\t\t\t\tatlas.atlasJson = atlasJson;\n\t\t\t\t\tatlas.texture = texture;\n\n\t\t\t\t\tconst asset = new dragonBones.DragonBonesAsset();\n\t\t\t\t\tasset.dragonBonesJson = dragonBonesJson;\n\n\t\t\t\t\tdragonDisplay.dragonAtlasAsset = atlas;\n\t\t\t\t\tdragonDisplay.dragonAsset = asset;\n\n\t\t\t\t\tlet json = JSON.parse(asset.dragonBonesJson);\n\t\t\t\t\tlet armatures = json[\"armature\"];\n\t\t\t\t\tconsole.log('armatures: ', armatures);\n\t\t\t\t\tlet armatureNames = [];\n\t\t\t\t\tfor (let i = 0; i < armatures.length; i++) {\n\t\t\t\t\t\tarmatureNames.push(armatures[i].name);\n\t\t\t\t\t}\n\t\t\t\t\t// console.log('armatureNames: ', armatureNames);\n\t\t\t\t\tif (armatureNames.length > 0) {\n\t\t\t\t\t\tlet defaultArmatureName = armatureNames[0];\n\t\t\t\t\t\tdragonDisplay.armatureName = defaultArmatureName;\n\t\t\t\t\t\t// let animationNames = dragonDisplay.getAnimationNames(defaultArmatureName);\n\t\t\t\t\t\tlet defaultArmature = armatures[0];\n\t\t\t\t\t\tlet animations = defaultArmature.animation;\n\t\t\t\t\t\tlet animationNames = [];\n\t\t\t\t\t\tfor (let i = 0; i < animations.length; i++) {\n\t\t\t\t\t\t\tanimationNames.push(animations[i].name);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\trectNode.addComponent(cc.Button);\n\t\t\t\t\t\trectNode.on('click', () => {\n\t\t\t\t\t\t\tif (rectNode.isClicked) {\n\t\t\t\t\t\t\t\t// return;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\trectNode.isClicked = true;\n\t\t\t\t\t\t\tconsole.log('clicked');\n\n\t\t\t\t\t\t\tif (animaNode.audioClip) {\n\t\t\t\t\t\t\t\tcc.audioEngine.stopAll();\n\t\t\t\t\t\t\t\tcc.audioEngine.play(animaNode.audioClip, false, 0.8);\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tif (animationNames.length > 0) {\n\t\t\t\t\t\t\t\tdragonDisplay.playAnimation(animationNames[0], 1);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\n\t\t\t\t});\n\t\t\t});\n\t\t});\n\n\t},\n\n\n\tsetOnePic(data) {\n\t\tconst rate = (this.hotZoneBg.scale * this.hotZoneBg.width) / this.data.bgItem.rect.width;\n\n\t\tconst picNode = new cc.Node();\n\t\tpicNode.data = data;\n\t\tthis.hotZoneBg.addChild(picNode);\n\n\t\tcc.loader.load({url: data.pic_url}, (err, img) => {\n\n\t\t\tconst spr = picNode.addComponent(cc.Sprite);\n\t\t\tspr.spriteFrame = new cc.SpriteFrame(img)\n\n\t\t\tconst scale = rate / this.hotZoneBg.scaleY;\n\n\t\t\tpicNode.width = data.rect.width * scale;\n\t\t\tpicNode.height = data.rect.height * scale;\n\t\t\tpicNode.x = -this.hotZoneBg.width / 2 + data.rect.x * scale;\n\t\t\tpicNode.y = this.hotZoneBg.height / 2 - data.rect.height * scale - data.rect.y * scale;\n\n\t\t\tpicNode.anchorX = picNode.anchorY = 0;\n\t\t});\n\n\t},\n\n\tsetOneCircle(data) {\n\t\tconst rate = (this.hotZoneBg.scale * this.hotZoneBg.width) / this.data.bgItem.rect.width;\n\n\t\tconst rectNode = new cc.Node();\n\t\trectNode.name = 'rect' + data.index;\n\t\trectNode.data = data;\n\t\tthis.hotZoneBg.addChild(rectNode);\n\n\n\t\tconst scale = rate / this.hotZoneBg.scaleY;\n\n\t\trectNode.width = data.rect.width * scale;\n\t\trectNode.height = data.rect.height * scale;\n\t\trectNode.x = -this.hotZoneBg.width / 2 + data.rect.x * scale;\n\t\trectNode.y = this.hotZoneBg.height / 2 - data.rect.height * scale - data.rect.y * scale;\n\n\t\trectNode.anchorX = rectNode.anchorY = 0;\n\n\n\t\tif (data.audio_url) {\n\t\t\tcc.assetManager.loadRemote(data.audio_url, (err, audioClip) => {\n\t\t\t\tdata.audioClip = audioClip;\n\t\t\t});\n\t\t}\n\n\t\trectNode.addComponent(cc.Button);\n\t\trectNode.on('click', () => {\n\t\t\tthis.showCircle(rectNode);\n\t\t});\n\n\n\n\n\n\t\tconst animaNode = new cc.Node();\n\t\tanimaNode.name = 'anima_' + data.index;\n\t\tthis.hotZoneBg.addChild(animaNode);\n\t\tdata.animaNode = animaNode;\n\n\n\t\tif (data.audio_url) {\n\t\t\tcc.assetManager.loadRemote(data.audio_url, (err, audioClip) => {\n\t\t\t\tanimaNode.audioClip = audioClip;\n\t\t\t});\n\t\t}\n\n\n\t\tconst dragonDisplay = animaNode.addComponent(dragonBones.ArmatureDisplay);\n\n\t\tconst image = data.texPngData.url//\"http://staging-teach.cdn.ireadabc.com/5a0c5af3e952acd0ac83a6e5c6f03ff1.png\";\n\t\tconst ske = data.skeJsonData.url//\"http://staging-teach.cdn.ireadabc.com/bd825dcceea298d1146be8067ae3d17f.json\";\n\t\tconst atlas = data.texJsonData.url//\"http://staging-teach.cdn.ireadabc.com/246f8991b729fa3e5a7f4802de828efa.json\";\n\t\tcc.loader.load(image, (error, texture) => {\n\n\t\t\tcc.loader.load({url: atlas, type: 'txt'}, (error, atlasJson) => {\n\n\t\t\t\tcc.loader.load({url: ske, type: 'txt'}, (error, dragonBonesJson) => {\n\n\t\t\t\t\tconst atlas = new dragonBones.DragonBonesAtlasAsset();\n\t\t\t\t\tatlas.atlasJson = atlasJson;\n\t\t\t\t\tatlas.texture = texture;\n\n\t\t\t\t\tconst asset = new dragonBones.DragonBonesAsset();\n\t\t\t\t\tasset.dragonBonesJson = dragonBonesJson;\n\n\t\t\t\t\tdragonDisplay.dragonAtlasAsset = atlas;\n\t\t\t\t\tdragonDisplay.dragonAsset = asset;\n\n\t\t\t\t\tlet json = JSON.parse(asset.dragonBonesJson);\n\t\t\t\t\tlet armatures = json[\"armature\"];\n\t\t\t\t\tconsole.log('armatures: ', armatures);\n\t\t\t\t\tlet armatureNames = [];\n\t\t\t\t\tfor (let i = 0; i < armatures.length; i++) {\n\t\t\t\t\t\tarmatureNames.push(armatures[i].name);\n\t\t\t\t\t}\n\t\t\t\t\t// console.log('armatureNames: ', armatureNames);\n\t\t\t\t\tif (armatureNames.length > 0) {\n\t\t\t\t\t\tlet defaultArmatureName = armatureNames[0];\n\t\t\t\t\t\tdragonDisplay.armatureName = defaultArmatureName;\n\t\t\t\t\t\t// let animationNames = dragonDisplay.getAnimationNames(defaultArmatureName);\n\t\t\t\t\t\tlet defaultArmature = armatures[0];\n\t\t\t\t\t\tlet animations = defaultArmature.animation;\n\t\t\t\t\t\tlet animationNames = [];\n\t\t\t\t\t\tfor (let i = 0; i < animations.length; i++) {\n\t\t\t\t\t\t\tanimationNames.push(animations[i].name);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// rectNode.addComponent(cc.Button);\n\t\t\t\t\t\t// rectNode.on('click', () => {\n\t\t\t\t\t\tanimaNode.showAnima = () => {\n\t\t\t\t\t\t\tif (rectNode.isClicked) {\n\t\t\t\t\t\t\t\t// return;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\trectNode.isClicked = true;\n\t\t\t\t\t\t\tconsole.log('clicked');\n\n\t\t\t\t\t\t\tif (animaNode.audioClip) {\n\t\t\t\t\t\t\t\tcc.audioEngine.stopAll();\n\t\t\t\t\t\t\t\tcc.audioEngine.play(animaNode.audioClip, false, 0.8);\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tif (animationNames.length > 0) {\n\t\t\t\t\t\t\t\tdragonDisplay.playAnimation(animationNames[0], 1);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t});\n\t\t\t});\n\t\t});\n\n\t},\n\n\t_circle: null,\n\tinitCircle() {\n\n\t\tthis._circle = cc.find('Canvas/circle');\n\t\tthis._circle.active = false;\n\t\tthis._circle.zIndex = 12;\n\t},\n\n\tshowCircle(node) {\n\t\tconsole.log(' in showCircle');\n\n\t\tif (node == this._circle.itemNode) {\n\n\t\t\tnode.data.animaNode.showAnima();\n\t\t\t// if (node.data.audioClip) {\n\t\t\t// \tcc.audioEngine.stopAll();\n\t\t\t// \tcc.audioEngine.play(node.data.audioClip, false, 0.8);\n\t\t\t// }\n\t\t\tthis.hideCircle();\n\t\t\treturn;\n\t\t}\n\n\t\tthis._circle.itemNode = node;\n\n\t\tnode.x += node.width / 2;\n\t\tnode.y += node.height / 2;\n\t\tconst rate = getScaleRateBy2Node(this._circle, node);\n\t\tconst pos = localPosTolocalPos(this._circle, node);\n\t\tnode.x -= node.width / 2;\n\t\tnode.y -= node.height / 2;\n\n\t\tthis._circle.scale *= rate;\n\t\tthis._circle.scale *= (5/4);\n\n\t\tthis._circle.x = pos.x;\n\t\tthis._circle.y = pos.y;\n\n\t\tthis._circle.active = true;\n\n\t\tthis._circle.opacity = 0;\n\t\tcc.tween(this._circle)\n\t\t\t.to(1, {opacity: 255}, {easing: 'cubicOut'})\n\t\t\t.start();\n\n\t},\n\n\tinitListener() {\n\t\tconst canvas = cc.find('Canvas');\n\t\tcanvas.addComponent(cc.Button);\n\t\tcanvas.on('click', () => {\n\t\t\tthis.hideCircle();\n\t\t});\n\t},\n\n\thideCircle() {\n\t\tthis._circle.itemNode = null;\n\t\tcc.tween(this._circle)\n\t\t\t.to(1, {opacity: 0}, {easing: 'cubicOut'})\n\t\t\t.start();\n\t}\n\n\n\t// update (dt) {},\n});\n"]}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment