DiligentGraphics / DiligentCore

A modern cross-platform low-level graphics API
http://diligentgraphics.com/diligent-engine/
Apache License 2.0
612 stars 133 forks source link

GLContextState::Invalidate Crash #518

Closed HW140701 closed 2 months ago

HW140701 commented 2 months ago

The crash happens at the line glBindProgramPipeline(0); in GLContextState::Invalidate function. My gpu is Intel(R) HD Graphics 4000.

This is the log output of DiligentCore,

 [Diligent] : User-defined allocator is not provided. Using default allocator. 
 [Diligent] : Attached to OpenGL 4.0 context (4.0.0 - Build 9.17.10.2849) 
 [Diligent] : GPU Vendor: intel 
 [Diligent] : Device Limits : MaxUniformBlocks=60, MaxTextureUnits=80, MaxStorageBlock=0, MaxImagesUnits=0 

I checked that glBindProgramPipeline is supported since OpenGL 4.1, look this url.

My question is why glBindProgramPipeline is called when it is detected that my GPU only supports OpenGL 4.0.

TheMostDiligent commented 2 months ago

OpenGL4.0 is below minimum required version.

image

Diligent Engine can't run on this GPU.