CLO HELP CENTER

How can we help you?

Python 스크립트 API

팔로우

Objective

Python 스크립트 사용 시 필요한 변수를 확인합니다.

※참조:

  • 예제 파일 위치:
    • CLO 설치 폴더

  • 예제 파일 실행 방법:
    • Please type below text in Script Console

    • py> import example

    • py> from example import *

    • py> exam = example()

    • py> exam.function(mdsa)

    • Function은 예시입니다. 사용 할 수 있는 Function은 example.py 파일에서 확인하세요

    • mdsa는 CLO 내부 기능과 연결해주는 python module 입니다.



Operation

  1. Python 스크립트를 실행합니다.

  2. Python 스크립트 창이 실행되면 커서에 원하는 API를 입력하여 사용합니다.

API

#mdsa = CLO Script API

 

변수

Variable name

Type

Explication

open_avatar_file_list

String List

Open할 Avatar File들의 경로를 지정하는
리스트 형 변수입니다.

open_garment_file_list

String List

Open할 Garment File들의 경로를 지정하는
리스트 형 변수입니다.

open_animation_file_list

String List

Open할 Animation File들의 경로를 지정하는
리스트 형 변수입니다.

save_file_path_list

String List

저장할 파일들의 경로와 파일 이름을 저장하는
리스트 형 변수입니다.

obj_type_list

Integer List

Open할 Avatar의 Type을 저장하는
리스트 형 변수입니다.

simulation_quality_list

Integer List

Simulation 또는 Animation 할 때 Simulation의 Quality를
지정하는 리스트 형 변수입니다.

simulation_delay_time_list

Integer List

Animation을 하기 전 제 자리에서 Simulation을 할 시간을
지정하는 리스트 형 변수입니다.

export_scale_unit

String

Export 할 때 Object들의 Scale을 Unit 단위로
지정하는 변수입니다.

export_fps

Integer

Export 할 때 Object들의 fps를
지정하는 변수입니다.

unified_map

Boolean

Export 할 때 Object들의 UV를 unified 시킬지를
지정하는 변수입니다.

import_scale_unit

String

Import 할 때 Object들의 Scale을 Unit 단위로 지정하는
변수 입니다.

import_fps

Integer

Import 할 때 Object들의 fps를 지정하는 변수 입니다.

current_process

Integer

여러 개의 파일들을 한꺼번에 처리하는 경우
파일 오픈에서부터 Simulation, Animation
파일 저장까지의 일련의 과정을
하나의 Process처럼 처리합니다. 이런 일련의 과정에 대한
Progress를 나타내는 변수입니다.

save_folder_path

String

저장할 파일들의 폴더를 지정하는 변수입니다. 만약 사용자가
save_file_path_list를 설정하지 않았다면 이 변수에 지정된
경로에 임의의 파일 이름으로 파일들이 저장됩니다.

module_obj

CLO Module

CLO 내부 API module입니다. 이 변수를
직접 사용할 경우 오작동할 우려가 있습니다.

 

함수

def initialize(object):

- 현재 사용하고 있는 mdsa 객체를 초기화 합니다.

def clear_console(object):

- console window를 지웁니다.

def get_split_string(object, string, split_filter_list):

- string은 string type, split_filter_list는 string list type

- 인자로 받은 string을 split_filter_list에 값으로 나누어 string list로 반환합니다. Split_filter_list는 문자열을 나눌 때 기준이 되는 문자들의 list 입니다.

이 함수는 Split_filter_list의 첫 번째 문자부터 문자열을 나눕니다. 만약 첫 번째 문자로 문자열이 나누어지지 않는 경우 (string에 filter 문자가 포함되어 있지 않은 경우) 두 번째, 세 번째 문자로 순차적으로 검색합니다.

만약 x 번째 split_filter_list에서 문자열이 나누어진 경우 나누어진 string list를 반환합니다. 만약 검색에 실패한 경우 빈 string list를 반환합니다. 반환되는 string list에는 split_filter 문자는 제외됩니다.

get_split_string(“C:\Users\Public\Documents\MarvelousDesigner\Assets_ver_3.0.9999\default.zpac”, [“\\”, “/”])

- [“C:”, “Users”, “Public”, “Documents”, “MarvelousDesigner”, “Assets_ver_3.0.9999”, “default.zpac”]

def get_file_name(object, file_path):

- file_path는 string type

- 인자로 받은 file_path에서 file_name 만을 Return 합니다.

get_file_name(“C:\Users\Public\Documents\MarvelousDesigner\Assets_ver_3.0.9999\default.zpac”)

- default.zpac”

def get_filter_file_name(object, file_list, filter):

- file_list는 string list type, filter는 string type

- 인자로 받은 file_list에서 확장자가 filter factor와 동일한 file들을 list type으로 반환합니다. 확장자 검색 시 대/소문자를 구분하지 않습니다

def make_valid_folder_path(object, folder_path):.

- Folder_path는 string type

- Folder_path의 마지막 문자가 “\” 또는 “/”이 아닌 경우 유효하지 않은 Path로 인식합니다. 이 함수를 사용하면 유효하지 않은 경로를 유효한 형태의 경로로 반환합니다.

def get_entry_list(object, folder_path):

- Folder_path는 string type

- Folder_path에 있는 파일들의 list를 반환합니다.

def set_open_option(object, unit = "none", fps = 30):

- Unit은 string type, "cm", "mm", "inch", "feet", "m"의 값으로 설정 가능합니다. defalut는 "mm" 값 입니다.

- Fps는 integer type, default는 30 fps입니다

- obj, cache, fbx. alembic file의 import option을 설정합니다. 여러 개의 파일들을 import하는 경우에 각각의 파일의 옵션을 다르게 설정하고 싶다면 set_open_option_list 함수를 사용하십시요.

이 함수는 값만 설정합니다. CLO에 값을 적용하기 위해서는 set_app_open_option 함수도 호출해야 합니다.

def set_save_option(object, unit = "none", fps = 30, unified = False):

- unit은 string type, "cm", "mm", "inch", "feet", "m"의 값으로 설정 가능합니다. defalut는 "mm" 값 입니다.

- Fps는 integer type, default는 30 fps입니다

- Unified는 Boolean type, True일 경우 object의 UV를 0 ~ 1까지의 값으로 변경합니다. default는 False 입니다.

- obj, cache, fbx. alembic, Garment file의 export option을 설정합니다. 여러 개의 파일들을 export하는 경우에 각각의 파일의 옵션을 다르게 설정하고 싶다면 set_save_option_list 함수를 사용 하십시요.

이 함수는 값만 설정합니다. CLO에 값을 적용하기 위해서는 set_app_save_option 함수도 호출해야 합니다.

def set_open_option_list(object, unit_list, fps_list):

- unit_list는 string list type, fps_list는 integer list type

- obj, cache, fbx. alembic, Garment file의 import option을 설정합니다. 여러 개의 파일들을 import 할 때 각각의 파일의 옵션을 다르게 설정하고 싶다면 이 함수를 호출하여 사용하면 됩니다.

인자는 list 형이며 unit_list, fps_list는 동일한 count여야 합니다. 이 함수에 인자인 unit_list, fps_list의 count는 import할 파일의 count와 동일해야 합니다.

만약 import할 파일이 option_list보다 많은 경우 option_list의 마지막 item들로 값이 설정됩니다. 자세한 사항은 example.py를 확인해주세요.

def set_save_option_list(object, unit_list, fps_list, unified_map_list):

- unit_list는 string list type, fps_list는 integer list type, unified_map_list는 Boolean list type

- obj, cache, fbx. alembic, Garment file의 export option을 설정합니다. 여러 개의 파일들을 export 할 때 각각의 파일의 옵션을 다르게 설정하고 싶다면 이 함수를 호출하여 사용하면 됩니다.

인자는 list 형이며 unit_list, fps_list, unified_map_list는 동일한 count여야 합니다.이 함수에 인자인 unit_list, fps_list, unified_map_list의 count는 export할 파일의 count와 동일해야 합니다.

만약 export할 파일이 option_list보다 많은 경우 option_list의 마지막 item들로 값이 설정됩니다. 자세한 사항은 example.py를 확인해주세요.

def run_app_open_option(object):

- set_open_option 함수에서 설정한 값으로 CLO Import Option을 설정합니다.

def run_app_save_option(object):

- set_save_option 함수에서 설정한 값으로 CLO Import Option을 설정합니다

def run_app_open_option(object, index):

- index는 integer type

- set_open_option_list 함수에서 설정한 값으로 CLO Import Option을 설정합니다. set_open_option_list 함수에서 List로 option 값을 설정했다면 설정한 List에서 적용하고 싶은 item의 index를 인자로 넘겨줍니다.

- Index의 최소값은 0이며 list의 전체 사이즈 – 1 값이 index의 최대값입니다.

def run_app_save_option(object, index):

- index는 integer type

- set_save_option_list 함수에서 설정한 값으로 CLO Export Option을 설정합니다. set_save_option_list 함수에서 List로 option 값을 설정했다면 설정한 List에서 적용하고 싶은 item의 index를 인자로 넘겨줍니다.

- Index의 최소값은 0이며 list의 전체 사이즈 – 1 값이 index의 최대값입니다.

def get_app_open_optin_count(object):

- 현재 설정된 import option의 count를 반환합니다. defalut는 0입니다.

def get_app_save_optin_count(object):

- 현재 설정된 export option의 count를 반환합니다. defalut는 0입니다.

def set_avatar_file_path(object, open_avatar_file_path):

- open_avatar_file_path는 string type.

- avatar file path를 추가합니다. 만약 다른 파일들과 count가 맞지 않는 경우 맨 마지막에 등록한 avatar file path가 load 됩니다.

def set_avatar_file_path_list(object, open_avatar_file_path_list):

- open_avatar_file_path_list는 string list type

- avatar file list를 설정합니다. list 형태의 값을 직접 설정하고 싶은 경우 사용합니다. 만약 다른 파일들과 count가 맞지 않는 경우 맨 마지막에 등록한 avatar file path가 load 됩니다.

def set_garment_file_path(object, open_garment_file_path):

- open_garment_file_path는 string type

- garment file path를 추가합니다. 만약 다른 파일들과 count가 맞지 않는 경우 맨 마지막에 등록한 garment file path가 load 됩니다.

def set_garment_file_path_list(object, open_garment_file_path_list):

- open_garment_file_path_list는 string list type

- garment file list를 설정합니다. list 형태의 값을 직접 설정하고 싶은 경우 사용합니다. 만약 다른 파일들과 count가 맞지 않는 경우 맨 마지막에 등록한 garment file path가 load 됩니다.

def set_animation_file_path(object, open_animation_file_path):

- open_animation_file_path는 string list type

- animation file list를 설정합니다. list 형태의 값을 직접 설정하고 싶은 경우 사용합니다. 만약 다른 파일들과 count가 맞지 않는 경우 맨 마지막에 등록한 animation file path가 load 됩니다.

def set_animation_file_path_list(object, open_animation_file_path_list):

- open_animation_file_path_list는 string list type

- animation file list를 설정합니다. List 형태의 값을 직접 설정하고 싶은 경우 사용합니다. 만약 다른 파일들과 count가 맞지 않는 경우 맨 마지막에 등록한 animation file path가 load 됩니다.

def set_simulation_options(object, obj_type = 0, simulation_quality = 0, simulation_delay_time = 5000, process_simulation = True):

- obj_type은 integer type, obj_type = 0인 경우 avatar, 1인 경우 trim object, 2인 경우 obj to garment로 로드 됩니다. Default는 avatar type입니다.

- Simulation_quality는 integer type, 0인 경우 Normal, 1인 경우 Complete, 2인 경우 Custom type 입니다. Default는 Normal입니다.

- Simulation_delay_time은 integer type, 이 값은 설정한 시간만큼 simulation을 진행 한 후에 animation을 진행하고 싶은 경우 사용합니다.

Default는 5000 micro second이며 simulation을 진행하고 싶은 시간(second) * 1000입니다.

- Process_simulation은 boolean type, simulation 진행 여부를 결정합니다. Default는 True입니다.

- 이 함수는 obj type과 simulation과 관련된 Import option들을 추가합니다. 만약 Import할 다른 파일들과 count가 맞지 않거나 option을 설정하지 않는 경우 default 값으로 설정됩니다.

def avatar_file_open(object, open_file_path, obj_type = 0, scale = "mm", fps = 30):

- open_file_path는 string type, obj_type은 string type, scale은 string type, fps는 integer type

- 이 함수를 사용하면 open_file_path에 있는 avatar (avt, obj, fbx, alembic) file을 불러옵니다. 이 때 함께 지정한 obj_type, scale, fps option이 적용됩니다.

def garment_file_open(object, open_file_path):

- open_file_path는 string type,

- 이 함수를 사용하면 open_file_path에 있는 garment (zpac, pac, zprj) file을 불러옵니다.

def animation_file_open(object, open_file_path, scale = "mm", fps = 30):

- open_file_path는 string type, scale은 string type, fps는 integer type

- 이 함수를 사용하면 open_file_path에 있는 animation (pos, mc, mcx, pc2, mdd) file을 불러옵니다. 이 때 함께 지정한 scale, fps option이 적용됩니다.

def save_file_stand_alone(object, file_path, scale = "mm", fps = 30, unfined_map = True):

- File_path는 string type, scale은 string type, fps는 integer type, unified_map은 Boolean type

