Clamp - 图1

    1. shader Clamp
    2. (
    3. // Inputs
    4. color InColor = 1
    5. [[
    6. string label = "In Color",
    7. string page = "Color"]],
    8. color InColorMin = 0
    9. [[
    10. string label = "Minimum Color",
    11. string page = "Color"]],
    12. color InColorMax = 1
    13. [[
    14. string label = "Maximum Color",
    15. string page = "Color"]],
    16. float InFloat = 1
    17. [[ string label = "Input Float",
    18. string page = "Float",
    19. float min = 0, float max = 1, float precision = 3]],
    20. float InFloatMin = 0
    21. [[ string label = "Minimum Float",
    22. string page = "Float",
    23. float min = 0, float max = 1, float precision = 3]],
    24. float InFloatMax = 1
    25. [[ string label = "Maximum Float",
    26. string page = "Float",
    27. float min = 0, float max = 1, float precision = 3]],
    28. vector InVector = 1
    29. [[
    30. string label = "In Vector",
    31. string page = "Vector"]],
    32. vector InVectorMin = 0
    33. [[
    34. string label = "Minimum Vector",
    35. string page = "Vector"]],
    36. vector InVectorMax = 1
    37. [[
    38. string label = "Maximum Vector",
    39. string page = "Vector"]],
    40. // Outputs
    41. output float ClampedFloat = 0,
    42. output vector ClampedVector = 0,
    43. output color ClampedColor = 0,
    44. )
    45. {
    46. ClampedFloat = clamp(InFloat, InFloatMin, InFloatMax);
    47. ClampedVector = clamp(InVector, InVectorMin, InVectorMax);
    48. ClampedColor = clamp(InColor, InColorMin, InColorMax);
    49. }