Здравствуйте. Очень нужна помощь.
Из 3d max импортировал карту игры STALKER. Импортировал в unity.
Так как unity неадекватно себя ведет с .dds текстурами,я массово конвертировал файлы текстур .dds в .png
Естественно теперь ни unity, ни 3d max эти файлы не видит(был путь ston.dds, а стал ston.png).
В 3dmax прописывается же путь до текстур? Как мне изменить этот путь массово? Файлы лежат так же как и лежали,только у них расширение теперь другое.
Попробуйте такой вариант. Пример:
Открываем сцену. Запускаем скрипт.
В новом окне нажимаем кнопку Apply.
Сохраняем сцену и открываем её снова.
try destroydialog test catch()
rollout test "bitmap png"
(
button btn_apply "Apply"
on btn_apply pressed do
(
bms=getClassInstances bitmapTexture
for bm in bms do
(
bm_path=getFilenamePath bm.filename
bm_filename=getFilenameFile bm.filename
bm.filename=bm_path+bm_filename+".png"
bm.reload();
)
completeredraw()
)
); createdialog test 120 30
Чтобы запустить скрипт нужно:
1. Создаем текстовый файл (NotePad) и копируем код (текст) скрипта.
2. Сохраняем текстовый файл с названием "test.ms"
3. В главное меню MaxScript выбираем пункт Run Script. Выбираем файл "test.ms"
igorznagПопробуйте такой вариант. Пример:
Открываем сцену. Запускаем скрипт.
В новом окне нажимаем кнопку Apply.
Сохраняем сцену и открываем её снова.
try destroydialog test catch()
rollout test "bitmap png"
(
button btn_apply "Apply"
on btn_apply pressed do
(
bms=getClassInstances bitmapTexture
for bm in bms do
(
bm_path=getFilenamePath bm.filename
bm_filename=getFilenameFile bm.filename
bm.filename=bm_path+bm_filename+".png"
bm.reload();
)
completeredraw()
)
); createdialog test 120 30
Чтобы запустить скрипт нужно:
1. Создаем текстовый файл (NotePad) и копируем код (текст) скрипта.
2. Сохраняем текстовый файл с названием "test.ms"
3. В главное меню MaxScript выбираем пункт Run Script. Выбираем файл "test.ms"
Можно поподробнее пожалуйста: что делает этот скрипт?
NatrixЗдравствуйте. Очень нужна помощь.
Из 3d max импортировал карту игры STALKER. Импортировал в unity.
Так как unity неадекватно себя ведет с .dds текстурами,я массово конвертировал файлы текстур .dds в .png
Естественно теперь ни unity, ни 3d max эти файлы не видит(был путь ston.dds, а стал ston.png).
В 3dmax прописывается же путь до текстур? Как мне изменить этот путь массово? Файлы лежат так же как и лежали,только у них расширение теперь другое.
Огромное спасибо. Прокатило. Можно подробнее,как это работает?
NatrixМожно поподробнее пожалуйста: что делает этот скрипт?
Этот скрипт устанавливает расширение png для всех текстур.
У вас в сцене есть текстуры с другими расширениями кроме dds? Например jpg, bmp.
Если да, тогда скрипт установит и для них расширение png.
Natrixнет нету,а если будут? в будущем? может сможете дать совет(получается скрипт),если будут
Я изменил скрипт.
Теперь скрипт устанавливает расширение png только у текстур с расширением dds.
try destroydialog test catch()
rollout test "bitmap png"
(
button btn_apply "Apply"
on btn_apply pressed do
(
bms=getClassInstances bitmapTexture
for bm in bms do
(
bm_path=getFilenamePath bm.filename
bm_filename=getFilenameFile bm.filename
bm_filename_type=getFilenameType bm.filename
if bm_filename_type==".dds" do bm.filename=bm_path+bm_filename+".png"
bm.reload();
)
completeredraw()
)
); createdialog test 120 30
igorznagЯ изменил скрипт.
Теперь скрипт устанавливает расширение png только у текстур с расширением dds.
try destroydialog test catch()
rollout test "bitmap png"
(
button btn_apply "Apply"
on btn_apply pressed do
(
bms=getClassInstances bitmapTexture
for bm in bms do
(
bm_path=getFilenamePath bm.filename
bm_filename=getFilenameFile bm.filename
bm_filename_type=getFilenameType bm.filename
if bm_filename_type==".dds" do bm.filename=bm_path+bm_filename+".png"
bm.reload();
)
completeredraw()
)
); createdialog test 120 30
от души. Месяц парился. Как + в карму поставить? )
Доступ к резюме доступен только по пакетному доступу HR менеджерам зарегистрированных компаний. Узнать о вариантах корпоративных пакетов можно по ссылке.
Natrix
Из 3d max импортировал карту игры STALKER. Импортировал в unity.
Так как unity неадекватно себя ведет с .dds текстурами,я массово конвертировал файлы текстур .dds в .png
Естественно теперь ни unity, ни 3d max эти файлы не видит(был путь ston.dds, а стал ston.png).
В 3dmax прописывается же путь до текстур? Как мне изменить этот путь массово? Файлы лежат так же как и лежали,только у них расширение теперь другое.
igorznag
Открываем сцену. Запускаем скрипт.
В новом окне нажимаем кнопку Apply.
Сохраняем сцену и открываем её снова.
try destroydialog test catch() rollout test "bitmap png" ( button btn_apply "Apply" on btn_apply pressed do ( bms=getClassInstances bitmapTexture for bm in bms do ( bm_path=getFilenamePath bm.filename bm_filename=getFilenameFile bm.filename bm.filename=bm_path+bm_filename+".png" bm.reload(); ) completeredraw() ) ); createdialog test 120 30Чтобы запустить скрипт нужно:1. Создаем текстовый файл (NotePad) и копируем код (текст) скрипта.
2. Сохраняем текстовый файл с названием "test.ms"
3. В главное меню MaxScript выбираем пункт Run Script. Выбираем файл "test.ms"
Natrix
Natrix
igorznag
У вас в сцене есть текстуры с другими расширениями кроме dds? Например jpg, bmp.
Если да, тогда скрипт установит и для них расширение png.
Natrix
igorznag
Теперь скрипт устанавливает расширение png только у текстур с расширением dds.
try destroydialog test catch() rollout test "bitmap png" ( button btn_apply "Apply" on btn_apply pressed do ( bms=getClassInstances bitmapTexture for bm in bms do ( bm_path=getFilenamePath bm.filename bm_filename=getFilenameFile bm.filename bm_filename_type=getFilenameType bm.filename if bm_filename_type==".dds" do bm.filename=bm_path+bm_filename+".png" bm.reload(); ) completeredraw() ) ); createdialog test 120 30Natrix