package com.gebauz.bauzoid.graphics.shader;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.files.FileHandle;
import com.gebauz.bauzoid.app.Consts;
import com.gebauz.bauzoid.graphics.Graphics;
/** Convenience functions for shaders. */
public class ShaderUtil
{
public static final String LOG_TAG = Consts.
LOG_TAG +
":ShaderUtil";
public static boolean verbose =
false;
private ShaderUtil
() {}
public static void log
(String tag,
String msg
)
{
if (verbose
)
Gdx.
app.
log(tag, msg
);
}
/** Load a shader from file. */
public static ShaderProgram createShaderFromFile
(Graphics graphics, FileHandle vertexShaderFile, FileHandle fragmentShaderFile
)
{
String vertexShaderCode = vertexShaderFile.
readString();
String fragmentShaderCode = fragmentShaderFile.
readString();
return createShaderFromString
(graphics, vertexShaderCode, fragmentShaderCode
);
}
/** Load shader from string. */
public static ShaderProgram createShaderFromString
(Graphics graphics,
String vertexShaderCode,
String fragmentShaderCode
)
{
ShaderProgram program =
new ShaderProgram
(graphics
);
program.
loadShaderProgram(vertexShaderCode, fragmentShaderCode
);
return program
;
}
}