SlideShare a Scribd company logo
ゲーム開発で学ぶSwift
入門
株式会社BizReach
プロダクトマーケティング本部
山下大輔
自己紹介
・山下大輔(やました だいすけ)
・2015年1月よりビズリーチのiOSエンジニア
・@daisuke0131
・http://www.facebook.com/daisuke0131
・https://github.com/daisuke0131
https://itunes.apple.com/jp/app/haikurasu-ren-cainokyaria/id972002786?mt=8
おしながき
・SpriteKitについて・・・30min
・ハンズオン・・・60min
SpriteKit
・iOS7からサポートされた2Dゲーム用標準framework
->外部のライブラリを入れる必要がない、すぐに使える。
・普通のview(UIView)と組み合わせて使える
->普通のアプリを作っている時にも、目を引くエフェクトなどのちょっとしたところに
も使えるかも
SpriteKit
・以下の4つの構成要素からなる
ノード(SKNode)・・・表示される個々のパーツ
アクション(SKAction)・・動きを表すもの
シーン(SKScene)・・・ゲームの画面(ノードのサブクラス)
ビュー(SKView)・・・アプリ上でSpriteKitを表示するView(UIViewのサブクラス)
シーン
ノード
ノードA
ノードB
ノードの階層関係
シーンをビューに
紐付けることで描画
SpriteKit
・座標系
x
y x
y
(x,y)
(x,y)
SpriteKit 普通のアプリ(UIKit)
・位置の指定方法
(0,0)
(0,0)
SKNode
・ゲーム要素を作るSKNodeのサブクラス
->何かしらを表示する時に元の素材毎に使うクラスを選ぶイメージ。
SKSpriteNode・・・画像を描画。一番便利なやつ
SKEmitterNode・・・パーティクルを表示。面白いやつ。
SKShapeNode・・・図形を描画。
SKVideoNode・・・動画を描画
SKLabelNode・・・文字を描画
SKCropNode・・・子ノードにマスクを適用して切り出す
SKEffectNode・・・子ノードにCore Imageフィルタを適用
SKAction
・SKNodeの動きを作るやつ
->ノードの移動、回転、拡大縮小などの変化を作ることができる
・使い方は、作ったActionをnodeの持つrunAction
 メソッドに渡すだけ
・連続的なActionも渡せるよ!
let action = SKAction.moveByX(…)
node.runAction(action)
let action1 = SKAction.moveByX(…)
let action2 = SKAction.moveByX(…)
let sequenceAction = SKAction.sequence([action1,action2])
node.runAction(sequenceAction)
SKScene
・ゲーム画面。
 ->スタート画面、ゲーム画面、終了画面の単位でSKSceneを作るイメージ
SKView
・SpriteKitを表示するView。
 ->UIViewのサブクラスであることがポイント。普通のアプリの中で普通にView
  として扱える。
ハンズオン
クソゲーハンズオン
ぶどう汁ブシャーッ
要件
・ボール、バー、グレープの要素からなる
・グレープは5回ぶつかると「ブシャーッ」
・グレープ全部「ブシャーッ」するとクリア
・ボールが下に落ちちゃうとゲームオーバー
・ボールは等速運動をする
・ボールはバー、グレープ、画面の端とは完全弾性衝突
物理エンジンの使い方
・SKNodeに定義されているphysicsBodyを設定する
->衝突、重力加速度などの物理効果が有効化
衝突の検出
・検出したいノード同士のphysicsBodyの 
  contactTestBitMaskに0以外の値をセットする。
 ->didBeginContactが呼ばれるようになる
