made tile effect more like sphere effect

This commit is contained in:
itsmattkc
2019-01-22 20:57:13 +11:00
parent d4d654203d
commit 86464b76e4
2 changed files with 25 additions and 5 deletions
+19 -3
View File
@@ -3,14 +3,16 @@
varying vec2 vTexCoord;
uniform sampler2D tex0; // scene buffer
uniform float tilecount;
uniform float scale;
uniform float centerx;
uniform float centery;
uniform bool mirrorx;
uniform bool mirrory;
void main(void) {
vec2 texCoord = vTexCoord;
vec2 coord = vec2(
/*vec2 coord = vec2(
mod(vTexCoord.x*tilecount, 1.0),
mod(vTexCoord.y*tilecount, 1.0)
);
@@ -21,7 +23,21 @@ void main(void) {
if (mirrory && mod(vTexCoord.y*tilecount, 2.0) > 1.0) {
coord.y = 1.0 - coord.y;
}*/
float adj_scale = scale*0.01;
vec2 scaled_coords = (vTexCoord/adj_scale);
vec2 coord = scaled_coords-vec2(0.5/adj_scale, 0.5/adj_scale)+vec2(0.5, 0.5)+vec2(-centerx*0.01, -centery*0.01);
vec2 modcoord = mod(coord, 1.0);
if (mirrorx && mod(coord.x, 2.0) > 1.0) {
modcoord.x = 1.0 - modcoord.x;
}
if (mirrory && mod(coord.y, 2.0) > 1.0) {
modcoord.y = 1.0 - modcoord.y;
}
gl_FragColor = vec4(texture2D(tex0, coord));
gl_FragColor = vec4(texture2D(tex0, modcoord));
}
+6 -2
View File
@@ -1,7 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<effect name="Tile" category="Distort">
<row name="Tile Count">
<field type="double" min="1" default="2" id="tilecount"/>
<row name="Scale">
<field type="double" min="0" default="50" id="scale"/>
</row>
<row name="Center">
<field type="double" default="0" id="centerx"/>
<field type="double" default="0" id="centery"/>
</row>
<row name="Mirror X">
<field type="bool" default="0" id="mirrorx"/>