SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

JavaScriptとWebGLによるはじめての3Dプログラミング

「three.js」でつくるお手軽3Dマンガ作成ソフト - 前編

JavaScriptとWebGLによるはじめての3Dプログラミング(1)

ダウンロード サンプル (335.1 KB)

「three.js」とは

 今回の「three.js」の記事は、執筆時点の最新版であるRevision58を元にして書いています。「three.js」はこの1年で改定が大きく進み、その間でいくつかの仕様が変更になっています。Web上の記事などを参考にプログラムを書く際は、最新のドキュメントを確認しながら書いた方がよいです。記事中のコードで使用されている関数が削除されていたり、別名になっていたり、仕様が変わっていたりします。

 「three.js」のドキュメントは、Web上から確認可能です。各項目は、末尾に「Source」というソースコードへのリンクが掲載されています。ドキュメントを見てもよく分からない場合は、このコードを直接見るとよいです。どういった処理が行われているか、どの値がどういった用途で利用されているかが分かります。

 また、「three.js」のファイルをダウンロードすると、豊富なサンプルが収録されています。ほとんどの処理は、このサンプルを閲覧して真似すれば作ることができます。ただ、コードは割とリッチなので、本当に簡単なことをしたい場合に、処理を探すのが大変だったりします。この記事では、なるべく分かりやすいようにコードを示していきたいと思います。

 「three.js」の本体は、ダウンロードして解凍したフォルダの「build/three.js」に格納されています。また、このファイルには、ミニマイズ化した「build/three.min.js」もあります。デバッグ時は「three.js」を利用して、リリース時には「three.min.js」を使用するとよいでしょう。

three.js

 「three.js」を利用したり、サンプルを利用する際には注意が必要です。ブラウザのセキュリティ制限から、ローカル環境ではテクスチャなどの画像を読み込むことができません。作成したファイルやサンプルは、サーバー上にアップロードして確認するか、ローカル サーバーを立ててブラウザに読み込ませる必要があります。

 ローカルでサーバーを実行するには「HTTP Server Anywhere」が便利です。「server.jar」をダブルクリックするだけで、そのフォルダをルートとしたサーバーが起動して、「http://127.0.0.1/(目的のファイル)」でファイルにアクセスできるようになります。

記事の構成

 本連載では、以下の内容を、コードを示しながら解説していき、最後にマンガのコマとして、すべてのプログラムを統合したサンプルを作成します。

 また、サンプルはテクスチャを読み込む関係上、ローカルでは動作しません。そこで、サーバー上にもサンプルをアップロードしておきました。どういった内容か、以下からご確認ください。

記事の構成 - 第1回
内容 ページ
シーンとカメラとレンダラーの準備 3ページ
立方体の表示 4ページ
色付き板ポリゴンの表示 5ページ
画像をテクスチャとして読み込み1 5ページ
画像をテクスチャとして読み込み2 6ページ
Canvasをテクスチャとして読み込み 6ページ
記事の構成 - 第2回
内容 ページ
マウスによる移動、回転、拡縮操作 2ページ
レイキャスターを利用した選択と移動1 3ページ
レイキャスターを利用した選択と移動2 4ページ
クォータニオンによる回転 5ページ
記事の構成 - 第3回
内容 ページ
集中線の表示 1ページ
フキダシの表示 2ページ
箱人形の表示 3ページ
WebGLからPNGを出力 4ページ
まとめ 4~5ページ

 それでは、コードを示して解説していきます。

次のページ
シーンとカメラとレンダラーの準備

この記事は参考になりましたか?

JavaScriptとWebGLによるはじめての3Dプログラミング連載記事一覧

もっと読む

この記事の著者

柳井 政和(ヤナイ マサカズ)

クロノス・クラウン合同会社 代表社員http://crocro.com/オンラインソフトを多数公開。プログラムを書いたり、ゲームを作ったり、記事を執筆したり、マンガを描いたり、小説を書いたりしています。「めもりーくりーなー」でオンラインソフト大賞に入賞。最近は、小説家デビューして小説も書いています(『裏切りのプログラム』他)。面白いことなら何でもOKのさすらいの企画屋です。 

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/7208 2013/06/21 14:00

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー