SlideShare a Scribd company logo
情報メディア専門ユニット2
KinectとC#を用いた
実践的VRアプリ開発
第2回
神奈川工科大学 情報学部
情報メディア学科 白井研究室
白井暁彦 准教授
 Kinect演習用FaceBookページへの参加申請
 https://www.facebook.com/groups/media.kinect/members/
 Githubへの登録
 Kinect SDK for Windows 1.8 , Developer Toolkitのインストール
演習を開始する前に
 バージョン管理システム「GitHub」
 KinectSDK v1.8, Developer Toolkit v1.8をインストール
 Kinect SDK v1.8を紐解こう
 C# ウォーミングアップ
 C# WPFを使ってアプリケーションを制作しよう(課題)
 制作したシステムをGitHubを利用して提出(課題)
10/7 #1 講義内容
 プログラム開発のこんな場面で
 ソースコードの状態をひとつ前に戻したい
 一部仕様を変えて試したいけど,今の状態を壊したくない
 今までどんな実装を加えて追加してきたのかを振り返りたい
 プロジェクトの改変履歴を管理できる
 記録された任意のバージョンにいつでも戻れる
 今の状況を壊さずに,試行錯誤ができる
 ログを見ることで,作業内容を見直せる
 バージョン管理システムではこれらのことが可能
バージョン管理システムとは
 ソフトウェア開発プロジェクトのために共有Webサービス
 バージョン管理システム“Git”を使用
 リポジトリ(データを格納する容器・場所)単位でプロジェクトを管理
 GitHub書類選考
 ポートフォリオとしての活用
 本講義はGitHubを活用して,プロジェクト進行,課題提出を行う
GitHubとは
 https://github.com/
 まずは,アカウントを作成しよう
まずはアカウントを作ろう
 その後のMicroプラン申請のために学籍番号メール(~ac.jp)で,
登録すると便利.
 Microプランを申請すると,有料会員でないと持つことができない
機能(非公開リポジトリの所有)が一部無料で使用可能になる.
GitHubのアカウント作成
 以下のURLからMicroプランを申請する
 https://github.com/edu
 I’m a studentを選択し,フォームに「大学名」「学年」「申請理由」
を英語で記入する.
 Microプランを申請することで、無料で公開可能なプライベートリ
ポジトリを5つまで持つことができる.
 運営側で認証後,メールが届き,Microプランにアップグレードが
される.
Microプランの申請
Microプランの申請
選択
https://edu.github.com
※最近変わりました
大学のメールアドレスから申請.
作文パートの作文例↓
Dear Sir,
My name is 自分のフルネーム and I am a student in Kanagawa Institute of
Technology.
The reason why I am writing this email to you is I’d like to use Micro plan.
I am going to study about Kinect Programming.
So, I need private repositories to research and development.
I am looking forward to hearing from you.
Sincerely yours,
自分の名前
Microプランの申請
Microプラン申請
GitHub for Windows
 https://windows.github.com/
 上記のURLから,GitHub for Windowsのインストーラー
(GitHubSetup.exe)をダウンロード
ここから
 Facebookの参加、グループへの参加申請
 https://www.facebook.com/groups/media.kinect/
 Github.comへの登録、education.github.com への申請
 メールアドレスの確認
 Kinect SDK 1.8, Toolkitのインストール
 Githubアカウントをfacebookの学籍番号ページで伝える
 https://github.com/kaitas/kinect2015/ にアクセス
 KinectSDKとKinect本体をインストールしShapeGameをテスト
 音声認識で Pause, Resume, Make biggerなどを試してみて
初回でやってほしいこと
 “Git Shell”,“GitHub”の2種類がインストールされる.
 Git Shell:Git操作用シェル(CUI)
 GitHub:GUIによるクライアントソフト
 リポジトリの作成は,“GitHub”を
その後の更新などは“GitShell”利用します.
 GitShellのCUIコマンドは,Linux,Unix,MacOSXで共通.
 慣れるとGUIより早い.
