Ren’Py紹介

Ren’Pyをいじってみた感想

筆者はRen’Pyと吉里吉里しか知らないのですべて吉里吉里と比較した評価になります。

良い点

  • Pythonが使えます。これの何が利点かといいますと
    • 吉里吉里のTJSと比べると言語機能として多機能かつ見やすく書けます。
    • 本体も大部分はPythonで書かれており、スクリプト言語なのでエンジンのコードを簡単に開発者が変更できますPythonはエンジンの独自言語ではなく、広く使用されている汎用言語なので以下の利点があります
    • 広く使われている言語だけありライブラリがなんでもあります
    • 書籍その他の情報が豊富です
    • Ren’Py 以外にも使えます。特にPythonはそこら中で使用されているので、エクセルやSolidWorks等色々なソフトと連携できるので覚えておくと無駄になりません。
    • Pythonかじっているぞと履歴書に書ける(?)
  • エフェクトもグラフィック分野では汎用的なGLSLで書けます。そこまで必要な場面は少ないでしょうが、”GLSL エフェクト名”で検索すると大抵のエフェクトはコードつきで出てくるのでRen’Pyに移植して色々できます。
  • 言語が多機能でエンジンも大部分純粋なPythonで書かれており、整理された設計のため、吉里吉里より改造が楽です。Ren’Pyのコードを読んで文法書のみでは得心しなかったオブジェクト思考の利点を体感しました。また、元からたいていの機能が付いているのであまりカスタマイズの必要がないです。最近のゲームによくある機能はほとんど搭載済みです。
  • 吉里吉里と比べてユーザーインターフェースの作成がとても楽です。吉里吉里使用時の第一関門は設定画面とかの作成だと思います。Ren’PyではScreen 言語とスタイルでUI(Ren’Pyではスクリーンと呼んでいます)を作成しており、これはほぼHTMLとCSS みたいなものです。
  • 動きのある演出をAfter Effectのような動画編集ソフトの考え方で記述できるのですごく楽、吉里吉里だと面倒くさい上に読みにくい動作も楽ちんです。ATLという機能でこれを実現していて、詳しくはこちらで紹介されています。さらに動画編集ソフトライクに動的演出を作成するライブラリもつくりました(チュートリアルプレイリスト )。時間軸に沿った演出をGUIから作成できるのでアニメーションの作りやすさではかなり優秀なエンジンと呼べるでしょう。
  • 最近はオートリロードなるものが実装されました。これは使用しているスクリプトファイルの更新を感知して自動でリロードして元の位置から再開してくれる機能です。これとロールバックのおかげで変更後すぐに該当シーンを巻き戻して何度もプレイしてデバッグできます。
  • 設定すればエンジン付属のエディタではなくユーザーのエディタで、現在のゲーム位置の行でエディタを開いたり、逆にエディタの現在の行にゲームをジャンプしたりできます。付属でないお気に入りのエディタを使用できます。
  • ロールバックという巻き戻しのような機能が標準で付属しており、開発時にも行ったり来たりが気軽にできます
  • 吉里吉里のように大量のタグを持っていたりしないので、しばらく使っていなくても結構使い方を覚えています。
  • 文法がシンプルで可読性が高い。マクロを最大限活用すると吉里吉里の方がきれいな気もするが、マクロを活用するノウハウはあまり共有されていないし同じエンジンなのにサークルごとに文法が違うようなものなので可読性はむしろ悪い気がする。
  • 開発が盛んで欠点がどんどん減っていく。20年以上続く日刊Ren’Py
  • Win,Linux,Mac,Android, iOSで動作します。Web版も開発中。後Amazon Fire TV とか OUYA とかマニアックな環境に対応していたりします。 luaで動くPSP互換エンジンやswitch版も一応存在する。吉里吉里にも互換エンジンは存在するが、タグの互換まででTJSまでの互換性があるものはなかったはず。
  • 元がpygameなんでアクションゲームも作りやすい。3Dゲーム作っている人もいたし呼び方が分からないがこんなのRPG用のエンジンもあるっぽい。springという3Dゲームエンジンとも連携出来るみたい。
  • オープンソースなので、技術のある人は欲しい機能があれば自分で作ってpull requestできる。
  • 通常のスキップの他、次の選択肢または未読まで高速スキップ(ほぼ瞬間移動)がデフォルトで実装されています。周回するゲームだとあるとないとでストレスが大違いです。
  • 英語圏のソフトですが現在のバージョンでは禁則処理もルビも縦書きも対応しています。v6.99からは日本語入力も出来るようになりました。マニュアルもほぼ100%が翻訳済みです。
  • 非常にぶあつい網羅的なドキュメントがあります。序盤以外はプログラマ向けに書いている節があり、非プログラマにはとっつきづらいかもしれませんが自身の思い通りに細かく動作をカスタマイズしたいとか考え始めるとこれくらい何でも書いているドキュメントの方がありがたいと感じました。
  • steamで多様されていることから多言語化機能、実績、ストア課金システムまで備えています。
  • まさかのユニバーサルデザイン。視覚障害者向けに機械合成でのボイス機能とかハイコントラスト表示とかノベルゲームエンジンにこの手の概念を取り入れる発想はなかったです

