SlideShare uma empresa Scribd logo
1 de 51
WebGL入門ハンズオン
with Three.js
面白法人カヤック 技術部
比留間 和也
@edo_m18 @edom18
UnityやWebで
VRコンテンツ作ってます
WebGL Tokyo Meetupを不定期で開催しています
WebVRについての記事書きました
ゴール
• WebGLを実際にやってみよう!と思ってもらうこと
• WebGLを使ったコンテンツを作ろうと思ってもらうこと
• WebGLをどう使ったらいいかのヒントを掴んでもらうこと
アジェンダ
• WebGLってそもそもなんなの!? by @doxas
• Understanding Three.js by @yomotsu
• Three.jsを使ったハンズオン
• 3Dの基礎知識
• チームごとでWebGL x UIのアイデア出し
• もくもくタイム
いざハンズオン!
の前に、
少しだけ説明
Three.jsのイメージ
突然ですが質問です
映画撮影に必要なものは?
• 役者
• カメラ
• ライト
• シーン
• 再生機
• 役者
• カメラ
• ライト
• シーン
• 再生機
→オブジェクト
→カメラ
→ライト
→シーン
→レンダラー
Three.jsで考えると・・・
シーンのイメージ
イメージ
シーンのイメージ
イメージ
シーンのイメージ
イメージ
シーンのイメージ
イメージ
シーンのイメージ
シーン
イメージ
シーンのイメージ
THREE.PerspectiveCamera
THREE.Mesh
THREE.DirectionalLight
THREE.Scene
THREE.Mesh
イメージ
Mesh
THREE.Meshは
「形」と「材質」で決まる
形 ・・・ Geometry
e.g. THREE.BoxGeometry,
THREE.PlaneGeometry, etc.
材質 ・・・ Material
e.g. THREE.MeshLambertMaterial,
THREE.MeshPhongMaterial, etc.
おまけ
座標系を理解する
右手・左手
ベクトル
3Dで言えば
(x, y, z)で表される値
のこと
ベクトルの加算
ベクトルの減算
ベクトルの長さ
ベクトルの正規化
Normalize
ベクトルのスカラー倍
WebGL入門ハンズオン資料

Mais conteúdo relacionado

Mais procurados

Iron rubyとsilverlightとゲームと
Iron rubyとsilverlightとゲームとIron rubyとsilverlightとゲームと
Iron rubyとsilverlightとゲームと
kumaryu
 

Mais procurados (20)

React+fluxを導入した話
React+fluxを導入した話React+fluxを導入した話
React+fluxを導入した話
 
PHPでWebSocketを実装してみてわかったこと
PHPでWebSocketを実装してみてわかったことPHPでWebSocketを実装してみてわかったこと
PHPでWebSocketを実装してみてわかったこと
 
SIROK技術勉強会 #1 「Reactってなんだ?」
SIROK技術勉強会 #1 「Reactってなんだ?」SIROK技術勉強会 #1 「Reactってなんだ?」
SIROK技術勉強会 #1 「Reactってなんだ?」
 
サーバを運用する時代は終わった
サーバを運用する時代は終わったサーバを運用する時代は終わった
サーバを運用する時代は終わった
 
About SnapKit - Open source lab -
About SnapKit - Open source lab -About SnapKit - Open source lab -
About SnapKit - Open source lab -
 
Vue.js 2.0 で自社プロダクトを SPA + SSR 化した話
Vue.js 2.0 で自社プロダクトを SPA + SSR 化した話Vue.js 2.0 で自社プロダクトを SPA + SSR 化した話
Vue.js 2.0 で自社プロダクトを SPA + SSR 化した話
 
gulp芸
gulp芸gulp芸
gulp芸
 
Nodeとフロントエンド − 知っておかなければならない、今と未来の話 −
Nodeとフロントエンド − 知っておかなければならない、今と未来の話 −Nodeとフロントエンド − 知っておかなければならない、今と未来の話 −
Nodeとフロントエンド − 知っておかなければならない、今と未来の話 −
 
