Napisano 22 Maj 20168 l 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.
Napisano 22 Maj 20168 l 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
Napisano 22 Maj 20168 l Autor 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.
Napisano 23 Maj 20168 l 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.
Napisano 23 Maj 20168 l Autor 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) ;
Napisano 23 Maj 20168 l 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;
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto