받아온 RenderTexture를 저해상도로 축소해 GPU에서 되읽고, 1픽셀당 1점의 포인트 클라우드를 출력합니다. 각 점의 색은 그 픽셀의 색이고, Z는 휘도에 따라 -Z 방향(기본 카메라에서 볼 때 앞쪽)으로 융기합니다. Luma Threshold보다 어두운 픽셀은 점 자체가 만들어지지 않으므로, 임계값을 올리면 밝은 부분만 남는 성긴 포인트 클라우드가 됩니다. GPU에서의 되읽기가 비동기이기 때문에 영상보다 1~2프레임 늦습니다.
- Columns — 가로 방향 분할 수(기본값 64, 8~160으로 클램프). 세로 분할 수는 입력 RT의 종횡비에서 자동 계산됩니다(최소 2)
- World Width — 포인트 클라우드 전체의 월드 폭(기본값 20, 하한 0.1). 한 셀의 크기는 이것을 Columns로 나눈 값입니다
- Relief Height — 휘도가 1일 때의 융기량(기본값 4)
- Luma Threshold — 0~1로 클램프(기본값 0). 휘도는
0.299R + 0.587G + 0.114B입니다
입력 RT를 끊으면 점 개수가 0이 됩니다.
입력 포트
| Port ID | 타입 |
Render Texture | RenderTexture |
Columns | int |
World Width | float |
Relief Height | float |
Luma Threshold | float |
출력 포트
| Port ID | 타입 |
PointCloud | PointCloudOutput |
스크립트에서 설정할 수 있는 멤버
| 경로 | 타입 |
columnsInput | int |
sizeInput | float |
heightInput | float |
thresholdInput | float |
Synapse Apps (스크립팅)
await synapse.modules.create({ type: "TextureToPoints" })