Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 671996
Collapse All | Expand All

(-)orig/Oy_Fl_Shader_Box.h (-22 / +24 lines)
Lines 8-13 Link Here
8
#else
8
#else
9
#  include <GL/gl.h>
9
#  include <GL/gl.h>
10
#  include <GL/glu.h>
10
#  include <GL/glu.h>
11
#  include <GL/glew.h>
11
#endif
12
#endif
12
13
13
#include <FL/Fl_Gl_Window.H>
14
#include <FL/Fl_Gl_Window.H>
Lines 15-20 Link Here
15
#include <FL/gl.h>
16
#include <FL/gl.h>
16
17
17
#include "Oy_Fl_Image_Widget.h"
18
#include "Oy_Fl_Image_Widget.h"
19
#include "oyranos_devices.h"
18
20
19
#ifndef _DBG_FORMAT_
21
#ifndef _DBG_FORMAT_
20
#define _DBG_FORMAT_ "%s:%d %s() "
22
#define _DBG_FORMAT_ "%s:%d %s() "
Lines 57-78 Link Here
57
    GLfloat clut_scale;
59
    GLfloat clut_scale;
58
    GLfloat clut_offset;
60
    GLfloat clut_offset;
59
61
60
    GLhandleARB cmm_prog;
62
    GLuint cmm_prog;
61
    GLhandleARB cmm_shader;
63
    GLuint cmm_shader;
62
64
63
    static const char * cmm_shader_source;
65
    static const char * cmm_shader_source;
64
66
65
  void print_log (GLhandleARB obj)
67
  void print_log (GLuint obj)
66
  {
68
  {
67
    int len = 0;
69
    int len = 0;
68
    int nwritten = 0;
70
    int nwritten = 0;
69
    char *log;
71
    char *log;
70
72
71
    glGetObjectParameterivARB (obj, GL_OBJECT_INFO_LOG_LENGTH_ARB, &len);
73
    glGetShaderiv (obj, GL_INFO_LOG_LENGTH, &len);
72
74
73
    if (len > 0) {
75
    if (len > 0) {
74
	log = (char*) malloc (len);
76
	log = (char*) malloc (len);
75
	glGetInfoLogARB (obj, len, &nwritten, log);
77
	glGetShaderInfoLog (obj, len, &nwritten, log);
76
	fprintf (stderr, "%s\n", log);
78
	fprintf (stderr, "%s\n", log);
77
	free (log);
79
	free (log);
78
    }
80
    }
Lines 99-134 Link Here
99
101
100
    /* compile shader program */
102
    /* compile shader program */
101
103
102
    cmm_shader = glCreateShaderObjectARB (GL_FRAGMENT_SHADER_ARB);
104
    cmm_shader = glCreateShader (GL_FRAGMENT_SHADER);
103
    glShaderSourceARB (cmm_shader, 1, &cmm_shader_source, NULL);
105
    glShaderSource (cmm_shader, 1, &cmm_shader_source, NULL);
104
    glCompileShaderARB (cmm_shader);
106
    glCompileShader (cmm_shader);
105
    print_log (cmm_shader);
107
    print_log (cmm_shader);
106
108
107
    cmm_prog = glCreateProgramObjectARB ();
109
    cmm_prog = glCreateProgram ();
108
    glAttachObjectARB (cmm_prog, cmm_shader);
110
    glAttachShader (cmm_prog, cmm_shader);
109
    glLinkProgramARB (cmm_prog);
111
    glLinkProgram (cmm_prog);
110
    print_log (cmm_prog);
112
    print_log (cmm_prog);
111
113
112
    glUseProgramObjectARB (cmm_prog);
114
    glUseProgram (cmm_prog);
113
115
114
    loc = glGetUniformLocation ((GLintptr)cmm_prog, "scale");
116
    loc = glGetUniformLocation ((GLintptr)cmm_prog, "scale");
115
    glUniform1fARB (loc, clut_scale);
117
    glUniform1f (loc, clut_scale);
116
118
117
    loc = glGetUniformLocation ((GLintptr)cmm_prog, "offset");
119
    loc = glGetUniformLocation ((GLintptr)cmm_prog, "offset");
118
    glUniform1fARB (loc, clut_offset);
120
    glUniform1f (loc, clut_offset);
119
121
120
    loc = glGetUniformLocation ((GLintptr)cmm_prog, "image");
122
    loc = glGetUniformLocation ((GLintptr)cmm_prog, "image");
121
    glUniform1iARB (loc, 0);
123
    glUniform1i (loc, 0);
122
124
123
    /* texture 1 = clut */
125
    /* texture 1 = clut */
124
    glActiveTextureARB (GL_TEXTURE0_ARB + 1);
126
    glActiveTexture (GL_TEXTURE0 + 1);
125
    glBindTexture (GL_TEXTURE_3D, clut_texture);
127
    glBindTexture (GL_TEXTURE_3D, clut_texture);
126
128
127
    loc = glGetUniformLocation ((GLintptr)cmm_prog, "clut");
129
    loc = glGetUniformLocation ((GLintptr)cmm_prog, "clut");
128
    glUniform1iARB (loc, 1);
130
    glUniform1i (loc, 1);
129
131
130
    /* back to texture 0 (image) */
132
    /* back to texture 0 (image) */
131
    glActiveTextureARB (GL_TEXTURE0_ARB);
133
    glActiveTexture (GL_TEXTURE0);
132
    glBindTexture (GL_TEXTURE_2D, img_texture);
134
    glBindTexture (GL_TEXTURE_2D, img_texture);
133
  }
135
  }
