use of org.terasology.engine.rendering.cameras.Camera in project Terasology by MovingBlocks.
the class AABBRenderer method prepare.
private void prepare() {
defaultMaterial.enable();
Matrix4f modelView = new Matrix4f();
Camera camera = worldRenderer.getActiveCamera();
Vector3f center = aabb.center(new Vector3f());
Vector3f cameraPosition = CoreRegistry.get(LocalPlayer.class).getViewPosition(new Vector3f());
modelView.set(camera.getViewMatrix()).mul(new Matrix4f().setTranslation(center.x() - cameraPosition.x, center.y() - cameraPosition.y, center.z() - cameraPosition.z));
defaultMaterial.setMatrix4("modelViewMatrix", modelView);
defaultMaterial.setMatrix4("projectionMatrix", camera.getProjectionMatrix());
}
use of org.terasology.engine.rendering.cameras.Camera in project Terasology by MovingBlocks.
the class BlockSelectionRenderer method beginRenderOverlay.
public void beginRenderOverlay() {
if (effectsTexture == null || !effectsTexture.isLoaded()) {
return;
}
Camera camera = worldRenderer.getActiveCamera();
blockSelectionMat.enable();
blockSelectionMat.activateFeature(ShaderProgramFeature.FEATURE_ALPHA_REJECT);
blockSelectionMat.setMatrix4("projectionMatrix", camera.getProjectionMatrix());
blockSelectionMat.setTexture("tex", effectsTexture);
blockSelectionMat.bindTextures();
glEnable(GL11.GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
}
use of org.terasology.engine.rendering.cameras.Camera in project Terasology by MovingBlocks.
the class BlockSelectionRenderer method renderMark.
public void renderMark(Vector3ic blockPos) {
Camera camera = worldRenderer.getActiveCamera();
final Vector3f cameraPosition = camera.getPosition();
Matrix4f modelView = new Matrix4f();
modelView.set(camera.getViewMatrix()).mul(new Matrix4f().setTranslation(blockPos.x() - cameraPosition.x, blockPos.y() - cameraPosition.y, blockPos.z() - cameraPosition.z));
blockSelectionMat.setMatrix4("modelViewMatrix", modelView);
overlayMesh.render();
}
use of org.terasology.engine.rendering.cameras.Camera in project Terasology by MovingBlocks.
the class BlockSelectionRenderer method renderMark2.
public void renderMark2(Vector3ic blockPos) {
Camera camera = worldRenderer.getActiveCamera();
final Vector3f cameraPosition = camera.getPosition();
Matrix4f modelView = new Matrix4f();
modelView.set(camera.getViewMatrix()).mul(new Matrix4f().setTranslation(blockPos.x() - cameraPosition.x, blockPos.y() - cameraPosition.y, blockPos.z() - cameraPosition.z));
blockSelectionMat.setMatrix4("modelViewMatrix", modelView);
overlayMesh2.render();
}
Aggregations