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
D言語+KinectでD言語君を動かす
Search
pandaman64
April 12, 2014
Programming
0
950
D言語+KinectでD言語君を動かす
#CombGig
pandaman64
April 12, 2014
Tweet
Share
Other Decks in Programming
See All in Programming
短期間での新規プロダクト開発における「コスパの良い」Goのテスト戦略」 / kamakura.go
n3xem
2
210
MCP with Cloudflare Workers
yusukebe
2
260
「Chatwork」Android版アプリを 支える単体テストの現在
okuzawats
0
200
命名をリントする
chiroruxx
1
540
Jaspr Dart Web Framework 박제창 @Devfest 2024
itsmedreamwalker
0
130
ATDDで素早く安定した デリバリを実現しよう!
tonnsama
1
600
Findy Team+ Awardを受賞したかった!ベストプラクティス応募内容をふりかえり、開発生産性向上もふりかえる / Findy Team Plus Award BestPractice and DPE Retrospective 2024
honyanya
0
120
KubeCon + CloudNativeCon NA 2024 Overviewat Kubernetes Meetup Tokyo #68 / amsy810_k8sjp68
masayaaoyama
0
290
技術的負債と向き合うカイゼン活動を1年続けて分かった "持続可能" なプロダクト開発
yuichiro_serita
0
240
今年一番支援させていただいたのは認証系サービスでした
satoshi256kbyte
1
280
Flatt Security XSS Challenge 解答・解説
flatt_security
0
510
アクターシステムに頼らずEvent Sourcingする方法について
j5ik2o
6
650
Featured
See All Featured
Writing Fast Ruby
sferik
628
61k
Site-Speed That Sticks
csswizardry
2
210
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
940
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
171
50k
The Pragmatic Product Professional
lauravandoore
32
6.3k
How to Think Like a Performance Engineer
csswizardry
22
1.3k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
1.2k
Typedesign – Prime Four
hannesfritz
40
2.5k
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.6k
Java REST API Framework Comparison - PWX 2021
mraible
28
8.3k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
26
1.9k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
Transcript
D言語+Kinectで D言語君を動かす
自己紹介 ・渋谷幕張高校 ・高校3年生 ・@__pandaman64__ ・C++ぺろぺろ Dもかわいいよ !!!const!!! ・OpenCVやKinectかじった
D言語 ・C++の後継言語 ・Walterがつくった ・他の言語から色々な要素を持ち込んで る ・開発コミュニティが活発 v.2.065 ・Github http://github.com/D-Programming- Language/
・D言語のマスコットキャラクター ・公式のトップページに居たが いつの間にか消えた →別のページにいた ・画像自体はまだ残ってる D言語君
D言語君のモデル https://twitter.com/fifth_tea/status/413167874757246976
D言語君のモデル http://qiita.com/yasei_no_otoko/items/e717ef09dce98330cde5
D言語君のモデル http://qiita.com/yasei_no_otoko/items/e717ef09dce98330cde5
D言語で D言語君を動かそう!
どうやって動かす?
D言語君が人の動きと 同期出来たら面白い
D言語+Kinectで D言語君を動かそう!
実演
Kinect is 何
Kinect is 何 ・本来はゲーム用のデバイス ・Mircosoftが2010年から販売 ・赤外線カメラ/プロジェクタで深度(奥行き) がわかる ⇒プレイヤーの位置や動きがわかる! ・今使っているのはKinect for
Xbox 360 ・昨年Kinect Oneが出た
Kinectプログラミング ・2つのKinectライブラリ a.Kinect for Windows SDK b.OpenNI ・どちらもC++ライブラリ ・Kinect for
Windows SDKをD言語から 叩いた
Kinect in D ・Kinect for Windows SDKをラップする Cライブラリを作成 ・D言語からCラッパーライブラリの関数を 呼ぶ
・色々あってx64専用 ・その内公開します
Kinect in D
D言語君を動かす
D言語君を動かす ・モデルは前に紹介したもの ・DXライブラリのDラッパーを使用
D言語君を動かす ・プレイヤーと同じようにD言語君を動かし たい!! ・関節の回転移動をモデルにも適用すれ ばよさそう ・とにかく行列の知識必要 ・↑良く分かって無い ・近いものはできた
実演(もう一回)
まとめ ・D言語→楽しい!! ・Kinect→楽しい!! ・D言語+Kinect →!!!すごい楽しい!!! ※但し数学力が足りない
できてないこと ・2つの関節を連携させながら動かす (肩→肘→手首) ・行列をごにょごにょすればいける(らしい) ・数学に殴られておわり
Q&A
DのC++と比べた長所は? ・ガベージコレクタでメモリ管理が楽、C+ +のRAIIもscope文で実現可能 ・テンプレートメタプログラミングへの言語 の支援が大きく、C++ではできないことが 楽に出来る ・標準ライブラリがC++より豊富 ・レンジベースのアルゴリズム ・JSONやXMLなどを扱える ・正規表現 など
・UFCSというC#のLINQに似た機能によっ てプログラムが書きやすい/読みやすい ・etc..... D言語すごい!
DからCの関数を呼ぶには? ・extern(C)宣言で関数のリンケージをCリ ンケージに設定できます ・extern(C++)もあるけど闇っぽい ・extern(Windows)もある、WinAPIはこれ ・但しdmdはx86でOMFバイナリを吐くので COFFライブラリとはリンクできない、x64な らCOFFを吐ける ・gdcやldcならx86でも可能かも