SLI Zone

NVIDIA.com Gelato Zone Home
 
Download the free version

Gelato 팁 & 트릭

시스템, 구성 및 설치 Gelato 사용

Gelato 검사
Gelato를 검증하기 위한 유틸리티 프로그램이 옳게 설치되었습니다

Mango, 설치 후 로드 실패
접할 수 있는 간헐적 오류

Gelato 및 그 외의 렌더링 패키지
다른 렌더러가 있는 기계에 Gelato 설치

Gelato 2.0에서 텍스처 굽기
조명 및 섀도 텍스처 맵을 만듭니다

Sorbetto 광선 투사법 반영 및 굴절
광선 투사법을 업데이트할 필요가 없을 때 Sorbetto를 가속화합니다

대체 버킷 순서
수직 및 나선형 렌더링은 Gelato의 옵션입니다

모션 번짐으로 스트로브
스트로브 오류를 교정하는 방법

디렉토리에서 모든 .gsl 파일을 컴파일
컴파일된 Gelato 셰이더를 구성하는 유틸리티



Gelato 검사

Gelato가 옳게 기능하고 있다는 것을 검증하기 위한 빠른 방법은 –확인 기능의 사용을 통해서입니다. 시스템의 상세한 디버깅을 제공하지는 않지만 주요 파일이 적절히 설치되었는지, 적합한 라이센스가 있는지와 작동하고 있고 호환성이 있는 GPU 및 드라이버가 있는지를 말해 줍니다. 또한, Gelato가 사용할 수 있는지 확인하기 위해 빠른 렌더를 실행할 것입니다.

명령어 라인에서, 다음을 실행합니다:

gelato –check –verbosity 2

Windows의 시작 메뉴에서 Gelato 검사를 실행할 수도 있습니다:

시작/모든 프로그램/NVIDIA 기업/Gelato/Gelato 검사

Gelato 검사는 이것과 비슷한 무언가를 출력할 것입니다 (출력 컨텐츠는 시스템에 따라 다를 수 있습니다):


Mango, 설치 후 로드에 실패

Gelato 및 Mango는 대부분의 경우 문제 없이 설치합니다. 하지만 이따금씩, 알 수 없는 이유로 인해, Mango는 Windows상에서 올바르게 설치하지 않습니다. 새로운 버전의 Gelato를 방금 설치했고 Maya가 Mango 플러그인을 적절히 로드하지 않거나 Gelato 셸프에 아이콘을 포함한 경우, Mango가 실행하도록 하기 위한 쉬운 수정이 가능합니다.

첫 번째로 해야 하는 것은 Maya 플러그인 매니저를 열고 Mango가 로드되는지 확인합니다. Maya에서 \Window\Settings/Preferences\Plug-In 매니저 메뉴로 갑니다. Mango.mil 플러그인이 로드되는지 확인합니다. 해당 박스에 체크 표시가 되어 있지 않을 경우, 체크 표시를 합니다. 자동 로드 상자도 마찬가지고 체크표시해야 할 것입니다.

이렇게 했는데도 문제가 해결되지 않을 경우, 시스템을 재부팅합니다. Mango는 Maya가 시작할 때마다 이제 정상적으로 로드해야 합니다.

이 비상주 버그는 설치 프로그램이 Windows OS와 상호 작용하는 방법과 관계하고 이를 추적하기 위한 모든 노력을 저지합니다.. 모든 Gelato 설치를 억지로 재부트시켜 문제를 해결할 수 있지만 이 해결 방법은 이 버그를 결코 볼 수 없는 대다수의 사람들에게 고통을 안겨주는 것입니다.


Gelato 및 그 외의 렌더링 패키지

같은 기계에 Gelato 및 그 외의 렌더러를 설치할 경우, Gelato를 먼저 설치해야 합니다, 그렇지 않을 경우 Mango가 적절히 로드하지 않을 수도 있습니다. 이미 또다른 렌더러를 설치했고 Gelato를 설치할 경우, Mango가 기본 경로를 찾을 수 있도록 환경 변수들을 편집할 필요가 있을 수 있습니다. Gelato 및 Mango 경로가 다른 렌더러의 경로 앞에 나타나도록 MAYA_SCRIPT_PATH 및 MAYA_PLUG_IN_PATH 환경 변수를 편집하십시오. Gelato는 다른 렌더러와 같은 기계에서 적절히 공존할 수 있지만, 일부 경우에 Gelato 경로는 다른 렌더러의 경로를 반드시 선행해야 합니다.


Gelato 사용

Gelato 2.0에서 텍스처 굽기

