Голосование

Нужны ли "ноды" для POV-Ray?

Да
0 (0%)
Нет
0 (0%)
Не понимаю вопрос
0 (0%)

Проголосовало пользователей: 0

Автор Тема: Povray-3.7: Неофициальный экспортёр  (Прочитано 98075 раз)

Оффлайн sungreen

  • ...
  • Житель
  • Kostroma mon amour
    • sungreen.github.io
Re: Povray-3.7: Неофициальный экспортёр
« Ответ #165 : 12 Июль 2014, 22:22:08 »
>> Так что, пока будет только отдельная анимация каждого параметра.
... ну это же сокетоненавистничество   :-\ ...

>> Алгоритм у меня простой, основанный на питон API. Входной сокет имеет параметр default_value. Если он не слинкован, то берётся он, а, если слинкован, то отыскивается второй конец провода и параметр берётся оттуда.

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

Оффлайн LanuHum

  • Житель
Re: Povray-3.7: Неофициальный экспортёр
« Ответ #166 : 12 Июль 2014, 22:29:21 »
Цитировать
... даже без анимации в сокетах есть польза, пример - есть два узла с числовыми параметрами и нужно сделать так, чтобы эти параметры имели одинаковое значение, тогда линкуем сокеты этих параметры с узлом сокетом узла Value ...
Читай выше, врубился я. Просто, у меня мысли в одну сторону работают, а объяснений выгоды от участников добиваюсь только  гранатомётом. :)
Так это ж, сколько сокетов нужно писать! Стандартные ни всегда угодят требованиям. Ладно, буду писать. :)
« Последнее редактирование: 12 Июль 2014, 22:31:28 от LanuHum »

Оффлайн LanuHum

  • Житель
Re: Povray-3.7: Неофициальный экспортёр
« Ответ #167 : 12 Июль 2014, 23:42:13 »
Цитировать
sungreen, спасибо за перевод со стародемонического на ланухумский
Вот вам за это:

Оффлайн LanuHum

  • Житель
Re: Povray-3.7: Неофициальный экспортёр
« Ответ #168 : 13 Июль 2014, 00:34:18 »
Цитировать
Ты писал, что не дружишь с кодом... т.е. не понимаешь как кодируются цвет, нормали и простые параметры в Блендере. Изучи вопрос. Это тебе поможет меньше таких несуразностей постить

Это ты про про то, что серый - это когда три составляющие цветы равны? Я не помню, чтобы у меня были проблемы с этим в питоне.
Или ты про С++???
Мне уже поздно. Напишу экспортёр - больше ни строчки кода.

Цитировать
кроме чекбоксов
Раз уж они анимируются в блендере, то кому-то обязательно захочется меня достать по этой теме. Сразу исключаю такой вариант. :)

Вообще, такое ощущение, что я бесцельно , просто тупо учусь программировать под  чутким руководством здесь присутствующих. Ибо, сами они уже давно написали бы этот экспортёр, если бы в нём у них была необходимость.

Оффлайн LanuHum

  • Житель
Re: Povray-3.7: Неофициальный экспортёр
« Ответ #169 : 13 Июль 2014, 10:23:31 »
Цитировать
Они не равны...
R= от 0 до 0.35
G= от 0 до 0.45
B= от 0 до 0.20
Итого в сумме BW = 1, если цвет RGB белый... Т.е. при конвертации в серые тона учитывается только светлота каждой из компонент RGB цвета...

Я имел ввиду, что rgb<0.9,0.9,0.9>  будет серый, и, rgb<0.3,0.3,0.3> тоже будет серый. Но, если ты мне про обесцвечивание синего или оранжевого, то, непонятно, зачем мне это нужно? Если юзер возьмёт цветную картинку для карты, то никаким кодом поврею я не объясню, как бы я хотел сложить там чего-то подключив ноды корректировки цвета, как это делается в интернале. Я так понимаю, что в блендере картинка из файла загружена в буфер, где она может быть обработана нодами и передана для рендера. Поврей из буфера не читает, он читает из файла, так что моё знание про цвета и нормали врядли поможет кому-то. Самостоятельно придётся приготовить картинку в любимом фотошопе. :)
Или ты снова позови sungreen, чтоб он тебя перевёл на русский язык :)

Оффлайн sungreen

  • ...
  • Житель
  • Kostroma mon amour
    • sungreen.github.io
