Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
CSSスプライトを動的生成して快適ソシャゲ開発
Search
cancer
August 17, 2014
Technology
270
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
CSSスプライトを動的生成して快適ソシャゲ開発
Yokohama.js(#yjs20140817)でLTしたスライドです
cancer
August 17, 2014
More Decks by cancer
See All by cancer
JSXをモダンな感じで開発してみた
cancer
0
490
AngularJSで作ったアプリをReactで置き換えてみた
cancer
0
230
JavaScriptでKeyframeAnimationを作ってみた
cancer
1
86
第2回 Sass勉強会 in 社内
cancer
1
75
Other Decks in Technology
See All in Technology
複数プロダクト組織のAIネイティブ化における戦略 / AICon2026_kude
rakus_dev
0
110
AIコード生成×サプライチェーン攻撃 — PHPが直面する“二重の信頼問題
shinyasaita
0
230
AICoEでAIネイティブ組織への進化
yukiogawa
0
200
個人開発で育てる「大規模設計の苗床」 - AI時代の1人開発から始める業務への知識接続 / The Seedbed for Large-Scale Design - From AI-Era Solo Projects to Professional Knowledge
bitkey
PRO
1
280
変更し続けられるシステムをどう保つか — AI時代のSSoTという設計原則
kawauso
0
220
Data + AI Summit 2026 イベントレポート: 「AIがビジネスで意思決定するデータ基盤」へ
nek0128
0
280
ファミコンでPHPを動かす / PHP on the Famicom
tomzoh
2
470
Multicaで30個のミニプロジェクトをAIエージェント運用して見えてきたこと
eiei114
0
120
CDKで書くECSのベストプラクティス、 改めて考え直す2026 #cdkconf2026
makies
3
850
非定型なドキュメントを効率よくリファクタする 〜えぇ!?仕様書27本の移行が1日で終わったって!?〜
subroh0508
2
570
Kaggleで成長するために意識したこと
prgckwb
2
420
Type-safe IaC for Dart
coborinai
0
160
Featured
See All Featured
Writing Fast Ruby
sferik
630
63k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
WENDY [Excerpt]
tessaabrams
11
38k
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.5k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.9k
Chasing Engaging Ingredients in Design
codingconduct
0
240
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
340
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.6k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
260
Raft: Consensus for Rubyists
vanstee
141
7.6k
Transcript
Yokohama.js (#yjs20140817) CSS Sprite を動的生成して 快適ソシャゲ開発
自己紹介 宇野 陽太( ) @cancer6 株式会社モバイルファクトリー というところで フロントエンドエンジニアやってます 最近はBackbone /
Marionette / AngularJS あたりを触ったり CSS の設計したりなど
生成の流れ Image Assets Generator(Photoshop) フォルダに配置 Compass (grunt-watch)
Image Assets Generator(Photoshop) [ ファイル] → [ 生成] にチェックを入れておく レイヤー
にファイル名をつけておく レイヤー が更新されると指定した名前で自動的に書き出し ※ Photoshop CC 以降
フォルダに配置 職人が丹精込めて一つ一つ移動
Compass (grunt-watch) CSS の生成と一緒にSprite ファイルも生成してくれる 便利!
CSS Sprite Helpers for Compass http://compass- style.org/reference/compass/helpers/sprites/
CSS Sprite Helpers( 略) のい いところ 導入が楽 Compass が用意しているfunction を使えばすぐ
Sass(SCSS) ファイルに書いていくだけ
CSS Sprite Helpers( 略) のよ くないところ 謎い マッピング情報はRuby 側で管理 function
で取得するのでキャッシュしておかないといけ ない
CSS Sprite Helpers( 略) のよ くないところ 遅い CSS の生成が遅くなる( 画像の変更が無くても+
数秒) Sass(SCSS) に変更があるたびに画像の差分をチェック (Sprite の生成が遅いわけではないです、 たぶん)
CSS Sprite Helpers( 略) のよ くないところ 画像生成後にgrunt-watch が走らない 画像の最適化とかしてると地味につらい
grunt-spritesmith https://github.com/Ensighten/grunt-spritesmith
grunt-spritesmith のいいと ころ Compass... というかSass に非依存 LESS でもStylus でも使える CSS
の生成とCSS Sprite の生成を分離できる Compass はCSS の生成に集中 CSS の生成が早くなる
grunt-spritesmith のいいと ころ Compass みたいにブラックボックスじゃない マッピング情報はSass(SCSS) の変数化される 変数にアクセスするfunction も一緒に書きだされる
grunt-spritesmith のよくな いところ フォルダが分けられない 一つのフォルダを監視して一つのSprite を生成する Compass のI/F と差異があるので、 途中からの移行がつらい
規模が大きくなってくると全部差し替えとかやってられ ない
もう少し使いやすく... 複数のフォルダを監視するgruntTask を作成 対象のフォルダ以下にあるフォルダ名でSprite ファイル を生成 grunt-spritesmith が作るマッピング情報をJSON で保存 パー
スしてSass(SCSS) のMap に変換 既存のI/F を再利用
今後やりたいこと Image Assets Generator とgrunt の連携 職人のぬくもりを機械で置き換えたい
ご清聴ありがとうございました