내용정리
이 논문은 **Pixel Stream Editor(PSE)**라는 개념을 소개한다.
PSE는 **현실감 있는 컴퓨터 생성 이미지(CG)**를 빠르고 효과적으로 만들 수 있는 Synthesizer다.
자연 현상의 복잡성은 전통적인 텍스처 매핑이나 성장 모델(growth model) 알고리즘보다는 비선형 함수들의 조합으로 더 잘 표현할 수 있다.
PSE를 이용하면 구름, 불, 물, 별, 대리석, 나무, 돌, 비누막, 크리스탈 등 다양한 자연 현상을 아주 빠르고 현실감 있게, 그리고 **픽셀 단위로 비동기 병렬 처리(asynchronously parallelizable)**하게 생성할 수 있다.
→ PSE를 통해 자연을 “시간적으로 성장”시키지 않고 “공간적으로 한번에” 만들 수 있다.
실시간 수정 가능 (컴파일 불필요, 픽셀별 인터프리트 방식)
픽셀마다 독립적으로 실행되는 인터프리터
→ 전체를 재컴파일 할 필요없음 (전체 빌드, 기계어 변환 등 무거운 과정 없이
→ 그냥 새로운 수식에 대한 계산만으로 각 pixel값 출력해낼 수 있음
비동기 병렬 계산 가능 (픽셀마다 독립적으로 연산가능(제어문 활용)
기본 함수(primitive functions) 조합 가능
Solid Texture 기반 (2D텍스처가 아니라 3D공간 전체에 걸쳐 자연스러운 질감 생성 가능)
몇 년 전 Perlin과 그의 동료들은 확률 기반의 Noise 함수를 개발했다.
하지만 이 방법은 자동화가 부족했다. (코드작성→컴파일→실행 수동반복)
이러한 문제를 해결하기 위해 Cook의 연구를 바탕으로 PSE를 개발했다.
픽셀별로 독립적인 연산 제어가 가능한 분기 기능(if, for, while...) 지원
→ 비동기적, 병렬적 픽셀 계산 처리 가능
모델링 공간 위에 정의된 함수들을 실시간으로 조합 가능 (박스 존재 → 박스의 위치를 입력으로 사용 → 해당 위치값으로 각 함수의 출력 계산 → 이를 기반으로 새로운 출력 생성)
적절한 기본 함수(primitive function)들을 조합하여 복잡한 자연현상을 간단히 시뮬레이션한다.
PSE : 각 픽셀에 적용되는 필터 (입력이미지 → 출력이미지)
PSE 의 특징
Interactive design cycle
: interactive하게 쓸 수록 효과를 볼 수 있음 → 이 사이클대로 PSE를 활용하면 가장 좋을 것 (1분 이내의 사이클)
기존 연구자들도 procedural texture 개념을 제안했었다.
하지만 2차원 위에서만 절차적 텍스처를 정의해 껍질처럼 덮어 씌우는게 전부였다.
지금까지는 2차원 정의역을 가진절차적 텍스처 개념(수학 함수를 통해 계산해서 텍스처를 생성하는 것)만 제안됨
→ Perlin은 3차원 정의역을 가진 함수으로의 확장을 시도
Space Function (3변수 함수)
장점
Shape(표면의 모양)와 Texture가 독립화된다.
→ 기존의 방식은 표면이 바뀌면 텍스처도 맞춰 다시 매핑을 해야했음
→ 모양을 바꿔도 그냥 그 모양에 맞게 깎아서계산을 하면 됨.
데이터가 작다.
Noise() 함수이다.