@Krashan, post #59
@Krashan, post #61
@Krashan, post #62
@Krashan, post #67
@Krashan, post #68
@Krashan, post #1
@Krashan, post #77
Jest nawet zdjęcie wersji BOX, wcześniej
@Krashan, post #1
@tukinem, post #79
@tukinem, post #79
@tukinem, post #79
Po każdym ruchu następuje pewnie sporo sprawdzania dla x i y każdego punktu względem innych punktów.Co nieco, ale tu jest zrobiona optymalizacja. Po załadowaniu poziomu są liczone wszystkie przecięcia. Natomiast po wykonaniu ruchu aktualizowane są tylko przecięcia linii, które zostały przesunięte (są dołączone do przesuwanej kropki) z tymi, które nie zostały przesunięte. To bardzo zmniejsza ilość obliczeń. Przykładowo, załóżmy, że mamy 100 linii. Na początku poziomu trzeba policzyć wszystkie przecięcia, czyli 10 000, ale odpadają przecięcia linii samej z sobą, oraz jeżeli policzymy przecięcie linii M z linią N, to nie ma sensu liczyć przecięcia linii N z M, bo to to samo. Więc jest 4950 sprawdzeń. Ale po każdym ruchu jest dużo mniej. Jeżeli ruszymy kropkę np. z 5 liniami, to sprawdzeń będzie tylko 5 * 95, czyli 475. Każde sprawdzenie oznacza 8 mnożeń 16 na 16 bitów.
@Krashan, post #82