\documentclass[a4paper]{article}
\usepackage{cmap}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[a4paper,left=0.42in,right=0.42in,top=0.25in,bottom=0.5in,noheadfoot]{geometry}
\usepackage{microtype}
\usepackage{graphicx}
\usepackage{setspace}
\usepackage{lmodern}
\pagestyle{empty}
\usepackage{xcolor}
\usepackage{fancyhdr}
\usepackage{amsmath}

\setlength{\parindent}{0pt}
\setlength{\parskip}{0pt}
\setstretch{1.75}

\pagestyle{fancy}
\renewcommand{\headrulewidth}{0pt}
\fancyhf{}
\lhead{}
\lfoot{
  \hrule
  \textsc{Grafika Komputerowa -- test wiedzy, semestr zimowy 2022/2023}
}
\rfoot{
  \hrule
  \textsc{strona \thepage / \pageref{LastPage}}
}

\newcommand{\header}[3]{
    \hfill
    \textsc{Grafika Komputerowa -- test wiedzy, semestr zimowy 2022/2023}
    \hfill
    \hfill

    \vspace{0.25\baselineskip}

    Imię: \dotfill\dotfill
    \hspace{1.0em}
    Nazwisko: \dotfill\dotfill
    \hspace{1.0em}
    Nr indeksu: \dotfill

    \vspace{-0.2\baselineskip}

    \vspace{-\baselineskip}
    \hspace{0.05\textwidth}
    \textcolor[HTML]{0000FF}{#1}

    \vspace{-\baselineskip}
    \hspace{0.45\textwidth}
    \textcolor[HTML]{0000FF}{#2}

    \vspace{-\baselineskip}
    \hspace{0.86\textwidth}
    \textcolor[HTML]{0000FF}{#3}

    \vspace{0.2\baselineskip}
}

\newcounter{QuestionNumber}
\newcommand{\question}[1]{
    \vspace{1.0em}

    \vspace{0.5\baselineskip}
    \stepcounter{QuestionNumber}
    \begin{minipage}{\textwidth}
        \setstretch{1.1}
        \textbf{\theQuestionNumber}. #1\par
    \end{minipage}
}

\makeatletter
\newcounter{int}
\newcommand{\answer}[2]{
    \vspace{-0.25\baselineskip}

    \setcounter{int}{0}
    \@whilenum\value{int}<#1\do{
        \stepcounter{int}
        \dotfill\par
    }

    \vspace{-#1\baselineskip}
    \begin{minipage}[c][#1\baselineskip][t]{\textwidth}
        \vspace{0.4\baselineskip}
        \color[HTML]{0000FF}
        #2~\par
    \end{minipage}
}
\makeatother


%
% Content
%
\begin{document}
    \header{
        % TODO imię
    }{
        % TODO nazwisko
    }{
        % TODO nr indeksu
    }

    \vspace{-0.5\baselineskip}

    \question{
        Pokaż, że kolejność transformacji ma znaczenie, wykorzystując mnożenie przykładowych macierzy translacji i skalowania -- to znaczy w jednym przypadku przemnóż macierz translacji przez macierz skalowania, a w drugim przykładzie przemnóż macierz skalowania przez macierz translacji.
    }
    {
        \Large
        \begin{equation*}
            \mathtt{P1:}~
            \begin{bmatrix}
                ... & 0.0 & 0.0 & ... \\
                0.0 & ... & 0.0 & ... \\
                0.0 & 0.0 & ... & ... \\
                0.0 & 0.0 & 0.0 & 1.0
            \end{bmatrix}
            ~\cdot~
            \begin{bmatrix}
                ... & 0.0 & 0.0 & ... \\
                0.0 & ... & 0.0 & ... \\
                0.0 & 0.0 & ... & ... \\
                0.0 & 0.0 & 0.0 & 1.0
            \end{bmatrix}
            ~=~
            \begin{bmatrix}
                .......... &        0.0 &        0.0 & .......... \\
                       0.0 & .......... &        0.0 & .......... \\
                       0.0 &        0.0 & .......... & .......... \\
                       0.0 &        0.0 &        0.0 &        1.0
            \end{bmatrix}
        \end{equation*}
        \begin{equation*}
            \mathtt{P2:}~
            \begin{bmatrix}
                ... & 0.0 & 0.0 & ... \\
                0.0 & ... & 0.0 & ... \\
                0.0 & 0.0 & ... & ... \\
                0.0 & 0.0 & 0.0 & 1.0
            \end{bmatrix}
            ~\cdot~
            \begin{bmatrix}
                ... & 0.0 & 0.0 & ... \\
                0.0 & ... & 0.0 & ... \\
                0.0 & 0.0 & ... & ... \\
                0.0 & 0.0 & 0.0 & 1.0
            \end{bmatrix}
            ~=~
            \begin{bmatrix}
                .......... &        0.0 &        0.0 & .......... \\
                       0.0 & .......... &        0.0 & .......... \\
                       0.0 &        0.0 & .......... & .......... \\
                       0.0 &        0.0 &        0.0 &        1.0
            \end{bmatrix}
        \end{equation*}

        \vspace{-0.4\baselineskip}
    }

    \question{
        Fachowym pojęciem, które można spotkać w kontekście grafiki komputerowej, projektowania gier i animacji, jest tak zwane wypiekanie, znane lepiej z angielskiego terminu jako \textit{baking}. Omów krótko co kryje się pod tym pojęciem, wskaż elementy grafiki, których może ono dotyczyć oraz dlaczego to rozwiązanie jest stosowane.
    }
    \answer{7}{
        % TODO tu wpisz odpowiedź
    }

    \question{
        Jedną z technik stosowanych w grafice komputerowej jest tak zwane wygładzanie krawędzi, określane angielskim terminem \textit{anti-aliasing}. Opisz zwięźle ideę tej techniki: co pozwala uzyskać, z czego wynika potrzeba jej stosowania oraz w jaki sposób jest realizowana (nazwij algorytmy). Jakie są wady i zalety tej techniki oraz czy istnieją jakieś alternatywy dla niej?
    }
    \answer{7}{
        % TODO tu wpisz odpowiedź
    }

    \label{LastPage}
\end{document}
