1. Masukkan objek OrthographicCamera pada bagian antara class dan create seperti berikut. Dan berikut tambahkan objek baru pada method create.
public class MyGdxGame implements ApplicationListener { SpriteBatch spriteBatch; BitmapFont font; OrthographicCamera camera; @Override public void create () { spriteBatch = new SpriteBatch(); font = new BitmapFont(); camera = new OrthographicCamera(); camera.setToOrtho(true, Gdx.graphics.getWidth(), Gdx.graphics.getHeight()); }
Untuk diketahui, orthographic secara sederhana adalah ketika kita melihat sebuah objek pada proyeksi 2D dari atas, kita tidak akan melihat sisi-sisi lainnya dari objek yang sedang kita lihat. Begitu juga ketika kita melihat pada bagian samping. Atau dalam gambar teknik, kita sedang menggambar objek dalam bidang 2D.
Penjelasan kode:
camera.setToOrtho(true, Gdx.graphics.getWidth(), Gdx.graphics.getHeight()); //kode kita camera.setToOrtho(yDown, viewportWidth, viewportHeight); //kode variabel yang dilewatkanVariabel yDown adalah boolean. Secara default, point (0,0) berada pada kiri bawah layar, dan ketika kita memberikan nilai true, maka point (0,0) akan berada pada kiri atas layar.
Sementara viewportWidth dan viewportHeight pasti Anda tau apa maksudnya.
2. Setelah penambahan OrthographicCamera, Anda tidak perlu menambahkan method dispose untuk kamera tersebut.
3. Kamera Orthographic belum akan 'menghasilkan' apa-apa pada proyek ketika dirender. Anda harus memasukkan pengaturan kamera pada method render
@Override public void render () { camera.update(); spriteBatch.setProjectionMatrix(camera.combined); Gdx.gl.glClearColor(0, 0, 1, 1); Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT); spriteBatch.begin(); font.draw(spriteBatch, "Ini adalah tulisan", 100, 100); spriteBatch.end(); }
Perlu diperhatikan method setProjectionMatrix pada spriteBatch berikut seperti terlihat pada gambar;
4. Render project tersebut, maka Anda akan melihat tulisan terbalik sepeti berikut
font = new BitmapFont(true);
6. Hasil akhir akan terlihat seperti berikut
Keseluruhan code terlihat seperti berikut;
package com.mygdx.game; import com.badlogic.gdx.ApplicationListener; import com.badlogic.gdx.Gdx; import com.badlogic.gdx.graphics.GL20; import com.badlogic.gdx.graphics.OrthographicCamera; import com.badlogic.gdx.graphics.g2d.BitmapFont; import com.badlogic.gdx.graphics.g2d.SpriteBatch; public class MyGdxGame implements ApplicationListener { SpriteBatch spriteBatch; BitmapFont font; OrthographicCamera camera; @Override public void create () { spriteBatch = new SpriteBatch(); font = new BitmapFont(true); camera = new OrthographicCamera(); camera.setToOrtho(true, Gdx.graphics.getWidth(), Gdx.graphics.getHeight()); } @Override public void render () { camera.update(); spriteBatch.setProjectionMatrix(camera.combined); Gdx.gl.glClearColor(0, 0, 1, 1); Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT); spriteBatch.begin(); font.draw(spriteBatch, "Ini adalah tulisan", 100, 100); spriteBatch.end(); } @Override public void resize(int width, int height) { // TODO Auto-generated method stub } @Override public void pause() { // TODO Auto-generated method stub } @Override public void resume() { // TODO Auto-generated method stub } @Override public void dispose() { spriteBatch.dispose(); font.dispose(); } }
Tidak ada komentar:
Posting Komentar