Dziennik zmian

Wszystkie wersje gry, od najnowszej. Każda zaczyna się od krótkiego podsumowania, a pod nim jest pełna lista zmian.

Wersja 0.6.0

Ruszyła strona TuGram z opisem gry, dziennikiem zmian i mapą miast: sprawdzisz, czy Twoje miasto jest w grze, albo je zaproponujesz.

Dodano

  • System strony internetowej: opis gry, dziennik zmian, kontakt, regulamin i polityka prywatności
  • System wyboru miasta: mapa Polski, na której sprawdzisz, czy Twoje miasto jest w grze, albo je zaproponujesz
  • System zapowiedzi Ełku: adres elk.tugram.pl prowadzi na stronę główną
  • System poczty kontaktowej: wiadomości z formularza i na adres kontakt@tugram.pl trafiają do skrzynki, z której odpowiadamy z tego samego adresu
  • System aktualizacji strony: zmiany na stronie i nowe wpisy dziennika zmian są publikowane automatycznie
  • Dane ilustracji strony: ujęcia z gry pokazujące miasto, dzielnicę i ulicę

Zmieniono

  • Polityka prywatności: dopisana informacja o skrzynce pocztowej, do której trafiają wiadomości z formularza

Wersja 0.5.0

Przejścia dla pieszych pojawiają się trafniej, także przy ulicach z dwiema jezdniami, a szerokość ulic zależy od ich rodzaju.

Dodano

  • System spłaszczenia świata do warstw bez nakładek (woda, ląd, jezdnie) w narzędziu do przetwarzania danych
  • System listy przejść dla pieszych: zapisywana osobno jako dane (środek, kierunek, długość, szerokość)
  • System przejść dla pieszych w narzędziu do przetwarzania danych: te same reguły co w kliencie, z asfaltem pod przejściami
  • System geometrii dróg w narzędziu do przetwarzania danych: bufory osi, łaty w węzłach, uzupełnianie asfaltu i parkingów
  • System dokumentacji zmian i wersjonowania: pliki wersji, zasady numeracji, lista stanu systemów
  • System warstw świata: cztery warstwy z poziomami wysokości (decyzja projektowa, bez implementacji)
  • System palety kolorów: jeden plik z wszystkimi kolorami świata
  • System szerokości jezdni według rodzaju drogi

Zmieniono

  • System przejść dla pieszych: łączy ścieżki rozcięte jezdnią i traktuje jezdnie rozdzielone wąską szczeliną jak jedną, więc przejścia pojawiają się trafniej; przy nachodzących na siebie zostaje jedno
  • System uzupełniania asfaltu: kolor zależy od najbliższej jezdni, szerokiej albo wąskiej
  • System uzupełniania parkingów: parkingi po obu stronach wąskiej jezdni i w kieszeniach między jezdniami rozlewają się do niej tak samo jak pojedynczy parking
  • Kolor węższych jezdni: rozjaśniony, żeby odróżnić go od szerokich
  • System jezdni: szerokość wynika wyłącznie z rodzaju drogi, tag szerokości z OpenStreetMap jest ignorowany
  • Dokumentacja architektury: przepisane wstępne sekcje, kamera i opisy modelu dróg; usunięte odniesienia do poprzednich projektów
  • System zasięgu widzenia: zatwierdzone poziomy zasięgu w tierze U (decyzja, bez implementacji)
  • Komentarze w kodzie: usunięte odniesienia do poprzednich projektów, poprawione nieaktualne opisy

Usunięto

  • Reguły i filtry przejść dla pieszych, które nie zmieniały wyniku
  • Dane szerokości zastępczych rodzajów dróg i tabela minimalnych szerokości jezdni

Wersja 0.4.0

Ulice, parkingi i przejścia dla pieszych są dopracowane: parkingi łączą się z jezdnią, a bardzo długie przejścia mają wysepki.