※contactTestBitMaskとcategoryBitMaskの論理積が0以外の
値になると衝突判定
完全弾性衝突ってなんぞや??
・運動エネルギーが保存される衝突
v
v
衝突前 衝突後
・physicsBodyのrestitutionに1.0を設定すればいい
node.physicsBody?.restitution = 1.0
例えば
Step1 プロジェクトの作り方
https://github.com/daisuke0131/GrapePinBall/blob/
master/resources/resources.zip?raw=true
Step2 リソースの登録
https://github.com/daisuke0131/GrapePinBall/blob/
master/resources/resources.zip?raw=true
drag&drop
Step2 リソースの登録
https://github.com/daisuke0131/GrapePinBall/blob/
master/resources/resources.zip?raw=true
Step3 GemaSceneの登録
let scene = GameScene()
let view = self.view as! SKView
view.showsFPS = true
view.showsNodeCount = true
scene.size = view.frame.size
view.presentScene(scene)
・GameViewControllerのviewDidLoadに
Step4 ノードの表示と物理効果
let ball = SKSpriteNode(imageNamed: “ball”)
ball.physicsBody = SKPhysicsBody(texture:
SKTexture(imageNamed:"ball"), size: ball.size)
ball.position = CGPoint(x:100 ,y:100)
self.addChild(ball)
・GameSceneのdidMoveToViewに
ボール、バー、ボードを表示するように設定していきます。
Step5 Swiftのちょっとした文法
class Grape:SKSpriteNode {
var hitCount:Int = 0
}
・クラスの継承
・データ構造
let grapesPosition:[(x:CGFloat,y:CGFloat)] = [(60.0,500.0),
(160.0,500.0),(260.0,500.0),(110.0,400.0),(220.0,400.0)]
配列、タプル
・繰り返し
//グレープの配置
for pos in grapesPosition{
makeGrape(pos)
}
Step6 physicsBodyのプロパティ設定
restitution・・・反発係数(ぶつかった時の跳ね返り率)
linearDamping・・・移動時の減衰率(空気抵抗的なやつ)
friction・・・摩擦係数
affectedByGravity・・・重力の影響を受けるかどうか
dynamic・・・動くようにするかどうか。(falseだと衝突も無視)
applyImpulse()・・・衝撃を与えることができる。
Step7 タッチ系イベントハンドリング
override func touchesMoved(touches: Set<NSObject>, withEvent event: UIEvent) {
if let touch: AnyObject = touches.first {
let location = touch.locationInNode(self)
let action = SKAction.moveTo(CGPoint(x: location.x, y: 100), duration: 0.2)
self.board.runAction(action)
}
}
override func touchesBegan(touches: Set<NSObject>, withEvent event: UIEvent) {
if let touch: AnyObject = touches.first {
if !isStarted{
startBall()
isStarted = true
}
}
}
Step8 衝突判定
self.physicsWorld.contactDelegate = self
extension GameScene:SKPhysicsContactDelegate{
func didBeginContact(contact: SKPhysicsContact) {
}
}
delegateの設定
以下のメソッドを追加することで衝突時に呼ばれる
※contactTestBitMaskとcategoryBitMaskの論理積が0以外の
値になると衝突判定
Step9 パーティクル
Step9 パーティクル
let particle = SKEmitterNode(fileNamed: "MyParticle.sks")
self.addChild(particle)
let removeAction = SKAction.removeFromParent()
let durationAction = SKAction.waitForDuration(1)
let sequenceAction = SKAction.sequence([durationAction,removeAction])
particle.runAction(sequenceAction)
particle.position = CGPoint(x: g.position.x, y: g.position.y)
particle.alpha = 1
おしまい

More Related Content

What's hot

Zombi・Hazard 360度ゾンビシューティングゲーム紹介
Zombi・Hazard 360度ゾンビシューティングゲーム紹介Zombi・Hazard 360度ゾンビシューティングゲーム紹介
Zombi・Hazard 360度ゾンビシューティングゲーム紹介
Yuuki Ogino
 
GGJ16 Seminer
GGJ16 SeminerGGJ16 Seminer
GGJ16 Seminer
syamane
 
Unity+Vuforia でARアプリを作ってみよう
Unity+Vuforia でARアプリを作ってみようUnity+Vuforia でARアプリを作ってみよう
Unity+Vuforia でARアプリを作ってみよう
hima_zinn
 
