GBuffer.bslinc 912 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. Technique : base("GBuffer") =
  2. {
  3. Language = "HLSL11";
  4. Pass =
  5. {
  6. Common =
  7. {
  8. struct GBufferData
  9. {
  10. float4 albedo;
  11. float4 worldNormal;
  12. float depth;
  13. };
  14. void encodeGBuffer(GBufferData data, out float4 GBufferAData, out float4 GBufferBData)
  15. {
  16. GBufferAData = data.albedo;
  17. GBufferBData.xyz = float3(data.worldNormal.xyz * 0.5f + 0.5f);
  18. GBufferBData.w = 1.0f; // Marks that some deferred data was written
  19. }
  20. };
  21. };
  22. };
  23. Technique : base("GBuffer") =
  24. {
  25. Language = "GLSL";
  26. Pass =
  27. {
  28. Common =
  29. {
  30. struct GBufferData
  31. {
  32. vec4 albedo;
  33. vec4 worldNormal;
  34. float depth;
  35. };
  36. void encodeGBuffer(GBufferData data, out vec4 GBufferAData, out vec4 GBufferBData)
  37. {
  38. GBufferAData = data.albedo;
  39. GBufferBData.xyz = vec3(data.worldNormal.xyz * 0.5f + 0.5f);
  40. GBufferBData.w = 1.0f; // Marks that some deferred data was written
  41. }
  42. };
  43. };
  44. };