GLSL sürümünü belirlemek LWJGL'yi kullanırken bir sözdizimi hatası veriyor. Bu sorunu LWJGL'nin dışında yeniden oluşturmaya çalışmadım. Bu, Lion’ı çalıştıran birden fazla Mac’te gerçekleşiyor.GLSL #version sözdizimi hatası veriyor (Mac üzerinde LWJGL)
#version
kullanmadan çalışmak için hem köşe hem de parça gölgelendiricileri aldım. Ama ben #version
yönergesine ihtiyaç duyuyor gibi görünen texture
işlevini kullanmak üzereyim.
Burada en basit başarısız örnek:
#version 120
void main() {
gl_FragColor = vec4(1.0, 1.0, 1.0, 1.0);
}
bu shader parçası Derleme ve glGetShaderInfoLog
arayarak bu hatayı veriyor:
ERROR: 0:1: '' : syntax error #version
böyle 110
olarak, aynı zamanda bir hata veriyor, başka bir şeyle 120
değiştirilmesi. Merakla, yine de, 130 veya daha yüksek kullanırsam, aynı hatayı verir ve desteklenmeyen sürüm hakkında bir şikayette bulunur. (Benim sistem GLSL 1.3 yok biliyorum, ama yine de derleyici bunun gibi davranıyor bu hata görüntüler sürüm etiketi anlamıyor garip.) Bir ATI Radeon Mac üzerinde olduğum
HD 4670. GL_VERSION
, 2.1 ATI-7.12.9
ve GL_SHADING_LANGUAGE_VERSION
, 1.20
'dur.
Bunu göz önünde bulundurarak, GLSL 1.20'nin neden kullanılamayacağı konusunda bir neden göremiyorum. Ve desteklenmeyen bir GLSL sürümü hakkında bir şey söylemek yerine, #version
bir sözdizimi hatası olduğunu söylüyordum bana göre gerçekten garip.
Gölgelendirici yükleme kodunuz nerede? –
İnternette bir kere bunu yapıştırabilirim. (Telefonumu hemen kullanıyorum.) Thab kaynak kodu yararlı olur mu? – rlkw1024