Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added Zigzag, Bulge/Pinch, and Swirl shaders. #5

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

Radegast-FFXIV
Copy link

@Radegast-FFXIV Radegast-FFXIV commented Sep 21, 2020

Added 3 distortion shaders.:

Swirl

Twists a part of the screen around a specific coordinate. Can be animated to swirl clockwise and anticlockwise.
Parameters

  • radius - The size of the area to be affected. Most effective range is between 0.0 and 1.0.
  • angle - The angle to twist the affected area.
  • center x - The x-coordinate to place the effect on. The range should sit between 0.0 (left side) and 1.0 (right side).
  • center y - The y-coordinate to place the effect on. The range should sit between 0.0 (top side) and 1.0 (bottom side).
  • animate - Animates the effect, oscillating between clockwise and anticlockwise based on the angle.
  • invert - Inverts the distortion, causing the outermost edges to be the most distorted.

Zigzag

Similar to Swirl, but performs alternating oscillations.
Parameters

  • radius - The size of the area to be affected. Most effective range is between 0.0 and 1.0.
  • angle - The angle to twist the affected area, also affects the period. It's recommended to use the shader sliders for this variable.
  • amplitude - The amount of distortion to apply.
  • period - How often to oscillate on the distortion. A lower value means more frequent oscillations. The recommended range is between 0.1 and 3.0.
  • center x - The x-coordinate to place the effect on. The range should sit between 0.0 (left side) and 1.0 (right side).
  • center y - The y-coordinate to place the effect on. The range should sit between 0.0 (top side) and 1.0 (bottom side).
  • animate - Enables/disables animation; animates by different variables. (0 - None; 1 - Animate by amplitude; 2 - Animate by phase)

Bulge/Pinch

Expands or contracts the pixels around a point.
Parameters

  • radius - The size of the area to be affected. Most effective range is between 0.0 and 1.0.
  • magnitude - The magnitude of the effect. A positive value creates a bulge at the selected area while a negative value creates a pinching effect. Recommended range is -1.0 to 1.0.
  • center x - The x-coordinate to place the effect on. The range should sit between 0.0 (left side) and 1.0 (right side).
  • center y - The y-coordinate to place the effect on. The range should sit between 0.0 (top side) and 1.0 (bottom side).
  • animate - Animates the effect, oscillating between bulging and pinching of the same magnitude.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant