ritajeong / react-rive

๐Ÿคช์‹ฌ์‹ฌํ•ด์„œ ๋งŒ๋“ค์–ด๋ณธ react-rive(์ฝ”๋“œ๋กœ ์ถ”์ถœ๊ฐ€๋Šฅํ•œ ์• ๋‹ˆ๋ฉ”์ด์…˜ Rive๋ฅผ ๋ฆฌ์•กํŠธ์— ์ ์šฉ์‹œ์ผœ๋ณด๊ธฐ)-์…€ํ”„์Šคํ„ฐ๋””

Home Page:https://rive.app/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Rive

Rive๋Š” ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ๋””์ž์ธํ•˜๊ณ  ์ถ”์ถœ ๊ฐ€๋Šฅํ•˜๋„๋ก ๋งŒ๋“ญ๋‹ˆ๋‹ค.
ํ”Œ๋žซํผ ๋…๋ฆฝ์ ์ด๋ฏ€๋กœ ํ•œ ๋ฒˆ ๋งŒ๋“ค์–ด์„œ ์›น,์•ฑ,๊ฒŒ์ž„ ๋“ฑ ์—ฌ๋Ÿฌ ํ”Œ๋žซํผ์—์„œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

๊ณต์‹ ํ™ˆํŽ˜์ด์ง€
React x Rive Tutorial ์˜์ƒ

์ค€๋น„๋ฌผ

๋ชฉํ‘œ

example
CRA๋กœ ๋งŒ๋“  ๋ฆฌ์•กํŠธ ํ”„๋กœ์ ํŠธ์— ํ–„๋ฒ„๊ฑฐ ๋ฒ„ํŠผ์„ ์ ์šฉ์‹œ์ผœ๋ด…์‹œ๋‹ค.
์ถ”๊ฐ€๋กœ ์ปดํฌ๋„ŒํŠธ๋กœ ๋งŒ๋“ค์–ด์„œ props๋ฅผ ์ ์šฉํ•˜๊ณ , className๋ฅผ ์ „๋‹ฌํ•˜์—ฌ ์Šคํƒ€์ผ ๋ฐ”์ธ๋”ฉ์„ ํ•ฉ๋‹ˆ๋‹ค.

์ปดํฌ๋„ŒํŠธ ์ฝ”๋“œ

import { useRive, useStateMachineInput } from "rive-react";
import "./RiveHamburger.css"
export default function RiveHamburger({className}) {
  const STATE_MACHINE_NAME = "Basic State Machine";
  const INPUT_NAME = "Switch";

  const { rive, RiveComponent } = useRive({
    src: "hamburger-time.riv",
    stateMachines:STATE_MACHINE_NAME,
    autoplay: true,
  });
    
  const onClickInput = useStateMachineInput(
    rive,
    STATE_MACHINE_NAME,
    INPUT_NAME
  )

  return <RiveComponent className={className} onClick={()=> onClickInput.fire()}/>;

}

์ž์„ธํ•œ ๊ฐœ๋ฐœ๊ณผ์ •

์€ ๋ธ”๋กœ๊ทธ ๋งํฌ๋กœ ๋Œ€์‹ ํ•ฉ๋‹ˆ๋‹ค.

About

๐Ÿคช์‹ฌ์‹ฌํ•ด์„œ ๋งŒ๋“ค์–ด๋ณธ react-rive(์ฝ”๋“œ๋กœ ์ถ”์ถœ๊ฐ€๋Šฅํ•œ ์• ๋‹ˆ๋ฉ”์ด์…˜ Rive๋ฅผ ๋ฆฌ์•กํŠธ์— ์ ์šฉ์‹œ์ผœ๋ณด๊ธฐ)-์…€ํ”„์Šคํ„ฐ๋””

https://rive.app/


Languages

Language:JavaScript 43.5%Language:HTML 35.5%Language:CSS 21.0%