ECM2
This commit is contained in:
@@ -0,0 +1,39 @@
|
||||
// UNITY_SHADER_NO_UPGRADE
|
||||
|
||||
#ifndef _VLB_SHADER_PROPERTY_SYSTEM_INCLUDED_
|
||||
#define _VLB_SHADER_PROPERTY_SYSTEM_INCLUDED_
|
||||
|
||||
/// ****************************************
|
||||
/// PROPERTIES MACROS
|
||||
/// ****************************************
|
||||
#if VLB_INSTANCING_API_AVAILABLE && VLB_GPU_INSTANCING
|
||||
#if UNITY_VERSION < 201730 // https://unity3d.com/fr/unity/beta/unity2017.3.0b1
|
||||
// PRE UNITY 2017.3
|
||||
// for some reason, letting the default UNITY_MAX_INSTANCE_COUNT value generates the following error:
|
||||
// "Internal error communicating with the shader compiler process"
|
||||
#define UNITY_MAX_INSTANCE_COUNT 150
|
||||
#define VLB_DEFINE_PROP_START UNITY_INSTANCING_CBUFFER_START(Props)
|
||||
#define VLB_DEFINE_PROP_END UNITY_INSTANCING_CBUFFER_END
|
||||
#define VLB_GET_PROP(name) UNITY_ACCESS_INSTANCED_PROP(name)
|
||||
#else
|
||||
// POST UNITY 2017.3
|
||||
#define VLB_DEFINE_PROP_START UNITY_INSTANCING_BUFFER_START(Props)
|
||||
#define VLB_DEFINE_PROP_END UNITY_INSTANCING_BUFFER_END(Props)
|
||||
#define VLB_GET_PROP(name) UNITY_ACCESS_INSTANCED_PROP(Props, name)
|
||||
#endif
|
||||
|
||||
#define VLB_DEFINE_PROP(type, name) UNITY_DEFINE_INSTANCED_PROP(type, name)
|
||||
#elif VLB_SRP_API && VLB_SRP_BATCHER
|
||||
#define VLB_DEFINE_PROP_START CBUFFER_START(UnityPerMaterial)
|
||||
#define VLB_DEFINE_PROP_END CBUFFER_END
|
||||
#define VLB_DEFINE_PROP(type, name) type name;
|
||||
#define VLB_GET_PROP(name) name
|
||||
#else
|
||||
#define VLB_DEFINE_PROP_START
|
||||
#define VLB_DEFINE_PROP_END
|
||||
#define VLB_DEFINE_PROP(type, name) uniform type name;
|
||||
#define VLB_GET_PROP(name) name
|
||||
#endif
|
||||
/// ****************************************
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user