Здравствуйте.
Найдена ошибка в Maya 6.01, связанная с хранением vertex color.
Был обнаружен при переходе с MB формата в MA.
Иногда при записи в MA формат, после открытия сцены, путались цвета.
Тот же файл в MB открывается нормально. При детельном рассмотрении, выяснилась причина:
Проблема возникает, когда количество faceVertex = 125 * n + 1,
тогда получается блок setAttr, в котором одна комманда.
Maya неправильно ее считывает.
Если сказать open такого файла, а потом save, можно увидеть, что эта строчка была проигнорированна,
размер clr аттрибута уменшелся на 1 и в гранях записан -999 вместо инекса последнего цвета.
Т.е было
Одна строчка setAttr -s <125 * n + 1> ".clr";
Блоки n раз setAttr ".clr[125 * n: 125 * (n + 1) - 1]"
<блок вещественных чисел>
Блок с одной строкой setAttr ".clr[125 * n]" цвет
<skipped>
В описании фейсов f 3 37 51 -71
mu 0 3 52 53 54
fc 3 106 47 125 * n;
После открытия/сохранения будет:
Одна строчка setAttr -s <125 * n> ".clr";
Блоки n раз setAttr ".clr[125 * n: 125 * (n + 1) - 1]"
<блок вещественных чисел>
<skipped>
В описании фейсов f 3 37 51 -71
mu 0 3 52 53 54
fc 3 106 47 -999;
^ досадно!!!!!!!!!
Ошибка воспроизводится.
Стоит любыми средствами создать модель с 125 * n + 1 faceVertexами, раскрасить их все в разные цвета
(иначе можно незаметить ошибки) и попробовать сохранить/открыть.
PS: Воспроизводиться только в MA-формате
Вот пример:
polyPlane -w 32 -h 1 -sx 32 -sy 1 -ch 0 -name "bad_plane";
delete bad_plane.vtx[33];
delete bad_plane.vtx[64];
polyColorPerVertex -r 1 -g 0 -b 0 -a 1 bad_plane.vtxFace[32][31];
теперь сохраните ее в ma и откройте заново - красного цвета не будет....
в mb все будет впорядке
Обнаружили:
Володарский Слава slavav@creatstudio.com
Слепичев Дмитрий d.slepichev@creatstudio.com
2004 Reseach and Develop department of CreatStudio www.creatstudio.com
Найдена ошибка в Maya 6.01, связанная с хранением vertex color.
Был обнаружен при переходе с MB формата в MA.
Иногда при записи в MA формат, после открытия сцены, путались цвета.
Тот же файл в MB открывается нормально. При детельном рассмотрении, выяснилась причина:
Проблема возникает, когда количество faceVertex = 125 * n + 1,
тогда получается блок setAttr, в котором одна комманда.
Maya неправильно ее считывает.
Если сказать open такого файла, а потом save, можно увидеть, что эта строчка была проигнорированна,
размер clr аттрибута уменшелся на 1 и в гранях записан -999 вместо инекса последнего цвета.
Т.е было
Одна строчка setAttr -s <125 * n + 1> ".clr";
Блоки n раз setAttr ".clr[125 * n: 125 * (n + 1) - 1]"
<блок вещественных чисел>
Блок с одной строкой setAttr ".clr[125 * n]" цвет
<skipped>
В описании фейсов f 3 37 51 -71
mu 0 3 52 53 54
fc 3 106 47 125 * n;
После открытия/сохранения будет:
Одна строчка setAttr -s <125 * n> ".clr";
Блоки n раз setAttr ".clr[125 * n: 125 * (n + 1) - 1]"
<блок вещественных чисел>
<skipped>
В описании фейсов f 3 37 51 -71
mu 0 3 52 53 54
fc 3 106 47 -999;
^ досадно!!!!!!!!!
Ошибка воспроизводится.
Стоит любыми средствами создать модель с 125 * n + 1 faceVertexами, раскрасить их все в разные цвета
(иначе можно незаметить ошибки) и попробовать сохранить/открыть.
PS: Воспроизводиться только в MA-формате
Вот пример:
polyPlane -w 32 -h 1 -sx 32 -sy 1 -ch 0 -name "bad_plane";
delete bad_plane.vtx[33];
delete bad_plane.vtx[64];
polyColorPerVertex -r 1 -g 0 -b 0 -a 1 bad_plane.vtxFace[32][31];
теперь сохраните ее в ma и откройте заново - красного цвета не будет....
в mb все будет впорядке
Обнаружили:
Володарский Слава slavav@creatstudio.com
Слепичев Дмитрий d.slepichev@creatstudio.com
2004 Reseach and Develop department of CreatStudio www.creatstudio.com