質問編集履歴
17
書式の改善
test
CHANGED
File without changes
|
test
CHANGED
@@ -6,4 +6,6 @@
|
|
6
6
|
|
7
7
|
頂点シェーダとフラグメントシェーダについて、
|
8
8
|
アドバイスお願いします。
|
9
|
-
|
9
|
+
自前でソースコードをつくらなければいけない観点から、ソースコードを消してしまいました。
|
10
|
+
|
11
|
+
|
16
書式の改善
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,6 +1,9 @@
|
|
1
1
|
|
2
|
+
点シェーダとフラグメントシェーダを#version 120にしたいです。
|
2
3
|
|
3
|
-
頂点シェーダとフラグメントシェーダを#version 120にしたいです。
|
4
4
|
(visual c++)で最新のバージョンにすればよかったです。
|
5
5
|
また、拡張子をいれればよかったです。
|
6
|
+
|
7
|
+
頂点シェーダとフラグメントシェーダについて、
|
8
|
+
アドバイスお願いします。
|
6
9
|
|
15
書式の改善
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,363 +1,6 @@
|
|
1
|
-
頂点シェーダとフラグメントシェーダを#version 120にしたいです。
|
2
1
|
|
3
2
|
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
追記 参照しているページのシェーダープログラムのリンクまで打ったら、コンパイルエラーなしで
|
8
|
-
|
9
|
-
ソースコードが通ることが分かりました。
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
再追記
|
14
|
-
|
15
|
-
シェーダの" "の部分とがうまくいかないことが分かりました。
|
16
|
-
|
17
|
-
あとシェーダの" "を外部に出す方法について教えてください。
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
再々追記 " "の部分で、
|
22
|
-
|
23
|
-
attribute , varying
|
24
|
-
|
25
|
-
と
|
26
|
-
|
27
|
-
in ,out の関係を直さないといけないと思うけど、私の場合はopenglのバージョンが古いようなので古くしないといけない。
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
**頂点シェーダーのコンパイルに失敗しました。
|
34
|
-
|
35
|
-
フラグメントシェーダのコンパイルに失敗しました。
|
36
|
-
|
37
|
-
シェーダプログラムのリンクに失敗しました。**
|
38
|
-
|
39
|
-
と出ます
|
40
|
-
|
41
|
-
。このページを引用いています。
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
[ここ](http://code-c.hatenablog.com/entry/2014/03/10/213723)
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
```opengl
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
GLenum glewStatus=glewInit();
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
if(glewStatus!=GLEW_OK){
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
std::cerr <<"Error:"<<glewGetErrorString (glewStatus)<<std::endl;
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
}
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
GLuint vertShader;
|
78
|
-
|
79
|
-
GLuint fragShader;
|
80
|
-
|
81
|
-
GLuint gl2Program;
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
GLint compiled, Linked;
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
vertShader=glCreateShader(GL_VERTEX_SHADER);
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
if(0==vertShader){
|
96
|
-
|
97
|
-
std::cerr <<"頂点シェーダー作成エラー"<<std::endl;
|
98
|
-
|
99
|
-
}
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
/*サイトにあったやつ*/
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
/*const GLchar* vertShaderCode =
|
108
|
-
|
109
|
-
"#version 120\n"
|
110
|
-
|
111
|
-
"attribute vec3 VertexPosition;"
|
112
|
-
|
113
|
-
"attribute vec3 VertexColor;"
|
114
|
-
|
115
|
-
"varying vec3 Color;"
|
116
|
-
|
117
|
-
"void main() {"
|
118
|
-
|
119
|
-
"Color = VertexColor;"
|
120
|
-
|
121
|
-
"gl_Position = vec4(VertexPosition, 1.0);"
|
122
|
-
|
123
|
-
"}"; */
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
/*書きかえたやつ*/
|
128
|
-
|
129
|
-
const GLchar* vertShaderCode =
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
"#version 120 \n"
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
"attribute vec4 vertex;"
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
"varying vec2 TexCoords;"
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
"uniform mat4 projection;"
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
"void main() {"
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
"gl_Position=projection*vec4(vertex.xy,0.0,1.0);"
|
154
|
-
|
155
|
-
|
156
|
-
|
157
|
-
"TexCoords=vertex.zw;"
|
158
|
-
|
159
|
-
|
160
|
-
|
161
|
-
"}";
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
glShaderSource(vertShader, 1, &vertShaderCode, NULL);
|
166
|
-
|
167
|
-
|
168
|
-
|
169
|
-
glCompileShader(vertShader);
|
170
|
-
|
171
|
-
|
172
|
-
|
173
|
-
GLint result;
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
glGetShaderiv(vertShader, GL_COMPILE_STATUS, &result);
|
178
|
-
|
179
|
-
|
180
|
-
|
181
|
-
if(GL_FALSE==result){
|
182
|
-
|
183
|
-
std::cerr<<"頂点シェーダーのコンパイルに失敗しました"<<std::endl;
|
184
|
-
|
185
|
-
}
|
186
|
-
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
|
191
|
-
|
192
|
-
|
193
|
-
|
194
|
-
|
195
|
-
fragShader = glCreateShader(GL_FRAGMENT_SHADER);
|
196
|
-
|
197
|
-
if(0==fragShader){
|
198
|
-
|
199
|
-
|
200
|
-
|
201
|
-
std::cerr<<"フラグメントシェーダ作成エラー"<<std::endl;
|
202
|
-
|
203
|
-
|
204
|
-
|
205
|
-
}
|
206
|
-
|
207
|
-
|
208
|
-
|
209
|
-
/* サイトにあったやつ
|
210
|
-
|
211
|
-
const GLchar* fragShaderCode =
|
212
|
-
|
213
|
-
"#version 120\n"
|
214
|
-
|
215
|
-
"varying vec3 Color;"
|
216
|
-
|
217
|
-
"void main() {"
|
218
|
-
|
219
|
-
"gl_FragColor = vec4(Color, 1.0);"
|
220
|
-
|
221
|
-
"}";
|
222
|
-
|
223
|
-
*/
|
224
|
-
|
225
|
-
|
226
|
-
|
227
|
-
/*書きかえたやつ*/
|
228
|
-
|
229
|
-
const GLchar* fragShaderCode =
|
230
|
-
|
231
|
-
"#version 120\n"
|
232
|
-
|
233
|
-
"uniform vec4 color;"
|
234
|
-
|
235
|
-
"uniform sample2D text;"
|
236
|
-
|
237
|
-
"uniform vec3 textColor;"
|
238
|
-
|
239
|
-
"void main(){"
|
240
|
-
|
241
|
-
|
242
|
-
|
243
|
-
"vec4 sampled =vec4(1.0,1.0,1.0,texture(text,TexCoords).r);"
|
244
|
-
|
245
|
-
"color=vec4(textColor,1.0)*sampled;"
|
246
|
-
|
247
|
-
"}";
|
248
|
-
|
249
|
-
glShaderSource(fragShader, 1, &fragShaderCode, NULL);
|
250
|
-
|
251
|
-
|
252
|
-
|
253
|
-
glCompileShader(fragShader);
|
254
|
-
|
255
|
-
|
256
|
-
|
257
|
-
glGetShaderiv(fragShader,GL_COMPILE_STATUS,&result);
|
258
|
-
|
259
|
-
|
260
|
-
|
261
|
-
if(GL_FALSE==result){
|
262
|
-
|
263
|
-
std::cerr<<"フラグメントシェーダのコンパイルに失敗しました"<<std::endl;
|
264
|
-
|
265
|
-
}
|
266
|
-
|
267
|
-
|
268
|
-
|
269
|
-
GLuint programHandle=glCreateProgram();
|
270
|
-
|
271
|
-
|
272
|
-
|
273
|
-
if(0==programHandle){
|
274
|
-
|
275
|
-
std::cerr<<"プロジェクトの作成でエラーがありました"<<std::endl;
|
276
|
-
|
277
|
-
}
|
278
|
-
|
279
|
-
|
280
|
-
|
281
|
-
glAttachShader(programHandle,vertShader);
|
282
|
-
|
283
|
-
glAttachShader(programHandle,fragShader);
|
284
|
-
|
285
|
-
|
286
|
-
|
287
|
-
glLinkProgram(programHandle);
|
288
|
-
|
289
|
-
|
290
|
-
|
291
|
-
GLint status;
|
292
|
-
|
293
|
-
|
294
|
-
|
295
|
-
glGetProgramiv(programHandle,GL_LINK_STATUS,&status);
|
296
|
-
|
297
|
-
|
298
|
-
|
299
|
-
if(GL_FALSE==status)
|
300
|
-
|
301
|
-
{
|
302
|
-
|
303
|
-
std::cerr<<"シェーダプログラムのリンクに失敗しました"<<std::endl;
|
304
|
-
|
305
|
-
}
|
306
|
-
|
307
|
-
|
308
|
-
|
309
|
-
glUseProgram(programHandle);
|
310
|
-
|
311
|
-
|
312
|
-
|
313
|
-
|
314
|
-
|
315
|
-
```
|
316
|
-
|
317
|
-
```(頂点シェーダ)
|
318
|
-
|
319
|
-
目的の頂点シェーダでバージョンを#verion120にしたい
|
320
|
-
|
321
|
-
#version 400
|
322
|
-
|
323
|
-
layout (location=0) in vec4 vertex;
|
324
|
-
|
325
|
-
out vec2 TexCoods;
|
326
|
-
|
327
|
-
uniform mat4 projection;
|
328
|
-
|
329
|
-
void main()
|
330
|
-
|
331
|
-
{gl_Position=projection*vec4(vertex.xy,0.0,1.0);
|
332
|
-
|
333
|
-
TexCoords=vertex.zw;
|
334
|
-
|
335
|
-
}
|
336
|
-
|
337
|
-
```
|
338
|
-
|
339
|
-
``` (フラグメントシェーダ)
|
340
|
-
|
341
|
-
|
342
|
-
|
343
|
-
|
3
|
+
頂点シェーダとフラグメントシェーダを#version 120にしたいです。
|
344
|
-
|
345
|
-
|
346
|
-
|
347
|
-
|
4
|
+
(visual c++)で最新のバージョンにすればよかったです。
|
348
|
-
|
349
|
-
|
5
|
+
また、拡張子をいれればよかったです。
|
350
|
-
|
351
|
-
|
6
|
+
|
352
|
-
|
353
|
-
uniform sample2D text;
|
354
|
-
|
355
|
-
uniform vec3 textColor;
|
356
|
-
|
357
|
-
void main(){
|
358
|
-
|
359
|
-
vec4 sampled=vec4(1.0,1.0,1.0,texture(text,TexCoords).r);
|
360
|
-
|
361
|
-
color =vec4(texColor,1.0)*sampled;
|
362
|
-
|
363
|
-
```
|
14
文の改善
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,3 +1,9 @@
|
|
1
|
+
頂点シェーダとフラグメントシェーダを#version 120にしたいです。
|
2
|
+
|
3
|
+
|
4
|
+
|
5
|
+
|
6
|
+
|
1
7
|
追記 参照しているページのシェーダープログラムのリンクまで打ったら、コンパイルエラーなしで
|
2
8
|
|
3
9
|
ソースコードが通ることが分かりました。
|
@@ -310,7 +316,7 @@
|
|
310
316
|
|
311
317
|
```(頂点シェーダ)
|
312
318
|
|
313
|
-
目的の頂点シェーダでバージョンを
|
319
|
+
目的の頂点シェーダでバージョンを#verion120にしたい
|
314
320
|
|
315
321
|
#version 400
|
316
322
|
|
@@ -334,7 +340,7 @@
|
|
334
340
|
|
335
341
|
|
336
342
|
|
337
|
-
目的のフラグメントシェーダでバージョンを
|
343
|
+
目的のフラグメントシェーダでバージョンを#version120したい
|
338
344
|
|
339
345
|
|
340
346
|
|
13
文の変更
test
CHANGED
File without changes
|
test
CHANGED
@@ -310,7 +310,7 @@
|
|
310
310
|
|
311
311
|
```(頂点シェーダ)
|
312
312
|
|
313
|
-
目的の
|
313
|
+
目的の頂点シェーダでバージョンを古くしたい
|
314
314
|
|
315
315
|
#version 400
|
316
316
|
|
@@ -334,7 +334,7 @@
|
|
334
334
|
|
335
335
|
|
336
336
|
|
337
|
-
目的の
|
337
|
+
目的のフラグメントシェーダでバージョンを古くしたい
|
338
338
|
|
339
339
|
|
340
340
|
|
12
文の改善
test
CHANGED
File without changes
|
test
CHANGED
@@ -300,11 +300,7 @@
|
|
300
300
|
|
301
301
|
|
302
302
|
|
303
|
-
glAttachShader(programHandle,vertShader);
|
304
|
-
|
305
|
-
glAttachShader(programHandle,fragShader);
|
306
|
-
|
307
|
-
gl
|
303
|
+
glUseProgram(programHandle);
|
308
304
|
|
309
305
|
|
310
306
|
|
11
文の変更
test
CHANGED
File without changes
|
test
CHANGED
@@ -38,7 +38,9 @@
|
|
38
38
|
|
39
39
|
[ここ](http://code-c.hatenablog.com/entry/2014/03/10/213723)
|
40
40
|
|
41
|
-
|
41
|
+
|
42
|
+
|
43
|
+
|
42
44
|
|
43
45
|
|
44
46
|
|
10
文の変更
test
CHANGED
File without changes
|
test
CHANGED
@@ -310,9 +310,9 @@
|
|
310
310
|
|
311
311
|
```
|
312
312
|
|
313
|
+
```(頂点シェーダ)
|
314
|
+
|
313
|
-
|
315
|
+
目的のGLSLでバージョンを古くしたい
|
314
|
-
|
315
|
-
(頂点シェーダ)
|
316
316
|
|
317
317
|
#version 400
|
318
318
|
|
@@ -332,9 +332,13 @@
|
|
332
332
|
|
333
333
|
```
|
334
334
|
|
335
|
+
``` (フラグメントシェーダ)
|
336
|
+
|
337
|
+
|
338
|
+
|
335
|
-
|
339
|
+
目的のGLSLでバージョンを古くしたい
|
336
|
-
|
337
|
-
|
340
|
+
|
341
|
+
|
338
342
|
|
339
343
|
#version 400
|
340
344
|
|
9
文の変更
test
CHANGED
File without changes
|
test
CHANGED
@@ -92,6 +92,8 @@
|
|
92
92
|
|
93
93
|
|
94
94
|
|
95
|
+
/*サイトにあったやつ*/
|
96
|
+
|
95
97
|
|
96
98
|
|
97
99
|
/*const GLchar* vertShaderCode =
|
@@ -114,6 +116,8 @@
|
|
114
116
|
|
115
117
|
|
116
118
|
|
119
|
+
/*書きかえたやつ*/
|
120
|
+
|
117
121
|
const GLchar* vertShaderCode =
|
118
122
|
|
119
123
|
|
@@ -194,7 +198,7 @@
|
|
194
198
|
|
195
199
|
|
196
200
|
|
197
|
-
/*
|
201
|
+
/* サイトにあったやつ
|
198
202
|
|
199
203
|
const GLchar* fragShaderCode =
|
200
204
|
|
@@ -212,7 +216,7 @@
|
|
212
216
|
|
213
217
|
|
214
218
|
|
215
|
-
|
219
|
+
/*書きかえたやつ*/
|
216
220
|
|
217
221
|
const GLchar* fragShaderCode =
|
218
222
|
|
@@ -306,7 +310,7 @@
|
|
306
310
|
|
307
311
|
```
|
308
312
|
|
309
|
-
```GLSL
|
313
|
+
```目的のGLSLでバージョンを古くしたい
|
310
314
|
|
311
315
|
(頂点シェーダ)
|
312
316
|
|
@@ -328,7 +332,7 @@
|
|
328
332
|
|
329
333
|
```
|
330
334
|
|
331
|
-
```GLSL
|
335
|
+
```目的のGLSLでバージョンを古くしたい
|
332
336
|
|
333
337
|
(フラグメントシェーダ)
|
334
338
|
|
8
文の変更
test
CHANGED
File without changes
|
test
CHANGED
@@ -305,3 +305,47 @@
|
|
305
305
|
|
306
306
|
|
307
307
|
```
|
308
|
+
|
309
|
+
```GLSL
|
310
|
+
|
311
|
+
(頂点シェーダ)
|
312
|
+
|
313
|
+
#version 400
|
314
|
+
|
315
|
+
layout (location=0) in vec4 vertex;
|
316
|
+
|
317
|
+
out vec2 TexCoods;
|
318
|
+
|
319
|
+
uniform mat4 projection;
|
320
|
+
|
321
|
+
void main()
|
322
|
+
|
323
|
+
{gl_Position=projection*vec4(vertex.xy,0.0,1.0);
|
324
|
+
|
325
|
+
TexCoords=vertex.zw;
|
326
|
+
|
327
|
+
}
|
328
|
+
|
329
|
+
```
|
330
|
+
|
331
|
+
```GLSL
|
332
|
+
|
333
|
+
(フラグメントシェーダ)
|
334
|
+
|
335
|
+
#version 400
|
336
|
+
|
337
|
+
in vec2 TexCoords;
|
338
|
+
|
339
|
+
out vec4 color;
|
340
|
+
|
341
|
+
uniform sample2D text;
|
342
|
+
|
343
|
+
uniform vec3 textColor;
|
344
|
+
|
345
|
+
void main(){
|
346
|
+
|
347
|
+
vec4 sampled=vec4(1.0,1.0,1.0,texture(text,TexCoords).r);
|
348
|
+
|
349
|
+
color =vec4(texColor,1.0)*sampled;
|
350
|
+
|
351
|
+
```
|
7
文の改善
test
CHANGED
File without changes
|
test
CHANGED
@@ -38,16 +38,18 @@
|
|
38
38
|
|
39
39
|
[ここ](http://code-c.hatenablog.com/entry/2014/03/10/213723)
|
40
40
|
|
41
|
-
|
42
|
-
|
43
|
-
シェーダーコード部とシェーダーコード部を外部に出す方法を教えてください。
|
44
|
-
|
45
|
-
|
41
|
+
今のシェーダの状態です。
|
46
42
|
|
47
43
|
|
48
44
|
|
49
45
|
```opengl
|
50
46
|
|
47
|
+
|
48
|
+
|
49
|
+
|
50
|
+
|
51
|
+
|
52
|
+
|
51
53
|
GLenum glewStatus=glewInit();
|
52
54
|
|
53
55
|
|
@@ -62,15 +64,13 @@
|
|
62
64
|
|
63
65
|
}
|
64
66
|
|
67
|
+
|
68
|
+
|
65
|
-
GLuint vertShader;
|
69
|
+
GLuint vertShader;
|
66
|
-
|
70
|
+
|
67
|
-
GLuint fragShader;
|
71
|
+
GLuint fragShader;
|
68
|
-
|
72
|
+
|
69
|
-
GLuint gl2Program;
|
73
|
+
GLuint gl2Program;
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
74
|
|
75
75
|
|
76
76
|
|
@@ -92,39 +92,65 @@
|
|
92
92
|
|
93
93
|
|
94
94
|
|
95
|
+
|
96
|
+
|
95
|
-
const GLchar
|
97
|
+
/*const GLchar* vertShaderCode =
|
96
|
-
|
98
|
+
|
97
|
-
"#version
|
99
|
+
"#version 120\n"
|
100
|
+
|
98
|
-
|
101
|
+
"attribute vec3 VertexPosition;"
|
102
|
+
|
99
|
-
|
103
|
+
"attribute vec3 VertexColor;"
|
104
|
+
|
100
|
-
|
105
|
+
"varying vec3 Color;"
|
106
|
+
|
107
|
+
"void main() {"
|
108
|
+
|
109
|
+
"Color = VertexColor;"
|
110
|
+
|
111
|
+
"gl_Position = vec4(VertexPosition, 1.0);"
|
112
|
+
|
113
|
+
"}"; */
|
114
|
+
|
115
|
+
|
116
|
+
|
117
|
+
const GLchar* vertShaderCode =
|
118
|
+
|
119
|
+
|
120
|
+
|
121
|
+
"#version 120 \n"
|
122
|
+
|
123
|
+
|
124
|
+
|
101
|
-
"
|
125
|
+
"attribute vec4 vertex;"
|
102
|
-
|
103
|
-
|
104
|
-
|
126
|
+
|
127
|
+
|
128
|
+
|
105
|
-
"
|
129
|
+
"varying vec2 TexCoords;"
|
106
|
-
|
107
|
-
|
108
|
-
|
130
|
+
|
131
|
+
|
132
|
+
|
109
|
-
"uniform mat4 projection;"
|
133
|
+
"uniform mat4 projection;"
|
110
|
-
|
111
|
-
|
112
|
-
|
134
|
+
|
135
|
+
|
136
|
+
|
113
|
-
"void main(){"
|
137
|
+
"void main() {"
|
114
|
-
|
138
|
+
|
139
|
+
|
140
|
+
|
115
|
-
"gl_Position=projection*vec4(vertex.xy,0.0,1.0);"
|
141
|
+
"gl_Position=projection*vec4(vertex.xy,0.0,1.0);"
|
116
|
-
|
142
|
+
|
143
|
+
|
144
|
+
|
117
|
-
"TexCoords=vertex.zw;"
|
145
|
+
"TexCoords=vertex.zw;"
|
118
|
-
|
146
|
+
|
147
|
+
|
148
|
+
|
119
|
-
"}"
|
149
|
+
"}";
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
150
|
+
|
124
|
-
|
125
|
-
|
126
|
-
|
151
|
+
|
152
|
+
|
127
|
-
glShaderSource(vertShader,1,verte
|
153
|
+
glShaderSource(vertShader, 1, &vertShaderCode, NULL);
|
128
154
|
|
129
155
|
|
130
156
|
|
@@ -166,47 +192,49 @@
|
|
166
192
|
|
167
193
|
}
|
168
194
|
|
195
|
+
|
196
|
+
|
169
|
-
|
197
|
+
/*
|
170
|
-
|
171
|
-
|
172
|
-
|
198
|
+
|
173
|
-
const GLchar
|
199
|
+
const GLchar* fragShaderCode =
|
174
|
-
|
175
|
-
|
176
|
-
|
200
|
+
|
177
|
-
"#version
|
201
|
+
"#version 120\n"
|
178
|
-
|
202
|
+
|
179
|
-
"in vec
|
203
|
+
"varying vec3 Color;"
|
204
|
+
|
180
|
-
|
205
|
+
"void main() {"
|
206
|
+
|
207
|
+
"gl_FragColor = vec4(Color, 1.0);"
|
208
|
+
|
209
|
+
"}";
|
210
|
+
|
211
|
+
*/
|
212
|
+
|
213
|
+
|
214
|
+
|
215
|
+
|
216
|
+
|
217
|
+
const GLchar* fragShaderCode =
|
218
|
+
|
219
|
+
"#version 120\n"
|
220
|
+
|
181
|
-
"o
|
221
|
+
"uniform vec4 color;"
|
182
|
-
|
183
|
-
|
184
222
|
|
185
223
|
"uniform sample2D text;"
|
186
224
|
|
187
|
-
"uniform vec3 texColor;"
|
225
|
+
"uniform vec3 textColor;"
|
188
|
-
|
189
|
-
|
190
226
|
|
191
227
|
"void main(){"
|
192
228
|
|
229
|
+
|
230
|
+
|
193
|
-
"vec4 sampled=vec4(1.0,1.0,1.0,texture(text,TexCoords).r);"
|
231
|
+
"vec4 sampled =vec4(1.0,1.0,1.0,texture(text,TexCoords).r);"
|
194
|
-
|
195
|
-
|
196
232
|
|
197
233
|
"color=vec4(textColor,1.0)*sampled;"
|
198
234
|
|
199
|
-
|
200
|
-
|
201
235
|
"}";
|
202
236
|
|
203
|
-
|
204
|
-
|
205
|
-
|
206
|
-
|
207
|
-
|
208
|
-
|
209
|
-
glShaderSource(fragShader,1,&frag
|
237
|
+
glShaderSource(fragShader, 1, &fragShaderCode, NULL);
|
210
238
|
|
211
239
|
|
212
240
|
|
@@ -224,6 +252,8 @@
|
|
224
252
|
|
225
253
|
}
|
226
254
|
|
255
|
+
|
256
|
+
|
227
257
|
GLuint programHandle=glCreateProgram();
|
228
258
|
|
229
259
|
|
6
文の改善
test
CHANGED
File without changes
|
test
CHANGED
@@ -12,13 +12,13 @@
|
|
12
12
|
|
13
13
|
|
14
14
|
|
15
|
-
再々追記
|
15
|
+
再々追記 " "の部分で、
|
16
16
|
|
17
17
|
attribute , varying
|
18
18
|
|
19
19
|
と
|
20
20
|
|
21
|
-
in ,out の関係
|
21
|
+
in ,out の関係を直さないといけないと思うけど、私の場合はopenglのバージョンが古いようなので古くしないといけない。
|
22
22
|
|
23
23
|
|
24
24
|
|
5
文の変更
test
CHANGED
File without changes
|
test
CHANGED
@@ -20,7 +20,7 @@
|
|
20
20
|
|
21
21
|
in ,out の関係だと思うけど、私の場合は古くしないといけない。
|
22
22
|
|
23
|
-
|
23
|
+
|
24
24
|
|
25
25
|
|
26
26
|
|
4
文の改善
test
CHANGED
File without changes
|
test
CHANGED
@@ -12,6 +12,18 @@
|
|
12
12
|
|
13
13
|
|
14
14
|
|
15
|
+
再々追記
|
16
|
+
|
17
|
+
attribute , varying
|
18
|
+
|
19
|
+
と
|
20
|
+
|
21
|
+
in ,out の関係だと思うけど、私の場合は古くしないといけない。
|
22
|
+
|
23
|
+
----------------------------------------------------------
|
24
|
+
|
25
|
+
|
26
|
+
|
15
27
|
**頂点シェーダーのコンパイルに失敗しました。
|
16
28
|
|
17
29
|
フラグメントシェーダのコンパイルに失敗しました。
|
3
文の改善
test
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
シェーダの" "の部分とシェーダの" "を外部に出す方法について
|
test
CHANGED
@@ -4,6 +4,12 @@
|
|
4
4
|
|
5
5
|
|
6
6
|
|
7
|
+
再追記
|
8
|
+
|
9
|
+
シェーダの" "の部分とがうまくいかないことが分かりました。
|
10
|
+
|
11
|
+
あとシェーダの" "を外部に出す方法について教えてください。
|
12
|
+
|
7
13
|
|
8
14
|
|
9
15
|
**頂点シェーダーのコンパイルに失敗しました。
|
@@ -22,7 +28,7 @@
|
|
22
28
|
|
23
29
|
|
24
30
|
|
25
|
-
|
31
|
+
シェーダーコード部とシェーダーコード部を外部に出す方法を教えてください。
|
26
32
|
|
27
33
|
(ポインタがあっても無視しています)
|
28
34
|
|
2
文の改善
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,10 +1,10 @@
|
|
1
|
-
追記
|
1
|
+
追記 参照しているページのシェーダープログラムのリンクまで打ったら、コンパイルエラーなしで
|
2
|
-
|
2
|
+
|
3
|
-
|
3
|
+
ソースコードが通ることが分かりました。
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
4
|
+
|
5
|
+
|
6
|
+
|
7
|
+
|
8
8
|
|
9
9
|
**頂点シェーダーのコンパイルに失敗しました。
|
10
10
|
|
@@ -24,7 +24,7 @@
|
|
24
24
|
|
25
25
|
どこが違うのか、すんなり通るものなのか分かりません。教えてください。
|
26
26
|
|
27
|
-
(ポインタ
|
27
|
+
(ポインタがあっても無視しています)
|
28
28
|
|
29
29
|
|
30
30
|
|
1
文の改善
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,4 +1,10 @@
|
|
1
|
+
追記 少し打ち間違いをしたのですが、いづれにしても
|
2
|
+
|
3
|
+
エラーの解消につながりませんでした。
|
4
|
+
|
5
|
+
|
6
|
+
|
1
|
-
端末に
|
7
|
+
打ち消し線端末に
|
2
8
|
|
3
9
|
**頂点シェーダーのコンパイルに失敗しました。
|
4
10
|
|