【 #Unity会 】このUnityがすごい2015年版
【 #Unity会 】このUnityがすごい2015年版【 #Unity会 】このUnityがすごい2015年版
【 #Unity会 】このUnityがすごい2015年版
ui nyan
 
歩ける全天球動画の実験
歩ける全天球動画の実験歩ける全天球動画の実験
歩ける全天球動画の実験
Haruhisa Hasegawa
 
Azure 三つ巴チームが送るIgnite 振り返り!
Azure 三つ巴チームが送るIgnite 振り返り!Azure 三つ巴チームが送るIgnite 振り返り!
Azure 三つ巴チームが送るIgnite 振り返り!
Yasuaki Matsuda
 
スマホでVRコンテンツを作る方法
スマホでVRコンテンツを作る方法スマホでVRコンテンツを作る方法
スマホでVRコンテンツを作る方法
hima_zinn
 
Unity+Vuforiaで始めるARアプリ開発
Unity+Vuforiaで始めるARアプリ開発Unity+Vuforiaで始めるARアプリ開発
Unity+Vuforiaで始めるARアプリ開発Takashi Suzuki
 
xR転職合同相談会 2019/05/17
xR転職合同相談会 2019/05/17xR転職合同相談会 2019/05/17
xR転職合同相談会 2019/05/17
Haruhisa Hasegawa
 
Unity入門講座その1
Unity入門講座その1Unity入門講座その1
Unity入門講座その1
spi8823
 
Unity × graphics × effects
Unity × graphics × effectsUnity × graphics × effects
Unity × graphics × effects
Hironori Sugino
 
ARコンテンツ作成勉強会:UnityとVuforiaではじめるAR [主要部分]
ARコンテンツ作成勉強会:UnityとVuforiaではじめるAR [主要部分]ARコンテンツ作成勉強会:UnityとVuforiaではじめるAR [主要部分]
ARコンテンツ作成勉強会:UnityとVuforiaではじめるAR [主要部分]
Takashi Yoshinaga
 
Oculus rift入門
Oculus rift入門Oculus rift入門
Oculus rift入門
hima_zinn
 
講義用Ppt windows女子部
講義用Ppt windows女子部 講義用Ppt windows女子部
講義用Ppt windows女子部
Rikako Takahashi
 
はじめてのUnity教室 講義用ppt
はじめてのUnity教室 講義用pptはじめてのUnity教室 講義用ppt
はじめてのUnity教室 講義用ppt
Taro Takano
 
ゲームエンジンの知能化のためのソフトウェアデザイン
ゲームエンジンの知能化のためのソフトウェアデザインゲームエンジンの知能化のためのソフトウェアデザイン
ゲームエンジンの知能化のためのソフトウェアデザイン
Youichiro Miyake
 
GGJ2016ゲームサブミッション
GGJ2016ゲームサブミッションGGJ2016ゲームサブミッション
GGJ2016ゲームサブミッション
IGDA JAPAN
 
大規模フロントエンドのクリーンアーキテクチャ化 ~ 年間売上1,000億円企業モノタロウの取組み ~
大規模フロントエンドのクリーンアーキテクチャ化 ~ 年間売上1,000億円企業モノタロウの取組み ~大規模フロントエンドのクリーンアーキテクチャ化 ~ 年間売上1,000億円企業モノタロウの取組み ~
大規模フロントエンドのクリーンアーキテクチャ化 ~ 年間売上1,000億円企業モノタロウの取組み ~
株式会社MonotaRO Tech Team
 
Jaws ug yokoyama-16
Jaws ug yokoyama-16Jaws ug yokoyama-16
Jaws ug yokoyama-16
Akifumi Niida
 
Unity2DとNewGUIについて
Unity2DとNewGUIについてUnity2DとNewGUIについて
Unity2DとNewGUIについてKeigo Ando
 

What's hot (20)

Zombi・Hazard 360度ゾンビシューティングゲーム紹介
Zombi・Hazard 360度ゾンビシューティングゲーム紹介Zombi・Hazard 360度ゾンビシューティングゲーム紹介
Zombi・Hazard 360度ゾンビシューティングゲーム紹介
 
