Hi,

I am getting errors, such as:

GL ERROR call: glUniform2fvARB(location, 1, values)
GL ERROR on backends/gl/GlslCode.cpp: 488: GL_INVALID_OPERATION
GL ERROR call: glUniform2fvARB(location, 1, values)
GL ERROR on backends/gl/GlslCode.cpp: 488: GL_INVALID_OPERATION
GL ERROR call: glUniform2fvARB(location, 1, values)
GL ERROR on backends/gl/GlslCode.cpp: 488: GL_INVALID_OPERATION
GL ERROR call: glUniform2fvARB(location, 1, values)
GL ERROR on backends/gl/GlslCode.cpp: 488: GL_INVALID_OPERATION
GL ERROR call: glUniform2fvARB(location, 1, values)

when running my program. This program uses RapidMind. The key part is:
/** The rendering routine, a.k.a., glutDisplayFunc() */
void Channel::frameDraw( const uint32_t spin )
{
     // setup OpenGL State
     eq::Channel::frameDraw( spin );

     glife_glsl->update(); // need better method than glife
     glife_glsl->display();
....


The display() routine calls certain OpenGL routines, leading to the error.
 From the docs I find out that I should somehow define a glewGetContext(...)
function since the offending routines are called from a class other
than Channel or Window. How and were do I create this function?
Can you provide me with some hint?

Thanks,

    Gordon#include <rapidmind/platform.hpp>
#include <rapidmind/graphics.hpp>

#include <GL/glut.h>
#include <iostream>
#include <cstdio>

//#define glewGetContext state.glewGetContext;

using namespace std;
namespace rm = rapidmind;
namespace rmg = rapidmind::graphics;
//----------------------------------------------------------------------
class Life
{
public:
   Life(int size);
   void reset();
   void update();
   rm::Array<2, rm::Value1i>& board();

private:
   Life();
   rm::Array<2, rm::Value1i> m_board;
   rapidmind::Program m_update;
};
//----------------------------------------------------------------------
class Life_GLSL
{
private:
     rapidmind::Program vsh, fsh;
     rm::ProgramSetPtr shaders;
     Life& life;
     bool limit_fps;

public:
     Life_GLSL(Life& life_) : life(life_)
     {
         limit_fps = true;
     }
     void init_shaders();
     void display();
     void update();
     void bind() { rmg::bind(*shaders); }

};


#endif


Life.h








----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.


-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.


_______________________________________________
eq-dev mailing list
[email protected]
https://in-zueri.ch/cgi-bin/mailman/listinfo/eq-dev
http://www.equalizergraphics.com

Reply via email to