OpenGL 4.3 Java Not Rendering in Window -


i'm following opengl 3d game tutorial series thinmatrix , seems work fine except nothing appears in window. got 5th video.

my loader class

package org.voxsim;   import java.nio.floatbuffer; import java.nio.intbuffer; import java.util.arraylist; import java.util.list;  import org.lwjgl.bufferutils; import org.lwjgl.opengl.gl11; import org.lwjgl.opengl.gl15; import org.lwjgl.opengl.gl20; import org.lwjgl.opengl.gl30;  public class loader {      private list<integer> vaos = new arraylist<integer>();     private list<integer> vbos = new arraylist<integer>();      public models loadtovao(float[] pos, int[] ind) {         int vaoid = createvao();         bindindbuffer(ind);         storedata(0,pos);         unbind();         return new models(vaoid, ind.length);     }      public void cleanup() {         (int vao:vaos) {             gl30.gldeletevertexarrays(vao);         }         (int vbo:vbos) {             gl15.gldeletebuffers(vbo);         }     }      private int createvao() {         int vaoid = gl30.glgenvertexarrays();         vaos.add(vaoid);         gl30.glbindvertexarray(vaoid);         return vaoid;     }      private void storedata(int num, float[] data) {         int vboid = gl15.glgenbuffers();         vbos.add(vboid);         gl15.glbindbuffer(gl15.gl_array_buffer, vboid);         floatbuffer buffer = storeinfloatbuffer(data);         gl15.glbufferdata(gl15.gl_array_buffer, buffer, gl15.gl_static_draw);         gl20.glvertexattribpointer(num,3,gl11.gl_float,false,0,0);         gl15.glbindbuffer(gl15.gl_array_buffer, 0);     }      private void unbind() {         gl30.glbindvertexarray(0);     }      private void bindindbuffer(int[] ind) {         int vboid = gl15.glgenbuffers();         vbos.add(vboid);         gl15.glbindbuffer(gl15.gl_element_array_buffer, vboid);         intbuffer buffer = storeinintbuffer(ind);         gl15.glbufferdata(gl15.gl_element_array_buffer, buffer, gl15.gl_static_draw);     }      private intbuffer storeinintbuffer(int[] data) {         intbuffer buffer = bufferutils.createintbuffer(data.length);         buffer.put(data);         buffer.flip();         return buffer;     }      private floatbuffer storeinfloatbuffer(float[] data) {         floatbuffer buffer = bufferutils.createfloatbuffer(data.length);         buffer.put(data);         buffer.flip();         return buffer;     } } 

my render class

package org.voxsim;  import org.lwjgl.opengl.gl11; import org.lwjgl.opengl.gl20; import org.lwjgl.opengl.gl30;  public class render {      public void render(models model) {         gl11.glcolor4f(0.5f, 0.9f, 0.2f, 1.0f);         gl30.glbindvertexarray(model.getvaoid());         gl20.glenablevertexattribarray(0);         gl11.gldrawelements(gl11.gl_triangles, model.getvertexcount(), gl11.gl_unsigned_int, 0);         gl20.gldisablevertexattribarray(0);         gl30.glbindvertexarray(0);     } } 

my model class

package org.voxsim;  public class models {      private int vaoid;     private int vaonum;      public models(int vaoid, int vaonum) {         this.vaoid = vaoid;         this.vaonum = vaonum;     }      public int getvaoid() {         return vaoid;     }      public int getvertexcount() {         return vaonum;     } } 

my main class

package org.voxsim;  import static org.lwjgl.glfw.glfw.glfwwindowshouldclose; import static org.lwjgl.opengl.gl11.gl_false;  import org.lwjgl.opengl.gl30; import org.lwjgl.opengl.glcapabilities; import org.voxsim.game.block; import org.voxsim.shaders.shader; import org.voxsim.shaders.static;  public class game {      static public int width = 600;     static public int height = 400;     static public int vsync = 1;      static public string title = "voxsim";      static private loader loader = new loader();     static private render render = new render();      private static void loop() {          shader shader = new static();          float[] v = {                 -0.5f,0.5f,0,                 -0.5f,-0.5f,0,                 0.5f,-0.5f,0,                 0.5f,0.5f,0         };          int[] ind = {                 0,1,3,                 3,1,2         };          models model = loader.loadtovao(v, ind);          while (glfwwindowshouldclose(displaymanager.windowid) == gl_false) {             displaymanager.updatedisplay();             shader.start();             render.render(model);             shader.stop();         }         shader.cleanup();     }      public static void main(string[] args) {         displaymanager.createdisplay();          displaymanager.updatedisplay();          loop();           loader.cleanup();     }  } 

i followed tutorial don't know what's wrong. running intel 4th gen i3 intel hd graphics 4400 4gb of ram on windows 10 opengl version 4.3, opencl version 1.2, , shader model version 5


Comments