commonMain.dsl.functions.Sampler3DFunctions.kt Maven / Gradle / Ivy
package org.openrndr.orsl.shadergenerator.dsl.functions
import org.openrndr.orsl.shadergenerator.dsl.*
import org.openrndr.orsl.shadergenerator.dsl.Generator
import org.openrndr.math.*
import kotlin.jvm.JvmName
@Suppress("INAPPLICABLE_JVM_NAME")
interface Sampler3DFunctions : Generator {
@JvmName("getSs3Sv3")
operator fun Symbol.get(uvw: Symbol): Symbol =
functionSymbol(this, uvw, "texture($0, $1)")
@JvmName("getSs3Sv3Sd")
operator fun Symbol.get(uvw: Symbol, lod: Symbol): Symbol =
Function3Symbol(p0 = this, p1 = uvw, p2 = lod, function = "textureLod($0, $1, $2)", type = "vec4")
@JvmName("sizeSs3Vi")
fun Symbol.size(level: Int = 0): Symbol =
functionSymbol(this, level, "textureSize($0, $1)")
@JvmName("fetchSs3Sv2Vi")
fun Symbol.fetch(uv: Symbol, lod: Symbol): Symbol =
functionSymbol(this, uv, lod, "texelFetch($0, $1)")
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy