LWJGL üzerinde çalışırken bazı rotate işlemlerinde birşeyler ters gittiğini anladım. Mesela en basidinden 4 duvarı döndürürken bir duvar görünmüyordu. Problemin GL_DEPTH_TEST olduğunu sonradan anladım. Örnek kod üzerinde görüleceği gibi GL_DEPTH_TEST ile bir görüntünün arkasında kalan başka bir görüntü çizilmiyor. Dolayısıyla çakışmalar engelleniyor. Örnek kod üzerinde GL_DEPTH_TEST değerini kaldırarak iki ayrı şekilde çalıştırdığınızda farkı siz de göreceksiniz. Önce koordinatların olduğu sınıf.
package com.farukbozan.graphic;import com.farukbozan.jfr.opengl.JFRPoint3D;public class Coordinates {
public static final JFRPoint3D[] wall1 = new JFRPoint3D[] public static final JFRPoint3D[] wall2 = new JFRPoint3D[] public static final JFRPoint3D[] wall3 = new JFRPoint3D[] public static final JFRPoint3D[] wall4 = new JFRPoint3D[] public static final JFRPoint3D[] wall5 = new JFRPoint3D[] public static final JFRPoint3D[] wall6 = new JFRPoint3D[] } |
Şimdi de çalışabilir sınıfımız.
package com.farukbozan.graphic;import com.farukbozan.jfr.opengl.JFRGraphic; import com.farukbozan.jfr.opengl.JFRUtility; import org.lwjgl.Sys; import org.lwjgl.opengl.Display; import org.lwjgl.opengl.GL11;public class MainView {static JFRUtility jfrUtility = new JFRUtility(); static JFRGraphic jfrGraphic = new JFRGraphic(); private static void init() private static void drawColormaticQuad() public static void main(String[] args) { try } } |
Bol Java’ lı günler dileğiyle…
No responses yet