Jeżeli w polu color zdefiniujemy węzeł Color, to kolory zdefiniowane w tym węźle można zastosować następująco:
    1. Jeżeli pole colorPerVertex ma wartość FALSE:
        a. W polu colorIndex musi się znaleźć przynajmniej tyle indeksów, ile jest zdefiniowanych linii. Jeśli w węźle Color jest zdefiniowanych N kolorów, to w polu colorIndex powinno się znaleźć N-1 indeksów.
        b. Jeśli w polu colorIndex nie wprowadzimy żadnych wartości, to kolory zostaną nałożone na linie w takiej kolejności, w jakiej znajdują się w węźle Color. W związku z tym w węźle Color musi znajdować się przynajmniej tyle definicji kolorów, ile w węźle IndexedLineSet jest zdefiniowanych linii.

    2. Jeżeli pole colorPerVertex ma wartość TRUE:
        a. Korzystając z pola colorIndex przypisujemy każdemu wierzchołkowi inny kolor. Pole colorIndex powinno zawierać przynajmniej tyle indeksów, ile znajduje się w polu coordIndex. Jeśli w węźle Color jest zdefiniowanych N kolorów, to w polu colorIndex powinno się znaleźć N-1 indeksów. Na końcu każdego ideksu w polu colorIndex musi się znaleźć wartość -1 — w tych samych miejscach co w polu coordIndex.
        b. Jeśli pole colorIndex pozostawimy puste, to do nałożenia kolorów na linie zostaną wykorzystane wartości z  pola coordIndex.

 Jeśli w polu color nie zdefiniujemy węzła Color, to na wszystkie linie zostanie nałożona barwa określona w polu emissiveColor węzła Material.