Shapes (Kształty)
Przykład ze skryptami pokazujący jak obliczać kolizje obiektu z bokami dowolnego kształtu, jak przechowywać jego dane, jak optymalniej rysować kształt statyczny. W kolejnej wersji dodam sprawdzanie czy obiekt nie znajduje się wewnątrz kształtu, nie tylko na krawędziach.
Autor: PsichiX
masz w sumie racje, jednak malo elementow nie jest czynnikiem spowalniajacym w sposob widoczny. a tak wlasciwie powinienem zrobic na odwrot, lista dla struktury a mapa do przechowywania vertexow, co by mozna bylo gladko jak po liscie isc, skoro przechodze wszystkie elementy. Choc przy ustawianiu czy pobieraniu wartosci by kulalo.
IMO użycie ds_list dla vertexów to akurat dobra decyzja. Inna sprawa, że użycie GM-owych map do iteracji w stylu listy linkowanej mija się z celem - funkcje ds_map_find_next/previous zwracają klucz względem _podanego_ klucza, który najpierw trzeba odnaleźć.
BTW: Właściwie implementacja list linkowanych w GM mogłaby być przydatna. Może z pomocą GMAPI udało by się wprowadzić je tak, aby faktycznie zyskało się na wydajności korzystając z nich?
Sprawdź pomoc do programu i głupio nie pytaj. W GM tylko constansów nie da się zmieniać (i to zapewne GMApi jest w stanie zmienić).
No z bokami kolizja jest ale jak jestem w środku tego wielokąta i nie dotykam ścianek to już kolizji nie wykrywa.
Najnowsze wersje GameMakera:
wydana 75 dni temu
wydana 3 dni temu
wydana 9 dni temu