このページの本文へ

日曜プログラマー大歓迎 JavaScriptの部屋 第16回

JavaScriptで自分のためのクリエイティブツール作成

ドット絵作成ツールでゲームのキャラを作ろう

2017年05月17日 20時00分更新

文● 加藤兄 プログラム作成・監修●松下浩則

  • この記事をはてなブックマークに追加
  • 本文印刷

めい やっぱりゲームはさ、たんなる四角形とか文字より、人とか飛行機とか自動車とかになってたほうがうれしいよね。
おじ キャラクターを動かすゲームの場合ね。ひげの配管工とかな。でも、普通はそのキャラデータを別途用意しなくちゃいけない。
めい マリオとか勝手に使っちゃだめなんだよね。
おじ だめだよ! だから自分で作るわけだけど、そんなとき専用のツールがあると便利。
めい キャラを作るためのツールってことよね。
おじ そう、5月16日発売の週刊アスキーNo.1126では、そのための『ドット絵作成ツール』自体をジャバスクリプトで作っちゃった。

めい ドット絵って言っても、16×16ドットのものしか作れないんだよね。
おじ 実際にはそれをタテヨコ2倍して32×32ドットのものも作れるんだけど。まぁいずれにしろ、その大きさのキャラを使ったゲームを作るための専用ツールなんだ。必要なツールを自分で作れちゃうのもプログラムのだいご味だよね。
めい 別にゲームのキャラにしか使えないわけじゃないけど。作りたいキャラに合わせて、100×100にするとか、色数を増やすとか、アレンジしてもいいかもね。
おじ さて、プログラム的にはどんなだったか覚えてる?
めい 画面の上の方のキャラを作る部分は、htmlでも使うボタンをスタイルシートで四角くして並べてるんだよね。これは以前に簡易シンセサイザーでも使ってた方法だよね。
おじ そう。このボタン1個がキャラの1ドットに当たるってわけだ。で、そのボタンを押すと関数が実行されて、ボタンに色を付けたり、同時に下の小さなキャンバスに実際の大きさの画像を描いたりする。
めい 色を選ぶ「カラーパレット」の部分は、htmlのspan要素をやっぱりスタイルシートで四角くして並べているんだった。
おじ 色はどうやって表示してたっけ?
めい えーっと、背景の色を設定してるんだったかな。
おじ そうだね。で、4×4×4=64個ある色の1個1個にonclickで関数を実行するようにしていたね。どの色がクリックされたかって、どうやって判定してた?
めい ボタンも同じだけど、それぞれのボタンや色にIDを割り振っておいて、クリックされたときの関数で、そのIDを読み取るってことをやってたよね。え、なんか私ちゃんと理解できてて、すごーい。
おじ このカラーパレットも以前のプログラムで見たことあるよね。
めい うん、らくがきツールが同じ感じだった。もっと色数が多かった気がするけど。
おじ 右クリックが押されるとボタンの色をクリアするっていう機能もあったね。
めい あー、なんだっけ、これまでもよく使っていた「onclick」はマウスの左ボタンのクリックなんだよね。えっと右は「onmigiclick」みたいなので関数を呼び出せるんだけど。
おじ 惜しいような惜しくないような。正解は、「oncontextmenu」でした。
めい は? 何それ。
おじ やっただろ。週アス読み直せ。たんに、occlickの代わりに使うだけではだめで、普通、右クリックを押すとメニューが出ちゃうから、それをキャンセルしてやらなきゃいけない。
めい そうでした。
おじ それから、重要な点として、作ったキャラは、保存ができる。
めい これは、16×16ドットと32×32ドットの小さなキャンバスにドット絵を描いて、どちらかを保存するっていうやり方。キャンバスの保存もらくがきツールや写真のトリミングツールでも使っていたね。
おじ つまり、今回のドット絵作成ツールは、ほとんどこれまでにやってきたことの応用でできてるってことなんだ。プログラムは、過去に作ったものをどんどん応用または流用していって使えるのが便利なところだよね。
めい なるほど。

おじ 上の図がいくつか作ってみたキャラの例。シューティングゲームっぽいイメージかな。
めい 戦闘機とエイリアンと爆発かな。うん、それっぽい。よく見ると、32×32ドットのほうは、4ドットでキャラの1ドットになってるね。
おじ 作ったキャラは、1キャラごとに1つのpng形式のファイルとして保存される。このファイルをどのように使ったらゲームができるのかは、次回見ていこうな。
めい まぁプログラムを作ってくれるのは松下師匠だけどね。

