小编Jim*_*Jim的帖子

android上的glCreateShader和glCreateProgram失败

我在android上创建着色器程序时遇到了一个非常困难的问题.当我调用glCreateShader或glCreateProgram时,每个都返回0.

我已经涵盖了有关故障排除的所有基础:

  • 我检查确保我有一个ogl上下文(我这样做,我通过清除各种颜色的帧缓冲区测试了这个,这是有效的).

  • 我尝试了glGetError,但没有返回任何内容(GL_NO_ERROR)

我不是一个opengl或android专家,所以我不知道其他任何可能造成这种情况的事情.

我一直在nexus 7平板电脑上运行我的应用程序,我使用的是OpenGL ES 2.0,我的目标是最新版本的Android(版本17).

最后,我还要显示我的代码:

这是我设置应用程序的样板代码:

public class Platform implements ILinkable<Activity> {
    class GameLoop extends GLSurfaceView implements GLSurfaceView.Renderer {
        class Graphics2D implements IGraphics2D {
            int width  = 0;
            int height = 0;

            public void setWidth (int width ) { this.width = width; }
            public void setHeight(int height) { this.height = height; }

            public int getWidth () { return width;  }
            public int getHeight() { return height; }
        }

        class Time implements ITime {
            float frametime …
Run Code Online (Sandbox Code Playgroud)

java shader android opengl-es-2.0 nexus-7

12
推荐指数
1
解决办法
8585
查看次数

如何生成可变参数包?

给定不相关的输入是否可以生成非类型参数包?我的意思是,我想转此:

template <typename D, size_t... Offsets> struct VecGeneric;
template <typename N, size_t C> struct VecGenericData;

template <typename N, size_t D> struct TVecN;
template <typename N> struct TVecN<N,2> : public VecGeneric<VecGenericData<N,2>,0,1>           { };
template <typename N> struct TVecN<N,3> : public VecGeneric<VecGenericData<N,3>,0,1,2>         { };
template <typename N> struct TVecN<N,4> : public VecGeneric<VecGenericData<N,4>,0,1,2,3>       { };
template <typename N> struct TVecN<N,5> : public VecGeneric<VecGenericData<N,5>,0,1,2,3,4>     { };
template <typename N> struct TVecN<N,6> : public VecGeneric<VecGenericData<N,6>,0,1,2,3,4,5>   { };
template <typename N> struct TVecN<N,7> : public VecGeneric<VecGenericData<N,7>,0,1,2,3,4,5,6> …
Run Code Online (Sandbox Code Playgroud)

c++ c++11

2
推荐指数
1
解决办法
141
查看次数

标签 统计

android ×1

c++ ×1

c++11 ×1

java ×1

nexus-7 ×1

opengl-es-2.0 ×1

shader ×1