Render.ru

Простой unmatting ms плагин

TER

Пользователь сайта
Рейтинг
2
#1
Доброго времени суток

Года два назад набрел на gamedev.ru на такой вот вроде бы несложный скриптик - плагин, который обрабатывает отрендеренную картинку, превращая ее из premultiplied в non - premultiplied, или, другими словами, unmatted. Короче, полупрозрачные объекты благодаря этому плагину, не меняют свой цвет в зависимости от цвета фона. Плагин незаменимый в создании спрайтов для игр, но к сожалению то ли от переезда на 4ядерный проц, то ли от нового Vray+Max2009 работать он отказывается - на этапе запуска этого плагина или вылетает макс, или выдается несколько ошибок.

Сам я не продвинут в написании таких плагинов, кто нибудь может подсказать что сделать чтоб он заработал без вылетов?

Плагин (лежит в папке sdplugs как *.ms):

plugin renderEffect SpriteRender
name:"SpriteRender"
classID:#(0xb7aa794c, 0xc3bd78ab)
(
parameters main rollout:params
(
)

rollout params "SpriteRender"
(
)

on apply bmp do
(
for h=0 to (bmp.height-1) do
(
local sline = getPixels bmp [0,h] bmp.width
for i=1 to sline.count do
if sline.a > 0 do
( local F = (255.0 / sline.a) as float
sline.r = (sline.r * F)
sline.g = (sline.g * F)
sline.b = (sline.b * F)
)
setPixels bmp [0,h] sline
)
)
)



ошибка:
 

Вложения

Savin Denis

Модератор форума
Команда форума
Рейтинг
138
#2
Немного ошибся веткой - С этим нужно в скрипты.

Но раз я все равно здесь набрел:
Проверил на связке Max2009 + Vray Demo 1.5 SP2 - Все работало без ошибок.
Собственно там и ломаться особенно нечему.

Но судя по ошибке у твоей версии Vray проблемы RenderEffect, по этому или откатывайся или делай это в сторонних редакторах эффектов.
 

TER

Пользователь сайта
Рейтинг
2
#3
Я в нескольких версиях Vray пробовал... пока что везде одинаково... Проблема в основном в "тяжелых" сценах проявляется, на рендере кубика скажем все проходит гладко.

А в сторонних - в каких? я темный человек, не знаю где можно восстановить unmatted режим ...


Но ведь должен же быть способ узнать в чем дело? Есть ведь наверное средства отладки, дебаггер?
 

Savin Denis

Модератор форума
Команда форума
Рейтинг
138
#4
Но ведь должен же быть способ узнать в чем дело? Есть ведь наверное средства отладки, дебаггер?
Да если у тебя лицензия ты вполне можешь обратиться разработчику. Так как для отладки как минимум нужны исходники.

Я в нескольких версиях Vray пробовал... пока что везде одинаково... Проблема в основном в "тяжелых" сценах проявляется, на рендере кубика скажем все проходит гладко.
Значит нужно было выложить тестовую сцену, где эта ошибка воспроизводиться. В твоем сообщении об этом не сказано.

А в сторонних - в каких? я темный человек, не знаю где можно восстановить unmatted режим ...
Шейк, Нюк, Фюжин, Там всего и нужно что домножить на Альфу.

Можно сделать намного проще просто выводить в TGA формате, и в настройках формата снять галку с Pre-Multipled Alpha. Эффект будет тотже.
 
Сверху