Arhn - архитектура программирования

Как визуализировать бесконечную тестовую сетку/плоскость с помощью GLSL и LWJGL?

Я пытаюсь отобразить бесконечную тестовую сетку/плоскость с помощью LWJGL3. Я провел довольно много исследований по этому поводу, включая несколько потоков здесь, на stackExchange, но я просто застрял. Кажется, я не могу уложить в голове, как это делается. И я не могу найти какие-либо рабочие фрагменты кода/примеры, которые я мог бы исследовать и реализовать. Например, этот ответ: Визуализация бесконечно большой плоскости кажется мне в целом понятным, но Я не могу это реализовать. Я буквально понятия не имею, что такое «координаты просмотра», «координаты обрезки» в этой формуле и как это должно помочь мне отобразить плоскость. Тем не менее, кажется, все поняли, что он имел в виду.

В моем проекте я генерирую ProjectMatrix, а также modelViewMatrix, используя JOML, и передаю их шейдеру. Это прекрасно работает с обычными 3D-моделями, и они движутся относительно друг друга, вращаются и отображают текстуры и т. д. У меня не было проблем с пониманием этих концепций.

Я не уверен, какие фрагменты кода я мог бы предоставить здесь.

Может ли кто-нибудь дать мне алгоритм или указать мне правильное направление? Я занимаюсь этой проблемой уже больше суток и до сих пор не могу понять. Кроме того, любые темы здесь, на StackExchange, об этом - я, вероятно, уже видел.


  • В настоящее время я реализовал обходной путь. Я в основном прикрепил к своей модели большую плоскость 1000x1000 (за которой следует камера), поэтому модель остается в центре плоскости, даже когда она движется. Затем я использую шейдер GLSL, чтобы изменить цвета фрагментов этой плоскости, чтобы создать шаблон сетки. Это далеко не идеальное решение, и я чувствую, что должно быть лучшее, но это сработает для моего проекта, потому что модель должна всегда двигаться по плоскости, никогда не покидая ее. 11.09.2019
  • На самом деле, упомянутый поток StackOverflow, отображающий бесконечно большую плоскость, является точным и правильным. Вам просто нужно визуализировать эти четыре треугольника, как указано, используя однородные координаты. Вот и все. И при желании вы можете построить матрицу проекции, которая отображает дальнюю плоскость в бесконечность. Я создал демонстрацию в репозитории LWJGL/lwjgl3-demos, делая все это с помощью JOML: github.com/LWJGL/lwjgl3-demos/blob/master/src/org/lwjgl/demo/ 11.09.2019

Новые материалы

Коллекции публикаций по глубокому обучению
Последние пару месяцев я создавал коллекции последних академических публикаций по различным подполям глубокого обучения в моем блоге https://amundtveit.com - эта публикация дает обзор 25..

Представляем: Pepita
Фреймворк JavaScript с открытым исходным кодом Я знаю, что недостатка в фреймворках JavaScript нет. Но я просто не мог остановиться. Я хотел написать что-то сам, со своими собственными..

Советы по коду Laravel #2
1-) Найти // You can specify the columns you need // in when you use the find method on a model User::find(‘id’, [‘email’,’name’]); // You can increment or decrement // a field in..

Работа с временными рядами спутниковых изображений, часть 3 (аналитика данных)
Анализ временных рядов спутниковых изображений для данных наблюдений за большой Землей (arXiv) Автор: Рольф Симоэс , Жильберто Камара , Жильберто Кейрос , Фелипе Соуза , Педро Р. Андраде ,..

3 способа решить квадратное уравнение (3-й мой любимый) -
1. Методом факторизации — 2. Используя квадратичную формулу — 3. Заполнив квадрат — Давайте поймем это, решив это простое уравнение: Мы пытаемся сделать LHS,..

Создание VR-миров с A-Frame
Виртуальная реальность (и дополненная реальность) стали главными модными терминами в образовательных технологиях. С недорогими VR-гарнитурами, такими как Google Cardboard , и использованием..

Демистификация рекурсии
КОДЕКС Демистификация рекурсии Упрощенная концепция ошеломляющей О чем весь этот шум? Рекурсия, кажется, единственная тема, от которой у каждого начинающего студента-информатика..