SlideShare a Scribd company logo
chrome拡張機能で
ブラウザにp5jsを召喚!
processing community day tokyo 2019
ぐるたか@guru_taka
自己紹介
名前:ぐるたか@guru_taka
PG歴:スクールでプログラミング学習中。現在、4ヶ月目
p5js:チューターにすすめられ、いつの間にかハマる
生物を表現するのが好きです。
特に魚がお気に入りです!
現在:今はunityばっかやってます(爆)
p5jsやってて思ったこと
作って鑑賞したら終わり!って寂しすぎる…
ふと思ったこと
ブラウザにp5jsの作品を出せたら
すべて解決じゃん!
でも、そんなことできるの?
できました!
拡張機能に保存すれば良いんです(キリッ)
デモ紹介
・フィッシュマウスストーカー
・四季
布教する一心で
開発方法を紹介します!
開発言語 is simple!
・html
・css
・JavaScript
拡張機能の世界
ブラウザポップアップ
それぞれの世界ごとにファイルを作成!
ブラウザポップアップ
pop
up content
script
p5のscriptはここに書く!
データのパスも可能!
APIを使えば、データをパスできる!
ブラウザ ポップアップ
サンプル:作るもの
全体の流れ
STEP1:div要素をブラウザに配置
STEP2:setupで画面全体にcanvasを配置
STEP3:drawでclear()を忘れずに!
※content_script内で動きます
※p5のライブラリは設定ファイル(manifest.json)で読み込みます
STEP1:div要素をブラウザに配
置document.body.insertAdjacentHTML
('afterbegin', '<div id="p5Canvas"></div>')
STEP2:canvasをセット
function setup() {
let canvas = createCanvas(windowWidth,
windowHeight)
canvas.parent('p5Canvas')
}
STEP3:clear()を入れよう!
・draw()構文にclear()を入れること
背景を透明にしながら上書きできます!
※background(255)にすると、ブラウザがみえない…
こんな感じで背景が白くて見えない…
※cssに書くこと
#p5Canvas {
/* スクロールしてもcanvasを固定するため */
position: fixed;
/* ブラウザのdomより表に出せる */
z-index: 30;
/* caanvasの裏側にあるdomのクリックイベントを有効化するため */
pointer-events: none;
}
拡張機能の読み込み方法
拡張機能の開発方法の詳細
デプロイやデバック、設定ファイルetc…
拙著のQiita記事を参考にして頂ければ幸いです🙇♂️
サンプルソース
GitHubにupしているので、お試しくださいませ!
https://github.com/gurutaka/ChromeExtension-p5jsSample
最後に
・みんなで自作したp5js作品をブラウザに召喚しようぜ!!!
・よかったら、twitter@guru_takaをフォローしてね!
・友達になってください
ご清聴、ありがとうございました

More Related Content

What's hot

IGC 2018 - 던그리드 이랬으면 더 좋았을 걸[SlideShare]
IGC 2018 - 던그리드 이랬으면 더 좋았을 걸[SlideShare]IGC 2018 - 던그리드 이랬으면 더 좋았을 걸[SlideShare]
IGC 2018 - 던그리드 이랬으면 더 좋았을 걸[SlideShare]
지환 문
 
企画が考えるスマホUIデザイン
企画が考えるスマホUIデザイン企画が考えるスマホUIデザイン
企画が考えるスマホUIデザインKatsumi Mizushima
 
IGC2016 스매싱더배틀 - 출시후일어난일들
IGC2016 스매싱더배틀 - 출시후일어난일들IGC2016 스매싱더배틀 - 출시후일어난일들
IGC2016 스매싱더배틀 - 출시후일어난일들
Daehoon Han
 
[IGC 2017] 블루홀 최준혁 - '플레이어언노운스 배틀그라운드' DEV 스토리
[IGC 2017] 블루홀 최준혁 - '플레이어언노운스 배틀그라운드' DEV 스토리[IGC 2017] 블루홀 최준혁 - '플레이어언노운스 배틀그라운드' DEV 스토리
[IGC 2017] 블루홀 최준혁 - '플레이어언노운스 배틀그라운드' DEV 스토리
강 민우
 
Flashcards-plain A to Z, 1-10
Flashcards-plain A to Z, 1-10Flashcards-plain A to Z, 1-10
Flashcards-plain A to Z, 1-10
braskasmom
 
18524 fkafdbn
18524 fkafdbn18524 fkafdbn
18524 fkafdbn
BGA321959
 
En ville
En villeEn ville
[Unity3D] Cat RPG game
[Unity3D] Cat RPG game[Unity3D] Cat RPG game
[Unity3D] Cat RPG game
Kim Heejin
 
Huruf bergambar
Huruf bergambarHuruf bergambar
Huruf bergambar
abhamz16
 
What letter is this?
What letter is this?What letter is this?
What letter is this?
Phuong Anh Doan
 
Flashcards
FlashcardsFlashcards
게임 유저 행동 분석으로 이탈 방지하는 방법 (텐투플레이 웨비나)
게임 유저 행동 분석으로 이탈 방지하는 방법 (텐투플레이 웨비나)게임 유저 행동 분석으로 이탈 방지하는 방법 (텐투플레이 웨비나)
게임 유저 행동 분석으로 이탈 방지하는 방법 (텐투플레이 웨비나)
Hyeyon Kwon
 
Sin Azucar editorial zig zag completo. pdf
Sin Azucar editorial zig zag completo. pdfSin Azucar editorial zig zag completo. pdf
Sin Azucar editorial zig zag completo. pdf
VernicaAguirre19
 
The Alphabet.New
The Alphabet.NewThe Alphabet.New
The Alphabet.New
Peter Chang
 
MMOGで考えるゲームデザイン
MMOGで考えるゲームデザインMMOGで考えるゲームデザイン
MMOGで考えるゲームデザインKatsumi Mizushima
 
Abc Book
Abc BookAbc Book
Abc Book
dilwolfe
 
ワンランク上のゲームデザイン・レベルデザイン・UIデザインを考える 「コンテキスト」「コンフリクト」「コントラスト」デザイン
ワンランク上のゲームデザイン・レベルデザイン・UIデザインを考える 「コンテキスト」「コンフリクト」「コントラスト」デザインワンランク上のゲームデザイン・レベルデザイン・UIデザインを考える 「コンテキスト」「コンフリクト」「コントラスト」デザイン
ワンランク上のゲームデザイン・レベルデザイン・UIデザインを考える 「コンテキスト」「コンフリクト」「コントラスト」デザイン
Kouji Ohno
 
Alphabet cards ( phonics )
Alphabet  cards ( phonics )Alphabet  cards ( phonics )
Alphabet cards ( phonics )
mahfuzahrahman
 
GA로 게임 로그 분석하기
GA로 게임 로그 분석하기GA로 게임 로그 분석하기
GA로 게임 로그 분석하기
Alan Kang
 
Phonetic alphabet pp
Phonetic alphabet ppPhonetic alphabet pp
Phonetic alphabet pp
atles
 

What's hot (20)

IGC 2018 - 던그리드 이랬으면 더 좋았을 걸[SlideShare]
IGC 2018 - 던그리드 이랬으면 더 좋았을 걸[SlideShare]IGC 2018 - 던그리드 이랬으면 더 좋았을 걸[SlideShare]
IGC 2018 - 던그리드 이랬으면 더 좋았을 걸[SlideShare]
 
企画が考えるスマホUIデザイン
企画が考えるスマホUIデザイン企画が考えるスマホUIデザイン
企画が考えるスマホUIデザイン
 
IGC2016 스매싱더배틀 - 출시후일어난일들
IGC2016 스매싱더배틀 - 출시후일어난일들IGC2016 스매싱더배틀 - 출시후일어난일들
IGC2016 스매싱더배틀 - 출시후일어난일들
 
[IGC 2017] 블루홀 최준혁 - '플레이어언노운스 배틀그라운드' DEV 스토리
[IGC 2017] 블루홀 최준혁 - '플레이어언노운스 배틀그라운드' DEV 스토리[IGC 2017] 블루홀 최준혁 - '플레이어언노운스 배틀그라운드' DEV 스토리
[IGC 2017] 블루홀 최준혁 - '플레이어언노운스 배틀그라운드' DEV 스토리
 
