|
0 / 0 / 0
Регистрация: 11.03.2019
Сообщений: 35
|
|||||||||||
RAD XE3+ Как с помощью OpenGL рисовать на TBitmap?11.03.2019, 19:29. Показов 4044. Ответов 8
Доброго времени суток. Может кому то покажется поставленный ниже вопрос глупым, но я на него нормального ответа не нашел.
Использую Delphi XE, как рисовать с помощью OpenGL на TBitmap? Везде все выводят сразу прямиком на форму, но также заикаются и про tbitmap, но используют только для захвата картинок из bmp. Максимум что я смог добиться это раскрашивание фона bitmap. Также смотрел пару уроков для новичков использование OpenGL, и также просмотрел книгу Краснова, пытался повторить все что они там делают и также на Форме (Пример ссылки: http://thedelphi.ru/les-opengl.php ), но так же дальше раскраски фона не ушло. Задача, есть очень много разных объектов(точки, треугольники, квадраты, круги, полилинии и т.д.) доходит их число до 500 млн. и бывает даже больше использования обычной отрисовки через canvas даже в буфере на bitmap, а потом переносится на Image, рисует очень долго, было решение использовать OpenGL, но как то ничего не получается. Код попыток вывести на bitmap делаю так:
0
|
|||||||||||
| 11.03.2019, 19:29 | |
|
Ответы с готовыми решениями:
8
Как рисовать в С++ средствами OpenGL
|
|
4189 / 1837 / 220
Регистрация: 06.10.2010
Сообщений: 4,124
|
|||||||||||
| 12.03.2019, 07:45 | |||||||||||
|
Попробуй перед рисованием отключить проверку глубины
Видимо это лишнее
0
|
|||||||||||
|
0 / 0 / 0
Регистрация: 11.03.2019
Сообщений: 35
|
|||
| 12.03.2019, 09:44 [ТС] | |||
|
murderer
Я наткнулся на то как люди работают с библиотекой не openGL, а с dglOpenGL, опробовал, она работает только с формой, с bitmap она не работает. У меня в проекте огромное количество компонент, разного взаимодействующего кода, заходит за 100 тыс строк. Хочется избежать от перевода рисования на форму, а сделать все через bitmap. Или bitmap для openGL, это плохая идея?
0
|
|||
|
4189 / 1837 / 220
Регистрация: 06.10.2010
Сообщений: 4,124
|
||||||
| 12.03.2019, 14:21 | ||||||
Сообщение было отмечено Jomaxplayer как решение
Решение
Вот слепил из твоего кода нечто рабочее (система координат приведена к привычному виду при помощи gltranslatef и glscalef).
1
|
||||||
|
0 / 0 / 0
Регистрация: 11.03.2019
Сообщений: 35
|
||||||||||||||||
| 12.03.2019, 16:27 [ТС] | ||||||||||||||||
|
murderer
Блин огромное тебе спасибо, скажи пожалуйста, что ты сделал? В ручную сделал палитру а не в функции как у меня, какие то другие параметры указал?
0
|
||||||||||||||||
|
4189 / 1837 / 220
Регистрация: 06.10.2010
Сообщений: 4,124
|
|
| 13.03.2019, 03:57 | |
|
По умолчанию система координат такая
Координаты изменяются от -1 до 1, ось y направлена снизу вверх.
0
|
|
|
4189 / 1837 / 220
Регистрация: 06.10.2010
Сообщений: 4,124
|
|
| 13.03.2019, 04:05 | |
|
Я привёл к такому виду
Но это не значит, что так нужно делать всегда. Система координат выбирается в соответствии с поставленной задачей.
0
|
|
|
Фриланс Pascal/Delphi etc
67 / 73 / 16
Регистрация: 25.11.2016
Сообщений: 263
|
|
| 13.03.2019, 11:32 | |
|
Рисовани в битмап - уже деприкейтед.
Лучше рисуйте в RenderTarget
0
|
|
|
0 / 0 / 0
Регистрация: 11.03.2019
Сообщений: 35
|
||
| 13.03.2019, 12:03 [ТС] | ||
|
murderer
0
|
||
| 13.03.2019, 12:03 | |
|
Помогаю со студенческими работами здесь
9
Как рисовать линию с помощью мыши, не стирая уже нарисованного Как можно рисовать на форме Windows Forms с помощью обычного GDI Рисовать с OpenGL в виджете Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
|
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение.
И на уровне агентов добавится между грибами или бактериями взаимодействий.
До того я пробовал подход через многомерные массивы,. . .
|
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Сочетание глобально распределённой вычислительной мощности и инновационных. . .
|
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Налог на собак: https:/ / **********/ gallery/ V06K53e
Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf
Пост отсюда. . .
|
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop?
Ниже её машинный перевод.
После долгих разбирательств я наконец-то вернула себе. . .
|
|
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод
Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод.
Thinkpad X220 Tablet —. . .
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|