A <-data.frame(c('A','A','B','C','C','A','C','B','A'),c(3,1,7,6,5,4,2,9,8))
names(A) <-c('name','number')
A <- A[order(A$name, A$number),]
A <- A[!duplicated(A$name),]
Андрэ Ла Мот и другие - Секреты программирования игр.
Книжка старая, но сам процесс создания игры, различные интересные хаки и математический аппарат в ней очень хорошо и доходчиво расписаны.
Еще есть: Д. Конгер - Физика для разработчиков компьютерных игр.
Может быть, что-нибудь найдете для себя.
В этой же серии есть книга:
К. Финни - 3D игры
Если Вы совсем новичок, то можно посмотреть:
Михаил Фленов - Искусство программирования игр на С++
Майкл Доусон - Программируем на Python (Почти все примеры в книге посвящены созданию различных игр)
Если решите подробно изучить OpenGL, то однозначно:
Ву, Девис, Нейдер, Шрайнер - OpenGL 4-е издание Руководство по программированию
Верма - Введение в OpenGL
Мой рост 172 см, высота стула 42 см, высота стола 73 см, "полочка" для клавиатуры на 9 см ниже поверхности стола.
Подобрать самую подходящую высоту мебели мне помогли данные из... не поверишь от куда!
Из государственных нормативных документов!
Оказывается есть специальное постановление, которое регламентирует каким образом должно быть организовано рабочее место за компьютером.
Согласно приложениям из САНПИН 2.2.2/2.4.1340-03
Взяв данные о высоте из этих таблиц за основу и немного поэкспериментировав с высотой я нашел самые удобные для себя габариты, которые указал в начале.
Когда ты подберешь высоту наилучшим образом, то сможешь часами сидеть за своим рабочим местом, без желания встать и размять спину.