void setup() { glClearColor(0,0,0,1); vbo = vbo_init(shooter.pos,indices); shader = shader_init("../shaders/shooter.vs","../shaders/shooter.fs"); bind_attribute(shader,0,"coord"); }
void init_geometry(void) { xy_en = q_en = pargb_en = st0_en = st1_en = z_en = 0; inverted_culling = 0; glDisable(GL_CULL_FACE); glDisable(GL_DEPTH_TEST); vbo_init(); }
//extern void drawModelSetMax(void); int glInit(void){ cvar_register(&cvar_gl_MSAA_Samples); cvar_pset(&cvar_gl_MSAA_Samples, "0"); // console_printf("cvar id is %i\n", cvar_gl_MSAA_Samples.myid); // console_printf("cvar name is %s\n", cvar_gl_MSAA_Samples.name); // console_printf("cvar value is %s\n", cvar_gl_MSAA_Samples.valuestring); glewExperimental = TRUE; GLenum glewError = glewInit(); CHECKGLERROR if(glewError != GLEW_OK){ console_printf("ERROR with the glew: %s\n", glewGetErrorString(glewError)); return FALSE; } shader_init(); CHECKGLERROR if(!shader_ok){ //todo call some sort of shutdown of everything return FALSE; } texture_init(); CHECKGLERROR if(!texture_ok){ //todo call some sort of shutdown of everything return FALSE; } framebuffer_init(); CHECKGLERROR if(!framebuffer_ok){ //todo call some sort of shutdown of everything return FALSE; } vbo_init(); CHECKGLERROR if(!vbo_ok){ return FALSE; //todo call some sort of shutdown of everything } ubo_init(); CHECKGLERROR if(!ubo_ok){ return FALSE; //todo call some sort of shutdown of everything } anim_init(); CHECKGLERROR if(!anim_ok){ //todo call some sort of shutdown of everything return FALSE; } model_init(); CHECKGLERROR if(!model_ok){ //todo call some sort of shutdown of everything return FALSE; } /* initParticleSystem(128); if(!particlesOK){ //todo call some sort of shutdown of everything return FALSE; } */ light_init(); CHECKGLERROR if(!light_ok){ //todo call some sort of shutdown of everything return FALSE; } lighttile_init(); CHECKGLERROR if(!lighttile_ok){ //todo call some sort of shutdown of everything return FALSE; } viewport_init(); CHECKGLERROR if(!viewport_ok){ //todo call some sort of shutdown of everything return FALSE; } text_init(); CHECKGLERROR if(!text_ok){ //todo call some sort of shutdown of everything return FALSE; } rendermodel_init(); CHECKGLERROR //todo errorcheck drawbb_init(); CHECKGLERROR //todo errorcheck states_enableForce(GL_MULTISAMPLE); glClearDepth(1.0); glClearColor(0.0, 0.0, 0.0, 0.0); CHECKGLERROR // states_disableForce(GL_FOG); states_enableForce(GL_DEPTH_TEST); CHECKGLERROR // glDepthFunc(GL_LESS); states_depthFunc(GL_LESS); states_enableForce(GL_CULL_FACE); states_cullFace(GL_BACK); // states_depthMask(GL_TRUE); int maxSamples = 0, maxIntSamples = 0, maxColorTextureSamples = 0, maxDepthTextureSamples = 0; glGetIntegerv(GL_MAX_SAMPLES, &maxSamples); glGetIntegerv(GL_MAX_INTEGER_SAMPLES, &maxIntSamples); glGetIntegerv(GL_MAX_COLOR_TEXTURE_SAMPLES, &maxColorTextureSamples); glGetIntegerv(GL_MAX_DEPTH_TEXTURE_SAMPLES, &maxDepthTextureSamples); maxMSAASamples = maxSamples; if(maxIntSamples < maxMSAASamples) maxMSAASamples = maxIntSamples; if(maxColorTextureSamples < maxMSAASamples) maxMSAASamples = maxColorTextureSamples; if(maxDepthTextureSamples < maxMSAASamples) maxMSAASamples = maxDepthTextureSamples; console_printf("Max multisample samples: %i\n", maxMSAASamples); cam = createAndAddViewportRPOINT("cam", 1); camid = cam->myid; cam->outfbid = findFramebufferByNameRINT("screen"); unsigned char dflags[] = {3, 7, 3}; // unsigned char drb = FRAMEBUFFERRBFLAGSDEPTH| 2; unsigned char drb = FRAMEBUFFERRBFLAGSDEPTH; unsigned char dcount = 3; cam->dfbid = createAndAddFramebufferRINT("screend", dcount, drb, dflags); resizeViewport(cam, 800, 600); screenWidth = 800; screenHeight = 600; glGenBuffers(1, &instancevbo); glGenBuffers(1, &instancevbo2); //temporary CHECKGLERROR vbo_t * tvbo = createAndAddVBORPOINT("text", 2); textvbo = tvbo->myid; textshaderid = shader_createAndAddRINT("text"); fsblendshaderid = shader_createAndAddRINT("fsblend"); depthonlyid = shader_createAndAddRINT("depthmodel"); forwardmodelid = shader_createAndAddRINT("forwardmodel"); fsquadmodel = model_findByNameRINT("fsquad"); readyRenderQueueBuffers(); return TRUE; // so far so good }
void init_geometry() { vbo_init(); }