Tôi có đoạn mã này
glReadBuffer( GL_FRONT );
glReadPixels( 0, 0, width, height, GL_RGB, GL_UNSIGNED_BYTE, buffer );
Nó hoạt động hoàn hảo trong tất cả các GPU Nvidia và AMD mà tôi đã thử, nhưng nó đã thất bại trong hầu hết mọi video tích hợp Intel mà tôi đã thử. Nó thực sự hoạt động trong một 945GME rất cũ, nhưng thất bại trong tất cả những cái khác. Thay vì nhận được một ảnh chụp màn hình, tôi thực sự nhận được một màn hình đen.
Nếu nó giúp, tôi đang làm việc với Doom3 Engine và mã đó được lấy từ mã chụp màn hình tích hợp. Nhân tiện, ngay cả với trò chơi gốc, tôi cũng không thể chụp màn hình trên các thiết bị intel đó. Tôi đoán là họ không thực hiện đúng tiêu chuẩn hoặc một cái gì đó. Có một cách giải quyết cho điều này?