| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Программирование игр, графики и искусственного интеллекта > Обсуждение статьи об OpenGL и Java |
| Автор: $tatic 27.6.2007, 20:30 |
| Если у вас есть вопросы или замечания по http://forum.vingrad.ru/forum/topic-161042/kw-opengl-java-jogl.html, пишите их здесь. |
| Автор: arilou 28.6.2007, 09:10 |
| $tatic, спасибо за статью. Продолжение будет? |
| Автор: $tatic 30.6.2007, 19:57 | ||||
| Конечно. Вот сейчас я написал и отправил на форум вторую часть статьи. Прошу ее также обсудить. Следует отметить, что для корректной работы необходимо исправить код файла Renderer.java, а именно строку
на
В противном случае у программы будет неопределенное поведение. Предлагайте свои идеи будущих статей. |
| Автор: WTF4XZ 1.7.2007, 22:41 |
| Статья прикольная, была бы возможность кинул плюс. Мона ещё написать что нить про OGL3 там привьювка.... вообщем пособирать и изложить, было бы интерестно ;) |
| Автор: Mazzi 2.7.2007, 08:26 |
| За статью респект! |
| Автор: Hidrag 2.7.2007, 09:27 |
| Все сделал как в статье. Теперь замечания и придирки. В общем все отлично и все мои замечания и придирки это мелочи. 1. У тебя в примере в классе глфрэйм обьявлена GLCanvas canvas; а потом в конструкторе снова GLCanvas canvas = new GLCanvas(); нада оставить что то одно, получается два конвала один создается второй так и висит не созданный 2. В первой статье когда предлагается впервые запустить приложение у тя написанно, что должен быть пустой черный экран - это не тру ))) видимо у всех по разному, у меня было что то похожее на шахматную доску ))) из пыльных белых и серых прямоугольников ))) все. Теперь вопрос: картинка у нас статичная - чайник, тогда почему каждый раз разные показания счетчика кадров, от чего они зависят? Еще такую особенность сейчас заметил, пока писал это у меня был запущен чайник со счетчиком, и комп подвисал немного, закрыл прогу, тормоза пропали, смею предположить что это связанно с тем что идет постоянный опрос системного времени. А вообще $tatic, респект и уважуха Ждем продолжения, ты главное не останавливайся! Да и еще, в статье предлагается использовать джаву 1.6, но могу сказать что и на 1.5 данные примеры работаю на ура |
| Автор: Hidrag 3.7.2007, 09:16 |
resolved$tatic, спасибо за исчерпывающий ответ! |
| Автор: Goganchic 3.7.2008, 19:20 |
| $tatic, а что насчет продолжения? Может сделать цикл статей по OpenGL в жаве? Может быть что-то вроде создания простенького 3D движка? Я конечно понимаю, что OpenGL будет везде похож, т.к. сама Java вызывает нативные функции OpenGL, реализованные на данной платформе, но сам Java-way может внести в программу что-то особенное (например какие-то паттерны проектирования), и вот об этом и хотелось бы почитать, о том, что получится, если применить Java-way к OpenGL и играм. P.s. статья - крутЪ |
| Автор: $tatic 6.7.2008, 11:17 |
| Goganchic, мне бы тоже этого хотелось |
| Автор: TXC 23.9.2008, 21:38 | ||||||
$tatic,
Так и есть, это буфер. Потому как на том этапе в Renderer.display() мы еще не имеем:
З.Ы.: Статья замечательная, автору респект. |
| Автор: Still 13.10.2008, 20:15 | ||
| Статья интересная, это факт. Однако один момент мне не понятен по причине обычной неопытности. $tatic, мог бы ты чуть детальнее описать следующий абзац:
В частности, что такое нативные библиотеки?.. В принципе отображение чайника получилось, однако предыдущий вопрос меня вводит в заблуждение из-за незнания Спасибо. PS Литературу листаю, однако не все так просто... |
| Автор: arilou 14.10.2008, 10:32 | ||
Still,
это обычные виндовые DLL или линуксовые so, написанные на С++ и других языках, которые компилируют напрямую в native code. |
| Автор: Still 15.10.2008, 08:16 |
| arilou, спасибо, ясно. Ну и соответственно для Java это библиотеки jar, в частности jogl'а для данного примера. |
| Автор: Vitaly333 23.3.2009, 22:37 |
| $tatic, А как быть с кросплатформеностью того приложения, которое использует Jogl? Как я понял Jogl поставляется в виде двух платформонезависимых jar-ов + для каждой платформы свои нативные библиотеки. Если я хочу чтобы моё приложение работало везде мне нужно просто скачать полный комплект нативных библиотек для всех платформ с сайта, далее всех их подключить к своему проекту. В ходе выполнения программы код из jogl.jar каким -то образом сам будет определять на какой платформе запущено приложение и дергать соответствующие функции из соответствующей нативной библиотеки для этой платформы. Правильно думаю или нет? |
| Автор: kemiisto 23.3.2009, 23:23 |
| Vitaly333, правильно! |
| Автор: EgoBrain 25.3.2009, 05:47 |
| Выложите экзешник посмотреть. |
| Автор: Cheloveck 5.6.2010, 21:32 |
| У меня этот пример отбирает 60% процессорного времени. Это нормально? |
| Автор: Norby89 25.2.2011, 00:11 |
| Пример из первого поста "съедает" ресурсы одного ядра процессора, при этом приложение подвисает (его невозможно закрыть + не происходит перерисовка при перекрытии другим окном. |
| Автор: Cheloveck 25.2.2011, 10:20 |
| Norby89, нужно ограничить fps. |
| Автор: Norby89 25.2.2011, 18:07 |
| Cheloveck, каким образом? |
| Автор: Cheloveck 25.2.2011, 18:50 |
| http://tinyurl.com/4utursg |
| Автор: Norby89 25.2.2011, 22:48 |
| Cheloveck, включение/оключение вертикальной синхронизации не помогло. Зато появились новые данные. Изредка программа таки запускается нормально. Но после перезапуска опять происходит зависание. Пробовал запустить на других компьютерах, там работает нормально. Драйвера на видеокарту обновил. В чем еще может быть проблема? Еще один момент: если в методе display написать gl.setSwapInterval(7) или интервал больший 7, то прорисовка происходит медленнее, но программа не зависает. Корень проблемы найден. Поставил старые(очень старые, были на диске к ноутбуку) драйвера на видеокарту, все заработало как часы. С новыми же драйверами программа зависает. Что делать, ума не приложу. Работать на старых драйверах - маразм, а как починить новые не знаю... |