- 이 함수를 사용하면 현재 load되어 있는 파일들을 file_path에 저장합니다. File_path에 확장자에 따라 save 할 파일 타입을 자동으로 지정합니다. 함께 지정한 scale, fps, unified_map option이 적용되어 저장됩니다.

def SimulationOn(object, time):

- Time은 integer type, micro second (second * 1000)

- 지정한 time 이후에 simulation을 실행합니다.

def SimulationOff(object, time):

- Time은 integer type, micro second (second * 1000)

- 지정한 time 이후에 simulation을 정지 시킵니다.

def StartAnimationRecord(object, time):

- Time은 integer type, micro second (second * 1000)

- 지정된 time 이후에 animation을 실행 또는 녹화 합니다.

def set_save_file_path(object, save_file_path):

- save_file_path는 string type

- 이 함수는 인자로 넘어온 경로를 save_file_path_list에 추가합니다. save_file_path_list는 사용자가 미리 설정한 import file list들 중 적어도 하나의 list의 크기와 동일해야 합니다.

- set_save_folder_path를 설정하여 대체할 수 있습니다. 두 함수 중 하나는 반드시 설정되어야 합니다.

def set_save_folder_path(object, save_folder_path):

- save_folder_path 는 string type

- 이 함수는 인자로 넘어온 경로를 save folder path로 설정합니다. Save folder path는 사용자가 미리 설정한 import file list들 중 크기가 가장 큰 list의 file name과 동일한 name의 zprj(프로젝트) 파일로 해당 폴더에 파일들을 저장합니다.

- set_save_file_path를 설정하여 대체할 수 있습니다. 두 함수 중 하나는 반드시 설정되어야 합니다.

def set_garment_folder(object, garment_folder_path, filter = "zpac"):

- garment_folder_path는 string type, filter는 string type

- 이 함수는 사용자가 원하는 폴더에 존재하는 의상 파일들을 읽어드려 open_garment_file_list로 설정합니다. Filter 값을 설정할 경우 filter의 확장자 파일들로 open_garment_file_list를 설정합니다.

- Filter의 default는 “zpac” 입니다.

def set_avatar_folder(object, avatar_folder_path, filter = "avt"):

- avatar_folder_path는 string type, filter는 string type

- 이 함수는 사용자가 원하는 폴더에 존재하는 avatar 파일들을 읽어드려 open_avatar_file_list로 설정합니다. Filter 값을 설정할 경우 filter의 확장자 파일들로 open_avatar_file_list를 설정합니다.

- Filter의 default는 “avt” 입니다.

def set_animation_folder(object, animation_folder_path, filter = "pos"):

- animation_folder_path는 string type, filter는 string type

- 이 함수는 사용자가 원하는 폴더에 존재하는 Animation 파일들을 읽어드려 open_animation_file_list로 설정합니다. Filter 값을 설정할 경우 filter의 확장자 파일들로 open_animation_file_list를 설정합니다.

- Filter의 default는 “pos” 입니다.

def get_max_count(object):

- 이 함수는 open할 file들의 list (avatar, garment, animation) 중에서 가장 큰 사이즈의 list의 item count를 반환합니다.

def set_auto_save(object, bAutoSave):

- 이 함수는 파일 Export 시 CLO Project File의 저장 여부를 결정합니다.

- bAutoSave가 True이면, 특정 포맷으로 파일을 Export할 때 파일의 이름과 동일한 이름으로 Project File을 함께 저장합니다.

- AutoSave의 default는 'True' 입니다.

def on_save_zprj_with_metadata_info(object, bWith_meta_data, image_number, save_type):

- bWith_meta_data는 boolen type이며 true인 경우 meta data를 함께 저장합니다. image_number는 저장할 scene의 snapshot 개수입니다. image는 360도로 회전하며 snapshot을 저장합니다. 각 snapshot의 회전 각도는 image_number / 360 으로 결정 됩니다. with_meta_data가 True인 경우에만 동작합니다. save type은 meta_data의 저장 방식을 결정합니다. 0으로 설정한 경우 저장할 project file과 동일한 이름의 폴더를 생성한 후 해당 폴더 아래에 xml file과 image들을 저장합니다. 1 인 경우 모든 meta data들이 zip file로 압축되어 저장됩니다.

- zprj (project file) 파일 저장 시 meta data를 함께 저장합니다. meta data에 대한 자세한 사항은 메뉴얼을 참조하십시요.

def on_export_garment_only(object):

- 이 함수는 전체 Scene 중에서 Garment만 export 하도록 설정 합니다.

def on_export_garment_with_relative_objects_only(object):

- 이 함수는 전체 Scene 중에서 Avatar를 제외한 object 들을 export 하도록 설정 합니다.

def on_export_avatar_only(object):

