|
プロジェクトの紹介 |
幼い頃から電車かバスの運転士を目指していた私。 大学時代の出会いにより、今でこそシステムエンジニアや学校教員として従事していますが、幼き頃の "将来の夢" も捨てきれず、電車に乗るたび「運転席に座る自分」を想像してしまうのでした。 そんな背景のもとで始まった本プロジェクト。どんな形になるやら、いつ動くようになるやら、わかりませんが、少しずつでも夢の実現に近づけていこうと思います。(2021.03.27)
|
プロジェクトの紹介 |
幼い頃から電車かバスの運転士を目指していた私。 大学時代の出会いにより、今でこそシステムエンジニアや学校教員として従事していますが、幼き頃の "将来の夢" も捨てきれず、電車に乗るたび「運転席に座る自分」を想像してしまうのでした。 そんな背景のもとで始まった本プロジェクト。どんな形になるやら、いつ動くようになるやら、わかりませんが、少しずつでも夢の実現に近づけていこうと思います。(2021.03.27)
|
活動ログ(メモ) |
No.7 - ちょっと three.js で(続き) - 2021.09.16
No.6 - ちょっと three.js で - 2021.08.10
ちょっくら寄り道... KTS(仮)
No.5 - OpenBVEの調査(4) - 2021.07.17
かなり期間が空いてしまったが... git clone したソースコードを改めて読み始めた。 とりあえずトップダウンに、エントリポイントを探して、呼び出し階層を追っていくことに。
/source
/OpenBVE
/System
Program.cs ← エントリポイント(Mainメソッドがある)
GameWindow.cs ← ゲームウィンドウの操作に応じた処理が記載されている
MainLoop.cs ← 画面モードの設定、ゲームウィンドウの起動、など
/Graphics
NewRenderer.cs ← Perspective云々(視界設定)
/OpenBveApi
/Math
/Matrix4.cs ← CreatePerspectiveFieldOfView(透視図法、遠近法関連)、CreateOrthographic(正投影)
No.4 - OpenBVEの調査(3) - 2021.03.31
今日はコードリーディング。どこからどんなふうに動いているのか押さえたい。
OpenBVE - Program.cs - Main() // エントリポイント
-> OpenBVE - MainLoop.cs - StartLoopEx() // メニュー画面(路線・車両選択)後の処理
-> Program.currentGameWindow.Run() // ここで展望のウィンドウが立ち上がる?
No.3 - OpenBVEの調査(2) - 2021.03.30
次に、OpenBVEをソースからビルドして、動作確認してみる。
https://openbve-project.net/
-> Download
-> Source Code
このページからGitHubにアクセスし、OpenBVEのソース一式をzipでダウンロード、ローカルで展開してビルドしてみる。 ビルドには Visual Studio 2019 Community を使用した。 いくつかのプロジェクトが含まれているが、見てみると「OpenBVE」というプロジェクトが親玉のよう。 ビルドの順序に気をつけねばならないのか、何度かエラーが吐かれたけれど、あれこれビルドするうちに実行・動作確認ができた。
No.2 - OpenBVEの調査(1) - 2021.03.29
そもそも「OpenBVE」のことについて書いているものの、実際に動かしたことがなかったので、一旦動かしてみることに。
手持ちの Microsoft Surface にインストールして動作させてみると、案外すんなりと正常動作を確認することができた。
また、心配だった「サードパーティのプラグインが正しく動くか」についても試してみたところ、こちらも特に問題なく動いている様子。
OpenBVEすごい...!
No.1 - 本当に実現できるのか(フィジビリティ検証)- 2021.03.28
考えとしては長らく温めていながら、なかなか行動に至らず。考えるのもそこそこ、とりあえず手を動かしてみよう、と活動ログの記録から始めてみます。
現状で抱いているイメージはこんな感じ。
一番嬉しいのは、これに準ずるソフトウェアがすでに提供されていること、なのですが、私の思い描くものは現時点で存在しないようなのです。
(アーケード製品としてバンダイナムコさんの「Train Meister(トレインマイスター)」があります。これが自宅でできれば、ね...笑)
とはいえ、これをイチから開発するのは途方も無いので、
OpenBVE(BVEのオープンソース版。https://openbve-project.net/)を派生させる形で開発できないか、と考えています。
...という具合に夢物語を並べ立てましたが、まずは、本当に実現できるのか(フィジビリティ)の検証から始めます。
ではでは、地道にやっていきましょう。