Полагаю, вы хотите узнать, какой объект находится под вашей мышью или под нажатым пикселем.Существует метод, называемый 3d-сбор.Он состоит из рисования вашей сцены на текстуре, созданной специально для этой цели.Он должен иметь то же измерение, что и ваше окно.Вы нарисуете свою сцену с помощью специального шейдера, который нарисует идентификатор ваших объектов на текстуре.После чего вам просто нужно прочитать пиксель, в котором находится мышь, чтобы узнать, какой объект выбран.
Это мой фрагментный шейдер, он принимает идентификатор текущего объекта:
#version 330 core
uniform uint id;
layout(location = 0) out uvec4 out_color;
void main()
{
uvec4 color;
color.x = (id & 0xff0000u) >> 16;
color.y = (id & 0x00ff00u) >> 8;
color.z = (id & 0x0000ffu) >> 0;
color.w = uint(255);
out_color = color;
return;
}
Вы также можете проверить этот урок: http://ogldev.atspace.co.uk/www/tutorial29/tutorial29.html