- 이 함수는 전체 Scene 중에서 Avatar만 export 하도록 설정 합니다.

def on_export_piping_pattern_only(object):

- 이 함수는 전체 Scene 중에서 piping pattern만 export 하도록 설정 합니다.

def on_export_zipper_teeth_pattern_only(object):

- 이 함수는 전체 Scene 중에서 zipper teeth pattern만 export 하도록 설정 합니다.

def on_export_trim_only(object):

- 이 함수는 전체 Scene 중에서 trim만 export 하도록 설정 합니다.

def on_export_graphics_only(object):

- 이 함수는 전체 Scene 중에서 graphics만 export 하도록 설정 합니다.

def on_export_zipper_puller_and_slider_only(object):

- 이 함수는 전체 Scene 중에서 zipper puller와 slider만 export 하도록 설정 합니다.

def on_export_button_hole_only(object):

- 이 함수는 전체 Scene 중에서 button hole만 export 하도록 설정 합니다.

def on_export_button_head_only(object):

- 이 함수는 전체 Scene 중에서 button head만 export 하도록 설정 합니다.

def on_export_obj_stitch_only(object):

- 이 함수는 전체 Scene 중에서 stitch만 export 하도록 설정 합니다.

Note. export_(something)_only 옵션은 설정하지 않는다면 모두 export 됩니다. 또한, obj를 export할 때만 동작 합니다.

def on_export_single_object(object):

- 이 함수는 전체 Mesh를 하나의 Mesh로 통합하여 export 하도록 설정 합니다.

- 이 함수는 on_export_multi_object 함수와 동시에 사용할 수 없으며 만약 동시에 사용했을 경우 마지막에 사용한 함수로 설정됩니다.

def on_export_multi_object(object):

- 이 함수는 전체 Mesh를 각각의 Mesh로 export 하도록 설정 합니다.

- 이 함수는 on_export_single_object 함수와 동시에 사용할 수 없으며 만약 동시에 사용했을 경우 마지막에 사용한 함수로 설정됩니다.

def on_export_save_with_texture(object):

- 이 함수는 export file과 texture file를 zip 파일로 압축하여 export하도록 설정 합니다.

def on_export_diffuse_color_combined(object):

- 이 함수는 의상에 설정한 텍스처 이미지와 diffuse color를 합쳐 하나의 이미지로 저장하도록 설정 합니다.

def on_export_exclude_ambient_color(object):

- 이 함수는 의상에 설정한 컬러 값 중 Ambient 값을 제외하고 재질(Material)을 저장하도록 설정 합니다.

def on_export_include_inner_shape(object):

- 이 함수는 의상에 포함된 내부선분의 정보도 함께 저장하도록 설정 합니다.

def on_export_save_meta_data(object):

- 이 함수는 meta data를 함께 저장하도록 합니다. meta data에 대한 자세한 사항은 메뉴얼을 참조하십시요.

def set_export_unified_uv_texcoordnate(object, bTexture_bake, texture_bake_size, fill_texture_seam):

- bTexture_bake는 여러장의 텍스쳐를 한장으로 export 합니다. texture_bake_size는 btexture_bake 옵션을 True로 설정한 경우 저장되는 Texture의 해상도를 결정합니다. min - max 는 100 - 10000 pixel이며 지정한 입력한 size로 image의 width와 height를 설정합니다.

- 이 함수는 여러장의 텍스쳐를 한장으로 저장하도록 설정 합니다.

- CLO는 texture coordinate를 사용하며 일반적인 UV (0 - 1) 좌표를 사용하지 않습니다. 이 함수는 export 시 UV를 0-1 사이로 변환해주도록 설정할 수 있습니다.

def set_export_axis_x(object, axis):

- axis는 string type "Y" or "Z"로 설정 할 수 있습니다. axis는 대소문자를 구분하지 않습니다.

- 이 함수는 x축을 입력받은 axis축으로 변경합니다. 이 함수를 설정할 경우 axis 축은 자동으로 X축으로 변환됩니다.

def set_export_axis_y(object, axis):

- axis는 string type "X" or "Z"로 설정 할 수 있습니다. axis는 대소문자를 구분하지 않습니다.

- 이 함수는 y축을 입력받은 axis축으로 변경합니다. 이 함수를 설정할 경우 axis 축은 자동으로 Y축으로 변환됩니다.

def set_export_axis_z(object, axis):

- axis는 string type "X" or "Y"로 설정 할 수 있습니다. axis는 대소문자를 구분하지 않습니다.

- 이 함수는 z축을 입력받은 axis축으로 변경합니다. 이 함수를 설정할 경우 axis 축은 자동으로 Z축으로 변환됩니다.