めい さっきもちらっと言ったけど、作りたいキャラに合わせて、ドット数とか色数とか改造してみてもいいかもね。
おじ 読者のみなさんも、おもしろいツールを作ってぜひ投稿してみてください。

★アスキーの有料会員サービス「ASCII倶楽部」会員の方は、下記リンクをクリックすると直接ページが開きます。

日曜プログラマー大歓迎
JavaScriptの部屋

週刊アスキーNo.1126はBOOK☆WALKER、Kindle、kobo等電子書店で発売中!

週刊アスキー No.1126(2017年5月16日発行)[Amazon]

電子版週刊アスキーの購入はこちらから

カテゴリートップへ

この連載の記事
1
Apple 2026 MacBook Air M5チップ搭載13インチノートブック:AIとApple Intelligence、13.6インチLiquid Retinaディスプレイ、16GBユニファイドメモリ、512GB SSDストレージ、12MPセンターフレームカメラ、Touch ID - シルバー
Apple 2026 MacBook Air M5チップ搭載13インチノートブック:AIとApple Intelligence、13.6インチLiquid Retinaディスプレイ、16GBユニファイドメモリ、512GB SSDストレージ、12MPセンターフレームカメラ、Touch ID - シルバー
¥177,333
2
Apple 2026 MacBook Neo A18 Proチップ搭載13インチノートブック:AIとApple Intelligenceのために設計、Liquid Retinaディスプレイ、8GBユニファイドメモリ、256GB SSDストレージ、1080p FaceTime HDカメラ - インディゴ
Apple 2026 MacBook Neo A18 Proチップ搭載13インチノートブック:AIとApple Intelligenceのために設計、Liquid Retinaディスプレイ、8GBユニファイドメモリ、256GB SSDストレージ、1080p FaceTime HDカメラ - インディゴ
¥95,768
3
Lenovo Chromebook クロームブック IdeaPad Flex 3i Gen8 12.2インチ インテル® プロセッサー N100搭載 メモリ4GB eMMC 64GB バッテリー駆動12.0時間 重量1.25kg アビスブルー 82XH001KJP
Lenovo Chromebook クロームブック IdeaPad Flex 3i Gen8 12.2インチ インテル® プロセッサー N100搭載 メモリ4GB eMMC 64GB バッテリー駆動12.0時間 重量1.25kg アビスブルー 82XH001KJP
¥39,000
4
【整備済み品】富士通 ノートパソコン LIFEBOOK U9310 13.3型FHD(1920x1080) 超軽薄 ノートPC/第10世代 Core i5-10310U@1.7GHz/ 8GB メモリ/高速ストレージ SSD/Webカメラ/WIFI/Type-C/HDMI/win11&MS Office 2019 搭載 ビジネス 在宅勤務向け パソコン (メモリ:8GB/SSD:256GB)
【整備済み品】富士通 ノートパソコン LIFEBOOK U9310 13.3型FHD(1920x1080) 超軽薄 ノートPC/第10世代 Core i5-10310U@1.7GHz/ 8GB メモリ/高速ストレージ SSD/Webカメラ/WIFI/Type-C/HDMI/win11&MS Office 2019 搭載 ビジネス 在宅勤務向け パソコン (メモリ:8GB/SSD:256GB)
¥36,970
5
【整備済み品】中古ノートパソコン 東芝Bシリーズ B55/B65 Windows11搭載 Core i5-6200U /メモリ8GB/SSD128GB/15.6インチ/Bluetooth/WIFI/HDMI/USB3.0/DVDドライブ/MS & Office2019/テンキー搭載/仕事用ノート (Bシリーズi5-6/メモリ8GB/SSD128GB)
【整備済み品】中古ノートパソコン 東芝Bシリーズ B55/B65 Windows11搭載 Core i5-6200U /メモリ8GB/SSD128GB/15.6インチ/Bluetooth/WIFI/HDMI/USB3.0/DVDドライブ/MS & Office2019/テンキー搭載/仕事用ノート (Bシリーズi5-6/メモリ8GB/SSD128GB)
¥15,990

Amazonのアソシエイトとして、ASCII.jpは適格販売により収入を得ています。

ASCII倶楽部

注目ニュース

  • 角川アスキー総合研究所

プレミアム実機レビュー

