Sono su un Mac, uso Swift e utilizzo di OpenGL 3.2. Sto anche usando XCode 6.1 Beta quindi suppongo che sia la spiegazione più probabile, perché non mi sembra che abbia senso.GLSL: "Chiamata invalida dell'identificatore non dichiarato 'texture2D'"
non riesco a trovare alcuna prova che questo non dovrebbe essere supportato, ma questo frammento shader è conseguente l'errore Invalid call of undeclared identifier 'texture2D'
durante la compilazione:
#version 150
uniform sampler2D usTexture;
in vec2 vTextureCoord;
out vec4 FragColor;
void main() {
vec4 color = texture2D(usTexture, vTextureCoord);
FragColor = color;
}
Sì, sii consapevole che su OS X '#version 150' può significare solo' #version 150 core'. Su altre piattaforme in cui vengono implementati i profili di compatibilità, è possibile continuare a utilizzare elementi deprecati a partire da GLSL 1.30 come 'texture2D' se si scrive' #version 150 compatibility'. Davvero non lo vuoi, ma vale la pena menzionarlo;) –
Buono a sapersi! Grazie. – Grumdrig
Grazie mille! :) – Awais