Re: Povray-3.7: Неофициальный экспортёр
« Ответ #170 : 13 Июль 2014, 11:15:20 »
>>Я так понимаю, что в блендере картинка из файла загружена в буфер, где она может быть обработана нодами и передана для рендера.

... хочу обратить внимание на Cycles Standalone как предполагаемый путь развития этого рендера ...
http://wiki.blender.org/index.php/Dev:2.6/Source/Render/Cycles/Standalone

... ну и картинко ...
http://blender.dingto.org/cycles_standalone/standalone.png

... возможно, что Cycles получает не так много инсайдерской информации от Blender ...
Для Кота

Оффлайн sungreen

  • ...
  • Житель
  • Kostroma mon amour
    • sungreen.github.io
Re: Povray-3.7: Неофициальный экспортёр
« Ответ #171 : 13 Июль 2014, 11:48:57 »
... вот пример XML  с конвертом RGB2BW и с внешней картинкой ...
... очевидно конвертация выполняется на стороне рендера, а не редактором ...
Код: Cycles Standalone XML
<film height="540" width="960" />
<shader name="Material">
   <diffuse_bsdf
       Color="0.800000 0.800000 0.800000 1.000000 "
       Normal="0.000000 0.000000 0.000000 "
       Roughness="0.000000 "
       name="Diffuse_BSDF" />
   <tex_image
       Alpha="0.000000 "
       Color="0.000000 0.000000 0.000000 0.000000 "
       Vector="0.000000 0.000000 0.000000 "
       name="Image_Texture" />
   <rgbtobw
       Color="0.500000 0.500000 0.500000 1.000000 "
       Val="0.000000 "
       name="RGB_to_BW" />
   <connect from="Diffuse_BSDF BSDF" to="output Surface" />
   <connect from="Image_Texture Color" to="RGB_to_BW Color" />
   <connect from="RGB_to_BW Val" to="Diffuse_BSDF Color" />
</shader>
<transform matrix="1.0 0.0 0.0 0.0  0.0 1.0 0.0 0.0  0.0 0.0 1.0 0.0  0.0 0.0 0.0 1.0 ">
   <state shader="Material">
      <mesh P="1.0 0.9999999403953552 -1.0 1.0 -1.0 -1.0 -1.0000001192092896 -0.9999998211860657 -1.0 -0.9999996423721313 1.0000003576278687 -1.0 1.0000004768371582 0.999999463558197 1.0 0.9999993443489075 -1.0000005960464478 1.0 -1.0000003576278687 -0.9999996423721313 1.0 -0.9999999403953552 1.0 1.0" nverts="4 4 4 4 4 4 " verts="0 1 2 3  4 7 6 5  0 4 5 1  1 5 6 2  2 6 7 3  4 0 3 7  " />
   </state>
</transform>
<transform matrix="-0.29086464643478394 -0.7711008191108704 0.5663931965827942 4.076245307922363  0.9551711678504944 -0.1998833566904068 0.21839119493961334 1.0054539442062378  -0.05518905818462372 0.6045247316360474 0.7946722507476807 5.903861999511719  0.0 0.0 0.0 1.0 "><light P="4.076245 1.005454 5.903862" /></transform>
<transform matrix="0.6858805418014526 -0.31737011671066284 0.6548618674278259 7.481131553649902  0.7276337742805481 0.31246861815452576 -0.6106656193733215 -6.5076398849487305  -0.010816780850291252 0.8953432440757751 0.4452453553676605 5.34366512298584  0.0 0.0 0.0 1.0 "><camera farclip="100.0" focaldistance="0.0" nearclip="0.10000000149011612" type="perspective" /></transform>
Для Кота

Оффлайн LanuHum

  • Житель
Re: Povray-3.7: Неофициальный экспортёр
« Ответ #172 : 13 Июль 2014, 12:34:35 »
Цитировать
... возможно, что Cycles получает не так много инсайдерской информации от Blender ...
Думаю, что это не так. Скорее всего, через Питон получает не так много
Цитировать
... вот пример XML  с конвертом RGB2BW и с внешней картинкой ...
... очевидно конвертация выполняется на стороне рендера, а не редактором ...
Очевидно, что на стороне рендера выполняется конвертация, но, смысл остаётся тем же: у поврея нет инструментов, чтобы он смог понять в любом формате текст, несущий вот такую информацию:
Цитировать
   <connect from="Diffuse_BSDF BSDF" to="output Surface" />
   <connect from="Image_Texture Color" to="RGB_to_BW Color" />
   <connect from="RGB_to_BW Val" to="Diffuse_BSDF Color" />

