다음을 통해 공유


ID2D1EffectImpl::Initialize 메서드(d2d1effectauthor.h)

효과는 이 메서드를 사용하여 한 번 초기화 작업을 수행할 수 있습니다. 이 메서드가 필요하지 않은 경우 메서드는 S_OK 반환할 수 있습니다.

구문

HRESULT Initialize(
  [in] ID2D1EffectContext  *effectContext,
  [in] ID2D1TransformGraph *transformGraph
);

매개 변수

[in] effectContext

형식: ID2D1EffectContext*

효과 작성자 중심 형식을 만들고 반환하는 내부 컨텍스트 인터페이스입니다.

[in] transformGraph

형식: ID2D1TransformGraph*

효과는 변환 그래프를 토폴로지로 채울 수 있으며 나중에 업데이트할 수 있습니다.

반환 값

형식: HRESULT

메서드가 성공하면 S_OK 반환합니다. 실패하면 HRESULT 오류 코드가 반환됩니다.

설명

이렇게 하면 렌더링하는 동안이 아니라 리소스 만들기 비용이 CreateEffect 호출로 이동합니다.

구현이 이 호출에 실패하면 해당 ID2D1DeviceContext::CreateEffect 호출도 실패합니다.

다음 예제에서는 initialize 메서드를 구현하는 효과를 보여줍니다.

예제

다음은 initialize 메서드를 구현하는 효과를 보여 주는 예제입니다.

class CEffectImplementation : public ID2D1EffectImpl
{
public:

    virtual ~CEffectImplementation()
    {
        if (_pContextInternal != NULL)
        {
            _pContextInternal->Release();
        }
    }

    IFACEMETHODIMP Initialize(__in ID2D1DeviceContextInternal *pContextInternal, __in ID2D1TransformGraph *pTransformGraph)
    {
        HRESULT hr = S_OK;

        _pContextInternal = pContextInternal;
        _pContextInternal->AddRef();

								_pTransformGraph = pTransformGraph;
        _pTransformGraph>AddRef();

								// Populate the transform graph.					    

        return S_OK;
    }

private:

    ID2D1EffectContext *_pContextInternal;
    ID2D1TransformGraph *_pTransformGraph;
};

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 7용 Windows 8 및 플랫폼 업데이트 [데스크톱 앱 | UWP 앱]
지원되는 최소 서버 Windows Server 2008 R2용 Windows Server 2012 및 플랫폼 업데이트 [데스크톱 앱 | UWP 앱]
대상 플랫폼 Windows
헤더 d2d1effectauthor.h
라이브러리 D2D1.lib

추가 정보

ID2D1DeviceContext

ID2D1EffectImpl