HTML5で作るスマホブラウザゲーム
HTML5で作るスマホブラウザゲームHTML5で作るスマホブラウザゲーム
HTML5で作るスマホブラウザゲーム
 
Nodeにしましょう
NodeにしましょうNodeにしましょう
Nodeにしましょう
 
Grimoire.js + HoloLens
Grimoire.js + HoloLensGrimoire.js + HoloLens
Grimoire.js + HoloLens
 
Atlフェス2017 言霊holo lens
Atlフェス2017 言霊holo lensAtlフェス2017 言霊holo lens
Atlフェス2017 言霊holo lens
 
作品は誰かに見てもらった方が良い!
作品は誰かに見てもらった方が良い!作品は誰かに見てもらった方が良い!
作品は誰かに見てもらった方が良い!
 
Frontend Fantasy 〜ミスリルの戦士たち〜
Frontend Fantasy 〜ミスリルの戦士たち〜Frontend Fantasy 〜ミスリルの戦士たち〜
Frontend Fantasy 〜ミスリルの戦士たち〜
 
Iotlt 28 HoloLensに日本語聞いてもらいたい
Iotlt 28 HoloLensに日本語聞いてもらいたいIotlt 28 HoloLensに日本語聞いてもらいたい
Iotlt 28 HoloLensに日本語聞いてもらいたい
 
フロントエンドエンジニアからエンジニアになった話
フロントエンドエンジニアからエンジニアになった話フロントエンドエンジニアからエンジニアになった話
フロントエンドエンジニアからエンジニアになった話
 
「Webサービスのつくり方」 のつくり方
「Webサービスのつくり方」 のつくり方「Webサービスのつくり方」 のつくり方
「Webサービスのつくり方」 のつくり方
 
Iron rubyとsilverlightとゲームと
Iron rubyとsilverlightとゲームとIron rubyとsilverlightとゲームと
Iron rubyとsilverlightとゲームと
 
最近、実務に導入してみたフロントエンドの技術8つの良かった点と反省点
最近、実務に導入してみたフロントエンドの技術8つの良かった点と反省点最近、実務に導入してみたフロントエンドの技術8つの良かった点と反省点
最近、実務に導入してみたフロントエンドの技術8つの良かった点と反省点
 
Hello, Node.js
Hello, Node.jsHello, Node.js
Hello, Node.js
 

Destaque

Destaque (15)

WebGL入門LT大会資料
WebGL入門LT大会資料WebGL入門LT大会資料
WebGL入門LT大会資料
 
UnityでARの音楽アプリを作ってみた話
UnityでARの音楽アプリを作ってみた話UnityでARの音楽アプリを作ってみた話
UnityでARの音楽アプリを作ってみた話
 
Unityアセット販売の真実
Unityアセット販売の真実Unityアセット販売の真実
Unityアセット販売の真実
 
パブリッシャーになろう!売上と出品するメリットを大公開!
パブリッシャーになろう!売上と出品するメリットを大公開!パブリッシャーになろう!売上と出品するメリットを大公開!
パブリッシャーになろう!売上と出品するメリットを大公開!
 
Unreal Fest 2015 YOKOHAMA マーケットプレースで アセットを 販売してみよう!& CascadeパーティクルTIPS
Unreal Fest 2015 YOKOHAMA マーケットプレースで アセットを 販売してみよう!& CascadeパーティクルTIPSUnreal Fest 2015 YOKOHAMA マーケットプレースで アセットを 販売してみよう!& CascadeパーティクルTIPS
Unreal Fest 2015 YOKOHAMA マーケットプレースで アセットを 販売してみよう!& CascadeパーティクルTIPS
 
UnityFukuoka11 自作アセットを出すまで...
UnityFukuoka11 自作アセットを出すまで...UnityFukuoka11 自作アセットを出すまで...
UnityFukuoka11 自作アセットを出すまで...
 
超軽量経路探索 for Unity
超軽量経路探索 for Unity超軽量経路探索 for Unity
超軽量経路探索 for Unity
 
Unityでデスクトップマスコットを作ろう
Unityでデスクトップマスコットを作ろうUnityでデスクトップマスコットを作ろう
Unityでデスクトップマスコットを作ろう
 
アセット作家になろう! ~作ったキャラクターやスクリプトをアセットストアに出品しよう!~
アセット作家になろう! ~作ったキャラクターやスクリプトをアセットストアに出品しよう!~アセット作家になろう! ~作ったキャラクターやスクリプトをアセットストアに出品しよう!~
アセット作家になろう! ~作ったキャラクターやスクリプトをアセットストアに出品しよう!~
 
Unity で毎月ゲームを作ってみたお話
Unity で毎月ゲームを作ってみたお話Unity で毎月ゲームを作ってみたお話
Unity で毎月ゲームを作ってみたお話
 
C#/WPFで作るデスクトップマスコット入門
C#/WPFで作るデスクトップマスコット入門C#/WPFで作るデスクトップマスコット入門
C#/WPFで作るデスクトップマスコット入門
 
Teratail Study  ~機械学習編#1~
Teratail Study  ~機械学習編#1~Teratail Study  ~機械学習編#1~
Teratail Study  ~機械学習編#1~
 
Azure Machine Learning getting started
Azure Machine Learning getting startedAzure Machine Learning getting started
Azure Machine Learning getting started
 
Go初心者向けハンズオン コマンドラインツールを作ろう
Go初心者向けハンズオン コマンドラインツールを作ろうGo初心者向けハンズオン コマンドラインツールを作ろう
Go初心者向けハンズオン コマンドラインツールを作ろう
 
Androidアプリのストレージ戦略
Androidアプリのストレージ戦略Androidアプリのストレージ戦略
Androidアプリのストレージ戦略
 

Semelhante a WebGL入門ハンズオン資料

エンジニアじゃなくてもAngularJS×milkcocoaでチャットアプリが1時間!? 非エンジニアから見たAngularJSの感動するポイント3つ
エンジニアじゃなくてもAngularJS×milkcocoaでチャットアプリが1時間!? 非エンジニアから見たAngularJSの感動するポイント3つエンジニアじゃなくてもAngularJS×milkcocoaでチャットアプリが1時間!? 非エンジニアから見たAngularJSの感動するポイント3つ
エンジニアじゃなくてもAngularJS×milkcocoaでチャットアプリが1時間!? 非エンジニアから見たAngularJSの感動するポイント3つ
Yusaku Kinoshita
 

Semelhante a WebGL入門ハンズオン資料 (20)

Three.js使ってみた
Three.js使ってみたThree.js使ってみた
Three.js使ってみた
 
WebVR Tokyo Meetup vol2
WebVR Tokyo Meetup vol2WebVR Tokyo Meetup vol2
WebVR Tokyo Meetup vol2
 
プログラムで映像をつくるとは?? ~超入門編~
プログラムで映像をつくるとは?? ~超入門編~プログラムで映像をつくるとは?? ~超入門編~
プログラムで映像をつくるとは?? ~超入門編~
 
Wcan 2013 autumn_trident_mizuno
Wcan 2013 autumn_trident_mizunoWcan 2013 autumn_trident_mizuno
Wcan 2013 autumn_trident_mizuno
 
HTML5でサイネージは作れる!!
HTML5でサイネージは作れる!!HTML5でサイネージは作れる!!
HTML5でサイネージは作れる!!
 
これで大丈夫。Web制作で使うコマンドラインツールの名前と役割をざっくり理解する
これで大丈夫。Web制作で使うコマンドラインツールの名前と役割をざっくり理解するこれで大丈夫。Web制作で使うコマンドラインツールの名前と役割をざっくり理解する
これで大丈夫。Web制作で使うコマンドラインツールの名前と役割をざっくり理解する
 
エンジニアじゃなくても 3Dゲームが3時間できた話。 ~three.jsで3D糸通しをつくってみた~
エンジニアじゃなくても 3Dゲームが3時間できた話。 ~three.jsで3D糸通しをつくってみた~エンジニアじゃなくても 3Dゲームが3時間できた話。 ~three.jsで3D糸通しをつくってみた~
エンジニアじゃなくても 3Dゲームが3時間できた話。 ~three.jsで3D糸通しをつくってみた~
 
