glShaderSource çöküyor
Aug 30 2020
Kullanırım:
std::string source;
char value;
std::ifstream stream(paths[id]);
while (stream.get(value)) {
source += value;
}
stream.close()
int shader = glCreateShader(mode);
shaders[id] = shader;
glShaderSource(shader, 1, (const GLchar* const *)source.c_str(), nullptr);
glCompileShader(shader);
Ve ayrıca kaynak değişkeninde uygulama çöküyor tam olarak:
#version 330 core
layout(location = 0) in vec3 aPos;
void main()
{
gl_Position = vec4(aPos.x, aPos.y, aPos.z, 1.0);
}
Ve uygulama sadece çöküyor!
Sorun ne?
Yanıtlar
4 HolyBlackCat Aug 30 2020 at 09:53
Sorun buradadır: (const GLchar* const *)source.c_str(). Oyuncular olmadan işe yaramadığı gerçeği (etkili bir şekilde a reinterpret_cast), yanlış bir şey yaptığınızın bir işaretidir.
İmleci bir değişkene kaydedin: const char *ptr = source.c_str();ardından geçiş &ptryapın glShaderSource.
2 Spinkoo Aug 30 2020 at 09:55
sorun bunda
glShaderSource(shader, 1, (const GLchar* const *)source.c_str(), nullptr);
bunu yapmayı dene
const char* src = source.c_str();
glShaderSource(shader, 1, &src,nullptr);
Nicole Kidman, Michael Keaton ve Val Kilmer'in Batman Olarak Paylaştığı Bu 1 Çekici Özelliğe Bayıldı
Gene Simmons, KISS Çizgi Romanlarının Potansiyel Olarak "İnsanlığı Yeniden Yaratabileceğini" Söyledi
Kevin Jonas'ın Kızı Alena, Doğum Günü Fotoğrafında Büyümüş Görünüyor: '9 Yaşında Gerçek Hissetmiyor'
Charly Reynolds Yakın Zamandaki Vokal Kord Ameliyatını Açıkladı: 'Şarkı Söylemekte Sorun Yaşıyordum'