Автор Тема: Градиенты (Gradient Ramp)  (Прочитано 12985 раз)

Оффлайн Samovar

  • Житель
Градиенты (Gradient Ramp)
« : 11 Май 2015, 14:51:22 »
Увы, поддержка их в Блендере почему-то не очень хороша.
Вопросы:
1.) Есть ли коллекции градиентов  для Блендер аналогичные коллекциям  для Gimp и Inkscape http://www.gimpart.org/gradientyi/900-novyih-gradientov-gimp ?
2.) Есть ли дополнение (я) (addon) для Блендера, расширяющие работу с градиентами, чтобы их можно было копировать?


Всем заранее спасибо за ссылки и комментарии к этой теме!
« Последнее редактирование: 11 Май 2015, 15:01:26 от Samovar »

Оффлайн Samovar

  • Житель
Re: Градиенты (Gradient Ramp)
« Ответ #1 : 10 Август 2015, 14:55:13 »
Фалы градиентов Gimp c расширением *.ggr - обычные текстовики:

GIMP Gradient
Name: Basic_BlacK_K
1
0.000000 0.500000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0 0

или

GIMP Gradient
Name: Basic Brown Blue
2
0.000000 0.074689 0.149378 0.197000 0.154317 0.000000 1.000000 0.200000 0.156667 0.000000 1.000000 2 0 0 0
0.149378 0.382780 1.000000 0.000000 0.020942 1.000000 1.000000 0.000000 0.005784 0.295000 1.000000 3 0 0 0

Нашел описание формата для одного сегмента градиента:
The format seems to be
start middle end [range 0...1]
R G B A left endpoint
R G B A right endpoint
type where type is one of linear (0), curved, sine, sphere_increasing and shere_decreasing coloring, one of rgb, hsv_ccw, hsv_cw (здесь у меня вопрос, какой код чему соответствен?)
« Последнее редактирование: 10 Август 2015, 15:13:08 от Samovar »

Оффлайн sungreen

  • ...
  • Житель
  • Kostroma mon amour
    • sungreen.github.io
Re: Градиенты (Gradient Ramp)
« Ответ #2 : 10 Август 2015, 15:18:35 »
>> Нашел описание формата для одного сегмента градиента:
... то есть наверное было бы уместно загружать в ноду ColorRamp? ...
Для Кота

Оффлайн Samovar

  • Житель
Re: Градиенты (Gradient Ramp)
« Ответ #3 : 10 Август 2015, 15:22:42 »
До формата Блендера я не дошел еще. Если знаешь где в API его искать, то подскажи пожалуйста.
Суть: попробовать импортнуть Gimp градиент в Color Ramp Блендера наиболее точно.


З.Ы. Кстати, я маленько ступил вначале темы и неясно изложил свою мысль. ColorRamp прекрасно копируется через Ctrl+C -> Ctrl+V в Блендере. Просьба к Администратору не переносить тему в иной раздел. Тему можно расширить в дальнейшем: текстурирование и шейдинг  с помощью ColorRamp.
« Последнее редактирование: 10 Август 2015, 16:03:15 от Samovar »

Оффлайн LanuHum

  • Житель
Re: Градиенты (Gradient Ramp)
« Ответ #4 : 10 Август 2015, 22:12:27 »
До формата Блендера я не дошел еще. Если знаешь где в API его искать, то подскажи пожалуйста.
Суть: попробовать импортнуть Gimp градиент в Color Ramp Блендера наиболее точно.


З.Ы. Кстати, я маленько ступил вначале темы и неясно изложил свою мысль. ColorRamp прекрасно копируется через Ctrl+C -> Ctrl+V в Блендере. Просьба к Администратору не переносить тему в иной раздел. Тему можно расширить в дальнейшем: текстурирование и шейдинг  с помощью ColorRamp.

http://wiki.blender.org/index.php/Dev:2.5/Py/Scripts/Cookbook/Code_snippets/Materials_and_textures
Код
    bTex = bpy.data.textures.new('BlendTex', type = 'BLEND')
    bTex.progression = 'SPHERICAL'
    bTex.use_color_ramp = True
    ramp = bTex.color_ramp
    values = [(0.6, (1,1,1,1)), (0.8, (0,0,0,1))]
    for n,value in enumerate(values):
        elt = ramp.elements[n]
        (pos, color) = value
        elt.position = pos
        elt.color = color

Формат прост: позиция, цвет

Оффлайн Samovar

  • Житель
Re: Градиенты (Gradient Ramp)
« Ответ #5 : 10 Август 2015, 22:44:15 »
Цитировать
Формат прост: позиция, цвет
Благодарю за подсказку, LanuHum! Буду разбираться потихоньку...

Оффлайн LanuHum

  • Житель
Re: Градиенты (Gradient Ramp)
« Ответ #6 : 10 Август 2015, 22:52:58 »
Инкскейп:
Строки в файле:
Код
    <linearGradient
       inkscape:collect="always"
       id="linearGradient4138">
      <stop
         style="stop-color:#55f000;stop-opacity:1;"
         offset="0"
         id="stop4140" />
      <stop
         id="stop4146"
         offset="0.29199705"
         style="stop-color:#553d00;stop-opacity:0.49803922" />
      <stop
         style="stop-color:#8af0fb;stop-opacity:0.24705882"
         offset="0.64599854"
         id="stop4148" />
      <stop
         style="stop-color:#550000;stop-opacity:1"
         offset="1"
         id="stop4142" />
    </linearGradient>

