<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/simple-third-person-camera-using-three-js-javascript--6jofhs2jt" -->

---
title: Simple Third Person Camera (using Three.js/JavaScript)
description: Follow me on:
Twitter: https://twitter.com/iced_coffee_dev
Github: https://github.com/simondevyoutube/

I show you how to build out a simple third person...
canonical: https://daily.dev/posts/simple-third-person-camera-using-three-js-javascript--6jofhs2jt
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Simple Third Person Camera (using Three.js/JavaScript) | daily.dev
og:description: Follow me on:
Twitter: https://twitter.com/iced_coffee_dev
Github: https://github.com/simondevyoutube/

I show you how to build out a simple third person...
og:url: https://daily.dev/posts/simple-third-person-camera-using-three-js-javascript--6jofhs2jt
og:image: https://api.daily.dev/og/posts/6JofHs2JT.png
og:image:alt: Simple Third Person Camera (using Three.js/JavaScript)
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Simple Third Person Camera (using Three.js/JavaScript)

**[SimonDev](https://daily.dev/sources/simondev758)** · 13 min read · 0 upvotes · 0 comments

## Summary

Follow me on:
Twitter: https://twitter.com/iced_coffee_dev
Github: https://github.com/simondevyoutube/

I show you how to build out a simple third person camera in three.js and JavaScript, from scratch. The goal here is to understand the mechanics of a simple follow camera (or third person camera), what goes into designing one, what considerations are made, and how to code one up. We'll step through various smoothing options and show you the effect of framerate differences and how to mitigate those problems.

Previously in videos, we covered three.js camera support and how to build out a simple third person character controller. This tutorial is a natural progression of the topic, covering 3rd person cameras. This is all part of a series of beginner tutorials on three.js, starting scratch and working up to the point of having moving animated characters in a small world.

The three.js library is available in JavaScript for cross-browser 3d graphics, wrapping webgl and making high level functionality available in the web browser. It’s an extremely mature and well maintained library that I use for many of these videos.

In the video, we cover:
* Game camera systems, 1st person vs 3rd person cameras
* Architecture considerations when building out the camera class, how to decouple things in a clean way for future reuse.
* Smooth interpolation and how to combat framerate changes.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://www.youtube.com/watch?v=UuNPHOJ_V5o>

## Similar posts on daily.dev

- [Don’t just attend KubeCon \+ CloudNativeCon, Merge Forward your experience\!](https://daily.dev/posts/don-t-just-attend-kubecon-cloudnativecon-merge-forward-your-experience--l0rpp73x8) · CNCF · 1 upvotes · 0 comments
- [Announcing H2 2026 KCDs](https://daily.dev/posts/announcing-h2-2026-kcds-m96goajm1) · CNCF · 1 upvotes · 0 comments
- [Two months of Open Community Groups](https://daily.dev/posts/two-months-of-open-community-groups-asf52zhbs) · CNCF · 0 upvotes · 0 comments
- [CNCF Unveils Schedule for KubeCon \+ CloudNativeCon Europe 2026](https://daily.dev/posts/cncf-unveils-schedule-for-kubecon-cloudnativecon-europe-2026-ikhcoa5cb) · CNCF · 2 upvotes · 0 comments
- [CNCF Debuts KubeCon \+ CloudNativeCon Japan 2026 Schedule](https://daily.dev/posts/cncf-debuts-kubecon-cloudnativecon-japan-2026-schedule-xp5pyudub) · CNCF · 1 upvotes · 0 comments

---

Tags: [#game-development](https://daily.dev/tags/game-development)

[View this post on daily.dev](https://daily.dev/posts/simple-third-person-camera-using-three-js-javascript--6jofhs2jt)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"Simple Third Person Camera (using Three.js/JavaScript)","url":"https://daily.dev/posts/simple-third-person-camera-using-three-js-javascript--6jofhs2jt","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/simple-third-person-camera-using-three-js-javascript--6jofhs2jt"},"datePublished":"2026-02-13T12:34:21.700Z","dateModified":"2026-02-13T14:22:38.420Z","description":"Follow me on:\nTwitter: https://twitter.com/iced_coffee_dev\nGithub: https://github.com/simondevyoutube/\n\nI show you how to build out a simple third person...","image":"https://i.ytimg.com/vi/UuNPHOJ_V5o/sddefault.jpg","thumbnailUrl":"https://i.ytimg.com/vi/UuNPHOJ_V5o/sddefault.jpg","isAccessibleForFree":true,"articleSection":"SimonDev","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"SimonDev","logo":"https://media.daily.dev/image/upload/s--QPCbPzt5--/f_auto,q_auto/v1770986046/logos/simondev758","url":"https://daily.dev/sources/simondev758"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/simple-third-person-camera-using-three-js-javascript--6jofhs2jt","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"game-development","timeRequired":"PT13M","video":{"@type":"VideoObject","name":"Simple Third Person Camera (using Three.js/JavaScript)","description":"Follow me on:\nTwitter: https://twitter.com/iced_coffee_dev\nGithub: https://github.com/simondevyoutube/\n\nI show you how to build out a simple third person...","thumbnailUrl":"https://i.ytimg.com/vi/UuNPHOJ_V5o/sddefault.jpg","uploadDate":"2026-02-13T12:34:21.700Z","duration":"PT13M","url":"https://api.daily.dev/r/6JofHs2JT","embedUrl":"https://www.youtube.com/embed/UuNPHOJ_V5o"}}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"SimonDev","item":"https://daily.dev/sources/simondev758"},{"@type":"ListItem","position":3,"name":"Simple Third Person Camera (using Three.js/JavaScript)"}]}
```

