Я собираюсь начать внедрение OpenGL 3 в свое приложение. В настоящее время я использую OpenGL 1.1, но я хотел сохранить некоторые из них из-за проблем, если я попытаюсь изменить код, но я хотел изменить часть своего кода на более быструю версию OpenGL. Если я делаю что-то вроде текстур связывания в OpenGL 1.1, могу ли я нарисовать текстуру в OpenGL 3?Можно ли смешивать версии OpenGL?
ответ
Omg .. opengl 1.1 is from 1997! Сделайте себе одолжение и избавитесь от материала трубопровода с фиксированной функцией и приспособитесь к OpenGL 4.x. Однако вы можете попробовать #version 420 core
в вашем шейдере.
Смешивание версий OpenGL не так просто, как раньше. В OpenGL 3.0 многие старые функции были отмечены как «устаревшие» и были удалены в 3.1. Однако, поскольку OpenGL 3.2 существует два профиля: Core и Совместимость. Контекст OpenGL создается в отношении такого профиля. В профиле совместимости все устаревшие (и удаленные профили ядра) все еще доступны, и их также можно смешивать. Вы даже можете смешивать пользовательский вершинный шейдер с обработкой фрагмента фиксированной функции или наоборот.
Проблема заключается в том, что не требуется, чтобы разработчики фактически обеспечивали поддержку профиля совместимости. В MacOS X OpenGL 3.x и 4.x поддерживаются только в основном профиле.
В вашем конкретном примере связывание текстур будет работать во всех случаях, поскольку эта функция немодифицирована во всех версиях от 1.1 до 4.3 (и, вероятно, это произойдет в ближайшем будущем). Однако большинство ваших вызовов рисования, вероятно, не будут доступны в новых профилях ядра.
- 1. OpenGL: можно ли смешивать glBindBuffer с glBindBufferARB?
- 2. Можно ли смешивать типы данных в буферах в OpenGL (C++)?
- 3. Можно ли использовать OpenGL 1.1?
- 4. Можно ли смешивать TypeScript и CoffeeScript?
- 5. Можно ли смешивать С и С ++ код
- 6. Можно ли смешивать присвоение переменной с условием?
- 7. Можно ли смешивать градиенты с сплошными цветами?
- 8. Можно ли смешивать типы проектов Eclipse?
- 9. Можно ли смешивать TypeScript и ClojureScript
- 10. Можно ли смешивать несколько деклараций/инициализаций?
- 11. Можно ли смешивать C и Swift?
- 12. Можно ли смешивать до вызова конструктора?
- 13. Можно ли смешивать? -Faces в JSF
- 14. Можно ли смешивать количество столбцов в GridView
- 15. Можно ли смешивать JQuery и Javascript?
- 16. Можно ли смешивать SqlConnection.BeginTransaction и TransactionScope?
- 17. Можно ли смешивать и сопоставлять атрибуты rel?
- 18. Можно ли смешивать Unity с UIKit?
- 19. Можно ли смешивать PHP и jQuery?
- 20. Можно ли смешивать AudioServicesPlaySystemSound и AVAudioPlayer?
- 21. OpenGL версии
- 22. Как смешивать цвета в последовательности GL_POINTS, opengl
- 23. Можно ли смешивать обычный OpenGL ES 2.0 с Kobol2D/cocos2d на iOS?
- 24. Dygraphs: можно ли смешивать серии с и без ошибок?
- 25. Допустимо ли смешивать версии http на сайте Drupal?
- 26. Какие версии GLSL можно использовать в OpenGL ES 2.0?
- 27. Можно ли смешивать полученные на C++ классы с Qt Q_OBJECT?
- 28. Можно ли смешивать OnIdiom и OnPlatform в XAML (Xamarin.Forms)?
- 29. Можно ли смешивать реализацию заголовков JNI с обычными классами C++?
- 30. Можно ли смешивать горизонтальные и вертикальные блоки в Java BoxLayout?
OpenGL 4 новее, но я беспокоюсь, что это слишком ново. –
Что беспокоит ваш сладкий ум? – dinony
Мой ноутбук всего 1 год и только ручки 3.0: P. Я никогда не смогу развиваться с помощью 3.1 + –