crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

2 страниц V   1 2 >  
Тема закрытаНачать новую тему
> Проблема с QTopengl
voipp
  опции профиля:
сообщение 6.2.2011, 2:59
Сообщение #1


Участник
**

Группа: Участник
Сообщений: 116
Регистрация: 20.10.2009
Из: Msk
Пользователь №: 1166

Спасибо сказали: 0 раз(а)




Репутация:   0  


Вообщем в функции построения графика есть цикл.Этот цикл содержит функцию рисующую трегольники:
Раскрывающийся текст

void MainWindow::setTriangle(CVector a, CVector b, CVector c/*,QColor *color*/){
glBegin(GL_TRIANGLES);

glVertex3f(a[0],a[1],a[2]);


glVertex3f(b[0],b[1],b[2]);

glVertex3f(c[0],c[1],c[2]);

glEnd();
}

Ошибка выскакивает как раз из-за тела этой функции, точнее из-за a[0],a[1],.......c[1],c[2], потому что если вместо них поставить числа то бага исчезнет.Помогите разобраться что за чудеса!Ошибка без каких либо пояснений.И происходит она строго когда цикл долгий.
PS.Все a,b,c содержат верные значения и их размер удовлетворяет всем условиям
Вот код кому интересно:мой курсач
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Алексей1153
  опции профиля:
сообщение 6.2.2011, 11:49
Сообщение #2


фрилансер
******

Группа: Участник
Сообщений: 2941
Регистрация: 19.6.2010
Из: Обливион
Пользователь №: 1822

Спасибо сказали: 215 раз(а)




Репутация:   34  


voipp,

так поймай в дебаге момент ошибки и погляди значЕния\адресА

или веди лог , а после выпадения проанализируй, что не так
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
voipp
  опции профиля:
сообщение 6.2.2011, 21:50
Сообщение #3


Участник
**

Группа: Участник
Сообщений: 116
Регистрация: 20.10.2009
Из: Msk
Пользователь №: 1166

Спасибо сказали: 0 раз(а)




Репутация:   0  


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

Сообщение отредактировал voipp - 6.2.2011, 21:58
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
voipp
  опции профиля:
сообщение 6.2.2011, 23:59
Сообщение #4


Участник
**

Группа: Участник
Сообщений: 116
Регистрация: 20.10.2009
Из: Msk
Пользователь №: 1166

Спасибо сказали: 0 раз(а)




Репутация:   0  


ошибка кроется в выборе примитива для отрисовки в glBegin.Если рисовать точки то все нормально работает, а если polygon или triangles то ошибка
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Алексей1153
  опции профиля:
сообщение 7.2.2011, 8:11
Сообщение #5


фрилансер
******

Группа: Участник
Сообщений: 2941
Регистрация: 19.6.2010
Из: Обливион
Пользователь №: 1822

Спасибо сказали: 215 раз(а)




Репутация:   34  


а в дебаге ловить момент пробовал ?

Цитата(voipp @ 7.2.2011, 1:59) *
а если polygon или triangles то ошибка

какая-нибудь ошибка в выборе типа цвета, альфаканалов

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

Сообщение отредактировал Алексей1153 - 7.2.2011, 8:09
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
voipp
  опции профиля:
сообщение 8.2.2011, 1:42
Сообщение #6


Участник
**

Группа: Участник
Сообщений: 116
Регистрация: 20.10.2009
Из: Msk
Пользователь №: 1166

Спасибо сказали: 0 раз(а)




Репутация:   0  


все нашел багу.Всем спасибо за подсказки
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Алексей1153
  опции профиля:
сообщение 8.2.2011, 7:51
Сообщение #7


фрилансер
******

Группа: Участник
Сообщений: 2941
Регистрация: 19.6.2010
Из: Обливион
Пользователь №: 1822

Спасибо сказали: 215 раз(а)




Репутация:   34  


voipp, так что там было то ?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
voipp
  опции профиля:
сообщение 8.2.2011, 23:34
Сообщение #8


Участник
**

Группа: Участник
Сообщений: 116
Регистрация: 20.10.2009
Из: Msk
Пользователь №: 1166

Спасибо сказали: 0 раз(а)




Репутация:   0  


неправильно напсиал цикл - перепутал индексы

чтобы не создавать заново тему задам здесь глупый вопрос. Зачем нужна опция INCLUDEPATH если есть - HEADERS!
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Алексей1153
  опции профиля:
сообщение 8.2.2011, 23:56
Сообщение #9


фрилансер
******

Группа: Участник
Сообщений: 2941
Регистрация: 19.6.2010
Из: Обливион
Пользователь №: 1822

Спасибо сказали: 215 раз(а)




Репутация:   34  


а чем отличается путь к файлу от самого файла ? :)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
voipp
  опции профиля:
сообщение 9.2.2011, 0:25
Сообщение #10


Участник
**

Группа: Участник
Сообщений: 116
Регистрация: 20.10.2009
Из: Msk
Пользователь №: 1166

Спасибо сказали: 0 раз(а)




Репутация:   0  


HEADERS - определяет хидеры, которые я использую в проекте.
INCLUDEPATH - определяет путь к папке где эти хидеры лежат.
Меня интересует: какие могут быть случаи, когда вместо исопльзования HEADERS необходимо использовать INCLUDEPATH ?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

2 страниц V   1 2 >
Тема закрытаНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 30.12.2024, 21:01