Slide 1

Slide 1 text

LチカCraft 2021/06/19 IoTLT

Slide 2

Slide 2 text

自己紹介 HN:朱雀 匠(本名:鈴木 拓眞) Twitter: @suzakutakumi3

Slide 3

Slide 3 text

No content

Slide 4

Slide 4 text

No content

Slide 5

Slide 5 text

経緯 IoTに関するネタがない

Slide 6

Slide 6 text

経緯

Slide 7

Slide 7 text

経緯 そうだ! MinecraftのMODを作って、ArduinoとSerial通信しよう! (ちょうどJavaを学んだばっかだし)

Slide 8

Slide 8 text

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

Slide 9

Slide 9 text

作ったもの Minecraft内で、ブロックを置くと、LEDが光る

Slide 10

Slide 10 text

余談 今回の製作は昨日の23:00から徹夜で作りました このスライドを作ってるのも7:00頃です 言い訳 - 初心者向けのハッカソンイベントの講師が忙しかった - 2学期が始まったばかりで生活リズムが整っていない

Slide 11

Slide 11 text

Mod作り 詳しくは省きます 参考サイト: https://qiita.com/koteko/items/8d32c8819e3f9e6a333a https://github.com/Flanks255/simplylight とにかく、資料が少なかった。

Slide 12

Slide 12 text

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(); // シリアル通信をする関数 }

Slide 13

Slide 13 text

Serial通信 jSerialCommというライブライを使用しました こちらについても資料が全然なかった (合ってもシンプルなものではなかった) 参考サイ ト:https://forum.arduino.cc/t/jserialcomm-serial-communicati on-with-arduino-uno-fails/589181

Slide 14

Slide 14 text

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();

Slide 15

Slide 15 text

デモ動画

Slide 16

Slide 16 text

まとめ ・Modに関しても、Javaでのシリアル通信に関しても情報源が少なすぎた ・一晩で作るものじゃない ・今後は、タクトスイッチを押したら、Minecraft内のランプが光るという、今回と逆のLチカ を使ってみたい