Dodano

  • System łączenia parkingów z jezdnią: rozszerza parking do najbliższej drogi, także przez chodnik
  • System przycinania chodników przy przejściach: usuwa fragmenty chodnika leżące na asfalcie
  • System odrzucania błędnych przejść: pomija przejścia w miejscach, gdzie auto nie mogłoby dojechać
  • System wysepek: dodaje wysepkę na środku bardzo długich przejść
  • System zapisu dróg, ścieżek, parkingów i budynków do postaci używanej w grze przez narzędzie do przetwarzania danych

Zmieniono

  • System uzupełniania luk w asfalcie: ostateczne parametry dobrane na żywo w scenie debugowej
  • System łączenia dróg: ostateczny limit ostrych narożników
  • System przejść dla pieszych: kierunek wyznaczany z uśrednionego otoczenia zamiast pojedynczego odcinka
  • System kolejności warstw: dodana warstwa budynków pomiędzy parkingami a jezdniami

Usunięto

  • Parametry sceny debugowej, które nie miały wpływu na wynik

Wersja 0.3.0

Pojawiły się ulice, ścieżki rowerowe i piesze, parkingi, zarysy budynków oraz pierwsze przejścia dla pieszych z zebrą.

Dodano

  • System jezdni i ścieżek: zamienia linie osi z danych w wielokąty o zadanej szerokości
  • System podziału ścieżek na rowerowe i piesze
  • System kolejności warstw: ścieżka rowerowa, chodnik, parking, budynek, jezdnia, oznakowanie
  • System kolorów jezdni: ciemniejszy dla szerokich, jaśniejszy dla wąskich
  • System kolorów ścieżek i parkingów
  • System uzupełniania luk w asfalcie: wypełnia wąskie pasy tła pomiędzy jezdnią a innymi elementami
  • System łączenia dróg: wygładza miejsca, w których schodzą się dwie drogi
  • System przejść dla pieszych: wykrywa miejsca, gdzie ścieżka przecina jezdnię, i rysuje zebrę ułożoną zgodnie z kierunkiem drogi
  • System obliczeń dróg w oknie wokół gracza
  • Dane osi dróg i ścieżek z OpenStreetMap (rodzaj, szerokość, jeśli podana)
  • Dane szerokości zastępczych jezdni i ścieżek według rodzaju
  • Dane konstrukcji drogowych z OpenStreetMap (mosty, tunele)
  • Dane parkingów naziemnych z OpenStreetMap, jako wielokąty
  • Dane obrysów budynków z OpenStreetMap, jako płaskie wielokąty (rozwiązanie tymczasowe)

Wersja 0.2.0

W Ełku pojawiła się woda z falującą taflą, której nie da się przejść, oraz mgła w kolorze nieba; kliknięcie gracza przybliża widok.

Dodano

  • System kafli powierzchni: świat składa się z wektorowych kafli bez tekstur, doczytywanych w zasięgu mgły wokół gracza
  • System mgły jako nieba: kolor mgły zależy od kąta patrzenia, a w tierze M dodatkowo ciemna mgła poza strefą gry
  • System kopuły nieba
  • System poziomów zasięgu widzenia w tierze U
  • System wody: wycina wodę z gruntu i rysuje ją jako lustro 1 m poniżej poziomu terenu z pionowymi brzegami
  • System animowanej powierzchni wody: spokojne falowanie w miejscu
  • System bariery wodnej: blokuje ruch gracza do wody, ten sam kod działa po stronie klienta i serwera
  • System warstwy gruntu: grunt, strefy i pokrycie terenu leżą na jednym poziomie z zapisem głębi
  • System klikalnego znacznika gracza: kliknięcie przełącza kamerę do tieru D2
  • System linii granicy strefy o stałej szerokości
  • System panelu diagnostycznego: klatki na sekundę, obciążenie procesora, liczba wywołań rysowania, pamięć
  • System identyfikacji wizualnej: ikona strony, ikony aplikacji, znacznik gracza
  • Dane wód z OpenStreetMap: powierzchniowych i liniowych
  • Dane wód okresowych jako rów
  • Dane stref użytkowania gruntów jako osobna warstwa

