Skip to Content
初めてのWebGL 2 第2版 ―JavaScriptで開発するリアルタイム3Dアプリケーション
book

初めてのWebGL 2 第2版 ―JavaScriptで開発するリアルタイム3Dアプリケーション

by Farhad Ghayour, Diego Cantor, あんどうやすし
July 2021
Intermediate to advanced
440 pages
6h 10m
Japanese
O'Reilly Japan, Inc.
Content preview from 初めてのWebGL 2 第2版 ―JavaScriptで開発するリアルタイム3Dアプリケーション

8章ピッキング

先ほどの章では、テクスチャについて学び、3Dアプリケーションでより細かな表現が可能になりました。本章ではピッキングと呼ばれるテクニックを利用してWebGLアプリケーションを操作する方法を学びます。ピッキングとは3Dシーン内のオブジェクトを選択する機能のことです。ピッキングに使用するデバイスでもっとも一般的なものはマウスですが、タッチスクリーンやハプティックデバイスなど、他のユーザーインタフェースも使用できます。

本章では以下のことを学びます。

  • マウスを使用したWebGLシーン内のオブジェクトの選択
  • オフスクリーンフレームバッファの作成と利用
  • レンダーバッファとフレームバッファ
  • フレームバッファからピクセルの読み取り
  • カラーラベルを使用したオブジェクト選択

8.1 ピッキング

現実問題として、あらゆる3Dコンピューターグラフィックスアプリケーションには、ユーザーがシーンを操作するためのメカニズムが必要です。例えば、ゲームではターゲットを指定してそれに対してアクションを実行する必要があるでしょう。他にも、CADシステムではシーン内のオブジェクトを選択してそのプロパティを変更する必要があるでしょう。本章ではWebGLでそのようなインタラクションを実装する基礎を学びます。

まず初めに、シーン内のカメラ位置(目の位置とも言えます)からレイ(ベクトル)を飛ばしてその経路上にあるオブジェクトを計算すると、オブジェクトを選択できるということを覚えておきましょう。この処理はレイキャスティングと呼ばれ、実現するにはレイとシーン内のオブジェクト表面との交わりを検知する必要があります。

レイキャスティング

レイキャスティングとはレイと表面の交差を求めることで、コンピューターグラフィックスや計算幾何学におけるさまざまな問題を解決する手段です。この用語は、コンピューターグラフィックスの世界では、1982年にConstructive ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

ゼロからはじめるデータサイエンス 第2版 ―Pythonで学ぶ基本と実践

ゼロからはじめるデータサイエンス 第2版 ―Pythonで学ぶ基本と実践

Joel Grus, 菊池 彰
Pythonによるデータ分析入門 第2版 ―NumPy、pandasを使ったデータ処理

Pythonによるデータ分析入門 第2版 ―NumPy、pandasを使ったデータ処理

Wes McKinney, 瀬戸山 雅人, 小林 儀匡, 滝口 開資
推薦システム実践入門 ―仕事で使える導入ガイド

推薦システム実践入門 ―仕事で使える導入ガイド

風間 正弘, 飯塚 洸二郎, 松村 優也

Publisher Resources

ISBN: 9784873119373Other