예제 #1
0
 public static void CreateRenderingData(
     CreatureManager creature_manager,
     ref Vector3[] vertices,
     ref Vector3[] normals,
     ref Vector4[] tangents,
     ref Color32[] colors,
     ref Vector2[] uvs,
     ref int[] triangles,
     ref List <int> final_indices,
     CreatureMeshModifier mesh_modifier = null)
 {
     if (mesh_modifier != null)
     {
         vertices      = new Vector3[mesh_modifier.num_pts];
         normals       = new Vector3[mesh_modifier.num_pts];
         tangents      = new Vector4[mesh_modifier.num_pts];
         colors        = new Color32[mesh_modifier.num_pts];
         uvs           = new Vector2[mesh_modifier.num_pts];
         triangles     = new int[mesh_modifier.m_maxIndice];
         final_indices = new List <int>(new int[mesh_modifier.m_maxIndice]);
     }
     else
     {
         vertices      = new Vector3[creature_manager.target_creature.total_num_pts];
         normals       = new Vector3[creature_manager.target_creature.total_num_pts];
         tangents      = new Vector4[creature_manager.target_creature.total_num_pts];
         colors        = new Color32[creature_manager.target_creature.total_num_pts];
         uvs           = new Vector2[creature_manager.target_creature.total_num_pts];
         triangles     = new int[creature_manager.target_creature.total_num_indices];
         final_indices = new List <int>(new int[creature_manager.target_creature.total_num_indices]);
     }
 }
예제 #2
0
    public void CreateRenderingData()
    {
        CreatureModule.CreatureMeshModifier mesh_modifier = null;
        if (creature_particles)
        {
            mesh_modifier = creature_particles.mesh_modifier;
        }

        CreatureRenderModule.CreateRenderingData(
            creature_manager,
            ref vertices,
            ref normals,
            ref tangents,
            ref colors,
            ref uvs,
            ref triangles,
            ref final_indices,
            mesh_modifier);
    }