TECHARTNOMAD | TECHARTFLOWIO.COM

SUBSTANCE

Value Processor :: ATOMIC NODE

jplee 2023. 5. 20. 10:29

Value 프로세서란?

입력 텍스처로부터 상수 값을 반환 하는 역할을 주요 하게 한다.

 

일반적인 Value Processor 사용 이다.

이제 어떤 식으로 Value Processor 내부에 수식을 만들고 어떤 과정을 사용 하여 설정을 했는지 보자.

 

가지 간단한 예제를 직접 따라 보자.

 

이미지 값을 곱한 평가 값 산출.

개의 이미지를 입력 받고 Value Processor 사용 하여 곱한 단일 상수 값으로 평가값을 내어 보자.

신류 sbs 문서를 생성 하고 비어있는 Graph 만들자.

 

 

Node 검색창을 열고 Value 라고 검색 하여 Value Processor 하나 추가 한다.

 

Value Processor 보면 Input Image 0 으로 이미지가 입력 되야 한다는 있다.

실제 이것의 목적은 영문 설명에서도 있지만 입력 필터의 단일 값을 평가 하는 역할을 한다.

이해가 어렵다면 한번 과정을 거치면서 만들어 보자.

 

 

간단히 먼저 Uniform Color 추가 하고 Gray scale 변경 연결 한다.

 

Value Processor Function Edit 버튼을 클릭 하여 편집창으로 진입 한다.

 

편집창으로 진입 했다면 Sample Gray 하나 추가 해야 한다.

Pixel Processor 마찬가지로 이미지를 입력 받기 위한 Sampler 있어야 한다.

 

 

그리고 Set as Output Node 선택 한다.

그래야 현재 노드의 결과값을 반환 준다.

 

 

Uniform color 완전히 흰색으로 변경 봤다.

그림처럼 Value Processor 값이 1 라면 현재까지 올바르게 따라 것이다.

 

 

이제 확장 해서 개의 입력을 받은 입력 값을 서로 곱해보자.

 

원본 Uniform Color 복사 값을 0.5 변경 하고 Value Processor 추가 연결 줬다.

연결 Port 없어도 당황 하지 말고 연결 선을 Value Processor 가져다 대면 자동으로 추가 되며 연결 된다.

 

 

함수 편집창으로 다시 들어 와서 Sampler 하나 추가 해야 한다.

당연히 입력 이미지가 개이기 때문에 당연히 추가 해야 한다.

 

 

추가 Sampler 선택 하고 입력되는 이미지의 Port 수정 줘야 한다.

상단의 입력은 Inptu Image 0 이고 번째 만든 하단의 입력은 Input Image 1 되야 맞다.

 

 

곱셈 연산을 위해 Multipication 추가 한다.

 

값을 Multipication 연결 하고 Multipication 선택 상태에서 Set as Output Node 실행 하자.

 

 

 

평가 결과값이 산출 되었다.

하지만 이상하게도 1 0.5 곱했는데 0.5 값이 출력 되지 않고 0.498039 라는 값으로 출력 되었다.

Uniform Color float 값이 Sampler 통해 입력 Floating point 특성을 반영 하고 있는 것으로 보이는데 이것은 컴퓨터 연산 구조적인 Floating point 특성 때문에 발생 문제로 다음에 다시 설명 하기로 하겠다.

 

처럼 고정 상수값으로 곱했을 때는 0.5 출력 한다.

 

 

Value Processor 이후에 자동화 메트리얼 시스템을 만들 유용 하게 사용 되기 때문에 전체적인 구성 순서를 이해 하고 있어야 한다.

외부 변수를 추가 하는 방법은 뒤에서 다시 알아 보자.