![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| dauster |
|
|||
|
Unregistered |
Я пишу программу в среде MSVC++ 7.0 .NET с использованием библиотек OpenGL. Конечно, я знаком с функциями OpenGL типа glRotate(x) и glTranslate(x). Однако, недавно столкнулся с труднорешаемой проблемой: представьте себе упрощенную ситуацию - в окне изображается цилинд в вертикальном положении. Этот цилиндр планируется вращать мышкой. При вращении влево-вправо цилиндр стоит на месте - и это понятно (ведь он крутиться вокруг также расположенной вертикально оси). Дергаем мышой вниз/вверх - цилиндр поворачивается к нам своим основанием...а теперь снова совершаем мышой горизонтальные перемещения, надеясь, что цилиндр наконец-то начнет вращаться и это будет заметно в горизонтальном направлении - ничего подобного! Ведь с применением команд типа glRotate мы вращаем не сам объект, а матрицу преобразований к его вершинам! То есть что - если мне надо правильно вращать этот долбаный цилиндр, то неужели надо писать код, который непосредственно будет преобразовывать объект, а не матрицу преобразований
P.S. Насколько я понимаю - код преобразования объекта написанный мной самостоятельно будет грузить проц компа, а так бы хотелось всю рутину спихнуть на GPU видеокарточки..... |
|||
|
||||
| Coocky |
|
|||
![]() GUI гуру ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2879 Регистрация: 16.2.2004 Где: Украина. Запорожь е Репутация: 2 Всего: 62 |
-------------------- Верю в смерть после жизни, в любовь после секса ,в крем после бритья |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |