Render.ru

Текстурирование NURBS

Max Zavjalov

Активный участник
Рейтинг
12
#1
Кто знает, как в мае оттекстурировать нурбс используя контрольные точки... Например, есть текстура. Есть контрольные точки на нурбе. Нужно присвоить каждой контрольной точке определенную координату на текстуре.
Заранее спасибо.
 
#4
Из вопроса понятно, что вы хотите как-то модифицировать именно картинку текстуры. Если вы не пользуетесь проекцией текстуры, а кладёте её по UV , то просто скопируйте свою NURBS-поверхность, превратите её полигональную поверхность (должен быть включён флаг "Control Points"). Таким образом у полученной полигональной поверхности узлы будут находиться там же, где и контрольные точки у исходной NURBS-поверхности. Текстуру, созданную на базе полигональной поверхности (UV Texture Editor ->Photoshop ) долее можно использовать для исходной NURBS-поверхности.
Можно и интереснее это сделать. Берём вашу NURBS-поверхность, идём в 3D Paint Tool, создаём там новую пустую текстуру, по размерам равную той, которую намереваетесь использовать. В опциях 3D Paint задаём Paint Operations -> Paint Effects. Далее берём из Visor какую-нибудь кисть из папки Paper (например textureCanvas2.mel). В параметрах кисти (Ctrl-B) задаём вместо текстуры бумаги вашу заготовленную текстуру Shading->Texturing->ImageName.
Там же меняем RepeatU и RepeatV с 6 на 1. Далее делаем Brush Global Scale = 10 и парой энергичных мазков покрываем вашей заготовленной текстурой всю поверхность. Теперь (если вы заранее выставили для вашей поверхности Display->NURBS Components->CVs) вы видите , как нужно деформировать текстуру, чтобы например ухо на текстуре совпало с контрольными точками уха на NURBS-поверхности (головы например). А осуществить эту деформацию текстуры с некоторой степенью аккуратности можно, переключив 3D Paint settings
Paint Operations->Paint Effects->Smear и играясь с шириной и мягкостью (softness) кисти. Когда всё вчерне готово , то в 3D Paint settings File Textures->Save Texture. Далее правим окончательно текстуру в шопе.
 
#5
Бред какой-то...Где-то что-то надо менять, либо в консерватории, либо переквалифицироваться в управдомы...

Модифицировать текстурные координаты на нурбсе в принципе не сложно способов несколько
1. Положить текстуру на offset в texture placement node
2. модифицировать коннекшен texturePlacement.outUV->file.UVCoord, а именно вместо одного парного коннекшена сделать два (один для U второй для V координаты).И в каждый из коннекшенов "врезать" по рампу или по анимационной кривой, с помощью изменения формы которой и можно будет интерактивно модифицировать UV координаты. Это, так сказать, применение технологии driven key в shader network.
 
#6
Вы , как видно, свой ник отрабатываете по полной программе :).
Спокойнее. Абсолютных корифеев не бывает. Учимся друг у друга. На то и форум. А ваш метод надо попробовать. Пригодится.
 
#7
Константин wrote:
>
> Вы , как видно, свой ник отрабатываете по полной программе :).

Анекдот в тему. Построение в шотландской армии.
Капрал:
-Рядовой МалГрегор, почему у вас кильт на десять сантиметров длиннее, чем положено по уставу?
Рядовой МакГрегор:
-Капрал, а вы как думаете?

> Спокойнее. Абсолютных корифеев не бывает. Учимся друг у
> друга. На то и форум.

Успокоился...Хорошо...Пусть будет палата №5...

А ваш метод надо попробовать. Пригодится.

Это не мой метод, это с MUMа... оттого и зол...
 
#8
Так по MUMу-то каждый смогёт. Читать народ чай умеет, ленится только (это и про себя в том числе). MUM это справочник, часто подразумевающий несколько способов решения задачи. Иногда дебильно выглядящий (палата № 6) способ оказывется наиболее приемлемым. Кстати только с помощью offset'ов нельзя произвольно подвинуть ограниченную область текстуры, не затрагивая при этом того , что находится на одном уровне с ней по горизонтали и/или по вертикали. Представьте себе текстуру лица с ухом и глазными впадинами , находящимися примерно на одном уровне. Попробуйте подвинуть ухо пониже, не затрагивая области глаз. Милости просим в фотошоп. (Опять же и это обходится многослойными текстурами, но это уже совсем изврат - проще в фотошопе тоже самое накомпозитить слоями) . При этом для более простых случаев этот способ очень даже проканает.
 

Max Zavjalov

Активный участник
Рейтинг
12
#9
Короче... будем ждать 4.5... может там положение улучшиться (если учеть, что там обещают преобразование сабдивов в нурбы, то текстурирование тоже должно быть)...
 
#10
Константин wrote:
>
..... Кстати только с помощью offset'ов нельзя
> произвольно подвинуть ограниченную область текстуры, не
> затрагивая при этом того , что находится на одном уровне с
> ней по горизонтали и/или по вертикали. Представьте себе
> текстуру лица с ухом и глазными впадинами , находящимися
> примерно на одном уровне. Попробуйте подвинуть ухо пониже, не
> затрагивая области глаз. Милости просим в фотошоп. (Опять же
> и это обходится многослойными текстурами, но это уже совсем
> изврат - проще в фотошопе тоже самое накомпозитить слоями) .
> При этом для более простых случаев этот способ очень даже
> проканает....

Ну вот такие хорошие слова про МУМ и тотчас сразу же в лужу...На том же МУМе было как "подвинуть ухо ниже, не затрагивая области глаз" Милости просим в волшебный мир майа...Майа - (пиво) для умных.
 
#11
Злыдню:
Уважаемый Волшебник. Будте столь любезны и ссылочку из MUMа дайте пожалуйста , иллюстрирующую ситуацию с "глазами и ушами" так, как я её описАл. (Предположим MUM у меня стоит в положеном месте на C) Про label mapping не надо. Если есть другой метод , почитаю с удовольствием. Заранее благодарен. (Не , я серьёзно ! Может я чего по лени своей пропустил).
 
Сверху