WhoBuilt

How to Get Started With 3D in React

Sep 24, 2024· 1 h 6 min· 470 views·Watch on YouTube

Speakers

Jakob, host at Callstack, talks with React Three Fiber maintainer Chris Bomgardner, real-time 3D researcher Cody, and former game and graphics programmer Mario about getting started with 3D in React and where web graphics are headed.

Why 3D belongs in more apps

Cody points to uses beyond games, including e-commerce previews, interactive websites, augmented reality, hardware design, and data visualization. Chris adds that 3D and real-time interaction could help web developers build experiences that feel more like native apps, including everyday apps for XR headsets.

Lower the barrier to experimenting

Chris says many front-end developers assume 3D requires learning a game engine, unfamiliar languages, and a large body of new concepts. React Three Fiber makes it easier to try ideas in an existing React app. He and Cody recommend starting with examples, changing them, and learning through hands-on practice rather than waiting to master the math.

A practical path into React 3D

Mario names Three.js and React Three Fiber as options for building 3D scenes with React, while noting that WebGL and shader programming offer a lower-level route. The panel recommends beginning with either React or Three.js, then exploring React Three Fiber’s examples and editable CodeSandbox demos. The host also mentions Pixi and Babylon as other tools in the ecosystem.

WebGPU brings new possibilities and responsibilities

Cody describes WebGPU and WebXR as evolving technologies that still need more tooling and implementation work. Mario cautions that moving to a lower-level graphics API will not automatically make an app faster; teams may need to redesign and optimize how they use it. The panel also highlights WebGPU compute shaders as a way to run parallel workloads such as machine learning and image processing on-device.

Takeaways

  • Start with a React Three Fiber example that interests you, then change it and observe what happens.
  • Learn React or Three.js first; you do not need to master both before experimenting.
  • Treat math as something to learn along the way, and ask the open-source community for help.
  • Measure performance before migrating to WebGPU; lower-level access can require extra optimization.
  • Consider GPUs for parallel computation as well as graphics, including local machine learning and image processing.

Mentioned in this talk

Search inside this talk

What was claimed 21

Show all 21 facts

Related talks