Как сделать так, чтобы GL_POINTS перекрывался, чтобы выглядеть как сферы? - PullRequest
0 голосов
/ 26 апреля 2020

Я пытаюсь создать игру в стиле вокселей и хочу использовать GL_POINTS для симуляции сферических вокселей.

Я стремлюсь сделать так, чтобы они выглядели как трехмерные сферы без необходимости визуализации реальной сферы со многими вершинами. .

Однако, когда я создал массу GL_POINTS, они перекрываются таким образом, что становится очевидным, что они являются спрайтами с плоским кругом.

Вот пример: мой пример изображения с перекрытием gl_points показ кругового спрайта:

img

Я бы хотел, чтобы круговой GL_POINTS перекрывался таким образом, чтобы они выглядели как сферы, сжимающиеся вместе и скрывающие части друг друга.

Для примера того, чего я хотел бы достичь, вот изображение, показывающее Star Defenders 3D от Eri c Gurt, на котором он использовал сферические точки в качестве вокселей в Javascript для своих уровней:

Пример изображения, показывающего точки, которые выглядят как сферы:

img

Как вы можете видеть, где точки перекрываются, они скрывают части каждого другие создают иллюзию, что они являются трехмерными сферами вместо круглых спрайтов.

Есть ли способ воспроизвести это в openGL? Я использую OpenGL 3.3.0.

...