AKAGI Rails

鉄道模型シミュレーターで遊んでいたはずが、気づいたらPythonなども。

VRMNX

「緩和曲線計算機」を公開しました。

VRMのフレキシブルレールで緩和曲線の形を作るための計算機を公開しました。Excelで動作します。直線から徐々に曲率が小さくなるので,曲線への進入がリアルになります。いままでオフ会とかでは配布したことがありましたが,それ以外では初公開です。 緩和曲…

銀釜で銀タキを牽こう

超久しぶりのVRM動画です。まずはご覧ください。どうぞ。 youtu.be 「銀タキ」ことタキ143645号車は、タキ43000形式の中で唯一、ステンレスを用いた銀色の装いとなっています。貨車の中でも分かりやすい「レア車」ということでマニア人気も絶大ですね。高崎…

自作車両PJでなにを考えるべきか

私はこれまでに107系,731系,キハ201系と3車種のVRM自作車両を製作してきました。数は多くありませんが,VRM自作車両の製作PJ(プロジェクト)を計画し遂行していく際に何を考え,実行したかという点を,経験談を踏まえて書き記してみます。 ポリゴンモデル…

イベントのユーザIDを予約します

突然ですが,撮る夫くん と VRMNXの機能拡張パッケージATENXA の内部で使用するため,VRMNXスクリプトで使用するイベントのユーザIDで以下の番号を予約します。 userID = 1060000 ~ 1069999 (撮る夫くん) userID = 1850000 ~ 1859999 (ATENXA) ATENXA…

編成側からセンサー間の距離測定ができるか

VRMNXpyで,2つのセンサー間の距離を,編成側から検測してみたいと思います。 単純な直線距離であれば,センサーの座標から簡単な計算で求めることができますが,線路に沿った距離はそう簡単には求められません。もちろん,丁寧に計算すれば求められますが…

VRMNXpyで名前空間はどうなっているのか

本稿では、VRMNXpyにおける名前空間、すなわちあるオブジェクトが参照されうる範囲(見える範囲=スコープともいう)がどのようになっているのかについて述べていきます。また、その結果として,どのような実装パターンが良さそうか、についても考察を与えま…

自作車両201系気動車の車両テクスチャで遊ぶ

しばらく更新が途絶えていましたが,一応元気にやっています。 さて,昨年リリースした自作車両キハ201系は,VRM5規格ですので当然,車両テクスチャの書き換えに対応しています。(もちろん731系も!) 今回は,自作車両の配布アーカイブに同梱はしています…

ATENXA式イベントの仕組み

前回はatenxa.richeventを使った時限式信号機のサンプルを紹介しました。 akagi.hateblo.jp 今回はその別語として,ATENXA式イベントシステムの仕組みをもう少し詳しく書いていきます。 サンプルコード 昨日の記事からの再掲です。まずはレイアウト。 #LAYOU…

時限式信号機をATENXAで

VRMNXのPythonで,時限式信号機を組み込むサンプルを紹介します。列車通過時に赤,その後所定の時間で黄,青と変化するようなギミックはATENXAを使うと簡単に実装できます。

ATENXA自動踏切,機能を公式にパクられる

とくに申し合わせたわけではありませんが,ATENXA自動踏切の機能がめでたく純正VRMに実装され自動センサーのダイアログから設定することができるようになりました。めでたしめでたし。 akagi-rails.github.io ↓疑惑の公式機能 vrmcloud.net 自動センサーの方…

ATENXA公開しました。

akagi-rails.github.io Discordで先行公開しておりましたが,VRMNXpyで多彩なギミックを実現するPythonパッケージATENXA(アテンジャ,もしくはアテンザ)を公開しました。撮る夫くんに引き続き,githubリポジトリ内で管理しております。 主要な機能 現時点…

VRMNXでスクリーンショットや動画を撮影する

バージョン5までのVRMでは,[F4]キーによるスクリーンショットの撮影・保存機能がありましたが,VRMNXでは廃止になった模様です。 というより,ゲーム自体がスクリーンショットの機能を実装する時代ではそもそもなくなってきているような気がします。Nintend…

VRMNXで使う汎用モジュールをどこに保存するか

(20216/22 修正) 普通のPythonであれば,pipというパッケージ管理ツールで,サードパーティのモジュールやパッケージを使うことができるようになりますが,VRMNXに搭載されているPythonエンジンではそういう便利なことはできません。撮る夫くん などのVRMN…

自作車両第二弾、完結

昨年7/31に先行リリースした731系に加えて、2/01にキハ201系をリリースしまして、自作車両第二弾は一応完結ということになりました。 ブログでの告知がすっかり遅くなってしまいました。 中身についてはVRM Terminalダウンロードページでたっぷりご覧くださ…

VRMNXで大型レイアウトを遊ぶときのJITレンダリングの設定について

VRMNXで、大型レイアウトでビュワーの起動に失敗するケースに遭遇したが、JITレンダリングが原因であった。ことのあらましと解決策について述べた他、JITレンダリングの存在意義について考察を与えた。

信号機を動かしています

信号機を動かすべく,いろいろと書いています。撮る夫くんと同様,シンプルな記述で組み込めることを目標にしています。

Advanced Trackのポイントのまくらぎが気になったので無理矢理直した

Advanced Trackは高精細な作りでレイアウトの見た目をぐっと引き締めてくれますが,見た目上どうしても気になる点があります。 それは, PCまくらぎが使われている 点です。 本来はポイントにPCまくらぎは使わない PCまくらぎというのは,ネジを締め込むため…

VRMNXの時間系イベントが使いにくいなあと思っているアナタへ

実はそんな人いない説 はともかく。 まずはバージョン5以前の時間系イベントとVRMNXpyの時間系イベントの仕様の相違について,Afterイベントを例に見てみましょう。 バージョン5以前のイベントは, //イベントを設定 SetEventAfter Target Method EventID In…

誰も言わない,VRMNXの実はすごいこと

みんな気づいてるとは思うけど,誰も取り上げてくれないVRMNXの画期的な仕様が2点あるので,ここに書き留めておこうと思う。 ひとつめは,ビュワー起動時に車両のない「空の編成」がエラーとならなくなったこと。 ふたつめは,Pythonが元来持っている,(と…

フレーム同期の話

梅雨が長引いているところ関東は今日は久しぶりにしっかり晴れて暑くなりました。みなさんいかがお過ごしでしょうか。VRMNXの操作にも慣れてきたでしょうか。 きょうはまだマニュアル未整備なVRMNXから,「フレーム同期」についてのお話です。レイアウターと…

撮る夫くんNX Ver.3.0.3β

VRMNXむけに再構築された「撮る夫くんNX」です。車両追尾機能がついて実質的な移植作業が完了しました。 撮る夫くんNXの機能 手ブレ機能 被写界深度の簡単スライダー操作 ズーム&首振りの同時操作 車両追尾 撮る夫くん保存機能 被写界深度は一眼レフカメラ…

リスト型をベクトルに見立てて計算したい

いろいろ試していますがVRMNXpyで一向にnumpyが使えません。いい加減やってられないので,リスト型をベクトルに見立てて線形代数の主要な計算ができるコードを用意しました。 vrmapiの命令で使うことが前提なので,クラスを作って演算子をオーバーライドとか…

撮る夫くんNX 追尾機能+α

先日,暫定版で公開した「撮る夫くんNX」の機能強化を進めています。 追尾機能の原型ができました。ビュワーのGUIでリアルタイムに追尾対象の編成・車両を選択できます。先頭車・最後尾だけでなく,中間車の追尾も可能なのは,撮る夫くんならではの機能です…

撮る夫くんNX Ver. 3.0.1 β

こちらは撮る夫くん旧バージョンのリリース記事になります。撮る夫くんの最新版(Ver. 3.0.3)はこちらからどうぞ。 以前からVRM5向けに公開していた「フライスルーカメラ撮る夫くん」を,VRMNX向けに移植しました。 撮る夫くんフォーカスの設定画面,思ったよ…

VRMNXのレイヤーベース地形を使ってみよう(前編)

(5/18 23:43 テクスチャーを修正)(5/19 21:15 一部リライト) VRMNXの新しい機能のひとつに「レイヤーベースの地形」があります。これを使って海のようなシーナリーを試作してみました。 ごらんのように,微妙なグラデーションの塗り合わせができるので表現の…

VRMNXのPythonではイマイチ空が飛びにくい

先日,冗談半分で以下の漫画を紹介した。 どういうことかというと,Pythonというプログラミング言語は,インターネットで様々な「モジュール」が公開されていて,様々な拡張機能を簡単に追加することができるということを言っている。 antigravity(反重力機…

撮る夫くんNX 準備中

VRMNXでも「撮る夫くん」が使えるように,スクリプトを新しく書き起こしています。 撮る夫くんは,VRMビュワーの新たな表現の試みとして,ハンディカメラで撮影した映像が手ブレしているようなカメラの動きをスクリプトを使って模擬したものです。このほか,…

VRMNXでnumpyが使いたい

ベクトル計算をすることを考えると,list型をベタベタ計算するよりは,numpyのほうが便利そうです。 しかしVRMNXのpythonエンジンにはnumpyがインストールされていません。かといって,インストールの仕方も分かりません。 手元のPython3.7環境のsite-packag…

自動踏切モジュール

少し前に作った踏切グループを拡張するクラスを,threadingを用いて遮断機の遅延作動に対応させ,さらに,モジュールとして独立したファイルにまとめました。(VRMNXでのマルチスレッド処理の実装と自作モジュールのインポートについては各記事を参照。) 「…

VRMNXpyでマルチスレッド

<注意: VRM NXは開発途上の段階であり,βテストの経過に伴って仕様変更の可能性がある。本エントリに示す情報は執筆時点でのものである。> (2019/1/23 現在 Ver. 6.0.0.25) Pythonではthreadingモジュールを使用することでマルチスレッド処理を行うことが…