Rive๋ ์ ๋๋ฉ์ด์
์ ๋์์ธํ๊ณ ์ถ์ถ ๊ฐ๋ฅํ๋๋ก ๋ง๋ญ๋๋ค.
ํ๋ซํผ ๋
๋ฆฝ์ ์ด๋ฏ๋ก ํ ๋ฒ ๋ง๋ค์ด์ ์น,์ฑ,๊ฒ์ ๋ฑ ์ฌ๋ฌ ํ๋ซํผ์์ ์ฌ์ฉํฉ๋๋ค.
๊ณต์ ํํ์ด์ง
React x Rive Tutorial ์์
- vscode์์ vscode-rive-viewer ํ๋ฌ๊ทธ์ธ์ ์ค์น
- ํ๋ฒ๊ฑฐ ๋ฒํผ ์์ค ๋ค์ด๋ก๋
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()}/>;
}
์ ๋ธ๋ก๊ทธ ๋งํฌ๋ก ๋์ ํฉ๋๋ค.