Я думаю, что проблема в том, что подразумевает Маркус;Вы не настраиваете матрицу проекции на что-либо полезное (и вообще не настраиваете матрицу просмотра модели).Если оставить это как идентификатор, (50, 50) будет за пределами окна просмотра.Я предлагаю вам взглянуть на сопоставления OpenTK для glOrtho и glFrustum.
Предположим, у вас есть видовой экран с шириной и высотой, следующий пример создаст вам видовой экран, где (0, 0) - верхний левый угол и (a, b) это пиксели справа и b пикселей вниз оттуда:
glOrthof(0, width, height, 0, 1, 10);
Хотя это ставит ближнюю плоскость отсечения на глубину 1 от зрителя (а дальний на глубину 10), поэтому вы, вероятно, также захотите сделать что-то подобное при инициализации:
glMatrixMode(GL_MODELVIEW);
glTranslatef(0.0f, 0.0f, -5.5f);
Чтобы сместить любую будущую геометрию, указанную вами в 2d, на ровно посередине между двумя плоскостями отсечения.