Понедельник, 02 Декабря 2024, 01:36

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Посоветуйте книгу по OpenGL (2D графика)
Xe[N]oДата: Суббота, 07 Января 2012, 02:16 | Сообщение # 1
частый гость
Сейчас нет на сайте
Здравствуйте. Можете мне посоветовать, хорошую книгу по OpenGL, без glut. Мне нужна именно 2D графика в связке WinAPI + OpenGL. Мне очень нужна ваша помощь! Уже сколько времени, я ищу, и все что я нахожу - либо чертов glut, либо 3D графика... Заранее благодарен.
MatouДата: Суббота, 07 Января 2012, 04:12 | Сообщение # 2
Исходный коТ
Сейчас нет на сайте
Нету такой книги ^,,,^

2Д в ОпенГЛ это же фантастика. Если нужно делать 2д графику то просто рисуешь на плоскости xOy например и выставляешь прямоугольную ортогональную проекцию на эту плоскость. Как соединить OpenGL с WinAPI, а точнее OpenGL с контекстом окна можно посмотреть в уроках Нехе, но еще лучше взять книжку Ричард и Бенджамин "OpenGL Суперкнига" глава 13, там все более менее подробно описано, эту же книжку можно использовать как более менее подробный учебник по OpenGL. Конечно в ней есть проклятущий glut, ну можно на него внимания не обращать если он так уж не нравится.



Xe[N]oДата: Суббота, 07 Января 2012, 14:13 | Сообщение # 3
частый гость
Сейчас нет на сайте
Серьезно? Просто на сколько я знаю, OpenGL называют 2D\3D библиотекой графики... Это печально. Просто я надеялся на некоторые технологии. Наверно поэтому, я потратил трое суток в поиске информации о том, как нарисовать пиксель... smile
Если это так, то какая есть альтернатива, DirectX?
FOXДата: Суббота, 07 Января 2012, 14:30 | Сообщение # 4
постоянный участник
Сейчас нет на сайте
Quote (Xe|N|o)
Если это так, то какая есть альтернатива, DirectX?

А DirectX тебе чем не угодил?
Xe[N]oДата: Суббота, 07 Января 2012, 14:39 | Сообщение # 5
частый гость
Сейчас нет на сайте
Quote
А DirectX тебе чем не угодил?

У меня личные терки с ним...)
Я просто интересуюсь, единственная ли это достойная альтернатива?
TimKruzДата: Суббота, 07 Января 2012, 15:26 | Сообщение # 6
старожил
Сейчас нет на сайте
Xe[N]o, в OpenGL можно и с 2D графикой работать. Например, есть функция glVertex3f(x,y,z), которая ставит точку в пространстве, а есть аналогичная функция glVertex2f(x,y), которая ставит такую же точку в 2D-пространстве, точнее, z тут считается нулём, т.е. все построения идут вплотную к дисплею. Есть ещё похожие функции...
А вообще-то, любой учебник по графике всегда должен начинаться с 2D, а потом уже, плавно, переходить в 3D.
К сожалению, у меня нет книги по С++, т.к. с Delphi работаю. smile
Модуль Glut несёт в себе дополнительные функции по работе с 3D-графикой, например, с его помощью можно всего одной функцией рисовать некоторые примитивы (кубы, цилиндры, торы, чайники). Он подключается отдельно, по желанию. biggrin И его описанию посвящают не так много времени...
Если ты можешь создать форму на чистом WinAPI (минимальная Windows-программа с окном), то подключить OpenGL легко. Впрочем, это должно описываться в книгах, ещё с самого начала...

Короче, бери любую понравившуюся книгу и изучай до конкретно 3D-графики, и всё, ты сможешь работать с 2D. Ничего особенного, относящегося исключительно к 2D, в OpenGL нет. Всё, что касается 2D, применяется и в 3D...

***
На счёт альтернативы: сейчас основные графические API - это DirectX и OpenGL, остальные либо умерли, либо умирают из-за непопулярности. OpenGL, в принципе, на одном уровне с DirectX, но он как-то проще для новичков, чем DirectX...




Сообщение отредактировал TimKruz - Суббота, 07 Января 2012, 15:30
Xe[N]oДата: Суббота, 07 Января 2012, 16:00 | Сообщение # 7
частый гость
Сейчас нет на сайте
TimKruz, благодарю. Не знаю почему, но стало сразу легче. smile
Эх, осталось лишь понять, как при помощи этого самого OpenGL, структурировать карты, и можно смело в бой. То есть в начало работы.)
MatouДата: Суббота, 07 Января 2012, 18:23 | Сообщение # 8
Исходный коТ
Сейчас нет на сайте
Quote (Xe|N|o)
Модуль Glut несёт в себе дополнительные функции по работе с 3D-графикой, например, с его помощью можно всего одной функцией рисовать некоторые примитивы (кубы, цилиндры, торы, чайники).

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



