UnityEngine.Graphics.Internal_DrawMeshInstanced C# (CSharp) Method

Internal_DrawMeshInstanced() private method

private Internal_DrawMeshInstanced ( Mesh mesh, int submeshIndex, Material material, Matrix4x4 matrices, int count, MaterialPropertyBlock properties, ShadowCastingMode castShadows, bool receiveShadows, int layer, Camera camera ) : void
mesh Mesh
submeshIndex int
material Material
matrices Matrix4x4
count int
properties MaterialPropertyBlock
castShadows ShadowCastingMode
receiveShadows bool
layer int
camera Camera
return void
        private static extern void Internal_DrawMeshInstanced(Mesh mesh, int submeshIndex, Material material, Matrix4x4[] matrices, int count, MaterialPropertyBlock properties, ShadowCastingMode castShadows, bool receiveShadows, int layer, Camera camera);
        [MethodImpl(MethodImplOptions.InternalCall)]

Usage Example

コード例 #1
0
ファイル: Graphics.cs プロジェクト: lsx6244413/UnityDecomplie
 public static void DrawMeshInstanced(Mesh mesh, int submeshIndex, Material material, Matrix4x4[] matrices, [UnityEngine.Internal.DefaultValue("matrices.Length")] int count, [UnityEngine.Internal.DefaultValue("null")] MaterialPropertyBlock properties, [UnityEngine.Internal.DefaultValue("ShadowCastingMode.On")] ShadowCastingMode castShadows, [UnityEngine.Internal.DefaultValue("true")] bool receiveShadows, [UnityEngine.Internal.DefaultValue("0")] int layer, [UnityEngine.Internal.DefaultValue("null")] Camera camera)
 {
     if (!SystemInfo.supportsInstancing)
     {
         throw new InvalidOperationException("Instancing is not supported.");
     }
     if (mesh == null)
     {
         throw new ArgumentNullException("mesh");
     }
     if (submeshIndex < 0 || submeshIndex >= mesh.subMeshCount)
     {
         throw new ArgumentOutOfRangeException("submeshIndex", "submeshIndex out of range.");
     }
     if (material == null)
     {
         throw new ArgumentNullException("material");
     }
     if (matrices == null)
     {
         throw new ArgumentNullException("matrices");
     }
     if (count < 0 || count > Mathf.Min(Graphics.kMaxDrawMeshInstanceCount, matrices.Length))
     {
         throw new ArgumentOutOfRangeException("count", string.Format("Count must be in the range of 0 to {0}.", Mathf.Min(Graphics.kMaxDrawMeshInstanceCount, matrices.Length)));
     }
     if (count > 0)
     {
         Graphics.Internal_DrawMeshInstanced(mesh, submeshIndex, material, matrices, count, properties, castShadows, receiveShadows, layer, camera);
     }
 }