def on_export_invert_x(object):

- 이 함수는 x 축을 반전하도록 설정 합니다.

def on_export_invert_y(object):

- 이 함수는 y 축을 반전하도록 설정 합니다.

def on_export_invert_z(object):

- 이 함수는 z 축을 반전하도록 설정 합니다.

def go_animation_first_frame(object):

- 이 함수는 에니메이션의 첫 번째 프레임으로 이동한 뒤 그 프레임의 Scene을 export 하도록 설정 할 수 있습니다. 이 함수를 호출하는 경우 바로 export를 하는 것은 아닙니다. 이 함수는 process 함수가 진행되면서 export 함수에 영향을 줍니다.

- 이 함수는 go_animation_end_frame함수와 동시에 사용할 수 없으며, go_animation_first_frame이 우선 됩니다.

def go_animation_end_frame(object):

- 이 함수는 에니메이션의 마지막 프레임으로 이동한 뒤 그 프레임의 Scene을 export 하도록 설정 할 수 있습니다. 이 함수를 호출하는 경우 바로 export를 하는 것은 아닙니다. 이 함수는 process 함수가 진행되면서 export 함수에 영향을 줍니다.

- 이 함수는 go_animation_first_frame함수와 동시에 사용할 수 없으며, go_animation_first_frame이 우선 됩니다.

def set_windcontroller_wind_activate(object, bActivate):

- bActivate은 boolean type. default는 True.

- 이 함수는 바람 제어의 활성화 상태를 변경 합니다.

def set_windcontroller_wind_type(object, windType):

- windType은 integer type. wind type 이 0이면, sphercal. 1이면, planar. default는 1.

- 이 함수는 바람의 유형을 설정 합니다.

def set_windcontroller_wind_strength(object, strength):

- strength은 floating point type. default는 1000.00

- 이 함수는 바람의 세기를 설정 합니다.

def set_windcontroller_wind_decay(object, decay):

- decay은 floating point type. default는 0.00

- 이 함수는 바람의 영향이 미치는 거리를 설정합니다. 설정한 값만큼 바람이 포물선을 그리며 약해집니다.

def set_windcontroller_wind_frequency(object, frequency):

- frequency은 floating point type. default는 0.00

- 이 함수는 바람의 주기를 설정합니다. 초 단위 간격으로 설정한 값마다 바람이 약해졌다 강해졌다를 반복합니다.

def set_windcontroller_wind_turbulence(object, turbulence):

- turbulence은 floating point type. default는 30.00

- 이 함수는 바람의 강도의 불규칙한 정도를 설정합니다. 값이 클수록 더욱 불규칙해집니다.

def set_windcontroller_translate_x(object, x):

- x은 floating point type. default는 -700.00

- 이 함수는 wind controller의 x 좌표 위치를 설정 합니다.

def set_windcontroller_translate_y(object, y):

- y은 floating point type. default는 1000.00

- 이 함수는 wind controller의 y 좌표 위치를 설정 합니다.

def set_windcontroller_translate_z(object, z):

- z은 floating point type. default는 300.00

- 이 함수는 wind controller의 z 좌표 위치를 설정 합니다.

def set_skin_offset(object, offset):

- offset은 floating point type. default는 3.0

- 이 함수는 아바타와 의상간의 거리를 설정 합니다.

def set_simulation_quality(object, qulity):

- qulity는 integer type. qulity = 0이면 Complete, qulity = 1이면 Normal, qulity = 2이면 Custom으로 설정 됩니다. default는 1.

- 이 함수는 Simulation의 preset을 지정하도록 설정 합니다.

def set_simulation_time_step(object, time_step):

- time_step은 floating point type. default는 0.03333333

- 이 함수는 설정한 시간만큼 1번의 simulation을 처리 합니다.

def set_simulation_number_of_simulation(object, number_of_Simulation):

- number_of_Simulation은 integer type. default는 1.

- 이 함수는 time step 마다 입력된 횟수만큼 시뮬레이션을 실행 합니다.

- 예를들어, 1일 경우 time step 마다 1번의 시뮬레이션을 실행 합니다.

1을 초과하는 값이 들어올 경우, time step 마다 입력된 횟수만큼 시뮬레이션을 실행 합니다.

def set_simulation_cg_finish_condition(object, cg_finish_condition):

- cg_finish_condition은 integer type. default는 0.

- 이 함수는 Simulation의 Conjugate Gradient 종료 조건을 변경 합니다. 0이면 Iteration, 1이면 Residual 입니다.

