#1
16 мая 2011 в 17:32
Раскопал отвратительный баг ATI, проявляется на каталистах 10.* и 11.* (возможно и на прочих). Раньше вроде этого не наблюдалось.<br />Замечено на:<br />- q2bers (не работает отбрасывание загороженных объектов, следовательно fps ниже, чем мог быть)<br />- q3bers (солнце светит сквозь потолки-стены и даже из пределов экрана)<br />- quake2xp и darkplaces (флаеры светят через стены)<br />- дёмка http://www.codesampler.com/source/ogl_occlusion_query_arb.zip (показывает ненулевое количество фрагментов полностью загороженного объекта).<br />На GeForce работает чётко как часы.<br /><br />Если объект полностью загорожен, occlusion query возвращает ненулевое число, в моём случае - 84. Откуда эта константа взялась, хотел бы допросить каталисто-писателей. >:(<br />Попробовал написать обход, опишу алгоритм, может кто расширит идею:<br />после инициализации расширений делаем пару тестовых кадров: сначала рисуем заведомо невидимый квадрат, на втором кадре читаем результат query. Если получим 0, то драйвер хороший, если не 0, то это баг. Сохраняем это ненулевое число для коррекции получаемых через query значений.<br />Сделал на q3bers, но случилась следующая вата: солнце стало отбрасываться как и должно, но всё-же изредка подмигивает сквозь потолок >:( собака млин.<br />Вывод: может это catalist AI шутки шутит? Придется отказаться от occlusion query на ATI.
#2
17 мая 2011 в 17:09
Написал на форум разработчиков AMD:<br />http://forums.amd.com/devforum/messageview.cfm?catid=392&threadid=150631&enterthread=y<br />Написал на форум OpenGL:<br />http://www.opengl.org/discussion_boards/ubbthreads.php?ubb=showflat&Number=297524#Post297524<br />Написал в службу техподдержки AMD. Жду ответа.<br /><br />Поставил хот фикс 11.5a, не помогло. Всё так же возвращает 84.<br />Вот картинка, демонстрирующая отсутствие логики в поведении query:<br />
#3
17 мая 2011 в 21:18
у меня так:<br /><br /><br />видео HD 5670, дрова 11.2
#4
18 мая 2011 в 02:36
на старом HD4670 тоже нормально работало, не помню правда, какие дрова были ???<br />Ну ладно, есть надежда что не всё потеряно, квери - полезная фича.
#5
20 мая 2011 в 15:13
Поставил Win7 x64 Ultimate и Cat 11.5, бестолку, баг остался :'(<br />Остаётся только общение со службой тех.поддержки ATI
#6
20 мая 2011 в 18:01
Вот иногда думаю,на кой х... подарил такую видюху,вроде из благих побуждений и вроде видюха неплохая,а человек мучается :-\.
#7
21 мая 2011 в 13:55
Вот иногда думаю,на кой х... подарил такую видюху,вроде из благих побуждений и вроде видюха неплохая,а человек мучается<br />Видяха отличная, быстрая. Утешает то, что баг замечен только у меня. К тому же, возможно саппорт АМД поможет разобраться.
#8
09 июля 2011 в 14:44
ATI-шники баг признали и исправили (с их слов, пока не проверил).<br />http://forums.amd.com/devforum/messageview.cfm?catid=392&threadid=150631&enterthread=y<br />http://www.opengl.org/discussion_boards/ubbthreads.php?ubb=showflat&Number=297521&#Post297521
#9
09 июля 2011 в 15:21
Ну хоть что-то хорошее,хотя это пока их слова.Пусть дровульки дают.<br />2БерсеркерТы им пригрози скорой расправой в нашем лице,если не сотворят - квакеры народ злой и нервный,и придёт с топорами,блястерами и "варежками"-болгарками,или чем по тяжелее,и порвёт на с...ные тряпки и грелки ;D
#10
18 августа 2011 в 16:45
ATI наконец таки исправили вышеуказанный баг в Каталисте 11.8, вышедшем вчера.<br />GL_Occlusion_query работает как должно,<br />солнце в q3bers, фларезы в q2xp не глючат,<br />отбрасывание ентити за стеной в q2bers тоже работает!<br /> 8)