Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Blitz3D > 3D-программирование

3D-программирование Вопросы, касающиеся программирования 3D мира

Ответ
 
Опции темы
Старый 23.01.2007, 21:10   #1
Chrono Syndrome
 
Сообщений: n/a
Частичное текстурирование примитива.

Имеется: Куб, созданный через CreateCube.
Требуется: Затекстурировать ему одну (выбранную) сторону.

Подскажите, плиз, как это лучше сделать...
 
Ответить с цитированием
Старый 23.01.2007, 21:16   #2
Черный крыс
 
Сообщений: n/a
Re: Частичное текстурирование примитива.

Куб лучше создать в Максе...и перейти в режим полигонального редактирования...потом выбираешь нужную группу полигонов и затекстуриваешь...попутно можешь применить модификатор текстурных координат....это если текстура неправильно положиться.
 
Ответить с цитированием
Старый 23.01.2007, 21:20   #3
Chrono Syndrome
 
Сообщений: n/a
Re: Частичное текстурирование примитива.

Сообщение от Diablo1909
Куб лучше создать в Максе...и перейти в режим полигонального редактирования...потом выбираешь нужную группу полигонов и затекстуриваешь...попутно можешь применить модификатор текстурных координат....это если текстура неправильно положиться.
Да это-то все понятно... Только, ИМХО, кубы в Максе моделить - это уже слишком. Так что меня интересуют именно созданные через CreateCube.
 
Ответить с цитированием
Старый 23.01.2007, 21:48   #4
Черный крыс
 
Сообщений: n/a
Re: Частичное текстурирование примитива.

А что такого зазорного если куб создать в максе и загрузить его? Это наиболее простой и эффективный вариант решения проблеммы. Ну если это тебя не устраивает...тогда этот куб нада пересчитать по вертексам, определить полигоны, и к этим поликам присвоить текстуру.... - другой вариант - разбить куб на сюрфейсы и затекстурить нужный. - но это ресурсозатратно.
 
Ответить с цитированием
Старый 23.01.2007, 21:49   #5
Diplomat
Дэвелопер
 
Регистрация: 07.09.2005
Сообщений: 1,519
Написано 66 полезных сообщений
(для 164 пользователей)
Re: Частичное текстурирование примитива.

0. ИМХО- текстурные координаты граней куба, созданного с помошью КриейтКуб совпадают и затекстурить одну стенку невозможно.

1. Как вариант- создать куб вручную повертексно. Именно так почему-то рекомендуют создавать скайбоксы в семплах для Блица. К чему этот гемо... то есть головная боль- не пойму до сих пор. Особенно если проанализировать время, необходимое для того, чтоб хотя бы набить весь код такой ф-и.

2. Если куб не будет вращаться- можно нанести на него кубемапу. Смысла тоже немного: ибо тормоза и легендарнаяы "неполная совместимость" с дореволюционными видеокартами.

3. Создавать куб в ЗДМах-е и экспортить в БЗД. Это совсем не слишком. Это даже очень в самый раз. Тем более, что занимает времени столько, сколько требуется чтоб запустить Мах + 30-300 сек. реального времени в зависимости от опытности моделера.
(Offline)
 
Ответить с цитированием
Старый 23.01.2007, 22:16   #6
Chrono Syndrome
 
Сообщений: n/a
Re: Частичное текстурирование примитива.

Все ясно, спасибо...
 
Ответить с цитированием
Старый 23.01.2007, 22:16   #7
ЛысыЙ_Чук-Иванчук
Дэвелопер
 
Регистрация: 19.03.2006
Сообщений: 1,241
Написано 10 полезных сообщений
(для 17 пользователей)
Re: Частичное текстурирование примитива.

+1
(Offline)
 
Ответить с цитированием
Старый 23.01.2007, 22:38   #8
Chrono Syndrome
 
Сообщений: n/a
Re: Частичное текстурирование примитива.

Да, вот еще что !
Именно так почему-то рекомендуют создавать скайбоксы в семплах для Блица.
Выложи код, если не трудно...
 
Ответить с цитированием
Старый 23.01.2007, 22:58   #9
Тарас Шевченко
Знающий
 
Регистрация: 17.08.2006
Сообщений: 246
Написано 0 полезных сообщений
(для 0 пользователей)
Re: Частичное текстурирование примитива.

Function MakeSkyBox()

m=CreateMesh()
;front face
b=LoadBrush("textures/SKY/sky_FR.bmp",49 )
s=CreateSurface( m,b )
AddVertex s,-1,+1,-1,0,0:AddVertex s,+1,+1,-1,1,0
AddVertex s,+1,-1,-1,1,1:AddVertex s,-1,-1,-1,0,1
AddTriangle s,0,1,2:AddTriangle s,0,2,3
FreeBrush b
;right face
b=LoadBrush("textures/SKY/sky_LF.bmp",49 )
s=CreateSurface( m,b )
AddVertex s,+1,+1,-1,0,0:AddVertex s,+1,+1,+1,1,0
AddVertex s,+1,-1,+1,1,1:AddVertex s,+1,-1,-1,0,1
AddTriangle s,0,1,2:AddTriangle s,0,2,3
FreeBrush b
;back face
b=LoadBrush("textures/SKY/sky_BK.bmp",49 )
s=CreateSurface( m,b )
AddVertex s,+1,+1,+1,0,0:AddVertex s,-1,+1,+1,1,0
AddVertex s,-1,-1,+1,1,1:AddVertex s,+1,-1,+1,0,1
AddTriangle s,0,1,2:AddTriangle s,0,2,3
FreeBrush b
;left face
b=LoadBrush("textures/SKY/sky_RT.bmp",49 )
s=CreateSurface( m,b )
AddVertex s,-1,+1,+1,0,0:AddVertex s,-1,+1,-1,1,0
AddVertex s,-1,-1,-1,1,1:AddVertex s,-1,-1,+1,0,1
AddTriangle s,0,1,2:AddTriangle s,0,2,3
FreeBrush b
;top face
b=LoadBrush("textures/SKY/sky_UP.bmp",49 )
s=CreateSurface( m,b )
AddVertex s,-1,+1,+1,0,1:AddVertex s,+1,+1,+1,0,0
AddVertex s,+1,+1,-1,1,0:AddVertex s,-1,+1,-1,1,1
AddTriangle s,0,1,2:AddTriangle s,0,2,3
FreeBrush b



ScaleMesh m,100,100,100
FlipMesh m
EntityFX m,9
EntityOrder m,10
Return m


End Function
(Offline)
 
Ответить с цитированием
Старый 24.01.2007, 01:47   #10
HolyDel
 
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений
(для 2,707 пользователей)
Re: Частичное текстурирование примитива.

А чем вам кубемапа неугодила? ею можно затекстурить куб созданный в блитзе, так как надо. И даже не только куб, но и ШАР
имхо - проще.
(Offline)
 
Ответить с цитированием
Старый 24.01.2007, 08:48   #11
jimon
 
Сообщений: n/a
Re: Частичное текстурирование примитива.

HolyDel
ты явно не понял че требуется
 
Ответить с цитированием
Старый 24.01.2007, 12:52   #12
Chrono Syndrome
 
Сообщений: n/a
Re: Частичное текстурирование примитива.

Да, видимо и правда, что все дороги земные ведут в Крематорий >.< ...

Выложенный Тарасом код не работает, если оттуда выкинуть любые упоминания о Brush'ах. Значит, такой теперь вопрос: как смоделить в Max'е незатекстурированный куб с шестью сурфейсами (ну, по одному на каждую грань) ?
 
Ответить с цитированием
Старый 24.01.2007, 13:34   #13
Тарас Шевченко
Знающий
 
Регистрация: 17.08.2006
Сообщений: 246
Написано 0 полезных сообщений
(для 0 пользователей)
Re: Частичное текстурирование примитива.

Сообщение от Chrono Syndrome
Да, видимо и правда, что все дороги земные ведут в Крематорий >.< ...

Выложенный Тарасом код не работает, если оттуда выкинуть любые упоминания о Brush'ах. Значит, такой теперь вопрос: как смоделить в Max'е незатекстурированный куб с шестью сурфейсами (ну, по одному на каждую грань) ?
После функции создания скайбокса напиши
sky=MakeSkyBox()
ScaleEntity sky,15,15,15
(Offline)
 
Ответить с цитированием
Старый 24.01.2007, 14:09   #14
Chrono Syndrome
 
Сообщений: n/a
Re: Частичное текстурирование примитива.

Сообщение от Тарас Шевченко
После функции создания скайбокса напиши
sky=MakeSkyBox()
ScaleEntity sky,15,15,15
А зачем, если эта функция у меня не запускается (MAV) ?
 
Ответить с цитированием
Старый 24.01.2007, 14:20   #15
Platon
Знающий
 
Регистрация: 04.08.2006
Адрес: Россия
Сообщений: 297
Написано 39 полезных сообщений
(для 70 пользователей)
Re: Частичное текстурирование примитива.

>>как смоделить в Max'е незатекстурированный куб с шестью сурфейсами (ну, по одному на каждую грань) ?
Создаешь куб - на панеле инструментов нажимаешь кнопку с нарисованым кубом, справа на панельке в свитке Creation Method выбирай Cube и протягивай мышкой на одной из проекции, после чего кликай мышкой и протягивай еще раз (3-е измерение) с последующим кликом. Справа появится панелька со параметрами только что созданной фигуры. В ней отредактируй, если необходимо, размер. Далее тыкай левой кнопкой мыши на кнопке с изображением крестика(вверху на панеле инструментов), после чего тыкай на нее же правой кнопкой мышки. Появится окошко в котором можно отредактировать позицию фигуры(Absolute world) - ставь по всем осям ноль. Далее нажимаешь, в одной из 4ех проекций, правой кнопкой мыши на фигуре и выбираешь в появившемся меню пункт Convert to\Convert to editable mesh. После чего справа появится панелька со списком модификаторов Modifier list. В нем будет свернутый список Editable mesh.
Разворачивай его и выбери один из режимов редактирования сетки - Polygon. Перейди к проекции в 3D и выделяя каждую грань левой кнопкой мыши, нажимай правую кнопку и в появившемся меню выбирай detach. Будет появляется окошко с возможностью изменить название новому обьекту, можно просто нажать OK. Все, если будешь экспортировать через Pipeline, то каждой грани нужно присвоить уникальный материал, иначе мешь не разделиться на сурфейсы. Для 3ds вроде не надо материалов. Расположение панелей может отличаться, но по умолчанию так.
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Частичное масштабирование изображения karry 3D-программирование 28 28.05.2009 18:33
текстурирование по Id полигона? Alex_Noc 3D-программирование 14 25.07.2008 17:13
Текстурирование ландшафта! (Полезно) moka Создание текстур 10 08.10.2007 18:45
Текстурирование ландшафтов:) BoB Создание текстур 6 23.11.2006 04:15
текстурирование выделеных полигонов hunt 3D Моделирование 8 04.08.2006 16:43


Часовой пояс GMT +4, время: 18:55.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com