製作, UI表示, 文字列処理, 液晶, プロジェクト, ボット
その他
TerminalPro4のハードウェアを作っていきます. 次のことを説明していきます.
- 各モジュールの用意
- モジュール間の接続
TerminalPro4用のソフトウェアの作り方を説明します.
- ソフト作製の流れ
- TerminalPro4での制御流れ
- ソフトの作り方
ここでは, グラフィック液晶’SG12864ASLB-GB’の操作方法を説明します. これは, いわゆるライブラリの説明ではなく, ハードウェアそのものに対する操作方法です. この内容から, 自作のライブラリなどを製作することが可能です.
説明項目は以下のとおりです.
- 入手方法
- ピン配置
- 名称
- 実際に使ってみる
- 参考文献
HUDMessageManagerの導入方法を説明します. 説明項目は以下のとおりです.
- ダウンロード
- Unityにインポート
- 表示位置の設定
Set | メッセージを設定 |
---|---|
SetAlert | Alertメッセージを設定 |
SetAlertKeepID | Alertメッセージを設定,IDを保持 |
SetSubtitleTop | SubtitleTopメッセージを設定 |
SetSubtitleTopKeepID | SubtitleTopメッセージを設定,IDを保持 |
SetSubtitleTopTimer | SubtitleTopメッセージを設定,タイマーモード |
SetSubtitleTopTimerKeepID | SubtitleTopメッセージを設定,IDを保持,タイマーモード |
SetSubtitleBottom | SubtitleBottomメッセージを設定 |
SetSubtitleBottomKeepID | SubtitleBottomメッセージを設定,IDを保持 |
SetSubtitleBottomTimer | SubtitleBottomメッセージを設定,タイマーモード |
SetSubtitleBottomTimerKeepID | SubtitleBottomメッセージを設定,IDを保持,タイマーモード |
SetMemoTopLeft | MemoTopLeftメッセージを設定 |
SetMemoTopLeftKeepID | MemoTopLeftメッセージを設定,IDを保持 |
SetMemoBottomRight | MemoBottomRightメッセージを設定 |
SetMemoBottomRightKeepID | MemoBottomRightメッセージを設定,IDを保持 |
Show | メッセージを開始 |
ShowDontOverride | メッセージを開始,命令を上書きしない |
ShowAlert | Alertメッセージを開始 |
ShowSubtitleTopTimer | SubtitleTopTimerメッセージを開始 |
ShowSubtitleBottomTimer | SubtitleBottomTimerメッセージを開始 |
ShowMemoTopLeft | MemoTopLeftメッセージを開始 |
ShowMemoBottomRight | MemoBottomRightメッセージを開始 |
Exit | メッセージを終了する |
CheckID | 指定したメッセージIDが使用されているか確認 |
ここでは, HUDMessageManagerの基本的な使い方を説明します. 説明項目は以下のとおりです.
- パラメータの説明
- 使ってみる
- 対応文字列
コントローラ製作に関することについて説明します. 説明の項目は以下のとおりです.
- 部品入手
- 製作
- 説明
- 参考文献
私が製作に携わったゲームを紹介します.
私が製作に携わったゲームを紹介します.
ここには, TwitterBotに関することが書かれます.
筆者が現在作成中のTwitterボットは以下のリンクからBOTのたまり場
目的は以下のとおりです.
- 誰もが簡単にTwitterBOTを導入できるような枠組みを提案すること
- 自然な会話ができること
- 自動で学習すること
Unityでゲーム制作もしくはツール制作においてちょっとしたUIを表示したい時があります. HUDMessageManagerはその時のために製作されたものです.
HUDMessageManagerはちょっとしたUIの表示に最適です. 特徴は以下のとおりです.
- 固定されないUIの表示場所
- フェードイン, フェードアウトエフェクト
- 表示時間設定
Unity 2018.2.5f1で動作確認済みです.
C#からC++に入った人もいるでしょう. その時C#で大変よく使っていたStringが恋しい場合があります. C++を書きつつC#を感じたい時があります.
上の問題を解決する方法でここで紹介するStringがあります. このStringで用意されている関数名はほぼC#と一致します.
C#で非常に便利だったSplit関数も用意されています.
また, 文字列探索において一番高速とされるBM法を用いています.
Stringを強化, 改良何でもしてください. ( `ー´)ノ
C#のStringを使ったことがない方は, これをお勧めすることはできません. これと同様かそれ以上の機能を持つC++のstringをお使いください. C++ですでに用意されています.
![フレームレート測定画面](/Master/Arduino/Images/GLCDController/GLCDTest.jpg)
GLCDControllerとは、グラフィック液晶SG12864ASLB-GBを操作するものです. GLCDControllerの特徴は以下の通りです.
- 2Dグラフィック操作ライブラリCanvasの利点を受け継ぎ
- 高いフレームレート
このGLCDControllerのメンバ変数としてCanvasがあるのですが, このCanvasが2Dグラフィック操作を簡単にします. Canvasについての特徴はCanvasの特徴を参照してください.
画面の更新速度ですが,最高60fps以上(最高fps85fps, 平均60fps, 全画面更新15fps)まで出せます(ArduinoUno 16Mhzで検証).
GLCDControllerを改良、強化、何でもしてください(;´∀`)
HUD_MessageManagerとは画面に文字を表示するなどの処理をするコンポーネントです。これはUnity上で動作します。ゲームで文字の表示といえばゲーム内でのキャラのセリフ、ゲームシステム側からプレイヤーに向けてのメッセージ―セーブが完了した,新しい称号を獲得したなど―などがあります。HUD_MessageManagerを使うことでこのようなことが簡単に実装できます。
HUD_MessageManagerを使うと以下のことができます。
- 画面に文字を表示する
- 6つの場所に文字を表示できます
- 表示位置はカスタマイズ可能
- 表示,非表示時にエフェクトをかけることが可能
- 表示時間を指定可能
HUD_MessageManagerを改良、強化、何でもしてください(;´∀`)
このコンポーネントは古いバージョンです. これをベースとした改良版UIMessageManagerをご利用下さい. 表示場所が6つに固定されている問題, 初期設定のしにくさの問題を修正しています.
Unityでゲーム制作もしくはツール制作においてちょっとしたUIを表示したい時があります. HUDMessageManagerはその時のために製作されたものです.
HUDMessageManagerはちょっとしたUIの表示に最適です. 特徴は以下のとおりです.
- 固定されないUIの表示場所
- フェードイン, フェードアウトエフェクト
- 表示時間設定
Unity 2018.2.5f1で動作確認済みです.
C#からC++に入った人もいるでしょう. その時C#で大変よく使っていたStringが恋しい場合があります. C++を書きつつC#を感じたい時があります.
上の問題を解決する方法でここで紹介するStringがあります. このStringで用意されている関数名はほぼC#と一致します.
C#で非常に便利だったSplit関数も用意されています.
また, 文字列探索において一番高速とされるBM法を用いています.
Stringを強化, 改良何でもしてください. ( `ー´)ノ
C#のStringを使ったことがない方は, これをお勧めすることはできません. これと同様かそれ以上の機能を持つC++のstringをお使いください. C++ですでに用意されています.
HUD_MessageManagerとは画面に文字を表示するなどの処理をするコンポーネントです。これはUnity上で動作します。ゲームで文字の表示といえばゲーム内でのキャラのセリフ、ゲームシステム側からプレイヤーに向けてのメッセージ―セーブが完了した,新しい称号を獲得したなど―などがあります。HUD_MessageManagerを使うことでこのようなことが簡単に実装できます。
HUD_MessageManagerを使うと以下のことができます。
- 画面に文字を表示する
- 6つの場所に文字を表示できます
- 表示位置はカスタマイズ可能
- 表示,非表示時にエフェクトをかけることが可能
- 表示時間を指定可能
HUD_MessageManagerを改良、強化、何でもしてください(;´∀`)
このコンポーネントは古いバージョンです. これをベースとした改良版UIMessageManagerをご利用下さい. 表示場所が6つに固定されている問題, 初期設定のしにくさの問題を修正しています.
C#からC++に入った人もいるでしょう. その時C#で大変よく使っていたStringが恋しい場合があります. C++を書きつつC#を感じたい時があります.
上の問題を解決する方法でここで紹介するStringがあります. このStringで用意されている関数名はほぼC#と一致します.
C#で非常に便利だったSplit関数も用意されています.
また, 文字列探索において一番高速とされるBM法を用いています.
Stringを強化, 改良何でもしてください. ( `ー´)ノ
C#のStringを使ったことがない方は, これをお勧めすることはできません. これと同様かそれ以上の機能を持つC++のstringをお使いください. C++ですでに用意されています.
![](/Master/nodec-framework/images/nodec-framework.png)
nodec
は、ゲームエンジンなどのプラットフォームを新しく作成するためのフレームワークです。
アプリ開発のためのプラットフォームは、これまでたくさんありました。たとえば、GUIアプリケーション作成のプラットフォームにはQt、ゲーム開発のためのプラットフォームにはUnityがあります。ですが、これらのプラットフォームは別々で開発されており、そのうえで動くアプリコードもまた、まったく違った様相をしています。
nodec
フレームワークを利用することで、新しいプラットフォームを効率的に構築できます。nodec
フレームワークは、異なるプラットフォーム間で共通に使える機能を提供します。また、アプリへのインターフェイスはあらかじめ定義されているので、設計の再利用が可能です。
アプリコードの実装も、nodec
フレームワークで効率化することが可能です。プラットフォームの上に、機能を抽象化したレイヤー(modules)があり、アプリ層はこのレイヤーを通してプラットフォームの機能を利用します。プラットフォームが異なっても、アプリでの実装の仕方は同じです。