GGJ16 Seminer
GGJ16 SeminerGGJ16 Seminer
GGJ16 Seminer
 
Unity+Vuforia でARアプリを作ってみよう
Unity+Vuforia でARアプリを作ってみようUnity+Vuforia でARアプリを作ってみよう
Unity+Vuforia でARアプリを作ってみよう
 
【 #Unity会 】このUnityがすごい2015年版
【 #Unity会 】このUnityがすごい2015年版【 #Unity会 】このUnityがすごい2015年版
【 #Unity会 】このUnityがすごい2015年版
 
歩ける全天球動画の実験
歩ける全天球動画の実験歩ける全天球動画の実験
歩ける全天球動画の実験
 
Azure 三つ巴チームが送るIgnite 振り返り!
Azure 三つ巴チームが送るIgnite 振り返り!Azure 三つ巴チームが送るIgnite 振り返り!
Azure 三つ巴チームが送るIgnite 振り返り!
 
スマホでVRコンテンツを作る方法
スマホでVRコンテンツを作る方法スマホでVRコンテンツを作る方法
スマホでVRコンテンツを作る方法
 
Unity+Vuforiaで始めるARアプリ開発
Unity+Vuforiaで始めるARアプリ開発Unity+Vuforiaで始めるARアプリ開発
Unity+Vuforiaで始めるARアプリ開発
 
xR転職合同相談会 2019/05/17
xR転職合同相談会 2019/05/17xR転職合同相談会 2019/05/17
xR転職合同相談会 2019/05/17
 
Unity入門講座その1
Unity入門講座その1Unity入門講座その1
Unity入門講座その1
 
Unity × graphics × effects
Unity × graphics × effectsUnity × graphics × effects
Unity × graphics × effects
 
ARコンテンツ作成勉強会:UnityとVuforiaではじめるAR [主要部分]
ARコンテンツ作成勉強会:UnityとVuforiaではじめるAR [主要部分]ARコンテンツ作成勉強会:UnityとVuforiaではじめるAR [主要部分]
ARコンテンツ作成勉強会:UnityとVuforiaではじめるAR [主要部分]
 
Oculus rift入門
Oculus rift入門Oculus rift入門
Oculus rift入門
 
講義用Ppt windows女子部
講義用Ppt windows女子部 講義用Ppt windows女子部
講義用Ppt windows女子部
 
はじめてのUnity教室 講義用ppt
はじめてのUnity教室 講義用pptはじめてのUnity教室 講義用ppt
はじめてのUnity教室 講義用ppt
 
ゲームエンジンの知能化のためのソフトウェアデザイン
ゲームエンジンの知能化のためのソフトウェアデザインゲームエンジンの知能化のためのソフトウェアデザイン
ゲームエンジンの知能化のためのソフトウェアデザイン
 
GGJ2016ゲームサブミッション
GGJ2016ゲームサブミッションGGJ2016ゲームサブミッション
GGJ2016ゲームサブミッション
 
大規模フロントエンドのクリーンアーキテクチャ化 ~ 年間売上1,000億円企業モノタロウの取組み ~
大規模フロントエンドのクリーンアーキテクチャ化 ~ 年間売上1,000億円企業モノタロウの取組み ~大規模フロントエンドのクリーンアーキテクチャ化 ~ 年間売上1,000億円企業モノタロウの取組み ~
大規模フロントエンドのクリーンアーキテクチャ化 ~ 年間売上1,000億円企業モノタロウの取組み ~
 
Jaws ug yokoyama-16
Jaws ug yokoyama-16Jaws ug yokoyama-16
Jaws ug yokoyama-16
 
Unity2DとNewGUIについて
Unity2DとNewGUIについてUnity2DとNewGUIについて
Unity2DとNewGUIについて
 

Similar to Introduction of Swift from Game Development

OpenCV on mobile
OpenCV on mobileOpenCV on mobile
OpenCV on mobile
Daisuke Yamashita
 
最速でリリースするためのAndroidアプリデザイン
最速でリリースするためのAndroidアプリデザイン最速でリリースするためのAndroidアプリデザイン
最速でリリースするためのAndroidアプリデザイン
Naoki Aoyama
 
Introduction of Swift from Machine Learning
Introduction of Swift from Machine LearningIntroduction of Swift from Machine Learning
Introduction of Swift from Machine LearningDaisuke Yamashita
 
ANSIBLE_KEEP_REMOTE_FILESをTrueにしてみよう!
ANSIBLE_KEEP_REMOTE_FILESをTrueにしてみよう!ANSIBLE_KEEP_REMOTE_FILESをTrueにしてみよう!
ANSIBLE_KEEP_REMOTE_FILESをTrueにしてみよう!
Hideki Saito
 
おばかアプリ勉強会資料 シグマコンサルティング
おばかアプリ勉強会資料 シグマコンサルティングおばかアプリ勉強会資料 シグマコンサルティング
おばかアプリ勉強会資料 シグマコンサルティングatmarkit
 
はじめてのAzure Sphere
はじめてのAzure SphereはじめてのAzure Sphere
はじめてのAzure Sphere
Tomokazu Kizawa
 
Hint of“Passcode Lock”Screen and Logic (with LocalAuthentication).
Hint of“Passcode Lock”Screen and Logic (with LocalAuthentication).Hint of“Passcode Lock”Screen and Logic (with LocalAuthentication).
Hint of“Passcode Lock”Screen and Logic (with LocalAuthentication).
Fumiya Sakai
 
ソースが書けなくてもAndroidアプリをクリック(GUI)開発したい
ソースが書けなくてもAndroidアプリをクリック(GUI)開発したいソースが書けなくてもAndroidアプリをクリック(GUI)開発したい
ソースが書けなくてもAndroidアプリをクリック(GUI)開発したい
Yukio Saito
 
20131005 cocoa関西
20131005 cocoa関西20131005 cocoa関西
20131005 cocoa関西
Yosuke Uno
 
Bot Builder V4 SDK + QnA Maker / LUIS
Bot Builder V4 SDK  + QnA Maker / LUISBot Builder V4 SDK  + QnA Maker / LUIS
Bot Builder V4 SDK + QnA Maker / LUIS
Yoshitaka Seo
 
Handoffは動かない〜これから役立たないバッドノウハウ集
Handoffは動かない〜これから役立たないバッドノウハウ集Handoffは動かない〜これから役立たないバッドノウハウ集
Handoffは動かない〜これから役立たないバッドノウハウ集
Yuichi Yoshida
 
動画プレイヤーアプリの開発を通じて学んだ機能を実現するための要点解説
動画プレイヤーアプリの開発を通じて学んだ機能を実現するための要点解説動画プレイヤーアプリの開発を通じて学んだ機能を実現するための要点解説
動画プレイヤーアプリの開発を通じて学んだ機能を実現するための要点解説
Fumiya Sakai
 
lt37
lt37lt37
lt37
GIG inc.
 
iOSアプリUIとの触れ合いと歩む僕なりのSwiftの楽しみ方
iOSアプリUIとの触れ合いと歩む僕なりのSwiftの楽しみ方iOSアプリUIとの触れ合いと歩む僕なりのSwiftの楽しみ方
iOSアプリUIとの触れ合いと歩む僕なりのSwiftの楽しみ方
Fumiya Sakai
 
Hubsの日本語化とECサイト利用
Hubsの日本語化とECサイト利用Hubsの日本語化とECサイト利用
Hubsの日本語化とECサイト利用
Yukihiko Aoyagi
 
Bot Framework 最新情報 2018
Bot Framework 最新情報 2018Bot Framework 最新情報 2018
Bot Framework 最新情報 2018
Yoshitaka Seo
 
SORACOM Conference "Discovery" 2018 | E1. Wioで始めるIoTプロトタイプ開発 〜実践事例のご紹介〜
SORACOM Conference "Discovery" 2018 | E1. Wioで始めるIoTプロトタイプ開発 〜実践事例のご紹介〜SORACOM Conference "Discovery" 2018 | E1. Wioで始めるIoTプロトタイプ開発 〜実践事例のご紹介〜
SORACOM Conference "Discovery" 2018 | E1. Wioで始めるIoTプロトタイプ開発 〜実践事例のご紹介〜
SORACOM,INC
 
IoT キットハンズオンのソースコード解説します クラウド編 Part1 Section2
IoT キットハンズオンのソースコード解説します クラウド編 Part1 Section2IoT キットハンズオンのソースコード解説します クラウド編 Part1 Section2
IoT キットハンズオンのソースコード解説します クラウド編 Part1 Section2
Yoshitaka Seo
 
iOSアプリ開発で意識すると役立ちそうな「つなぎ目」の部分について
iOSアプリ開発で意識すると役立ちそうな「つなぎ目」の部分についてiOSアプリ開発で意識すると役立ちそうな「つなぎ目」の部分について
iOSアプリ開発で意識すると役立ちそうな「つなぎ目」の部分について
Fumiya Sakai
 
「会社で寝よう!」制作レポート(3Dカジュアルゲームの開発手法)
「会社で寝よう!」制作レポート(3Dカジュアルゲームの開発手法)「会社で寝よう!」制作レポート(3Dカジュアルゲームの開発手法)
「会社で寝よう!」制作レポート(3Dカジュアルゲームの開発手法)
ミルク株式会社
 

Similar to Introduction of Swift from Game Development (20)

OpenCV on mobile
OpenCV on mobileOpenCV on mobile
OpenCV on mobile
 
最速でリリースするためのAndroidアプリデザイン
最速でリリースするためのAndroidアプリデザイン最速でリリースするためのAndroidアプリデザイン
最速でリリースするためのAndroidアプリデザイン
 
Introduction of Swift from Machine Learning
Introduction of Swift from Machine LearningIntroduction of Swift from Machine Learning
Introduction of Swift from Machine Learning
 
ANSIBLE_KEEP_REMOTE_FILESをTrueにしてみよう!
ANSIBLE_KEEP_REMOTE_FILESをTrueにしてみよう!ANSIBLE_KEEP_REMOTE_FILESをTrueにしてみよう!
ANSIBLE_KEEP_REMOTE_FILESをTrueにしてみよう!
 
おばかアプリ勉強会資料 シグマコンサルティング
おばかアプリ勉強会資料 シグマコンサルティングおばかアプリ勉強会資料 シグマコンサルティング
おばかアプリ勉強会資料 シグマコンサルティング
 
はじめてのAzure Sphere
はじめてのAzure SphereはじめてのAzure Sphere
はじめてのAzure Sphere
 
Hint of“Passcode Lock”Screen and Logic (with LocalAuthentication).
Hint of“Passcode Lock”Screen and Logic (with LocalAuthentication).Hint of“Passcode Lock”Screen and Logic (with LocalAuthentication).
Hint of“Passcode Lock”Screen and Logic (with LocalAuthentication).
 
ソースが書けなくてもAndroidアプリをクリック(GUI)開発したい
ソースが書けなくてもAndroidアプリをクリック(GUI)開発したいソースが書けなくてもAndroidアプリをクリック(GUI)開発したい
ソースが書けなくてもAndroidアプリをクリック(GUI)開発したい
 
20131005 cocoa関西
20131005 cocoa関西20131005 cocoa関西
20131005 cocoa関西
 
Bot Builder V4 SDK + QnA Maker / LUIS
Bot Builder V4 SDK  + QnA Maker / LUISBot Builder V4 SDK  + QnA Maker / LUIS
Bot Builder V4 SDK + QnA Maker / LUIS
 
