\documentclass[border=5mm]{standalone}
\usepackage{luamplib}
\begin{document}
\mplibtextextlabel{enable}
\begin{mplibcode}
input colorbrewer-rgb
beginfig(1);
   path s; s = unitsquare shifted -(1/2, 1/2) scaled 21;
   path t; t = s rotated 45;

   vardef show_corners(expr p) =
       save s; numeric s; s = abs(point 1 of p - point 0 of p) / (2 + sqrt(2));
       image( for i=0 upto 3:
           fill unitsquare scaled s shifted point 0 of p rotated 90i withcolor Oranges[8][1+2i];
           draw unitsquare scaled s shifted point 0 of p rotated 90i;
       endfor)
   enddef;

   pair u, v;
   u = point 1 of s - point 0 of s;
   v = u rotated 90;
   numeric n; n = 8;
   for i = -n upto n:
       for j = -n upto n:
           draw show_corners(s) shifted (i * u + j * v);
           draw show_corners(s) rotated -45 shifted (i * u + j * v);
       endfor
   endfor

endfig;
\end{mplibcode}
\end{document}