Class PdnCrystalizeEffect
- Namespace
- PaintDotNet.Effects.Gpu
- Assembly
- PaintDotNet.Effects.Gpu.dll
Provides Paint.NET's Crystalize effect as a DynamicEffect that can be used for rendering with Direct2D.
public sealed class PdnCrystalizeEffect : PdnDistortionEffect, ISerializable, IDynamicEffect, IDynamicImage, IDeviceImage, IDirect2DResource, IObjectRef, IIsDisposed, IDisposable, IFactoryProperty, IInternalImpl
- Inheritance
-
PdnCrystalizeEffect
- Implements
- Inherited Members
Remarks
The difference between an IDynamicImage and an IDynamicEffect is
intention, not functionality. IDynamicEffects are intended as public APIs
that can be gathered using reflection and displayed in a UI, such as a node/graph editor,
alongside regular IDeviceEffects. If an IDynamicImage is not an
IDynamicEffect, then it should not be considered an "effect" that can be
surfaced in a UI that works with effects (such as a node/graph editor).
The effect metadata properties (DisplayName, etc.) are intended to be presented to the user
and should not be relied upon to have any specific text or pattern. They may be changed at
any time, and may be localized (translated).
NOTE: Due to limitations in the Direct2D effects and rendering systems, inputs to dynamic
images that are also used in effect graphs may need to be wrapped in an ICommandList
when used outside of the dynamic image. You can use the CreateBufferedImage(IDeviceContext, IDeviceImage)
extension method for this. See that method for more details.
NOTE: Dynamic images usually require the device context's target to be using a buffer precision of
Float32 for correct rendering.
If your target is lower precision, use CreateCompatibleDeviceContext(SizeFloat?, SizeInt32?, DevicePixelFormat?, CompatibleDeviceContextOptions) to
create an off-screen buffer to render the dynamic image into, and then draw the compatible device context's
bitmap to the final render target (device context).
Constructors
- PdnCrystalizeEffect(IDeviceContext)
Creates an instance of the distortion effect.