SlideShare ist ein Scribd-Unternehmen logo
1 von 22
Downloaden Sie, um offline zu lesen
タイルの話 
東京電機大学理工学部情報科学科OB (99SJ097) 
Taro Matsuzawa @smellman 
dendai sie; Talk Live! vol.5
はじめに
プレゼンのファイルが 
前日に消滅 
なのであまりやる気ないです
自己紹介(1) 
• Georepublic シニアエンジニア(本業) 
• Coaido 技術顧問 (副業) 
• 日本UNIXユーザ会理事 
• OSGeo財団日本支部運営委員 / OSMFJ 
• C MagazineとかSoftware Designとかオライリー・ 
ジャパンのFirefox Hacksシリーズとか
自己紹介(2) 
• 電大に1999年入学、2014年卒業 
• 留年してる 
• btm, smellman, 組長などと呼ばれる 
• もじら組というところで組長やってた(過去形) 
• ブレイクコアガチ勢
学生時代 
• 理工学部 E.S.S (English Speaking Society) 部長 
• 卒業後数年で廃部 
• 理工学部 コンピュータクラブ所属 
• UNIXやってるからという理由で二年生の時に入部 
• バイトでデスマーチ
タイルとは
地図のタイル 
• Google Mapsとか 
OpenStreetMapとかいろいろな 
ところで使われてる技術 
• 地図をタイルの用に並べてス 
ムーズなスクロールやズーム 
を可能にするというもの 
http://a.tile.openstreetmap.org/0/0/0.png
アクセス 
• {z}/{x}/{y}.pngみたいな感じでアクセスするのが最近の流行り 
z:ズームレベル 
x: x座標 
y: y座標
座標系 
• Web地図では一般的にWeb メル 
カトルというのが使われる 
• 左上の緯度経度がだいたい85, 
-180で右下の緯度経度がだい 
たい-85, 180となる 
85, -180 
85, 180 
-85, 180 
-85, -180
詳しいことは 
ググりましょう
本題
ドラ○エ3の地図を 
タイルにしてみた
非現実 
• ゲームの地図の座標系は現実の地図とは関係ない 
• ドットだもん 
• Leaflet.jsというタイルを表示するライブラリには 
ゲーム向けの設定が用意されています 
• L.CRS.Simple
ポイント 
• 普通のWeb地図はzoom=0で256x256の画像を利用 
• L.CRS.Simpleでは zoom=0 では 1x1 の画像 
• Rubyでいうところの 2 ** zoom 
• JavaScriptなら Math.pow(2, zoom) 
• でもタイルは256x256という単位なのでうまく切り 
出す必要がある
作成(1) 
• 画像をググって探す 
• 画像の大きさからズームレベルを算出 
• たまたま4096x4096というサイズだったので、 
Math.log(4096) / Math.log(2) -> zoom 12がベー 
スとなる 
• なお、一枚のタイルで収まるのは zoom 8となる
作成(2) 
• 画像をリサイズ 
• zoom = 10 なら 2 ** (10 - 12) = 0.25 倍なので 
1024 x 1024 
• convert -resize 1024x1024 base.png resize.png 
• 画像を256x256で切り出す 
• convert -crop 256x256 +repage resize.png crop_ 
%d.png
作成(3) 
• タイルを並び替える 
• convert -crop ではタダの連番になるのでそれを 
上手く並べる 
• 上記までの流れは以下を参考にすれば良い 
• http://omarriott.com/aux/leaflet-js-non-geographical- 
imagery/
デモ
補足 
• 仕事ではこんな小さなデータは扱わない 
• 巨大なSVGが元画像だったりする 
• 画像に変換すると(Cairoが)死ぬ 
• phantomjsぶん回してSVGから画像切り出しとかむちゃ 
くちゃなことを仕事でやってる(昨日見つけた技) 
• 楽しい!!!!!!!
The End.
おまけ 
• 作成プログラムのレポジトリ作りました 
• https://github.com/smellman/make_game_tile_example 
• 適当に画像を探して試してみてください

Weitere ähnliche Inhalte

Mehr von Taro Matsuzawa

地球地図を利用した地図タイルの作成 - FOSS4G TOKYO 2014 全体セッション2
地球地図を利用した地図タイルの作成 - FOSS4G TOKYO 2014 全体セッション2地球地図を利用した地図タイルの作成 - FOSS4G TOKYO 2014 全体セッション2
地球地図を利用した地図タイルの作成 - FOSS4G TOKYO 2014 全体セッション2Taro Matsuzawa
 
Couchbase hackaton pomo
Couchbase hackaton pomoCouchbase hackaton pomo
Couchbase hackaton pomoTaro Matsuzawa
 
11月のささみ: pgRoutingって何?
11月のささみ: pgRoutingって何?11月のささみ: pgRoutingって何?
11月のささみ: pgRoutingって何?Taro Matsuzawa
 
OSMを使ったスマホ&Web開発入門
OSMを使ったスマホ&Web開発入門OSMを使ったスマホ&Web開発入門
OSMを使ったスマホ&Web開発入門Taro Matsuzawa
 
AFNetworking使ってみた
AFNetworking使ってみたAFNetworking使ってみた
AFNetworking使ってみたTaro Matsuzawa
 
スマホ開発者も使えるWireshark
スマホ開発者も使えるWiresharkスマホ開発者も使えるWireshark
スマホ開発者も使えるWiresharkTaro Matsuzawa
 
来年のLLeventのお知らせ @ OSC2011 Tokyo/Fall
来年のLLeventのお知らせ @ OSC2011 Tokyo/Fall来年のLLeventのお知らせ @ OSC2011 Tokyo/Fall
来年のLLeventのお知らせ @ OSC2011 Tokyo/FallTaro Matsuzawa
 
スマートフォン勉強会@関東 #11 LT 5分で語る SQLite暗号化
スマートフォン勉強会@関東 #11 LT 5分で語る SQLite暗号化スマートフォン勉強会@関東 #11 LT 5分で語る SQLite暗号化
スマートフォン勉強会@関東 #11 LT 5分で語る SQLite暗号化Taro Matsuzawa
 
スマートフォン勉強会@関東 #11 どう考えてもdisconなものをiPhoneに移植してみた
スマートフォン勉強会@関東 #11 どう考えてもdisconなものをiPhoneに移植してみたスマートフォン勉強会@関東 #11 どう考えてもdisconなものをiPhoneに移植してみた
スマートフォン勉強会@関東 #11 どう考えてもdisconなものをiPhoneに移植してみたTaro Matsuzawa
 
ベトナムにRoRを教えに行ったら大変なお土産をもらったでござる
ベトナムにRoRを教えに行ったら大変なお土産をもらったでござるベトナムにRoRを教えに行ったら大変なお土産をもらったでござる
ベトナムにRoRを教えに行ったら大変なお土産をもらったでござるTaro Matsuzawa
 
デバッガを使おう@ブラウザ勉強会#1
デバッガを使おう@ブラウザ勉強会#1デバッガを使おう@ブラウザ勉強会#1
デバッガを使おう@ブラウザ勉強会#1Taro Matsuzawa
 
(元)コミュニティメンバーから見たMozilla / Firefoxの歴史と展望@Browser Workshop
(元)コミュニティメンバーから見たMozilla / Firefoxの歴史と展望@Browser Workshop(元)コミュニティメンバーから見たMozilla / Firefoxの歴史と展望@Browser Workshop
(元)コミュニティメンバーから見たMozilla / Firefoxの歴史と展望@Browser WorkshopTaro Matsuzawa
 
Mozilla コアハッカー育成計画(PDF)
Mozilla コアハッカー育成計画(PDF)Mozilla コアハッカー育成計画(PDF)
Mozilla コアハッカー育成計画(PDF)Taro Matsuzawa
 
Mozilla コアハッカー育成計画
Mozilla コアハッカー育成計画Mozilla コアハッカー育成計画
Mozilla コアハッカー育成計画Taro Matsuzawa
 

Mehr von Taro Matsuzawa (15)

地球地図を利用した地図タイルの作成 - FOSS4G TOKYO 2014 全体セッション2
地球地図を利用した地図タイルの作成 - FOSS4G TOKYO 2014 全体セッション2地球地図を利用した地図タイルの作成 - FOSS4G TOKYO 2014 全体セッション2
地球地図を利用した地図タイルの作成 - FOSS4G TOKYO 2014 全体セッション2
 
Couchbase hackaton pomo
Couchbase hackaton pomoCouchbase hackaton pomo
Couchbase hackaton pomo
 
11月のささみ: pgRoutingって何?
11月のささみ: pgRoutingって何?11月のささみ: pgRoutingって何?
11月のささみ: pgRoutingって何?
 
OSMを使ったスマホ&Web開発入門
OSMを使ったスマホ&Web開発入門OSMを使ったスマホ&Web開発入門
OSMを使ったスマホ&Web開発入門
 
AFNetworking使ってみた
AFNetworking使ってみたAFNetworking使ってみた
AFNetworking使ってみた
 
スマホ開発者も使えるWireshark
スマホ開発者も使えるWiresharkスマホ開発者も使えるWireshark
スマホ開発者も使えるWireshark
 
来年のLLeventのお知らせ @ OSC2011 Tokyo/Fall
来年のLLeventのお知らせ @ OSC2011 Tokyo/Fall来年のLLeventのお知らせ @ OSC2011 Tokyo/Fall
来年のLLeventのお知らせ @ OSC2011 Tokyo/Fall
 
スマートフォン勉強会@関東 #11 LT 5分で語る SQLite暗号化
スマートフォン勉強会@関東 #11 LT 5分で語る SQLite暗号化スマートフォン勉強会@関東 #11 LT 5分で語る SQLite暗号化
スマートフォン勉強会@関東 #11 LT 5分で語る SQLite暗号化
 
スマートフォン勉強会@関東 #11 どう考えてもdisconなものをiPhoneに移植してみた
スマートフォン勉強会@関東 #11 どう考えてもdisconなものをiPhoneに移植してみたスマートフォン勉強会@関東 #11 どう考えてもdisconなものをiPhoneに移植してみた
スマートフォン勉強会@関東 #11 どう考えてもdisconなものをiPhoneに移植してみた
 
ベトナムにRoRを教えに行ったら大変なお土産をもらったでござる
ベトナムにRoRを教えに行ったら大変なお土産をもらったでござるベトナムにRoRを教えに行ったら大変なお土産をもらったでござる
ベトナムにRoRを教えに行ったら大変なお土産をもらったでござる
 
デバッガを使おう@ブラウザ勉強会#1
デバッガを使おう@ブラウザ勉強会#1デバッガを使おう@ブラウザ勉強会#1
デバッガを使おう@ブラウザ勉強会#1
 
(元)コミュニティメンバーから見たMozilla / Firefoxの歴史と展望@Browser Workshop
(元)コミュニティメンバーから見たMozilla / Firefoxの歴史と展望@Browser Workshop(元)コミュニティメンバーから見たMozilla / Firefoxの歴史と展望@Browser Workshop
(元)コミュニティメンバーから見たMozilla / Firefoxの歴史と展望@Browser Workshop
 
デコメを送る
デコメを送るデコメを送る
デコメを送る
 
Mozilla コアハッカー育成計画(PDF)
Mozilla コアハッカー育成計画(PDF)Mozilla コアハッカー育成計画(PDF)
Mozilla コアハッカー育成計画(PDF)
 
Mozilla コアハッカー育成計画
Mozilla コアハッカー育成計画Mozilla コアハッカー育成計画
Mozilla コアハッカー育成計画
 

Kürzlich hochgeladen

[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 

Kürzlich hochgeladen (10)

[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 

タイルの話