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
LチカCraft
Search
suzakutakumi
June 19, 2021
Programming
0
240
LチカCraft
Minecraft内でブロックを設置すると、LEDがつく。
suzakutakumi
June 19, 2021
Tweet
Share
More Decks by suzakutakumi
See All by suzakutakumi
ピクロス作成の中間発表
suzakutakumi
0
80
しゅみろん
suzakutakumi
0
98
trap-search
suzakutakumi
0
33
Pyramid Makerの作成
suzakutakumi
0
14
マークダウンパーサーの自作
suzakutakumi
0
91
絵文字ジェネレータボットの作成
suzakutakumi
0
120
send_discord
suzakutakumi
0
36
独自ドメインについて
suzakutakumi
0
25
ESP32とAlexaを用いたエアコン制御
suzakutakumi
0
1.1k
Other Decks in Programming
See All in Programming
From Spring Boot 2 to Spring Boot 3 with Java 21 and Jakarta EE
ivargrimstad
0
870
Code Reviews
bkuhlmann
4
910
Ruby GitHub Packages
bkuhlmann
0
650
大規模UIKitベースアプリへのTCAの段階的導入/gradual-adoption-of-tca-in-a-large-scale-uikit-based-app
takehilo
2
210
Compose-View Interop in Practice (mDevCamp 2024)
stewemetal
0
170
パフォーマンスを求めてDBに機能を寄せる戦略
aoyagikouhei
0
110
効率化に挑戦してみたらモバイル開発が少し快適になった話
ryunakayama
0
140
Tailwind CSSを本気でカスタマイズする方法
fsubal
15
5.6k
Implementing Design Systems in Swift
seyfoyun
2
500
WebGLで始める コンピュータグラフィックス入門
heller77
0
350
Balkan Ruby 2024 — How and why to run SQLite on Rails in production
fractaledmind
0
110
if constexpr文はテンプレート世界のラムダ式である
faithandbrave
3
710
Featured
See All Featured
The Pragmatic Product Professional
lauravandoore
26
5.8k
Making the Leap to Tech Lead
cromwellryan
125
8.5k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
104
6.6k
Building Effective Engineering Teams - LeadDev
addyosmani
32
1.9k
Unsuck your backbone
ammeep
664
57k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
22
1.6k
StorybookのUI Testing Handbookを読んだ
zakiyama
13
4.6k
Documentation Writing (for coders)
carmenintech
60
4k
We Have a Design System, Now What?
morganepeng
43
6.8k
What's in a price? How to price your products and services
michaelherold
238
11k
4 Signs Your Business is Dying
shpigford
176
21k
No one is an island. Learnings from fostering a developers community.
thoeni
16
2.1k
Transcript
LチカCraft 2021/06/19 IoTLT
自己紹介 HN:朱雀 匠(本名:鈴木 拓眞) Twitter: @suzakutakumi3
None
None
経緯 IoTに関するネタがない
経緯
経緯 そうだ! MinecraftのMODを作って、ArduinoとSerial通信しよう! (ちょうどJavaを学んだばっかだし)
Minecraftとは Minecraft(マインクラフト)は、マルクス・ペルソンとMojang Studiosの社員がJavaを用いて開 発したサンドボックスビデオゲームである。 日本国内では「マイクラ」と略称され[8][9][10]、サバイバル生活を楽しんだり、自由にブロックを配 置し建築等を楽しめる[11]。2009年にパブリックアルファ版としてリリースされたこのゲームは、 2011年11月に正式リリースされ、その頃にJens Bergenstenが開発を引き継いだ。それ以来 Minecraftはさまざまなプラットフォームに移植され、2019年5月時点でそれまで売上1位だった テトリスを抜き世界で最も売れたゲームとなった[12]。
Minecraftはいくつかの賞を受賞しており、影響力のあるビデオゲームの1つとして挙げられてい る。2020年6月には世界のビデオゲームの殿堂入りを果たした[13]。 Wikipedia:https://ja.wikipedia.org/wiki/Minecraft
作ったもの Minecraft内で、ブロックを置くと、LEDが光る
余談 今回の製作は昨日の23:00から徹夜で作りました このスライドを作ってるのも7:00頃です 言い訳 - 初心者向けのハッカソンイベントの講師が忙しかった - 2学期が始まったばかりで生活リズムが整っていない
Mod作り 詳しくは省きます 参考サイト: https://qiita.com/koteko/items/8d32c8819e3f9e6a333a https://github.com/Flanks255/simplylight とにかく、資料が少なかった。
Mod作り ブロックに関するクラスのあるメソッド @Override public void onBlockPlacedBy(@Nonnull World worldIn, @Nonnull BlockPos
pos, @Nonnull BlockState state, @Nullable LivingEntity placer, @Nonnull ItemStack stack) { super.onBlockPlacedBy(worldIn, pos, state, placer, stack); boolean powered = worldIn.isBlockPowered(pos); write.Write(); // シリアル通信をする関数 }
Serial通信 jSerialCommというライブライを使用しました こちらについても資料が全然なかった (合ってもシンプルなものではなかった) 参考サイ ト:https://forum.arduino.cc/t/jserialcomm-serial-communicati on-with-arduino-uno-fails/589181
Serial通信 try { for (int j = 0; j <
1000; ++j) out.write(1); //何故か複数回送らないと反応しない inputStream.read(); out.close(); inputStream.close(); } catch (Exception e) { e.printStackTrace(); } commPort.closePort();
デモ動画
まとめ ・Modに関しても、Javaでのシリアル通信に関しても情報源が少なすぎた ・一晩で作るものじゃない ・今後は、タクトスイッチを押したら、Minecraft内のランプが光るという、今回と逆のLチカ を使ってみたい