├── .gitignore ├── CHANGELOG.md ├── README.md ├── build.bash ├── pack.bat └── src ├── CacheText.anm ├── CacheText.exa └── CacheText.lua /.gitignore: -------------------------------------------------------------------------------- 1 | bin 2 | src/ver.lua -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | ## 0.8 4 | 5 | - 0.7 の修正後もほぼ見えない濃さで画面に点が描画されていたのを修正 6 | 7 | ## 0.7 8 | 9 | - `文字毎に個別オブジェクト` を有効にしている場合、半角スペースを含むテキストでエラーが起きていたのを修正(contributed by @neofuji) 10 | 11 | ## 0.6 12 | 13 | - キャッシュモードの挙動を変更(contributed by @neofuji) 14 | - `-1` - キャッシュ無効 15 | - `0` - オブジェクトの編集中のみキャッシュ無効 16 | - `1` - キャッシュ有効 17 | 18 | 今までは `0` のときに `キャッシュ無効` でしたが、今後は `オブジェクトの編集中のみキャッシュ無効` に変わります。 19 | 別のオブジェクトの編集を始めればキャッシュが有効になるため、`1` に書き換えなくてもメリットを享受できるようになります。 20 | 21 | ## 0.5 22 | 23 | - キャッシュ掃除アルゴリズムを改善 24 | - 今までは編集中に3秒以上操作しないでいるか、あるいは書き出し時フレームのレンダリングに3秒以上掛かった場合はキャッシュの寿命が切れてしまっていたが、同じレイヤーに同じテキストがある場合は3秒を過ぎても維持できるように変更 25 | - 文章で見てもわからないとは思いますが、キャッシュテキストで文字を表示した状態で全く関係ない別のオブジェクトの位置を移動させたりとかしたときに、操作間隔が3秒以上開いてるとキャッシュを作り直してしまっていたのを修正しました 26 | - AviUtl のメニューから `編集`→`Extram`→`キャッシュ消去` でキャッシュデータを消去した際に、キャッシュテキストの挙動があまり良くなかったのを修正 27 | - 以前はデータに不整合が起きたまま続行していましたが、今後はカーソルを動かすなどで描画が走ると生成し直します 28 | - キャッシュの有効無効を書き換えやすいように前後にスペースを追加 29 | 30 | ## 0.4 31 | 32 | - 空文字列でエラーが出るのを再修正 33 | 34 | ## 0.3 35 | 36 | - `文字毎に個別オブジェクト` に対応 37 | 38 | ## 0.2 39 | 40 | - 空文字列でエラーが起きるのを修正 41 | - テキストの位置を保持するように改善 42 | 43 | ## 0.1 44 | 45 | - 初版 46 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | キャッシュテキスト 2 | ================== 3 | 4 | $VERSION$ ( $GITHASH$ ) by oov 5 | 6 | キャッシュテキストは、生成したテキストを画像としてキャッシュすることで描画処理を効率化する拡張編集用スクリプトです。 7 | 8 | 画像としてキャッシュするため、表示速度を利用したアニメーション、サイズのリアルタイムな変更などのような機能は使用できません。 9 | 10 | 静的なテキストを表示する際の軽量化にお使いください。 11 | 12 | 基本的な使い方は[動画](https://www.nicovideo.jp/watch/sm37598954)を、ダウンロードは [Releases](https://github.com/oov/aviutl_cachetext/releases) の Assets から、更新履歴は [CHANGELOG.md](https://github.com/oov/aviutl_cachetext/blob/master/CHANGELOG.md) を参照してください。 13 | 14 | 動作環境 15 | -------- 16 | 17 | - AviUtl 1.10 18 | - 拡張編集 0.92 19 | - 拡張編集RAMプレビュー 0.3rc7 20 | 21 | 以上が導入されていて、かつ `script` フォルダーに `Extram.dll` がある環境で動作します。 22 | 23 | 既知の問題点 24 | ------------ 25 | 26 | - テキスト本文が同じだと別のテキストオブジェクトになってもキャッシュが切り替わらない 27 | - 本文に何も差異がない場合スクリプトからは区別が付きません 28 | - テキスト末尾に `<#>` を加えるなど、本文に変化を加えれば回避できます 29 | - キャッシュモードを `1` にした状態で `文字毎に個別オブジェクト` を切り替えたときや、一括キャッシュ削除を行った場合にテキストが描画されない 30 | - 状態が切り替わったことを事前に検出する方法がないために起こる問題です 31 | - カーソル移動などでプレビューが更新されると正常に戻るので実用上の問題はないです 32 | 33 | インストール方法 34 | ---------------- 35 | 36 | `exedit.auf` と同じ場所に `キャッシュテキスト.exa` と `script` をコピーすれば完了です。 37 | 38 | 使い方 39 | ------ 40 | 41 | 拡張編集の右クリックメニューから `メディアオブジェクトの追加`→`キャッシュテキスト` を選ぶと、オブジェクトが追加されます。 42 | 43 | `ここにテキストを書く` の部分を書き換えると表示されるテキストを変更できます。 44 | その他のパラメーターも通常のテキストオブジェクトと同じように扱うことができます。 45 | 46 | 1行目にある ` bin/キャッシュテキスト.txt 11 | 12 | # copy script files 13 | sed 's/\r$//' 'src/CacheText.lua' | sed 's/$/\r/' | sed 's/\$VERSION\$/'$VERSION'/' | sed 's/\$GITHASH\$/'$GITHASH'/' > 'bin/script/CacheText.lua' 14 | sed 's/\r$//' 'src/CacheText.anm' | sed 's/$/\r/' | sed 's/\$VERSION\$/'$VERSION'/' | sed 's/\$GITHASH\$/'$GITHASH'/' > 'bin/script/CacheText.anm' 15 | sed 's/\r$//' 'src/CacheText.exa' | sed 's/$/\r/' | sed 's/\$VERSION\$/'$VERSION'/' | sed 's/\$GITHASH\$/'$GITHASH'/' > 'bin/キャッシュテキスト.exa' 16 | -------------------------------------------------------------------------------- /pack.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oov/aviutl_cachetext/d0a5a9ba2c4c93725aee17797bbae1c7ac91b405/pack.bat -------------------------------------------------------------------------------- /src/CacheText.anm: -------------------------------------------------------------------------------- 1 | -- CacheText $VERSION$ ( $GITHASH$ ) by oov 2 | require("CacheText").after() 3 | -------------------------------------------------------------------------------- /src/CacheText.exa: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oov/aviutl_cachetext/d0a5a9ba2c4c93725aee17797bbae1c7ac91b405/src/CacheText.exa -------------------------------------------------------------------------------- /src/CacheText.lua: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oov/aviutl_cachetext/d0a5a9ba2c4c93725aee17797bbae1c7ac91b405/src/CacheText.lua --------------------------------------------------------------------------------