GitHub for Windows
 ls 現在のディレクトリのリストを表示
 explorer . (Windowsのファイルエクスプローラをここで起動)
 cd change directory, 現在操作するディレクトリの移動
 cd Kinect2015
 cd .. 上のディレクトリに移動
 mkdir (make directory) ディレクトリ作成
 mkdir test
 pwd 現在のパス(位置)を確認する
 notepad testfile.txt Windows「メモ帳」を起動して新規ファイル
 rm testfile.txt 削除
 cp a.txt b.txt (a.txtをb.txtに複製)
コマンドライン入門編
 リポジトリとは,ファイルやディレクトリの状態を記録する場所.
 内容や変更履歴を記録
 変更履歴を管理をしたいディレクトリをリポジトリに置くことで
そのディレクトリ内のファイルやディレクトリの変更履歴を記録し
管理することが可能
リポジトリとは①
 リポジトリは2種類存在する
 リモートリポジトリ
 専用のサーバーに配置して複数人で共有するためのリポジトリ
 ローカルリポジトリ
 ユーザーひとりひとりが開発するために,
自分のPC上に配置するリポジトリ
(つまり自分のPCにあるソースのコピー)
 ローカルリポジトリの操作(crate/add/remove/commit)
 リモートリポジトリへの操作(clone/pull/push)
 リモートの内容をローカルへコピー(clone/pull)
 ローカルで担当箇所を開発⇒リモートに変更を反映(push)
 Github上の「Pull Request」で本家に吸い上げてもらう
リポジトリとは②
ローカルリポジトリで実験①
左上の“+”から“Create”を選択し新規リポジトリを作成
Nameはフォルダ名であり,プロジェクト名などにするとよい
ファイルの保管場所はデフォルトではDocuments/GitHub/に
ローカルリポジトリで実験②
以下の図のようにリポジトリができていることを確認
ローカルリポジトリで実験③
ドキュメントにGitHubが
追加され,その中に作成
したリポジトリがあることを
確認
ディレクトリ内にある,
“.git~”で始まるファイルは
削除しないこと
設定ファイルがなくなり
リポジトリが機能しなくなる
Gitignoreで
管理しないファイルを設定
 ファイルやディレクトリの追加・変更を,リポジトリに記録する操作
 コミットをすると,前回コミットした時の状態と現在の状態の差分を
記録したコミットと呼ばれるものが作成される
 コミットは時系列順にリポジトリに格納される
 時系列を追うことで,
過去の変更履歴やその内容を知ることができる.
コミット(commit)
 ローカルリポジトリ
 コミットされた,変更履歴や追加・変更を保存する場所
 ファイル形式のデータベースになっている(.gitフォルダ)
 ワークツリー
 Gitの管理化におかれた,実際に個人のPCで作業するディレクトリ
 インデックス
 ワークツリーで変更・更新したファイル・ディレクトリをリポジトリにコミット
する準備をするための場所
GUI版もあるが、GitShellやCUIを使うほうが覚えやすい
ワークツリーとインデックス
 CUIでの操作
 コマンドはLinux,
Unix, Mac OSX共通
GitShell
Git command
 My1stリポジトリにtest.txtを作成
 Git shellを起動
 cd My1st
 git status
 git add . (dot忘れずに!)
 git status
 git commit –m “my 1st commit”
 Text.txtを書き換える
 git status, git commit –m “my 2nd commit”
 git diff
KinectとC#を用いた実践的VRアプリ開発 第2回 2015/10/13 Github CLI編
 学内LANから利用するには,GitHub for windows側もproxy設定
をする必要がある.
 C:¥Users¥ユーザー名¥.gitconfigに以下の設定を追加し,保存.
 GitHub for windowsを再起動後,proxy環境でGitHub for
windowsが利用できる
 ※proxyがない環境では,proxy設定をコメントアウトして使用すること.
