Пример #1
0
        public override void Print(SectionLayer layer, Thing thing)
        {
            Material mat = LinkedDrawMatFrom(thing, thing.Position);

            Printer_Plane.PrintPlane(layer, thing.TrueCenter(), new Vector2(1f, 1f), mat);
        }
Пример #2
0
 public virtual void Print(SectionLayer layer)
 {
     Graphic.Print(layer, this);
 }
Пример #3
0
 public virtual void PostPrintOnto(SectionLayer layer)
 {
 }
Пример #4
0
 public virtual void CompPrintForPowerGrid(SectionLayer layer)
 {
 }
Пример #5
0
 public void PrintOnto(SectionLayer layer)
 {
     Printer_Plane.PrintPlane(layer, this.loc, Vector2.one * this.size, this.def.mat, this.rotation, false, null, null, 0.01f);
 }
Пример #6
0
 public void PrintOnto(SectionLayer layer)
 {
     Printer_Plane.PrintPlane(layer, loc, Vector2.one * size, def.mat, rotation);
 }
Пример #7
0
        public static void PrintShadow(SectionLayer layer, Vector3 center, Vector3 volume, Rot4 rotation)
        {
            if (!DebugViewSettings.drawShadows)
            {
                return;
            }
            LayerSubMesh subMesh = layer.GetSubMesh(MatBases.SunShadowFade);
            Color32      item    = new Color32(255, 0, 0, (byte)Mathf.Min(255f * (volume.y + Printer_Shadow.GlobalShadowSizeOffsetY), 255f));
            Vector3      vector  = (volume + new Vector3(Printer_Shadow.GlobalShadowSizeOffsetX, 0f, Printer_Shadow.GlobalShadowSizeOffsetZ)).RotatedBy(rotation).Abs() / 2f;
            float        x       = center.x;
            float        z       = center.z;
            int          count   = subMesh.verts.Count;

            subMesh.verts.Add(new Vector3(x - vector.x, 0f, z - vector.z));
            subMesh.verts.Add(new Vector3(x - vector.x, 0f, z + vector.z));
            subMesh.verts.Add(new Vector3(x + vector.x, 0f, z + vector.z));
            subMesh.verts.Add(new Vector3(x + vector.x, 0f, z - vector.z));
            subMesh.colors.Add(Printer_Shadow.LowVertexColor);
            subMesh.colors.Add(Printer_Shadow.LowVertexColor);
            subMesh.colors.Add(Printer_Shadow.LowVertexColor);
            subMesh.colors.Add(Printer_Shadow.LowVertexColor);
            subMesh.tris.Add(count);
            subMesh.tris.Add(count + 1);
            subMesh.tris.Add(count + 2);
            subMesh.tris.Add(count);
            subMesh.tris.Add(count + 2);
            subMesh.tris.Add(count + 3);
            int count2 = subMesh.verts.Count;

            subMesh.verts.Add(new Vector3(x - vector.x, 0f, z - vector.z));
            subMesh.verts.Add(new Vector3(x - vector.x, 0f, z + vector.z));
            subMesh.colors.Add(item);
            subMesh.colors.Add(item);
            subMesh.tris.Add(count);
            subMesh.tris.Add(count2);
            subMesh.tris.Add(count2 + 1);
            subMesh.tris.Add(count);
            subMesh.tris.Add(count2 + 1);
            subMesh.tris.Add(count + 1);
            int count3 = subMesh.verts.Count;

            subMesh.verts.Add(new Vector3(x + vector.x, 0f, z + vector.z));
            subMesh.verts.Add(new Vector3(x + vector.x, 0f, z - vector.z));
            subMesh.colors.Add(item);
            subMesh.colors.Add(item);
            subMesh.tris.Add(count + 2);
            subMesh.tris.Add(count3);
            subMesh.tris.Add(count3 + 1);
            subMesh.tris.Add(count3 + 1);
            subMesh.tris.Add(count + 3);
            subMesh.tris.Add(count + 2);
            int count4 = subMesh.verts.Count;

            subMesh.verts.Add(new Vector3(x - vector.x, 0f, z - vector.z));
            subMesh.verts.Add(new Vector3(x + vector.x, 0f, z - vector.z));
            subMesh.colors.Add(item);
            subMesh.colors.Add(item);
            subMesh.tris.Add(count);
            subMesh.tris.Add(count + 3);
            subMesh.tris.Add(count4);
            subMesh.tris.Add(count + 3);
            subMesh.tris.Add(count4 + 1);
            subMesh.tris.Add(count4);
        }
Пример #8
0
 public static void PrintShadow(SectionLayer layer, Vector3 center, ShadowData shadow, Rot4 rotation)
 {
     Printer_Shadow.PrintShadow(layer, center, shadow.volume, rotation);
 }
Пример #9
0
 internal bool <> m__0(SectionLayer sect)
 {
     return(sect.GetType() == this.type);
 }