позиция равна offset
RGB = stop-color
A = stop-opacity
конвертер цвета на питоне, например, stop-color:#550000:
import struct
rgbstr='8af0fb'
r,g,b = struct.unpack('BBB',rgbstr.decode('hex'))

В итоге color = (r,g,b,A)

Гимп  зашифровался:
R G B A left endpoint никак ни строчка 0.000000 0.074689 0.149378 0.197000 0.154317 0.000000 1.000000 0.200000 0.156667 0.000000 1.000000 2 0 0 0
ХЗ, что они имели ввиду...

Оффлайн Samovar

  • Житель
Re: Градиенты (Gradient Ramp)
« Ответ #7 : 10 Август 2015, 22:57:39 »
Не, в формат Gimp я врубаюсь.. мне там непонятны коды последних (двух в старом) четырех чисел в строке сегмента градиента...

Оффлайн LanuHum

  • Житель
Re: Градиенты (Gradient Ramp)
« Ответ #8 : 10 Август 2015, 23:18:27 »
Не, в формат Gimp я врубаюсь.. мне там непонятны коды последних (двух в старом) четырех чисел в строке сегмента градиента...
И, что есть строчка сегмента градиента без тех самых четырёх чисел?
Я, так понимаю, что строчка - есть сегмент. Сколько строчек, столько сегментов...
Или, нет?

Оффлайн Samovar

  • Житель
Re: Градиенты (Gradient Ramp)
« Ответ #9 : 10 Август 2015, 23:28:55 »
Цитировать
И, что есть строчка сегмента градиента без тех самых четырёх чисел?
Я, так понимаю, что строчка - есть сегмент. Сколько строчек, столько сегментов...
Да верно... без тех четырех чисел просто линейная интерполяция или код 0 по умолчанию, видимо

Формат одного сегмента на русском:
1 число - позиция левого маркера  сегмента (относительно всего градиента в диапазоне 0-1)
2 число - позиция среднего маркера сегмента (относительно всего градиента 0-1)
3 число - позиция правого маркера сегмента (относительно всего градиента 0-1)
4,5,6,7 числа - RGBA цвет левого маркера (0-1) соответственно
8,9,10,11 числа - RGBA цвет правого маркера (0-1) соответственно
а дальше непонятно...

[вложение удалено Администратором]
« Последнее редактирование: 10 Август 2015, 23:59:42 от Samovar »

Оффлайн LanuHum

  • Житель
Re: Градиенты (Gradient Ramp)
« Ответ #10 : 11 Август 2015, 19:52:04 »
Цитировать
И, что есть строчка сегмента градиента без тех самых четырёх чисел?
Я, так понимаю, что строчка - есть сегмент. Сколько строчек, столько сегментов...
Да верно... без тех четырех чисел просто линейная интерполяция или код 0 по умолчанию, видимо

Формат одного сегмента на русском:
1 число - позиция левого маркера  сегмента (относительно всего градиента в диапазоне 0-1)
2 число - позиция среднего маркера сегмента (относительно всего градиента 0-1)
3 число - позиция правого маркера сегмента (относительно всего градиента 0-1)
4,5,6,7 числа - RGBA цвет левого маркера (0-1) соответственно
8,9,10,11 числа - RGBA цвет правого маркера (0-1) соответственно
а дальше непонятно...

Как всё запущено!
И, к чему это всё: маркеры, правое, левое...
Хотя, я не понимаю, зачем, вообще, импортировать гимповские градиенты?
Я понимаю, когда импорт векторного рисунка с кучей градиентных раскрасок и хочется в оригинале, но иметь набор текстов, которые можно импортировать в блендер, получая градиент - это как? Браузер-просмотрщик градиентов ещё прикручивать? Проще простого написать генератор градиентов, который создаст миллионы вариантов, записав их и их изображения, а потом сидеть и рыться как свинья в бетоне, отыскивая нечто такое фантастическое из максимум 32 цветов созданное :o

Оффлайн Samovar

  • Житель
Re: Градиенты (Gradient Ramp)
« Ответ #11 : 11 Август 2015, 23:00:31 »
Ну ведь в POV-Ray из Gimp есть прямой экспорт. Пример вышеприведенного градиента "Sunrise" в формате POV-Ray:

