public void SetMaterial(Matrial mat)
 {
     for (int i = 0; i < instanceList.Count; i++)
     {
         instanceList [i].set_material(mat);
     }
 }
    public override bool hit(ref Ray ray, ref float t, ref Shade s)
    {
        Ray inv_ray = ray;

        inv_ray.origin    = Matrix.MultiplyPoint(inv_matrix, inv_ray.origin);
        inv_ray.direction = Matrix.MultiplyVector(inv_matrix, inv_ray.direction);
        if (obj_ptr.hit(ref inv_ray, ref t, ref s))
        {
            s.normal = Matrix.MultiplyVector(inv_matrix, s.normal, true);
            if (obj_ptr.get_material() != null)
            {
                mat_Ptr = obj_ptr.get_material();
            }
            return(true);
        }
        return(false);
    }
Esempio n. 3
0
 public virtual void set_object(MeshObject objPtr)
 {
     obj_ptr      = objPtr;
     materail_ptr = obj_ptr.get_material();
 }
Esempio n. 4
0
 public virtual void set_material(Matrial mPtr)
 {
     material_ptr = mPtr;
 }
Esempio n. 5
0
 public void set_material(Matrial matPtr)
 {
     materail_ptr = matPtr;
 }