Mirrage Napisano 22 Maj 2016 Napisano 22 Maj 2016 mam dziwny problem, którego nie ogarniam z ekspresją.. używam pSphere4.translateX = noise(2*time); to jest akurat przykład, który wykorzystywałem by wprawić w ruch kulę lecz po wpisaniu tej linijki kodu obiekt zmienia swoją pozycję. W jaki sposób skonstruować ekspresję by obiekt nie zmieniał swojego położenia ale by działał na niego noise? Mam rozstawione obiekty w wyznaczonych miejscach i chcę by w nich dochodziło do drgań kul. Mam nadzieję, że całkiem zrozumiale to napisałem o co mi chodzi.
praetorian Napisano 22 Maj 2016 Napisano 22 Maj 2016 wcześniej zrób freeze transforms albo lepiej: zgrupuj każdy obiekt w dodatkową grupę i to tę grupę ustaw na właściwym miejscu, wówczas obiekty będą miały zerowe transformacje
Mirrage Napisano 22 Maj 2016 Autor Napisano 22 Maj 2016 właśnie zrobiłem wcześniej freez lecz to nie pomogło ponieważ po wstawieniu ekspresji powstało przesunięcie -0.210 co już sprawiło, że obiekt znajdował się poza moim kadrem. Spróbuję później jeszcze z grupami tak jak wspomniałeś i może to pomoże.
ca mel Napisano 23 Maj 2016 Napisano 23 Maj 2016 Powstało przesunięcie wynikające z noise. Przesuń sferę, wyzeruj pozycję (Freeze transform) i dopiero podepnij expression. Wtedy znów zobaczysz TX +0.2, ale już wynikające ze skryptu.
Mirrage Napisano 23 Maj 2016 Autor Napisano 23 Maj 2016 a idzie ustawić zakres przesunięcia np. między 0.01 a 0.04? przed skryptem np. jakbym zdeklarował $n (0.01,0.04) pSphere4.translateX = noise(r*time) ;
praetorian Napisano 23 Maj 2016 Napisano 23 Maj 2016 noise() zwraca wartości z zakresu , trzeba liniowo przekształcić w porządany zakres float $noise_01 = .5 + .5 * noise(time); // tx = .1 + (.4-.1) * $noise_01;
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się