Среда, 10 Августа 2022, 21:18

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 2 из 3
  • «
  • 1
  • 2
  • 3
  • »
Форум игроделов » Программирование » C/C++ » На чём писать-DX vs OpenGL (Прошу посоветовать мне одно из них.)
На чём писать-DX vs OpenGL
OpenGOOДата: Вторник, 04 Июня 2013, 23:20 | Сообщение # 21
почти ветеран
Сейчас нет на сайте
Цитата (GreyGLoomy)
мне кросс-платформенность не особо нужна

кросс-платформенность либо нужна, либо не нужна, но судя по ответу не нужна, тогда выбор очевиден DirectX
Carmack: Direct3D is now better than OpenGL

Цитата
Если вы не знаете, куда вы идете, то вас туда приведет любая дорога /Коран/


Мои проекты:
- Свободный и открытый клон World Of Goo
- TrueEngine2D (2D игровой фреймворк основанный на FreeBASIC)

[GameMaker: Studio v1.4.9999]


Сообщение отредактировал OpenGOO - Вторник, 04 Июня 2013, 23:23
ArchidoДата: Среда, 05 Июня 2013, 09:03 | Сообщение # 22
Сэнсэй
Сейчас нет на сайте
Цитата (imperator12)
Если планируется кроссплатформеность то OpenGL, если нет то DirectX однозначно.

Цитата (OpenGOO)
С моей точки зрения лучше начать с OpenGL, поскольку его поддерживают следующие платформы Windows, Linux, OS X, Android, iOS, BlackBerry, но если тебе нужна только Window и ничего кроме неё, тогда уж DirectX будет лучшим решением.

Вот никогда не понимал логику такой аргументации в пользу OpenGL. Приходит новичок с дилеммой - не знает что выбрать, WinApi для него темный лес, о комп. графике понятий похоже практически не имеет... а ему впаривают про кроссплатформенность biggrin И OpenGL ему советуют только в том случае, если он через пару недель уже будет писать под "Windows, Linux, OS X, Android, iOS, BlackBerry", а иначе "DirectX будет лучшим решением" happy Забавно, что аж не описать.

Можно не один год только GAPI и комп. графику изучать, да и кп - это не только графика, там еще очень много разного рода специфичных вещей. Тот кто собирается писать под множество ОС - не задает вопросы вида "OpenGL vs DirectX", и по-моему это очевидно.

GreyGLoomy
Я в свое время начинал с OpenGL (есть мнения, что освоить его проще), glut / glfw не использовал, обвязки над WinApi писал сам (просто было интересно). Потом из интереса пересел за DX, после опыта работы с OpenGL осилил его очень быстро (в целом там только API другое, остальное все аналогично), в итоге после такой процедуры складывается личное впечатление о том, что лучше / удобнее. Попробуй сделать так же smile


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
OpenGOOДата: Среда, 05 Июня 2013, 09:50 | Сообщение # 23
почти ветеран
Сейчас нет на сайте
Цитата (Archido)
Вот никогда не понимал логику такой аргументации в пользу OpenGL. Приходит новичок с дилеммой - не знает что выбрать, WinApi для него темный лес, о комп. графике понятий похоже практически не имеет... а ему впаривают про кроссплатформенность И OpenGL ему советуют только в том случае, если он через пару недель уже будет писать под "Windows, Linux, OS X, Android, iOS, BlackBerry", а иначе "DirectX будет лучшим решением" Забавно, что аж не описать.

Ничего забавного здесь нет, новичку (это состояние только временное) надо сразу думать на перспективу, чтобы в будущем не пришлось начинать всё заново.


Мои проекты:
- Свободный и открытый клон World Of Goo
- TrueEngine2D (2D игровой фреймворк основанный на FreeBASIC)

[GameMaker: Studio v1.4.9999]
ArchidoДата: Среда, 05 Июня 2013, 10:40 | Сообщение # 24
Сэнсэй
Сейчас нет на сайте
Цитата (OpenGOO)
Ничего забавного здесь нет, новичку (это состояние только временное) надо сразу думать на перспективу, чтобы в будущем не пришлось начинать всё заново.

Есть. Новичку для начала нужно научиться основам комп. графики, без каких-либо привязок куда-либо и задних мыслей. В добавок эти GAPI отличаются по большей части только интерфейсом (ну грубо так), при хорошем знании одного перейти на другой - дело нескольких недель. Что там заново нужно начинать - мне ни разу не понятно.


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)

Сообщение отредактировал Archido - Среда, 05 Июня 2013, 10:42
GreyGLoomyДата: Среда, 05 Июня 2013, 10:41 | Сообщение # 25
частый гость
Сейчас нет на сайте
Цитата (OpenGOO)
кросс-платформенность либо нужна, либо не нужна, но судя по ответу не нужна, тогда выбор очевиден DirectX

я где то слышал что Майкрософтовцы специально ставят некие "заглушки" для торможения OpenGL на их ОС sad .
ну а вообще многим кросс-платформеность не особо нужна и они пишут на OpenGL wink .
Цитата (Archido)
Я в свое время начинал с OpenGL (есть мнения, что освоить его проще), glut / glfw не использовал, обвязки над WinApi писал сам (просто было интересно). Потом из интереса пересел за DX, после опыта работы с OpenGL осилил его очень быстро (в целом там только API другое, остальное все аналогично), в итоге после такой процедуры складывается личное впечатление о том, что лучше / удобнее. Попробуй сделать так же

мерси happy .Именно так я и думаю поступить-сначало что полегче выучу,потом что потруднее smile .
OpenGOOДата: Среда, 05 Июня 2013, 10:49 | Сообщение # 26
почти ветеран
Сейчас нет на сайте
Цитата (Archido)
Новичку для начала нужно научиться основам комп. графики, без каких-либо привязок куда-либо и задних мыслей

Основам комп. графики можно научится и без изучения GAPI, комп. графики это отдельная тема.


Мои проекты:
- Свободный и открытый клон World Of Goo
- TrueEngine2D (2D игровой фреймворк основанный на FreeBASIC)

[GameMaker: Studio v1.4.9999]
ArchidoДата: Среда, 05 Июня 2013, 11:11 | Сообщение # 27
Сэнсэй
Сейчас нет на сайте
Цитата (OpenGOO)
Основам комп. графики можно научится и без изучения GAPI, комп. графики это отдельная тема.

Можно. Но я подразумеваю конкретную "часть", привязанную к сегодняшим реалиям и GAPI. Начиная с основ вроде подготовки, трансформации, отрисовки геометрии, работе с Z и Stencil буферами, blend'ом, отрисовки полупрозрачной геометрии, etc и заканчивая сложными шейдерными техниками, которые используются в современных играх. В данном контексте под "комп. графикой" я имел в виду именно это. И оно полностью справедливо как для DX, так и для OpenGL. Разница только в том, каким образом скажем, создается буфер, и каким образом он отдается на отрисовку.


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)

Сообщение отредактировал Archido - Среда, 05 Июня 2013, 11:12
OpenGOOДата: Среда, 05 Июня 2013, 11:25 | Сообщение # 28
почти ветеран
Сейчас нет на сайте
Вот как сейчас современная реальность выглядит -)

Код
void TriangleWindow::initialize()
{
        m_program = new QOpenGLShaderProgram(this);
        m_program->addShaderFromSourceCode(QOpenGLShader::Vertex, vertexShaderSource);
        m_program->addShaderFromSourceCode(QOpenGLShader::Fragment, fragmentShaderSource);
        m_program->link();
        m_posAttr = m_program->attributeLocation("posAttr");
        m_colAttr = m_program->attributeLocation("colAttr");
        m_matrixUniform = m_program->uniformLocation("matrix");
}


Есть к стати ещё одна альтернатива например SDL. Кстати вышел релиз кандидат SDL 2.0


Мои проекты:
- Свободный и открытый клон World Of Goo
- TrueEngine2D (2D игровой фреймворк основанный на FreeBASIC)

[GameMaker: Studio v1.4.9999]


Сообщение отредактировал OpenGOO - Среда, 05 Июня 2013, 11:31
ArchidoДата: Среда, 05 Июня 2013, 11:46 | Сообщение # 29
Сэнсэй
Сейчас нет на сайте
Обертка над OpenGL - это современная реальность? smile

C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
OpenGOOДата: Среда, 05 Июня 2013, 11:54 | Сообщение # 30
почти ветеран
Сейчас нет на сайте
Цитата (Archido)
Обертка над OpenGL - это современная реальность?

Да это реальность, ты не поверишь, но эта обёртка ещё работает как OpenGL ES 2.0 поверх DirectX 9 -)
Код работает даже на моей древней интеловской встроенной карте. (OpenGL 1.4)

Кстати, я недавно встретил обёртку OpenGL (версию не помню) поверх DirectX 11


Мои проекты:
- Свободный и открытый клон World Of Goo
- TrueEngine2D (2D игровой фреймворк основанный на FreeBASIC)

[GameMaker: Studio v1.4.9999]


Сообщение отредактировал OpenGOO - Среда, 05 Июня 2013, 11:57
ArchidoДата: Среда, 05 Июня 2013, 12:50 | Сообщение # 31
Сэнсэй
Сейчас нет на сайте
Цитата (OpenGOO)
Да это реальность, ты не поверишь, но эта обёртка ещё работает как OpenGL ES 2.0 поверх DirectX 9 -)