134
136
Lines 302-308 Link Here
302
  {
304
  {
303
    glGenTextures (1, &clut_texture);
305
    glGenTextures (1, &clut_texture);
304
    /* texture 1 = clut */
306
    /* texture 1 = clut */
305
    glActiveTextureARB (GL_TEXTURE0_ARB + 1);
307
    glActiveTexture (GL_TEXTURE0 + 1);
306
    glBindTexture (GL_TEXTURE_3D, clut_texture);
308
    glBindTexture (GL_TEXTURE_3D, clut_texture);
307
309
308
    glTexParameteri (GL_TEXTURE_3D, GL_TEXTURE_WRAP_S, GL_CLAMP);
310
    glTexParameteri (GL_TEXTURE_3D, GL_TEXTURE_WRAP_S, GL_CLAMP);
Lines 320-326 Link Here
320
		  0, GL_RGB, GL_UNSIGNED_SHORT, clut);
322
		  0, GL_RGB, GL_UNSIGNED_SHORT, clut);
321
323
322
    /* back to texture 0 (image) */
324
    /* back to texture 0 (image) */
323
    glActiveTextureARB (GL_TEXTURE0_ARB);
325
    glActiveTexture (GL_TEXTURE0);
324
  }
326
  }
325
327
326
  int need_redraw;
328
  int need_redraw;
Lines 358-365 Link Here
358
360
359
      setupShaderTexture();
361
      setupShaderTexture();
360
362
361
      if(GLEE_ARB_fragment_shader && GLEE_ARB_shading_language_100)
363
/*   if(GLEE_ARB_fragment_shader && GLEE_ARB_shading_language_100) */
362
	init_shaders ();
364
/*	init_shaders (); */
363
    }
365
    }
364
366
365
    oyImage_s * draw_image = 0;
367
    oyImage_s * draw_image = 0;
(-)orig/image_display.cpp (-1 / +1 lines)
Lines 36-42 Link Here
36
#define DEBUG 1
36
#define DEBUG 1
37
37
38
extern "C" {
38
extern "C" {
39
#include "GLee.h"
39
#include <GL/glew.h>
40
}
40
}
41
41
42
#include "../../oyranos_logo.h"
42
#include "../../oyranos_logo.h"

Return to bug 671996