summaryrefslogtreecommitdiffstats
path: root/ltcgi.cginc
diff options
context:
space:
mode:
Diffstat (limited to 'ltcgi.cginc')
-rw-r--r--ltcgi.cginc30
1 files changed, 30 insertions, 0 deletions
diff --git a/ltcgi.cginc b/ltcgi.cginc
new file mode 100644
index 0000000..206b29e
--- /dev/null
+++ b/ltcgi.cginc
@@ -0,0 +1,30 @@
+#ifndef __LTCGI_INC
+#define __LTCGI_INC
+
+#include "features.cginc"
+
+#if defined(_LTCGI)
+struct ltcgi_acc {
+ float3 diffuse;
+ float3 specular;
+};
+
+#include "Third_Party/at.pimaker.ltcgi/Shaders/LTCGI_structs.cginc"
+
+void ltcgi_cb_diffuse(inout ltcgi_acc acc, in ltcgi_output output);
+void ltcgi_cb_specular(inout ltcgi_acc acc, in ltcgi_output output);
+
+#define LTCGI_V2_CUSTOM_INPUT ltcgi_acc
+#define LTCGI_V2_DIFFUSE_CALLBACK ltcgi_cb_diffuse
+#define LTCGI_V2_SPECULAR_CALLBACK ltcgi_cb_specular
+
+#include "Third_Party/at.pimaker.ltcgi/Shaders/LTCGI.cginc"
+void ltcgi_cb_diffuse(inout ltcgi_acc acc, in ltcgi_output output) {
+ acc.diffuse += output.intensity * output.color * _LTCGI_DiffuseColor;
+}
+void ltcgi_cb_specular(inout ltcgi_acc acc, in ltcgi_output output) {
+ acc.specular += output.intensity * output.color * _LTCGI_SpecularColor;
+}
+#endif // _LTCGI
+
+#endif // __LTCGI_INC