ピックアップ
1
KIOXIA(キオクシア) 旧東芝メモリ microSD 128GB UHS-I Class10 (最大読出速度100MB/s) Nintendo Switch動作確認済 国内サポート正規品 メーカー保証5年 KLMEA128G
KIOXIA(キオクシア) 旧東芝メモリ microSD 128GB UHS-I Class10 (最大読出速度100MB/s) Nintendo Switch動作確認済 国内サポート正規品 メーカー保証5年 KLMEA128G
¥1,980
2
Anker PowerLine III Flow USB-C & USB-C ケーブル Anker絡まないケーブル 240W 結束バンド付き USB PD対応 シリコン素材採用 iPhone 17 / 16 / 15 / Galaxy iPad Pro MacBook Pro/Air 各種対応 (1.8m ミッドナイトブラック)
Anker PowerLine III Flow USB-C & USB-C ケーブル Anker絡まないケーブル 240W 結束バンド付き USB PD対応 シリコン素材採用 iPhone 17 / 16 / 15 / Galaxy iPad Pro MacBook Pro/Air 各種対応 (1.8m ミッドナイトブラック)
¥1,890
3
Anker USB Type C ケーブル PowerLine USB-C & USB-A 3.0 ケーブル iPhone 17 / 16 / 15 /Xperia/Galaxy/LG/iPad Pro/MacBook その他 Android 等 USB-C機器対応 テレワーク リモート 在宅勤務 0.9m ホワイト
Anker USB Type C ケーブル PowerLine USB-C & USB-A 3.0 ケーブル iPhone 17 / 16 / 15 /Xperia/Galaxy/LG/iPad Pro/MacBook その他 Android 等 USB-C機器対応 テレワーク リモート 在宅勤務 0.9m ホワイト
¥740
4
UGREEN USB Type Cケーブル PD対応 100W/5A 超急速充電 USB C ナイロン編み 断線防止 iphone17/16/15シリーズ/iPad/MacBook Pro/Galaxy S24/Matebook/iPad/Xperia等USB-C各種対応(1m, ブラック)
UGREEN USB Type Cケーブル PD対応 100W/5A 超急速充電 USB C ナイロン編み 断線防止 iphone17/16/15シリーズ/iPad/MacBook Pro/Galaxy S24/Matebook/iPad/Xperia等USB-C各種対応(1m, ブラック)
¥743
5
Anker iPhone充電ケーブル PowerLine II ライトニングケーブル MFi認証 超高耐久 iPhone 14 / 14 Pro Max / 14 Plus / 13 / 13 Pro / 12 / 11 / X/XS/XR / 8 Plus 各種対応 (0.9m ホワイト)
Anker iPhone充電ケーブル PowerLine II ライトニングケーブル MFi認証 超高耐久 iPhone 14 / 14 Pro Max / 14 Plus / 13 / 13 Pro / 12 / 11 / X/XS/XR / 8 Plus 各種対応 (0.9m ホワイト)
¥990
6
KIOXIA(キオクシア)【日本製】USBフラッシュメモリ 32GB USB2.0 国内サポート正規品 KLU202A032GW
KIOXIA(キオクシア)【日本製】USBフラッシュメモリ 32GB USB2.0 国内サポート正規品 KLU202A032GW
¥698
7
KIOXIA(キオクシア)【日本製】SDカード 64GB SDXC UHS-I Class10 読出速度100MB/s 国内正規品 メーカー保証5年 KLNEA064G
KIOXIA(キオクシア)【日本製】SDカード 64GB SDXC UHS-I Class10 読出速度100MB/s 国内正規品 メーカー保証5年 KLNEA064G
¥1,180
8
エルパ(ELPA) 扉付タップラン 電源タップ 延長コード 125V 3m 3個口 ホワイト WBT-N3030B(W)
エルパ(ELPA) 扉付タップラン 電源タップ 延長コード 125V 3m 3個口 ホワイト WBT-N3030B(W)
¥652
9
キヤノン Canon 純正 インクカートリッジ BCI-381(BK/C/M/Y)+380 5色マルチパック BCI-381+380/5MP 長さ:5.3cm 幅:13.9cm 高さ:10.75cm
キヤノン Canon 純正 インクカートリッジ BCI-381(BK/C/M/Y)+380 5色マルチパック BCI-381+380/5MP 長さ:5.3cm 幅:13.9cm 高さ:10.75cm
¥4,918
10
エレコム 電源タップ 6個口 3m 雷ガード 個別スイッチ ほこりシャッター付 耐熱 PSE技術基準適合 ホワイト T-K6A-2630WH
エレコム 電源タップ 6個口 3m 雷ガード 個別スイッチ ほこりシャッター付 耐熱 PSE技術基準適合 ホワイト T-K6A-2630WH
¥1,899

Amazonのアソシエイトとして、ASCII.jpは適格販売により収入を得ています。

デジタル用語辞典

ASCII.jpメール デジタルMac/iPodマガジン