пятница, 3 июля 2015 г.

Про OpenGL

Как я упомянул в предыдущем посте, хочется изобразить летающие шарики в объемном виде. Для этого вчера я попытался нарисовать всего один шарик с помощью lwjgl 2, у меня получилось, я изобразил красное пятно на белом фоне, но на это у меня ушла пара часов. В связи с чем есть кое-какие вопросы.
Во-первых, стало ясно, что просто так, с наскоку, OpenGL использовать не получится. Мне очень не хочется писать код, собирая в гугле кусочки какой-то работающей фигни, но не понимая, что она делает. А экспериментировать путем вписывания других значений не очень выходит, потому что результаты бывают совсем интуитивно-непонятные. Так что хотел бы спросить совета, если кто имел опыт, чего бы такого хорошего почитать, чтобы понять побольше, и чтобы не про старые версии OpenGL. Потому как я уже где-то нашел, что с версии 3.0 все стало как-то немного иначе.
Во-вторых, у меня теперь есть большой вопрос, на чем писать. В принципе, для Java есть несколько реализаций биндингов OpenGL: JOGL, LWJGL2, LWJGL3, который использует JGLFW. От этого уже начинает плавиться мозг, но похоже современнее всего из них LWJGL3, который, правда, еще не зарелизился. Есть другой вариант - забить на Java и для полнейшего прогружения мозга в новую среду писать на С++, чтобы можно было совсем уж заниматься тем, что в языках с управляемой памятью делать не получится (ну, для шариков это не обязательно, но для кубиков может понадобиться). Правда, на C++ я не писал уже давно, и писал раньше максимум хелловорлды.
Ну и в третьих, если остаться на Java, то стоит ли этот самый LWJGL3 уже использовать... или JOGL внезапно лучше, судя по его описаниям?
Кстати есть один плюс в Java для опенсорца - если такое писать, то зависимости, как правило, не приходится качать руками, если использовать Maven, который умеет затянуть все сам. А вот как с инфраструктурой для C++, которая давала бы такие возможности, как maven - уже непонятно.

Относительно прошлого поста и перевода цветовой температуры в RGB, получился такой вот код: https://gist.github.com/stasikos/06b02d18f570fc1eaa9f. Там есть маленький тест, который генерит картинку с разной температурой, результат кажется мне адекватным, так что спасибо тому чуваку за его полиномы. :)

1 комментарий:

  1. я диплом писал на jogl, но это было уже почти 7 лет назад, на тот момент у него было большее сообщество и проще было найти ответ на какой-то вопрос + вроде меньшая забагованность, как сейчас - не знаю

    ОтветитьУдалить