일단 어트리뷰트 랭글만으로 점 만들기 해보자
addpoint(0,{1,0,0})
이런식으로 해주는데, 당연히 벡터를 생성해서 넣어줘도 동작한다.
시간에 따라 선 그어지도록 만들어 보자.
for문으로 버텍스를 계속 매 프레임 생성되게 만들어 처리하도록 하자.
공식에서 요령이 있는데, n 차 방정식에서는
y = a * function(x- x_offset) + y_offset
a 는 패턴을 좁게 만들고
x_offset 과 y_offset 은 그 점을 지나는 값이 나오는 그래프가 될거다.
대신 sin cos nois는 아래와 같이 쓰는게 원하는게 나옴.
그리고 알겠지만 여기서 옵셋은 지나가는 값이라기 보다 기준값이 된.
y = fuction(a * ( x- x_offset )) + y_offset
어쨌건 일단 선을 그어보자.
어트리뷰트 렝글 만들어서 프레임을 k 로 받고 (프레임을 int로 형변환 한 것을 주의 )
for문으로 매 프레임 k 보다 i 가 작으면 점을 찍는다고 만든다. set(x,0,0) 으로 x 쪽으로 계속 찍겠지?
여기서 addpoint 를 쓰면 어트리뷰트 렝글 앞에 add 를 더이상 만들 필요 없음.
아차, 런오버에 포인트가 아니라 Detail 로 하는 것을 잊지 말자. 왠지는 나중에
그리고 add로 바이 그룹에 Ali point 하면 선이 그어진다. 시간이 지나면 계속 길어지겠지
좋아 선 긋는것은 했고.
이제 이걸 null 붙여서 대기. 위의 포인트들이 상속되는 상태
다음은 이걸 일차함수로 전환해 보자
어트리뷰트 랭글을 또 만들어서 입력. 첫 번째에 붙여서 일단 데이터가 상속됨.
여기서 채널을 만들어 조절 가능하게 하고,
x 포인트는 포지션에서 받아서 y 포인트는 1차 함수로 제어하게 만든다. 그리고 그걸 다시포인트로 셋.
그럼 수치를 조절하면 a 로 기울기, b와 c 로 x y 위치를 제어하도록 만들어 진다.
그다음에 기준점이 된 빨간 점을 만들어 보자.
어트리뷰트 랭글을 상속받아서 위의 어트리뷰트 b와 c에 입력받은 값만 받아와 공을 붙이고 붉은색으로 만든다.
그럼 공이 만들어지는데, fx 에서 넣은 b와 c 값에 공이 만들어질거다.
그럼fx의 a로 기울기를, b와 c로 위치를 조절하는데 그래프는 계속 그 점을 통과하는 것을 볼 수 있다.
이차함수로 만들어 봐도 마찬가지
사인코사인으로 만들어 보자 .
이러면 뭐 쉽다. 1차 방정식을 사인코사인으로 만들어 제어해 보면 되니
선이 거칠기 때문에 최상위의 어트리뷰트 랭글에서 포지션이 촘촘하게 생길 수있도록 만들어 주자.
증폭 / 노이즈 만들기
amp 채널펑션으로 값 증폭
그리고 sin cos 대신 noise를 쓰면 노이즈 패턴을 만들수 있다.
'기타 공부하기 > 후디니' 카테고리의 다른 글
클램프 / 핏 / 채널램프 (0) | 2023.12.21 |
---|---|
VEX 펑션 훈련 / 효과쌓기 (0) | 2023.12.20 |
VEX if문 학습하기 / point function (0) | 2023.12.17 |
viewDir는 vertex에서 구하지 말자 (0) | 2023.12.10 |
VOB로 시계 만들기 (0) | 2023.12.03 |
댓글