SlideShare a Scribd company logo
MCAゲーム開発講座
JSをいじってJCを扱えるようになろう
講座の準備
> 講座資料
- ここ(https://github.com/tamamu/js_tutorial)
> 質問用Slack
- ここ(https://mca-dev.slack.com/)
第2回 まず土台から作ろう
~TOKIOになった気分で~
MCAゲーム開発講座
Canvasをレイヤーとして使う
> ちょっとだけCSSのお勉強
- index.htmlの<style>の部分がCSS
> #idでそのidを持つ要素に適用
- :の左側が属性名、右側が値
> positionは要素の位置の基準を決める属性
値にabsoluteとすると絶対位置への配置となる
(他にrelative=相対位置などがある)
Canvasをレイヤーとして使う
> z-indexは重ね合わせの順番を決める属性
- 数字が小さいほど下で、大きいほど上に重ねられる
> 今回はbgを下に、gameを上に重ねる
連想配列(ハッシュテーブル)
> 配列変数の各要素を区別出来るように名前を付けて管理する変数
> C言語で言う構造体みたいなもの
> JSではクラスもこれの一種
> 作り方
- var hoge = {a: 0, b: 1, c: 2}
> 使い方
- hoge.b :=> 1
画像の読み込み
> JSで画像を読み込むには最低でも2手順踏まなければならない
- var hoge = new Image();
- hoge.src = "画像へのパス";
> 今回はそれをまとめて関数化する(1手順で済むね!)
> コールバック関数の説明は後ほど
drawImage
> 画像をcanvasに描く関数
> さらに言えば、canvasの一部をcanvasに拡大・縮小コピーする関数
> 使い方は3種類(主に使うのは2種類)
- drawImage(image,dx, dy)
- imageを座標(dx, dy)にコピー
- drawImage(image,sx, sy, sw, sh, dx, dy, dw, dh)
- imageの座標(sx, sy)から(sx+sw, sy+sh)までの矩形を
- 座標(dx, dy)に幅dw, 高さdhでコピー
> 前者は1枚絵、後者はスプライトシートに使う
- imageをctxと勘違いしないように!!
FPSの管理
> FPS(Frame Per Second)
> 1秒間に画面を更新する回数
> 一般的なゲームだと60fpsだが、今回は30fps
> requestAnimationFrameはfpsを良い感じに保ってくれる
> それだけだと心もとないので30fpsになるよう調整する処理を入れ
てる
- if(new Date() - lastDraw > 1000/30)
- 現在時刻 - 最終更新時刻が 1/30 秒を上回ったら更新
当たり判定
> 点と矩形の当たり判定はそのまま
- 矩形の内部に点があれば当たったとみなす
> 円同士の当たり判定は数学Ⅱの復習
- 画像はここのを使わせてもらいました
次回
へ続
く

More Related Content

PPTX
JavaScriptで『漫画カメラ』的画像加工
PDF
㉗HTML5+jQueryでお絵かき
PDF
HTML5のCanvas入門 - Img画像を編集してみよう -
PDF
202003 functiontalkinnotesknowsworkshop20th
PPTX
CloudFormationと付き合い続けよう
PDF
Canvas勉強会
PPTX
Azure ml発表資料
PDF
ピタゴラスイッチでAWS自動化(JAWS-UG-LT @shimy_net )
JavaScriptで『漫画カメラ』的画像加工
㉗HTML5+jQueryでお絵かき
HTML5のCanvas入門 - Img画像を編集してみよう -
202003 functiontalkinnotesknowsworkshop20th
CloudFormationと付き合い続けよう
Canvas勉強会
Azure ml発表資料
ピタゴラスイッチでAWS自動化(JAWS-UG-LT @shimy_net )

What's hot (7)

PDF
フロント作業の効率化
PPTX
とあるデータの保存方法(エターナルサーブ)
PPTX
Glance image-cacheコマンドを使ってみた
PDF
チーム開発Tip紹介(Objective-C)
PDF
React で CSS カプセル化の可能性を考える
PDF
20130316 JAWS DAYS 美人CDP+
PDF
おふとんから眺めるSVG
フロント作業の効率化
とあるデータの保存方法(エターナルサーブ)
Glance image-cacheコマンドを使ってみた
チーム開発Tip紹介(Objective-C)
React で CSS カプセル化の可能性を考える
20130316 JAWS DAYS 美人CDP+
おふとんから眺めるSVG
Ad

Viewers also liked (15)

PDF
Cinc indrets de barcelona
PDF
Delibera estate
DOCX
Hoja rotacion
PPTX
Casa Punta Molara
ODP
Presentació Palau de Mar-Competic 3
DOC
Ut fi-aa-it-004-denial of cenvat credit
PPTX
Ромашка
PPTX
BBFC certification
PPTX
Conditionsforhumor 110827201652-phpapp01
PPTX
Ромашка
PPT
PA e fatturazione elettronica in italia
PPTX
Alteraciones del metabolismo del equilibrio acido base
PPT
Software maintenance
PDF
Projects
PDF
39-103-1-PB (1)
Cinc indrets de barcelona
Delibera estate
Hoja rotacion
Casa Punta Molara
Presentació Palau de Mar-Competic 3
Ut fi-aa-it-004-denial of cenvat credit
Ромашка
BBFC certification
Conditionsforhumor 110827201652-phpapp01
Ромашка
PA e fatturazione elettronica in italia
Alteraciones del metabolismo del equilibrio acido base
Software maintenance
Projects
39-103-1-PB (1)
Ad

Similar to JS/Canvas Tutorial2 (20)

PDF
JS/Canvas Tutorial1
KEY
Arctic.js
PDF
enchant.jsでゲーム制作をはじめてみよう 「パンダの会」バージョン
PDF
enchant.jsでゲーム制作をはじめてみよう
PDF
Cocos2dを使ったi phoneゲーム開発手法
PDF
㉒初期プロジェクトを改造!
PPT
IEとメモ帳でかんたんゲーム開発
PDF
Creators'night#14今井
PDF
苫小牧高専 ソフトウェアテクノロジー部 enchant.jsでゲーム作り 4
PDF
cocos2d-xとCocosBuilderでゲームを作ってみよう
PPTX
Osakijs #01 「enchant.jsハンズオン資料」
PPTX
Cocos2d-xハンズオン#1 in 大阪
PDF
2012 03-24-titanium plusquicktigame2d
PDF
Creators'night#12今井
PPTX
Html5+javascriptでゲーム開発
PDF
「さくらのINFRA WARS」で 利用されている技術
PDF
とことんF#よぷよ! F# + XNA ゲームプログラミング入門
PPT
Html5conference2012 yota hisamichi_世界に向けたスマートフォンゲームを支える、 greeのテクニカルアーティストについて。
PDF
2012 03-03-titanium plusquicktigame2d
PDF
Unityで横スクロールアクションゲームを作ってみる(第2回unity初心者勉強会)
JS/Canvas Tutorial1
Arctic.js
enchant.jsでゲーム制作をはじめてみよう 「パンダの会」バージョン
enchant.jsでゲーム制作をはじめてみよう
Cocos2dを使ったi phoneゲーム開発手法
㉒初期プロジェクトを改造!
IEとメモ帳でかんたんゲーム開発
Creators'night#14今井
苫小牧高専 ソフトウェアテクノロジー部 enchant.jsでゲーム作り 4
cocos2d-xとCocosBuilderでゲームを作ってみよう
Osakijs #01 「enchant.jsハンズオン資料」
Cocos2d-xハンズオン#1 in 大阪
2012 03-24-titanium plusquicktigame2d
Creators'night#12今井
Html5+javascriptでゲーム開発
「さくらのINFRA WARS」で 利用されている技術
とことんF#よぷよ! F# + XNA ゲームプログラミング入門
Html5conference2012 yota hisamichi_世界に向けたスマートフォンゲームを支える、 greeのテクニカルアーティストについて。
2012 03-03-titanium plusquicktigame2d
Unityで横スクロールアクションゲームを作ってみる(第2回unity初心者勉強会)

JS/Canvas Tutorial2