- Simulation Conjugate Gradient라는 것은 Simulation의 정확도를 향상시키기 위한 기법 입니다. 내부적으로 여러번 계산하며, 시간에 비례하여 정확도가 올라갑니다. CG(Conjugate Gradient)는 계산을 언제 종료할 것인지에 대한 조건이 필요 합니다.

1) iteration count : 계산하는 횟수를 지정하여 시뮬레이션 속도를 일정하게 합니다. 시뮬레이션 속도를 중시하고자 할 때 선택 합니다. 값이 낮을수록 속도가 올라가며, 정확도가 내려 갑니다. 값이 높을수록 속도가 내려가며, 정확도가 올라 갑니다.

2) residual : 계산 결과 후의 시뮬레이션 정확도 편차를 지정 하여, 시뮬레이션 정확도를 일정하게 합니다. 시뮬레이션 정확도를 중시하고자 할 때 선택 합니다. 값이 낮을수록 정확도가 올라가며, 속도가 떨어 집니다. 값이 높을수록 정확도가 떨어지지만, 속도가 올라 갑니다.

def set_simulation_cg_iteration_count(object, simulation_cg_iteration_count):

- simulation_cg_iteration_count은 integer type. default는 50.

- 이 함수는 Conjugate Gradient 계산 횟수를 지정 합니다.

- 값이 낮을수록 속도가 올라가며, 정확도가 내려 갑니다.

값이 높을수록 속도가 내려가며, 정확도가 올라 갑니다.

def set_simulation_cg_residual(object, CGResidual):

- CGResidual은 floating point type. default는 0.000100.

- 이 함수는 Conjugate Gradient 정확도 편차를 지정 합니다.

- 값이 낮을수록 정확도가 올라가며, 속도가 내려 갑니다.

값이 높을수록 정확도가 내려가며, 속도가 올라 갑니다.

def set_simulation_self_collision_iteration_Count(object, selfCollisionIterationCount):

- selfCollisionIterationCount은 integer type. default는 1.

- 이 함수는 Simulation Property의 time step 속성을 변경 합니다.

def set_simulation_air_damping(object, airDamping):

- airDamping은 floating point type. default는 1.0.

- 이 함수는 air damping을 설정 합니다. air damping이란 공기의 마찰로 물체의 속도를 제어 합니다.

def set_simulation_gravity(object, gravity):

- gravity은 floating point type. default는 -9800.

- 이 함수는 중력의 세기를 변경 합니다.

def set_simulation_number_of_cpu_in_use(object, numberOfCPUInUse):

- numberOfCPUInUse은 integer type. default는 4.

- 이 함수는 Simulation을 처리할 CPU 숫자를 설정 합니다.

def set_simulation_nonlinear_simulation(object, bNonlinearSimulation):

- bNonlinearSimulation은 boolean type. default는 False.

- 이 함수는 nonlinear simulation 적용 여부를 설정 합니다.

def set_simulation_ground_collision(object, bGroundCollision):

- bGroundCollision은 boolean type. default는 True

- 이 함수는 지면 충돌처리 적용 여부를 설정 합니다.

def set_simulation_ground_height(object, groundHeight):

- groundHeight은 floating point type. default는 0.0.

- 이 함수는 지면충돌시, 지면으로부터 얼마나 떨어진 곳에서 충돌 검사할 것인지를 설정 합니다.

def set_simulation_avatar_cloth_collision_detection_triangle_vertex(object, bSolidTriangleToClothVertexCollision):

- bSolidTriangleToClothVertexCollision은 boolean type. default는 True

- 이 함수는 아바타와 옷 사이의 충돌 감지 옵션을 설정 합니다.

def set_simulation_self_collision_detection_trianlge_vertex(object, bVertexTriangleSelfCollision):

- bVertexTriangleSelfCollision은 boolean type. default는 True.

- 이 함수는 의상 사이의 충돌을 처리할 시 삼각형과 점간의 충돌 처리 여부를 설정 합니다.

def set_simulation_self_collision_detection_edge_edge(object, bEdgeEdgeSelfCollision):

- bEdgeEdgeSelfCollision은 boolean type. default는 True.

- 이 함수는 의상 사이의 충돌을 처리할 시 엣지와 엣지간의 충돌을 고려할 것인지를 설정 합니다.

def set_simulation_self_collision_detection_avoidance_stiffness(object, SelfCollisionStiffness):

- SelfCollisionStiffness은 floating point type. default는 0.001000.

