March 28, 2024, 15:07
bigger smaller reset     1020px Wide width Full width Reset   * *

Gildor's Forums

  Homepage Facebook Read news on Twitter Youtube channel Github page
Welcome, Guest. Please login or register.
Did you miss your activation email?

« previous next »
Print
Author Topic: Как в UModel Обратиться к экспортеру - с массивом используя Batch  (Read 3863 times)
Teoma
Full Member
***
Posts: 220


View Profile
« on: July 01, 2015, 22:00 »

У меня есть массив объектов
modelsArry=[
A,
B,
C,
D,
E,
F,
]
Этот массив представляет собой имена моделей внутри архив Unreal(UKX,UTX), каким образом через Batch я могу сделать так чтобы Umodel по очереди выгружал все эти модели, используя массив.
То есть повторял команду Umodel -all -export for(int i=0; i<modelsArry.Length;i++)ModelsArry..
« Last Edit: July 01, 2015, 22:04 by Teoma » Logged
Gildor
Administrator
Hero Member
*****
Posts: 7978



View Profile WWW
« Reply #1 on: July 01, 2015, 22:09 »

Здесь непонятная смесь каких-то языков программирования с командной строкой UModel, в общем - ничего не понятно.

Почитай здесь:
http://www.gildor.org/projects/umodel
(ищи внизу "Командная строка")
Logged
Teoma
Full Member
***
Posts: 220


View Profile
« Reply #2 on: July 01, 2015, 22:32 »

ну это я примерно представил - проход по объектом в массиве( но это для явы)
Дело не в коммандой строке Umodel как таковой, а в том как к ней обратиться в batch скрипте, таким образом чтобы из архив UTX/UKX Были выгружены только - указанные мною объекты, и их несколько.
То есть используя Umodel -all -export OBJ1 ; не подойдет.

К примеру что-то типо такого -
SETLOCAL ENABLEDELAYEDEXPANSION
SET NamesArr=OBJ1,OBJ2,OBJ3,OBJ4
for /f "tokens=*" %%f  in (NamesArr "непонятно как тут")do (
 umodel -all -export NamesArr
)
Как то так ?
Logged
Gildor
Administrator
Hero Member
*****
Posts: 7978



View Profile WWW
« Reply #3 on: July 01, 2015, 22:36 »

Если надо экспортировать (или просто загрузить) несколько объектов из одного пакета, то эти объекты можно перечислить через ключик -obj=...

umodel -export SomePackage.upk -obj=mesh1 -obj=mesh2 .....
Logged
Teoma
Full Member
***
Posts: 220


View Profile
« Reply #4 on: July 01, 2015, 22:49 »

Если надо экспортировать (или просто загрузить) несколько объектов из одного пакета, то эти объекты можно перечислить через ключик -obj=...

umodel -export SomePackage.upk -obj=mesh1 -obj=mesh2 .....

Понятно, но тут опять же надо предварительно писать обращение к -obj, а нельзя ли как то ограничиться итрированием имен объектов и обращением по старой схеме, просто в ручную это очень долго - в пакете 1000 объектов, а мне оттуда надо максимум 20, но папка экспорта при этом должна содержать только эти объекты, ибо если делать все через -all -export - придется перебирать опять же через все 1000 объектов, а это не очень хорошо.
Logged
Gildor
Administrator
Hero Member
*****
Posts: 7978



View Profile WWW
« Reply #5 on: July 01, 2015, 23:02 »

Я написал командную строку, которая экспортирует объекты mesh1 и mesh2 из пакета SomePackage.upk. Что тут непонятного? Экспортируется не всё, а только эти 2 объекта. Надо больше объектов - добавляете ещё -obj=mesh3 и так далее.
Logged
Teoma
Full Member
***
Posts: 220


View Profile
« Reply #6 on: July 01, 2015, 23:16 »

Я написал командную строку, которая экспортирует объекты mesh1 и mesh2 из пакета SomePackage.upk. Что тут непонятного? Экспортируется не всё, а только эти 2 объекта. Надо больше объектов - добавляете ещё -obj=mesh3 и так далее.
ну так поять же у меня строки - простого формата, то есть я их копирую в таком виде:
obj1_i01
obj2_i01
obj3_i01
obj4_i01
, если я их сейчас все выделю и подставлю в командную строку, как аргумент, то работать это будет только если я подставлю для каждой строки(Вручную) -obj=Obj1_i01,  -obj=Obj2_i01, и тд. А как раз этого хочется избежать(ибо это все в ручную делать надо, а объектов "море"), желательно автоматически - просчитывать объекты( в таком виде - какие я их скопировал из txt Файла)

Я просто не очень понимаю как это все дело должно итрироваться в Batch скрипте ?
Если вы не в курсе наверное, лучше конечно заюзать гугл правда непонятно с каким значением(типа: batch call program with args array) ?

Logged
Gildor
Administrator
Hero Member
*****
Posts: 7978



View Profile WWW
« Reply #7 on: July 01, 2015, 23:20 »

То разговор шёл о программе, что получается "вручную copy-paste" - непонятно.
Можно вызывать batch для каждого объекта отдельно. UModel будет работать дольше, но не настолько, сколько времени уже потеряно на этой теме.
Тогда будет именно синтаксис вида
umodel -export PackageName.upk ObjectName

Как работать с массивами в batch - сходу не знаю, надо в гугле искать.
Logged
Teoma
Full Member
***
Posts: 220


View Profile
« Reply #8 on: July 02, 2015, 00:12 »

Можно вызывать batch для каждого объекта отдельно. UModel будет работать дольше, но не настолько, сколько времени уже потеряно на этой теме.
Тогда будет именно синтаксис вида
umodel -export PackageName.upk ObjectName

Как работать с массивами в batch - сходу не знаю, надо в гугле искать.
Ну в о общем да - об этом как раз и речь шла , гугл особо нечего не дает, думал тут еще ктот поможет ), нудаладн.
Logged
Reborn
Full Member
***
Posts: 103


View Profile
« Reply #9 on: July 03, 2015, 17:26 »

А вариант с помощью профессионального текстового редактора превратить массив в батник со множеством строк не катит? Любой хороший редактор умеет делать макросы с поиском и заменой.

Logged
Print 
« previous next »
Jump to:  

Powered by SMF | SMF © 2006-2009, Simple Machines LLC
Leviathan design by Bloc | XHTML | CSS