С Новым годом! Форум программистов, компьютерный форум, киберфорум
Программирование графики
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
85 / 77 / 13
Регистрация: 03.09.2009
Сообщений: 346

Tao Framework - глюки изображения (C#)

21.05.2010, 18:45. Показов 2318. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет, знатоки, подскажите: Использую Tao Framework для вывода 2Д графики. На большинстве компов все работает нормально, но на 2-х ноутбуках со встроенными видяхами наблюдается дерганье картинки, как будто на долю секунды появляется старое изображение, а потом новое. Причем часто бывает так, что новое и совсем не появляется, а мелькнув туда-сюда так и остается старое.
Такая фигня происходит не только при рисовании но даже если просто поменять размер окна.

Добавлено через 2 часа 6 минут
Похоже проблема все-таки у меня в коде, т.к. родная демка из TaoFramework работает нормально. Но в демке само окно вывода графики создается в коде + минимум коментариев. Мало что понятно. А я использую компонент SimpleOpenGLControl.

Мой код отрисовки, взятый из инета:

Выполняется один раз при загрузке формы:
C#
1
2
3
4
5
// инициализация библиотеки GLUT
Glut.glutInit();
 
// инициализация режима окна
Glut.glutInitDisplayMode(Glut.GLUT_RGB | Glut.GLUT_DOUBLE | Glut.GLUT_DEPTH);
Выполняется каждый раз при перерисовке изображения:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
// устанавливаем порт вывода, основываясь на размерах элемента управления AnT(SimpleOpenGLControl)
Gl.glViewport(0, 0, AnT.Width, AnT.Height);
 
// устанавливаем проекционную матрицу
Gl.glMatrixMode(Gl.GL_PROJECTION);
// очищаем ее
Gl.glLoadIdentity();
 
// теперь необходимо корректно настроить 2D ортогональную проекцию
Glu.gluOrtho2D(0.0, (float)AnT.Width, 0.0, (float)AnT.Height);
 
// переходим к объектно-видовой матрице
Gl.glMatrixMode(Gl.GL_MODELVIEW);
 
// очищаем буфер цвета
Gl.glClear(Gl.GL_COLOR_BUFFER_BIT);
 
// очищаем текущую матрицу
Gl.glLoadIdentity();
 
...
... Здесь идет рисование
...
 
Gl.glFlush();
// посылаем сигнал перерисовки элемента AnT.
AnT.Invalidate();
Код вызывает вышеописанные глюки (что-то связанное в неправильным переключением буферов ренднринга наверное). Подскажите, как правильно организовать вывод графики в SimpleOpenGLControl.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
21.05.2010, 18:45
Ответы с готовыми решениями:

Как использовать Tao Framework?
Привет, народ! Пытаюсь освоить кроссплатформенное программирование средствами mono. Консольные приложения писал - работают и в Windows и...

Tao Framework :Мерцание картинки
Добрый день Проект WindowsForms ,язык C#, библиотека taoframework-2.1.0 При движении формы на который установлен элемент...

glColor в C# & Tao Framework
Есть вот такой код на C# с использованием Tao Framework. Он успешно рисует черную сферу на белом фоне, но если раскомментировать строчку...

2
85 / 77 / 13
Регистрация: 03.09.2009
Сообщений: 346
22.05.2010, 23:29  [ТС]
Лучший ответ Сообщение было отмечено SatanaXIII как решение

Решение

Вроде разобрался в глюках, которые были обусловлены не знанием процесса рисования картинки через буфер.

А есть ли возможность рисовать картинку сразу на экран, без использования буферизации? Наверняка есть соответствующий режим.
0
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
07.08.2017, 16:25
Цитата Сообщение от SergBokh Посмотреть сообщение
А есть ли возможность рисовать картинку сразу на экран, без использования буферизации?
Нет. Таков принцип работы OpenGL.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
07.08.2017, 16:25
Помогаю со студенческими работами здесь

Tao framework полосы на экране
На скрине все видно, если надо скину код. https://www.cyberforum.ru/attachment.php?attachmentid=1036689&stc=1&d=1557385294

Инициализация tao framework c++ windows forms
Как инициализировать tao framework в с++ windows forms?

Tao Framework, OpenGl, FreeGlut ( Моделирование сферы )
Всем привет!!! Решил попробовать спрограммировать сферу. Но выскакивает ошибка: Не удается загрузить DLL "freeglut.dll":...

Tao Framework
я хочу сделать OpenGL приложение на C#, читаю уроки Esate, сделал все как тут написано, установил Tao Framework, выбрал библиотеки, добавил...

Tao Framework
Установил искомую библиотеку для работы с OpenGL. Библиотеки естественно находятся в папке фреймворка. можно ли как то зарегистрировать...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
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 с разными данными.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru