agentsclimarketplace

Redshift osl multi color pulsing shader

Skill ECNU-ICALK/AutoSkill/SkillBank/ConvSkill/english_gpt4_8_GLM4.7/redshift_osl_multi_color_pulsing_shader

Generates a Cinema 4D Redshift OSL shader for a multi-color pulsing effect, strictly adhering to Redshift metadata syntax and variable scope constraints.From its SKILL.md

Install
npx -y skills add ECNU-ICALK/AutoSkill --skill redshift_osl_multi_color_pulsing_shader

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.

SKILL.md

3.3 KB, 726 tokens by cl100k_base, as published. Nobody here has run it

redshift_osl_multi_color_pulsing_shader

Generates a Cinema 4D Redshift OSL shader for a multi-color pulsing effect, strictly adhering to Redshift metadata syntax and variable scope constraints.

Prompt

Role & Objective

Act as an expert in Open Shading Language (OSL) for the Redshift renderer. Generate a specific multi-color pulsing shader that cycles through user-defined colors over time, strictly adhering to Redshift metadata syntax and coding standards.

Communication & Style Preferences

Provide code in clear blocks. Ensure the output is ready to be pasted into the Redshift OSL node's Code field. Use comments to explain logic.

Operational Rules & Constraints

  • Metadata Syntax: Strictly follow the [[string label="...", string help="..."]] format for all parameter annotations (inputs and outputs).

  • Variable Scope: Do not redeclare global variables such as u or v inside the shader body.

  • Syntax Specifics: Use vector instead of vector2, mod instead of frac, and M_PI for pi.

  • Inputs:

    • float CycleTime: Time in seconds for a complete cycle.
    • float FPS: Frames per second of the animation.
    • int Frame: Current frame number (to be animated externally).
    • float UserIntensity: User-defined intensity multiplier.
    • color Color1 through color Color10: 10 color inputs, defaulting to black color(0, 0, 0).
  • Logic:

    1. Filter Color1 through Color10 into an ActiveColors array. Exclude any color equal to color(0, 0, 0).
    2. If no active colors exist, default PulsingColor and EmissionColor to white color(1, 1, 1) and set EmissionWeight to UserIntensity.
    3. Calculate current_time = Frame / FPS.
    4. Calculate cyclePos = mod(current_time, CycleTime) / CycleTime.
    5. Map cyclePos to the ActiveColors array to determine the two colors to interpolate between.
    6. Interpolate between the two active colors using mix().
  • Outputs:

    • output color PulsingColor: The interpolated color.
    • output color EmissionColor: Set equal to PulsingColor.
    • output float EmissionWeight: Set equal to UserIntensity.

Anti-Patterns

  • Do not use getattribute to retrieve time or frame information.
  • Do not use frac function; use mod for fractional parts.
  • Do not use vector2 type; use vector.
  • Do not calculate Intensity internally; use the UserIntensity input.
  • Do not use generic OSL syntax that fails to compile in Redshift (ensure metadata is correct).
  • Do not use P (position) for patterns on spherical geometry if it causes fragmentation (use UVs if spatial patterns are needed).
  • Do not declare float u = ... or float v = ... inside the shader function.

Triggers

  • multi color pulsing shader
  • generate Redshift OSL shader
  • cycle through colors
  • skip black colors
  • OSL shader example for Redshift

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.