首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >OpenGL- android中的glClipPlanef问题

OpenGL- android中的glClipPlanef问题
EN

Stack Overflow用户
提问于 2011-12-07 12:30:49
回答 1查看 406关注 0票数 2

我正试着在3个平面XY,YZ和ZX中裁剪一个3D模型。当我使用GL11.GL_CLIP_PLANE0时,它可以工作,但GL11.GL_CLIP_PLANE1和GL11.GL_CLIP_PLANE2不能工作。下面粘贴了我正在使用的java代码。它在Android版本2.2上工作得很好,但在2.2以上的版本上就不能工作了。如果有人知道原因,请发帖。

代码语言:javascript
复制
enableSectionPlane(GL10 gl)
{
    GL11 gl11 = (GL11) gl;

    if( is_XY_plane)
    {

        float eqn1[] =  { 0.0f, 0.0f, 1.0f,0.0f };
        gl.glEnable( GL11.GL_CLIP_PLANE0);
        gl11.glClipPlanef( GL11.GL_CLIP_PLANE0, eqn1,0 );

    }
    else
    {
        gl.glDisable( GL11.GL_CLIP_PLANE0 );
    }


    if( is_YZ_plane)
    {
        float eqn2[] = { 1.0f, 0.0f, 0.0f,0.0f };           
        gl.glEnable( GL11.GL_CLIP_PLANE1);
        gl11.glClipPlanef( GL11.GL_CLIP_PLANE1, eqn2,0);
    }
    else
    {
        gl.glDisable( GL11.GL_CLIP_PLANE1 );
    }

    if(is_ZX_plane)
    {
        float eqn3[] = { 0.0f, 1.0f, 0.0f,0.0f };
        gl.glEnable( GL11.GL_CLIP_PLANE2 );
        gl11.glClipPlanef( GL11.GL_CLIP_PLANE2, eqn3,0 );
    }
    else
    {
        gl.glDisable( GL11.GL_CLIP_PLANE2 );
    }


}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-12-07 14:49:00

使用glGet()GL_MAX_CLIP_PLANES复查GL实现是否支持多个剪裁平面。glGet() docs表示,它应该至少支持6个。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8410409

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档