Теперь про ноды. В поврее некоторые параметры не могут быть равны нулю, другие не должны быть больше 1, третьи не должны быть больше 9, и так далее. В блендере программисты тоже используют ограничения на всевозможные параметры, установив их в исходниках
Для чего я это пишу?
Я ввожу в код собственные сокеты, которые будут отличаться цветом, и тыкать в них из сокетов другого цвета ничего не нужно будет.
 Это вас не напрягает?

Оффлайн LanuHum

  • Житель
Re: Povray-3.7: Неофициальный экспортёр
« Ответ #173 : 13 Июль 2014, 20:35:41 »
По-моему, неплохо получается.
Я создал несколько сокетов, которым задал определённый предел регулирования параметра. Все будут иметь подсказку, которая будет указывать, какой нод необходимо добавить и подключить. Благодаря этому пользователь не сможет вводить заведомо недопустимые параметры, которые могут вызвать ошибку парсинга повфайла, и как следствие, недовольство кривым экспортёром. :)

Оффлайн LanuHum

  • Житель
Re: Povray-3.7: Неофициальный экспортёр
« Ответ #174 : 14 Июль 2014, 00:08:51 »
Смею возразить насчет вышеизложенного подхода.
Зачем тогда программист, если он не обладает предвидением действий пользователя-новичка? Новичек всегда будет тыкать туда, поначалу, где надо и не надо...  И это нормально :) ... и что, на самом деле, самое веселое :)
...
Не проще ли  в самом коде экспортера задать условия?
Грубо на псевдопрограммном языке это выглядит так:
Если параметр такой-то < значение или > значение, то действия по приведению этого всего барахла в порядок...
...
и т.д и т.п...
...
А, ты считаешь удобным новичку и не новичку удобным присваивать неизвестную величину на слайдере имеющем минимум -10000000000, а максимум столько же в плюсе, хотя требуемый параметр колеблется от нуля до единицы? Я первый вижу в этом ужасное неудобство, когда слайдер не имеет разумных пределов, даже, если я искусственно ограничу его запредельные значения в коде двумя строчками:
Код
if f>9:
    f=9
Меня будет до истерики вымораживать вбивание чисел вручную вместо того, чтобы тупо провести курсором по слайдеру. А, провести будет трудно, ибо не успеешь дёрнуть рукой, как значение уже далеко ускачет за нужное
А на вопрос: зачем тогда программист, я тоже ищу ответ. Посмотри картинку, посмотри подсказку на ней. Попробуй вызвать этот параметр скриптом. Тебе будет написано: нет такого параметра. И навигатор API не находит этого параметра. Вот это подсказка, так подсказка. А, я хотел ею воспользоваться, чтобы установить пределы параметров сокета, решив все проблемы и с новичками и с тобой, и со всеми остальными. Пришлось собственные сокеты писать, где можно установить пределы. И, моя подсказка работает без проблем.
Не вижу проблемы. Чтобы что-то подключить нужно знать, где его взять. Ты перевод сделаешь неизвестно когда, а подсказка под носом. В чём проблема? Всё-равно же подключать, так зачем подключать ненужное и неизведанное? Действия мышью те же самые с той разницей, что нужно навести курсор на сокет, а не искать мануал, который не написан, и, неизвестно когда напишется.
« Последнее редактирование: 14 Июль 2014, 00:14:38 от LanuHum »

Оффлайн LanuHum

  • Житель
Re: Povray-3.7: Неофициальный экспортёр
« Ответ #175 : 17 Июль 2014, 21:33:45 »
Old Demon, учитывая твои замечания прорабатываю такую фишку.
Нод "Value" будет один универсальный. Его пределы будут устанавливаться автоматически в зависимости от пределов подключенного сокета. Если это float, то будет float, если int, то будет int
Если подключено несколько сокетов с одинаковыми пределами, пределы нода "Value" будут адекватными.
Если подключено несколько сокетов с различными пределами и числовыми типами, значения нода "Value" будут установливаться в процентах.
Давай свою ложку дёгтя в мою бочку мёда!

Оффлайн LanuHum

  • Житель
Re: Povray-3.7: Неофициальный экспортёр
« Ответ #176 : 19 Июль 2014, 14:35:44 »
продолжай ...
Продолжаю.
На сегодняшний день неустанной работы над повреевским пигментом :)
имеется следующее:

Оффлайн LanuHum

  • Житель
Re: Povray-3.7: Неофициальный экспортёр
« Ответ #177 : 21 Июль 2014, 22:15:28 »
Для вдохновения ... ( и пожелание ) одной анимированной картинкой (тайлится).
Это где в доках?

Крутится такая идея, которую не могу пока реализовать.
Вот три нода. Правый pattern
Чтобы экспортировать его, я должен обратиться к ссылкам
for node in node_tree.nodes:
    if node.label=="Pattern":
        for link in node_tree.links:
            if link.to_node.label=="Pattern":
                file.write('texture {%s}\n'%link.from_node.label)
будет записано две строчки
 texture {agate}
 texture {marble}
Вот, хорошо бы сразу
    if node.label=="Pattern":
        for label:
            file.write()
sungreen, понял идею?

           
« Последнее редактирование: 22 Июль 2014, 00:24:27 от LanuHum »

Оффлайн LanuHum

  • Житель
Re: Povray-3.7: Неофициальный экспортёр
« Ответ #178 : 22 Июль 2014, 00:16:42 »
...лови дегтя чуток:
Цитировать
Почему у тебя BSDF на нодах, а не BRDF написано? И ваще нафига оно там написано?
Там будет написано Material
Цитировать
  Но ты же всерьёз не думаешь прикручивать моделирование и булены к Блендеру? Если да, то я посмеюсь, потому что проще написать приложение-3d моделер под него с нуля, чем выпендриваться (скриптами!!!-что смешно), подгоняя под него Блендер  :)
Булены будут. Насколько это тебе не понравится, или, насколько тебе будет весело, это уже другое дело. Иногда и неуклюжая симуляция может оказаться ох как кстати
Но, с мешем то какие проблемы? Во вьюпорте будет то, что и видит блендер, но просчёт булей произведёт поврей, расставив треугольники не раком, а правильно.

Цитировать
Как аргумент, на твои возмущения: а все ли типы ламп POV-Ray аналогичны типам ламп в Blender?
point, sun, hemi, area, spot, можно счиать аналогичными.

Цитировать
Где кнопка сохранить излучательность в файл (такая возможность есть)?
Ещё, вообще нет нодов сцены. Там будет эта кнопка.

Цитировать
  Ты пойми, что мало-кто хочет писать формулы и перерендеривать по сто раз, не видя превью сразу... это непродуктивно и отнимает кучу времени...
Превью будет работать, оно прикручено уже капитально и хочет предоствить просмотр, но не может. Не написана расшифровка узлов, из-за этого превью не видит, что показывать.
Формулы я и сам не хочу писать, и никому не собираюсь навязывать. А, sungreen, например, хочет isosurface создавать, ты это тоже пойми.
« Последнее редактирование: 22 Июль 2014, 00:29:01 от LanuHum »

Оффлайн LanuHum

  • Житель
Re: Povray-3.7: Неофициальный экспортёр
« Ответ #179 : 22 Июль 2014, 00:39:42 »
Цитировать
Иначе, фиг его знает, как-то по иному по смыслу разбить, но не делать кучей (в интернале так- ноды матов отдельно, текстур-отдельно... ноды светильников -отдельно и т.д и т.п... ну ты понял, надеюсь)...
Задал же вопрос в теме про скрипты, как отсортировать - пока молчок.
Есть запасной вариант - выбросить хидер, написать новый со своим меню, но, подожду, может, bdancer, может, ещё кто-нибудь более грамотный способ подскажет.

Цитировать
Только не говори, что все это из-за эффекта каустики
Да, выпендриваюсь я просто. То мне каустика нужна, то большой выбор процедурок, а сам стою по 11 часов за станком, и, уже кажется, что так будет до смерти. И ни повреем я не попользуюсь, и ни сусликом с интерналом :)
« Последнее редактирование: 23 Июль 2014, 21:40:52 от LanuHum »

 


Яметрика

* По форуму

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

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

blender_Ild91AVt1h.png
Скачано: 7
Автор: dimak
Glue to Sphere.jpg
Скачано: 19
Автор: Samovar
screen.jpg
Скачано: 13
Автор: Samovar
screen.jpg
Скачано: 14
Автор: LanuHum
Primer Glossy on-off.jpg
Скачано: 27
Автор: Samovar