←  Problemy

AMXX.pl: Support AMX Mod X i SourceMod

»

Przy dużym velocity ent nie zachowuje nada...


Najlepsza odpowiedź Droso 07.11.2015 03:00

sv_maxvelocity 10000 
Przejdź do postu

  • +
  • -
Ossal - zdjęcie Ossal 07.11.2015

Dość dziwna sprawa jest. Przy velocity około 2000 w zwyż (wektor utworzony przez velocitybyaim) ent, któremu to velocity nadam nie leci zgodnie z nim, owszem, może prędkość się zgadza, ale kierunek nie. Nie jest to małe odchylenie, bo dochodzi nawet do kilkudziesieciu stopni... Prosto (zgodnie z velocity) ent leci tylko "puszczony" równo po osi - wzdłóż osi x lub z. Im dalej od osi tym bardziej krzywo leci. Dwa pytania:
1. Czemu przy velocity np 1900 leci prosto, a przy 2500 już krzywo? Jakieś ograniczenie silnika czy co?
2. Da się to wyprostować? Jeżeli odchylenie od osi jest stałe i na przykład zależy od siły velocity, to wstawiając odpowiednie działania jest to chyba do zrobienia? Pod warunkiem, że jest to stałe oczywiście. A całkiem możliwe, że jest ;)
Z góry dzięki, powodzenia w matematycznej zagadce :P

Edit, jest jakaś inna metoda, żeby przyspieszyć ent? Może zrobić z niego drzwi i ustawić milionową prędkość otwierania się? :v


Użytkownik Ossal edytował ten post 07.11.2015 02:52
Odpowiedz

  • +
  • -
Najlepsza odpowiedź Droso - zdjęcie Droso 07.11.2015

sv_maxvelocity 10000 
Odpowiedz

  • +
  • -
Ossal - zdjęcie Ossal 07.11.2015

Nie wierzę, że to takie proste :o Aż głupio, że temat założyłem :D Chciaż może komuś jeszcze pomoże ta wskazówka ;)
Wielkie dzięki:) /close

Odpowiedz

  • +
  • -
grankee - zdjęcie grankee 10.11.2015

Bądź ostrożny z prędkością. Nie bez powodu jest ona domyślnie ograniczona do 2000. Powyżej tej prędkości ent nie jest w 100% funkcjonalny. Bawiłem się tym robiąc UT moda. W efekcie mod nie został ukończony, bo nie udało mi się znaleźć optymalnego rozwiązania. Silnik niestety jest już stary i nie umie tyle co sobie życzymy.

Przykład: ent poruszający się szybciej może nie dotknąć obiektu przez który przelatuje. Oczywiście Ty zobaczysz jak go dotyka, ale funkcja "touch" nie zostanie zaalarmowana w pluginie. Im większa prędkość tym większe prawdopodobieństwo. Oczywiście zależy także od wielkości obiektów. Im obiekty większe tym więcej razy na sekundę się stykają jakąś częścią siebie. Obiekt dość mały rzędu 5x5 unitów przy prędkości 2500 styka się 9/10 razy, przy predkosci 6000 już jakieś 2-3/10 razy - tak to mi się kojarzy.

Na moje to silnik nie nadąża odpowiednio często obliczać czy ent dotyka drugiego. Próba obliczenia tego "ręcznie" oczywiście wypada jeszcze gorzej niż ta silnikowa.

Odpowiedz