동적 재질 연산자

동적 재질 연산자를 사용하면 이벤트 중에 변경될 수 있는 재질 ID를 파티클에 지정할 수 있습니다. 재질 ID를 기반으로 각 파티클에 다른 재질을 할당할 수도 있습니다. 애니메이션된 텍스처에 이 옵션을 사용할 경우 현재 이벤트에 소비한 시간이나 전체 사용 기간을 기반으로 각 파티클에 다른 프레임이나 맵을 할당할 수 있습니다. 애니메이션된 텍스처의 한 가지 예로는 분산 비트맵 맵으로 AVI 파일과 같은 다중 프레임 비트맵을 사용하는 재질이 있습니다. 애니메이션된 텍스처의 다른 예로는 파티클 사용 기간 맵이나 파티클 MBlur 맵을 사용하는 재질이 있습니다. 또는 여러/하위 오브젝트와 같은 복합 재질에서 다른 하위 재질을 사용할 수 있습니다.

주: 오브젝트 모션 블러를 사용할 때 이벤트에 파티클 사용 기간/MBlur/비트맵 맵에서 재질을 사용하는 동적 재질 연산자가 포함되어 있으면 이벤트에는 삭제 연산자나 생성 또는 충돌 생성 테스트가 포함되면 안 됩니다. 또한 다른 이벤트로 와이어링되는 테스트가 포함되어도 안 됩니다. 변화 없이 절대 시간으로 설정된 사용 기간 테스트 연산자 즉, 모든 파티클이 동시에 이벤트를 종료하는 경우는 유일하게 제외됩니다. 이러한 제한은 오브젝트 모션 블러를 사용할 때만 적용되며 이미지 모션 블러에는 제한이 없습니다.

절차

예: 사용 기간에 따라 파티클에 애니메이션 프레임을 할당하려면 다음을 수행하십시오.

  1. 애니메이션된 비트맵으로 사용할 파일을 준비합니다. AVI와 같은 다중 프레임 포맷이나 정물 이미지 시퀀스를 가리키는 IFL 파일(이미지 파일 리스트)이 될 수 있습니다. IFL 파일을 사용하면 미리 정의된 알파 채널이 포함된 Targa와 같은 포맷으로 이미지를 사용하여 파티클 불투명도를 선택적으로 지정할 수 있습니다.
  2. 재질 편집기를 열고 비트맵 맵을 분산 맵으로 할당합니다.
  3. 비트맵 이미지 파일 선택 대화상자를 사용하여 1단계의 파일을 비트맵으로 할당합니다. 이 대화상자는 처음으로 비트맵 맵을 할당하면 자동으로 나타나거나 맵의 비트맵 매개변수 롤아웃에서 비트맵 버튼을 클릭하면 나타납니다.
  4. 맵의 시간 롤아웃에서 프레임을 파티클 사용 기간에 동기화를 켭니다.
  5. 이미지 배경이나 알파 채널을 사용하여 투명도를 정의하려면 맵 롤아웃에서 불투명도 슬롯으로 이 맵을 복사하고 그에 따라 매개변수를 설정합니다.
  6. 재질 수준에서 (음영 처리된 재질을 뷰포트에 표시)를 설정합니다.
  7. 장면에 카메라를 추가하고 원하는 대로 설정합니다. 투시 뷰포트를 활성화하고 C 키를 눌러 카메라 뷰를 표시하도록 뷰포트를 설정합니다.
  8. 기본 파티클 흐름 시스템을 만듭니다.
  9. 파티클 뷰를 엽니다.
  10. 모양 연산자를 모양 직면 연산자로 대체합니다.

    이 연산자를 사용하면 애니메이션을 더 쉽게 볼 수 있습니다.

  11. 모양 직면 연산자를 클릭하고 롤아웃에서 카메라/오브젝트 보기 버튼을 클릭한 다음, 카메라를 선택합니다.
  12. 크기/폭 그룹에서 표준 공간 단위를 약 15로 늘립니다.
  13. 이벤트 01에 동적 재질 연산자를 추가하고 이 절차를 시작할 때 재질을 할당합니다.
  14. 뷰포트에 표시를 켭니다.
  15. 애니메이션된 텍스처 그룹에서 파티클 ID와 동일이 선택되어 있는지 확인하고 파티클 사용 기간 재설정을 켭니다.

    애니메이션된 텍스처와 함께 파티클 ID와 동일을 항상 선택하고 복합 재질을 사용할 때는 하위 재질 로토스코핑 옵션 중 하나를 선택합니다.

    파티클 사용 기간 재설정을 켜면 이벤트를 시작할 때 파티클 흐름에서 파티클의 사용 기간을 0으로 설정합니다. 이 예에서 파티클은 이벤트로 생성되므로 기술적으로는 파티클 사용 기간 재설정을 켤 필요가 없습니다. 그러나 애니메이션이 항상 첫 번째 프레임부터 재생되도록 하는 것이 좋습니다.

  16. 애니메이션을 재생합니다.

    뷰포트에서 파티클이 이동할 때 비트맵 애니메이션이 진행되지만 사용 기간에 관계없이 모든 파티클에 동일한 프레임이 표시됩니다. 뷰포트 상호 작용의 제한과 관련된 이상 동작입니다. 그러나 파티클은 정확하게 렌더링됩니다.

  17. 애니메이션을 렌더링합니다.

    각 파티클이 생성되면 첫 번째 프레임부터 애니메이션을 표시하기 시작합니다. 각 프레임에서 각 파티클의 사용 기간이 증가하고 적용된 맵의 다음 프레임을 표시합니다.

