Trail Renderer 컴포넌트는 움직이는 게임 오브젝트 뒤에 폴리곤 트레일을 렌더링합니다. 이동하는 물체의 움직임이나 이동하는 물체의 경로 또는 위치를 강조할 때 사용할 수 있습니다.
트레일 렌더러는 라인 렌더러와 동일한 알고리즘을 트레일 렌더링에 사용합니다.
트레일 렌더러를 생성하려면 다음 절차를 따르십시오.
기본적으로 트레일 렌더러는 빌트인 머티리얼인 Default-Line을 사용합니다. 머티리얼을 변경하지 않고도 트레일의 모습을 수정(예: 트레일의 컬러 그레디언트 또는 너비 편집)할 수 있습니다.
텍스처를 트레일에 적용하는 등과 같은 다른 효과를 구현하려면 다른 머티리얼을 사용해야 합니다. 새 머티리얼에 대한 자체 셰이더를 작성하고 싶지 않은 경우 Unity의 빌트인 스탠다드 파티클 셰이더를 트레일 렌더러와 함께 사용하면 매우 효과적입니다. 텍스처를 트레일 렌더러에 적용하는 경우 텍스처는 사각형 모양(예: 256x256 또는 512x512)이어야 한다.
트레일 렌더러에 머티리얼을 두 개 이상 적용하는 경우 트레일은 머티리얼당 한 번만 렌더링됩니다.
자세한 내용은 머티리얼 생성 및 사용을 참조하십시오.
Min Vertex Distance 값은 트레일을 적용할 게임 오브젝트가 새 세그먼트가 트레일에 추가되기 전에 월드 공간 단위로 얼마나 이동해야 하는지 결정합니다. 0.1과 같이 값을 낮게 설정하면 트레일 세그먼트가 더 자주 생성되어 트레일이 부드럽게 구현됩니다. 1.5와 같이 값을 높게 설정하면 세그먼트가 더 울퉁불통한 모습으로 구현됩니다. 또한 버텍스가 서로 매우 가깝고 트레일이 짧은 거리에서 방향을 급격히 변경하면 넓은 트레일에 시각적 결함이 보일 수 있습니다.
성능상의 이유로 원하는 효과를 달성하기 위해 허용되는 최대값을 사용하는 것이 좋습니다.
이 하위 섹션은 다음의 항목에 대해 다룹니다.
프로퍼티 | 기능 | |
---|---|---|
Width | 길이를 따라 위치한 트레일의 너비를 조절하려면 이 프로퍼티에서 너비 값 및 커브 값을 지정하면 됩니다. 커브는 각각의 버텍스에서 샘플링되므로 정확성은 트레일 내 존재하는 버텍스 수로 제한됩니다. 트레일의 전반적인 너비는 너비 값으로 조정할 수 있습니다. |
|
Time | 트레일의 포인트 수명(초)을 정의합니다. | |
Min Vertex Distance | 트레일의 포인트 간 최소 거리(월드 공간 단위로)를 정의합니다. | |
AutoDestruct | 이 설정을 활성화하면 Time 초 동안 움직이지 않은 후 Trail Renderer 컴포넌트가 연결된 게임 오브젝트를 파괴합니다. | |
Emitting | 활성화하면 Unity가 트레일에 새 포인트를 추가합니다. 비활성화하면 Unity는 트레일에 아무 포인트도 추가하지 않습니다. 이 설정을 사용하여 트레일 생성을 중지 또는 재개하십시오. | |
Color | 그레디언트를 지정하여 길이를 따라 트레일의 컬러를 조정합니다. Unity는 각 버텍스에서 컬러 그레디언트의 컬러를 샘플링하고, 각 버텍스 사이의 컬러에 선형 보간을 적용합니다. 트레일에 더 많은 버텍스를 추가하면 더욱 세밀한 그레디언트를 구현할 수 있습니다. |
|
Corner Vertices | 이 프로퍼티는 트레일의 코너를 그릴 때 쓰이는 추가 버텍스를 결정합니다. 이 값을 올리면 트레일의 코너가 더 둥글게 됩니다. | |
End Cap Vertices | 이 프로퍼티는 트레일의 끝부분을 그릴 때 쓰이는 추가 버텍스를 결정합니다. 이 값을 올리면 트레일의 끝이 더 둥글게 됩니다. | |
Alignment | 트레일이 향하는 방향을 설정합니다. | |
View | 트레일이 카메라를 향합니다. | |
TransformZ | 트레일이 Transform 컴포넌트의 Z축을 향합니다. | |
Texture Mode | 텍스처가 트레일에 적용되는 방식을 제어합니다. | |
Stretch | 트레일의 전체 길이를 따라 텍스처를 한 번 매핑합니다. | |
Tile | 월드 공간 단위의 트레일에 기반하여 트레일을 따라 텍스처를 반복합니다. 타일링 속도를 설정하려면 Material.SetTextureScale을 사용하십시오. | |
DistributePerSegment | 모든 버텍스의 간격이 균등하다는 가정하에 트레일의 전체 길이를 따라 텍스처를 한 번 매핑합니다. | |
RepeatPerSegment | 트레일을 따라 텍스처를 반복합니다. 반복 속도는 트레일 세그먼트당 한 번입니다. 타일링 속도를 조정하려면 Material.SetTextureScale을 사용하십시오. | |
Shadow Bias | 그림자 결함을 제거하기 위해 광원에서 그림자를 움직일 정도를 설정합니다. | |
Generate Lighting Data | 활성화하면 Unity가 포함된 노멀과 탄젠트를 사용하여 트레일 지오메트리를 빌드합니다. 이를 통해 씬 조명이 사용하는 머티리얼을 사용할 수 있습니다. |
Materials 섹션에는 이 컴포넌트가 사용하는 모든 머티리얼이 나열됩니다.
프로퍼티 | 설명 |
---|---|
Size | 머티리얼 리스트 요소의 수입니다. 요소의 수를 줄일 경우 Unity는 리스트 끝에서 요소를 삭제합니다. 요소의 수를 늘리면 Unity는 리스트의 끝에 새로운 요소를 추가합니다. Unity는 리스트의 끝에서 요소가 사용하는 동일한 머티리얼로 새로운 요소를 채웁니다. |
Element | 리스트의 머티리얼입니다. 머티리얼 에셋을 각 요소에 할당할 수 있습니다. 기본적으로 Unity는 머티리얼의 이름을 토대로 리스트를 알파벳 순으로 정렬합니다. 이 리스트는 순서를 변경할 수 있으며 Unity는 해당 순서가 변경되면 요소의 수를 자동으로 업데이트합니다. |
Light 섹션에는 조명과 관련된 프로퍼티가 포함되어 있습니다.
프로퍼티 | 설명 | |
---|---|---|
Cast Shadows | Specify if and how this Renderer casts shadows when a suitable Light shines on it. This property corresponds to the Renderer.shadowCastingMode API. |
|
On | This Renderer casts a shadow when a shadow-casting Light shines on it. | |
Off | This Renderer does not cast shadows. | |
Two-sided | This Renderer casts two-sided shadows. This means that single-sided objects like a plane or a quad can cast shadows, even if the light source is behind the mesh. For Baked Global Illumination or Enlighten Realtime Global Illumination to support two-sided shadows, the material must support Double Sided Global Illumination. |
|
Shadows Only | This Renderer casts shadows, but the Renderer itself isn’t visible. | |
Receive Shadows | Specify if Unity displays shadows cast onto this Renderer. This property only has an effect if you enable Baked Global Illumination or Enlighten Realtime Global Illumination for this scene. This property corresponds to the Renderer.receiveShadows API. |
|
Contribute Global Illumination | 전역 조명 계산에 이 렌더러가 사용되며 베이크 타임 시 발생합니다. 이 프로퍼티는 씬에 대해 베이크된 전역 조명 또는 인라이튼 실시간 전역 조명을 활성화하는 경우에만 효과를 발휘합니다. 이 프로퍼티를 활성화하면 게임 오브젝트의 정적 에디터 플래그에서 GI 플래그 기여가 활성화됩니다. 이는 StaticEditorFlags.ContributeGI API에 해당합니다. |
|
Receive Global Illumination | Unity는 베이크된 라이트맵이나 런타임 라이트 프로브에서 전역 조명 데이터를 이 렌더러에 제공합니다. 이 프로퍼티는 Contribute Global Illumination을 활성화하는 경우에만 편집할 수 있습니다. 이 씬에 대한 베이크된 전역 조명이나 인라이튼 실시간 전역 조명을 활성화하는 경우에만 효과를 발휘합니다. 이 프로퍼티는 MeshRenderer.receiveGI API에 해당합니다. |
|
Lightmaps | Unity는 라이트맵에서 이 렌더러에 전역 조명 데이터를 제공합니다. | |
Light Probes | Unity는 씬의 라이트 프로브에서 이 렌더러에 전역 조명 데이터를 제공합니다. | |
Prioritize Illumination | 이 프로퍼티를 활성화하면 인라이튼 실시간 전역 조명 계산에 이 렌더러를 항상 포함할 수 있습니다. 이를 통해 성능상의 이유로 전역 조명 계산에서 일반적으로 제외되는 멀리 떨어진 이미시브에도 렌더러가 영향을 받는지 확인합니다. 이 프로퍼티는 게임 오브젝트의 정적 에디터 플래그에서 Contribute Gi가 활성화되고 프로젝트는 빌트인 렌더 파이프라인을 사용하며 인라이튼 실시간 전역 조명이 씬에서 활성화된 경우에만 표시됩니다. |
Probes 섹션에는 라이트 프로브와 반사 프로브에 관한 프로퍼티가 포함되어 있습니다.
프로퍼티 | 설명 | |
---|---|---|
Light Probes | Set how this Renderer receives light from the Light Probes system. This property corresponds to the Renderer.lightProbeUsage API. |
|
Off | The Renderer doesn’t use any interpolated Light Probes. | |
Blend Probes | The Renderer uses one interpolated Light Probe. This is the default value. | |
Use Proxy Volume | The Renderer uses a 3D grid of interpolated Light Probes. | |
Custom Provided | The Renderer extracts Light Probe shader uniform values from the MaterialPropertyBlock. | |
Proxy Volume Override | Set a reference to another GameObject that has a Light Probe Proxy Volume component. This property is only visible when Light Probes is set to Use Proxy Volume. |
|
Reflection Probes | Set how the Renderer receives reflections from the Reflection Probe system. This property corresponds to the Renderer.probeAnchor API. |
|
Off | Disables Reflection Probes. Unity uses a skybox for reflection. | |
Blend Probes | Enables Reflection Probes. Blending occurs only between Reflection Probes. This is useful in indoor environments where the character may transition between areas with different lighting settings. | |
Blend Probes and Skybox | Enables Reflection Probes. Blending occurs between Reflection Probes, or between Reflection Probes and the default reflection. This is useful for outdoor environments. | |
Simple | Enables Reflection Probes, but no blending occurs between Reflection Probes when there are two overlapping volumes. | |
Anchor Override | Set the Transform that Unity uses to determine the interpolation position when using the Light Probe or Reflection Probe systems. By default, this is the centre of the bounding box of the Renderer’s geometry. This property corresponds to the Renderer.probeAnchor API. |
Additional Settings 섹션에는 추가 프로퍼티가 포함되어 있습니다.
프로퍼티 | 설명 | |
---|---|---|
Motion Vectors | Set whether to use motion vectors to track this Renderer’s per-pixel, screen-space motion from one frame to the next. You can use this information to apply post-processing effects such as motion blur. Note: not all platforms support motion vectors. See SystemInfo.supportsMotionVectors for more information. This property corresponds to the Renderer.motionVectorGenerationMode API. |
|
Camera Motion Only | Use only Camera movement to track motion. | |
Per Object Motion | Use a specific pass to track motion for this Renderer. | |
Force No Motion | Do not track motion. | |
Dynamic Occlusion |
Dynamic Occlusion이 활성화되면 Unity의 오클루전 컬링은 정적 오클루더에 의해 카메라 뷰에서 차단될 때 이 렌더러를 컬링합니다. 이 동적 오클루전이 활성화되지 않으면 시스템은 정적 오클루더에 의해 카메라 뷰에서 차단되면 이 렌더러를 컬링하지 않습니다. 동적 오클루전은 기본값으로 활성화되어 있습니다. 이 옵션은 벽 뒤의 캐릭터 윤곽을 드로우하는 것과 같은 효과에 대해 비활성화합니다. |
|
Sorting Layer | 이 렌더러의 정렬 레이어 이름입니다. | |
Order in Layer | 정렬 레이어 내에서 이 렌더러의 순서입니다. |