for GLFramework