Handoffは動かない〜これから役立たないバッドノウハウ集
Handoffは動かない〜これから役立たないバッドノウハウ集Handoffは動かない〜これから役立たないバッドノウハウ集
Handoffは動かない〜これから役立たないバッドノウハウ集
 
動画プレイヤーアプリの開発を通じて学んだ機能を実現するための要点解説
動画プレイヤーアプリの開発を通じて学んだ機能を実現するための要点解説動画プレイヤーアプリの開発を通じて学んだ機能を実現するための要点解説
動画プレイヤーアプリの開発を通じて学んだ機能を実現するための要点解説
 
lt37
lt37lt37
lt37
 
iOSアプリUIとの触れ合いと歩む僕なりのSwiftの楽しみ方
iOSアプリUIとの触れ合いと歩む僕なりのSwiftの楽しみ方iOSアプリUIとの触れ合いと歩む僕なりのSwiftの楽しみ方
iOSアプリUIとの触れ合いと歩む僕なりのSwiftの楽しみ方
 
Hubsの日本語化とECサイト利用
Hubsの日本語化とECサイト利用Hubsの日本語化とECサイト利用
Hubsの日本語化とECサイト利用
 
Bot Framework 最新情報 2018
Bot Framework 最新情報 2018Bot Framework 最新情報 2018
Bot Framework 最新情報 2018
 
SORACOM Conference "Discovery" 2018 | E1. Wioで始めるIoTプロトタイプ開発 〜実践事例のご紹介〜
SORACOM Conference "Discovery" 2018 | E1. Wioで始めるIoTプロトタイプ開発 〜実践事例のご紹介〜SORACOM Conference "Discovery" 2018 | E1. Wioで始めるIoTプロトタイプ開発 〜実践事例のご紹介〜
SORACOM Conference "Discovery" 2018 | E1. Wioで始めるIoTプロトタイプ開発 〜実践事例のご紹介〜
 
IoT キットハンズオンのソースコード解説します クラウド編 Part1 Section2
IoT キットハンズオンのソースコード解説します クラウド編 Part1 Section2IoT キットハンズオンのソースコード解説します クラウド編 Part1 Section2
IoT キットハンズオンのソースコード解説します クラウド編 Part1 Section2
 
iOSアプリ開発で意識すると役立ちそうな「つなぎ目」の部分について
iOSアプリ開発で意識すると役立ちそうな「つなぎ目」の部分についてiOSアプリ開発で意識すると役立ちそうな「つなぎ目」の部分について
iOSアプリ開発で意識すると役立ちそうな「つなぎ目」の部分について
 
「会社で寝よう!」制作レポート(3Dカジュアルゲームの開発手法)
「会社で寝よう!」制作レポート(3Dカジュアルゲームの開発手法)「会社で寝よう!」制作レポート(3Dカジュアルゲームの開発手法)
「会社で寝よう!」制作レポート(3Dカジュアルゲームの開発手法)
 

More from Daisuke Yamashita

potatotips_77.pdf
potatotips_77.pdfpotatotips_77.pdf
potatotips_77.pdf
Daisuke Yamashita
 
State management for ios development
State management for ios developmentState management for ios development
State management for ios development
Daisuke Yamashita
 
Static analysis for go lang
Static analysis for go langStatic analysis for go lang
Static analysis for go lang
Daisuke Yamashita
 
Convert the notification feature to the notification microservice
Convert the notification feature to the notification microserviceConvert the notification feature to the notification microservice
Convert the notification feature to the notification microservice
Daisuke Yamashita
 
歯磨き.go #2
歯磨き.go #2歯磨き.go #2
歯磨き.go #2
Daisuke Yamashita
 
歯磨き.go Go言語の静的解析とコード生成勉強会
歯磨き.go Go言語の静的解析とコード生成勉強会歯磨き.go Go言語の静的解析とコード生成勉強会
歯磨き.go Go言語の静的解析とコード生成勉強会
Daisuke Yamashita
 
ライブラリを作って5年たったので振り返る
ライブラリを作って5年たったので振り返るライブラリを作って5年たったので振り返る
ライブラリを作って5年たったので振り返る
Daisuke Yamashita
 
