![]() |
|
Модераторы: Rickert, Alexeis, BorisVorontsov |
![]()
|
|
| russians |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 297 Регистрация: 6.11.2006 Репутация: нет Всего: нет |
При передвижении источника освещения:
float frot = -GetTickCount() * PI/3000.0f; GLfloat lightpos[] = {5.0f*cosf(frot), 10.0f, sinf(frot), 0.0f}; освещение идёт рывками, то есть идёт конвертация в int. Как это дело исправить? |
|||
|
||||
| Rickert |
|
|||
|
Ситхи не пройдут! ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3356 Регистрация: 11.7.2006 Где: Лакрима Репутация: 2 Всего: 52 |
russians, юморист блин 8) Ты как в радианты переводишь, двоешник? Нужно умножать на Пи и делить на 180, а не на 3000
-------------------- Ни что не внушает сна крепче, чем день приисполненный трудов! |
|||
|
||||
| russians |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 297 Регистрация: 6.11.2006 Репутация: нет Всего: нет |
Стараюсь, что делать
Но всё равно обрывы в освещении, кусками идёт... |
|||
|
||||
| russians |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 297 Регистрация: 6.11.2006 Репутация: нет Всего: нет |
И почему прыгает скачками, а не плавно? |
|||
|
||||
| russians |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 297 Регистрация: 6.11.2006 Репутация: нет Всего: нет |
Господа, я уже устал выводить сообщение на первые ряды
(Модератора прошу объединить сообщения в одно) |
|||
|
||||
| Rickert |
|
|||
|
Ситхи не пройдут! ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3356 Регистрация: 11.7.2006 Где: Лакрима Репутация: 2 Всего: 52 |
А ты enable свету делаешь вообще?
-------------------- Ни что не внушает сна крепче, чем день приисполненный трудов! |
|||
|
||||
| russians |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 297 Регистрация: 6.11.2006 Репутация: нет Всего: нет |
А як же:
|
|||
|
||||
| russians |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 297 Регистрация: 6.11.2006 Репутация: нет Всего: нет |
Господа!!!
|
|||
|
||||
| russians |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 297 Регистрация: 6.11.2006 Репутация: нет Всего: нет |
Дело срочное, мне завтра это сдавать надо, неужели никто не может помочь?
Вот код целиком: Это сообщение отредактировал(а) russians - 25.12.2006, 11:54 Присоединённый файл ( Кол-во скачиваний: 2 )
detravrash.cpp 13,87 Kb |
|||
|
||||
| russians |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 297 Регистрация: 6.11.2006 Репутация: нет Всего: нет |
Ладно, всё уже поправил сам, Rickert, насчёт float frot = -GetTickCount() * PI/(float)(n)) неправ был, n регулирует здесь скорость вращения вокруг эллипса, поэтому с двоечником зря
float frot = -((float)GetTickCount()) * PI/1000.0f... |
|||
|
||||
| Rickert |
|
|||
|
Ситхи не пройдут! ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3356 Регистрация: 11.7.2006 Где: Лакрима Репутация: 2 Всего: 52 |
russians, ты о чём гвооришь!!!!!!!!!!!!!! Это как в одной строне что-ли взяли и округлили число Пи до 4 ?
Это, блин, монументальный закон! Чтобы перевести градусы в радианы, надо умножить на Пи и разделить на 180 градусов! А вот потом уже можешь делить хоть на сколько. Погрешности выйдут боком -------------------- Ни что не внушает сна крепче, чем день приисполненный трудов! |
|||
|
||||
| russians |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 297 Регистрация: 6.11.2006 Репутация: нет Всего: нет |
Поизменяй значения в исходнике:
float frot = -((float)GetTickCount()) * PI/1000.0f; На 180 источник света будет бешено вращаться вокруг детали. На 1000 плавно обходит траекторию. Это сообщение отредактировал(а) russians - 1.1.2007, 21:17 Присоединённый файл ( Кол-во скачиваний: 4 )
detravrash.cpp 15,74 Kb |
|||
|
||||
| Rickert |
|
|||
|
Ситхи не пройдут! ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3356 Регистрация: 11.7.2006 Где: Лакрима Репутация: 2 Всего: 52 |
russians, Так есесно, угол меньше сделай. И вообще - поставь зависимость от интервала вращения. Мол за 1 сек. - проходит 360 градусов. На самом деле, твой код будет по-разному работать на разных машинах - тактовая частота-то разная
-------------------- Ни что не внушает сна крепче, чем день приисполненный трудов! |
|||
|
||||
| russians |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 297 Регистрация: 6.11.2006 Репутация: нет Всего: нет |
Кстати, там один трабл есть (до сих пор), после выхода из программы её тело зависает в памяти, хз почему. Приходится через диспечер задач вручную удалять.
|
|||
|
||||
| Rickert |
|
|||
|
Ситхи не пройдут! ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3356 Регистрация: 11.7.2006 Где: Лакрима Репутация: 2 Всего: 52 |
russians, А как ты "выходишь"?
-------------------- Ни что не внушает сна крепче, чем день приисполненный трудов! |
|||
|
||||
![]()
|
| Вы можете найти полезным что... | |
|
|
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Мультимедия, OpenGL/DirectX | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |