From 716a08b31d4131e42a667b362bde501624936735 Mon Sep 17 00:00:00 2001 From: MrZ_26 <1046101471@qq.com> Date: Sun, 3 Apr 2022 02:41:49 +0800 Subject: [PATCH] =?UTF-8?q?=E7=9D=80=E8=89=B2=E5=99=A8=E6=8A=80=E6=9C=AF?= =?UTF-8?q?=E9=A3=9E=E8=B7=83=20=E6=A1=86=E6=9E=B6=E8=B7=9F=E8=BF=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Zframework | 2 +- legals.md | 2 -- main.lua | 3 -- parts/backgrounds/aura.lua | 6 +--- parts/backgrounds/bg1.lua | 6 +--- parts/backgrounds/bg2.lua | 5 +--- parts/backgrounds/rainbow.lua | 6 +--- parts/backgrounds/rainbow2.lua | 6 +--- parts/language/lang_en.lua | 1 - parts/language/lang_es.lua | 1 - parts/language/lang_fr.lua | 1 - parts/language/lang_id.lua | 1 - parts/language/lang_ja.lua | 1 - parts/language/lang_pt.lua | 1 - parts/language/lang_zh.lua | 1 - parts/language/lang_zh_grass.lua | 1 - parts/language/lang_zh_trad.lua | 1 - parts/shaders/alpha.glsl | 6 ++-- parts/shaders/aura.glsl | 50 +++++++------------------------- parts/shaders/blockSatur.glsl | 12 ++++---- parts/shaders/fieldSatur.glsl | 12 ++++---- parts/shaders/grad1.glsl | 8 ++--- parts/shaders/grad2.glsl | 8 ++--- parts/shaders/lighter.glsl | 4 +-- parts/shaders/rgb1.glsl | 14 ++++----- parts/shaders/rgb2.glsl | 14 ++++----- parts/shaders/warning.glsl | 6 ++-- 27 files changed, 59 insertions(+), 120 deletions(-) diff --git a/Zframework b/Zframework index 559a8a46..e18b4003 160000 --- a/Zframework +++ b/Zframework @@ -1 +1 @@ -Subproject commit 559a8a46a79af57893224a2497d3c249dab88025 +Subproject commit e18b4003c76ac7eb4906b1f8d85bad399af7e2dc diff --git a/legals.md b/legals.md index 73475ef9..30ac7447 100644 --- a/legals.md +++ b/legals.md @@ -10,8 +10,6 @@ Powered by LÖVE, © 2006–2022 LÖVE Development Team. Lua is free software distributed under the terms of the MIT license. Copyright © 1994–2022 by Lua.org, PUC-Rio. -SIMPLE LOVE LIGHTS is under a MIT License. Created by Dylan Hunn. - json.lua is copyrighted by rxi. © 2022 rxi. IBM Plex is copyrighted by the International Business Machines Corporation. IBM and IBM Plex are trademarks of IBM Corp, registered in many jurisdictions worldwide. IBM Plex is licensed under the SIL Open Font License, Version 1.1. diff --git a/main.lua b/main.lua index 863f7056..799df04d 100644 --- a/main.lua +++ b/main.lua @@ -190,9 +190,6 @@ Z.setDebugInfo{ {"Voices",VOC.getQueueCount}, {"Audios",love.audio.getSourceCount}, } -Z.setOnResize(function(w,_) - SHADER.warning:send('w',w*SCR.dpi) -end) do--Z.setOnFocus local function task_autoSoundOff() while true do diff --git a/parts/backgrounds/aura.lua b/parts/backgrounds/aura.lua index 7d16d144..a76030de 100644 --- a/parts/backgrounds/aura.lua +++ b/parts/backgrounds/aura.lua @@ -8,16 +8,12 @@ function back.init() t=math.random()*260 BG.resize(SCR.w,SCR.h) end -function back.resize(_,h) - shader:send('w',SCR.W) - shader:send('h',h*SCR.dpi) -end function back.update(dt) t=(t+dt)%2600 end function back.draw() gc.clear(.08,.08,.084) - shader:send('t',t) + shader:send('phase',t) gc.setShader(shader) gc.rectangle('fill',0,0,SCR.w,SCR.h) gc.setShader() diff --git a/parts/backgrounds/bg1.lua b/parts/backgrounds/bg1.lua index 070f1614..6e1a7f5e 100644 --- a/parts/backgrounds/bg1.lua +++ b/parts/backgrounds/bg1.lua @@ -6,17 +6,13 @@ local shader=SHADER.grad1 local t function back.init() t=math.random()*260 - back.resize() -end -function back.resize() - shader:send('w',SCR.W) end function back.update(dt) t=(t+dt)%2600 end function back.draw() gc.clear(.08,.08,.084) - shader:send('t',t) + shader:send('phase',t) gc.setShader(shader) gc.rectangle('fill',0,0,SCR.w,SCR.h) gc.setShader() diff --git a/parts/backgrounds/bg2.lua b/parts/backgrounds/bg2.lua index 4a590f3e..e6178e58 100644 --- a/parts/backgrounds/bg2.lua +++ b/parts/backgrounds/bg2.lua @@ -8,15 +8,12 @@ function back.init() t=math.random()*260 BG.resize(nil,SCR.h) end -function back.resize(_,h) - shader:send('h',h*SCR.dpi) -end function back.update(dt) t=(t+dt)%2600 end function back.draw() gc.clear(.08,.08,.084) - shader:send('t',t) + shader:send('phase',t) gc.setShader(shader) gc.rectangle('fill',0,0,SCR.w,SCR.h) gc.setShader() diff --git a/parts/backgrounds/rainbow.lua b/parts/backgrounds/rainbow.lua index 9e9ed1cd..64ece19e 100644 --- a/parts/backgrounds/rainbow.lua +++ b/parts/backgrounds/rainbow.lua @@ -8,16 +8,12 @@ function back.init() t=math.random()*260 BG.resize(SCR.w,SCR.h) end -function back.resize(_,h) - shader:send('w',SCR.W) - shader:send('h',h*SCR.dpi) -end function back.update(dt) t=(t+dt)%2600 end function back.draw() gc.clear(.08,.08,.084) - shader:send('t',t) + shader:send('phase',t) gc.setShader(shader) gc.rectangle('fill',0,0,SCR.w,SCR.h) gc.setShader() diff --git a/parts/backgrounds/rainbow2.lua b/parts/backgrounds/rainbow2.lua index c6c299e6..57a40993 100644 --- a/parts/backgrounds/rainbow2.lua +++ b/parts/backgrounds/rainbow2.lua @@ -8,16 +8,12 @@ function back.init() t=math.random()*260 BG.resize(SCR.w,SCR.h) end -function back.resize(_,h) - shader:send('w',SCR.W) - shader:send('h',h*SCR.dpi) -end function back.update(dt) t=(t+dt)%2600 end function back.draw() gc.clear(.08,.08,.084) - shader:send('t',t) + shader:send('phase',t) gc.setShader(shader) gc.rectangle('fill',0,0,SCR.w,SCR.h) gc.setShader() diff --git a/parts/language/lang_en.lua b/parts/language/lang_en.lua index bb2a2149..9a261b41 100644 --- a/parts/language/lang_en.lua +++ b/parts/language/lang_en.lua @@ -315,7 +315,6 @@ return{ Cold_Clear [MinusKelvin] json.lua [rxi] profile.lua [itraykov] - simple-love-lights [dylhunn] ]], support="Support the author", WidgetText={ diff --git a/parts/language/lang_es.lua b/parts/language/lang_es.lua index 0be36cca..0061d1ec 100644 --- a/parts/language/lang_es.lua +++ b/parts/language/lang_es.lua @@ -186,7 +186,6 @@ return{ Cold_Clear [MinusKelvin] json.lua [rxi] profile.lua [itraykov] - simple-love-lights [dylhunn] ]], support="Apoyen al Autor", WidgetText={ diff --git a/parts/language/lang_fr.lua b/parts/language/lang_fr.lua index fa3cf503..e735160b 100644 --- a/parts/language/lang_fr.lua +++ b/parts/language/lang_fr.lua @@ -282,7 +282,6 @@ return{ Cold_Clear [MinusKelvin] json.lua [rxi] profile.lua [itraykov] - simple-love-lights [dylhunn] ]], support="Aider le créateur", WidgetText={ diff --git a/parts/language/lang_id.lua b/parts/language/lang_id.lua index fa3c4188..b5d82443 100644 --- a/parts/language/lang_id.lua +++ b/parts/language/lang_id.lua @@ -317,7 +317,6 @@ return{ Cold_Clear [MinusKelvin] json.lua [rxi] profile.lua [itraykov] - simple-love-lights [dylhunn] ]], support="Dukung pencipta", WidgetText={ diff --git a/parts/language/lang_ja.lua b/parts/language/lang_ja.lua index de9ec9c4..4ba716b2 100644 --- a/parts/language/lang_ja.lua +++ b/parts/language/lang_ja.lua @@ -317,7 +317,6 @@ return{ Cold_Clear [MinusKelvin] json.lua [rxi] profile.lua [itraykov] - simple-love-lights [dylhunn] ]], support="Support the Author", WidgetText={ diff --git a/parts/language/lang_pt.lua b/parts/language/lang_pt.lua index 4d2341b4..261edbda 100644 --- a/parts/language/lang_pt.lua +++ b/parts/language/lang_pt.lua @@ -304,7 +304,6 @@ return{ Cold_Clear [MinusKelvin] json.lua [rxi] profile.lua [itraykov] - simple-love-lights [dylhunn] ]], support="Support author", WidgetText={ diff --git a/parts/language/lang_zh.lua b/parts/language/lang_zh.lua index 334b8e80..ee6279a1 100644 --- a/parts/language/lang_zh.lua +++ b/parts/language/lang_zh.lua @@ -316,7 +316,6 @@ return{ Cold_Clear [MinusKelvin] json.lua [rxi] profile.lua [itraykov] - simple-love-lights [dylhunn] ]], support="支持作者", WidgetText={ diff --git a/parts/language/lang_zh_grass.lua b/parts/language/lang_zh_grass.lua index c13c9d81..802e8210 100644 --- a/parts/language/lang_zh_grass.lua +++ b/parts/language/lang_zh_grass.lua @@ -314,7 +314,6 @@ return{ Cold_Clear [MinusKelvin] json.lua [rxi] profile.lua [itraykov] - simple-love-lights [dylhunn] ]], support="供养作者!", WidgetText={ diff --git a/parts/language/lang_zh_trad.lua b/parts/language/lang_zh_trad.lua index cd847655..1b0d8bc5 100644 --- a/parts/language/lang_zh_trad.lua +++ b/parts/language/lang_zh_trad.lua @@ -316,7 +316,6 @@ return{ Cold_Clear [MinusKelvin] json.lua [rxi] profile.lua [itraykov] - simple-love-lights [dylhunn] ]], support="支持作者", WidgetText={ diff --git a/parts/shaders/alpha.glsl b/parts/shaders/alpha.glsl index 858c605f..710c7ed5 100644 --- a/parts/shaders/alpha.glsl +++ b/parts/shaders/alpha.glsl @@ -1,4 +1,4 @@ -extern float a; -vec4 effect(vec4 color,Image tex,vec2 tex_coords,vec2 scr_coords){ - return vec4(1.,1.,1.,sign(Texel(tex,tex_coords).a)*a); +uniform float a; +vec4 effect(vec4 color,sampler2D tex,vec2 texCoord,vec2 scrCoord){ + return vec4(1.,1.,1.,sign(texture2D(tex,texCoord).a)*a); } diff --git a/parts/shaders/aura.glsl b/parts/shaders/aura.glsl index 9592f04e..159d3d4c 100644 --- a/parts/shaders/aura.glsl +++ b/parts/shaders/aura.glsl @@ -1,42 +1,14 @@ -#define PI 3.1415926535897932384626 -extern float w,h; -extern float t; -vec4 effect(vec4 color,Image tex,vec2 tex_coords,vec2 scr_coords){ - float x=scr_coords.x/w; - float y=scr_coords.y/h; - float dx,dy; +uniform float phase; +vec4 effect(vec4 color,sampler2D tex,vec2 texCoord,vec2 scrCoord){ + float x=scrCoord.x/love_ScreenSize.x; + float y=scrCoord.y/love_ScreenSize.y; vec3 V=vec3(0.); + V.r=V.r+smoothstep(1.26,0.,length(vec2(0.5+cos(phase*3.*0.26)*0.4-x,0.5-sin(phase*3.*0.62)*0.4-y))); + V.g=V.g+smoothstep(1.26,0.,length(vec2((0.5+cos(phase*3.*0.32)*0.4)-x,(0.5-sin(phase*3.*0.80)*0.4)-y))); + V.b=V.b+smoothstep(1.26,0.,length(vec2((0.5-cos(phase*3.*0.49)*0.4)-x,(0.5+sin(phase*3.*0.18)*0.4)-y))); + V.rg+=vec2(smoothstep(0.626,0.,length(vec2((0.5+cos(phase*0.53)*0.4)-x,(0.5-sin(phase*0.46)*0.4)-y)))); + V.rb+=vec2(smoothstep(0.626,0.,length(vec2((0.5+cos(phase*0.98)*0.4)-x,(0.5+sin(phase*0.57)*0.4)-y)))); + V.gb+=vec2(smoothstep(0.626,0.,length(vec2((0.5-cos(phase*0.86)*0.4)-x,(0.5-sin(phase*0.32)*0.4)-y)))); - dx=0.5+cos(t*3.*0.26)*0.4-x; - dy=0.5-sin(t*3.*0.62)*0.4-y; - dx=sqrt(dx*dx+dy*dy); - V.r=V.r+smoothstep(1.26,0.,dx); - - dx=(0.5+cos(t*3.*0.32)*0.4)-x; - dy=(0.5-sin(t*3.*0.80)*0.4)-y; - dx=sqrt(dx*dx+dy*dy); - V.g=V.g+smoothstep(1.26,0.,dx); - - dx=(0.5-cos(t*3.*0.49)*0.4)-x; - dy=(0.5+sin(t*3.*0.18)*0.4)-y; - dx=sqrt(dx*dx+dy*dy); - V.b=V.b+smoothstep(1.26,0.,dx); - - dx=(0.5+cos(t*0.53)*0.4)-x; - dy=(0.5-sin(t*0.46)*0.4)-y; - dx=sqrt(dx*dx+dy*dy); - V.rg+=vec2(smoothstep(0.626,0.,dx)); - - dx=(0.5+cos(t*0.98)*0.4)-x; - dy=(0.5+sin(t*0.57)*0.4)-y; - dx=sqrt(dx*dx+dy*dy); - V.rb+=vec2(smoothstep(0.626,0.,dx)); - - dx=(0.5-cos(t*0.86)*0.4)-x; - dy=(0.5-sin(t*0.32)*0.4)-y; - dx=sqrt(dx*dx+dy*dy); - V.gb+=vec2(smoothstep(0.626,0.,dx)); - - dx=1.626*max(max(V.r,V.g),V.b); - return vec4(V/dx,0.4); + return vec4(V/max(max(V.r,V.g),V.b)/1.626,0.4); } diff --git a/parts/shaders/blockSatur.glsl b/parts/shaders/blockSatur.glsl index 3b0a3171..57456278 100644 --- a/parts/shaders/blockSatur.glsl +++ b/parts/shaders/blockSatur.glsl @@ -1,10 +1,10 @@ -extern float k,b; -vec4 effect(vec4 color,Image tex,vec2 tex_coords,vec2 scr_coords){ - vec4 texcolor=Texel(tex,tex_coords); +uniform float k,b; +vec4 effect(vec4 color,sampler2D tex,vec2 texCoord,vec2 scrCoord){ + vec4 texcolor=texture2D(tex,texCoord); return vec4( - (b+texcolor.r*k)*color.r, - (b+texcolor.g*k)*color.g, - (b+texcolor.b*k)*color.b, + (texcolor.r*k+b)*color.r, + (texcolor.g*k+b)*color.g, + (texcolor.b*k+b)*color.b, texcolor.a*color.a ); } diff --git a/parts/shaders/fieldSatur.glsl b/parts/shaders/fieldSatur.glsl index 3b0a3171..57456278 100644 --- a/parts/shaders/fieldSatur.glsl +++ b/parts/shaders/fieldSatur.glsl @@ -1,10 +1,10 @@ -extern float k,b; -vec4 effect(vec4 color,Image tex,vec2 tex_coords,vec2 scr_coords){ - vec4 texcolor=Texel(tex,tex_coords); +uniform float k,b; +vec4 effect(vec4 color,sampler2D tex,vec2 texCoord,vec2 scrCoord){ + vec4 texcolor=texture2D(tex,texCoord); return vec4( - (b+texcolor.r*k)*color.r, - (b+texcolor.g*k)*color.g, - (b+texcolor.b*k)*color.b, + (texcolor.r*k+b)*color.r, + (texcolor.g*k+b)*color.g, + (texcolor.b*k+b)*color.b, texcolor.a*color.a ); } diff --git a/parts/shaders/grad1.glsl b/parts/shaders/grad1.glsl index e39231da..9072b7e1 100644 --- a/parts/shaders/grad1.glsl +++ b/parts/shaders/grad1.glsl @@ -1,9 +1,9 @@ -extern float t,w; -vec4 effect(vec4 color,Image tex,vec2 tex_coords,vec2 scr_coords){ - float x=scr_coords.x/w; +uniform float phase; +vec4 effect(vec4 color,sampler2D tex,vec2 texCoord,vec2 scrCoord){ + float x=scrCoord.x/love_ScreenSize.x; return vec4( .8-x*.6, - .3+.2*sin(t), + .3+.2*sin(phase), .15+x*.7, .4 ); diff --git a/parts/shaders/grad2.glsl b/parts/shaders/grad2.glsl index 63f223ef..91aea1b3 100644 --- a/parts/shaders/grad2.glsl +++ b/parts/shaders/grad2.glsl @@ -1,10 +1,10 @@ -extern float t,h; -vec4 effect(vec4 color,Image tex,vec2 tex_coords,vec2 scr_coords){ - float y=scr_coords.y/h; +uniform float phase; +vec4 effect(vec4 color,sampler2D tex,vec2 texCoord,vec2 scrCoord){ + float y=scrCoord.y/love_ScreenSize.y; return vec4( .8-y*.6, .2+y*.4, - .3+.1*sin(t), + .3+.1*sin(phase), .4 ); } diff --git a/parts/shaders/lighter.glsl b/parts/shaders/lighter.glsl index 333335a4..78804e3a 100644 --- a/parts/shaders/lighter.glsl +++ b/parts/shaders/lighter.glsl @@ -1,5 +1,5 @@ -vec4 effect(vec4 color,Image tex,vec2 tex_coords,vec2 scr_coords){ - vec4 texcolor=Texel(tex,tex_coords); +vec4 effect(vec4 color,sampler2D tex,vec2 texCoord,vec2 scrCoord){ + vec4 texcolor=texture2D(tex,texCoord); return vec4( pow(texcolor.r+.26,.7023), pow(texcolor.g+.26,.7023), diff --git a/parts/shaders/rgb1.glsl b/parts/shaders/rgb1.glsl index 146edc12..b07497e6 100644 --- a/parts/shaders/rgb1.glsl +++ b/parts/shaders/rgb1.glsl @@ -1,11 +1,11 @@ -extern float t,w,h; -vec4 effect(vec4 color,Image tex,vec2 tex_coords,vec2 scr_coords){ - float x=scr_coords.x/w; - float y=scr_coords.y/h; +uniform float phase; +vec4 effect(vec4 color,sampler2D tex,vec2 texCoord,vec2 scrCoord){ + float x=scrCoord.x/love_ScreenSize.x; + float y=scrCoord.y/love_ScreenSize.y; return vec4( - .8-y*.7+.2*sin(t/6.26), - .2+y*.5+.15*sin(t/4.), - .2+x*.6-.1*sin(t/2.83), + .8-y*.7+.2*sin(phase/6.26), + .2+y*.5+.15*sin(phase/4.), + .2+x*.6-.1*sin(phase/2.83), .4 ); } diff --git a/parts/shaders/rgb2.glsl b/parts/shaders/rgb2.glsl index 06d0db10..9ea35718 100644 --- a/parts/shaders/rgb2.glsl +++ b/parts/shaders/rgb2.glsl @@ -1,11 +1,11 @@ -extern float t,w,h; -vec4 effect(vec4 color,Image tex,vec2 tex_coords,vec2 scr_coords){ - float x=scr_coords.x/w; - float y=scr_coords.y/h; +uniform float phase; +vec4 effect(vec4 color,sampler2D tex,vec2 texCoord,vec2 scrCoord){ + float x=scrCoord.x/love_ScreenSize.x; + float y=scrCoord.y/love_ScreenSize.y; return vec4( - .8-y*.8-.1*sin(t/6.26), - .4+.1*sin(t/4.)*(y+2.)/(y+5.), - abs(.7-x*1.4+y*.5*sin(t/16.)), + .8-y*.8-.1*sin(phase/6.26), + .4+.1*sin(phase/4.)*(y+2.)/(y+5.), + abs(.7-x*1.4+y*.5*sin(phase/16.)), .4 ); } diff --git a/parts/shaders/warning.glsl b/parts/shaders/warning.glsl index a4179710..deae34b7 100644 --- a/parts/shaders/warning.glsl +++ b/parts/shaders/warning.glsl @@ -1,6 +1,6 @@ -extern float w,level; -vec4 effect(vec4 color,Image tex,vec2 tex_coords,vec2 scr_coords){ - float dx=abs(scr_coords.x/w-0.5); +uniform float level; +vec4 effect(vec4 color,sampler2D tex,vec2 texCoord,vec2 scrCoord){ + float dx=abs(scrCoord.x/love_ScreenSize.x-0.5); float a=(dx*2.6-.626)*level; return vec4(1.,0.,0.,a); }