파티클 흐름의 고급 데이터 조작 도구 세트는 다양한 데이터 유형을 사용합니다. 다음은 하위 연산자 입력 커넥터인 각 유형을 그림으로 표시한 전체 리스트입니다.
부울 - 파란색
복합 - 녹청색
같음 - 초록색
정수 - 남색
매트릭스 - 적갈색
오브젝트 - 주황색
쌍 - 분홍색
쿼터니언 - 노란색
실수 - 빨간색
시간 - 청록색
벡터 - 보라색
색상은 데이터 뷰에서 입력 및 출력 커넥터에 의해 사용되며 특정한 경우 정식 인터페이스에서 지정하는 값에 대한 대체 구성으로 추가 입력을 활성화하는 버튼에 의해 사용됩니다.
대부분의 데이터 유형은 자체적으로 설명이 가능합니다. 다음 내용에서 나머지를 다룹니다.
일부 하위 연산자는 벡터, 정수 또는 시간 형식에 잘 맞지 않는 데이터를 생성합니다. 따라서 두 개의 새 "가상" 유형이 추가되었습니다.
쌍 = { 벡터 + 정수 }
복합 = { 벡터 + 정수 + 시간 }(일반적인 복소수가 아님).
다음은 쌍 및 복합 유형이 사용되는 상황에 대한 설명입니다.
입력 중 하나가 쌍 유형 = { 벡터 + 정수 }이며 여기서 벡터 입력은 오브젝트의 로컬 좌표 위치이고 정수 입력은 오브젝트 선택 하위 연산자에 정의된 대로 오브젝트의 인덱스입니다. 오브젝트 하위 연산자가 한 번에 여러 오브젝트와 작업할 수 있기 때문에 오브젝트 인덱스가 필요합니다. 함께 작업할 단일 참조 오브젝트가 있는 경우 정수 값은 0으로 설정되어야 합니다. 또한 주의 사항으로, 데이터 뷰의 인덱스는 0 기준입니다(0부터 세기 시작). 인덱스가 1 기준인 MAXScript와 다릅니다. 따라서 오브젝트 선택 하위 연산자에 정의된 대로 여러 참조 오브젝트가 있는 경우 해당 인덱스는 0, 1, 2 등입니다.
출력이 쌍 유형 = { 벡터 + 정수 }이며 여기서 정수는 오브젝트 인덱스 및 면 인덱스를 포함하는 합성 인덱스이고 벡터는 로컬 면 좌표의 위치입니다. 가장 가까운 점을 계산할 때 연산자는 오브젝트 선택 하위 연산자에 정의된 대로 모든 참조 오브젝트를 통해 검색하고 이 면의 표면에서 가장 가까운 점뿐만 아니라 가장 가까운 면을 찾습니다. 로컬 면 좌표는 기준 벡터로 면의 가장자리를 사용합니다.
출력이 복합 유형 = { 벡터 + 정수 + 시간 }이며 여기서 정수 및 벡터는 위의 예와 같은 의미를 가지며 시간은 충돌 시간입니다.
이 옵션은 오브젝트의 면 영역을 계산하는 데 사용할 수 있습니다(또는 면의 선택 상태). 또한 합성 인덱스를 인덱스로 제공하기 위해 충분한 것 같습니다(오브젝트 인덱스 + 면 인덱스). 그러나 하위 연산자에는 쌍 유형 입력이 있습니다. 이는 출력으로 쌍이 있는 가장 가까운 점 옵션에서 와이어링을 간소화하기 위해 수행됩니다. 오브젝트 인덱스 + 면 인덱스가 다른 방식으로 만들어지면 변환 하위 연산자를 사용하여 쌍 유형을 만들 수 있습니다. 쌍 유형의 다른 구성요소로 영 벡터만 사용합니다.
입력 중 하나가 쌍 유형 = { 벡터 + 정수 }이며 여기서 벡터 및 정수는 가장 가까운 점 옵션에서의 의미와 같습니다.
출력이 쌍 유형이며 가장 가까운 점 옵션에서의 의미와 같습니다.
출력이 쌍 유형 = { 벡터 + 정수 }이며 여기서 벡터는 표준 좌표의 위치이고 정수는 볼륨 공간으로 사용되는 오브젝트의 인덱스입니다.
같음 데이터 유형을 생성하는 유일한 하위 연산자는 매개변수 하위 연산자입니다. 매개변수 하위 연산자는 여러 하위 연산자에 대해 동일한 매개변수 값을 설정(또는 사용자 설정)하는 데 특히 유용합니다. 종종 이 공통 매개변수는 나중에 인터페이스에서 노출됩니다.
간단한 한 가지 예: 오브젝트의 표면에서 임의로 파티클을 배치하는 데이터 연산자를 만들고 임의 초기 속도를 설정하려고 합니다. 위치에 대해 형상 하위 연산자(임의 표면 점)를 사용하고 임의 방향 확산에 대해 360도로 설정된 편차로 속도를 정의하는 벡터 하위 연산자를 사용합니다.
두 하위 연산자에 임의 시드 매개변수가 있습니다. 따라서 자연스럽게 사용자가 카오스 설정으로 재생할 수 있도록 임의 시드 매개변수를 노출하려고 합니다. 그러나 인터페이스에 두 개의 임의 시드 매개변수가 있는 것이 이상해 보일 수 있습니다. 따라서 형상 및 벡터 하위 연산자의 두 시드 매개변수를 유형이 고유성 시드인 단일 매개변수 하위 연산자로 와이어링할 수 있습니다. 그런 다음 매개변수 하위 연산자의 임의 시드를 노출할 수 있습니다.
같음 데이터 유형에는 실수, 정수, 시간, 동기화 및 시드 하위 유형이 있습니다. 각각 서로 다른 초록색 음영을 사용합니다. 매개변수 하위 연산자에는 각도, 부동, 백분율, 표준(모두 실수 유형), 정수, 시간, 애니메이션 동기화(동기화로) 및 고유성 시드(시드로)와 같은 여러 가지 출력 유형이 있습니다. 각도, 부동, 백분율, 표준은 UI에서 사용자에 표시된 것과 다르며 모두 실수입니다. 매개변수 출력은 일치하는 E 입력에만 와이어링할 수 있으며 일반적으로 아주 명확합니다. 하위 연산자의 임의 시드를 연결하면 매개변수 하위 연산자는 고유성 시드 유형도 가지게 됩니다.
매개변수 하위 연산자에 연결하는 대신 표준 3ds Max 스크립트 와이어링 기술을 사용하고 하위 연산자의 매개변수를 스크립트 와이어링하여 매개변수 하위 연산자 없이 사용할 수 있습니다. 그러나 스크립트 와이어링은 설정하는 데 시간이 더 걸리고 매개변수 하위 연산자에 대한 적절한 시각 참조가 없으며 저장/로드 및 복제 문제가 발생하기 쉽습니다.
때때로 두 개의 정수 값을 한 개의 값으로 묶을 필요가 있습니다. 예를 들어 정수가 합성 인덱스 = {오브젝트 인덱스 및 면/정점 인덱스}로 사용되는 경우입니다. a) 정수 데이터를 벗어난 합성 인덱스를 만들거나 b) 합성 인덱스에서 오브젝트 인덱스/또는 면/정점 인덱스를 분할하기 위해 변환 하위 연산자를 사용할 수 있습니다. 합성 인덱스는 새 데이터 유형이 아닙니다. 더 많은 정보를 정수 데이터 채널로 묶기 위한 방법입니다.