小编use*_*713的帖子

OpenGL着色器错误1282

我正在尝试将光照添加到我当前的简单立方体场景中.在设置我的制服之后,我从glGetError()获得了这段代码的1282错误

GLuint ambientHandle = glGetUniformLocation(program->getHandle(), "ambientProduct");
glUniform4fv( ambientHandle, 1, ambientProduct );
GLuint diffuseHandle = glGetUniformLocation(program->getHandle(), "diffuseProduct");
glUniform4fv( diffuseHandle, 1, diffuseProduct );
GLuint specularHandle = glGetUniformLocation(program->getHandle(), "specularProduct");
glUniform4fv( specularHandle, 1, specularProduct );
GLuint lightPosHandle = glGetUniformLocation(program->getHandle(), "lightPosition");
glUniform4fv( lightPosHandle, 1, light.position );
GLuint shinyHandle = glGetUniformLocation(program->getHandle(), "shininess");
glUniform1f( shinyHandle, materialShininess );
Run Code Online (Sandbox Code Playgroud)

这是我的着色器:vertex.glsl

#version 120

attribute vec4 coord3d;
attribute vec3 normal3d;

// output values that will be interpretated per-fragment
varying  vec3 fN;
varying  vec3 fE;
varying  vec3 fL;

uniform vec4 lightPosition;
uniform …
Run Code Online (Sandbox Code Playgroud)

c++ opengl

13
推荐指数
1
解决办法
7万
查看次数

C++继承测验

我最近被问到一个基本的C++问题,我实际上并不知道答案,我从来没有发现答案是什么.这是一个问题:

运行此程序时,可能会导致错误.您将对Base类进行哪些更改来修复它?

#include <iostream>

class Base {
public:
    virtual void ShowMessage () {
        std::cout << "Base class message\n";
    }

    // Something should be added here!
};

class Derived : public Base {
public:
    explicit Derived (const std::string & value)
        : myValue(value)
    {
    }

    virtual void ShowMessage () {
        std::cout << "Derived class message " << myValue << "\n";
    }

private:
    std::string myValue;
};

int main () {
    Base * obj = new Derived("Test message");
    obj->ShowMessage();
    delete obj;
}
Run Code Online (Sandbox Code Playgroud)

它在我的机器上编译并运行得很好.有谁知道他们在找什么?

c++ inheritance

3
推荐指数
1
解决办法
874
查看次数

标签 统计

c++ ×2

inheritance ×1

opengl ×1