예: 파티클 사용 기간 맵을 사용하려면 다음을 수행하십시오.

    파티클 사용 기간 맵은 전체 수명 동안 파티클에 최대 세 개의 다른 색상이나 맵을 적용하며 파티클의 사용 기간이 증가하면서 점차 다음 맵으로 변경됩니다. 이 효과는 화재 시의 불꽃 등에 사용할 수 있습니다. 처음에는노란색이지만 냉각됨에 따라 빨간색으로 바뀌고, 마지막에는 회색 재가 됩니다. 파티클 사용 기간에서 수명을 통해 진행된 거리를 확인하려면 파티클에 제한된 수명을 지정해야 합니다. 이 작업은 삭제 연산자를 사용하여 수행합니다.

  1. 3ds Max를 시작하거나 재설정한 다음 파티클 흐름 시스템을 추가합니다.
  2. 파티클 뷰와 재질 편집기를 열고 나란히 배치합니다.
  3. 파티클 뷰에서 이벤트 01에 동적 재질 연산자 및 삭제 연산자를 추가합니다.

    파티클 사용 기간이 작동하려면 삭제 연산자가 동적 재질 연산자와 동일한 이벤트에 있어야 합니다. 또는 모든 이벤트에 영향을 주도록 전역 이벤트에 삭제 연산자를 추가할 수 있습니다.

  4. 삭제 연산자를 클릭하고 매개변수 패널에서 파티클 사용 기간별을 선택한 다음 수명 기간은 100, 변형은 0으로 설정합니다.

    이렇게 하면 각 파티클에 3 1/3초의 수명이 지정됩니다.

  5. 동적 재질 연산자를 클릭합니다.
  6. 재질 편집기에서 파티클 사용 기간 맵을 분산 맵으로 할당합니다. 파티클 사용 기간 매개변수 롤아웃에서 빨간색, 초록색 및 파란색과 같이 서로 다른 세 가지 색상을 설정합니다. 필요에 따라 나이 백분율 값도 변경합니다. 예를 들어 각 파티클에서 전체 수명의 1/2이 아닌 1/3에 두 번째 색상을 표시하도록 하려면 나이 #2를 33으로 변경합니다.
  7. 샘플 슬롯에서 파티클 뷰의 동적 재질 매개변수 롤아웃에 있는 재질 버튼으로 활성 재질을 드래그합니다. 인스턴스(복사) 대화상자가 나타나면 확인을 클릭하여 기본 선택 사항인 인스턴스를 적용합니다.
  8. 동적 재질 매개변수에서 재질 할당 ID가 켜져 있는지 확인합니다.

    켜져 있지 않으면 모든 파티클의 색상이 동시에 변경됩니다.

    뷰포트에 표시을 켤 필요가 없으며 파티클 사용 기간 맵이 뷰포트에 나타나지 않습니다.

  9. 애니메이션이나 몇 가지 대표적인 프레임을 렌더링합니다.

    각 파티클이 사라지면 점차 색상이 변경되고 가장 오래된 파티클이 먼저 변경됩니다.

    팁: 이 방법을 사용하기 위해 파티클을 실제로 삭제할 필요는 없습니다. 여러 가지 방법으로 이 문제를 방지할 수 있습니다. 애니메이션의 길이보다 더 큰 숫자로 수명 기간을 설정한 다음 파티클 사용 기간 맵 매개변수에서 나이 #2와 나이 #3 설정을 낮춥니다. 또는 로컬 삭제 연산자를 사용하고 있는 경우에는 삭제되도록 예약되기 직전에 나이 테스트를 사용하여 다른 이벤트로 파티클을 이동할 수 있습니다. 이런 경우 갑작스러운 색상 변경을 방지하려면 파티클 사용 기간 맵과 동일한 최종 색상이나 맵을 사용하는 재질과 함께 정적 재질 연산자를 후속 이벤트에 추가할 수 있습니다.

