Head pose estimation
0
.gitignore
vendored
Normal file → Executable file
Before Width: | Height: | Size: 6.6 KiB |
BIN
assets/ball.png
Before Width: | Height: | Size: 962 B |
Before Width: | Height: | Size: 3.3 KiB |
Before Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 1.7 KiB |
Before Width: | Height: | Size: 1.7 KiB |
Before Width: | Height: | Size: 759 B |
Before Width: | Height: | Size: 1022 B |
Before Width: | Height: | Size: 564 B |
@ -1,15 +0,0 @@
|
|||||||
precision mediump float;
|
|
||||||
uniform sampler2D Texture;
|
|
||||||
uniform float Transparency;
|
|
||||||
uniform vec4 BrickColor;
|
|
||||||
varying vec2 texCoord;
|
|
||||||
|
|
||||||
void main()
|
|
||||||
{
|
|
||||||
vec4 color = BrickColor * texture2D(Texture,texCoord).rgba;
|
|
||||||
|
|
||||||
gl_FragColor = vec4(color.rgb, color.a * Transparency);
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
@ -1,12 +0,0 @@
|
|||||||
attribute vec3 vPosition;
|
|
||||||
attribute vec2 vTexCoord;
|
|
||||||
varying vec2 texCoord;
|
|
||||||
|
|
||||||
uniform mat4 ProjectionMatrix;
|
|
||||||
|
|
||||||
void main()
|
|
||||||
{
|
|
||||||
//480x320
|
|
||||||
gl_Position = ProjectionMatrix * vec4(vPosition.xyz, 1.0);
|
|
||||||
texCoord = vTexCoord;
|
|
||||||
}
|
|
Before Width: | Height: | Size: 102 B |
Before Width: | Height: | Size: 13 KiB |
BIN
assets/emoji/Asset 10@20x.png
Executable file
After Width: | Height: | Size: 165 KiB |
BIN
assets/emoji/Asset 11@20x.png
Executable file
After Width: | Height: | Size: 131 KiB |
BIN
assets/emoji/Asset 13@20x.png
Executable file
After Width: | Height: | Size: 148 KiB |
BIN
assets/emoji/Asset 14@20x.png
Executable file
After Width: | Height: | Size: 166 KiB |
BIN
assets/emoji/Asset 15@20x.png
Executable file
After Width: | Height: | Size: 158 KiB |
BIN
assets/emoji/Asset 16@20x.png
Executable file
After Width: | Height: | Size: 134 KiB |
BIN
assets/emoji/Asset 17@20x.png
Executable file
After Width: | Height: | Size: 142 KiB |
BIN
assets/emoji/Asset 18@20x.png
Executable file
After Width: | Height: | Size: 127 KiB |
BIN
assets/emoji/Asset 19@20x.png
Executable file
After Width: | Height: | Size: 134 KiB |
BIN
assets/emoji/Asset 20@20x.png
Executable file
After Width: | Height: | Size: 130 KiB |
BIN
assets/emoji/Asset 21@20x.png
Executable file
After Width: | Height: | Size: 175 KiB |
BIN
assets/emoji/Asset 22@20x.png
Executable file
After Width: | Height: | Size: 152 KiB |
BIN
assets/emoji/Asset 23@20x.png
Executable file
After Width: | Height: | Size: 141 KiB |
BIN
assets/emoji/Asset 24@20x.png
Executable file
After Width: | Height: | Size: 136 KiB |
BIN
assets/emoji/Asset 25@20x.png
Executable file
After Width: | Height: | Size: 133 KiB |
BIN
assets/emoji/Asset 26@20x.png
Executable file
After Width: | Height: | Size: 170 KiB |
BIN
assets/emoji/Asset 27@20x.png
Executable file
After Width: | Height: | Size: 168 KiB |
BIN
assets/emoji/Asset 28@20x.png
Executable file
After Width: | Height: | Size: 131 KiB |
BIN
assets/emoji/Asset 3@20x.png
Executable file
After Width: | Height: | Size: 138 KiB |
BIN
assets/emoji/Asset 4@20x.png
Executable file
After Width: | Height: | Size: 155 KiB |
BIN
assets/emoji/Asset 5@20x.png
Executable file
After Width: | Height: | Size: 150 KiB |
BIN
assets/emoji/Asset 6@20x.png
Executable file
After Width: | Height: | Size: 129 KiB |
BIN
assets/emoji/Asset 7@20x.png
Executable file
After Width: | Height: | Size: 152 KiB |
BIN
assets/emoji/Asset 8@20x.png
Executable file
After Width: | Height: | Size: 134 KiB |
BIN
assets/emoji/Asset 9@20x.png
Executable file
After Width: | Height: | Size: 197 KiB |
249
assets/emoji/emojis.json
Executable file
@ -0,0 +1,249 @@
|
|||||||
|
{
|
||||||
|
"transform version": "V1",
|
||||||
|
|
||||||
|
"models": [
|
||||||
|
{
|
||||||
|
"type": "EmojiModel",
|
||||||
|
"name": "Smile"
|
||||||
|
}],
|
||||||
|
|
||||||
|
"renderParams": [
|
||||||
|
{
|
||||||
|
"vertexShader": "./assets/shaders/vertex/orthoVertexShader.txt",
|
||||||
|
"fragmentShader": "./assets/shaders/fragment/orthoFragmentShader.txt",
|
||||||
|
"alphaTest": "true",
|
||||||
|
"blend": "true",
|
||||||
|
"TAG": "smile & tongue 0"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
|
||||||
|
"initialModules": [0, 1, 2, 3, 4],
|
||||||
|
|
||||||
|
"modules": [
|
||||||
|
{
|
||||||
|
"iconPath": "./assets/fx/emoji/Asset 3@20x.png",
|
||||||
|
"suits": [
|
||||||
|
{
|
||||||
|
"renderParamsID": 0,
|
||||||
|
"emojiTexture": "./assets/fx/emoji/Asset 3@20x.png"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"iconPath": "./assets/fx/emoji/Asset 24@20x.png",
|
||||||
|
"suits": [
|
||||||
|
{
|
||||||
|
"renderParamsID": 0,
|
||||||
|
"emojiTexture": "./assets/fx/emoji/Asset 24@20x.png"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"iconPath": "./assets/fx/emoji/Asset 13@20x.png",
|
||||||
|
"suits": [
|
||||||
|
{
|
||||||
|
"renderParamsID": 0,
|
||||||
|
"emojiTexture": "./assets/fx/emoji/Asset 13@20x.png"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"iconPath": "./assets/fx/emoji/Asset 23@20x.png",
|
||||||
|
"suits": [
|
||||||
|
{
|
||||||
|
"renderParamsID": 0,
|
||||||
|
"emojiTexture": "./assets/fx/emoji/Asset 23@20x.png"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"iconPath": "./assets/fx/emoji/Asset 19@20x.png",
|
||||||
|
"suits": [
|
||||||
|
{
|
||||||
|
"renderParamsID": 0,
|
||||||
|
"emojiTexture": "./assets/fx/emoji/Asset 19@20x.png"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"iconPath": "./assets/fx/emoji/Asset 20@20x.png",
|
||||||
|
"suits": [
|
||||||
|
{
|
||||||
|
"renderParamsID": 0,
|
||||||
|
"emojiTexture": "./assets/fx/emoji/Asset 20@20x.png"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"iconPath": "./assets/fx/emoji/Asset 17@20x.png",
|
||||||
|
"suits": [
|
||||||
|
{
|
||||||
|
"renderParamsID": 0,
|
||||||
|
"emojiTexture": "./assets/fx/emoji/Asset 17@20x.png"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"iconPath": "./assets/fx/emoji/Asset 18@20x.png",
|
||||||
|
"suits": [
|
||||||
|
{
|
||||||
|
"renderParamsID": 0,
|
||||||
|
"emojiTexture": "./assets/fx/emoji/Asset 18@20x.png"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"iconPath": "./assets/fx/emoji/Asset 15@20x.png",
|
||||||
|
"suits": [
|
||||||
|
{
|
||||||
|
"renderParamsID": 0,
|
||||||
|
"emojiTexture": "./assets/fx/emoji/Asset 15@20x.png"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"iconPath": "./assets/fx/emoji/Asset 16@20x.png",
|
||||||
|
"suits": [
|
||||||
|
{
|
||||||
|
"renderParamsID": 0,
|
||||||
|
"emojiTexture": "./assets/fx/emoji/Asset 16@20x.png"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"iconPath": "./assets/fx/emoji/Asset 21@20x.png",
|
||||||
|
"suits": [
|
||||||
|
{
|
||||||
|
"renderParamsID": 0,
|
||||||
|
"emojiTexture": "./assets/fx/emoji/Asset 21@20x.png"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"iconPath": "./assets/fx/emoji/Asset 4@20x.png",
|
||||||
|
"suits": [
|
||||||
|
{
|
||||||
|
"renderParamsID": 0,
|
||||||
|
"emojiTexture": "./assets/fx/emoji/Asset 4@20x.png"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"iconPath": "./assets/fx/emoji/Asset 22@20x.png",
|
||||||
|
"suits": [
|
||||||
|
{
|
||||||
|
"renderParamsID": 0,
|
||||||
|
"emojiTexture": "./assets/fx/emoji/Asset 22@20x.png"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"iconPath": "./assets/fx/emoji/Asset 14@20x.png",
|
||||||
|
"suits": [
|
||||||
|
{
|
||||||
|
"renderParamsID": 0,
|
||||||
|
"emojiTexture": "./assets/fx/emoji/Asset 14@20x.png"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"iconPath": "./assets/fx/emoji/Asset 11@20x.png",
|
||||||
|
"suits": [
|
||||||
|
{
|
||||||
|
"renderParamsID": 0,
|
||||||
|
"emojiTexture": "./assets/fx/emoji/Asset 11@20x.png"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"iconPath": "./assets/fx/emoji/Asset 25@20x.png",
|
||||||
|
"suits": [
|
||||||
|
{
|
||||||
|
"renderParamsID": 0,
|
||||||
|
"emojiTexture": "./assets/fx/emoji/Asset 25@20x.png"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"iconPath": "./assets/fx/emoji/Asset 26@20x.png",
|
||||||
|
"suits": [
|
||||||
|
{
|
||||||
|
"renderParamsID": 0,
|
||||||
|
"emojiTexture": "./assets/fx/emoji/Asset 26@20x.png"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"iconPath": "./assets/fx/emoji/Asset 27@20x.png",
|
||||||
|
"suits": [
|
||||||
|
{
|
||||||
|
"renderParamsID": 0,
|
||||||
|
"emojiTexture": "./assets/fx/emoji/Asset 27@20x.png"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"iconPath": "./assets/fx/emoji/Asset 28@20x.png",
|
||||||
|
"suits": [
|
||||||
|
{
|
||||||
|
"renderParamsID": 0,
|
||||||
|
"emojiTexture": "./assets/fx/emoji/Asset 28@20x.png"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"iconPath": "./assets/fx/emoji/Asset 5@20x.png",
|
||||||
|
"suits": [
|
||||||
|
{
|
||||||
|
"renderParamsID": 0,
|
||||||
|
"emojiTexture": "./assets/fx/emoji/Asset 5@20x.png"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"iconPath": "./assets/fx/emoji/Asset 6@20x.png",
|
||||||
|
"suits": [
|
||||||
|
{
|
||||||
|
"renderParamsID": 0,
|
||||||
|
"emojiTexture": "./assets/fx/emoji/Asset 6@20x.png"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"iconPath": "./assets/fx/emoji/Asset 7@20x.png",
|
||||||
|
"suits": [
|
||||||
|
{
|
||||||
|
"renderParamsID": 0,
|
||||||
|
"emojiTexture": "./assets/fx/emoji/Asset 7@20x.png"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"iconPath": "./assets/fx/emoji/Asset 8@20x.png",
|
||||||
|
"suits": [
|
||||||
|
{
|
||||||
|
"renderParamsID": 0,
|
||||||
|
"emojiTexture": "./assets/fx/emoji/Asset 8@20x.png"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"iconPath": "./assets/fx/emoji/Asset 9@20x.png",
|
||||||
|
"suits": [
|
||||||
|
{
|
||||||
|
"renderParamsID": 0,
|
||||||
|
"emojiTexture": "./assets/fx/emoji/Asset 9@20x.png"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"iconPath": "./assets/fx/emoji/Asset 10@20x.png",
|
||||||
|
"suits": [
|
||||||
|
{
|
||||||
|
"renderParamsID": 0,
|
||||||
|
"emojiTexture": "./assets/fx/emoji/Asset 10@20x.png"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
Before Width: | Height: | Size: 3.4 KiB |
@ -1,33 +0,0 @@
|
|||||||
0, 255, 255, 255
|
|
||||||
0, 0, 0, 255
|
|
||||||
255, 0, 0, 255
|
|
||||||
255, 40, 40, 255
|
|
||||||
255, 128, 128, 255
|
|
||||||
Colormap
|
|
||||||
111111111111
|
|
||||||
111111111111
|
|
||||||
111111111111
|
|
||||||
222222222222
|
|
||||||
222222222222
|
|
||||||
222222222222
|
|
||||||
222222222222
|
|
||||||
333333333333
|
|
||||||
333333333333
|
|
||||||
333333333333
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
||||||
Brickmap
|
|
||||||
111111111111
|
|
||||||
111111111111
|
|
||||||
111111111111
|
|
||||||
000000000000
|
|
||||||
111111111111
|
|
||||||
111111111111
|
|
||||||
000000000000
|
|
||||||
111111111111
|
|
||||||
111111111111
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
@ -1,32 +0,0 @@
|
|||||||
0, 255, 255, 255
|
|
||||||
0, 0, 0, 255
|
|
||||||
255, 0, 190, 255
|
|
||||||
255, 0, 255, 255
|
|
||||||
Colormap
|
|
||||||
002222222200
|
|
||||||
002222222200
|
|
||||||
000222222000
|
|
||||||
000022220000
|
|
||||||
111002200111
|
|
||||||
111100001111
|
|
||||||
011110011110
|
|
||||||
001111111100
|
|
||||||
000111111000
|
|
||||||
000011110000
|
|
||||||
000001100000
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
||||||
Brickmap
|
|
||||||
002111111200
|
|
||||||
002211112200
|
|
||||||
000221122000
|
|
||||||
000022220000
|
|
||||||
111002200111
|
|
||||||
221100001122
|
|
||||||
022110011220
|
|
||||||
002211112200
|
|
||||||
000221122000
|
|
||||||
000022220000
|
|
||||||
000002200000
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
@ -1,33 +0,0 @@
|
|||||||
255, 255, 255, 255
|
|
||||||
0, 0, 0, 255
|
|
||||||
0, 237, 255, 255
|
|
||||||
0, 144, 255, 255
|
|
||||||
0, 59, 255, 255
|
|
||||||
Colormap
|
|
||||||
333333333333
|
|
||||||
333333333333
|
|
||||||
333333333333
|
|
||||||
000000000000
|
|
||||||
222220022222
|
|
||||||
222220022222
|
|
||||||
222220022222
|
|
||||||
000000000000
|
|
||||||
111110011111
|
|
||||||
111110011111
|
|
||||||
111110011111
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
||||||
Brickmap
|
|
||||||
111111111111
|
|
||||||
111111111111
|
|
||||||
222222222222
|
|
||||||
000000000000
|
|
||||||
111110011111
|
|
||||||
111110011111
|
|
||||||
222220022222
|
|
||||||
000000000000
|
|
||||||
111110011111
|
|
||||||
111110011111
|
|
||||||
333330033333
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
@ -1,32 +0,0 @@
|
|||||||
255, 128, 128, 255
|
|
||||||
0, 0, 0, 255
|
|
||||||
159, 240, 255, 255
|
|
||||||
0, 148, 255, 255
|
|
||||||
Colormap
|
|
||||||
111111111111
|
|
||||||
222222222222
|
|
||||||
111111111111
|
|
||||||
222222222222
|
|
||||||
111111111111
|
|
||||||
222222222222
|
|
||||||
111111111111
|
|
||||||
222222222222
|
|
||||||
111111111111
|
|
||||||
222222222222
|
|
||||||
111111111111
|
|
||||||
222222222222
|
|
||||||
111111111111
|
|
||||||
Brickmap
|
|
||||||
000311113000
|
|
||||||
000311113000
|
|
||||||
333311113333
|
|
||||||
111111111111
|
|
||||||
111111111111
|
|
||||||
222221122222
|
|
||||||
333321123333
|
|
||||||
000321123000
|
|
||||||
000321123000
|
|
||||||
000322223000
|
|
||||||
000333333000
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
@ -1,32 +0,0 @@
|
|||||||
255, 0, 0, 255
|
|
||||||
0, 0, 0, 255
|
|
||||||
0, 255, 255, 255
|
|
||||||
7, 255, 189, 255
|
|
||||||
Colormap
|
|
||||||
111111111111
|
|
||||||
222222222222
|
|
||||||
111111111111
|
|
||||||
222222222222
|
|
||||||
111111111111
|
|
||||||
222222222222
|
|
||||||
111111111111
|
|
||||||
222222222222
|
|
||||||
111111111111
|
|
||||||
222222222222
|
|
||||||
111111111111
|
|
||||||
222222222222
|
|
||||||
000000000000
|
|
||||||
Brickmap
|
|
||||||
111011110111
|
|
||||||
111011110111
|
|
||||||
222022220222
|
|
||||||
000000000000
|
|
||||||
111011110111
|
|
||||||
222022220222
|
|
||||||
000000000000
|
|
||||||
111000000111
|
|
||||||
222000000222
|
|
||||||
000000000000
|
|
||||||
222222222222
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
@ -1,33 +0,0 @@
|
|||||||
0, 255, 255, 255
|
|
||||||
0, 0, 0, 255
|
|
||||||
0, 151, 113, 255
|
|
||||||
7, 255, 189, 255
|
|
||||||
128, 143, 128, 255
|
|
||||||
Colormap
|
|
||||||
000000000000
|
|
||||||
033333333330
|
|
||||||
031111111130
|
|
||||||
031111111130
|
|
||||||
033333333330
|
|
||||||
000000000000
|
|
||||||
033330033330
|
|
||||||
032230032230
|
|
||||||
032230032230
|
|
||||||
033330033330
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
||||||
Brickmap
|
|
||||||
000000000000
|
|
||||||
022222222220
|
|
||||||
021111111120
|
|
||||||
021111111120
|
|
||||||
022222222220
|
|
||||||
000000000000
|
|
||||||
022220022220
|
|
||||||
021120021120
|
|
||||||
021120021120
|
|
||||||
022220022220
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
@ -1,33 +0,0 @@
|
|||||||
255, 0, 0, 255
|
|
||||||
0, 0, 0, 255
|
|
||||||
101, 97, 255, 255
|
|
||||||
5, 186, 255, 255
|
|
||||||
105, 201, 255, 255
|
|
||||||
Colormap
|
|
||||||
000000333333
|
|
||||||
000003333333
|
|
||||||
000033311111
|
|
||||||
333333133333
|
|
||||||
333331333333
|
|
||||||
333313333333
|
|
||||||
111133311111
|
|
||||||
333333100000
|
|
||||||
333331000000
|
|
||||||
333310000000
|
|
||||||
111100000000
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
||||||
Brickmap
|
|
||||||
000000111111
|
|
||||||
000001111111
|
|
||||||
000011133333
|
|
||||||
111111311111
|
|
||||||
111113111111
|
|
||||||
111131111111
|
|
||||||
333311133333
|
|
||||||
111111300000
|
|
||||||
111113000000
|
|
||||||
111130000000
|
|
||||||
333300000000
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
@ -1,32 +0,0 @@
|
|||||||
255, 0, 255, 255
|
|
||||||
0, 0, 0, 255
|
|
||||||
163, 255, 198, 255
|
|
||||||
0, 255, 182, 255
|
|
||||||
Colormap
|
|
||||||
000022220000
|
|
||||||
000222222000
|
|
||||||
000022220000
|
|
||||||
111000000111
|
|
||||||
111100001111
|
|
||||||
111110011111
|
|
||||||
111111111111
|
|
||||||
111111111111
|
|
||||||
111111111111
|
|
||||||
111111111111
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
||||||
Brickmap
|
|
||||||
000033330000
|
|
||||||
000311113000
|
|
||||||
000033330000
|
|
||||||
111000000111
|
|
||||||
111100001111
|
|
||||||
111110011111
|
|
||||||
111111111111
|
|
||||||
111111111111
|
|
||||||
111111111111
|
|
||||||
222222222222
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
@ -1,33 +0,0 @@
|
|||||||
255, 255, 255, 255
|
|
||||||
0, 0, 0, 255
|
|
||||||
255, 200, 5, 255
|
|
||||||
255, 153, 0, 255
|
|
||||||
255, 97, 0, 255
|
|
||||||
Colormap
|
|
||||||
000000000000
|
|
||||||
000333000333
|
|
||||||
000333000333
|
|
||||||
000333000333
|
|
||||||
222000222000
|
|
||||||
222000222000
|
|
||||||
222000222000
|
|
||||||
000111000111
|
|
||||||
000111000111
|
|
||||||
000111000111
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
||||||
Brickmap
|
|
||||||
000000000000
|
|
||||||
000222000222
|
|
||||||
000212000212
|
|
||||||
000222000222
|
|
||||||
222000222000
|
|
||||||
212000212000
|
|
||||||
222000222000
|
|
||||||
000222000222
|
|
||||||
000212000212
|
|
||||||
000222000222
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
@ -1,33 +0,0 @@
|
|||||||
255, 255, 0, 255
|
|
||||||
0, 0, 0, 255
|
|
||||||
230, 230, 230, 255
|
|
||||||
195, 195, 195, 255
|
|
||||||
150, 150, 150, 255
|
|
||||||
Colormap
|
|
||||||
333333333333
|
|
||||||
030030030030
|
|
||||||
030030030030
|
|
||||||
030030030030
|
|
||||||
222222222222
|
|
||||||
020020020020
|
|
||||||
020020020020
|
|
||||||
010010010010
|
|
||||||
010010010010
|
|
||||||
020020020020
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
||||||
Brickmap
|
|
||||||
111111111111
|
|
||||||
010010010010
|
|
||||||
010010010010
|
|
||||||
010010010010
|
|
||||||
222222222222
|
|
||||||
010010010010
|
|
||||||
010010010010
|
|
||||||
010010010010
|
|
||||||
010010010010
|
|
||||||
020020020020
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
@ -1,32 +0,0 @@
|
|||||||
0, 255, 255, 255
|
|
||||||
0, 0, 0, 255
|
|
||||||
217, 56, 62, 255
|
|
||||||
132, 56, 62, 255
|
|
||||||
Colormap
|
|
||||||
111111111111
|
|
||||||
111111111111
|
|
||||||
222211112222
|
|
||||||
000211112000
|
|
||||||
000211112000
|
|
||||||
022211112220
|
|
||||||
021111111120
|
|
||||||
021111111120
|
|
||||||
021111111120
|
|
||||||
022222222220
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
||||||
Brickmap
|
|
||||||
111111111111
|
|
||||||
111111111111
|
|
||||||
222211112222
|
|
||||||
000211112000
|
|
||||||
000211112000
|
|
||||||
022211112220
|
|
||||||
021111111120
|
|
||||||
021111111120
|
|
||||||
021111111120
|
|
||||||
033333333330
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
@ -1,32 +0,0 @@
|
|||||||
0, 255, 0, 255
|
|
||||||
0, 0, 0, 255
|
|
||||||
255, 221, 0, 255
|
|
||||||
255, 0, 0, 255
|
|
||||||
Colormap
|
|
||||||
222220022222
|
|
||||||
222220022222
|
|
||||||
222220022222
|
|
||||||
222220022222
|
|
||||||
000000000000
|
|
||||||
111111111111
|
|
||||||
111111111111
|
|
||||||
000000000000
|
|
||||||
111111111111
|
|
||||||
111111111111
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
||||||
Brickmap
|
|
||||||
111110011111
|
|
||||||
111110011111
|
|
||||||
111110011111
|
|
||||||
222220022222
|
|
||||||
000000000000
|
|
||||||
111111111111
|
|
||||||
333333333333
|
|
||||||
000000000000
|
|
||||||
111111111111
|
|
||||||
222222222222
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
||||||
000000000000
|
|
Before Width: | Height: | Size: 142 KiB |
Before Width: | Height: | Size: 125 KiB |
Before Width: | Height: | Size: 137 KiB |
Before Width: | Height: | Size: 125 KiB |
Before Width: | Height: | Size: 140 KiB |
Before Width: | Height: | Size: 148 KiB |
Before Width: | Height: | Size: 155 KiB |
Before Width: | Height: | Size: 147 KiB |
Before Width: | Height: | Size: 146 KiB |
Before Width: | Height: | Size: 152 KiB |
Before Width: | Height: | Size: 150 KiB |
Before Width: | Height: | Size: 134 KiB |
Before Width: | Height: | Size: 2.0 KiB |
Before Width: | Height: | Size: 2.5 KiB |
Before Width: | Height: | Size: 217 KiB |
Before Width: | Height: | Size: 177 KiB |
Before Width: | Height: | Size: 7.0 KiB |
Before Width: | Height: | Size: 2.3 KiB |
Before Width: | Height: | Size: 480 KiB |
Before Width: | Height: | Size: 362 KiB |
Before Width: | Height: | Size: 433 KiB |
Before Width: | Height: | Size: 370 KiB |
Before Width: | Height: | Size: 464 KiB |
Before Width: | Height: | Size: 532 KiB |
Before Width: | Height: | Size: 611 KiB |
Before Width: | Height: | Size: 509 KiB |
Before Width: | Height: | Size: 503 KiB |
Before Width: | Height: | Size: 553 KiB |
Before Width: | Height: | Size: 597 KiB |
Before Width: | Height: | Size: 474 KiB |
Before Width: | Height: | Size: 9.4 KiB |
Before Width: | Height: | Size: 6.7 KiB |
Before Width: | Height: | Size: 4.8 KiB |
Before Width: | Height: | Size: 7.0 KiB |
Before Width: | Height: | Size: 7.0 KiB |
Before Width: | Height: | Size: 4.1 KiB |
0
game/Android.mk
Normal file → Executable file
0
game/Application.mk
Normal file → Executable file
0
game/DoubleHitBalls.dev
Normal file → Executable file
0
game/android_api.cpp
Normal file → Executable file
0
game/android_api.h
Normal file → Executable file
@ -1,83 +0,0 @@
|
|||||||
#include "creditscode.h"
|
|
||||||
#include "include/Engine.h"
|
|
||||||
|
|
||||||
#include "main_code.h"
|
|
||||||
|
|
||||||
const int TGameCredits::CONST_STATE_APPEARING = 0;
|
|
||||||
const int TGameCredits::CONST_STATE_APPEARED = 1;
|
|
||||||
const int TGameCredits::CONST_STATE_DISAPPEARING = 2;
|
|
||||||
const int TGameCredits::CONST_STATE_DISAPPEARED = 3;
|
|
||||||
|
|
||||||
const float TGameCredits::CONST_APPEAR_TIME = 150.f;
|
|
||||||
|
|
||||||
TGameCredits::TGameCredits()
|
|
||||||
: TGameAreaAncestor()
|
|
||||||
, StateTimer(0)
|
|
||||||
, State(CONST_STATE_DISAPPEARED)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
void TGameCredits::Draw()
|
|
||||||
{
|
|
||||||
//*SE::Console << "TGameCredits::Draw";
|
|
||||||
float transparency = StateTimer/CONST_APPEAR_TIME;
|
|
||||||
|
|
||||||
|
|
||||||
RenderUniform1f("Transparency", transparency);
|
|
||||||
|
|
||||||
glBindTexture(GL_TEXTURE_2D,ResourceManager->TexList["main_menu_bkg_left"]);
|
|
||||||
Renderer->DrawRect(Vector2f(0, 0.f), Vector2f(480.f, 320.f));
|
|
||||||
|
|
||||||
const Vector2f creditsPos(140.f, 130.f);
|
|
||||||
|
|
||||||
const Vector2f creditsHalfSize(128.f, 128.f);
|
|
||||||
|
|
||||||
glBindTexture(GL_TEXTURE_2D,ResourceManager->TexList[CONST_CREDITS_TEXTURE]);
|
|
||||||
Renderer->DrawRect(creditsPos-creditsHalfSize, creditsPos+creditsHalfSize);
|
|
||||||
|
|
||||||
glBindTexture(GL_TEXTURE_2D,ResourceManager->TexList[CONST_LOGO_SMALL_TEXTURE]);
|
|
||||||
Renderer->DrawRect(Vector2f(240.f-128.f+15.f, 320.f-64.f), Vector2f(240.f+128.f+15.f, 320.f));
|
|
||||||
|
|
||||||
CheckGlError("Draw TGameCredits");
|
|
||||||
}
|
|
||||||
|
|
||||||
void TGameCredits::Update(size_t dt)
|
|
||||||
{
|
|
||||||
if (State == CONST_STATE_APPEARING)
|
|
||||||
{
|
|
||||||
*SE::Console << "TGameCredits::Update - CONST_STATE_APPEARING";
|
|
||||||
StateTimer += dt;
|
|
||||||
if (StateTimer >= CONST_APPEAR_TIME)
|
|
||||||
{
|
|
||||||
StateTimer = CONST_APPEAR_TIME;
|
|
||||||
State = CONST_STATE_APPEARED;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else if (State == CONST_STATE_DISAPPEARING)
|
|
||||||
{
|
|
||||||
StateTimer -= dt;
|
|
||||||
if (StateTimer <= 0.f)
|
|
||||||
{
|
|
||||||
StateTimer = 0.f;
|
|
||||||
State = CONST_STATE_DISAPPEARED;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void TGameCredits::OnTapDown(Vector2f p)
|
|
||||||
{
|
|
||||||
*SE::Console << "TGameCredits::OnTapDown";
|
|
||||||
Application->GoFromCreditsToMenu();
|
|
||||||
}
|
|
||||||
|
|
||||||
void TGameCredits::StartAppear()
|
|
||||||
{
|
|
||||||
*SE::Console << "TGameCredits::StartAppear";
|
|
||||||
State = CONST_STATE_APPEARING;
|
|
||||||
}
|
|
||||||
|
|
||||||
void TGameCredits::StartDisappear()
|
|
||||||
{
|
|
||||||
*SE::Console << "TGameCredits::StartDisappear";
|
|
||||||
State = CONST_STATE_DISAPPEARING;
|
|
||||||
}
|
|
@ -1,34 +0,0 @@
|
|||||||
#ifndef CREDITSCODE_H_INCLUDED
|
|
||||||
#define CREDITSCODE_H_INCLUDED
|
|
||||||
|
|
||||||
#include "game_area_interface.h"
|
|
||||||
|
|
||||||
using namespace SE;
|
|
||||||
|
|
||||||
|
|
||||||
class TGameCredits : public TGameAreaAncestor
|
|
||||||
{
|
|
||||||
static const int CONST_STATE_APPEARING;
|
|
||||||
static const int CONST_STATE_APPEARED;
|
|
||||||
static const int CONST_STATE_DISAPPEARING;
|
|
||||||
static const int CONST_STATE_DISAPPEARED;
|
|
||||||
static const float CONST_APPEAR_TIME;
|
|
||||||
|
|
||||||
|
|
||||||
int State;
|
|
||||||
float StateTimer;
|
|
||||||
|
|
||||||
public:
|
|
||||||
|
|
||||||
TGameCredits();
|
|
||||||
|
|
||||||
virtual void Draw();
|
|
||||||
virtual void Update(size_t dt);
|
|
||||||
virtual void OnTapDown(Vector2f p);
|
|
||||||
|
|
||||||
void StartAppear();
|
|
||||||
void StartDisappear();
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
#endif
|
|
@ -1,25 +0,0 @@
|
|||||||
#ifndef GAME_AREA_INTERFACE_H_INCLUDED
|
|
||||||
#define GAME_AREA_INTERFACE_H_INCLUDED
|
|
||||||
|
|
||||||
#include "include/Engine.h"
|
|
||||||
|
|
||||||
using namespace SE;
|
|
||||||
|
|
||||||
|
|
||||||
class TGameAreaAncestor
|
|
||||||
{
|
|
||||||
public:
|
|
||||||
virtual void Draw() { }
|
|
||||||
virtual void Update(size_t) { }
|
|
||||||
virtual void OnTapUp(Vector2f) { }
|
|
||||||
virtual void OnTapUpAfterMove(Vector2f) { }
|
|
||||||
|
|
||||||
virtual void OnTapDown(Vector2f) { }
|
|
||||||
virtual void OnFling(Vector2f) { }
|
|
||||||
virtual void OnScroll(Vector2f) { }
|
|
||||||
|
|
||||||
virtual ~TGameAreaAncestor() { } //By default destructor is not virtual
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
#endif
|
|
1628
game/gamecode.cpp
205
game/gamecode.h
@ -1,205 +0,0 @@
|
|||||||
#ifndef GAMECODE_H_INCLUDED
|
|
||||||
#define GAMECODE_H_INCLUDED
|
|
||||||
|
|
||||||
#include "include/Engine.h"
|
|
||||||
#include "game_area_interface.h"
|
|
||||||
|
|
||||||
#include <list>
|
|
||||||
|
|
||||||
using namespace SE;
|
|
||||||
|
|
||||||
|
|
||||||
const int CONST_BRICKSTATE_VISIBLE = 3;
|
|
||||||
const int CONST_BRICKSTATE_DISAPPEAR = 2;
|
|
||||||
const int CONST_BRICKSTATE_INVISIBLE = 1;
|
|
||||||
const int CONST_BRICKSTATE_APPEAR = 0;
|
|
||||||
|
|
||||||
const float CONST_BRICK_DISAPPEAR_TIME = 200.f;
|
|
||||||
const float CONST_BRICK_APPEAR_TIME = 200.f;
|
|
||||||
|
|
||||||
const int CONST_BRICKMATRIX_WIDTH = 12;
|
|
||||||
const int CONST_BRICKMATRIX_HEIGHT = 13;
|
|
||||||
const float CONST_BRICK_WIDTH = 37.5f;
|
|
||||||
const float CONST_BRICK_HEIGHT = 0.5f*CONST_BRICK_WIDTH;
|
|
||||||
const float CONST_BRICK_SHIFT_X = 15.f;
|
|
||||||
const float CONST_BRICK_SHIFT_Y = -16.f;
|
|
||||||
|
|
||||||
const float CONST_BONUS_APPEAR_TIME = 400.f;
|
|
||||||
const float CONST_BONUS_FALL_SPEED = 100.f;
|
|
||||||
const float CONST_BONUS_GOTHROUGH_TIME = 8000.f;
|
|
||||||
const float CONST_BONUS_CATCH_DISTANCE_X = 65.f;
|
|
||||||
const float CONST_BONUS_CATCH_DISTANCE_Y = 20.f;
|
|
||||||
|
|
||||||
const float CONST_BONUS_FLOOR_TIME = 8000.f;
|
|
||||||
const float CONST_BONUS_FLOOR_APPEAR_SPEED = 50.f;
|
|
||||||
|
|
||||||
const int CONST_BONUS_TYPE_MULTIPLIER = 0;
|
|
||||||
const int CONST_BONUS_TYPE_GOTHROUGH = 1;
|
|
||||||
const int CONST_BONUS_TYPE_FLOOR = 2;
|
|
||||||
|
|
||||||
|
|
||||||
class TBrick
|
|
||||||
{
|
|
||||||
protected:
|
|
||||||
int InitialLocked;
|
|
||||||
int Locked; //0, 1 or 2
|
|
||||||
int State;
|
|
||||||
float StateTimer;
|
|
||||||
Vector4f Color;
|
|
||||||
public:
|
|
||||||
TBrick();
|
|
||||||
void SetVisible(Vector4f color, int locked);
|
|
||||||
void SetInvisible();
|
|
||||||
void TryDrawAppear(int ipos, int jpos);
|
|
||||||
void Update(size_t dt);
|
|
||||||
Vector2f GetPosFrom(int ipos, int jpos);
|
|
||||||
Vector4f GetColor();
|
|
||||||
void Appear(Vector4f color, int locked);
|
|
||||||
void Appear();
|
|
||||||
void Hit();
|
|
||||||
void Disappear();
|
|
||||||
int GetLocked();
|
|
||||||
bool CanReact();
|
|
||||||
};
|
|
||||||
|
|
||||||
class TBonusFalling
|
|
||||||
{
|
|
||||||
protected:
|
|
||||||
float Lifetime;
|
|
||||||
Vector2f Pos;
|
|
||||||
std::string TexName;
|
|
||||||
int BonusType; //0 - multiplier, 1 - Go-through, 2 - floor
|
|
||||||
public:
|
|
||||||
TBonusFalling(Vector2f pos);
|
|
||||||
Vector2f GetPos();
|
|
||||||
int GetType();
|
|
||||||
void Draw();
|
|
||||||
void Update(size_t dt);
|
|
||||||
};
|
|
||||||
|
|
||||||
struct TBall
|
|
||||||
{
|
|
||||||
Vector2f Pos;
|
|
||||||
Vector2f Velocity;
|
|
||||||
Vector4f Color;
|
|
||||||
std::list<Vector2f> TalePos;
|
|
||||||
|
|
||||||
Vector2f BallInBlock;
|
|
||||||
Vector2f PrevBallInBlock;
|
|
||||||
|
|
||||||
TBall(Vector2f pos, Vector2f velocity, Vector4f color);
|
|
||||||
Vector2f GetPos();
|
|
||||||
Vector2f GetVelocityVector();
|
|
||||||
|
|
||||||
void Go();
|
|
||||||
|
|
||||||
void ReflectToLeft();
|
|
||||||
void ReflectToRight();
|
|
||||||
void ReflectToUp();
|
|
||||||
void ReflectToDown();
|
|
||||||
|
|
||||||
void TryReflectOnReflector(Vector2f refPos);
|
|
||||||
|
|
||||||
void Update(size_t dt);
|
|
||||||
};
|
|
||||||
|
|
||||||
typedef std::pair<Vector4f, std::string> PairColorTexture;
|
|
||||||
|
|
||||||
struct TBlockInstansingList
|
|
||||||
{
|
|
||||||
//color-texture ---> and list of triangles for this color
|
|
||||||
std::list<std::pair<PairColorTexture, TTriangleList>> ColorBlockList;
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
struct TBallInstancingList
|
|
||||||
{
|
|
||||||
std::map<int, TTriangleList> BallAndGlowList;
|
|
||||||
};
|
|
||||||
|
|
||||||
class TGameLevel : public TGameAreaAncestor
|
|
||||||
{
|
|
||||||
protected:
|
|
||||||
std::string BkgTexture;
|
|
||||||
std::string LevelScreenTexture;
|
|
||||||
std::string LevelFileName;
|
|
||||||
|
|
||||||
Vector2f ReflectorPos;
|
|
||||||
|
|
||||||
int LevelState;
|
|
||||||
bool PrevLevelStateIsStandby;
|
|
||||||
float StateTimer;
|
|
||||||
|
|
||||||
TBrick BlockMatrix[CONST_BRICKMATRIX_WIDTH][CONST_BRICKMATRIX_HEIGHT];
|
|
||||||
TBlockInstansingList BlockInstansingList;
|
|
||||||
|
|
||||||
bool TapInBackBtnArea(const Vector2f& pos);
|
|
||||||
|
|
||||||
void ReloadBlockInstansingList();
|
|
||||||
void SetFinished();
|
|
||||||
void SetFinishFreeze();
|
|
||||||
|
|
||||||
void DrawBuffer();
|
|
||||||
void DrawPauseButtons();
|
|
||||||
|
|
||||||
void DrawBallInstancingList();
|
|
||||||
|
|
||||||
bool RenderBufferReady;
|
|
||||||
|
|
||||||
float OutScale;
|
|
||||||
|
|
||||||
float OutScaleVelocity;
|
|
||||||
|
|
||||||
void TryGoToMenu();
|
|
||||||
|
|
||||||
std::list<TBonusFalling> BonusFallingList;
|
|
||||||
|
|
||||||
std::list<TBall> BallList;
|
|
||||||
|
|
||||||
TBallInstancingList BallInstancingList;
|
|
||||||
|
|
||||||
Vector4f BallColor;
|
|
||||||
|
|
||||||
void ReloadBallInstancingList();
|
|
||||||
void RefreshBallInstancingList();
|
|
||||||
|
|
||||||
|
|
||||||
void UpdateBallList(size_t dt);
|
|
||||||
void MultiplyBalls(Vector2f pos, Vector2f velocity);
|
|
||||||
|
|
||||||
Vector2f GetBlock(const Vector2f& pos);
|
|
||||||
void InitLevel();
|
|
||||||
|
|
||||||
float BonusGothroughTimer;
|
|
||||||
float BonusFloorTimer;
|
|
||||||
float BonusFloorPosY;
|
|
||||||
|
|
||||||
Vector4f ParseColor(const std::string& s);
|
|
||||||
void ReloadLevel();
|
|
||||||
|
|
||||||
public:
|
|
||||||
TGameLevel();
|
|
||||||
~TGameLevel();
|
|
||||||
|
|
||||||
void FillWithFile(const std::string& filename);
|
|
||||||
|
|
||||||
void SetStandBy();
|
|
||||||
void SetLoading(const std::string& bkg, const std::string& levelscreen);
|
|
||||||
bool IsLoaded();
|
|
||||||
|
|
||||||
virtual void Draw();
|
|
||||||
|
|
||||||
void SetPause();
|
|
||||||
bool IsPaused();
|
|
||||||
void ReleasePause();
|
|
||||||
|
|
||||||
virtual void Update(size_t dt);
|
|
||||||
virtual void OnTapDown(Vector2f pos);
|
|
||||||
virtual void OnTapUp(Vector2f pos);
|
|
||||||
virtual void OnFling(Vector2f slideSpeed);
|
|
||||||
virtual void OnScroll(Vector2f shift);
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#endif
|
|