![]() |
|
|
![]()
|
|
| NPLana |
|
||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 62 Регистрация: 13.5.2005 Где: СПб Репутация: нет Всего: нет |
всем привет!
помогите разобраться с прогой...суть - натягивание на сферу текстуры земли. мне надо сделать это на билдере. привожу текст своей программы. в ней пока лишь попытка создать сферу... о натягивании сферы пока молчу... кстати речь идет об opengl было бы здорово, если бы кто-нибудь указал на ошибку именно в этом коде, а не отправлял в хелп....
|
||||
|
|||||
| PPS05 |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 262 Регистрация: 6.11.2005 Где: Беларусь, Минск Репутация: нет Всего: 7 |
Строки 102 и 110: утверждать не буду, но по-моему BeginPaint и EndPaint не нужны. Я всегда писал без них и всё рисовалось.
Строка 103: попробуй поставить перед ней
...а после неё
P.S. Сферу можно рисовать и без создания списка (стр. 64) прямо вместо glCallList -------------------- Ушел с форума и не вернулся. |
||||
|
|||||
| NPLana |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 62 Регистрация: 13.5.2005 Где: СПб Репутация: нет Всего: нет |
не рисуется
|
|||
|
||||
| PPS05 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 262 Регистрация: 6.11.2005 Где: Беларусь, Минск Репутация: нет Всего: 7 |
1. (Главная ошибка) В строке 67 после идентификатора функции нет круглых скобок:
glEndList(); Поэтому функция не вызывается, а компилятор её просто игнорирует (таким же образом можно написать имя переменной - ошибки не будет). 2. В обработчике OnResize ты меняешь ClientWidth и ClientHeight, т.е. размеры формы, поэтому OnResize вызыватся циклически ещё 1 раз. 3. Строки 102 и 110 действительно не нужны. 4. Строки 91-97: будет красивее, если напишешь:
Если и после этого не будет работать, пиши: [email protected], я вышлю исходники(я отладил - всё работало). -------------------- Ушел с форума и не вернулся. |
|||
|
||||
| NPLana |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 62 Регистрация: 13.5.2005 Где: СПб Репутация: нет Всего: нет |
спасибо!!!! действительно дело было в каких-то скобках.... теперь бы наложить текстуру.... к тому же большую - изображение 1024х512...
там у меня был вызов функции PrepareImage("earth.bmp"); - с 65 есть для этих целей код на дельфи.. только вот никак корректно не переписать на си...
Это сообщение отредактировал(а) NPLana - 8.11.2005, 23:52 |
|||
|
||||
| PPS05 |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 262 Регистрация: 6.11.2005 Где: Беларусь, Минск Репутация: нет Всего: 7 |
Можно проще (скорей - понятней):
Поясню: FileName - .bmp файл с текстурой W - ширина текстуры H - высота W и H должны быть объявлены как const, т.е.
Чтбы читать текстуры любого размера, придётся отводить память для pixels динамически, но в данном случае это просто не нужно. -------------------- Ушел с форума и не вернулся. |
||||
|
|||||
| NPLana |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 62 Регистрация: 13.5.2005 Где: СПб Репутация: нет Всего: нет |
добавила этот код в функцию PrepareImage, соотвественно раскомметировала строку 65 с вызовом ее.... не пашет!!!:((( пишет :
Project ... faulted witk message: 'access violation at 0x7c90eddc: write of address 0x00030fec'.... |
|||
|
||||
| PPS05 |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 262 Регистрация: 6.11.2005 Где: Беларусь, Минск Репутация: нет Всего: 7 |
У меня тоже такое было, пока BeginPaint/EndPaint не убрал.
Приведу полный текст работающей программы (на всякий случай). В качестве текстуры брал bmp-файл 1024x512. На форме Form1: PView : TPanel Timer1 : TTimer (Interval = 1000) Unit1.cpp:
Unit1.h:
-------------------- Ушел с форума и не вернулся. |
||||
|
|||||
| NPLana |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 62 Регистрация: 13.5.2005 Где: СПб Репутация: нет Всего: нет |
спасибо огромное!!!!! буду теперь разбираться
|
|||
|
||||
![]()
|
| Правила форума "С++ Builder" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C++ Builder | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |