Все, что вы там делали, относится к коду для рисования. Загрузка текстур и шейдеров, установка объектов кадрового буфера будет инициализацией, но вы не делаете этого там.
Также glClear должен следовать за glClearColor.
Наконец, что не менее важно, область просмотра не влияет на операции очистки (вы должны использовать ножничное тестирование для операций очистки, чтобы быть ограниченным определенным прямоугольником).