Gelato 2.0을 사용하여 조명 및 섀도를 텍스처 맵으로 구울 수 있습니다. 이것은 Gelato 2.1에서 Maya 내 Mango 메뉴에 해당 옵션을 추가함으로써 쉽게 행해질 수 있을 것이지만 당분간 다음 절차를 사용하여 텍스처 맵을 생성할 수 있습니다.

  1. 다음 두 가지 방법 중 하나를 사용하여 공간 데이터베이스(SDB)로 구우려고 하는 모든 것을 저장하십시오:
    • spatialdbsave()로 적합한 호출을 추가하여 셰이더 선택을 수정하십시오. 이것을 행하는 방법에 대한 예제는 bake.gsl을 참고하십시오.
    • 원하는 셰이더 출력을 굽고 있는 셰이더의 ‘데이터’ 입력에 첨부하기 위해 ConnectShader만을 사용하여 bake.gsl을 직접 사용하십시오.
  2. bake.gsl로부터 볼 수 있는 것처럼, spatialdbsave() 함수는 어떤 데이터 형식을 사용할 것인지에 대한 옵션을 포함하여 SDB가 렌더링의 끝에 쓰여져야 한다는 것을 자체적으로 지정할 수 있습니다.
  3. 이미지 파일SDB 파일 이름에 imageio 플러그인(.exr, .tif 등과 같은)에 해당하는 이미지 파일을 나타내는 확장자를 제공한다는 것을 확인합니다.
  4. 렌더합니다. Gelato가 종료하기 전에, 이미지 파일 (spatialdbsave()로 보내진 희소 데이터를 보간)과 같은 구운 데이터를 쓸 것입니다.
  5. 다른 객체들은 다른 SDB로 (그러므로 다른 구운 텍스처로) 혹은 하나의 SDB로 모두 (하지만, 겹치지 않는 텍스처 공간 영역에 있다는 것을 확인하는 것은 사용자에게 달렸습니다) 저장할 수 있습니다.
  6. 굽고 있는 객체에 대해 Attribute('int cull:occlusion', 0), Attribute('int dice:rasterorient', 0) 및 가능하게 Attribute('int[2] dice:fixed')을 주의깊게 살펴보아 이 객체들이 추려지지 않거나 샘플 수가 적지 않도록 확인해볼 필요가 있습니다 (어떤 주기를 갖고 있든지 음영이 된 곳에 구어진 데이터만을 생성합니다).

Sorbetto 광선 투사법 반영 및 굴절

장면에 광선 투사된 반사 혹은 굴절 혹은 음영 맵을 포함되는 경우, 보통 모든 Sorbetto 리렌더러로 업데이트됩니다. 이러한 기본 비헤비어는 모든 리렌더러로 가장 정확한 이미지를 제공하지만, 정확한 반사 및 굴절 혹은 음영에 의존하지 않도록 조정하려면 이 비헤비어 기능을 해제하고 리렌더러를 크게 가속화할 수 있습니다.

Mango에서 Gelato 셸프는 이 비헤비어를 조정하는 두 개의 버튼을 포함합니다. 재음영 광선및 음영 맵 업데이트 버튼을 오프로 토클하여 렌더링을 크게 가속화합니다. 일단 원하는 대로 조명을 획득하면, 이 버튼들을 다시 토클하고 최종 렌더를 만들 수 있습니다. 렌더링에서 상당한 시간을 절약합니다.


대체 버킷 순서

2.35: 1 종횡 비율에서 많은 군중 장면을 렌더링하고 나서야 10,000 문자 모두를 교차하는 스캔라인에 도달하면 렌더러가 결국은 스크리칭 정지가 된다는 것을 알았습니까?

카메라 매트릭스를 변경하고 완료시 이미지를 회전하기 위해 입력 파일들을 수정하여 해당 이미지를 이미지 측면으로 회전시키는 곳에 트릭이 있을 수 있습니까?

Gelato에서는 불필요합니다. 파일에 붙이기만 하면 됩니다:

Attribute ('string bucketorder', 'vertical')

또는 Maya/Mango를 사용하고 있을 경우, 렌더 설정/Gelato/메모리 및 성능 옵션/버킷 순서로 가서 디폴트인 “수평”에서 “수직”으로 변경하여 이 매개변수를 설정할 수 있습니다.

프레임의 중앙에서 렌더를 시작하고 밖으로 향하게 작용시키기 위해 매개변수를 "나선형" 으로 설정할 수도 있습니다.


모션 번짐으로 스트로브

Gelato 이미지에서 모션 번짐으로 스트로빙 효과를 보고 있다면, 임시 샘플링을 너무 낮게 설정하였을 수 있습니다. Gelato 샘플링은 다른 렌더러에 비해 매우 저렴하고 의미심장한 히트를 경험하지 않고 샘플 수를 흔히 늘릴 수 있습니다.

두 개의 모션 번짐 Gelato 이미지들 ; 첫 번째 이미지는 temporalquality를 8로 설정; 두 번째 이미지는 64로 설정.

시간 샘플 수가 모션 번짐수에 비해 충분히 높지 않을 경우, 빠르게 움직이고 있는 객체는 여러 “밟아 뭉개진” 이미지로 분리하거나 스트로브로 보입니다. 이런 경우 'temporalquality'를 증가시켜야 합니다 .

Maya/Mango에서 Render 설정/Gelato/모션 번짐을 렌더로 가서 이것을 수행할 수 있습니다.


디렉토리에서 모든 .gsl 파일을 컴파일

디렉토리에서 모든 gsl 파일을 gso 로 컴파일하는 Makefile (GNU에서는 'make')이 아래에 있습니다. 이 파일들이 마지막으로 컴파일되었던 때 이후로 변경했던 파일들만을 컴파일합니다. 사본을 또한 첨부했습니다. 첨부된makefile(우측 클릭하고 "대상을 다른 이름으로 저장.."을 선택합니다)을 사용하십시오, 아래의 텍스트를 잘라내어 붙여넣지 마십시오, 왜냐면 탭 및 공백은 Makefiles에서 중요한 부분이기 때문입니다, 하지만 웹 페이지상에서 정확하게 재생성하는 것은 쉽지 않습니다.

.SUFFIXES : .gsl .gso

# INCLUDES 는 디렉토리를 포함하는 모든 –I 명령어를 보유합니다
# 셰이더 헤더 파일. 아래 예제는 $GELATOHOME/shaders에서만 포함합니다.
# 사이트 디폴트를 필요시 수정합니다.
INCLUDES := -I$(GELATOHOME)/shaders

%.gso: %.gsl
gslc $(INCLUDES) $< -o $@


shader_srcs := ${wildcard *.gsl}
shader_objs := ${patsubst %.gsl,%.gso, ${shader_srcs}}


.PHONY: all clean
all: ${shader_objs}

clean:
rm -f ${shader_objs}