悪い点

  • 画面に表示する文字はすべてダブルクォートで囲まなくてはいけない。そのままやると面倒臭いので、何かしら対策したくなるでしょう。
    (ダブルクォートを使わずに台詞を表示する方法)。
  • NVLモード(画面全体に文字を表示するモード, サウンドノベル風)では明示的に改ページしないと文字がはみ出てしまうので注意が必要です。自動改頁スクリプトについて
  • adv(普通のADV)モードでも文字が収まりきらないとメッセージウィンドウのサイズの方が変わる(現行のバージョンではウィンドウサイズはそのままにはみ出ます)。正直エラーにしてくれた方がいいありがた迷惑。これらは共にデバッグ時にはちゃんと報告してくれます。
  • GUIがない->作った ActionEditor3
  • やはり英語が出来た方が情報量は増えます。これくらの英語はこの機会に慣れ親しみましょう。
  • オープンソースなのでクラッカーに弱いです。暗号化は簡易的なもので復号ソフトはすでにあります。もっと強固にしたいならば、外部の暗号化ソフトなりサービスなり探せば多分あります。しかし、どのエンジンも復号ソフトはありますし、クラッカーにはどうあがいても勝てないのでこの方向にこだわるのは不毛かと思います
  • Web版はIOSで動作しない。Safariのバグの問題のようです。iOSでは一見色々なブラウザが使えるように見えて、中身は全部Safariらしいですね。Appleさん厳しすぎ。対応できるかはAppleさん次第です。この部分に他のエンジンも苦労しているようです。
  • IMEに対応していないので日本語入力が出来ない。(次期バージョンで対応予定) v6.99でWindow, Macでの日本語入力に対応しましたが、Linux, iOS, Android, ブラウザでは入力できません。v7.7.3でLinux, ブラウザ版で動作すること確認しました。iOSも動くとのことです。Ren’Py上で動作する簡単な日本語IMEを作成しました(JpInput)。意味解析はしないので単語のみですが、登場人物名とかの入力をする分には十分だと考えます。
  • 通常の履歴代わりにロールバックというビデオの巻き戻しのような特殊なものを採用している。これはこれで便利なのだが戸惑う人も多いよう。通常のテキスト履歴も外部スクリプトで使用可能。 ->現在のバージョンでは通常の履歴も付属しています。
  • ドキュメントはほぼ英語、しかし情報は大体公式サイトに集約されているので調べるのは楽なのは救い。(ほぼ翻訳完了しました。)
  • iphone,ipadで動かない。技術的というよりライセンス的な問題らしい
    (作者は脱獄した機体でなら動作するように開発中とか,後有志の方が普通のiosでも動作するようにRen’iosを開発中らしい、このへんの経緯はよくわからないけど需要があるからそのうち動くようになると思われる。 14/10/18 作者ついに開発開始したみたい。次期バージョンで対応予定) v6.99で対応
  • android版の方もまだまだ開発途中な感じ、ムービーが動かないのはともかくdissolve(トランジションのこと)ができないのは致命的改善されました。
  • タイトル画面でオートセーブされたり、スクリーンショットにメニューが写っていたり、違和感を覚える部分がいくつかありましたが修正コードを本家に送ったのですぐ直ると思います。修正されました。
Pocket

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です