- 이 함수는 의상 사이의 충돌을 관리하기 위한 수치를 설정 합니다. 이 수치가 작으면 의상과 의상이 충분히 가까워졌을 때 붙는 현상이 많이 사라지지만, 의상이 더 쉽게 꼬입니다. 이 수치가 크면 의상과 의상 충돌이 잘 꼬이지 않으나, 가까워졌을 때 붙는 현상이 더 잘 발생합니다.

def set_simulation_proximity_detection_vertex_triangle(object, bVertexTriangleProximity):

- bVertexTriangleProximity은 boolean type. default는 True.

- 이 함수는 아바타와 의상 사이의 충돌을 효율적으로 관리하기 위한 함수입니다. true이면 점-삼각형 사이의 거리를 체크하여 가까이 있는 경우 적절한 힘으로 서로를 떨어뜨려놓지만 false이면 아무것도 하지 않습니다.

def set_simulation_proximity_detection_edge_edge(object, bEdgeEdgeProximity):

- bEdgeEdgeProximity은 boolean type. default는 True.

- 이 함수는 아바타와 의상 사이의 충돌을 효율적으로 관리하기 위한 함수입니다. true이면 엣지-엣지 사이의 거리를 체크하여 가까이 있는 경우 적절한 힘으로 서로를 떨어뜨려놓지만 false이면 아무것도 하지 않습니다.

def set_simulation_intersection_resolution(object, bIntersectionResolution):

- bIntersectionResolution은 boolean type. default는 True.

- 이 함수는 충돌이 일어난 의상의 교차지역을 효율적으로 감소시키는 intersection resolution 과정을 진행할 지의 대한 여부를 설정 합니다.

def set_simulation_layer_based_collision_detection(object, bUseLayer):

- bUseLayer은 boolean type. default는 True.

- 이 함수는 Layer를 반영하여 Simulation을 처리할 것인지를 선택 합니다.

def on_move_garment(object):

- move garment 옵션을 사용하도록 설정 합니다.

- 이 함수는 Garment를 Animation의 시작위치로 이동하도록 합니다.

def single_process(object, open_garment_path, open_avatar_path, open_animation_path, save_file_path, obj_type = 0, simulation_delay_time = 5000, simulation_quality = 0, simulation = True, auto_save_project_file = True):

- single_process는 인자로 넘어온 경로들에 위치한 파일들을 순차적으로 로드하고 save_file_path에 결과 파일을 저장합니다.

- obj_type은 불러올 파일이 obj일 경우에만 적용합니다. obj_type이 0일 경우 불러온 obj file은 avatar로 불러오며 1인 경우 trim object로 로드되며 2인 경우 obj to Garment file로 불러옵니다.

- simulation_delay_time은 파일을 불러온 이후 animation을 진행하기 전 animation의 안정성을 높이기 위해 지연 시간을 설정할 때 사용합니다.avatar와 의상은 처음 불러온 위치에서 지연 시간동안 Simulation을 진행 한 이후 Animation을 시작합니다.

- simulation_delay_time은 micro second를 사용합니다. (1000 == 1 second)

- simulation_quality는 Simulation 할 때의 정밀도를 조절하는데 사용합니다. 0인 경우 Normal 상태로 Simulation을 진행하며 1인 경우 Complete 상태로 Simulation을 진행합니다.simulation_quality는 CLO의 Simulation Quality와 동일합니다. 자세한 설명은 Manual을 참조하십시요.

- Simulation 인자는 파일을 로드한 이후에 Simulation 여부를 결정하는 인자입니다. True 인 경우 파일을 모두 로드한 이후에 Simulation을 진행합니다. 기본 값은 True입니다.

- auto_save_project_file은 save_file_path와 동일한 Folder에 Project File을 자동으로 저장하는 옵션입니다. 기본 값은 True입니다.

Note. single_process는 호출했을 때 단 한 번 파일을 저장합니다. 여러 개의 파일을 저장하고 싶다면 “process" 함수를 이용하십시요.

def process(object):

- process 함수는 설정된 파일들을 로드하고 Animation을 녹화 또는 포즈를 변경한 이후 Animation 파일 또는 의상, 아바타 파일로 저장하는 함수입니다.

- process 함수는 파일 설정, import/export 설정이 모두 완료된 상태에서 호출하여야 합니다. process 함수는 설정된 file 리스트들을 이용하여 1개에서부터 수십 개의 파일들을 로드하고 저장할 수 있습니다.

- 각각의 export되는 결과물은 하나의 import / export 옵션으로 설정되어 처리됩니다.

- 자세한 사안은 example.py 파일을 참고하시기 바랍니다.

 

 

 

도움이 되었습니까?
2명 중 2명이 도움이 되었다고 했습니다.

댓글

댓글을 남기려면 로그인하세요.