暫無描述
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

CubemapMaterialSlot.cs 1.6KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. using System;
  2. using UnityEditor.Graphing;
  3. using UnityEngine;
  4. namespace UnityEditor.ShaderGraph
  5. {
  6. [Serializable]
  7. class CubemapMaterialSlot : MaterialSlot
  8. {
  9. public CubemapMaterialSlot()
  10. { }
  11. public CubemapMaterialSlot(
  12. int slotId,
  13. string displayName,
  14. string shaderOutputName,
  15. SlotType slotType,
  16. ShaderStageCapability stageCapability = ShaderStageCapability.All,
  17. bool hidden = false)
  18. : base(slotId, displayName, shaderOutputName, slotType, stageCapability, hidden)
  19. { }
  20. [SerializeField]
  21. bool m_BareResource = false;
  22. internal override bool bareResource
  23. {
  24. get { return m_BareResource; }
  25. set { m_BareResource = value; }
  26. }
  27. public override void AppendHLSLParameterDeclaration(ShaderStringBuilder sb, string paramName)
  28. {
  29. if (m_BareResource)
  30. {
  31. sb.Append("TEXTURECUBE(");
  32. sb.Append(paramName);
  33. sb.Append(")");
  34. }
  35. else
  36. base.AppendHLSLParameterDeclaration(sb, paramName);
  37. }
  38. public override SlotValueType valueType { get { return SlotValueType.Cubemap; } }
  39. public override ConcreteSlotValueType concreteValueType { get { return ConcreteSlotValueType.Cubemap; } }
  40. public override bool isDefaultValue => true;
  41. public override void AddDefaultProperty(PropertyCollector properties, GenerationMode generationMode)
  42. { }
  43. public override void CopyValuesFrom(MaterialSlot foundSlot)
  44. { }
  45. }
  46. }