Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Игры";
Текущий архив: 2009.02.01;
Скачать: [xml.tar.bz2];

Вниз

Skin ы для 3D моделей   Найти похожие ветки 

 
Samarik   (2007-01-11 17:11) [0]

Короче, создал я в максе модель машины, наложил на неё несколько текстур, загрузил её в GLScene, наложил на неё те же текстуры - а видно только одну, ито растянута по всей модели. Пробовал рендерить текстуру - новая проблема - качество плохое и весит много. Гдето я слышал про файлы с расширением *.skin в которых хранятся пути к текстурам и их координаты данной модели, и в делфи не надо загружать текстуры, а тока файл *.skin (в нем же все координаты и пути).

Кто знает, помогите найти прогу для создания этих скинов, или линк дайте, ато рендерить - это долго и некачественно и память жрёт.


 
Fosgen   (2007-01-12 18:53) [1]

А ты про текстурные координаты понятие имеешь?
И про то что понятие "материал" и текстура - совершенно разные вещи?
И то что ты - "наложил на неё несколько текстур" - ты на самом деле назначил кучу материалов, а GLScene (и большинство двигов) поддерживают на одном меше - один материал. Мультитекстурирование же - совсем инай технология там несколько текстур накладываются используя одни и те же текстурные координаты.
Материал (в понятиях МАКСа) же привязан к полигонам\фэйсам и чаще всего пользует тайтлы - шкурки для рисутка материала.
Так что - текстуры ты не делал и даже не приближался к текстурированию...

Чтобы текстурировать модель надо вообще-то развертку в МАКСе сделать. Т.е. - задать текстурные координаты для каждого полигона модели. Как это делать - я тебе рассказывать не буду - сам найдешь - куча инфы в и-нете. Потом меш с разверкой грузится в ту же GLScene и ему назначается ОДНА текстура (битмап нарисованный по развертке) - задающая ВСЮ поверхность модели... Которая ляжет на меш в соответствии с разверткой. Это в общих чертах о текстурированных моделях... Не вдаваясь в детали и частные случаи..

В общем - учите азы, млин...

А всякие проги для скинов тебе не помогут.


 
Samarik   (2007-01-12 19:12) [2]

Я делал в максе развёртку, но это долго, к тому же некачественно и текстура весит много. Короче не помогло.

А вот про мультитекстурирование я забыл, если ты чё-нить знаешь про него а GLScene, то обьясни мне пожалуйста.


 
Samarik   (2007-01-12 19:27) [3]

Забыл!

Машину то я уже можно так сказать текстрировал, с ней развёртку провести-то можно, а вот трассы для моей игры, - одной развёрткой не поможешь. Дело в том что трасса это 3ds файл, там и дорога, деревья, всякие предметы, так что развёртка тут точно не поможет, а если поможет, то всё равно надо булет сделать хотя-бы текстур 20!

Надо както мультитекстурировать, помоги! Плз!:)


 
@!!ex ©   (2007-01-12 20:38) [4]


> Мультитекстурирование же - совсем инай технология там несколько
> текстур накладываются используя одни и те же текстурные
> координаты.


Серьезно чтоли??


 
@!!ex ©   (2007-01-12 20:41) [5]


> @!!ex ©   (12.01.07 20:38) [4]

Это я к тому, что например вот такой код:

glMultiTexCoord2fARB(GL_TEXTURE0_ARB, 0, 0);
glMultiTexCoord2fARB(GL_TEXTURE1_ARB, 0.5, 0.5);


задает разные текстурные координаты на разные текстуры одного полигона.

Я полагаю, вы просто опечатались и имели ввиду что-то другое.


 
Samarik   (2007-01-12 21:59) [6]


> glMultiTexCoord2fARB(GL_TEXTURE0_ARB, 0, 0);
> glMultiTexCoord2fARB(GL_TEXTURE1_ARB, 0.5, 0.5);


А что это за код? Опиши поподробнее: куда писать и как с ним работать?


 
@!!ex ©   (2007-01-12 22:12) [7]


> Samarik   (12.01.07 21:59) [6]

Опечатался. Не одного полигона, а одной вершины.....

Этот код устанавливает вершине координаты текстуры 0 (0,0)  а текстуре 1 той же вершины координаты (0.5,0.5). Куда его писать.... Перед отрисовкой вершины.:)) Куда это писать в GLScene - не скажу, не знаю...
Fosgen думаю на это лучше ответит.


 
Samarik   (2007-01-12 22:36) [8]

Суть я понял, осталось только научиться это делать:)


 
Fosgen   (2007-01-18 20:39) [9]

Samarik   (12.01.07 22:36) [8]
Значит так...
Если я что-то понял - то треки к своей гонке ты делаешь ЕДИНЫМ мешем... Мдя... Ну по хорошему надо назначать материалы в МАКСе и опосля при загрузке во FreeForm ставить UseMeshMaterials в True. Должно помочь. А по хорошему - надо разбирать такой трек на отдельные объекты и делать редактор\генератор треков. Тогда для каждого объекта можно будет сделать развертку и нормально его оттекстурировать.

"Я делал в максе развёртку, но это долго, к тому же некачественно и текстура весит много."

Мда это меня порадовало... Разумеется, нормально (т.е. - качественно) сделать развертку - надо время потратить, да еще и навык (знания) иметь.

А причем тут вес текстуры вот я не понял. Если ты сравнивал битмапы тайтлов, которыми ты материалы в МАКСе "затекстурил" и нормальную развертку - это ты не то сравнивал. В зависимости от масштаба в игре твоей машины, ей хватит либо 512 х 512 либо (по уши) 1024 х 1024. При формате текстуры в jpg с максимальным качеством - весить она будет сущие копейки...

Далее, по поводу мультитекстурирования.
Если не вдаваться в "чистый" OGL (ну не хотелось мне в него вдаваться), то чтобы задать иные текстурные координаты надо баловаться с параметрами текстуры в библиотеке:

Material.Texture.MappingSCoordinates
Material.Texture.MappingTCoordinates
TextureOffset
TextureScale

Честно говоря я сам практически не возился. Так что к каким эффектам что приведет - почти не подскажу.

По поводу приведенного кода:

> glMultiTexCoord2fARB(GL_TEXTURE0_ARB, 0, 0);
> glMultiTexCoord2fARB(GL_TEXTURE1_ARB, 0.5, 0.5);


Писать сие надо в обработчик события OnRender, для объекта DirectOpenGL, который в GLScene имеется. Причем писать - с умом. Если я что-то понимаю - придется обрабатывать таким образом ВСЕ вершины одного меша загруженного во FreeForm (а там он может быть и не один), да ко всему - устанавливать связь переменных типа GL_TEXTURE0_ARB с материалами в библиотеках GLScene.
Кроме прочего, насколько я сталкивался GLScene, по умолчанию в инициализации OpenGL-контекста не активирует расширения ARB
Так что это - тоже надо делать ручками.

Если что-то из описанного - непонятно, то извиняйте. Значит вы просто рано этими вопросами занялись. :)


 
ProG ©   (2007-04-23 15:29) [10]

ЛЮДИ пож объясните как из 3д макса в GLScene вместе с текстурами
и чтобы быстро и легко


 
ProG ©   (2007-04-23 15:32) [11]

ЛЮДИ пож объясните как из 3д макса в GLScene вместе с текстурами модель загрузить
и чтобы быстро и легко


 
Samarik   (2007-04-23 18:25) [12]

в сцене есть такая херня типа нада в свойствах быблы матов написать путь к папке с текстурами, или экспорти модель из макса прямо в папку с текстурами и в сцене оттуда грузи, они автоматически наложаца



Страницы: 1 вся ветка

Форум: "Игры";
Текущий архив: 2009.02.01;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.006 c
2-1229428657
1991
2008-12-16 14:57
2009.02.01
Оптимизация


2-1229794173
pashokq
2008-12-20 20:29
2009.02.01
Из Integer в Byte


15-1228402519
[Непрошедший]
2008-12-04 17:55
2009.02.01
Непрохождение флюорогрофии на работе


15-1227341190
Gydvin
2008-11-22 11:06
2009.02.01
Создание битмап в цветовом пространстве CMYK


6-1197982424
user51
2007-12-18 15:53
2009.02.01
подключение к ADSL модему, нужно правильное отображение





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский