26 lines
592 B
Haxe
26 lines
592 B
Haxe
|
package kha.compute;
|
||
|
|
||
|
import haxe.io.Bytes;
|
||
|
import kha.Blob;
|
||
|
|
||
|
class Shader {
|
||
|
public var shader_: Dynamic;
|
||
|
|
||
|
public function new(sources: Array<Blob>, files: Array<String>) {
|
||
|
shader_ = Krom.createShaderCompute(sources[0].toBytes().getData());
|
||
|
}
|
||
|
|
||
|
public function delete(): Void {
|
||
|
Krom.deleteShaderCompute(shader_);
|
||
|
shader_ = null;
|
||
|
}
|
||
|
|
||
|
public function getConstantLocation(name: String): ConstantLocation {
|
||
|
return Krom.getConstantLocationCompute(shader_, name);
|
||
|
}
|
||
|
|
||
|
public function getTextureUnit(name: String): TextureUnit {
|
||
|
return Krom.getTextureUnitCompute(shader_, name);
|
||
|
}
|
||
|
}
|