• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Unreal 4 - Matematyka delta, sinus?

Object Storage Arubacloud
0 głosów
665 wizyt
pytanie zadane 4 czerwca 2015 w C i C++ przez Adrian1999 Nałogowiec (34,570 p.)

Witam, mam do was wielkie pytanie i prośbę, ponieważ ja z poziomu gimnazjum nie znam niektórych wzorów matematycznych, co według mnie sprawia mi ten problem w programowaniu iż nie potrafię zrozumieć niektórych funkcji. Czy mógłby ktoś krok po kroczku opisać mi ten kod? (Zależy mi na tych tekstach zaznaczonymi strzałkami resztę rozumiem)

void AFloatingActor::Tick( float DeltaTime/* <---*/ )
{
	Super::Tick(DeltaTime)/* <---*/;
	FVector NewLocation = GetActorLocation();
	float DeltaHeight = (FMath::Sin(RunningTime + DeltaTime) - FMath::Sin(RunningTime));/* <---*/
	NewLocation.Z += DeltaHeight * 20.0f;       //Scale our height by a factor of 20
	NewLocation.Y += DeltaHeight * 20.0f;
		
	RunningTime += DeltaTime;/* <---*/
	SetActorLocation(NewLocation);
}

 

4 odpowiedzi

+3 głosów
odpowiedź 4 czerwca 2015 przez Eryk Andrzejewski Mędrzec (164,260 p.)

Delta - to w tym przypadku nie jest funkcja delta, ale przedział czasowy. W tym sensie delta jest wykorzystywana w fizyce, o czym było w pierwszej klasie gimnazjum :)

Sinus, cosinus, tangens, contangens - to są funkcje trygonometryczne. Są one bardzo przydatne, szczególnie w geometrii. Ich się nie da w jednej odpowiedzi wytłumaczyć, ale łatwo można je opanować. W internecie jest dużo tutoriali na ten temat:

Pozdrawiam :)

P.S. Wytłumaczyłem te stricte matematyczno/fizyczne pojęcia, a resztę powinieneś zrozumieć :)

komentarz 4 czerwca 2015 przez Adrian1999 Nałogowiec (34,570 p.)
A w jakim celu zostały tutaj zastosowane te funkcje trygonometryczne, wiem iż sinus to sinus ale bardziej kieruje się tym pytaniem które teraz zadałem
komentarz 4 czerwca 2015 przez Eryk Andrzejewski Mędrzec (164,260 p.)
Nie wiem do końca jak ci to wytłumaczyć, ale wiedz, że funkcje trygonometrzyczne są oparte na trójkącie prostokątnym(ale można policzyć je także dla innych kątów, większych niż 90 stopni). No i sprawa taka, że trzeba zrozumieć, co jest w kodzie :) DeltaHeight - wysokość delty. O co tu chodzi - nie mam pojęcia, ale możliwe, że jest to związane z położeniem na płaszczyźnie. Ogarnij te sinusy a potem spróbuj narysować sobie to wszystko na trójkącie ;)

Wiedz tylko, że w grach, a właściwie to w silnikach trygonometrii używa się do rotacji danych elementów.
komentarz 4 czerwca 2015 przez Adrian1999 Nałogowiec (34,570 p.)
hehe, sinów właśnie sam na swoją rękę starałem się uczyć, no ale co to jest stosunek przyprostokątnej o kącie alfa do przeciwprostokątnej beta, i w czym trzeba tu tego użyć?
+1 głos
odpowiedź 4 czerwca 2015 przez Comandeer Guru (601,110 p.)
Sin to sinus

Delta time to najprawdopodobniej różnica w czasie - po prostu. http://en.wikipedia.org/wiki/Delta_timing

Ten kod po prostu odświeża pozycję gracza/innego obiektu na planszy gry na podstawie tego ile minęło czasu od ostatniego odświeżenia. Np. gracz ma się poruszać o 10px na sekundę, ale od ostatniej aktualizacji minęło 3 sekundy, więc powinien zmienić swe położenie o 30px (oczywiście upraszczając, ale koncept jest ten sam)
0 głosów
odpowiedź 4 czerwca 2015 przez niezalogowany

Eh, ludzie nigdy się nie nauczą (ale przynajmniej mam zajęcie) ;) Zasada jest prosta - jeżeli korzystasz z jakieś biblioteki i napotykasz problem typu "NIE WIEM CO TA FUNKCJA ROBI, PARAMETR etc.", to co jest najlepszym źródłem informacji? Tak, zgadza się! DOKUMENTACJA tejże biblioteki.

Dzisiaj mam dobry humor, to nawet DeltaTime Ci znalazłem :)

komentarz 4 czerwca 2015 przez Boshi VIP (100,240 p.)
Nie ważne, lepiej pytać na forum gdzie garstka ludzi, albo nikt nie korzysta z danej biblioteki i czekać na pełną odpowiedź...
komentarz 4 czerwca 2015 przez Eryk Andrzejewski Mędrzec (164,260 p.)
No dobra, od tego jest forum, chociaż zgodzę się, niektórzy pytają o takie rzeczy, że znajdziesz je w wyszukiwarce bez problemu...
komentarz 4 czerwca 2015 przez Comandeer Guru (601,110 p.)
Z tym, że czasami rzeczy wykorzystywane przez pewne biblioteki są na tyle uniwersalne, że nawet nie znając języka programowania da się wykminić o co tak naprawdę chodzi (co z drugiej strony jest oznaką dobrze napisanego kodu IMO). W tym wypadku da się wymyśleć ;)

Ale fakt - dokumentacja dobra rzecz.
komentarz 4 czerwca 2015 przez niezalogowany
@Comandeer

Oczywiście, że masz rację. Ludzie po prostu za szybko biorą się za bardziej "skomplikowane" rzeczy, nie znając dobrze podstaw. IMHO to nic dobrego, bo tylko tracą motywację. Ale co mi tam - mniejsza konkurencja ;)
komentarz 4 czerwca 2015 przez Eryk Andrzejewski Mędrzec (164,260 p.)
Heheh :) Też dlatego brakuje dzisiaj specjalistów w IT :)
komentarz 4 czerwca 2015 przez niezalogowany
W to mi graj. Choć konkurencja poniekąd też dobra rzecz.
komentarz 4 czerwca 2015 przez Eryk Andrzejewski Mędrzec (164,260 p.)
Oczywiście, dzięki konkurencji rynek staje się jakby to powiedzieć... no na pewno lepszy i bezpieczniejszy dla gospodarki, ale zbyt duża konkurencja powoduje, że nie jesteś w stanie się "wybić". Np dobrze, że na osiedlu/wsi powstanie drugi sklep, bo wtedy ceny się trochę obniżą i ustabilizują i nie będzie monopolu, do czego dąży niestety znana wszystkim firma z Redmond :)
–1 głos
odpowiedź 4 czerwca 2015 przez Boshi VIP (100,240 p.)
Nikt ci tego nie opiszej jak nie zna tej biblioteki/engine.  Zmienne wskazują na Delte  i kąt sinus, a co to dokładnie jest to na google sobie poczytaj.

Podobne pytania

0 głosów
0 odpowiedzi 591 wizyt
pytanie zadane 28 grudnia 2022 w C i C++ przez MichaelM Bywalec (2,520 p.)
+1 głos
0 odpowiedzi 145 wizyt
+2 głosów
1 odpowiedź 752 wizyt

92,570 zapytań

141,422 odpowiedzi

319,643 komentarzy

61,958 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...