01.12.2006, 13:17 | #121 |
Участник
|
Где связь?
|
|
01.12.2006, 13:28 | #122 |
Участник
|
Был у меня такой косяк. Функции dll меняют внутренние переменные, если вызывать все из одной переменной то работает, а если из разных, то соответственно нет.
Как связано с данным случаем не знаю, но вполне возможно поможет. |
|
01.12.2006, 13:29 | #123 |
Участник
|
Связь - внутри функции SetPixelFormat().
При ее вызове происходит загрузка библиотеки OPENGL32 и сохранение данных в ее контексте. Если библиотека после этого выгружается, то все эти изменения пропадают. При вызове wglCreateContext() вызывается GetPixelFormat(), который не может вернуть данные, постольку поскольку они были удалены при предыдущей выгрузке бибилиотеки. Да и вообще, с точки зрения производительности - одно дело дернуть функцию у уже загруженной библиотеки, другое - открыть файл загрузить его в память, настроить все связи и только после этого вызвать функцию
__________________
Axapta v.3.0 sp5 kr2 |
|
01.12.2006, 13:33 | #124 |
Участник
|
С точки зрения производительности да, но всё остальное не верно. Все нужные данные замечательно сохранены в hDC, iPixelFormat, pfd, такова уж реализация OpenGL, в этом он и удобнее Direct3D.
|
|
01.12.2006, 13:37 | #125 |
Участник
|
Ню-ню
__________________
Axapta v.3.0 sp5 kr2 |
|
01.12.2006, 13:38 | #126 |
Участник
|
Интересно - вы проверили или спорите просто так?
__________________
Axapta v.3.0 sp5 kr2 |
|
|
За это сообщение автора поблагодарили: Lucky13 (1). |
01.12.2006, 13:44 | #127 |
Участник
|
AndyD прав. Хотя бы потому что hDC это всего лишь int, в него ничего нельзя сохранить, это индекс и он просто на что-то ссылается. Когда dll выгружается она это что-то за собой очистить может и hDC потеряет смысл
|
|
01.12.2006, 13:59 | #128 |
MCTS
|
_wglCreateContext.returns(ExtTypes:Word);
а возвращается тип IntPtr, ExtTypes:Word соответствует IntPtr? переделываю классы Dronas |
|
01.12.2006, 14:55 | #129 |
MCTS
|
УРА ЗАРАБОТАЛО (почти).
Выкладываю проект (еще минуту). Контекст получает без проблем и окно закрашивается, осталось причесать функции glEnd и glLoadIdentity Последний раз редактировалось Eldar9x; 01.12.2006 в 14:59. |
|
01.12.2006, 15:03 | #130 |
Участник
|
Ну рад за Вас, во что окрашивается-то?
Конкретнее про исправления раскажи. |
|
01.12.2006, 15:07 | #131 |
MCTS
|
ГОТОВО!!! ВОТ РАБОЧИЙ ПРОЕКТ. ЛЮБУЙТЕСЬ
проверьте и подтвердите его работу на всех компьютерах |
|
|
За это сообщение автора поблагодарили: Viknik (1). |
01.12.2006, 15:14 | #132 |
Участник
|
А выведи pfd ?!
|
|
01.12.2006, 15:14 | #133 |
MCTS
|
так у тебя этот работает или нет?
|
|
01.12.2006, 15:15 | #134 |
Участник
|
Работает, однако.
|
|
01.12.2006, 15:19 | #135 |
Участник
|
Я пробовать не буду, потом попробую свё под твоё переписать, просто ты там классы стандартные правил на сколько я понял, не хочется в систему загонять
Ну и инфу из pfd покажите, ну плиз. |
|
01.12.2006, 15:19 | #136 |
MCTS
|
а зачем? Никаких стандартных классов я не правил. Подредактировал только класс OpenGL, и GDI, качай не боясь Ну сделай сравнение, уж если так страшно за аксапту
Последний раз редактировалось Eldar9x; 01.12.2006 в 15:22. |
|
01.12.2006, 15:21 | #137 |
Участник
|
интересно, что там внутри, только изначальное заполнение как у меня сделай!
|
|
01.12.2006, 15:21 | #138 |
MCTS
|
предлагаю теперь заняться DirectX, шутка ))))))))))
|
|
01.12.2006, 15:25 | #139 |
Участник
|
|
|
01.12.2006, 15:26 | #140 |
MCTS
|
а у меня без проблем... попробуй все поудалять из системы и импортировать проект заново
|
|