Newer
Older
DungeonShooting / DungeonShooting_Godot / src / game / data / property / ShaderParamNames.cs
@小李xl 小李xl on 20 Jan 2024 1 KB TileSet导入Image面板, 开发中
  1.  
  2. using Godot;
  3.  
  4. /// <summary>
  5. /// Shader 中的参数名称
  6. /// </summary>
  7. public static class ShaderParamNames
  8. {
  9. /// <summary>
  10. /// 灰度
  11. /// </summary>
  12. public static readonly StringName Grey = "grey";
  13. /// <summary>
  14. /// 轮廓颜色
  15. /// </summary>
  16. public static readonly StringName OutlineColor = "outline_color";
  17. /// <summary>
  18. /// 是否显示轮廓
  19. /// </summary>
  20. public static readonly StringName ShowOutline = "show_outline";
  21. /// <summary>
  22. /// 纹理大小
  23. /// </summary>
  24. public static readonly StringName Size = "size";
  25. /// <summary>
  26. /// 线段宽度
  27. /// </summary>
  28. public static readonly StringName LineWidth = "line_width";
  29. /// <summary>
  30. /// 偏移
  31. /// </summary>
  32. public static readonly StringName Offset = "offset";
  33. /// <summary>
  34. /// 网格大小
  35. /// </summary>
  36. public static readonly StringName GridSize = "grid_size";
  37. /// <summary>
  38. /// 颜色
  39. /// </summary>
  40. public static readonly StringName Color = "color";
  41.  
  42. /// <summary>
  43. /// 快速设置一个材质的 shader 材质参数
  44. /// </summary>
  45. public static void SetShaderMaterialParameter(this Material material, StringName param, Variant value)
  46. {
  47. if (material is ShaderMaterial shaderMaterial)
  48. {
  49. shaderMaterial.SetShaderParameter(param, value);
  50. }
  51. }
  52. }