Introduction

Toolkit for building Three.js and React Three Fiber Apps for VIVERSE and beyond.

npm install three @react-three/fiber @react-three/viverse

What does it look like?

A prototype map with the <SimpleCharacter/> component and its default model

import { Sky } from '@react-three/drei'
import { Canvas } from '@react-three/fiber'
import { Viverse, SimpleCharacter, FixedBvhPhysicsBody, PrototypeBox } from '@react-three/viverse'

export default function App() {
return (
  <Canvas shadows style={{ position: "absolute", inset: "0", touchAction: "none" }}>
    <Viverse>
      <Sky />
      <directionalLight intensity={1.2} position={[-10, 10, -10]} castShadow />
      <ambientLight intensity={1} />
      <SimpleCharacter />
      <FixedBvhPhysicsBody>
        <PrototypeBox scale={[10, 1, 15]} position={[0, -0.5, 0]} />
      </FixedBvhPhysicsBody>
    </Viverse>
  </Canvas>
)
}

How to get started

Some familiarity with react, threejs, and @react-three/fiber, is recommended.

Get started with building a simple game, take a look at our examples, or follow one of our tutorials:

Not into react?

No Problem

Check out how to build games using @pmndrs/viverse and only vanilla three.js.

Acknowledgments

This project would not be possible without the default model and default animations made by Quaternius, the prototype texture from kenney.nl, and the three-vrm project from the pixiv team!