Zmieniono

  • System klas pokrycia terenu: rozdzielone trawa i park, zarośla traktowane jak las, łąka jak trawa, dodatkowe tagi
  • System roślinności: drzewa i krzewy nie powstają w wodzie, widoczność liczona tylko po ruchu gracza, płynne zanikanie przed granicą rysowania
  • System kamery: logarytmiczna interpolacja mgły, płynniejsze przejścia między tierami M i D1
  • System kafli powierzchni: zachowują poprzednie pokrycie, dopóki nowy tier nie pokryje widocznego obszaru
  • System obrotu kamery: klawisze Q/E obracają płynnie co klatkę
  • System panelu debugowego: zwarty układ
  • Dane kolorów gruntu i tła: ustalone kolory, szarobrązowe tło
  • Nazwa projektu: TuGram, zmieniony zakres nazw pakietów, obrazów i dokumentacji

Naprawiono

  • System roślinności: drzewa znikały po zmianie położenia kamery
  • System wody: brzegi i woda prześwitywały przez tło
  • System kamery: poprawki przejść M↔D1
  • System interfejsu: wyłączone menu kontekstowe, zaznaczanie tekstu i podpowiedzi systemowe na telefonach

Usunięto

  • System rastrowych tekstur gruntu (zastąpiony kaflami wektorowymi)
  • System suwaków strojenia bufora i mgły w scenie debugowej

Wersja 0.1.0

Pierwsza wersja: strefa gry w Ełku z granicą i niewidzialną ścianą, teren, drzewa i krzewy oraz kamera z czterema widokami.

Dodano

  • System szkieletu projektu: wspólne repozytorium dla klienta, części współdzielonej, serwera i narzędzia do przetwarzania danych
  • System wdrożeń: konteneryzacja, automatyczne budowanie i sprawdzanie kodu, konfiguracja serwera WWW z osobną domeną dla każdego miasta
  • System obsługi wielu miast: dodanie miasta jedną komendą, konfiguracja osobna dla każdego miasta
  • System granicy strefy gry: wyznacza obszar rozgrywki oraz otaczający go bufor
  • System niewidzialnej ściany: nie pozwala graczowi wyjść poza strefę gry, ten sam kod działa po stronie klienta i serwera
  • System sceny debugowej: podgląd granicy, bufora, terenu i roślinności z poruszającym się znacznikiem gracza
  • System klas pokrycia terenu: dzieli podłoże na las, trawę, grunty orne, grunt odkryty i strefy zabudowy, nakładające się wielokąty są rozstrzygane według priorytetu
  • System roślinności: rozmieszcza drzewa, krzewy i żywopłoty na podstawie danych
  • System kamery: cztery tiery widoku (M, D1, D2, U) z płynną interpolacją odległości, nachylenia i mgły
  • System sterowania kamerą: zmiana tieru kółkiem myszy, suwakiem i klawiszami, obrót prawym przyciskiem i klawiszami Q/E, automatyczne dopasowanie kierunku do ruchu
  • System wersjonowania danych świata: wersja wynika z daty i skrótu zawartości
  • Dane granicy miasta z państwowego rejestru granic
  • Dane pokrycia terenu i użytkowania gruntów z OpenStreetMap
  • Dane pozycji drzew, krzewów i żywopłotów z OpenStreetMap

Zmieniono

  • System pobierania danych: ponawia próby tylko przy błędach przejściowych (w tym ograniczeniu liczby zapytań), błędy trwałe kończą się od razu
  • System renderowania roślinności: zasięg rysowania wynika z aktualnego tieru kamery
  • Dane domeny: ustawiona docelowa domena projektu

Naprawiono

  • System pobierania granicy miasta: poprawna obsługa pustej geometrii i uszkodzonych odpowiedzi serwera
  • System pobierania granicy miasta: nazwy ze znakami specjalnymi nie psują zapytania
  • System serwera WWW: żądania do nieznanych hostów kończą się poprawnym błędem 404
  • System wdrożeń: skrypt wdrożenia klienta działa przy braku pliku protokołu
  • System kamery: poprawna mgła przy przejściu do tieru bez mgły oraz działający pierwszy krok kółka myszy
  • System znacznika gracza: rozmiar dopasowany do skali człowieka, kamera nie wchodzi do wnętrza znacznika