亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? renderer.java

?? NeHe用java與OpenGL結合教程源碼
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
package demos.nehe.lesson27;

import javax.media.opengl.*;
import javax.media.opengl.glu.GLUquadric;
import javax.media.opengl.glu.GLU;

import java.io.IOException;

class Renderer implements GLEventListener {
    private GLUquadric quadric;
    private Object3D object3D;

    private float[] LightPos = {0.0f, 5.0f, -4.0f, 1.0f};   // Light Position
    private boolean LightUp, LightDown, LightLeft, LightRight, LightForward, LightBackward;
    private float[] LightAmb = {0.2f, 0.2f, 0.2f, 1.0f};   // Ambient Light Values
    private float[] LightDif = {0.6f, 0.6f, 0.6f, 1.0f};   // Diffuse Light Values
    private float[] LightSpc = {-0.2f, -0.2f, -0.2f, 1.0f}; // Specular Light Values

    private float[] MatAmb = {0.4f, 0.4f, 0.4f, 1.0f};    // Material - Ambient Values
    private float[] MatDif = {0.2f, 0.6f, 0.9f, 1.0f};    // Material - Diffuse Values
    private float[] MatSpc = {0.0f, 0.0f, 0.0f, 1.0f};    // Material - Specular Values
    private float[] MatShn = {0.0f};                      // Material - Shininess

    private float[] SpherePos = {-4.0f, -5.0f, -6.0f};
    private boolean SphereUp, SphereDown, SphereLeft, SphereRight, SphereForward, SphereBackward;
    private float[] ObjPos = {-2.0f, -2.0f, -5.0f};         // Object Position
    private boolean ObjUp, ObjDown, ObjLeft, ObjRight, ObjForward, ObjBackward;

    private float xspeed;                                    // X Rotation Speed
    private boolean increaseXspeed;
    private boolean decreaseXspeed;

    private float yspeed;                                    // Y Rotation Speed
    private boolean increaseYspeed;
    private boolean decreaseYspeed;

    private float xrot;                                      // X Rotation
    private float yrot;                                      // Y Rotation

    private GLU glu = new GLU();

    private boolean initGLObjects() throws IOException {                               // Initialize Objects
        object3D = Object3D.readObject("demos/data/models/object2.txt");
        return object3D != null;                                      // If Failed Return False
    }

    public void translateSphereUp(boolean state) {
        SphereUp = state;
    }

    public void translateSphereDown(boolean state) {
        SphereDown = state;
    }

    public void translateSphereLeft(boolean state) {
        SphereLeft = state;
    }

    public void translateSphereRight(boolean state) {
        SphereRight = state;
    }

    public void translateSphereForward(boolean state) {
        SphereForward = state;
    }

    public void translateSphereBackward(boolean state) {
        SphereBackward = state;
    }

    public void translateLightUp(boolean state) {
        LightUp = state;
    }

    public void translateLightDown(boolean state) {
        LightDown = state;
    }

    public void translateLightLeft(boolean state) {
        LightLeft = state;
    }

    public void translateLightRight(boolean state) {
        LightRight = state;
    }

    public void translateLightForward(boolean state) {
        LightForward = state;
    }

    public void translateLightBackward(boolean state) {
        LightBackward = state;
    }

    public void translateObjectUp(boolean state) {
        ObjUp = state;
    }

    public void translateObjectDown(boolean state) {
        ObjDown = state;
    }

    public void translateObjectLeft(boolean state) {
        ObjLeft = state;
    }

    public void translateObjectRight(boolean state) {
        ObjRight = state;
    }

    public void translateObjectForward(boolean state) {
        ObjForward = state;
    }

    public void translateObjectBackward(boolean state) {
        ObjBackward = state;
    }

    public void increaseXspeed(boolean increase) {
        increaseXspeed = increase;
    }

    public void decreaseXspeed(boolean decrease) {
        decreaseXspeed = decrease;
    }

    public void increaseYspeed(boolean increase) {
        increaseYspeed = increase;
    }

    public void decreaseYspeed(boolean decrease) {
        decreaseYspeed = decrease;
    }

    public void init(GLAutoDrawable drawable) {
        GL gl = drawable.getGL();

        try {
            initGLObjects();
        } catch (IOException e) {
            System.out.println("Couldn't load model");
            throw new RuntimeException(e);
        }

        gl.glShadeModel(GL.GL_SMOOTH);                              // Enable Smooth Shading
        gl.glClearColor(0.0f, 0.0f, 0.0f, 0.5f);                    // Black Background
        gl.glClearDepth(1.0f);                                      // Depth Buffer Setup
        gl.glClearStencil(0);                                       // Stencil Buffer Setup
        gl.glEnable(GL.GL_DEPTH_TEST);                              // Enables Depth Testing
        gl.glDepthFunc(GL.GL_LEQUAL);                               // The Type Of Depth Testing To Do
        gl.glHint(GL.GL_PERSPECTIVE_CORRECTION_HINT, GL.GL_NICEST);  // Really Nice Perspective Calculations

        gl.glLightfv(GL.GL_LIGHT1, GL.GL_POSITION, LightPos, 0);        // Set Light1 Position
        gl.glLightfv(GL.GL_LIGHT1, GL.GL_AMBIENT, LightAmb, 0);        // Set Light1 Ambience
        gl.glLightfv(GL.GL_LIGHT1, GL.GL_DIFFUSE, LightDif, 0);        // Set Light1 Diffuse
        gl.glLightfv(GL.GL_LIGHT1, GL.GL_SPECULAR, LightSpc, 0);        // Set Light1 Specular
        gl.glEnable(GL.GL_LIGHT1);                                  // Enable Light1
        gl.glEnable(GL.GL_LIGHTING);                                // Enable Lighting

        gl.glMaterialfv(GL.GL_FRONT, GL.GL_AMBIENT, MatAmb, 0);         // Set Material Ambience
        gl.glMaterialfv(GL.GL_FRONT, GL.GL_DIFFUSE, MatDif, 0);         // Set Material Diffuse
        gl.glMaterialfv(GL.GL_FRONT, GL.GL_SPECULAR, MatSpc, 0);        // Set Material Specular
        gl.glMaterialfv(GL.GL_FRONT, GL.GL_SHININESS, MatShn, 0);       // Set Material Shininess

        gl.glCullFace(GL.GL_BACK);                                  // Set Culling Face To Back Face
        gl.glEnable(GL.GL_CULL_FACE);                               // Enable Culling
        gl.glClearColor(0.1f, 1.0f, 0.5f, 1.0f);                    // Set Clear Color (Greenish Color)

        quadric = glu.gluNewQuadric();                              // Initialize Quadratic
        glu.gluQuadricNormals(quadric, GL.GL_SMOOTH);                      // Enable Smooth Normal Generation
        glu.gluQuadricTexture(quadric, false);                             // Disable Auto Texture Coords
    }

    private void drawRoom(GL gl) {                        // Draw The Room (Box)
        gl.glBegin(GL.GL_QUADS);                // Begin Drawing Quads
        // Floor
        gl.glNormal3f(0.0f, 1.0f, 0.0f);      // Normal Pointing Up
        gl.glVertex3f(-10.0f, -10.0f, -20.0f);  // Back Left
        gl.glVertex3f(-10.0f, -10.0f, 20.0f);  // Front Left
        gl.glVertex3f(10.0f, -10.0f, 20.0f);  // Front Right
        gl.glVertex3f(10.0f, -10.0f, -20.0f);  // Back Right

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产一区二区91| 精品免费日韩av| 色综合咪咪久久| 成人福利视频在线| 国产成人亚洲综合a∨婷婷图片| 麻豆成人免费电影| 狠狠色狠狠色综合系列| 狠狠色丁香婷婷综合| 久久www免费人成看片高清| 国产一区美女在线| 国产一区二区成人久久免费影院 | 成人欧美一区二区三区黑人麻豆| 亚洲国产电影在线观看| 国产精品不卡在线观看| 亚洲乱码中文字幕| 亚洲第一电影网| 久久成人羞羞网站| 国产成人自拍网| eeuss国产一区二区三区| 一本色道a无线码一区v| 欧美日韩一区二区三区高清| 欧美日韩一二三| 欧美一区二区不卡视频| 亚洲精品一区二区三区香蕉| 国产亚洲一区二区三区在线观看| 国产色一区二区| 国产精品无遮挡| 亚洲激情成人在线| 日本一道高清亚洲日美韩| 九九精品视频在线看| 成人黄页在线观看| 欧美在线视频不卡| 欧美一区二区观看视频| 国产欧美日韩激情| 一区二区不卡在线视频 午夜欧美不卡在| 亚洲电影一区二区三区| 美女脱光内衣内裤视频久久影院| 国产精品一卡二卡在线观看| 91丨九色丨蝌蚪富婆spa| 91精品国产综合久久久久久久| 久久蜜桃一区二区| 亚洲免费看黄网站| 美女性感视频久久| 99久久精品国产毛片| 欧美丰满嫩嫩电影| 国产调教视频一区| 午夜成人在线视频| 成人在线综合网站| 7777精品伊人久久久大香线蕉的| 国产区在线观看成人精品| 亚洲国产综合人成综合网站| 久久精品国产一区二区三 | 91黄色免费观看| 欧美一区二区精品久久911| 亚洲国产精品成人综合| 爽好多水快深点欧美视频| 国产成人高清视频| 欧美一个色资源| 中文字幕综合网| 激情深爱一区二区| 欧美三级中文字| 国产精品素人视频| 免费成人结看片| 欧美性猛片aaaaaaa做受| 久久伊人蜜桃av一区二区| 亚洲成人av资源| 99久久国产综合精品女不卡| 欧美成人综合网站| 天堂影院一区二区| 99天天综合性| 久久久久久久久久电影| 视频一区在线视频| 欧美在线观看视频一区二区 | 日韩av电影免费观看高清完整版 | 国产性天天综合网| 免费观看久久久4p| 欧美人妖巨大在线| 伊人开心综合网| 不卡av电影在线播放| 亚洲精品在线免费观看视频| 日本亚洲视频在线| 欧美日韩久久一区二区| 亚洲另类一区二区| 91丨porny丨最新| 国产精品久久三| 国产福利精品导航| 亚洲精品在线电影| 极品销魂美女一区二区三区| 777午夜精品视频在线播放| 亚洲综合丁香婷婷六月香| 91丨国产丨九色丨pron| 成人欧美一区二区三区1314| 国产成人免费在线视频| 国产亚洲欧美色| 麻豆国产精品一区二区三区| 69久久99精品久久久久婷婷 | 奇米四色…亚洲| 日本道精品一区二区三区| 国产精品视频一区二区三区不卡| 久久精品国内一区二区三区| 日韩一区二区免费视频| 亚洲成人1区2区| 在线视频你懂得一区| 日韩美女精品在线| 成人午夜激情片| 色综合天天在线| 亚洲另类色综合网站| 91色.com| 亚洲美女偷拍久久| 91麻豆国产福利精品| 国产精品久久久久久久久免费樱桃| 奇米亚洲午夜久久精品| 精品国产乱码久久久久久图片 | 亚洲日本中文字幕区| 91免费版在线看| 亚洲免费资源在线播放| 91女厕偷拍女厕偷拍高清| 日韩美女视频一区| 91亚洲精品久久久蜜桃网站 | 日韩极品在线观看| 欧洲另类一二三四区| 亚洲一区二区三区不卡国产欧美| 色伊人久久综合中文字幕| 日韩一区欧美小说| 欧美蜜桃一区二区三区| 视频一区在线视频| 欧美不卡视频一区| 麻豆91在线观看| 国产亚洲欧美在线| 91影院在线免费观看| 亚洲永久免费av| 911国产精品| 久久精品国产99国产精品| 久久综合成人精品亚洲另类欧美| 国产麻豆精品theporn| 国产精品免费视频观看| 色婷婷亚洲精品| 婷婷成人综合网| 欧美成人午夜电影| 99在线视频精品| 亚洲综合色视频| 欧美电视剧免费观看| 国产精品77777竹菊影视小说| 国产精品色婷婷| 日本国产一区二区| 久久国产三级精品| 国产女人18毛片水真多成人如厕| 成人动漫中文字幕| 午夜精品久久久久久久99水蜜桃| 欧美一激情一区二区三区| www.欧美日韩| 亚洲一区二区av在线| 欧美一区二区国产| 懂色av一区二区在线播放| 樱桃国产成人精品视频| 欧美挠脚心视频网站| 成人国产免费视频| 午夜欧美2019年伦理| 久久综合网色—综合色88| 色婷婷久久99综合精品jk白丝| 三级精品在线观看| 国产精品久久福利| 制服丝袜亚洲精品中文字幕| 国产米奇在线777精品观看| 亚洲麻豆国产自偷在线| 日韩精品一区二区三区在线播放| 成人精品电影在线观看| 三级不卡在线观看| 国产精品久久看| 51精品秘密在线观看| 成人午夜视频在线| 午夜激情久久久| 国产精品乱码妇女bbbb| 91精品国模一区二区三区| 成人黄色在线视频| 免费国产亚洲视频| 亚洲欧美日韩综合aⅴ视频| 精品国产一区二区精华| 在线观看一区二区精品视频| 国产一区二区精品久久91| 亚洲国产一区二区a毛片| 国产精品蜜臀在线观看| 日韩欧美亚洲国产精品字幕久久久| jlzzjlzz亚洲女人18| 青青草原综合久久大伊人精品 | 亚洲精品欧美激情| 久久精品一二三| 欧美高清你懂得| 91社区在线播放| 美女视频网站久久| 三级一区在线视频先锋| 亚洲美女免费在线| 国产精品国产精品国产专区不片| 日韩三级在线免费观看| 欧美日韩国产欧美日美国产精品| 不卡视频一二三| 国产jizzjizz一区二区| 国内成人精品2018免费看| 喷白浆一区二区| 免费在线观看日韩欧美|