Войти
ПроектыФорумУтилиты

Космический симулятор SpaceEngine (67 стр)

Advanced: Тема повышенной сложности или важная.

Страницы: 166 67 68 69215 Следующая »
#990
12:14, 30 дек. 2010

Neptune
а баг какого рода?
вообще такое поведение обычно бывает когда что то с памятью не так делаешь.
Если есть примерное представление где это происходит то там уже можно что то делать.
Например если это может быть неправильная работа с локальными переменными функции (там выход за пределы массива или засирание чужой памяти переменной в стеке) то можно например в этой функции после каждой объявленной переменно объявить по массиву ну и посмотреть помогло/нет. (смысл сего безобразия: если там одна локальная переменная портит стек, то объявление массива после неё создаст ей некий буфер, куда можно гадить) :) (при запуске из под студии память распределяется по другому, чем из чистого запуска, и поэтому проблема может не проявляться)

Ну ну может быть проблема с переменными окружения. которые при запуске из под студии и не из под неё разные, если у тебя на них что нибудь завязано.

Ну а вообще тут конечно надо смотреть конкретный случай какого то общего совета на такой вопрос вряд ли можно дать... :)


#991
13:59, 30 дек. 2010

Лог не помогает, потому что GL работает асинхрнно, а падает что-то в нём. Короче баг такой: если полетать над планетой до заполнения кэша текстур и геометрии (640 из 1024 Мб оперативы видеокарты), дальнейший полёт по-идее должен приводить к удалению старых блоков ландшафта для освобождения памяти. Но при этом вновь сгенеренные блоки как-то странно себя ведут - текстуры генерятся нормально, а в vbo попадают какие-то рандомные значения, в итоге планета "взрывается", а через некоторое время прога крашится. Утечек памяти и переполнения массивов нет, правда проверить это можно только в дебаге или в дебаг компиляции, а там этот баг не возникает.

#992
14:15, 30 дек. 2010

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

#993
14:45, 30 дек. 2010

Neptune
> потому что GL работает асинхрнно
поставь в нужные места glFlush :)

> а в vbo попадают какие-то рандомные значения,
какие-то непонятки, ты опиши что, конкретно, делаешь и что, конкретно, не работает

чисто конкретно так сказать :)

#994
16:27, 30 дек. 2010

Neptune
Можно еще выводить на экран ключевые переменные, ну которые могут отвечать за нужный фрагмент (указатели, счётчики, адреса памяти и т.д.)
А во время просмотра пользуйся прогой для видео захвата. (если есть шанс неуспеть за фиксацией показаний).
З.Ы. Всё таки идея с лог файлом хороашая мысль...

#995
18:12, 30 дек. 2010

Neptune
не инициализируешь переменную где-то либо баг с синхронизацией потоков

#996
20:04, 30 дек. 2010

у меня 1000 чный пост

#997
21:02, 30 дек. 2010

Попробую просто откатиться до одной из предыдущих версий, когда этого бага еще не было, и посмотреть, чего я такого сделал нового. Вот блин, хотел к новому году выложить демку, теперь похоже не успею:)
serpin
Движок однопоточный, загрузка текстур происходит между кадрами. Мультитрединг есть, но страшно глючит, пока некогда разбираться...

#998
21:22, 30 дек. 2010

Neptune
> Вот блин, хотел к новому году выложить демку, теперь похоже не успею:)
Delta_Q - post № 998

http://www.gamedev.ru/gamedesign/forum/?id=124719&page=25

#999
18:50, 31 дек. 2010

Какая-то фигня... Удаляются некоторые индексные буфферы (glIsBuffer выдает false), поэтому планету раскорячивает. Но индексные буфферы создаются один раз при загрузке, а удалются при выходе из проги, во время работы используются только для рендера...
На  ATI вообще почти сразу выдаёт GL_OUT_OF_MEMORY, хотя занято всего 300 меторв из 1024.

ЗЫ: С наступающим! :)

#1000
21:10, 31 дек. 2010

и тебя с наступающим :)

#1001
3:20, 1 янв. 2011

С наступившим! :)
ЗЫ: баг исправил)))

#1002
3:42, 1 янв. 2011

Люди водку пьянствуют, а он баги исправляет. С новым годом Нептун !

#1003
4:03, 1 янв. 2011

Баг был исправлен ещё в прошлом году:))

#1004
17:04, 1 янв. 2011

что хоть за баг то был? :)

Страницы: 166 67 68 69215 Следующая »
ПроектыФорумУтилиты