How to pass "uniform sampler2D" to glsl shader in libgdx(using modelBatch)
I have trouble with passing sampler2d uniform from my code to shader. I
have this line in my shader:
uniform sampler2D u_texture;
In code, I am using g3db models created in blender(with textures):
AssetManager assets = new AssetManager();
assets.load(data+"/earth.g3db", Model.class);
assets.finishLoading();
Model earthModel = assets.get(data+"/earth.g3db", Model.class);
earthPlanet = new ModelInstance(earthModel,0,-1,0);
I render this using modelBatch:
modelBatch.begin(cam);
modelBatch.render(earthPlanet, shader);
modelBatch.end();
I have shader class in my code, and a render method within:
public void render(Renderable renderable) {
program.setUniformMatrix(u_worldTrans, renderable.worldTransform);
//how to pass texture??
//program.setUniformf(sampler2D, ????);
renderable.mesh.render(program,
renderable.primitiveType,
renderable.meshPartOffset,
renderable.meshPartSize);
}
I would be happy for any response. Thanks!
No comments:
Post a Comment