先頭行に「#」を入れ無効にした後,アプリを起動しなおせばよい.
(参考)学内LANから利用するには
[http] proxy = http://ccproxyc.kanagawa-it.ac.jp:10080
[https] proxy = http://ccproxyc.kanagawa-it.ac.jp:10080
1. まずClone
2. ファイル修正
3. Sync (リモートとの差分確認)
4. Commit Changes + コミットメッセージ, 詳細
これはローカルリポジトリへの変更の反映であって
Github(リモート)への変更ではない
5. うまくCommitできたら、Sync
これはGithubサーバーへのコミットを意味する。
結構時間がかかるし、ステータスが見えないので
事故がおきやすい
6. Github Web版で確認
☆すべてのGUIでの操作はCUI(GitShell)で行える
わかりづらいGUIは頼りにすべきではない.
GUIでの流れ
1. git pull
リモートリポジトリ内のファイル・ディレクトリをローカルリポジトリへ追加
つまり自分が修正している間に加わった最新のファイルも追加される
2. git add [ファイル・ディレクトリ名]
指定したファイル・ディレクトリをインデックスに登録
普通は git add . で現在のリポジトリの修正ファイルを自動登録
3. git commit –m “メッセージ”
登録されたファイル・フォルダをローカルリポジトリにコミット
☆この時点ではまだリモートリポジトリには反映されていない.
4. git push
ローカルリポジトリ内のコミット情報をリモートリポジトリへ追加する
5. GithubのWebで確認
引く(pull) →足す(add)→コミット→押す(push)!!
超基本Gitコマンドと流れ
(CloneもCUIでできるが、それ以降の流れ)
1. Git (GUI) で Clone
2. GitShellを起動
3. Git管理下のディレクトリにアクセス
cd Kinect2015
4. 念のためここで git pull
5. 新規ファイルをワークツリーに追加
Kadai01ディレクトリ内に新規テキストファイルを追加
6. インデックスに登録 git add . ←ドット忘れずに!!
7. ローカルリポジトリへコミット
Git commit –m “学籍番号 Kadai02”
8. 念のためここで git pull
9. リモートリポジトリで共有 git push
実際に使ってみよう
 git push
 ローカルリポジトリのデータをリモートリポジトリに反映
 [master]が青色に変わる
ローカルリポジトリとリモートリポジトリで
差分がないことを示している.
 GithubのWebで見て確認
リモートリポジトリで共有
 git pull
 リモートリポジトリ内のファイル・ディレクトリをローカルリポジトリへ追加
 git status
 現在のGitの情報を表示
 git config
 ユーザー設定などを表示
 git clone [cloneしたいリポジトリのURL]
 個人のPCにリモートリポジトリをローカルリポジトリとしてコピーを生成
 URLはGithubのリポジトリのトップページ、右下から取得できる。
他にもよく使うGitコマンド
 念のため git pull
 この瞬間にも誰かがコミット→pushしているかもしれないので
最新をWebから取得し、結合しよう。
 git commit –m “学籍番号”
 メッセージはこの場合は学籍番号だが、変更点などを示すとよい
 [master]が緑色に変わる
 ローカルリポジトリ内での変更は完了しているが
まだリモートリポジトリには反映されていない状態
ファイルの削除を反映させたい
 git add –u
 git add . では追加と変更しかできないことに注意
TIPS
 今回作成した課題1~3のプログラミング技術を応用して
「クッキークリッカー」を作成せよ
http://orteil.dashnet.org/cookieclicker/
<必須>
 グラフィックスは不要(ババア不要)
 アイテムも凝る必要はない(3段目程度でよし)
 すっげーたくさんの数字を扱うにはどうしたらいいか!!?
 Save, Load
<上を目指す人>
・実績管理などもあるとよし ・クッキーやアイテムのグラフィックス
 Kinect2015/CookieClicker/(学籍番号) で提出
10/13(第2回)の課題

More Related Content

