|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
14.02.2012, 15:22 | #1 |
Регистрация: 30.01.2011
Сообщений: 8
|
Текстура OpenGL по условию.
Ребят прошу помощи, пишу дипломную работу.
Вопрос следующий: Как реализовать выбор текстуры по условию. Поясню. Имею 2 формы: 1форма - форма настроек ( в этой форме выбирается пример текстуры для фигуры с примером её отображения ) и 2 форма в которой отображается собственно 3д модель. Мне необходимо следующие: Реализовать наложение текстуры на фигуру (форма2) из условия ListBox ( форма1 ), на If не реагирует почему то. Приложен архив с исходниками.. Пожалуйста, помогите разобраться. Зарание спасибо. Последний раз редактировалось DooMik; 14.02.2012 в 15:34. |
15.02.2012, 11:13 | #2 |
Регистрация: 30.01.2011
Сообщений: 8
|
Ребят, что никто не знает ?
|
15.02.2012, 19:58 | #3 |
Негодник
Форумчанин
Регистрация: 10.11.2009
Сообщений: 880
|
Складывается впечатление, что ты копировал код, не понимая как это работает.
Разберись хоть немного. На будущее, используй Код:
Код:
И не скромный вопрос не по делу из-за своего любопытства - Ты где учишься, что такая дипломная работа лёгкая?
Если помог, проси поставить минус. Будь оригинален!
Последний раз редактировалось Rin; 15.02.2012 в 20:02. |
16.02.2012, 00:28 | #4 |
Регистрация: 30.01.2011
Сообщений: 8
|
учусь в техникуме ( г.Тирасполь, Приднестровье ). Это ещё достаточно тяжелая ))) большое спасибо за помощь, то что нужно....
можно сказать что конкретный вопрос стоял в этой строчке wrkPointer :=ReadBitmap(Form1.pathTexture, sWidth, tHeight); |
16.02.2012, 01:26 | #5 | |
Негодник
Форумчанин
Регистрация: 10.11.2009
Сообщений: 880
|
Техникум. Тоже хорошее дело. Но вышку не забудь . Если знаешь англ. и хорошо подготовишься, то можно и в Гарвард на он-лайн обучение НА ХАЛЯВУ.
Цитата:
Если помог, проси поставить минус. Будь оригинален!
Последний раз редактировалось Rin; 16.02.2012 в 01:35. |
|
12.03.2012, 13:19 | #6 |
Негодник
Форумчанин
Регистрация: 10.11.2009
Сообщений: 880
|
glTranslatef отвечает за перемещение объектов по сцене. Прикрутил к исходнику.
На счёт прыжка куба я тебя не совсем понял, глянь сурс - так, не так? На счёт других фигур. Ты все равно юзаешь GLUT , поэтому приведу все фигуры из этого модуля. Код:
Если помог, проси поставить минус. Будь оригинален!
Последний раз редактировалось Rin; 12.03.2012 в 13:39. Причина: Грамматику подправить. |
12.03.2012, 15:02 | #7 |
Регистрация: 30.01.2011
Сообщений: 8
|
Насчёт прыжка вот прикрепил файл, просто диплом немного дорабатывал. Насчёт GLTranslatef тоже так же делал, но сказал препод что да, можно но было бы лучше что бы фигура перемещалась как в скринсейвере "Летающие предметы Windows ", а не как бы по невидимой оси. Думал в этом поможет непосредственно перерисовка фигуры, в частности её координаты, но почему то она стоит на месте как и была... не изменяется положение её ... изменяется положение в GLTranslatef в процедуре FormCreate. вот если как там осуществить её перемещение было бы то что нужно. т.е. я там менял изначальное положение фигуры например не (0,0), а (2,0) и фигура в правой стороне экрана становится. Вот примерно нужно как то так её перемещать, вообще не понимаю как это сделать
|
12.03.2012, 17:16 | #8 |
Негодник
Форумчанин
Регистрация: 10.11.2009
Сообщений: 880
|
Измени названия текстур на цифры с 0 до 9 и исправь присвоение pathTexture новых имён файлов.
Случай 1. Динамическое появление фигуры Добавил глобальную переменную inter_val:byte=22;, в FormCreate дописал randomize; и изменил код процедуры таймера. Код:
Добавил 4 глобальные переменные - x:smallint=0; y:smallint=0; dx:smallint=0.05; dy:smallint=0.05; , заменил код таймера на такой: Код:
И в FormPaint вызываю glTranslatef(x,y,0). Только glTranslatef вызывается до glRotatef , а не наоборот. И напомню, что все преобразования делаются внутри glPushMatrix ----- ---------glPopMatrix.
Если помог, проси поставить минус. Будь оригинален!
|
12.03.2012, 17:16 | #9 |
Негодник
Форумчанин
Регистрация: 10.11.2009
Сообщений: 880
|
Измени названия текстур на цифры с 0 до 9 и исправь присвоение pathTexture новых имён файлов.
Случай 1. Динамическое появление фигуры Добавил глобальную переменную inter_val:byte=22;, в FormCreate дописал randomize; и изменил код процедуры таймера. Код:
Добавил 4 глобальные переменные - x:smallint=0; y:smallint=0; dx:smallint=0.05; dy:smallint=0.05; , заменил код таймера на такой: Код:
И в FormPaint вызываю glTranslatef(x,y,0). Только glTranslatef вызывается до glRotatef , а не наоборот. И напомню, что все преобразования делаются внутри glPushMatrix ----- ---------glPopMatrix.
Если помог, проси поставить минус. Будь оригинален!
|
15.03.2012, 22:36 | #10 |
Регистрация: 30.01.2011
Сообщений: 8
|
Rin спасибо большое ) очень очень помогли. У меня если Вам не трудно конечно будет, ещё один вопрос... в общем последнее что попросили реализовать это для примера ещё использовать фигуры просто с цветом .. т.е. можно выбрать Текстурированные фигуры и Цветные фигуры... при выборе появляются соответствующие настройки. Вопрос в общем вот в чём состоит, не могу понять в чём соль данного вопроса... в общем если я использую Цветные фигуры ( Выбираю цвет всё работает хорошо ) и затем перехожу на текстурированные ( Выбираю текстуру так же всё хорошо выбирается ), но вот если назад на цветные перехожу при выборе цвета он не применяется к фигуре... а цвет на фигуре такой как на текстуре.. можно ли реализовать что бы цвет применялся к цветным фигурам и текстура к текстурированным. В примере прописал только для RadioButton7 . Спасибо)
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Разная текстура для каждой грани куба OpenGL | DIgorevich | Мультимедиа в Delphi | 4 | 16.12.2011 12:17 |
Красивая текстура | ZvEr_HaCkEr | Свободное общение | 4 | 05.01.2011 10:20 |
Текстура на 2D объект OpenGL | saggy | Мультимедиа в Delphi | 0 | 30.06.2010 13:52 |
Прозрачная текстура | Miha85193 | Мультимедиа в Delphi | 1 | 01.04.2010 20:59 |
Прозрачная текстура | Miha85193 | Компоненты Delphi | 0 | 29.03.2010 12:34 |