`
HCQmaker
  • 浏览: 46859 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

(废弃)JOGL入门 第6课

 
阅读更多
声明:   
   本来是想写点东西,记录学习的过程,并希望能帮助同我一样刚刚学习JOGL的朋友们
    可是由于没有明确目的,好心做了坏事,在这里先声明,本来是学习基本的JOGL,在
    学习过程中却把朋友们带入到了JOGL+GL4java中,基本的没学扎实,这是很错误的.

纹理
UV为2D纹理贴图坐标,在使用的时候,
改变贴图坐标的值,会发生各种变化
你可以在网上找到相关的说明
我这里给出个改变纹理值的代码,
其他自己慢慢研究了

在上一课的基础上,我进行一些修改
glTexCoord(0.0f, 1.0f);设置当前纹理坐标U,V
前面添加2个变量
float u=0.0f;
float v=1.0f;
把reader方法修改成下面
public void render(IGLRenderer glRenderer)
{
   final IGL gl = glRenderer.getGL();
   gl.glClear(IGL.GL_COLOR_BUFFER_BIT | IGL.GL_DEPTH_BUFFER_BIT);
   gl.glLoadIdentity();
   gl.glTranslate(0.0f, 0.0f, zOffset); //向屏幕里面移动zOffset个单位
   //选择纹理
   gl.glBindTexture(IGL.GL_TEXTURE_2D, texture[filter].id);
   //绘制1个面
   gl.glBegin(IGL.GL_QUADS);
gl.glTexCoord(u, v); gl.glVertex( -1.0f, -1.0f, -1.0f);   
gl.glTexCoord(u, u); gl.glVertex( 1.0f,-1.0f, -1.0f);   
gl.glTexCoord(v, u); gl.glVertex( 1.0f,1.0f,-1.0f);   
    gl.glEnd();

    u+=0.01f;
    v-=0.01f;
   
    if(u>1)
    {
    u=0;
    }
    if(v<0)
    {
    v=1;
    }
}
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics