mesh uv scale... [РЕШЕНО]

Форум для самых маленьких, а так же тех, кому недосуг читать справку самостоятельно.

mesh uv scale... [РЕШЕНО]

Сообщение raul82 05 апр 2012, 07:11

всем привет
как сделать вот такое
есть плашка(создананя в 3д максе) с наложенной на нее текстурой из атласа 1024х1024
теперь я хочу в коде сжимать плашку, и текстура чтоб на ней не сжималась, а типа просто чтоб обрезалась...как то так.
если просто менять коодринаты вертексов, то текстура сжимаеца, как менять координаты uv не понятно.
Последний раз редактировалось raul82 05 апр 2012, 12:43, всего редактировалось 1 раз.
5 годиков 7 месяцев
Аватара пользователя
raul82
Старожил
 
Сообщения: 506
Зарегистрирован: 21 янв 2011, 17:48
Откуда: Алматы

Re: mesh uv scale...

Сообщение gnoblin 05 апр 2012, 09:54

В смысле как?
Ув координаты это Vector2[], обычно с ху 0.0-1.0, можно произвести любые манипуляции которые хочется.
skypeid: madkust
Мои крайние проекты:
Убойный Хоккей
Cube Day Z (альфа)
Аватара пользователя
gnoblin
Адепт
 
Сообщения: 4633
Зарегистрирован: 08 окт 2008, 17:23
Откуда: Минск, Беларусь
Skype: madkust
  • Сайт

Re: mesh uv scale...

Сообщение raul82 05 апр 2012, 10:34

gnoblin писал(а):В смысле как?
Ув координаты это Vector2[], обычно с ху 0.0-1.0, можно произвести любые манипуляции которые хочется.

вот к примеру есть 4 вершины

vertices 0(-3.3, -20.0, 0.0)
vertices 1(3.3, -20.0, 0.0)
vertices 2(-3.3, 20.0, 0.0)
vertices 3(3.3, 20.0, 0.0)

2 и 3 меняю на (тоесть плашку уменьшаю по оси Y в 2 раза)

vertices 2(-3.3, 0.0, 0.0)
vertices 3(3.3, 0.0, 0.0)

UV Как были до сжатия плашки, так и остались такими же:
uvs[0] (0.9, 0.3)
uvs[1] (1.0, 0.3)
uvs[2] (0.9, 1.0)
uvs[3] (1.0, 1.0)

а текстура сжалась в 2 раза
вот я и думаю как надо изменить UV чтоб не было сжатия текстуры.
Если меш пополам обрезался, то и показывать на нем только половину текстуры..
5 годиков 7 месяцев
Аватара пользователя
raul82
Старожил
 
Сообщения: 506
Зарегистрирован: 21 янв 2011, 17:48
Откуда: Алматы

Re: mesh uv scale...

Сообщение Order 05 апр 2012, 11:08

Лучше используй автоматическую сборку атласа ,или готовые решения есть для вычисления uv координат.
Можно конечно ручками подбирать :))))))
Добавить rusorder в Skype , _juc4you@mail.ru ;
Платные консультации, программирование ваших проектов Unity3d,C#,IOS,Android.
Скрытый текст:
_ttp://www.youtube.com/watch?v=1m2qTnatSjM&list=UUjcKNvONEUHCILG7QrX1NFg
Order
Старожил
 
Сообщения: 805
Зарегистрирован: 21 фев 2010, 10:34

Re: mesh uv scale...

Сообщение gnoblin 05 апр 2012, 11:30

в столько же раз отскейлить ув
skypeid: madkust
Мои крайние проекты:
Убойный Хоккей
Cube Day Z (альфа)
Аватара пользователя
gnoblin
Адепт
 
Сообщения: 4633
Зарегистрирован: 08 окт 2008, 17:23
Откуда: Минск, Беларусь
Skype: madkust
  • Сайт

Re: mesh uv scale...

Сообщение raul82 05 апр 2012, 11:50

опытным путем установил что
2 и 3 юв надо сделать так
uvs[2].y = 0.67f;
uvs[3].y = 0.67f;
wtf
5 годиков 7 месяцев
Аватара пользователя
raul82
Старожил
 
Сообщения: 506
Зарегистрирован: 21 янв 2011, 17:48
Откуда: Алматы

Re: mesh uv scale...

Сообщение seaman 05 апр 2012, 11:56

wtf

А что Вас удивляет?
(1.0 - 0.33)/2 = 0.67
Но это не универсальное решение. Т.к. Вы возможно захотите когда-нибудь растянуть плашку, и не факт, что перед этим вы ее сжимали. Тогда сместив uv, вы выскочите за пределы необходимой части атласа.
seaman
Адепт
 
Сообщения: 8352
Зарегистрирован: 24 янв 2011, 12:32
Откуда: Самара

Re: mesh uv scale...

Сообщение raul82 05 апр 2012, 12:02

seaman писал(а):
wtf

А что Вас удивляет?
(1.0 - 0.33)/2 = 0.67
Но это не универсальное решение. Т.к. Вы возможно захотите когда-нибудь растянуть плашку, и не факт, что перед этим вы ее сжимали. Тогда сместив uv, вы выскочите за пределы необходимой части атласа.


а откуда 0.33 ? 0.3 же
5 годиков 7 месяцев
Аватара пользователя
raul82
Старожил
 
Сообщения: 506
Зарегистрирован: 21 янв 2011, 17:48
Откуда: Алматы

Re: mesh uv scale...

Сообщение raul82 05 апр 2012, 12:42

Все понятно
доверился принту
координаты далеко не
uvs[0] (0.9, 0.3)
uvs[3] (1.0, 1.0)

а такие

uvs[0] (0.9, 0.3433)
uvs[3] (1.0, 0.9953)
тогда все сходица.
всем спасибо
5 годиков 7 месяцев
Аватара пользователя
raul82
Старожил
 
Сообщения: 506
Зарегистрирован: 21 янв 2011, 17:48
Откуда: Алматы


Вернуться в Почемучка

Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot] и гости: 31


cron