List of usage examples for org.lwjgl.opengl GL11 glBlendFunc
public static void glBlendFunc(@NativeType("GLenum") int sfactor, @NativeType("GLenum") int dfactor)
From source file:game.states.State_SINGLEPLAYER.java
License:Open Source License
@Override protected void Init() { if (CreateNewGame) { CurrentSave = new GameSave(); Worlds = new TileMap[] { new TileMap(), new TileMap(), new TileMap(), new TileMap(), new TileMap(), new TileMap(), new TileMap(), new TileMap(), new TileMap() }; t = Worlds[0];//from w w w .ja v a 2 s. c om CreateGUI(); System.out.println("Loading worlds"); for (int i = 0; i < Worlds.length; i++) { Worlds[i].Load(i == Worlds.length - 1, i == 0, i); CurrentSave.setIntMapData(TileMapGenerator.Map, i); } } GL11.glEnable(GL11.GL_LIGHTING); GL11.glEnable(GL11.GL_LIGHT0); GL11.glEnableClientState(GL11.GL_NORMAL_ARRAY); GL11.glEnableClientState(GL11.GL_COLOR_ARRAY); GL11.glMatrixMode(GL11.GL_PROJECTION); GL11.glLoadIdentity(); GLU.gluPerspective(45.0f, (float) Display.getWidth() / (float) Display.getHeight(), 0.1f, 600.0f); GLU.gluLookAt(0, 20, 50, 0, -2, -100, 0, -1, 0); GL11.glMatrixMode(GL11.GL_MODELVIEW); GL11.glLoadIdentity(); if (CreateNewGame) { player = t.SpawnPlayer(); PlayerGridX = player.getX(); PlayerGridY = player.getY(); PlayerY = 52 - CameraDisplacement * (PlayerGridY - 1); PlayerX = -6 + CameraDisplacement * (PlayerGridX - 1); PlayerZ = 0; SetGUI(); } CreateNewGame = true; GL11.glEnable(GL11.GL_TEXTURE_2D); GL11.glEnable(GL11.GL_BLEND); GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); }
From source file:gamepadhandler.GamepadHandlerLWJGL.java
public void loop() throws InterruptedException { // This line is critical for LWJGL's interoperation with GLFW's // OpenGL context, or any context that is managed externally. // LWJGL detects the context that is current in the current thread, // creates the GLCapabilities instance and makes the OpenGL // bindings available for use. GL.createCapabilities();/* w w w . j a va 2 s . com*/ // Set the clear color glClearColor(0.0f, 0.0f, 0.0f, 1.0f); GL11.glMatrixMode(GL_PROJECTION); GL11.glLoadIdentity(); GL11.glOrtho(0, WIDTH, 0, HEIGHT, -1, 1); GL11.glMatrixMode(GL_MODELVIEW); GL11.glDisable(GL_DEPTH_TEST); GL11.glEnable(GL_BLEND); GL11.glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); frameLooper.init(window, WIDTH, HEIGHT); boolean keepRunning = true; long currentTime = System.nanoTime(); // Run the rendering loop until the user has attempted to close // the window or has pressed the ESCAPE key. while (!glfwWindowShouldClose(window) && keepRunning) { long elapsedNanoTime; // Putting on a frame cap (of ~120fps when this comment was made) if (FPS_CAPPED) { while (System.nanoTime() - currentTime < minFrameWaitNanoTime) { Thread.sleep(2); } } elapsedNanoTime = System.nanoTime() - currentTime; currentTime = System.nanoTime(); glClear(GL_COLOR_BUFFER_BIT); // clear the framebuffer // Poll for window events. The key callback above will only be // invoked during this call. glfwPollEvents(); // Where all the game logic is handled: keepRunning = frameLooper.frame(); glfwSwapBuffers(window); // swap the color buffers } }
From source file:glvis.renderers.BeautifulGlitch.java
@Override public void render() { Display.sync(120);//from w w w . j a v a 2 s. c om if (initial) { GL11.glClear(16384); initial = false; } int LIGHT_POINTS = 288; // 1152 // LIGHT_POINTS = 2; // int LIGHT_POINTS = 1152; // 1152 float LIGHT_POINT_SEPARATION = 4.42f; float LIGHT_Y = 256f; float LIGHT_X = 0f; short raw = 0; float fraw = 0; float calc = 0; float distx = 0; float disty = 0; boolean swch = false; int hak = 0; int mx = MouseInfo.getPointerInfo().getLocation().x + 320; int my = MouseInfo.getPointerInfo().getLocation().y + 180; short rraw = 0; float vdist = 0f; boolean chswch = false; GL11.glEnable(GL11.GL_BLEND); //Enable blending. GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); if (initial) { initial = false; GL11.glColor4f(0f, 0f, 0f, 1f); } else GL11.glColor4f(0f, 0f, 0f, 0.2f); GL11.glBegin(GL11.GL_QUADS); GL11.glVertex2f(0, 0); GL11.glVertex2f(1280, 0); GL11.glVertex2f(1280, 720); GL11.glVertex2f(0, 720); GL11.glEnd(); short[] samp = provider.getCurrentSample(); int samplen = provider.getCurrentSampleLength(); GL11.glColor4f(1f, 1f, 1f, 1f); // GL11.glPolygonMode( GL11.GL_FRONT_AND_BACK, GL11.GL_LINE ); float a1 = 0f, a2 = 0f, a3 = 0f, a4 = 0f, a5 = 0f, a6 = 0f, a7 = 0f, a8 = 0f, a9 = 0f; for (int ie = 0; ie < LIGHT_POINTS; ie++) { //GL11.glColor4f(((float)ie)/LIGHT_POINTS,((float)ie)/LIGHT_POINTS,((float)ie)/LIGHT_POINTS,1f); // this.skip = false; itra++; itra %= samplen; raw = samp[itra]; rraw = samp[samplen - (itra + 1)]; mx = 1220 + raw / 764; my = 690 + rraw / 764; // itra ++; // itra %= Player.samplen; // raw = Player.samp[itra]; // rraw = Player.samp[Player.samplen-(itra+1)]; // itra ++; // itra %= Player.samplen; // raw += Player.samp[itra]; // rraw += Player.samp[Player.samplen-(itra+1)]; // raw/=2; // rraw/=2; // // phys_x[ie]/=1.5f-rand[itra]/2; // phys_y[ie]/=1.5f-rand[Player.samplen-itra]/2; distx = (mx / 2 - 1280 / 2) - loc_x[ie]; disty = (my / 2 - 720 / 2) - loc_y[ie]; phys_x[ie] /= distx / 20f; phys_y[ie] /= disty / 20f; // if(Math.abs(distx) < 1)distx *= 100; // if(Math.abs(disty) < 1)disty *= 100; phys_x[ie] += distx;//+ raw/96f; phys_y[ie] += disty;//+ rraw/96f; // phys_x[ie] += distx + raw/128f; // phys_y[ie] += disty + rraw/128f; loc_x[ie] += phys_x[ie] / 16f; loc_y[ie] += phys_y[ie] / 16f; vdist = Math.abs(distx) + Math.abs(disty); vdist /= 4f; R[ie] /= 1.08; G[ie] /= 1.08; B[ie] /= 1.08; R[ie] += ((Math.abs(loc_y[ie] % 2f) + Math.abs(loc_x[ie] % 2f)) * vdist) / 1024f; G[ie] += ((loc_x[ie] % 2f + Math.abs(loc_y[ie] % 2f)) * vdist) / 512f; B[ie] += ((Math.abs(loc_x[ie] % 2f) + loc_y[ie] % 2f) * vdist) / 512f; LIGHT_X = loc_x[ie] * 2 + 1280 / 2; LIGHT_Y = loc_y[ie] * 2 + 720 / 2; GL11.glBegin(GL11.GL_TRIANGLE_STRIP); a1 = (R[ie] + G[ie] + B[ie]) / 3f; a2 = (lR[ie] + lG[ie] + lB[ie]) / 3f; a3 = (lR2[ie] + lG2[ie] + lB2[ie]) / 3f; a4 = (lR3[ie] + lG3[ie] + lB3[ie]) / 3f; a5 = (lR4[ie] + lG4[ie] + lB4[ie]) / 3f; a6 = (lR5[ie] + lG5[ie] + lB5[ie]) / 3f; a7 = (lR6[ie] + lG6[ie] + lB6[ie]) / 3f; GL11.glColor4f(lR6[ie], lG6[ie], lB6[ie], a7); GL11.glVertex2f(lastx6[ie], lasty6[ie]); GL11.glColor4f(lR5[ie], lG5[ie], lB5[ie], a6); GL11.glVertex2f(lastx5[ie], lasty5[ie]); GL11.glColor4f(lR4[ie], lG4[ie], lB4[ie], a5); GL11.glVertex2f(lastx4[ie], lasty4[ie]); GL11.glColor4f(lR3[ie], lG3[ie], lB3[ie], a4); GL11.glVertex2f(lastx3[ie], lasty3[ie]); GL11.glColor4f(lR2[ie], lG2[ie], lB2[ie], a3); GL11.glVertex2f(lastx2[ie], lasty2[ie]); GL11.glColor4f(lR[ie], lG[ie], lB[ie], a2); GL11.glVertex2f(lastx[ie], lasty[ie]); GL11.glColor4f(R[ie] * 2, G[ie] * 2, B[ie] * 2, a1); GL11.glVertex2f(LIGHT_X, LIGHT_Y); lastx9[ie] = lastx8[ie]; lasty9[ie] = lasty8[ie]; lastx8[ie] = lastx7[ie]; lasty8[ie] = lasty7[ie]; lastx7[ie] = lastx6[ie]; lasty7[ie] = lasty6[ie]; lastx6[ie] = lastx5[ie]; lasty6[ie] = lasty5[ie]; lastx5[ie] = lastx4[ie]; lasty5[ie] = lasty4[ie]; lastx4[ie] = lastx3[ie]; lasty4[ie] = lasty3[ie]; lastx3[ie] = lastx2[ie]; lasty3[ie] = lasty2[ie]; lastx2[ie] = lastx[ie]; lasty2[ie] = lasty[ie]; // lastx[ie] = LIGHT_X; // lasty[ie] = LIGHT_Y; lastx[ie] = LIGHT_X; lasty[ie] = LIGHT_Y; lR9[ie] = lR8[ie]; lG9[ie] = lG8[ie]; lB9[ie] = lB8[ie]; lR8[ie] = lR7[ie]; lG8[ie] = lG7[ie]; lB8[ie] = lB7[ie]; lR7[ie] = lR6[ie]; lG7[ie] = lG6[ie]; lB7[ie] = lB6[ie]; lR6[ie] = lR5[ie] / 1.2f; lG6[ie] = lG5[ie] / 1.2f; lB6[ie] = lB5[ie] / 1.2f; lR5[ie] = lR4[ie] / 1.2f; lG5[ie] = lG4[ie] / 1.2f; lB5[ie] = lB4[ie] / 1.2f; lR4[ie] = lR3[ie] / 1.2f; lG4[ie] = lG3[ie] / 1.2f; lB4[ie] = lB3[ie] / 1.2f; lR3[ie] = lR2[ie] / 1.2f; lG3[ie] = lG2[ie] / 1.2f; lB3[ie] = lB2[ie] / 1.2f; lR2[ie] = lR[ie] / 1.2f; lG2[ie] = lG[ie] / 1.2f; lB2[ie] = lB[ie] / 1.2f; lR[ie] = R[ie] * 2; lG[ie] = G[ie] * 2; lB[ie] = B[ie] * 2; GL11.glEnd(); } GL11.glDisable(GL11.GL_BLEND); //Enable blending. for (int ie = 0; ie < LIGHT_POINTS; ie++) { // LIGHT_X = loc_x[ie]*4+1280/2; // LIGHT_Y = loc_y[ie]*4+720/2; LIGHT_X = loc_x[ie] * 2 + 1280 / 2; LIGHT_Y = loc_y[ie] * 2 + 720 / 2; GL11.glColorMask(true, true, true, true); GL20.glUseProgram(this.shaderProgram); GL20.glUniform2f(GL20.glGetUniformLocation(this.shaderProgram, (CharSequence) "location"), LIGHT_X, 720.0F - LIGHT_Y); GL20.glUniform3f(GL20.glGetUniformLocation(this.shaderProgram, (CharSequence) "colour"), R[ie] / 9, G[ie] / 9, B[ie] / 9); GL11.glEnable(3042); GL11.glBlendFunc(1, 1); GL11.glBegin(7); GL11.glVertex2f(0.0F, 0.0F); GL11.glVertex2f(0.0F, 720.0F); GL11.glVertex2f(1280.0F, 720.0F); GL11.glVertex2f(1280.0F, 0.0F); GL11.glEnd(); GL11.glDisable(3042); GL20.glUseProgram(0); // GL11.glColor3f(lR9[ie], lG9[ie], lB9[ie]); // GL11.glVertex2f(lastx9[ie], lasty9[ie]); // GL11.glColor3f(lR8[ie], lG8[ie], lB8[ie]); // GL11.glVertex2f(lastx8[ie], lasty8[ie]); // GL11.glColor3f(lR7[ie], lG7[ie], lB7[ie]); // GL11.glVertex2f(lastx7[ie], lasty7[ie]); } // }
From source file:glvis.renderers.DemandingLightningTriangleStrip.java
@Override public void render() { if (initial) { GL11.glClear(16384);//from www .ja va2s .c o m initial = false; } int LIGHT_POINTS = 288; // 1152 LIGHT_POINTS = 2; // int LIGHT_POINTS = 1152; // 1152 float LIGHT_POINT_SEPARATION = 4.42f; float LIGHT_Y = 256f; float LIGHT_X = 0f; short raw = 0; float fraw = 0; float calc = 0; float distx = 0; float disty = 0; boolean swch = false; int hak = 0; short rraw = 0; float vdist = 0f; boolean chswch = false; GL11.glEnable(GL11.GL_BLEND); //Enable blending. GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); if (initial) { initial = false; GL11.glColor4f(0f, 0f, 0f, 1f); } else GL11.glColor4f(0f, 0f, 0f, 0.01f); GL11.glBegin(GL11.GL_QUADS); GL11.glVertex2f(0, 0); GL11.glVertex2f(1280, 0); GL11.glVertex2f(1280, 720); GL11.glVertex2f(0, 720); short[] samp = provider.getCurrentSample(); int samplen = provider.getCurrentSampleLength(); GL11.glDisable(GL11.GL_BLEND); //Enable blending. GL11.glColor4f(1f, 1f, 1f, 1f); // GL11.glPolygonMode( GL11.GL_FRONT_AND_BACK, GL11.GL_LINE ); for (int ie = 0; ie < LIGHT_POINTS; ie++) { GL11.glBegin(GL11.GL_TRIANGLE_STRIP); //GL11.glColor4f(((float)ie)/LIGHT_POINTS,((float)ie)/LIGHT_POINTS,((float)ie)/LIGHT_POINTS,1f); itra++; itra %= samplen; raw = samp[itra]; rraw = samp[samplen - (itra + 1)]; phys_x[ie] /= 2f; phys_y[ie] /= 2f; distx = -loc_x[ie]; disty = -loc_y[ie]; // phys_x[ie] += distx + raw/64f; // phys_y[ie] += disty + rraw/64f; phys_x[ie] += distx + raw / 64f; phys_y[ie] += disty + rraw / 64f; loc_x[ie] += phys_x[ie] / 16f; loc_y[ie] += phys_y[ie] / 16f; LIGHT_X = loc_x[ie] * 4 + 1280 / 2; LIGHT_Y = loc_y[ie] * 4 + 720 / 2; vdist = Math.abs(distx) + Math.abs(disty); vdist /= 4f; R[ie] /= 1.08; G[ie] /= 1.08; B[ie] /= 1.08; R[ie] += ((Math.abs(loc_y[ie] % 2f) + Math.abs(loc_x[ie] % 2f)) * vdist) / 1024f; G[ie] += ((loc_x[ie] % 2f + Math.abs(loc_y[ie] % 2f)) * vdist) / 512f; B[ie] += ((Math.abs(loc_x[ie] % 2f) + loc_y[ie] % 2f) * vdist) / 512f; LIGHT_X = loc_x[ie] * 2 + 1280 / 2; LIGHT_Y = loc_y[ie] * 2 + 720 / 2; // GL11.glColor3f(lR9[ie], lG9[ie], lB9[ie]); // GL11.glVertex2f(lastx9[ie], lasty9[ie]); // GL11.glColor3f(lR8[ie], lG8[ie], lB8[ie]); // GL11.glVertex2f(lastx8[ie], lasty8[ie]); // GL11.glColor3f(lR7[ie], lG7[ie], lB7[ie]); // GL11.glVertex2f(lastx7[ie], lasty7[ie]); GL11.glColor3f(lR6[ie], lG6[ie], lB6[ie]); GL11.glVertex2f(lastx6[ie], lasty6[ie]); GL11.glColor3f(lR5[ie], lG5[ie], lB5[ie]); GL11.glVertex2f(lastx5[ie], lasty5[ie]); GL11.glColor3f(lR4[ie], lG4[ie], lB4[ie]); GL11.glVertex2f(lastx4[ie], lasty4[ie]); GL11.glColor3f(lR3[ie], lG3[ie], lB3[ie]); GL11.glVertex2f(lastx3[ie], lasty3[ie]); GL11.glColor3f(lR2[ie], lG2[ie], lB2[ie]); GL11.glVertex2f(lastx2[ie], lasty2[ie]); GL11.glColor3f(lR[ie], lG[ie], lB[ie]); GL11.glVertex2f(lastx[ie], lasty[ie]); GL11.glColor3f(R[ie] * 2, G[ie] * 2, B[ie] * 2); GL11.glVertex2f(LIGHT_X, LIGHT_Y); lastx9[ie] = lastx8[ie]; lasty9[ie] = lasty8[ie]; lastx8[ie] = lastx7[ie]; lasty8[ie] = lasty7[ie]; lastx7[ie] = lastx6[ie]; lasty7[ie] = lasty6[ie]; lastx6[ie] = lastx5[ie]; lasty6[ie] = lasty5[ie]; lastx5[ie] = lastx4[ie]; lasty5[ie] = lasty4[ie]; lastx4[ie] = lastx3[ie]; lasty4[ie] = lasty3[ie]; lastx3[ie] = lastx2[ie]; lasty3[ie] = lasty2[ie]; lastx2[ie] = lastx[ie]; lasty2[ie] = lasty[ie]; // lastx[ie] = LIGHT_X; // lasty[ie] = LIGHT_Y; lastx[ie] = LIGHT_X; lasty[ie] = LIGHT_Y; lR9[ie] = lR8[ie]; lG9[ie] = lG8[ie]; lB9[ie] = lB8[ie]; lR8[ie] = lR7[ie]; lG8[ie] = lG7[ie]; lB8[ie] = lB7[ie]; lR7[ie] = lR6[ie]; lG7[ie] = lG6[ie]; lB7[ie] = lB6[ie]; lR6[ie] = lR5[ie] / 1.2f; lG6[ie] = lG5[ie] / 1.2f; lB6[ie] = lB5[ie] / 1.2f; lR5[ie] = lR4[ie] / 1.2f; lG5[ie] = lG4[ie] / 1.2f; lB5[ie] = lB4[ie] / 1.2f; lR4[ie] = lR3[ie] / 1.2f; lG4[ie] = lG3[ie] / 1.2f; lB4[ie] = lB3[ie] / 1.2f; lR3[ie] = lR2[ie] / 1.2f; lG3[ie] = lG2[ie] / 1.2f; lB3[ie] = lB2[ie] / 1.2f; lR2[ie] = lR[ie] / 1.2f; lG2[ie] = lG[ie] / 1.2f; lB2[ie] = lB[ie] / 1.2f; lR[ie] = R[ie] * 2; lG[ie] = G[ie] * 2; lB[ie] = B[ie] * 2; GL11.glEnd(); } for (int ie = 0; ie < LIGHT_POINTS; ie++) { LIGHT_X = loc_x[ie] * 2 + 1280 / 2; LIGHT_Y = loc_y[ie] * 2 + 720 / 2; GL11.glColorMask(true, true, true, true); GL20.glUseProgram(this.shaderProgram); GL20.glUniform2f(GL20.glGetUniformLocation(this.shaderProgram, (CharSequence) "location"), LIGHT_X, 720.0F - LIGHT_Y); GL20.glUniform3f(GL20.glGetUniformLocation(this.shaderProgram, (CharSequence) "colour"), R[ie] / 2, G[ie] / 2, B[ie] / 2); GL11.glEnable(3042); GL11.glBlendFunc(1, 1); GL11.glBegin(7); GL11.glVertex2f(0.0F, 0.0F); GL11.glVertex2f(0.0F, 720.0F); GL11.glVertex2f(1280.0F, 720.0F); GL11.glVertex2f(1280.0F, 0.0F); GL11.glEnd(); GL11.glDisable(3042); GL20.glUseProgram(0); } // Display.sync(600); }
From source file:glvis.renderers.HighIntensityAccurate.java
@Override public void render() { Display.sync(120);/*w w w . j a v a2 s .co m*/ if (initial) { GL11.glClear(16384); initial = false; } int LIGHT_POINTS = 288; // 1152 // LIGHT_POINTS = 2; // int LIGHT_POINTS = 1152; // 1152 float LIGHT_POINT_SEPARATION = 4.42f; float LIGHT_Y = 256f; float LIGHT_X = 0f; short raw = 0; float fraw = 0; float calc = 0; float distx = 0; float disty = 0; boolean swch = false; int hak = 0; short rraw = 0; float vdist = 0f; boolean chswch = false; GL11.glEnable(GL11.GL_BLEND); //Enable blending. GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); if (initial) { initial = false; GL11.glColor4f(0f, 0f, 0f, 1f); } else GL11.glColor4f(0f, 0f, 0f, 0.4f); GL11.glBegin(GL11.GL_QUADS); GL11.glVertex2f(0, 0); GL11.glVertex2f(1280, 0); GL11.glVertex2f(1280, 720); GL11.glVertex2f(0, 720); GL11.glEnd(); short[] samp = provider.getCurrentSample(); int samplen = provider.getCurrentSampleLength(); GL11.glColor4f(1f, 1f, 1f, 1f); // GL11.glPolygonMode( GL11.GL_FRONT_AND_BACK, GL11.GL_LINE ); float a1 = 0f, a2 = 0f, a3 = 0f, a4 = 0f, a5 = 0f, a6 = 0f, a7 = 0f, a8 = 0f, a9 = 0f; for (int ie = 0; ie < LIGHT_POINTS; ie++) { //GL11.glColor4f(((float)ie)/LIGHT_POINTS,((float)ie)/LIGHT_POINTS,((float)ie)/LIGHT_POINTS,1f); // this.skip = false; itra++; itra %= samplen; raw = samp[itra]; rraw = samp[samplen - (itra + 1)]; // itra ++; // itra %= samplen; // raw = samp[itra]; // rraw = samp[samplen-(itra+1)]; // itra ++; // itra %= samplen; // raw += samp[itra]; // rraw += samp[samplen-(itra+1)]; // raw/=2; // rraw/=2; // phys_x[ie] /= 2f; phys_y[ie] /= 2f; distx = -loc_x[ie]; disty = -loc_y[ie]; phys_x[ie] += distx + raw / 64f; phys_y[ie] += disty + rraw / 64f; // phys_x[ie] += distx + raw/128f; // phys_y[ie] += disty + rraw/128f; loc_x[ie] += phys_x[ie] / 16f; loc_y[ie] += phys_y[ie] / 16f; vdist = Math.abs(distx) + Math.abs(disty); vdist /= 4f; R[ie] /= 1.08; G[ie] /= 1.08; B[ie] /= 1.08; R[ie] += ((Math.abs(loc_y[ie] % 2f) + Math.abs(loc_x[ie] % 2f)) * vdist) / 1024f; G[ie] += ((loc_x[ie] % 2f + Math.abs(loc_y[ie] % 2f)) * vdist) / 512f; B[ie] += ((Math.abs(loc_x[ie] % 2f) + loc_y[ie] % 2f) * vdist) / 512f; LIGHT_X = loc_x[ie] * 2 + 1280 / 2; LIGHT_Y = loc_y[ie] * 2 + 720 / 2; GL11.glBegin(GL11.GL_TRIANGLE_STRIP); a1 = (R[ie] + G[ie] + B[ie]) / 3f; a2 = (lR[ie] + lG[ie] + lB[ie]) / 3f; a3 = (lR2[ie] + lG2[ie] + lB2[ie]) / 3f; a4 = (lR3[ie] + lG3[ie] + lB3[ie]) / 3f; a5 = (lR4[ie] + lG4[ie] + lB4[ie]) / 3f; a6 = (lR5[ie] + lG5[ie] + lB5[ie]) / 3f; a7 = (lR6[ie] + lG6[ie] + lB6[ie]) / 3f; GL11.glColor4f(lR6[ie], lG6[ie], lB6[ie], a7); GL11.glVertex2f(lastx6[ie], lasty6[ie]); GL11.glColor4f(lR5[ie], lG5[ie], lB5[ie], a6); GL11.glVertex2f(lastx5[ie], lasty5[ie]); GL11.glColor4f(lR4[ie], lG4[ie], lB4[ie], a5); GL11.glVertex2f(lastx4[ie], lasty4[ie]); GL11.glColor4f(lR3[ie], lG3[ie], lB3[ie], a4); GL11.glVertex2f(lastx3[ie], lasty3[ie]); GL11.glColor4f(lR2[ie], lG2[ie], lB2[ie], a3); GL11.glVertex2f(lastx2[ie], lasty2[ie]); GL11.glColor4f(lR[ie], lG[ie], lB[ie], a2); GL11.glVertex2f(lastx[ie], lasty[ie]); GL11.glColor4f(R[ie] * 2, G[ie] * 2, B[ie] * 2, a1); GL11.glVertex2f(LIGHT_X, LIGHT_Y); lastx9[ie] = lastx8[ie]; lasty9[ie] = lasty8[ie]; lastx8[ie] = lastx7[ie]; lasty8[ie] = lasty7[ie]; lastx7[ie] = lastx6[ie]; lasty7[ie] = lasty6[ie]; lastx6[ie] = lastx5[ie]; lasty6[ie] = lasty5[ie]; lastx5[ie] = lastx4[ie]; lasty5[ie] = lasty4[ie]; lastx4[ie] = lastx3[ie]; lasty4[ie] = lasty3[ie]; lastx3[ie] = lastx2[ie]; lasty3[ie] = lasty2[ie]; lastx2[ie] = lastx[ie]; lasty2[ie] = lasty[ie]; // lastx[ie] = LIGHT_X; // lasty[ie] = LIGHT_Y; lastx[ie] = LIGHT_X; lasty[ie] = LIGHT_Y; lR9[ie] = lR8[ie]; lG9[ie] = lG8[ie]; lB9[ie] = lB8[ie]; lR8[ie] = lR7[ie]; lG8[ie] = lG7[ie]; lB8[ie] = lB7[ie]; lR7[ie] = lR6[ie]; lG7[ie] = lG6[ie]; lB7[ie] = lB6[ie]; lR6[ie] = lR5[ie] / 1.2f; lG6[ie] = lG5[ie] / 1.2f; lB6[ie] = lB5[ie] / 1.2f; lR5[ie] = lR4[ie] / 1.2f; lG5[ie] = lG4[ie] / 1.2f; lB5[ie] = lB4[ie] / 1.2f; lR4[ie] = lR3[ie] / 1.2f; lG4[ie] = lG3[ie] / 1.2f; lB4[ie] = lB3[ie] / 1.2f; lR3[ie] = lR2[ie] / 1.2f; lG3[ie] = lG2[ie] / 1.2f; lB3[ie] = lB2[ie] / 1.2f; lR2[ie] = lR[ie] / 1.2f; lG2[ie] = lG[ie] / 1.2f; lB2[ie] = lB[ie] / 1.2f; lR[ie] = R[ie] * 2; lG[ie] = G[ie] * 2; lB[ie] = B[ie] * 2; GL11.glEnd(); } GL11.glDisable(GL11.GL_BLEND); //Enable blending. for (int ie = 0; ie < LIGHT_POINTS; ie++) { // LIGHT_X = loc_x[ie]*4+1280/2; // LIGHT_Y = loc_y[ie]*4+720/2; LIGHT_X = loc_x[ie] * 2 + 1280 / 2; LIGHT_Y = loc_y[ie] * 2 + 720 / 2; GL11.glColorMask(true, true, true, true); GL20.glUseProgram(this.shaderProgram); GL20.glUniform2f(GL20.glGetUniformLocation(this.shaderProgram, (CharSequence) "location"), LIGHT_X, 720.0F - LIGHT_Y); GL20.glUniform3f(GL20.glGetUniformLocation(this.shaderProgram, (CharSequence) "colour"), R[ie] / 5, G[ie] / 5, B[ie] / 5); GL11.glEnable(3042); GL11.glBlendFunc(1, 1); GL11.glBegin(7); GL11.glVertex2f(0.0F, 0.0F); GL11.glVertex2f(0.0F, 720.0F); GL11.glVertex2f(1280.0F, 720.0F); GL11.glVertex2f(1280.0F, 0.0F); GL11.glEnd(); GL11.glDisable(3042); GL20.glUseProgram(0); // GL11.glColor3f(lR9[ie], lG9[ie], lB9[ie]); // GL11.glVertex2f(lastx9[ie], lasty9[ie]); // GL11.glColor3f(lR8[ie], lG8[ie], lB8[ie]); // GL11.glVertex2f(lastx8[ie], lasty8[ie]); // GL11.glColor3f(lR7[ie], lG7[ie], lB7[ie]); // GL11.glVertex2f(lastx7[ie], lasty7[ie]); } // }
From source file:glvis.renderers.HighIntensityOrbit.java
@Override public void render() { Display.sync(120);//from www .j a v a 2s .c om if (initial) { GL11.glClear(16384); initial = false; } int LIGHT_POINTS = 288; // 1152 // LIGHT_POINTS = 2; // int LIGHT_POINTS = 1152; // 1152 float LIGHT_POINT_SEPARATION = 4.42f; float LIGHT_Y = 256f; float LIGHT_X = 0f; short raw = 0; float fraw = 0; float calc = 0; float distx = 0; float disty = 0; boolean swch = false; int hak = 0; int mx, my; short rraw = 0; float vdist = 0f; boolean chswch = false; GL11.glEnable(GL11.GL_BLEND); //Enable blending. GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); if (initial) { initial = false; GL11.glColor4f(0f, 0f, 0f, 1f); } else GL11.glColor4f(0f, 0f, 0f, 0.06f); GL11.glBegin(GL11.GL_QUADS); GL11.glVertex2f(0, 0); GL11.glVertex2f(1280, 0); GL11.glVertex2f(1280, 720); GL11.glVertex2f(0, 720); GL11.glEnd(); short[] samp = provider.getCurrentSample(); int samplen = provider.getCurrentSampleLength(); GL11.glColor4f(1f, 1f, 1f, 1f); // GL11.glPolygonMode( GL11.GL_FRONT_AND_BACK, GL11.GL_LINE ); float a1 = 0f, a2 = 0f, a3 = 0f, a4 = 0f, a5 = 0f, a6 = 0f, a7 = 0f, a8 = 0f, a9 = 0f; for (int ie = 0; ie < LIGHT_POINTS; ie++) { //GL11.glColor4f(((float)ie)/LIGHT_POINTS,((float)ie)/LIGHT_POINTS,((float)ie)/LIGHT_POINTS,1f); // this.skip = false; itra++; itra %= samplen; raw = samp[itra]; rraw = samp[samplen - (itra + 1)]; mx = 1280 + raw / 32; my = 720 + rraw / 32; // itra ++; // itra %= samplen; // raw = samp[itra]; // rraw = samp[samplen-(itra+1)]; // itra ++; // itra %= samplen; // raw += samp[itra]; // rraw += samp[samplen-(itra+1)]; // raw/=2; // rraw/=2; // phys_x[ie] /= 1.5f - rand[itra] / 2; phys_y[ie] /= 1.5f - rand[samplen - itra] / 2; distx = (mx / 2 - 1280 / 2) - loc_x[ie]; disty = (my / 2 - 720 / 2) - loc_y[ie]; // phys_x[ie]/=distx/6f;phys_y[ie]/=disty/6f; // if(Math.abs(distx) < 1)distx *= 100; // if(Math.abs(disty) < 1)disty *= 100; phys_x[ie] += distx;//+ raw/96f; phys_y[ie] += disty;//+ rraw/96f; // phys_x[ie] += distx + raw/128f; // phys_y[ie] += disty + rraw/128f; loc_x[ie] += phys_x[ie] / 16f; loc_y[ie] += phys_y[ie] / 16f; vdist = Math.abs(distx) + Math.abs(disty); vdist /= 4f; R[ie] /= 1.08; G[ie] /= 1.08; B[ie] /= 1.08; R[ie] += ((Math.abs(loc_y[ie] % 2f) + Math.abs(loc_x[ie] % 2f)) * vdist) / 4096f; G[ie] += ((loc_x[ie] % 2f + Math.abs(loc_y[ie] % 2f)) * vdist) / 2048f; B[ie] += ((Math.abs(loc_x[ie] % 2f) + loc_y[ie] % 2f) * vdist) / 2048f; LIGHT_X = loc_x[ie] * 2 + 1280 / 2; LIGHT_Y = loc_y[ie] * 2 + 720 / 2; GL11.glBegin(GL11.GL_TRIANGLE_STRIP); a1 = (R[ie] + G[ie] + B[ie]) / 3f; a2 = (lR[ie] + lG[ie] + lB[ie]) / 3f; a3 = (lR2[ie] + lG2[ie] + lB2[ie]) / 3f; a4 = (lR3[ie] + lG3[ie] + lB3[ie]) / 3f; a5 = (lR4[ie] + lG4[ie] + lB4[ie]) / 3f; a6 = (lR5[ie] + lG5[ie] + lB5[ie]) / 3f; a7 = (lR6[ie] + lG6[ie] + lB6[ie]) / 3f; GL11.glColor4f(lR6[ie], lG6[ie], lB6[ie], a7); GL11.glVertex2f(lastx6[ie], lasty6[ie]); GL11.glColor4f(lR5[ie], lG5[ie], lB5[ie], a6); GL11.glVertex2f(lastx5[ie], lasty5[ie]); GL11.glColor4f(lR4[ie], lG4[ie], lB4[ie], a5); GL11.glVertex2f(lastx4[ie], lasty4[ie]); GL11.glColor4f(lR3[ie], lG3[ie], lB3[ie], a4); GL11.glVertex2f(lastx3[ie], lasty3[ie]); GL11.glColor4f(lR2[ie], lG2[ie], lB2[ie], a3); GL11.glVertex2f(lastx2[ie], lasty2[ie]); GL11.glColor4f(lR[ie], lG[ie], lB[ie], a2); GL11.glVertex2f(lastx[ie], lasty[ie]); GL11.glColor4f(R[ie] * 2, G[ie] * 2, B[ie] * 2, a1); GL11.glVertex2f(LIGHT_X, LIGHT_Y); lastx9[ie] = lastx8[ie]; lasty9[ie] = lasty8[ie]; lastx8[ie] = lastx7[ie]; lasty8[ie] = lasty7[ie]; lastx7[ie] = lastx6[ie]; lasty7[ie] = lasty6[ie]; lastx6[ie] = lastx5[ie]; lasty6[ie] = lasty5[ie]; lastx5[ie] = lastx4[ie]; lasty5[ie] = lasty4[ie]; lastx4[ie] = lastx3[ie]; lasty4[ie] = lasty3[ie]; lastx3[ie] = lastx2[ie]; lasty3[ie] = lasty2[ie]; lastx2[ie] = lastx[ie]; lasty2[ie] = lasty[ie]; // lastx[ie] = LIGHT_X; // lasty[ie] = LIGHT_Y; lastx[ie] = LIGHT_X; lasty[ie] = LIGHT_Y; lR9[ie] = lR8[ie]; lG9[ie] = lG8[ie]; lB9[ie] = lB8[ie]; lR8[ie] = lR7[ie]; lG8[ie] = lG7[ie]; lB8[ie] = lB7[ie]; lR7[ie] = lR6[ie]; lG7[ie] = lG6[ie]; lB7[ie] = lB6[ie]; lR6[ie] = lR5[ie] / 1.2f; lG6[ie] = lG5[ie] / 1.2f; lB6[ie] = lB5[ie] / 1.2f; lR5[ie] = lR4[ie] / 1.2f; lG5[ie] = lG4[ie] / 1.2f; lB5[ie] = lB4[ie] / 1.2f; lR4[ie] = lR3[ie] / 1.2f; lG4[ie] = lG3[ie] / 1.2f; lB4[ie] = lB3[ie] / 1.2f; lR3[ie] = lR2[ie] / 1.2f; lG3[ie] = lG2[ie] / 1.2f; lB3[ie] = lB2[ie] / 1.2f; lR2[ie] = lR[ie] / 1.2f; lG2[ie] = lG[ie] / 1.2f; lB2[ie] = lB[ie] / 1.2f; lR[ie] = R[ie] * 2; lG[ie] = G[ie] * 2; lB[ie] = B[ie] * 2; GL11.glEnd(); } GL11.glDisable(GL11.GL_BLEND); //Enable blending. for (int ie = 0; ie < LIGHT_POINTS; ie++) { // LIGHT_X = loc_x[ie]*4+1280/2; // LIGHT_Y = loc_y[ie]*4+720/2; LIGHT_X = loc_x[ie] * 2 + 1280 / 2; LIGHT_Y = loc_y[ie] * 2 + 720 / 2; GL11.glColorMask(true, true, true, true); GL20.glUseProgram(this.shaderProgram); GL20.glUniform2f(GL20.glGetUniformLocation(this.shaderProgram, (CharSequence) "location"), LIGHT_X, 720.0F - LIGHT_Y); GL20.glUniform3f(GL20.glGetUniformLocation(this.shaderProgram, (CharSequence) "colour"), R[ie] / 4, G[ie] / 4, B[ie] / 4); GL11.glEnable(3042); GL11.glBlendFunc(1, 1); GL11.glBegin(7); GL11.glVertex2f(0.0F, 0.0F); GL11.glVertex2f(0.0F, 720.0F); GL11.glVertex2f(1280.0F, 720.0F); GL11.glVertex2f(1280.0F, 0.0F); GL11.glEnd(); GL11.glDisable(3042); GL20.glUseProgram(0); // GL11.glColor3f(lR9[ie], lG9[ie], lB9[ie]); // GL11.glVertex2f(lastx9[ie], lasty9[ie]); // GL11.glColor3f(lR8[ie], lG8[ie], lB8[ie]); // GL11.glVertex2f(lastx8[ie], lasty8[ie]); // GL11.glColor3f(lR7[ie], lG7[ie], lB7[ie]); // GL11.glVertex2f(lastx7[ie], lasty7[ie]); } // }
From source file:glvis.renderers.HighIntensityOrbitMouse.java
@Override public void render() { Display.sync(120);/*from ww w .j a va2 s. c om*/ if (initial) { GL11.glClear(16384); initial = false; } int LIGHT_POINTS = 288; // 1152 // LIGHT_POINTS = 2; // int LIGHT_POINTS = 1152; // 1152 float LIGHT_POINT_SEPARATION = 4.42f; float LIGHT_Y = 256f; float LIGHT_X = 0f; short raw = 0; float fraw = 0; float calc = 0; float distx = 0; float disty = 0; boolean swch = false; int hak = 0; int mxo = MouseInfo.getPointerInfo().getLocation().x + 320; int myo = MouseInfo.getPointerInfo().getLocation().y + 180; int mx, my; short rraw = 0; float vdist = 0f; boolean chswch = false; GL11.glEnable(GL11.GL_BLEND); //Enable blending. GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); if (initial) { initial = false; GL11.glColor4f(0f, 0f, 0f, 1f); } else GL11.glColor4f(0f, 0f, 0f, 0.06f); GL11.glBegin(GL11.GL_QUADS); GL11.glVertex2f(0, 0); GL11.glVertex2f(1280, 0); GL11.glVertex2f(1280, 720); GL11.glVertex2f(0, 720); GL11.glEnd(); short[] samp = provider.getCurrentSample(); int samplen = provider.getCurrentSampleLength(); GL11.glColor4f(1f, 1f, 1f, 1f); // GL11.glPolygonMode( GL11.GL_FRONT_AND_BACK, GL11.GL_LINE ); float a1 = 0f, a2 = 0f, a3 = 0f, a4 = 0f, a5 = 0f, a6 = 0f, a7 = 0f, a8 = 0f, a9 = 0f; for (int ie = 0; ie < LIGHT_POINTS; ie++) { //GL11.glColor4f(((float)ie)/LIGHT_POINTS,((float)ie)/LIGHT_POINTS,((float)ie)/LIGHT_POINTS,1f); // this.skip = false; itra++; itra %= samplen; raw = samp[itra]; rraw = samp[samplen - (itra + 1)]; mx = mxo + raw / 32; my = myo + rraw / 32; // itra ++; // itra %= samplen; // raw = samp[itra]; // rraw = samp[samplen-(itra+1)]; // itra ++; // itra %= samplen; // raw += samp[itra]; // rraw += samp[samplen-(itra+1)]; // raw/=2; // rraw/=2; // phys_x[ie] /= 1.5f - rand[itra] / 2; phys_y[ie] /= 1.5f - rand[samplen - itra] / 2; distx = (mx / 2 - 1280 / 2) - loc_x[ie]; disty = (my / 2 - 720 / 2) - loc_y[ie]; // phys_x[ie]/=distx/6f;phys_y[ie]/=disty/6f; // if(Math.abs(distx) < 1)distx *= 100; // if(Math.abs(disty) < 1)disty *= 100; phys_x[ie] += distx;//+ raw/96f; phys_y[ie] += disty;//+ rraw/96f; // phys_x[ie] += distx + raw/128f; // phys_y[ie] += disty + rraw/128f; loc_x[ie] += phys_x[ie] / 16f; loc_y[ie] += phys_y[ie] / 16f; vdist = Math.abs(distx) + Math.abs(disty); vdist /= 4f; R[ie] /= 1.08; G[ie] /= 1.08; B[ie] /= 1.08; R[ie] += ((Math.abs(loc_y[ie] % 2f) + Math.abs(loc_x[ie] % 2f)) * vdist) / 4096f; G[ie] += ((loc_x[ie] % 2f + Math.abs(loc_y[ie] % 2f)) * vdist) / 2048f; B[ie] += ((Math.abs(loc_x[ie] % 2f) + loc_y[ie] % 2f) * vdist) / 2048f; LIGHT_X = loc_x[ie] * 2 + 1280 / 2; LIGHT_Y = loc_y[ie] * 2 + 720 / 2; GL11.glBegin(GL11.GL_TRIANGLE_STRIP); a1 = (R[ie] + G[ie] + B[ie]) / 3f; a2 = (lR[ie] + lG[ie] + lB[ie]) / 3f; a3 = (lR2[ie] + lG2[ie] + lB2[ie]) / 3f; a4 = (lR3[ie] + lG3[ie] + lB3[ie]) / 3f; a5 = (lR4[ie] + lG4[ie] + lB4[ie]) / 3f; a6 = (lR5[ie] + lG5[ie] + lB5[ie]) / 3f; a7 = (lR6[ie] + lG6[ie] + lB6[ie]) / 3f; GL11.glColor4f(lR6[ie], lG6[ie], lB6[ie], a7); GL11.glVertex2f(lastx6[ie], lasty6[ie]); GL11.glColor4f(lR5[ie], lG5[ie], lB5[ie], a6); GL11.glVertex2f(lastx5[ie], lasty5[ie]); GL11.glColor4f(lR4[ie], lG4[ie], lB4[ie], a5); GL11.glVertex2f(lastx4[ie], lasty4[ie]); GL11.glColor4f(lR3[ie], lG3[ie], lB3[ie], a4); GL11.glVertex2f(lastx3[ie], lasty3[ie]); GL11.glColor4f(lR2[ie], lG2[ie], lB2[ie], a3); GL11.glVertex2f(lastx2[ie], lasty2[ie]); GL11.glColor4f(lR[ie], lG[ie], lB[ie], a2); GL11.glVertex2f(lastx[ie], lasty[ie]); GL11.glColor4f(R[ie] * 2, G[ie] * 2, B[ie] * 2, a1); GL11.glVertex2f(LIGHT_X, LIGHT_Y); lastx9[ie] = lastx8[ie]; lasty9[ie] = lasty8[ie]; lastx8[ie] = lastx7[ie]; lasty8[ie] = lasty7[ie]; lastx7[ie] = lastx6[ie]; lasty7[ie] = lasty6[ie]; lastx6[ie] = lastx5[ie]; lasty6[ie] = lasty5[ie]; lastx5[ie] = lastx4[ie]; lasty5[ie] = lasty4[ie]; lastx4[ie] = lastx3[ie]; lasty4[ie] = lasty3[ie]; lastx3[ie] = lastx2[ie]; lasty3[ie] = lasty2[ie]; lastx2[ie] = lastx[ie]; lasty2[ie] = lasty[ie]; // lastx[ie] = LIGHT_X; // lasty[ie] = LIGHT_Y; lastx[ie] = LIGHT_X; lasty[ie] = LIGHT_Y; lR9[ie] = lR8[ie]; lG9[ie] = lG8[ie]; lB9[ie] = lB8[ie]; lR8[ie] = lR7[ie]; lG8[ie] = lG7[ie]; lB8[ie] = lB7[ie]; lR7[ie] = lR6[ie]; lG7[ie] = lG6[ie]; lB7[ie] = lB6[ie]; lR6[ie] = lR5[ie] / 1.2f; lG6[ie] = lG5[ie] / 1.2f; lB6[ie] = lB5[ie] / 1.2f; lR5[ie] = lR4[ie] / 1.2f; lG5[ie] = lG4[ie] / 1.2f; lB5[ie] = lB4[ie] / 1.2f; lR4[ie] = lR3[ie] / 1.2f; lG4[ie] = lG3[ie] / 1.2f; lB4[ie] = lB3[ie] / 1.2f; lR3[ie] = lR2[ie] / 1.2f; lG3[ie] = lG2[ie] / 1.2f; lB3[ie] = lB2[ie] / 1.2f; lR2[ie] = lR[ie] / 1.2f; lG2[ie] = lG[ie] / 1.2f; lB2[ie] = lB[ie] / 1.2f; lR[ie] = R[ie] * 2; lG[ie] = G[ie] * 2; lB[ie] = B[ie] * 2; GL11.glEnd(); } GL11.glDisable(GL11.GL_BLEND); //Enable blending. for (int ie = 0; ie < LIGHT_POINTS; ie++) { // LIGHT_X = loc_x[ie]*4+1280/2; // LIGHT_Y = loc_y[ie]*4+720/2; LIGHT_X = loc_x[ie] * 2 + 1280 / 2; LIGHT_Y = loc_y[ie] * 2 + 720 / 2; GL11.glColorMask(true, true, true, true); GL20.glUseProgram(this.shaderProgram); GL20.glUniform2f(GL20.glGetUniformLocation(this.shaderProgram, (CharSequence) "location"), LIGHT_X, 720.0F - LIGHT_Y); GL20.glUniform3f(GL20.glGetUniformLocation(this.shaderProgram, (CharSequence) "colour"), R[ie] / 4, G[ie] / 4, B[ie] / 4); GL11.glEnable(3042); GL11.glBlendFunc(1, 1); GL11.glBegin(7); GL11.glVertex2f(0.0F, 0.0F); GL11.glVertex2f(0.0F, 720.0F); GL11.glVertex2f(1280.0F, 720.0F); GL11.glVertex2f(1280.0F, 0.0F); GL11.glEnd(); GL11.glDisable(3042); GL20.glUseProgram(0); // GL11.glColor3f(lR9[ie], lG9[ie], lB9[ie]); // GL11.glVertex2f(lastx9[ie], lasty9[ie]); // GL11.glColor3f(lR8[ie], lG8[ie], lB8[ie]); // GL11.glVertex2f(lastx8[ie], lasty8[ie]); // GL11.glColor3f(lR7[ie], lG7[ie], lB7[ie]); // GL11.glVertex2f(lastx7[ie], lasty7[ie]); } // }
From source file:glvis.renderers.HighIntensityOrbitMouseNoSoundTestGlitch.java
@Override public void render() { Display.sync(120);//from ww w .j ava 2 s . com if (initial) { GL11.glClear(16384); initial = false; } int LIGHT_POINTS = 288; // 1152 // LIGHT_POINTS = 2; // int LIGHT_POINTS = 1152; // 1152 float LIGHT_POINT_SEPARATION = 4.42f; float LIGHT_Y = 256f; float LIGHT_X = 0f; short raw = 0; float fraw = 0; float calc = 0; float distx = 0; float disty = 0; boolean swch = false; int hak = 0; int mx = MouseInfo.getPointerInfo().getLocation().x + 320; int my = MouseInfo.getPointerInfo().getLocation().y + 180; short rraw = 0; float vdist = 0f; boolean chswch = false; GL11.glEnable(GL11.GL_BLEND); //Enable blending. GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); if (initial) { initial = false; GL11.glColor4f(0f, 0f, 0f, 1f); } else GL11.glColor4f(0f, 0f, 0f, 0.2f); GL11.glBegin(GL11.GL_QUADS); GL11.glVertex2f(0, 0); GL11.glVertex2f(1280, 0); GL11.glVertex2f(1280, 720); GL11.glVertex2f(0, 720); GL11.glEnd(); GL11.glColor4f(1f, 1f, 1f, 1f); // GL11.glPolygonMode( GL11.GL_FRONT_AND_BACK, GL11.GL_LINE ); float a1 = 0f, a2 = 0f, a3 = 0f, a4 = 0f, a5 = 0f, a6 = 0f, a7 = 0f, a8 = 0f, a9 = 0f; for (int ie = 0; ie < LIGHT_POINTS; ie++) { //GL11.glColor4f(((float)ie)/LIGHT_POINTS,((float)ie)/LIGHT_POINTS,((float)ie)/LIGHT_POINTS,1f); // this.skip = false; // itra ++; // itra %= Player.samplen; // raw = Player.samp[itra]; // rraw = Player.samp[Player.samplen-(itra+1)]; // itra ++; // itra %= Player.samplen; // raw += Player.samp[itra]; // rraw += Player.samp[Player.samplen-(itra+1)]; // raw/=2; // rraw/=2; // distx = (mx / 2 - 1280 / 2) - loc_x[ie]; disty = (my / 2 - 720 / 2) - loc_y[ie]; phys_x[ie] += distx;//+ raw/96f; phys_y[ie] += disty;//+ rraw/96f; // phys_x[ie] += distx + raw/128f; // phys_y[ie] += disty + rraw/128f; loc_x[ie] += phys_x[ie] / 16f; loc_y[ie] += phys_y[ie] / 16f; vdist = Math.abs(distx) + Math.abs(disty); vdist /= 4f; R[ie] /= 1.08; G[ie] /= 1.08; B[ie] /= 1.08; R[ie] += ((Math.abs(loc_y[ie] % 2f) + Math.abs(loc_x[ie] % 2f)) * vdist) / 1024f; G[ie] += ((loc_x[ie] % 2f + Math.abs(loc_y[ie] % 2f)) * vdist) / 512f; B[ie] += ((Math.abs(loc_x[ie] % 2f) + loc_y[ie] % 2f) * vdist) / 512f; LIGHT_X = loc_x[ie] * 2 + 1280 / 2; LIGHT_Y = loc_y[ie] * 2 + 720 / 2; GL11.glBegin(GL11.GL_TRIANGLE_STRIP); a1 = (R[ie] + G[ie] + B[ie]) / 3f; a2 = (lR[ie] + lG[ie] + lB[ie]) / 3f; a3 = (lR2[ie] + lG2[ie] + lB2[ie]) / 3f; a4 = (lR3[ie] + lG3[ie] + lB3[ie]) / 3f; a5 = (lR4[ie] + lG4[ie] + lB4[ie]) / 3f; a6 = (lR5[ie] + lG5[ie] + lB5[ie]) / 3f; a7 = (lR6[ie] + lG6[ie] + lB6[ie]) / 3f; GL11.glColor4f(lR6[ie], lG6[ie], lB6[ie], a7); GL11.glVertex2f(lastx6[ie], lasty6[ie]); GL11.glColor4f(lR5[ie], lG5[ie], lB5[ie], a6); GL11.glVertex2f(lastx5[ie], lasty5[ie]); GL11.glColor4f(lR4[ie], lG4[ie], lB4[ie], a5); GL11.glVertex2f(lastx4[ie], lasty4[ie]); GL11.glColor4f(lR3[ie], lG3[ie], lB3[ie], a4); GL11.glVertex2f(lastx3[ie], lasty3[ie]); GL11.glColor4f(lR2[ie], lG2[ie], lB2[ie], a3); GL11.glVertex2f(lastx2[ie], lasty2[ie]); GL11.glColor4f(lR[ie], lG[ie], lB[ie], a2); GL11.glVertex2f(lastx[ie], lasty[ie]); GL11.glColor4f(R[ie] * 2, G[ie] * 2, B[ie] * 2, a1); GL11.glVertex2f(LIGHT_X, LIGHT_Y); lastx9[ie] = lastx8[ie]; lasty9[ie] = lasty8[ie]; lastx8[ie] = lastx7[ie]; lasty8[ie] = lasty7[ie]; lastx7[ie] = lastx6[ie]; lasty7[ie] = lasty6[ie]; lastx6[ie] = lastx5[ie]; lasty6[ie] = lasty5[ie]; lastx5[ie] = lastx4[ie]; lasty5[ie] = lasty4[ie]; lastx4[ie] = lastx3[ie]; lasty4[ie] = lasty3[ie]; lastx3[ie] = lastx2[ie]; lasty3[ie] = lasty2[ie]; lastx2[ie] = lastx[ie]; lasty2[ie] = lasty[ie]; // lastx[ie] = LIGHT_X; // lasty[ie] = LIGHT_Y; lastx[ie] = LIGHT_X; lasty[ie] = LIGHT_Y; lR9[ie] = lR8[ie]; lG9[ie] = lG8[ie]; lB9[ie] = lB8[ie]; lR8[ie] = lR7[ie]; lG8[ie] = lG7[ie]; lB8[ie] = lB7[ie]; lR7[ie] = lR6[ie]; lG7[ie] = lG6[ie]; lB7[ie] = lB6[ie]; lR6[ie] = lR5[ie] / 1.2f; lG6[ie] = lG5[ie] / 1.2f; lB6[ie] = lB5[ie] / 1.2f; lR5[ie] = lR4[ie] / 1.2f; lG5[ie] = lG4[ie] / 1.2f; lB5[ie] = lB4[ie] / 1.2f; lR4[ie] = lR3[ie] / 1.2f; lG4[ie] = lG3[ie] / 1.2f; lB4[ie] = lB3[ie] / 1.2f; lR3[ie] = lR2[ie] / 1.2f; lG3[ie] = lG2[ie] / 1.2f; lB3[ie] = lB2[ie] / 1.2f; lR2[ie] = lR[ie] / 1.2f; lG2[ie] = lG[ie] / 1.2f; lB2[ie] = lB[ie] / 1.2f; lR[ie] = R[ie] * 2; lG[ie] = G[ie] * 2; lB[ie] = B[ie] * 2; GL11.glEnd(); } GL11.glDisable(GL11.GL_BLEND); //Enable blending. for (int ie = 0; ie < LIGHT_POINTS; ie++) { // LIGHT_X = loc_x[ie]*4+1280/2; // LIGHT_Y = loc_y[ie]*4+720/2; LIGHT_X = loc_x[ie] * 2 + 1280 / 2; LIGHT_Y = loc_y[ie] * 2 + 720 / 2; GL11.glColorMask(true, true, true, true); GL20.glUseProgram(this.shaderProgram); GL20.glUniform2f(GL20.glGetUniformLocation(this.shaderProgram, (CharSequence) "location"), LIGHT_X, 720.0F - LIGHT_Y); GL20.glUniform3f(GL20.glGetUniformLocation(this.shaderProgram, (CharSequence) "colour"), R[ie] / 9, G[ie] / 9, B[ie] / 9); GL11.glEnable(3042); GL11.glBlendFunc(1, 1); GL11.glBegin(7); GL11.glVertex2f(0.0F, 0.0F); GL11.glVertex2f(0.0F, 720.0F); GL11.glVertex2f(1280.0F, 720.0F); GL11.glVertex2f(1280.0F, 0.0F); GL11.glEnd(); GL11.glDisable(3042); GL20.glUseProgram(0); // GL11.glColor3f(lR9[ie], lG9[ie], lB9[ie]); // GL11.glVertex2f(lastx9[ie], lasty9[ie]); // GL11.glColor3f(lR8[ie], lG8[ie], lB8[ie]); // GL11.glVertex2f(lastx8[ie], lasty8[ie]); // GL11.glColor3f(lR7[ie], lG7[ie], lB7[ie]); // GL11.glVertex2f(lastx7[ie], lasty7[ie]); } // }
From source file:glvis.renderers.HighIntensityTriangleStrip.java
@Override public void render() { GL11.glClear(16384);/* ww w . ja v a 2 s . c o m*/ int LIGHT_POINTS = 288; // 1152 // int LIGHT_POINTS = 1152; // 1152 float LIGHT_POINT_SEPARATION = 4.42f; float LIGHT_Y = 256f; float LIGHT_X = 0f; short raw = 0; float fraw = 0; float calc = 0; float distx = 0; float disty = 0; boolean swch = false; int hak = 0; short rraw = 0; float vdist = 0f; boolean chswch = false; // GL11.glEnable(GL11.GL_BLEND); //Enable blending. // GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); GL11.glColor4f(1f, 1f, 1f, 1f); // GL11.glPolygonMode( GL11.GL_FRONT_AND_BACK, GL11.GL_LINE ); short[] samp = provider.getCurrentSample(); int samplen = provider.getCurrentSampleLength(); for (int ie = 0; ie < LIGHT_POINTS; ie++) { GL11.glBegin(GL11.GL_TRIANGLE_STRIP); //GL11.glColor4f(((float)ie)/LIGHT_POINTS,((float)ie)/LIGHT_POINTS,((float)ie)/LIGHT_POINTS,1f); itra++; itra %= samplen; raw = samp[itra]; rraw = samp[samplen - (itra + 1)]; phys_x[ie] /= 2f; phys_y[ie] /= 2f; distx = -loc_x[ie]; disty = -loc_y[ie]; // phys_x[ie] += distx + raw/64f; // phys_y[ie] += disty + rraw/64f; phys_x[ie] += distx + raw / 64f; phys_y[ie] += disty + rraw / 64f; loc_x[ie] += phys_x[ie] / 16f; loc_y[ie] += phys_y[ie] / 16f; LIGHT_X = loc_x[ie] * 4 + 1280 / 2; LIGHT_Y = loc_y[ie] * 4 + 720 / 2; vdist = Math.abs(distx) + Math.abs(disty); vdist /= 4f; R[ie] /= 1.08; G[ie] /= 1.08; B[ie] /= 1.08; R[ie] += ((Math.abs(loc_y[ie] % 2f) + Math.abs(loc_x[ie] % 2f)) * vdist) / 1024f; G[ie] += ((loc_x[ie] % 2f + Math.abs(loc_y[ie] % 2f)) * vdist) / 512f; B[ie] += ((Math.abs(loc_x[ie] % 2f) + loc_y[ie] % 2f) * vdist) / 512f; LIGHT_X = loc_x[ie] * 4 + 1280 / 2; LIGHT_Y = loc_y[ie] * 4 + 720 / 2; // GL11.glColor3f(lR9[ie], lG9[ie], lB9[ie]); // GL11.glVertex2f(lastx9[ie], lasty9[ie]); // GL11.glColor3f(lR8[ie], lG8[ie], lB8[ie]); // GL11.glVertex2f(lastx8[ie], lasty8[ie]); // GL11.glColor3f(lR7[ie], lG7[ie], lB7[ie]); // GL11.glVertex2f(lastx7[ie], lasty7[ie]); GL11.glColor3f(lR6[ie], lG6[ie], lB6[ie]); GL11.glVertex2f(lastx6[ie], lasty6[ie]); GL11.glColor3f(lR5[ie], lG5[ie], lB5[ie]); GL11.glVertex2f(lastx5[ie], lasty5[ie]); GL11.glColor3f(lR4[ie], lG4[ie], lB4[ie]); GL11.glVertex2f(lastx4[ie], lasty4[ie]); GL11.glColor3f(lR3[ie], lG3[ie], lB3[ie]); GL11.glVertex2f(lastx3[ie], lasty3[ie]); GL11.glColor3f(lR2[ie], lG2[ie], lB2[ie]); GL11.glVertex2f(lastx2[ie], lasty2[ie]); GL11.glColor3f(lR[ie], lG[ie], lB[ie]); GL11.glVertex2f(lastx[ie], lasty[ie]); GL11.glColor3f(R[ie] * 2, G[ie] * 2, B[ie] * 2); GL11.glVertex2f(LIGHT_X, LIGHT_Y); lastx9[ie] = lastx8[ie]; lasty9[ie] = lasty8[ie]; lastx8[ie] = lastx7[ie]; lasty8[ie] = lasty7[ie]; lastx7[ie] = lastx6[ie]; lasty7[ie] = lasty6[ie]; lastx6[ie] = lastx5[ie]; lasty6[ie] = lasty5[ie]; lastx5[ie] = lastx4[ie]; lasty5[ie] = lasty4[ie]; lastx4[ie] = lastx3[ie]; lasty4[ie] = lasty3[ie]; lastx3[ie] = lastx2[ie]; lasty3[ie] = lasty2[ie]; lastx2[ie] = lastx[ie]; lasty2[ie] = lasty[ie]; // lastx[ie] = LIGHT_X; // lasty[ie] = LIGHT_Y; lastx[ie] = LIGHT_X; lasty[ie] = LIGHT_Y; lR9[ie] = lR8[ie]; lG9[ie] = lG8[ie]; lB9[ie] = lB8[ie]; lR8[ie] = lR7[ie]; lG8[ie] = lG7[ie]; lB8[ie] = lB7[ie]; lR7[ie] = lR6[ie]; lG7[ie] = lG6[ie]; lB7[ie] = lB6[ie]; lR6[ie] = lR5[ie] / 1.2f; lG6[ie] = lG5[ie] / 1.2f; lB6[ie] = lB5[ie] / 1.2f; lR5[ie] = lR4[ie] / 1.2f; lG5[ie] = lG4[ie] / 1.2f; lB5[ie] = lB4[ie] / 1.2f; lR4[ie] = lR3[ie] / 1.2f; lG4[ie] = lG3[ie] / 1.2f; lB4[ie] = lB3[ie] / 1.2f; lR3[ie] = lR2[ie] / 1.2f; lG3[ie] = lG2[ie] / 1.2f; lB3[ie] = lB2[ie] / 1.2f; lR2[ie] = lR[ie] / 1.2f; lG2[ie] = lG[ie] / 1.2f; lB2[ie] = lB[ie] / 1.2f; lR[ie] = R[ie] * 2; lG[ie] = G[ie] * 2; lB[ie] = B[ie] * 2; GL11.glEnd(); } for (int ie = 0; ie < LIGHT_POINTS; ie++) { LIGHT_X = loc_x[ie] * 4 + 1280 / 2; LIGHT_Y = loc_y[ie] * 4 + 720 / 2; GL11.glColorMask(true, true, true, true); GL20.glUseProgram(this.shaderProgram); GL20.glUniform2f(GL20.glGetUniformLocation(this.shaderProgram, (CharSequence) "location"), LIGHT_X, 720.0F - LIGHT_Y); GL20.glUniform3f(GL20.glGetUniformLocation(this.shaderProgram, (CharSequence) "colour"), R[ie], G[ie], B[ie]); GL11.glEnable(3042); GL11.glBlendFunc(1, 1); GL11.glBegin(7); GL11.glVertex2f(0.0F, 0.0F); GL11.glVertex2f(0.0F, 720.0F); GL11.glVertex2f(1280.0F, 720.0F); GL11.glVertex2f(1280.0F, 0.0F); GL11.glEnd(); GL11.glDisable(3042); GL20.glUseProgram(0); } }
From source file:glvis.renderers.HighIntensityTriangleStripEarly.java
@Override public void render() { GL11.glClear(16384);// ww w . ja v a 2 s.c o m int LIGHT_POINTS = 288; // 1152 float LIGHT_POINT_SEPARATION = 4.42f; float LIGHT_Y = 256f; float LIGHT_X = 0f; short raw = 0; float fraw = 0; float calc = 0; float distx = 0; float disty = 0; boolean swch = false; int hak = 0; short rraw = 0; float vdist = 0f; boolean chswch = false; // GL11.glEnable(GL11.GL_BLEND); //Enable blending. // GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); GL11.glColor4f(1f, 1f, 1f, 1f); // GL11.glPolygonMode( GL11.GL_FRONT_AND_BACK, GL11.GL_LINE ); short[] samp = provider.getCurrentSample(); int samplen = provider.getCurrentSampleLength(); for (int ie = 0; ie < LIGHT_POINTS; ie++) { GL11.glBegin(GL11.GL_TRIANGLE_STRIP); //GL11.glColor4f(((float)ie)/LIGHT_POINTS,((float)ie)/LIGHT_POINTS,((float)ie)/LIGHT_POINTS,1f); itra++; itra %= samplen; raw = samp[itra]; rraw = samp[samplen - (itra + 1)]; phys_x[ie] /= 2f; phys_y[ie] /= 2f; distx = -loc_x[ie]; disty = -loc_y[ie]; phys_x[ie] += distx + raw / 64f; phys_y[ie] += disty + rraw / 64f; loc_x[ie] += phys_x[ie] / 16f; loc_y[ie] += phys_y[ie] / 16f; LIGHT_X = loc_x[ie] * 4 + 1280 / 2; LIGHT_Y = loc_y[ie] * 4 + 720 / 2; vdist = Math.abs(distx) + Math.abs(disty); vdist /= 4f; R[ie] /= 1.08; G[ie] /= 1.08; B[ie] /= 1.08; R[ie] += ((Math.abs(loc_y[ie] % 2f) + Math.abs(loc_x[ie] % 2f)) * vdist) / 1024f; G[ie] += ((loc_x[ie] % 2f + Math.abs(loc_y[ie] % 2f)) * vdist) / 512f; B[ie] += ((Math.abs(loc_x[ie] % 2f) + loc_y[ie] % 2f) * vdist) / 512f; LIGHT_X = loc_x[ie] * 4 + 1280 / 2; LIGHT_Y = loc_y[ie] * 4 + 720 / 2; GL11.glColor3f(lR6[ie], lG6[ie], lB6[ie]); GL11.glVertex2f(lastx6[ie], lasty6[ie]); GL11.glColor3f(lR5[ie], lG5[ie], lB5[ie]); GL11.glVertex2f(lastx5[ie], lasty5[ie]); GL11.glColor3f(lR4[ie], lG4[ie], lB4[ie]); GL11.glVertex2f(lastx4[ie], lasty4[ie]); GL11.glColor3f(lR3[ie], lG3[ie], lB3[ie]); GL11.glVertex2f(lastx3[ie], lasty3[ie]); GL11.glColor3f(lR2[ie], lG2[ie], lB2[ie]); GL11.glVertex2f(lastx2[ie], lasty2[ie]); GL11.glColor3f(lR[ie], lG[ie], lB[ie]); GL11.glVertex2f(lastx[ie], lasty[ie]); GL11.glColor3f(R[ie] * 2, G[ie] * 2, B[ie] * 2); GL11.glVertex2f(LIGHT_X, LIGHT_Y); lastx6[ie] = lastx5[ie]; lasty6[ie] = lasty5[ie]; lastx5[ie] = lastx4[ie]; lasty5[ie] = lasty4[ie]; lastx4[ie] = lastx3[ie]; lasty4[ie] = lasty3[ie]; lastx3[ie] = lastx2[ie]; lasty3[ie] = lasty2[ie]; lastx2[ie] = lastx[ie]; lasty2[ie] = lasty[ie]; lastx[ie] = LIGHT_X; lasty[ie] = LIGHT_Y; lR6[ie] = lR5[ie]; lG6[ie] = lG5[ie]; lB6[ie] = lB5[ie]; lR5[ie] = lR4[ie]; lG5[ie] = lG4[ie]; lB5[ie] = lB4[ie]; lR4[ie] = lR3[ie]; lG4[ie] = lG3[ie]; lB4[ie] = lB3[ie]; lR3[ie] = lR2[ie]; lG3[ie] = lG2[ie]; lB3[ie] = lB2[ie]; lR2[ie] = lR[ie]; lG2[ie] = lG[ie]; lB2[ie] = lB[ie]; lR[ie] = R[ie] * 2; lG[ie] = G[ie] * 2; lB[ie] = B[ie] * 2; GL11.glEnd(); } for (int ie = 0; ie < LIGHT_POINTS; ie++) { LIGHT_X = loc_x[ie] * 4 + 1280 / 2; LIGHT_Y = loc_y[ie] * 4 + 720 / 2; GL11.glColorMask(true, true, true, true); GL20.glUseProgram(this.shaderProgram); GL20.glUniform2f(GL20.glGetUniformLocation(this.shaderProgram, (CharSequence) "location"), LIGHT_X, 720.0F - LIGHT_Y); GL20.glUniform3f(GL20.glGetUniformLocation(this.shaderProgram, (CharSequence) "colour"), R[ie], G[ie], B[ie]); GL11.glEnable(3042); GL11.glBlendFunc(1, 1); GL11.glBegin(7); GL11.glVertex2f(0.0F, 0.0F); GL11.glVertex2f(0.0F, 720.0F); GL11.glVertex2f(1280.0F, 720.0F); GL11.glVertex2f(1280.0F, 0.0F); GL11.glEnd(); GL11.glDisable(3042); GL20.glUseProgram(0); } }