Flashcards-plain A to Z, 1-10
Flashcards-plain A to Z, 1-10Flashcards-plain A to Z, 1-10
Flashcards-plain A to Z, 1-10
 
18524 fkafdbn
18524 fkafdbn18524 fkafdbn
18524 fkafdbn
 
En ville
En villeEn ville
En ville
 
[Unity3D] Cat RPG game
[Unity3D] Cat RPG game[Unity3D] Cat RPG game
[Unity3D] Cat RPG game
 
Huruf bergambar
Huruf bergambarHuruf bergambar
Huruf bergambar
 
What letter is this?
What letter is this?What letter is this?
What letter is this?
 
Flashcards
FlashcardsFlashcards
Flashcards
 
게임 유저 행동 분석으로 이탈 방지하는 방법 (텐투플레이 웨비나)
게임 유저 행동 분석으로 이탈 방지하는 방법 (텐투플레이 웨비나)게임 유저 행동 분석으로 이탈 방지하는 방법 (텐투플레이 웨비나)
게임 유저 행동 분석으로 이탈 방지하는 방법 (텐투플레이 웨비나)
 
Sin Azucar editorial zig zag completo. pdf
Sin Azucar editorial zig zag completo. pdfSin Azucar editorial zig zag completo. pdf
Sin Azucar editorial zig zag completo. pdf
 
The Alphabet.New
The Alphabet.NewThe Alphabet.New
The Alphabet.New
 
MMOGで考えるゲームデザイン
MMOGで考えるゲームデザインMMOGで考えるゲームデザイン
MMOGで考えるゲームデザイン
 
Abc Book
Abc BookAbc Book
Abc Book
 
ワンランク上のゲームデザイン・レベルデザイン・UIデザインを考える 「コンテキスト」「コンフリクト」「コントラスト」デザイン
ワンランク上のゲームデザイン・レベルデザイン・UIデザインを考える 「コンテキスト」「コンフリクト」「コントラスト」デザインワンランク上のゲームデザイン・レベルデザイン・UIデザインを考える 「コンテキスト」「コンフリクト」「コントラスト」デザイン
ワンランク上のゲームデザイン・レベルデザイン・UIデザインを考える 「コンテキスト」「コンフリクト」「コントラスト」デザイン
 
Alphabet cards ( phonics )
Alphabet  cards ( phonics )Alphabet  cards ( phonics )
Alphabet cards ( phonics )
 
GA로 게임 로그 분석하기
GA로 게임 로그 분석하기GA로 게임 로그 분석하기
GA로 게임 로그 분석하기
 
Phonetic alphabet pp
Phonetic alphabet ppPhonetic alphabet pp
Phonetic alphabet pp
 

Similar to chrome拡張機能で ブラウザにp5jsを召喚!

2015/09/12 第9回G-Study発表資料-XdebugでPHP ScriptのProfileしてみる
2015/09/12 第9回G-Study発表資料-XdebugでPHP ScriptのProfileしてみる2015/09/12 第9回G-Study発表資料-XdebugでPHP ScriptのProfileしてみる
2015/09/12 第9回G-Study発表資料-XdebugでPHP ScriptのProfileしてみる
Yuta Hayakawa
 
ライブコーディング・Androidのライブラリを作ってみよう
ライブコーディング・Androidのライブラリを作ってみようライブコーディング・Androidのライブラリを作ってみよう
ライブコーディング・Androidのライブラリを作ってみよう
Masataka Kono
 
PHP with Visual Studio
PHP with Visual StudioPHP with Visual Studio
PHP with Visual Studio
Keiichi Kobayashi
 
パワーポイントを作るときに抑えておきたい色んなところ
パワーポイントを作るときに抑えておきたい色んなところパワーポイントを作るときに抑えておきたい色んなところ
パワーポイントを作るときに抑えておきたい色んなところ
mishikawa
 
こわくないPython
こわくないPythonこわくないPython
こわくないPython
Katsuya Arai
 
パーフェクトダッシュボード
パーフェクトダッシュボードパーフェクトダッシュボード
パーフェクトダッシュボード
Takashi Hosoya
 
リモート環境でも社内勉強会(てっくらんち)を運営してよかった!! - Bit valley inside- vol.17-kazuyuki takahashi
リモート環境でも社内勉強会(てっくらんち)を運営してよかった!! - Bit valley  inside- vol.17-kazuyuki takahashiリモート環境でも社内勉強会(てっくらんち)を運営してよかった!! - Bit valley  inside- vol.17-kazuyuki takahashi
リモート環境でも社内勉強会(てっくらんち)を運営してよかった!! - Bit valley inside- vol.17-kazuyuki takahashi
Kazuyuki Takahashi
 
1回目勉強会の説明
1回目勉強会の説明1回目勉強会の説明
1回目勉強会の説明Takuya Shishido
 
スクラム開発に取り組んでみた
スクラム開発に取り組んでみたスクラム開発に取り組んでみた
スクラム開発に取り組んでみた
yyasuyuki
 
YAPC::ASIA 2012 LT GaiaX
YAPC::ASIA 2012 LT GaiaXYAPC::ASIA 2012 LT GaiaX
YAPC::ASIA 2012 LT GaiaXKazuyuki Todo
 
春を先取り!OpsWorksとChef ではじめる恋色コーデ術! #pyfes 2013.03
春を先取り!OpsWorksとChef ではじめる恋色コーデ術! #pyfes 2013.03春を先取り!OpsWorksとChef ではじめる恋色コーデ術! #pyfes 2013.03
春を先取り!OpsWorksとChef ではじめる恋色コーデ術! #pyfes 2013.03Takeshi Komiya
 
Alternative chef
Alternative chefAlternative chef
Alternative chef
Ryuji Tsutsui
 
WordCampOsaka2012 WordPressあるある
WordCampOsaka2012 WordPressあるあるWordCampOsaka2012 WordPressあるある
WordCampOsaka2012 WordPressあるある
Takashi Uemura
 
Rubyist started to learn Groovy - things important to leran new LL
Rubyist started to learn Groovy - things important to leran new LLRubyist started to learn Groovy - things important to leran new LL
Rubyist started to learn Groovy - things important to leran new LL
Uchio Kondo
 
Soramame.Block 100行のJavaScriptで ビジュアルプログラミング言語(のフロントエンド)を作ってみた:
Soramame.Block 100行のJavaScriptで ビジュアルプログラミング言語(のフロントエンド)を作ってみた: Soramame.Block 100行のJavaScriptで ビジュアルプログラミング言語(のフロントエンド)を作ってみた:
Soramame.Block 100行のJavaScriptで ビジュアルプログラミング言語(のフロントエンド)を作ってみた:
Yutaka Kachi
 
Go 言語を語ってみるか
Go 言語を語ってみるかGo 言語を語ってみるか
Go 言語を語ってみるか
Akihiko Matuura
 
DevOps 研修 初級編
DevOps 研修 初級編DevOps 研修 初級編
DevOps 研修 初級編
Hiro Fukami
 
フレームワーク使おうぜ!
フレームワーク使おうぜ!フレームワーク使おうぜ!
フレームワーク使おうぜ!
Takuya Sato
 
Bottle使ってPython学習一緒にはじめませんか?
Bottle使ってPython学習一緒にはじめませんか?Bottle使ってPython学習一緒にはじめませんか?
Bottle使ってPython学習一緒にはじめませんか?
Tatsuya Shinozuka
 

Similar to chrome拡張機能で ブラウザにp5jsを召喚! (20)

2015/09/12 第9回G-Study発表資料-XdebugでPHP ScriptのProfileしてみる
2015/09/12 第9回G-Study発表資料-XdebugでPHP ScriptのProfileしてみる2015/09/12 第9回G-Study発表資料-XdebugでPHP ScriptのProfileしてみる
2015/09/12 第9回G-Study発表資料-XdebugでPHP ScriptのProfileしてみる
 