Tensorflow
TensorflowTensorflow
Tensorflow
Daisuke Yamashita
 
Introduction of ios-chart in oss-labs#3
Introduction of ios-chart in oss-labs#3Introduction of ios-chart in oss-labs#3
Introduction of ios-chart in oss-labs#3
Daisuke Yamashita
 
About SnapKit - Open source lab -
About SnapKit - Open source lab -About SnapKit - Open source lab -
About SnapKit - Open source lab -
Daisuke Yamashita
 
View Monitoring Tips
View Monitoring TipsView Monitoring Tips
View Monitoring Tips
Daisuke Yamashita
 
Swift open source library - ViewMonitor -
Swift open source library - ViewMonitor -Swift open source library - ViewMonitor -
Swift open source library - ViewMonitor -
Daisuke Yamashita
 
Let's Start Swift Open Source Activity.
Let's Start Swift Open Source Activity.Let's Start Swift Open Source Activity.
Let's Start Swift Open Source Activity.
Daisuke Yamashita
 
バグのことは嫌いになってもXcodeのことは嫌いにならないでください。
バグのことは嫌いになってもXcodeのことは嫌いにならないでください。バグのことは嫌いになってもXcodeのことは嫌いにならないでください。
バグのことは嫌いになってもXcodeのことは嫌いにならないでください。
Daisuke Yamashita
 
How to measure UIView position on Native App
How to measure UIView position on Native AppHow to measure UIView position on Native App
How to measure UIView position on Native App
Daisuke Yamashita
 

More from Daisuke Yamashita (15)

potatotips_77.pdf
potatotips_77.pdfpotatotips_77.pdf
potatotips_77.pdf
 
State management for ios development
State management for ios developmentState management for ios development
State management for ios development
 
Static analysis for go lang
Static analysis for go langStatic analysis for go lang
Static analysis for go lang
 
Convert the notification feature to the notification microservice
Convert the notification feature to the notification microserviceConvert the notification feature to the notification microservice
Convert the notification feature to the notification microservice
 
歯磨き.go #2
歯磨き.go #2歯磨き.go #2
歯磨き.go #2
 
歯磨き.go Go言語の静的解析とコード生成勉強会
歯磨き.go Go言語の静的解析とコード生成勉強会歯磨き.go Go言語の静的解析とコード生成勉強会
歯磨き.go Go言語の静的解析とコード生成勉強会
 
ライブラリを作って5年たったので振り返る
ライブラリを作って5年たったので振り返るライブラリを作って5年たったので振り返る
ライブラリを作って5年たったので振り返る
 
Tensorflow
TensorflowTensorflow
Tensorflow
 
Introduction of ios-chart in oss-labs#3
Introduction of ios-chart in oss-labs#3Introduction of ios-chart in oss-labs#3
Introduction of ios-chart in oss-labs#3
 
About SnapKit - Open source lab -
About SnapKit - Open source lab -About SnapKit - Open source lab -
About SnapKit - Open source lab -
 
View Monitoring Tips
View Monitoring TipsView Monitoring Tips
View Monitoring Tips
 
Swift open source library - ViewMonitor -
Swift open source library - ViewMonitor -Swift open source library - ViewMonitor -
Swift open source library - ViewMonitor -
 
Let's Start Swift Open Source Activity.
Let's Start Swift Open Source Activity.Let's Start Swift Open Source Activity.
Let's Start Swift Open Source Activity.
 
バグのことは嫌いになってもXcodeのことは嫌いにならないでください。
バグのことは嫌いになってもXcodeのことは嫌いにならないでください。バグのことは嫌いになってもXcodeのことは嫌いにならないでください。
バグのことは嫌いになってもXcodeのことは嫌いにならないでください。
 
How to measure UIView position on Native App
How to measure UIView position on Native AppHow to measure UIView position on Native App
How to measure UIView position on Native App
 

Introduction of Swift from Game Development