2017-09-07 9 views
-1

shadertoy.com에서 찾은이 프래그먼트 셰이더가 있는데 이제는 three.js를 통해 구현할 것입니다. 내 문제는 쉐이더의 "시간"을 제어 할 수 있기를 정말로 원한다는 것이다. 그래서 나는 그것을 "재생"시킨 다음 그 효과를 "되돌려"시작점으로 되돌려 놓을 수 있습니다. 대화 형이기도하므로 애니메이션의 문제가 아닙니다.프래그먼트 셰이더의 역순으로 재생

이 작업을 수행하는 가장 좋은 방법은 무엇입니까?

다음은 shadertoy 효과입니다 : https://www.shadertoy.com/view/ldcGDX

답변을 주셔서 감사합니다 정말겠습니까, 감사합니다!

/Scummtomte

+0

지금까지 해보신 것은 무엇입니까? – prisoner849

+0

당신이 할 수 있던 무엇 이건을, 약간 노력을 배치하십시오. – Pratik

+0

글쎄, 프래그먼트 쉐이더 (fragment shaders)에 관해서는 상당히 새로운 것이지만, 초기 아이디어는 프레임 데이터를 배열에 저장 한 다음 앞뒤로 이동하는 데 사용하는 것입니다. 그러나 그것은 상호 작용으로 인해 복잡해 보입니다. 더 좋은 방법이 있을까요? – scummtomte

답변

1

일반적으로는, 쉐이더는 1000.0 당신이부터 거꾸로 재생하려는 시간 1000.0 - time, 같은 것을 함께 time 변수를 대체하여 역으로 재생할 수 있습니다.

게시 된 예제에서 셰이더는 실제로 모든 프레임의 입력 이미지를 덮어 쓰므로 은 역순으로 수행 할 수 없습니다. 역으로 어떤 것을하기 위해서는 다른 상태에 의존하지 않는 시간의 함수 여야합니다.

+0

답변 해 주셔서 감사합니다. 예, 모든 프레임에 대해 데이터를 저장해야한다고 생각하지만 상호 작용 부분을 복잡하게 만듭니다. 나는 같은 생각을 가진 사람들이 더 우아한 방식으로 그것을 분류 할 수 있다고 생각하고 싶습니다. – scummtomte