Jeg i gang med at lave en funktion til at tage et screenshot af min OpenGL-applikation...Desværre kan jeg ikke få glReadPixels til at virke ordentligt...Kan ikke finde ud af at lave et array som passer til dens specifikationer, desværre...
Definitionen på glReadPixels i C++ (hvis det hjælper):
void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
Har prøvet disse metoder indtil videre:
(Har også skrevet fejlen nedenunder koden)
var Data: array of Byte;
begin
SetLength(Data, Width * Height * 3);
glReadPixels(0, 0, Width, Height, GL_RGB, Data);
end;
[Error] Demo.dpr(142): Incompatible types: 'Cardinal' and 'dynamic array'
var Data: array of Byte;
begin
SetLength(Data, Width * Height * 3);
glReadPixels(0, 0, Width, Height, GL_RGB, Data[0]);
end;
[Error] Demo.dpr(142): Incompatible types: 'Cardinal' and 'dynamic array'
var Data: array of Byte;
begin
SetLength(Data, Width * Height * 3);
glReadPixels(0, 0, Width, Height, GL_RGB, @Data);
end;
[Error] Demo.dpr(142): Incompatible types: 'Cardinal' and 'Pointer'
var Data: array of Byte;
begin
SetLength(Data, Width * Height * 3);
glReadPixels(0, 0, Width, Height, GL_RGB, @Data[0]);
end;
[Error] Demo.dpr(142): Incompatible types: 'Cardinal' and 'Pointer'
_______________________________________
-----------------------{ nife}------------------------_______________________________________