東京クロノスで製作中のエディターの紹介
東京クロノスで製作中のエディターの紹介東京クロノスで製作中のエディターの紹介
東京クロノスで製作中のエディターの紹介
 
PlayCanvas:2D機能とライブラリ組み込みのいろは - PlayCanvas運営事務局 - GTMF 2018 OSAKA
PlayCanvas:2D機能とライブラリ組み込みのいろは - PlayCanvas運営事務局 - GTMF 2018 OSAKAPlayCanvas:2D機能とライブラリ組み込みのいろは - PlayCanvas運営事務局 - GTMF 2018 OSAKA
PlayCanvas:2D機能とライブラリ組み込みのいろは - PlayCanvas運営事務局 - GTMF 2018 OSAKA
 
PlayCanvas:2D機能とライブラリ組み込みのいろは - PlayCanvas運営事務局 - GTMF 2018 TOKYO
PlayCanvas:2D機能とライブラリ組み込みのいろは - PlayCanvas運営事務局 - GTMF 2018 TOKYOPlayCanvas:2D機能とライブラリ組み込みのいろは - PlayCanvas運営事務局 - GTMF 2018 TOKYO
PlayCanvas:2D機能とライブラリ組み込みのいろは - PlayCanvas運営事務局 - GTMF 2018 TOKYO
 
みくみくまうすについて&Unity で使えるコーディングノウハウ
みくみくまうすについて&Unity で使えるコーディングノウハウみくみくまうすについて&Unity で使えるコーディングノウハウ
みくみくまうすについて&Unity で使えるコーディングノウハウ
 
WebGLとvideoを組み合わせるおもしろい
WebGLとvideoを組み合わせるおもしろいWebGLとvideoを組み合わせるおもしろい
WebGLとvideoを組み合わせるおもしろい
 
エンジニアじゃなくてもAngularJS×milkcocoaでチャットアプリが1時間!? 非エンジニアから見たAngularJSの感動するポイント3つ
エンジニアじゃなくてもAngularJS×milkcocoaでチャットアプリが1時間!? 非エンジニアから見たAngularJSの感動するポイント3つエンジニアじゃなくてもAngularJS×milkcocoaでチャットアプリが1時間!? 非エンジニアから見たAngularJSの感動するポイント3つ
エンジニアじゃなくてもAngularJS×milkcocoaでチャットアプリが1時間!? 非エンジニアから見たAngularJSの感動するポイント3つ
 
既存 IBM Notes アプリにブロックチェーンを適用するよ! (きっと)動くよ!!
既存 IBM Notes アプリにブロックチェーンを適用するよ! (きっと)動くよ!!既存 IBM Notes アプリにブロックチェーンを適用するよ! (きっと)動くよ!!
既存 IBM Notes アプリにブロックチェーンを適用するよ! (きっと)動くよ!!
 
BlazorにSwaggerを導入してみよう
BlazorにSwaggerを導入してみようBlazorにSwaggerを導入してみよう
BlazorにSwaggerを導入してみよう
 
Azure環境にわざと障害を発生させる Azure Chaos Studio を試してみた
Azure環境にわざと障害を発生させる Azure Chaos Studio を試してみたAzure環境にわざと障害を発生させる Azure Chaos Studio を試してみた
Azure環境にわざと障害を発生させる Azure Chaos Studio を試してみた
 
Rnyoutube
RnyoutubeRnyoutube
Rnyoutube
 
Begin cucumber-in-real-world
Begin cucumber-in-real-worldBegin cucumber-in-real-world
Begin cucumber-in-real-world
 
javascript を Xcode でテスト
javascript を Xcode でテストjavascript を Xcode でテスト
javascript を Xcode でテスト
 
