Displace QML Type
지정된 변위 맵에 따라 소스 항목의 픽셀을 이동합니다. 더 보기...
| Import Statement: | import Qt5Compat.GraphicalEffects |
| Since: | QtGraphicalEffects 1.0 |
| Inherits: |
속성
- cached : bool
- displacement : real
- displacementSource : variant
- source : variant
상세 설명
| 출처 | 변위 소스 | 적용된 효과 |
|---|---|---|
|
|
|
예시
다음 예제는 이 효과를 적용하는 방법을 보여줍니다.
import QtQuick
import Qt5Compat.GraphicalEffects
Item {
width: 300
height: 300
Image {
id: bug
source: "images/bug.jpg"
sourceSize: Qt.size(parent.width, parent.height)
smooth: true
visible: false
}
Rectangle {
id: displacement
color: Qt.rgba(0.5, 0.5, 1.0, 1.0)
anchors.fill: parent
visible: false
Image {
anchors.centerIn: parent
source: "images/glass_normal.png"
sourceSize: Qt.size(parent.width/2, parent.height/2)
smooth: true
}
}
Displace {
anchors.fill: bug
source: bug
displacementSource: displacement
displacement: 0.1
}
}속성 설명서
cached : bool
이 속성을 사용하면 렌더링 성능을 향상시키기 위해 이펙트 출력 픽셀을 캐시에 저장할 수 있습니다.
소스나 효과 속성이 변경될 때마다 캐시에 저장된 픽셀을 업데이트해야 합니다. 효과 출력을 저장하기 위해 추가 메모리 버퍼가 필요하기 때문에 메모리 사용량이 증가합니다.
소스 또는 효과 속성이 애니메이션 처리될 때는 캐시를 비활성화하는 것이 좋습니다.
기본적으로 이 속성은 ' false'로 설정되어 있습니다.
displacement : real
이 속성은 변위의 배율을 정의합니다. 배율이 클수록 픽셀의 변위도 커집니다. 값을 0.0으로 설정하면 변위가 발생하지 않습니다.
값의 범위는 -1.0( displacementSource 에 따른 반전된 최대 변위)부터 1.0( displacementSource 에 따른 최대 변위)까지입니다. 기본적으로 이 속성은 0.0 (변위 없음)으로 설정되어 있습니다.
| 서로 다른 변위 값을 사용한 출력 예시 | ||
|---|---|---|
|
|
|
| 변위: -0.2 | 변위: 0.0 | 변위: 0.2 |
displacementSource : variant
이 속성은 변위 맵으로 사용될 항목을 정의합니다. displacementSource 항목은 중간 픽셀 버퍼에 렌더링됩니다. 그 결과의 빨간색 및 녹색 성분 값은 소스 항목의 픽셀 변위량을 결정합니다.
변위 맵의 형식은 탄젠트 공간 노멀 맵과 유사하며, 대부분의 3D 모델링 도구로 생성할 수 있습니다. 많은 이미지 처리 도구가 노멀 맵 생성을 지원합니다. 또는, 이 효과에 사용할 변위 맵을 적절하게 색상이 지정된 QML 요소로 사용할 수도 있습니다. 다른 QML 요소와 마찬가지로 이 요소도 애니메이션을 적용할 수 있습니다. 변위 맵의 크기는 소스 이미지( source)의 크기와 일치하는 것이 좋습니다.
변위 데이터는 RGBA 형식으로 해석됩니다. 각 픽셀에 대해 빨간색 채널은 x축 변위 값을, 녹색 채널은 y축 변위 값을 저장합니다. 이 효과에서는 파란색 및 알파 채널은 무시됩니다.
빨간색 채널 값 1.0을 완전한 빨간색(0.0은 빨간색이 전혀 없음)으로 가정할 때, 이 효과에서는 픽셀 구성 요소 값 0.5가 변위를 전혀 일으키지 않는 것으로 간주합니다. 0.5보다 큰 값은 픽셀을 왼쪽으로 이동시키고, 0.5보다 작은 값은 픽셀을 오른쪽으로 이동시킵니다. 마찬가지로, 녹색 채널 값이 0.5를 초과하면 픽셀이 위쪽으로 이동하고, 0.5 미만이면 아래쪽으로 이동합니다. 픽셀 단위의 실제 이동량은 ` displacement ` 속성에 따라 결정됩니다.
source : variant
이 속성은 ` displacementSource`의 데이터에 따라 변위될 픽셀의 소스 항목을 정의합니다.
참고: 예를 들어 소스를 이 효과의 상위 요소로 설정하는 등, 효과가 스스로를 포함하도록 하는것은 지원되지않습니다 .
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.





