Projekt laser umożliwia stworzenie lasera (wiązki światła) odbijającej się od różnych powierzchni obiektów, nabierając tym samym nowych odcieni (zmieniając kolor w zależności od koloru obiektu). Laser sterowany jest jednym skryptem, aby zaczął on w pełni działać wymagany jest punkt startowy w przestrzeni oraz punkt wskazujący kierunek. Na podstawie tych punktów generowany jest startowy promień, który po uderzeniu w jakąś powierzchnie zostaje odbity. Liczbę odbić oraz maksymalną długość lasera da się kontrolować z poziomu edytora, oraz kodu. Wygląd lasera jest łatwy w edycji dzięki wykorzystaniu prefabu w formie GameObject tworzonego i przekazywanego do skryptu przez użytkownika. Użytkownik może wybrać jeden z kilku sposobów zmiany koloru lasera po odbiciu od powierzchni:
- Kopiowanie koloru
- Miks kolorów
Lub brak kopiowania sterowane tagiem przypisanym do obiektu w edytorze (brak tagu powoduje brak zmiany koloru)
Laser przechowuje listę obiektów które trafił, w formie uporządkowanej według kolejności trafień listy. Istnieje możliwość korzystania z lasera w formie statycznej- wtedy odbicia lasera obliczane są tylko raz w funkcji Start. W każdej chwili istnieje możliwość na przełączenie się na opcję czasu rzeczywistego i z powrotem, jednak funkcja statyczna oszczędza dużo zasobów, zalecam mądre zarządzanie tymi opcjami.
W miejscu odbicia od powierzchni istnieje możliwość dodania systemu cząsteczek, oraz skorzystania z takich opcji jak rotacja względem normalnej, zmiana skali ze względu na długość lasera, zmiana koloru na kolor odbitej wiązki.
Wiązki i systemy cząsteczek są używane ponownie, a nie usuwane i tworzone ponownie. Takie rozwiązanie pozwala zmniejszyć zużycie procesora do tworzenia obiektów oraz zwalniania zasobów przy usuwaniu (przez garbage collector). Jednak poprzez przechowywanie list zawierających referencję do używanych obiektów zwiększa się zużycie pamięci, z tego powodu warto ograniczyć maksymalną liczbę odbić lasera, a po wyłączeniu (gdy laser będzie przez dłuższy czas nieaktywny) wyczyścić listy z referencjami.