PPTX
GitLabを16万8千光年ワープさせた話(改)
PDF
Github入門2014
PDF
Github入門(後編) ブランチの使い方
PDF
Exploring the Philosophy behind Docker/Kubernetes/OpenShift
PDF
Docker基礎+docker0.9, 0.10概要
PPTX
貧乏人でも出来るお手軽docker
PPTX
Git & GitHub を使いこなしてハッピーになろう! - WordBench 名古屋 & concrete5 名古屋 合同勉強会
PDF
自動化ーニバルだよ!GDC16に見る自動化技術とテストのトレンド
GitLabを16万8千光年ワープさせた話(改)
Github入門2014
Github入門(後編) ブランチの使い方
Exploring the Philosophy behind Docker/Kubernetes/OpenShift
Docker基礎+docker0.9, 0.10概要
貧乏人でも出来るお手軽docker
Git & GitHub を使いこなしてハッピーになろう! - WordBench 名古屋 & concrete5 名古屋 合同勉強会
自動化ーニバルだよ!GDC16に見る自動化技術とテストのトレンド

What's hot (20)

PDF
Kuberneteの運用を支えるGitOps
PPTX
DockerでJupyter使おうぜ
PPTX
Dockerの基本的な話
PDF
Git 初心者講座 by forkwell
ODP
How to use GPL software in closed source Android application
PDF
XPages開発におけるGit/GitHubの利用
PDF
Dockerの事例紹介
PDF
Docker実践入門
PDF
割と新し目の Open shift origin で作る自宅 paas 作成記
PDF
@s_ssk13さん向けGitHub入門
PDF
Docker で Deep Learning
PPTX
GitLabを16万8千光年ワープさせた話 GITLAB BIG UPGRADE PROJECT
PDF
Docker社内勉強会
PDF
とある社内ビックデータ基盤にバッチ用コンテナ基盤を構築してみた
PPTX
20171028_66842_Emacs実践入門_出版記念イベント_以前Emacs使いだったVim使いがEmacsのリハビリしている様子(回想多め)
PDF
バージョン管理とGit
PPTX
Moby Project
PDF
Git with Visual Studio
PPTX
Docker地雷n本勝負
PDF
KubernetesとOpenShiftの話
Kuberneteの運用を支えるGitOps
DockerでJupyter使おうぜ
Dockerの基本的な話
Git 初心者講座 by forkwell
How to use GPL software in closed source Android application
XPages開発におけるGit/GitHubの利用
Dockerの事例紹介
Docker実践入門
割と新し目の Open shift origin で作る自宅 paas 作成記
@s_ssk13さん向けGitHub入門
Docker で Deep Learning
GitLabを16万8千光年ワープさせた話 GITLAB BIG UPGRADE PROJECT
Docker社内勉強会
とある社内ビックデータ基盤にバッチ用コンテナ基盤を構築してみた
20171028_66842_Emacs実践入門_出版記念イベント_以前Emacs使いだったVim使いがEmacsのリハビリしている様子(回想多め)
バージョン管理とGit
Moby Project
Git with Visual Studio
Docker地雷n本勝負
KubernetesとOpenShiftの話
Ad

Similar to KinectとC#を用いた 実践的VRアプリ開発 第2回 2015/10/13 Github CLI編 (20)

ODP
Next-L Enju 開発ワークショップ #02
PDF
GitHub入門 手順編
PDF
gitを使う準備をしよう - 初級編
PDF
git-followup @明石高専2E
PDF
Rails vim easy
PDF
GitHubでプロジェクトを共有してみよう
PDF
GitHubでプロジェクトを共有してみよう (1)
PPT
Githubことはじめ
PDF
git-webtouchmeeting
PDF
Git_GiHub講習会.pdf
KEY
Yapc2012資料
PPTX
Git演習(2)
PPTX
Introduction to GitHub - Codespacesハンズオン.pptx
KEY
P4p20120408
PPTX
GitHubワークショップ
PDF
Gitと出会って人生変わった テックヒルズ2013-03-22
PDF
最近作ったもの
PDF
15分でわかるGit入門
PDF
世界一簡単なGithub入門(githubは無料で使用する場合、全てのファイルが公開されていることにご注意ください)
Next-L Enju 開発ワークショップ #02
GitHub入門 手順編
gitを使う準備をしよう - 初級編
git-followup @明石高専2E
Rails vim easy
GitHubでプロジェクトを共有してみよう
GitHubでプロジェクトを共有してみよう (1)
Githubことはじめ
git-webtouchmeeting
Git_GiHub講習会.pdf
Yapc2012資料
Git演習(2)
Introduction to GitHub - Codespacesハンズオン.pptx
P4p20120408
GitHubワークショップ
Gitと出会って人生変わった テックヒルズ2013-03-22
最近作ったもの
15分でわかるGit入門
世界一簡単なGithub入門(githubは無料で使用する場合、全てのファイルが公開されていることにご注意ください)
Ad

More from Akihiko Shirai (20)

PDF
WiiRemote Programming Workshop - 革新的インタラクションを構成する“部品としての”ゲームコントローラー
PDF
Virtual Realty for Entertainment - 文化・言語背景を 文化・言語背景を超えた環境における国際的エンタテイメントシステムデザイン
PDF
3DExpo2006:Laval市の取り組み
PDF
IVRC2018 事前説明会 ver.0606
PDF
CEDEC2017 Real Baby - Real Family
PDF
CEDEC2017 次世代VR/ARエンタテイメントのための多重化映像生成ミドルウェア
PDF
Open Campus 20170820
PDF
IVRC2017 BoF meeting in SIGGRAPH2017
PDF
はじめての学会発表まにゅある
PDF
Web-based multiplex image synthesis for digital signage
PPTX
講義「メディアアート」第12回 メディアアートを作る
PDF
Panel talk in ICAT-EGVE2016: Research and Commercialization of  Virtual Reali...
PDF
MANPU2016 Invited Talk: Manga Generator, a future of interactive manga media
PDF
『遊びの研究とクリエイティビティ』リアルワールドゲームを楽しもう! ~安心・安全に「Ingress」や「PokemonGO」で遊ぶために~
PDF
IVRC BoF in SIGGRAPH 2016 by Hikaru Takanori. Behind the scene of "CHILDHOOD"...
PPTX
How to enjoy SIGGRAPH 2016 for beginners 初心者のためのシーグラフ2016を楽しむ方法
PDF
Why you must join to IVRC and Laval Virtual ReVolution?
PDF
“Laval Virtual” World biggest VR festival
PDF
“Coming Future of Robotics” Student Innovation through VR+Robotics
PDF
IVRC2016 事前説明会資料
WiiRemote Programming Workshop - 革新的インタラクションを構成する“部品としての”ゲームコントローラー
Virtual Realty for Entertainment - 文化・言語背景を 文化・言語背景を超えた環境における国際的エンタテイメントシステムデザイン
3DExpo2006:Laval市の取り組み
IVRC2018 事前説明会 ver.0606
CEDEC2017 Real Baby - Real Family
CEDEC2017 次世代VR/ARエンタテイメントのための多重化映像生成ミドルウェア
Open Campus 20170820
IVRC2017 BoF meeting in SIGGRAPH2017
はじめての学会発表まにゅある
Web-based multiplex image synthesis for digital signage
講義「メディアアート」第12回 メディアアートを作る
Panel talk in ICAT-EGVE2016: Research and Commercialization of  Virtual Reali...
MANPU2016 Invited Talk: Manga Generator, a future of interactive manga media
『遊びの研究とクリエイティビティ』リアルワールドゲームを楽しもう! ~安心・安全に「Ingress」や「PokemonGO」で遊ぶために~
IVRC BoF in SIGGRAPH 2016 by Hikaru Takanori. Behind the scene of "CHILDHOOD"...
How to enjoy SIGGRAPH 2016 for beginners 初心者のためのシーグラフ2016を楽しむ方法
Why you must join to IVRC and Laval Virtual ReVolution?
“Laval Virtual” World biggest VR festival
“Coming Future of Robotics” Student Innovation through VR+Robotics
IVRC2016 事前説明会資料

KinectとC#を用いた 実践的VRアプリ開発 第2回 2015/10/13 Github CLI編