Rename shaders
This commit is contained in:
1 parent
d3901e680c
commit
f190d314a8
3 files changed
+11
-11
No files matched your search
@@ -37,7 +37,7 @@ float2 gradSdRoundedRectangle(float2 coord, float2 halfSize, float4 radii) {
|
||||
}"""
|
||||
|
||||
@Language("AGSL")
|
||||
internal const val RefractionShaderString = """
|
||||
internal const val RoundedRectRefractionShaderString = """
|
||||
uniform shader image;
|
||||
|
||||
uniform float2 size;
|
||||
@@ -73,7 +73,7 @@ half4 main(float2 coord) {
|
||||
}"""
|
||||
|
||||
@Language("AGSL")
|
||||
internal const val DispersionShaderString = """
|
||||
internal const val RoundedRectDispersionShaderString = """
|
||||
uniform shader image;
|
||||
|
||||
uniform float2 size;
|
||||
@@ -127,7 +127,7 @@ half4 main(float2 coord) {
|
||||
}"""
|
||||
|
||||
@Language("AGSL")
|
||||
internal const val DynamicHighlightStyleShaderString = """
|
||||
internal const val DynamicHighlightShaderString = """
|
||||
uniform shader image;
|
||||
|
||||
uniform float2 size;
|
||||
|
||||
@@ -6,8 +6,8 @@ import androidx.compose.foundation.shape.CornerBasedShape
|
||||
import androidx.compose.ui.unit.LayoutDirection
|
||||
import androidx.compose.ui.util.fastCoerceAtMost
|
||||
import com.kyant.backdrop.BackdropEffectScope
|
||||
import com.kyant.backdrop.DispersionShaderString
|
||||
import com.kyant.backdrop.RefractionShaderString
|
||||
import com.kyant.backdrop.RoundedRectDispersionShaderString
|
||||
import com.kyant.backdrop.RoundedRectRefractionShaderString
|
||||
|
||||
fun BackdropEffectScope.refraction(
|
||||
height: Float,
|
||||
@@ -20,7 +20,7 @@ fun BackdropEffectScope.refraction(
|
||||
val cornerRadii = cornerRadii
|
||||
val effect =
|
||||
if (cornerRadii != null) {
|
||||
val shader = obtainRuntimeShader("Refraction", RefractionShaderString).apply {
|
||||
val shader = obtainRuntimeShader("Refraction", RoundedRectRefractionShaderString).apply {
|
||||
setFloatUniform("size", size.width, size.height)
|
||||
setFloatUniform("cornerRadii", cornerRadii)
|
||||
setFloatUniform("refractionHeight", height)
|
||||
@@ -44,7 +44,7 @@ fun BackdropEffectScope.dispersion(
|
||||
val cornerRadii = cornerRadii
|
||||
val effect =
|
||||
if (cornerRadii != null) {
|
||||
val shader = obtainRuntimeShader("Dispersion", DispersionShaderString).apply {
|
||||
val shader = obtainRuntimeShader("Dispersion", RoundedRectDispersionShaderString).apply {
|
||||
setFloatUniform("size", size.width, size.height)
|
||||
setFloatUniform("cornerRadii", cornerRadii)
|
||||
setFloatUniform("dispersionHeight", height)
|
||||
@@ -69,14 +69,14 @@ fun BackdropEffectScope.refractionWithDispersion(
|
||||
val cornerRadii = cornerRadii
|
||||
val effect =
|
||||
if (cornerRadii != null) {
|
||||
val refractionShader = obtainRuntimeShader("Refraction", RefractionShaderString).apply {
|
||||
val refractionShader = obtainRuntimeShader("Refraction", RoundedRectRefractionShaderString).apply {
|
||||
setFloatUniform("size", size.width, size.height)
|
||||
setFloatUniform("cornerRadii", cornerRadii)
|
||||
setFloatUniform("refractionHeight", height)
|
||||
setFloatUniform("refractionAmount", -amount)
|
||||
setFloatUniform("depthEffect", if (hasDepthEffect) 1f else 0f)
|
||||
}
|
||||
val dispersionShader = obtainRuntimeShader("Dispersion", DispersionShaderString).apply {
|
||||
val dispersionShader = obtainRuntimeShader("Dispersion", RoundedRectDispersionShaderString).apply {
|
||||
setFloatUniform("size", size.width, size.height)
|
||||
setFloatUniform("cornerRadii", cornerRadii)
|
||||
setFloatUniform("dispersionHeight", height * dispersionIntensity)
|
||||
|
||||
@@ -9,7 +9,7 @@ import androidx.annotation.RequiresApi
|
||||
import androidx.compose.runtime.Immutable
|
||||
import androidx.compose.runtime.Stable
|
||||
import androidx.compose.ui.geometry.Size
|
||||
import com.kyant.backdrop.DynamicHighlightStyleShaderString
|
||||
import com.kyant.backdrop.DynamicHighlightShaderString
|
||||
import kotlin.math.PI
|
||||
|
||||
@Immutable
|
||||
@@ -64,7 +64,7 @@ interface HighlightStyle {
|
||||
return if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
|
||||
val highlightRenderEffect =
|
||||
RenderEffect.createRuntimeShaderEffect(
|
||||
RuntimeShader(DynamicHighlightStyleShaderString).apply {
|
||||
RuntimeShader(DynamicHighlightShaderString).apply {
|
||||
setFloatUniform("size", size.width, size.height)
|
||||
setFloatUniform("angle", angle * (PI / 180f).toFloat())
|
||||
setFloatUniform("falloff", falloff)
|
||||
|
||||
Reference in new issue
Block a user