인터페이스

사용자 인터페이스는 파티클 뷰 대화상자 오른쪽의 매개변수 패널에 나타납니다.

주: 동적 재질 롤아웃의 라디오 버튼을 사용하면 애니메이션된 텍스처를 사용하는지 복합 재질을 사용하는지에 따라 여러 가지 방법으로 파티클에 재질 ID를 할당할 수 있습니다. 기본값은 파티클 ID와 동일입니다.
재질 할당
설정하면 연산자가 지정된 재질(다음 매개변수 참조)을 파티클에 할당합니다. 기본적으로 켜져 있습니다.
[버튼]
연산자에 재질을 할당하려면 이 버튼을 사용합니다. 버튼을 클릭한 다음 재질/맵 브라우저를 사용하여 재질을 선택합니다. 또는 재질 편집기 샘플 슬롯에서 버튼으로 재질을 드래그합니다.

연산자에 재질을 할당하면 해당 이름이 버튼에 나타납니다.

재질 ID 할당
설정하면 연산자가 각 파티클에 대한 재질 ID 번호를 정의합니다. 기본적으로 켜져 있습니다.

일반적으로 설정된 상태로 유지됩니다. 파티클 흐름에서는 파티클 사용 기간 맵에 재질 ID를 사용하여 수명 및 현재 사용 기간을 포함한 재질의 다른 특성을 찾습니다. 또한 복합 재질에 재질 ID를 사용하여 파티클에 할당할 하위 재질을 파악합니다.

뷰포트에 표시
설정하면 파티클이 형상으로 표시될 때 파티클에 적용된 재질이 뷰포트에 표시됩니다.
하위 재질 ID 오프셋
다중/하위 오브젝트 재질과 함께 재질 상속을 사용할 때 동적 재질 연산자는 이 값을 재질 ID 값에 추가하여 하위 재질 ID를 만듭니다. 파티클 흐름에서는 재질의 하위 재질 ID에 따라 상속할 재질의 하위 재질을 결정하고 해당 이벤트의 파티클에 적용하는 데 이 ID를 사용합니다.

애니메이션된 텍스처 그룹

파티클 ID와 동일
파티클에 동일한 재질 ID를 해당 파티클 ID로 할당합니다. 비트맵, 파티클 사용 기간 또는 파티클 MBlur 맵과 같은 애니메이션된 텍스처를 포함하는 재질을 사용할 때 이 옵션을 선택합니다.
주: 파티클 흐름은 생성 시 0에서 시작하여 파티클 ID를 연속해서 파티클에 할당합니다. 가능한 최대 파티클 ID는 2,000,000,000보다 크지만 가능한 최대 재질 ID 는 65535입니다. 그런 후에는 번호 지정 순서가 다시 0에서 시작합니다. 따라서 동적 재질 연산자에 할당된 재질에 파티클 사용 기간을 사용하는 경우 최상의 결과를 얻으려면 총 65,536개 이하의 파티클을 사용합니다.
파티클 사용 기간 재설정
설정하면 이벤트를 시작할 때 각 파티클의 사용 기간을 0으로 설정합니다.

비트맵 맵에서 애니메이션된 재질을 사용할 때는 애니메이션이 항상 첫 번째 프레임부터 시작되도록 이 옵션을 켜십시오.

사용 기간 간격띄우기 임의 추출
설정하면 파티클 흐름에서 파티클 사용 기간과 시작 재질 ID 간의 차이를 임의로 변경합니다. 최대 차이는 최대 간격띄우기 매개변수로 결정됩니다.
최대 간격띄우기
파티클 흐름에서 파티클 사용 기간을 임의로 변경할 수 있는 최대 프레임 수입니다.

하위 재질 로토스코핑 그룹

다음 설정을 사용하면 여러/하위 오브젝트와 같은 복합 재질을 사용할 때 연산자에서 재질 ID 할당을 변경하는 기준을 선택하고 변경 속도를 지정할 수 있습니다.

재질 ID
모든 파티클에 동일한 재질 ID를 할당합니다. 숫자 필드를 사용하여 ID 값을 설정합니다.
주기
1에서 N 사이의 재질 ID를 증가하는 순서대로 파티클에 할당합니다. 여기서 N은 # 하위 재질입니다. 첫 번째 ID가 1로 할당되면 그 다음은 2로 할당되어 N까지 계속해서 1씩 증가합니다. 그런 다음에는 다시 1부터 시작하는 방식입니다.
임의
1에서 N 사이의 임의 재질 ID를 각 파티클에 할당합니다. 여기서 N은 # 하위 재질입니다.
# 하위 재질
주기 또는 임의 옵션을 사용하여 파티클에 할당된 가장 큰 ID 번호입니다.

일반적으로 다중/하위 오브젝트 재질의 하위 재질 수와 동일하게 설정합니다. 더 작은 수로 설정하면 연산자에서 해당 하위 재질만 사용하며 첫 번째에서 시작하여 증가합니다.

주: 3ds Max에서는 처음으로 연산자에 재질을 적용할 때 한 번만 재질의 하위 재질 수로 이 값을 자동 설정합니다. 이후에 재질 자체가 변경되거나 연산자에 다른 재질을 적용해도 설정이 변경되거나 업데이트되지 않습니다.
초당 속도
할당된 재질 ID가 증가되는 초당 횟수를 설정합니다. 이 값이 파티클에서 이벤트를 시작하는 속도와 같으면 파티클당 하나의 ID가 할당됩니다. 해당 속도보다 낮으면 다중 파티클에 동일한 ID가 지정되고, 더 높으면 파티클 흐름에서 파티클당 1보다 빠르게 할당된 ID를 증가시킵니다.

예를 들어 파티클이 1초의 1/60 간격, 초당=30으로 이벤트에 진입하면 각 파티클 쌍에 동일한 ID가 할당됩니다. 또는 파티클이 1초의 1/15 간격, 초당=30으로 이벤트에 진입하면 파티클당 두 배만큼 ID가 증가(또는 임의로 변경)됩니다.

루프

설정하면 마지막 ID가 할당된 것이며 파티클 흐름에서 첫 번째 ID로 돌아가 주기를 계속합니다. 끄면 파티클 흐름에서 마지막 주기 ID를 모든 후속 파티클에 할당합니다. 주기 할당 방법에서만 사용할 수 있습니다. 기본값은 해제입니다.

예를 들어 이벤트를 시작하는 처음 8개의 파티클에서 서로 다른 재질을 사용하고 모든 후속 파티클에서 9번째 재질을 사용한다고 가정합니다. 이렇게 하려면 9개의 하위 재질이 있는 다중/하위 오브젝트 재질을 만들고 동적 재질 연산자에 할당합니다. 주기 할당 방법을 선택하고 # 하위 재질을 9로 설정합니다. 파티클에서 이벤트를 시작하는 속도로 초당 속도 값을 설정합니다. 마지막으로 루프를 끕니다.

동기화 기준

애니메이션된 매개변수를 적용할 시간 프레임을 선택합니다. 재질 ID 및 주기 옵션에서만 사용할 수 있습니다.

  • 절대 시간매개변수용으로 설정된 키가 설정된 실제 프레임에서 적용됩니다.
  • 파티클 사용 기간매개변수용으로 설정된 키가 각 파티클이 존재하는 해당 프레임에 적용됩니다.
  • 이벤트 기간매개변수용으로 설정된 키가 이벤트에 처음 진입할 때 시작하는 각 파티클에 적용됩니다.
임의 간격띄우기

설정하면 파티클 흐름에서 파티클 사용 기간과 할당된 재질 ID 간의 차이를 임의로 변경합니다. 최대 차이는 숫자 매개변수로 결정됩니다. 재질 ID 및 주기 옵션에서만 사용할 수 있습니다.

고유성 그룹

고유성 설정에서는 임의 옵션을 사용하여 할당된 ID의 순서를 변경하고 사용 기간 간격띄우기 임의 추출 옵션으로 간격띄우기를 변경합니다.

시드
무작위 값을 지정합니다.
새로 만들기
무작위 공식을 사용하여 새 시드를 계산합니다.