И зачем? biggrin А вообще - очень круто, особенно когда транслятор ANGLE'a спотыкается на нетривиальном шейдере OGL'a, при попытке сконвертить его в hlsl. Костыли они такие. И кому-то нравятся, да.


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
OpenGOOДата: Среда, 05 Июня 2013, 13:25 | Сообщение # 32
почти ветеран
Сейчас нет на сайте
Можно из без ANGLE обойтись (сперва мне тоже так хотелось сделать, пока в тему не в ехал), если так очень хочется, но код всё равно будет тот же. Archido, если тебе это решение не нравиться или оно для твоего проекта/ов не подходит. это не значит что этот инструмент плохой.

Мои проекты:
- Свободный и открытый клон World Of Goo
- TrueEngine2D (2D игровой фреймворк основанный на FreeBASIC)

[GameMaker: Studio v1.4.9999]
ArchidoДата: Среда, 05 Июня 2013, 14:02 | Сообщение # 33
Сэнсэй
Сейчас нет на сайте
Цитата (OpenGOO)
если тебе это решение не нравиться или оно для твоего проекта/ов не подходит. это не значит что этот инструмент плохой.

Так я и не говорил, что инструмент плохой smile , я сказал лишь, что трансляция OpenGL ES 2 -> DX 9 - костыль. Ну и QtOpenGL - для меня не "современная реальность", тут уж на вкус и цвет. А вообще уже сильно отошли от темы.


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
GreyGLoomyДата: Среда, 05 Июня 2013, 14:23 | Сообщение # 34
частый гость
Сейчас нет на сайте
Цитата (Archido)
А вообще уже сильно отошли от темы

дык темку можно и закрыть smile .Уже решил что OpenGL.
OpenGOOДата: Среда, 05 Июня 2013, 14:48 | Сообщение # 35
почти ветеран
Сейчас нет на сайте
Цитата (Archido)
я сказал лишь, что трансляция OpenGL ES 2 -> DX 9 - костыль

Тебе явно не понятно что такое API.


Мои проекты:
- Свободный и открытый клон World Of Goo
- TrueEngine2D (2D игровой фреймворк основанный на FreeBASIC)

[GameMaker: Studio v1.4.9999]
ArchidoДата: Среда, 05 Июня 2013, 15:15 | Сообщение # 36
Сэнсэй
Сейчас нет на сайте
Цитата (OpenGOO)
Тебе явно не понятно что такое API.

Ну главное, что тебе понятно.


C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
OpenGOOДата: Среда, 05 Июня 2013, 18:10 | Сообщение # 37
почти ветеран
Сейчас нет на сайте
Цитата (GreyGLoomy)
дык темку можно и закрыть .Уже решил что OpenGL.

Если всё таки выбрал OpenGL вот тебе информация по Modern OpenGL а то у нас доминирует информация по Legacy OpenGL 1.x


Мои проекты:
- Свободный и открытый клон World Of Goo
- TrueEngine2D (2D игровой фреймворк основанный на FreeBASIC)

[GameMaker: Studio v1.4.9999]
GreyGLoomyДата: Среда, 05 Июня 2013, 18:38 | Сообщение # 38
частый гость
Сейчас нет на сайте
Цитата (OpenGOO)
Если всё таки выбрал OpenGL вот тебе информация по Modern OpenGL а то у нас доминирует информация по Legacy OpenGL 1.x

спасибо smile .Почитаю на досуге happy
XakepДата: Среда, 05 Июня 2013, 19:32 | Сообщение # 39
めちゃくちゃちゃ
Сейчас нет на сайте
Цитата (OpenGOO)
Carmack: Direct3D is now better than OpenGL

Жалко, он мне очень нравился тем, что использует OpenGL. Вообще фигню пишет там.
вот еще почитай, хорошие уроки: http://www.opengl-tutorial.org/
с шейдерами научишься работать хорошо, потому-что там все старые инструкции с glPushMatrix и прочим убираются, и используются шейдеры, текстурование тоже через шейдеры, но при этом поддерживается OpenGL 2.2. и с OpenGL 3 и выше, будет проще работать.
GreyGLoomyДата: Среда, 05 Июня 2013, 21:16 | Сообщение # 40
частый гость
Сейчас нет на сайте
Цитата (Xakep)
http://www.opengl-tutorial.org/

Интересная страница happy .Тоже на заметку возьму smile
Форум игроделов » Программирование » C/C++ » На чём писать-DX vs OpenGL (Прошу посоветовать мне одно из них.)
  • Страница 2 из 3
  • «
  • 1
  • 2
  • 3
  • »
Поиск:

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