/* color_map file created by GIMP */
/* http://www.gimp.org/           */
color_map {
   [0.000000 color rgbt <1.000000, 1.000000, 1.000000, 0.000000>]
   [0.101798 color rgbt <0.974082, 0.984849, 0.906061, 0.000000>]
   [0.203595 color rgbt <0.948165, 0.969697, 0.812122, 0.000000>]
   [0.203595 color rgbt <0.948165, 0.969697, 0.812122, 0.000000>]
   [0.379143 color rgbt <0.974082, 0.761165, 0.541061, 0.000000>]
   [0.487479 color rgbt <1.000000, 0.552632, 0.270000, 0.000000>]
   [0.487479 color rgbt <1.000000, 0.552632, 0.270000, 0.000000>]
   [0.503577 color rgbt <0.790860, 0.324394, 0.220022, 0.000000>]
   [0.529137 color rgbt <0.581721, 0.096155, 0.170043, 0.000000>]
   [0.529137 color rgbt <0.581721, 0.096155, 0.170043, 0.000000>]
   [0.545165 color rgbt <0.434800, 0.125692, 0.109939, 0.000000>]
   [0.562604 color rgbt <0.287879, 0.155229, 0.049835, 0.000000>]
   [0.562604 color rgbt <0.287879, 0.155229, 0.049835, 0.000000>]
   [0.609349 color rgbt <0.311940, 0.290598, 0.424918, 0.000000>]
   [0.697830 color rgbt <0.336000, 0.425966, 0.800000, 0.000000>]
   [0.697830 color rgbt <0.336000, 0.425966, 0.800000, 0.000000>]
   [0.845064 color rgbt <0.594082, 0.705948, 0.900000, 0.000000>]
   [1.000000 color rgbt <0.852165, 0.985930, 1.000000, 0.000000>]
} /* color_map */

Почему нельзя думать про импорт в Блендер?

Оффлайн LanuHum

  • Житель
Re: Градиенты (Gradient Ramp)
« Ответ #12 : 12 Август 2015, 20:24:15 »
Ну ведь в POV-Ray из Gimp есть прямой экспорт. Пример вышеприведенного градиента "Sunrise" в формате POV-Ray:
Почему нельзя думать про импорт в Блендер?
Потому что для Povray некоторые файлы создаются вручную. Если есть файл colormap, его можно подключить как colormap.inc. Gimp в данном случае является графическим плагином для Povray. Если ты пользуешься блендером для Povray, ты, врядли станешь открывать GIMP, чтобы создать colormap. В отдельных случаях, если число строк создаваемого градиента превышает 32, пользователь может воспользоваться GIMP, ибо Блендер не поддерживает colormap более 32 строк. Хотя, ни Блендер, ни GIMP не могут создать полноценную карту для Povray, ибо цвет в Povray может содержать 5 компонентов: red, green, blue, filter, transmit. Если transmit можно записать как 1 - alpha, то filter записать нечем, если filter записать как 1 - alpha, то transmit записывать нечем, но с filter будет проблема в реальном отображении при создании карты, ибо в Povray filter выглядит как половина альфы. А число строк для Povray colormap ограничивается лишь воображением юзера.
Собственно, если ты покажешь мне файл градиента GIMP и то, что из него создаётся  для Povray, я смогу написать тебе прямой импортёр ggr для Блендер. Я не вижу в этом смысла, но это не значит, что в этом нет смысла для тебя или кого-то другого.
« Последнее редактирование: 12 Август 2015, 20:29:39 от LanuHum »

Оффлайн Samovar

  • Житель
Re: Градиенты (Gradient Ramp)
« Ответ #13 : 12 Август 2015, 20:45:09 »
Цитировать
...ибо Блендер не поддерживает colormap более 32 строк
Проверил, точно так и есть... можно использовать только 32 маркера - это максимум 15 сегментов градиента GIMP при условии, что правый и левый маркеры в смежных сегментах одного и того же цвета, иначе 11 сегментов максимум. Благодарю за подсказку. На самом деле это хреново для Блендера... хотя, большинство ggr должны нормально импортироваться в линейном пространстве, думаю...
« Последнее редактирование: 12 Август 2015, 21:09:16 от Samovar »

Оффлайн LanuHum

  • Житель
Re: Градиенты (Gradient Ramp)
« Ответ #14 : 12 Август 2015, 21:35:22 »
Цитировать
...ибо Блендер не поддерживает colormap более 32 строк
Проверил, точно так и есть... можно использовать только 32 маркера - это максимум 15 сегментов градиента GIMP при условии, что правый и левый маркеры в смежных сегментах одного и того же цвета, иначе 11 сегментов максимум. Благодарю за подсказку. На самом деле это хреново для Блендера... хотя, большинство ggr должны нормально импортироваться в линейном пространстве, думаю...
Ну, на самом деле, в Блендере можно создать и больше компонентов, но для этого нужно применять несколько текстур.
Вот пример совмещения двух текстур. У одной цвет переходит из альфы в зелёный, у другой из красного в альфу. Если порог между альфой и цветом сделать чётким, то на месте альфы одной тестуры мы сможем создать 30 цветов, а на месте альфы другой ещё 30 цветов.

[вложение удалено Администратором]
« Последнее редактирование: 12 Август 2015, 21:37:50 от LanuHum »

 


Яметрика

* По форуму

* Рекламный блок

* Последние вложения

1 (1).png
Скачано: 68
Автор: LEXA ANЭGROWND
blender.png
Скачано: 78
Автор: ipv2007
4.png
Скачано: 101
Автор: hiroyukiss
2.png
Скачано: 122
Автор: hiroyukiss

Скачано: 113
Автор: Dilifa12