【 #Unity会 】このUnityがすごい2015年版
【 #Unity会 】このUnityがすごい2015年版【 #Unity会 】このUnityがすごい2015年版
【 #Unity会 】このUnityがすごい2015年版
 

Mais de Kazuya Hiruma

Mais de Kazuya Hiruma (20)

MESONプロジェクトから学ぶこれからのAR開発に必要なこと
MESONプロジェクトから学ぶこれからのAR開発に必要なことMESONプロジェクトから学ぶこれからのAR開発に必要なこと
MESONプロジェクトから学ぶこれからのAR開発に必要なこと
 
PORTAL with Nreal in CES 2020 開発の学び @XR Hub
PORTAL with Nreal in CES 2020 開発の学び @XR HubPORTAL with Nreal in CES 2020 開発の学び @XR Hub
PORTAL with Nreal in CES 2020 開発の学び @XR Hub
 
ARグラスで 魅力的な絵作り
ARグラスで 魅力的な絵作りARグラスで 魅力的な絵作り
ARグラスで 魅力的な絵作り
 
AWE Nite ARKit3 Hackathon
AWE Nite ARKit3 HackathonAWE Nite ARKit3 Hackathon
AWE Nite ARKit3 Hackathon
 
レイマーチ入門勉強会資料
レイマーチ入門勉強会資料レイマーチ入門勉強会資料
レイマーチ入門勉強会資料
 
MESONで手がけたARアプリ AR Developer Meetup #2
MESONで手がけたARアプリ AR Developer Meetup #2MESONで手がけたARアプリ AR Developer Meetup #2
MESONで手がけたARアプリ AR Developer Meetup #2
 
みんなレイ飛ばしてる?
みんなレイ飛ばしてる?みんなレイ飛ばしてる?
みんなレイ飛ばしてる?
 
VRゲーム制作楽しいよ! @UnityおとなのLT大会
VRゲーム制作楽しいよ! @UnityおとなのLT大会VRゲーム制作楽しいよ! @UnityおとなのLT大会
VRゲーム制作楽しいよ! @UnityおとなのLT大会
 
ElminaAR - Unity x ARKit 入門Meetup
ElminaAR - Unity x ARKit 入門MeetupElminaAR - Unity x ARKit 入門Meetup
ElminaAR - Unity x ARKit 入門Meetup
 
今すぐ始められるモバイルVR〜あなたも今日からVRエンジニア〜
今すぐ始められるモバイルVR〜あなたも今日からVRエンジニア〜今すぐ始められるモバイルVR〜あなたも今日からVRエンジニア〜
今すぐ始められるモバイルVR〜あなたも今日からVRエンジニア〜
 
UnityでARKitハンズオン
UnityでARKitハンズオンUnityでARKitハンズオン
UnityでARKitハンズオン
 
すぐそこにある未来〜AR〜
すぐそこにある未来〜AR〜すぐそこにある未来〜AR〜
すぐそこにある未来〜AR〜
 
VRで酔わないコンテンツ作り
VRで酔わないコンテンツ作りVRで酔わないコンテンツ作り
VRで酔わないコンテンツ作り
 
WebVRコンテンツ制作入門
WebVRコンテンツ制作入門WebVRコンテンツ制作入門
WebVRコンテンツ制作入門
 
WebVRってこんなことできるよ!
WebVRってこんなことできるよ!WebVRってこんなことできるよ!
WebVRってこんなことできるよ!
 
そしてWebVR
そしてWebVRそしてWebVR
そしてWebVR
 
Unity入門ハンズオン
Unity入門ハンズオンUnity入門ハンズオン
Unity入門ハンズオン
 
WebVR 酔いづらいコンテンツの作り方
WebVR 酔いづらいコンテンツの作り方WebVR 酔いづらいコンテンツの作り方
WebVR 酔いづらいコンテンツの作り方
 
WebVRことはじめ
WebVRことはじめWebVRことはじめ
WebVRことはじめ
 
集まっTail #5 LT
集まっTail #5 LT集まっTail #5 LT
集まっTail #5 LT
 

Último

Último (7)

業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 

WebGL入門ハンズオン資料