TimKruzДата: Суббота, 07 Января 2012, 18:28 | Сообщение # 9
старожил
Сейчас нет на сайте
Matou, ладно... Извиняюсь, конечно, но что может нести в себе модуль кроме дополнительных функций и структур данных? wacko
Quote (Matou)
чайники есть, но это далеко не на первом месте

А я разве писал, что это на первом месте и самое главное?
***
Quote
OpenGL Utility Toolkit (GLUT) - библиотека утилит для приложений под OpenGL, которая в основном отвечает за системный уровень операций ввода-вывода при работе с операционной системой. Из функций можно привести следующие: создание окна, управление окном, мониторинг за вводом с клавиатуры и событий мыши. Она также включает функции для рисования ряда геометрических примитивов: куб, сфера, чайник. GLUT даже включает возможность создания несложных всплывающих меню.

***
Ну да, немного не то написал... killed Но желающие всегда могут прочитать правильное описание на той же Википедии...




Сообщение отредактировал TimKruz - Суббота, 07 Января 2012, 18:33
noTformaTДата: Суббота, 07 Января 2012, 18:43 | Сообщение # 10
Ukrainian independent game developer
Сейчас нет на сайте
кубы, цилиндры, торы, чайники - это есть и в glu... В утилитной либе glu есть всякие примитивы, и куча всяких функций которые по сути являются надстройкой над ОГЛ....

либа glut - направлена в более другое русло, хотя там тоже есть несколько примитивов... но используется она не для этого. Всякие там события мыши, окон и т.д.

Есть еще glaux, но мне чет кажется что эта либа уже давно не используется... хотя хз, но я ее давненько не видел sad

Что касается поста.. я сам в свое время, когда изучал ОГЛ, искал книги по 2д и огл, и понял что нифига толком не найду... Все что я находил - какие-то английские статьи в которых обсуждалось все то что посоветовали выше...

Мне кажется оптимальным решением будет использование 2д движка, а то на чистом огл далеко не уедешь, вернее уедешь, но ехать будешь очень при очень долго...


@noTformaT
MatouДата: Суббота, 07 Января 2012, 18:54 | Сообщение # 11
Исходный коТ
Сейчас нет на сайте
Quote (noTformaT)
Есть еще glaux, но мне чет кажется что эта либа уже давно не используется... хотя хз, но я ее давненько не видел

Года 3-4 назад о ней уже говорили как о неподдерживаемой либе которую уже никто не использует.



VinchensooДата: Суббота, 07 Января 2012, 19:16 | Сообщение # 12
Злобный социопат с комплексом Бога
Сейчас нет на сайте
С winapi связывать руками. Мне нравится красная книга: если ничего не знаешь об Огл, самое оно, для полных новичков.

Никогда не видел книг по чистому 2d, всегда подразумевается, что мы берем проекцию на плоскость oxy(т.е. рисуем в трехмерной координате с z=0, так точнее)


Xe[N]oДата: Воскресенье, 08 Января 2012, 02:51 | Сообщение # 13
частый гость
Сейчас нет на сайте
Спасибо всем огромное. Нашел себе Красную Книгу, начал читать.)
У меня вопрос, не много не по теме... Если мне к примеру, взять все куски (тайлы) и фрагменты (спрайты) как действительно, 2D, а вот к примеру плоскость земли, сделать как 3D объект. Суть в том, что если наложить на землю бамб (знаю, устарел, но мне он ближе ибо я понимаю его суть, в отличии от неш мапинга), сверху поставить динамическое освещение, в теории, можно получить очень качественные эффекты освещения... Это же возможно? Или к примеру, теже куски взять в 3D, с бампом, оставив только фрагменты в виде 2D графики, опять же с динамическим освещением?

Добавлено (08.01.2012, 02:51)
---------------------------------------------
Начав учить OpenGL, понял что нес ересь... Действительно, все это полностью 3д графика, просто рисуется на одной плоскости. Единственный вопрос для меня, это как рисовать 1 пиксель. Но ответ на него, я думаю найду дальше в изучении OpenGL. Благодарю всех за помощь. smile

  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг