이 페이지에서

Glow QML Type

소스 이미지를 흐릿하게 처리하고 색상을 입힌 뒤, 원본 이미지 뒤에 배치하여 소스가 빛나는 듯한 인상을 줍니다. 더 보기...

Import Statement: import Qt5Compat.GraphicalEffects
Since: QtGraphicalEffects 1.0
Inherits:

Item

속성

상세 설명

출처적용된 효과

검은 배경 위의 흰 나비

가장자리가 빛나는 나비

예시

다음 예제는 이 효과를 적용하는 방법을 보여줍니다.

import QtQuick
import Qt5Compat.GraphicalEffects

Item {
    width: 300
    height: 300

    Rectangle {
        anchors.fill: parent
        color: "black"
    }

    Image {
        id: butterfly
        source: "images/butterfly.png"
        sourceSize: Qt.size(parent.width, parent.height)
        smooth: true
        visible: false
    }

    Glow {
        anchors.fill: butterfly
        radius: 8
        color: "white"
        source: butterfly
    }
}

속성 설명

cached : alias

이 속성을 사용하면 렌더링 성능을 향상시키기 위해 이펙트 출력 픽셀을 캐시에 저장할 수 있습니다.

소스나 효과 속성이 변경될 때마다 캐시에 저장된 픽셀을 업데이트해야 합니다. 효과 출력을 저장하기 위해 추가 메모리 버퍼가 필요하기 때문에 메모리 사용량이 증가합니다.

소스 또는 효과 속성이 애니메이션 처리되는 경우 캐시를 비활성화하는 것이 좋습니다.

기본적으로 이 속성은 ' false'로 설정되어 있습니다.

color : alias

이 속성은 광효 흉에 사용되는 RGBA 색상 값을 정의합니다.

기본적으로 이 속성은 "white" 로 설정되어 있습니다.

서로 다른 색상 값을 사용한 출력 예시

하얀 빛 효과

초록빛 광효응

반투명한 녹색 빛

color: #ffffff color: #00ff00 color: #aa00ff00
radius: 8radius: 8radius: 8
samples: 17samples: 17samples: 17
spread: 0.5spread: 0.5spread: 0.5

radius : alias

반경은 광채의 부드러움을 결정합니다. 반경이 클수록 광채의 가장자리가 더 흐릿하게 보입니다.

반경 값에 따라, 시각적 품질을 보장하기 위해 ‘ samples ’의 값을 충분히 크게 설정해야 합니다.

이상적인 블러 효과는 ‘ samples ’과 ‘ radius ’을 다음과 같이 선택하여 ‘ samples = 1 + radius * 2 ’이 되도록 설정할 때 얻을 수 있습니다. 예를 들면 다음과 같습니다.

반경샘플
0 (블러 없음)1
13
25
37

기본적으로 이 속성은 ` floor(samples/2)`로 설정되어 있습니다.

반지름 값이 다른 출력 예시

글로우 효과 없음

중간 정도의 발광 반경

넓은 발광 반경

반지름: 0 반지름: 6 반경: 12
samples: 25samples: 25samples: 25
color: #ffffffcolor: #ffffffcolor: #ffffff
spread: 0spread: 0spread: 0

참고: ` radius `속성은 이펙트의 오프스크린 버퍼 크기를 계산하는 데 사용됩니다. 값이 클수록 더 많은 메모리가 할당됩니다.

samples : alias

이 속성은 가장자리 부드럽게 처리 블러 계산 시 픽셀당 샘플을 몇 개 채취할지 정의합니다. 값이 클수록 품질은 좋아지지만, 렌더링 속도는 느려집니다.

이상적으로는 이 값을 필요한 최대 반경 값에 1을 더한 값의 두 배로 설정하는 것이 좋습니다. 예를 들면 다음과 같습니다.

반경샘플 수
0 (블러 없음)1
13
25
37

기본적으로 이 속성은 ` 9`로 설정되어 있습니다.

이 속성은 애니메이션을 적용하기 위한 용도가 아닙니다. 이 속성을 변경하면 기본이 되는 OpenGL 셰이더가 재컴파일됩니다.

source : alias

이 속성은 생성된 글로우의 소스로 사용될 소스 항목을 정의합니다.

참고: 예를 들어 소스를 효과의 상위 요소로 설정하는 등, 효과가 스스로를 포함하도록 하는것은 지원되지않습니다 .

spread : alias

이 속성은 광원의 가장자리 부근에서 글로우 색상이 얼마나 강하게 표현될지를 정의합니다.

값의 범위는 0.0에서 1.0까지입니다. 기본적으로 이 속성은 0.5 로 설정되어 있습니다.

참고: 이 구현은 중간 및 낮은 확산 값에 최적화되어 있습니다. 광원에 따라 확산 값이 1.0에 가까울수록 시각적으로 비대칭적인 결과가 나타날 수 있습니다.

다양한 확산 값을 적용한 출력 예시

번짐 없이 은은한 광채를 연출하세요

중간 정도의 발색으로 은은하게 빛나세요

전체적으로 환하게 빛나세요

확산: 0.0 확산: 0.5 spread: 1.0
radius: 8radius: 8radius: 8
samples: 17samples: 17samples: 17
color: #ffffffcolor: #ffffffcolor: #ffffff

transparentBorder : alias

이 속성은 효과에 투명한 테두리가 적용될지 여부를 결정합니다.

true 로 설정하면 항목의 바깥쪽에 투명한 테두리가 추가되어, 소스 텍스처 외부에서 샘플링할 때 테두리 픽셀 대신 투명도가 사용됩니다. 이 속성이 없으면 테두리가 불투명한 이미지는 테두리가 흐려지지 않습니다.

기본적으로 이 속성은 ` true`로 설정되어 있습니다. 소스 이미지에 이미 투명한 테두리가 있는 경우, 블러 처리 속도를 아주 약간 높이기 위해 이 속성을 `false`로 설정하십시오.

아래 코드 예시에서 왼쪽의 Rectangle은 투명한 테두리를 가지고 있어 가장자리가 흐릿하게 처리된 반면, 오른쪽의 Rectangle은 그렇지 않습니다.

import QtQuick
import Qt5Compat.GraphicalEffects

Rectangle {
    width: 180
    height: 100

    Row {
        anchors.centerIn: parent
        spacing: 16

        Rectangle {
            id: normalRect
            width: 60
            height: 60
            color: "black"
            radius: 10
            layer.enabled: true
            layer.effect: Glow {
                samples: 15
                color: "blue"
                transparentBorder: false
            }
        }

        Rectangle {
            id: transparentBorderRect
            width: 60
            height: 60
            color: "black"
            radius: 10
            layer.enabled: true
            layer.effect: Glow {
                samples: 15
                color: "blue"
                transparentBorder: true
            }
        }
    }
}

투명 테두리 설정 간의 차이를 보여주는 사각형

© 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.