ライブコーディング・Androidのライブラリを作ってみよう
ライブコーディング・Androidのライブラリを作ってみようライブコーディング・Androidのライブラリを作ってみよう
ライブコーディング・Androidのライブラリを作ってみよう
 
PHP with Visual Studio
PHP with Visual StudioPHP with Visual Studio
PHP with Visual Studio
 
パワーポイントを作るときに抑えておきたい色んなところ
パワーポイントを作るときに抑えておきたい色んなところパワーポイントを作るときに抑えておきたい色んなところ
パワーポイントを作るときに抑えておきたい色んなところ
 
こわくないPython
こわくないPythonこわくないPython
こわくないPython
 
パーフェクトダッシュボード
パーフェクトダッシュボードパーフェクトダッシュボード
パーフェクトダッシュボード
 
リモート環境でも社内勉強会(てっくらんち)を運営してよかった!! - Bit valley inside- vol.17-kazuyuki takahashi
リモート環境でも社内勉強会(てっくらんち)を運営してよかった!! - Bit valley  inside- vol.17-kazuyuki takahashiリモート環境でも社内勉強会(てっくらんち)を運営してよかった!! - Bit valley  inside- vol.17-kazuyuki takahashi
リモート環境でも社内勉強会(てっくらんち)を運営してよかった!! - Bit valley inside- vol.17-kazuyuki takahashi
 
1回目勉強会の説明
1回目勉強会の説明1回目勉強会の説明
1回目勉強会の説明
 
スクラム開発に取り組んでみた
スクラム開発に取り組んでみたスクラム開発に取り組んでみた
スクラム開発に取り組んでみた
 
YAPC::ASIA 2012 LT GaiaX
YAPC::ASIA 2012 LT GaiaXYAPC::ASIA 2012 LT GaiaX
YAPC::ASIA 2012 LT GaiaX
 
春を先取り!OpsWorksとChef ではじめる恋色コーデ術! #pyfes 2013.03
春を先取り!OpsWorksとChef ではじめる恋色コーデ術! #pyfes 2013.03春を先取り!OpsWorksとChef ではじめる恋色コーデ術! #pyfes 2013.03
春を先取り!OpsWorksとChef ではじめる恋色コーデ術! #pyfes 2013.03
 
Alternative chef
Alternative chefAlternative chef
Alternative chef
 
WordCampOsaka2012 WordPressあるある
WordCampOsaka2012 WordPressあるあるWordCampOsaka2012 WordPressあるある
WordCampOsaka2012 WordPressあるある
 
Rubyist started to learn Groovy - things important to leran new LL
Rubyist started to learn Groovy - things important to leran new LLRubyist started to learn Groovy - things important to leran new LL
Rubyist started to learn Groovy - things important to leran new LL
 
Soramame.Block 100行のJavaScriptで ビジュアルプログラミング言語(のフロントエンド)を作ってみた:
Soramame.Block 100行のJavaScriptで ビジュアルプログラミング言語(のフロントエンド)を作ってみた: Soramame.Block 100行のJavaScriptで ビジュアルプログラミング言語(のフロントエンド)を作ってみた:
Soramame.Block 100行のJavaScriptで ビジュアルプログラミング言語(のフロントエンド)を作ってみた:
 
Go 言語を語ってみるか
Go 言語を語ってみるかGo 言語を語ってみるか
Go 言語を語ってみるか
 
DevOps 研修 初級編
DevOps 研修 初級編DevOps 研修 初級編
DevOps 研修 初級編
 
フレームワーク使おうぜ!
フレームワーク使おうぜ!フレームワーク使おうぜ!
フレームワーク使おうぜ!
 
DevOpsって何?
DevOpsって何?DevOpsって何?
DevOpsって何?
 
Bottle使ってPython学習一緒にはじめませんか?
Bottle使ってPython学習一緒にはじめませんか?Bottle使ってPython学習一緒にはじめませんか?
Bottle使ってPython学習一緒にはじめませんか?
 

chrome拡張機能で ブラウザにp5jsを召喚!