ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Three.js] 개발 보조 도구
    개발공부/Web 2023. 3. 20. 22:37

    오늘 배운 것들

    • greensock 라이브러리를 이용한 애니메이션 구현
    • 축, 그리드 헬퍼
    • FPS 체크하기
    • GUI 컨트롤 도구

    Greensock 라이브러리를 이용한 애니메이션 구현

     

    https://greensock.com/

     

    GreenSock

    GSAP is an industry standard JavaScript animation library from GreenSock that lets you craft high-performance animations that work in every major browser.

    greensock.com

    npm i gsap

    을 이용하여 설치할 수 있는 이 라이브러리는, 애니메이션을 구현할 때 제일 많이 쓰이는 자바스크립트 라이브러리다.

     

    //gsap animation
        gsap.to(
            mesh.position,
            {
                duration: 1,
                y: 2,
                z: 3
            }
        );

     

    to는 변화 함수. mesh.position과 같은 객체와 설정값을 인자로 넣으면 해당 수치가 변화하며 애니메이션 동작이 구현된다. 이 코드는 1초동안 y와 z 좌표가 각각 2와 3만큼 변화하는 코드.

     

    축, 그리드 헬퍼

     

    축 헬퍼

    //axesHelper
    	const axesHelper = new THREE.AxesHelper(3);
    	scene.add(axesHelper);

    AxesHelper 안에 숫자를 변경하면 축의 길이를 변경할 수 있다.

     

     

    그리드 헬퍼

     

    //gridHelper
    	const gridHelper = new THREE.GridHelper();
    	scene.add(gridHelper);

     

    축이나 그리드를 설정함으로써 포지션 변경 시 위치 기준점을 잡기가 좀 더 수월해진다. 

     

     

     

    FPS 체크하기

    stats.js 설치

    외부 라이브러리인 stats.js를 통해 초당 프레임 수를 체크할 수 있다.

     

    //stats -> 콘솔출력보다 성능체크에 좋음.
        const stats = new Stats();
        document.body.append(stats.domElement);

     

    브라우저 콘솔에 console.log를 통해 FPS와 같은 걸 체크하다보면 성능에 영향을 줄 수 있기 때문에 조금 더 정확한 성능 체크를 위해서는 이러한 도구를 활용하는 것이 필요하다고 한다.

     

     

     

    GUI 컨트롤 도구

    dat.gui 설치

    마찬가지로 외부 라이브러리인 dat.gui를 사용하게 되면 일일이 소스코드를 수정하지 않아도 position이나 rotation같은 값을 수정할 수 있어 개발이 편리해진다.

     

    const gui = new dat.GUI();
        gui.add(mesh.position, 'y', -5, 5, 1);
        gui
            .add(camera.position, 'x')
            .min(-5)
            .max(5)
            .step(0.1)
            .name('x rotation');

     

    함수에 인자를 여러 개 넣는 방식으로 할 수도 있고 여러 줄로 처리할 수도 있다. 표현만 다를 뿐 하는 일은 똑같다.

     

    dat.gui 실행화면

     

    저 파란 바를 마우스로 드래그하면 설정한 속성값이 바뀌며 화면도 바뀐다.

    '개발공부 > Web' 카테고리의 다른 글

    [Three.js] Geometry  (0) 2023.04.03
    [Three.js] Transform  (0) 2023.03.29
    [Three.js] 애니메이션  (0) 2023.03.18
    [Three.js] 기본 요소 익히기  (0) 2023.03.06
    [Three.js] 환경설정/기본 소스 코드 실행  (0) 2023.02.27
Designed by Tistory.