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
290
LチカCraft
Minecraft内でブロックを設置すると、LEDがつく。
suzakutakumi
June 19, 2021
Tweet
Share
More Decks by suzakutakumi
See All by suzakutakumi
ピクロス作成の中間発表
suzakutakumi
0
91
しゅみろん
suzakutakumi
0
150
trap-search
suzakutakumi
0
39
Pyramid Makerの作成
suzakutakumi
0
21
マークダウンパーサーの自作
suzakutakumi
0
100
絵文字ジェネレータボットの作成
suzakutakumi
0
150
send_discord
suzakutakumi
0
48
独自ドメインについて
suzakutakumi
0
40
ESP32とAlexaを用いたエアコン制御
suzakutakumi
0
1.3k
Other Decks in Programming
See All in Programming
なんでRustの環境構築してないのにRust製のツールが動くの? / Why Do Rust-Based Tools Run Without a Rust Environment?
ssssota
7
18k
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
410
開発組織の戦略的な役割と 設計スキル向上の効果
masuda220
PRO
6
1.1k
iOSでSVG画像を扱う
kishikawakatsumi
0
160
contribution to astral-sh/uv
shunsock
0
450
Vueのバリデーション、結局どれを選べばいい? ― 自作バリデーションの限界と、脱却までの道のり ― / Which Vue Validation Library Should We Really Use? The Limits of Self-Made Validation and How I Finally Moved On
neginasu
2
330
バッチ処理を「状態の記録」から「事実の記録」へ
panda728
PRO
0
190
スマホから Youtube Shortsを見られないようにする
lemolatoon
27
33k
overlayPreferenceValue で実現する ピュア SwiftUI な AdMob ネイティブ広告
uhucream
0
200
デミカツ切り抜きで面倒くさいことはPythonにやらせよう
aokswork3
0
260
CSC305 Lecture 06
javiergs
PRO
0
270
Android16 Migration Stories ~Building a Pattern for Android OS upgrades~
reoandroider
0
130
Featured
See All Featured
The Illustrated Children's Guide to Kubernetes
chrisshort
49
51k
Navigating Team Friction
lara
190
15k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
Faster Mobile Websites
deanohume
310
31k
Statistics for Hackers
jakevdp
799
220k
Unsuck your backbone
ammeep
671
58k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
31
2.7k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.5k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
The Invisible Side of Design
smashingmag
302
51k
Bash Introduction
62gerente
615
210k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
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チカ を使ってみたい