Three.jsの環境構築|Vite + npmで最速セットアップ

約6分
Three.jsの環境構築|Vite + npmで最速セットアップ

みなさんこんにちは。フロントエンドエンジニアのしゅん(@shun_webdesign)です。

Three.js入門ガイドで「Three.jsって手軽に3Dが作れて面白い」という話をしました。この記事はその続きで、実際に手を動かすための環境構築を最短でやっていきます。

やることは3つだけ。Viteでプロジェクトを作って、threeを入れて、箱を1つ回す。ここまで5分あれば終わります。

なぜCDNじゃなくてVite + npmなのか

Three.jsは、実はHTMLに<script>タグを1つ貼るCDN方式でも動きます。「じゃあそれでいいのでは?」と思うかもしれません。

でも、デモを1つ作って手を動かしていくなら、Vite + npmのほうが結局ラクだと僕は思っています。理由はシンプルで、

  • 準備に手間がいらない … コマンド数回で、すぐ書きはじめられる
  • 開発サーバーが速い … Viteは保存した瞬間に画面へ反映される(爆速)
  • 補完が効くimportで読み込むのでエディタが型やAPIを教えてくれる
  • モジュールを追加しやすい … OrbitControlsやローダーなど、追加機能をimportで足せる

CDNでもThree.js自体は動くので「絶対ダメ」ではありません。ただ、ちょっとしたデモを試したり作り込んだりを繰り返すなら、Viteのほうがストレスが少ないです。

セットアップ手順

Viteでプロジェクトを作る

ターミナルで以下を実行します(Node.jsが入っている前提です)。

npm create vite@latest my-3d-app -- --template vanilla
cd my-3d-app
npm install

--template vanilla は、Reactなどを使わない素のJavaScript構成という意味です。まずはThree.js単体に集中したいので、これで十分です。

Three.jsをインストールする

続けて、Three.js本体を入れます。

npm install three

これで準備完了。npm run devで開発サーバーが立ち上がり、http://localhost:5173で確認できます。

箱を1つ回す(最小コード)
import "./style.css"; // Viteのテンプレはここでcss を読み込んでいる。消さないこと
import * as THREE from "three";

// シーン・カメラ・レンダラー
const scene = new THREE.Scene();
const camera = new THREE.PerspectiveCamera(75, innerWidth / innerHeight, 0.1, 1000);
camera.position.z = 3;

const renderer = new THREE.WebGLRenderer({ antialias: true });
renderer.setSize(innerWidth, innerHeight);
document.body.appendChild(renderer.domElement);

// 箱を置く
const cube = new THREE.Mesh(
  new THREE.BoxGeometry(),
  new THREE.MeshNormalMaterial()
);
scene.add(cube);

// 毎フレーム描画する
renderer.setAnimationLoop(() => {
  cube.rotation.x += 0.01;
  cube.rotation.y += 0.01;
  renderer.render(scene, camera);
});

最後に、キャンバスを画面いっぱいに広げるため、style.cssの中身も消して1行だけ入れておきます。

<code>body { margin: 0; }

保存すると、ブラウザに色のついた箱がくるくる回っているはずです。これがThree.jsのいちばん小さな「動く世界」です。
つまずいたら、まずブラウザのコンソール(F12)を開いてエラーを確認するのが近道です。多いのはimportのパスミスと、threeのインストール忘れです。

次の一歩

環境ができたら、あとは置くモノを増やしたり、見た目を変えたりしていくだけです。

  • コードに出てきた Scene / Camera / Renderer が何をしているかは → 基本3要素の解説記事(近日公開)」で深掘りします
  • 見た目(色・質感)を自分で書きたくなったら → GLSL入門でシェーダーの世界へ

📕 もっと手を動かして体系的に学びたい人へ

この記事のような「小さく動かす」を積み重ねて、実際に作品をつくるところまで導くKindle本を書きました。
『Three.jsでつくる、小さなWebGL表現 ── はじめての”作品づくり”ガイド』
環境構築のつまずきどころから、自分の作品づくりまで順を追って解説しています。

👉 Amazonで見る »


まとめ

  • 作品を作るなら Vite + npm で環境を整えるのがトータルで速い
  • 手順は npm create vitenpm install threenpm run dev の3ステップ
  • Scene / Camera / Renderer + Mesh の型で、箱はもう回せる

環境さえできれば、Three.jsはあとは触って楽しむフェーズです。ここを起点に、Three.js入門ガイドのロードマップに沿って進めてみてください。

僕もXでThree.jsの作品や知見を発信しているので、よかったら覗いてもらえると嬉しいです。それでは、よいThree.jsライフを🌊

しゅん

しゅん

フロントエンドエンジニア / Webデザイナー。 アメリカ カリフォルニア州生まれ。 音楽、映画、芸術を中心としたサブカルが大好き。 お仕事のご相談は下記リンクのポートフォリオの連絡先からお願いします。

← 記事一覧に戻る