[Qdemo]
 Qt Demonbane text file viewer for LinuxZaurus (開発中) 2006/05/10〜 

注意
 ※本ソフトウェアはメーカー様とは無関係です。
 ご迷惑になりますので絶対に問い合せないでください。







はじめに

 このページではLinuxZaurusでNitro+の「斬魔大聖 デモンベイン」のテキストファイルを閲覧するための試みを公開しています。

 現在作成中のプログラムはLinuxZaurusで「斬魔大聖 デモンベイン,CD版」のテキストファイルを閲覧するためのソフトです。

 補助的機能としてテキストファイル内で指定されている一部の画像の同時表示やmplayerを使ったBGM再生などを行うことができます。

 SL-A300で動作確認をしています。

 開発初心者なので変なことをやっているかもしれません。ご指導のほどよろしくお願いします。



おしらせ

2006/08/02
  いまさらですが,[Qt 塵骸魔京 text file viewer]


ダウンロード
   Qdemonbane180905a.zip
     BGM再生のためにmplayerにloopオプションを追記しました。

     mplayer -loop 0 -really-quiet サウンドファイル名


内容
   実行ファイル
     Qdemonbane

      ./Qdemonbane [enter] で実行します(./ドットスラッシュをつけてください)。

   ソース
     Qdemonbane???????.cpp
     Qdemonbane.h
     (???????は更新日)

   セーブファイル
     saveQdb.dat

   desktopファイル
     Qdemonbane.desktop
     行方不明にならないようにするためのダミーファイルです。


データ変換用 batファイル + shスクリプト
   QdemoBat180601.zip (2006/06/01)
   Windows98系の動作確認はしていません。


前のバージョン
   Qdemonbane180904a.zip
     コマンド[layer]のカラーコード指定に対応しました。
     コマンド[scroll]の速度(移動量)を2倍にしました。
   Qdemonbane180831a.zip
     コマンド[layer],[scroll]の一部機能に対応しました。
     アルシナリオ9話でフリーズする不具合を修正しました。
     画面中央上付近をタップするとタイトルバーを隠します。
   Qdemonbane180829a.zip
     画面右上付近をタップするとtextWindowを隠します。
   Qdemonbane180828a.zip
     無駄にメモリを消費していた不具合を修正しました。
     起動時にWindowを最大化表示するようにしました。
     その他不具合の修正とQjingai180828a仕様への改善。
   Qdemonbane180723a.zip
     画像のカットインを表示。
     5章の立ち絵(ダッシュするエルザ)が表示できなかった不具合の修正。
     ライカシナリオ(11章?)の選択肢でフリーズしていた不具合の修正。
   Qdemonbane180719a.zip
     サウンドの再生タイミングの変更(ミキシングはしません)。
   Qdemonbane180709a.zip
     立ち絵の表示タイミングの変更。
     ボタンの常時表示を廃止し,画面の左上付近をタップすると主要なメニューを表示させるようにしました。
   Qdemonbane180625a.zip
     改行コード L で変換したtxtデータが読み込めなかった不具合の修正。
     画面のタップに対応(CG Windowのみ反応します)。
     タイトル画像の表示。
     任意の画像縮小率に対応(したつもりだけどSL-C系向けなので未確認)。
     ボタンによるオプション表示。
   Qdemonbane180621a.zip
     SL-A300のQVGA横画面対応。
     ターミナルを横画面モード(ランドスケープ)で起動後,本ソフトを実行してください。
      qpe-rotation, rotate plugin SL-A300用 ,qpe-language,対応フォント(神木様のnagaten)などが必要です。
      SL-A300用 rotation ソフト関連の作者さま。ありがたく使わせていただきます。
   Qdemonbane180614b.zip
     ファイル名に全角英字を含む画像の表示に対応。
     ボタンの入力待ちにキー入力を受け付けてしまう不具合の修正。
   Qdemonbane180608a.zip
     B(:Back log View?)キーで5件前までのテキストを確認できます。
   Qdemonbane180607b.zip
     瑠璃シナリオ13章へ進めない不具合を修正。
     画面揺れ効果修正。
   Qdemonbane180606b.zip
     画面揺れ効果を入れましたが,気持ち良く揺れてないです。
   Qdemonbane180604a.zip
     無駄に画像を書き換えていた不具合を修正。
   Qdemonbane180601a.zip
    ファイルの読み込み方法を変更しました。速くなっているかどうかは不明。
    テキストの最後に”▽”を表示し,キー入力を促すようにしました。
   Qdemonbane180529d.zip
    J(:Jump)キーでメッセージを章の区切りまたは選択肢,分岐点までスキップできます。
    M(:Music)キーを押すことによって,「BGMのみ再生」,「S.E.+BGM再生」,「S.E.+voice再生」モードに切り替わります。
   Qdemonbane180528d.zip
    音声(voice)を再生します。
    saveファイルの形式を変更しました。
    どの選択肢を選んでも他のヒロインシナリオには分岐しない仕様です(未確認)。
    おまけ:Qdemo_vga,SL-C系向け。
    Qdemonbaneにリネームして実行。シナリオ選択後にRキーを2回押して使用してみてください。
    vgaサイズ(80%縮小)の画像に対応したつもりです(未確認)。
   Qdemonbane180525a.zip
     初公開
     おそらく Qtuyo180514a.zip 程度の仕様で動作します。
     フラグを記録,判定しません。
     音声(voice)を再生しません。
     その他いろいろ省略しています。



必要なこと

1. *.pakファイルを展開する。

    bgm, data, image, movie, script, se, voiceファイルを ”ExtractData” 使って展開します。

    bgmとseは同じフォルダ(sound)に入れてください。

    cg\modeフォルダ内のデータは展開しないでください(使用しません)。

    voice.pakのみ「フォルダごと抽出」オプションを使って展開してください。


2. script.pak内の*.txtファイルの圧縮を解凍する。

    ”ExtractData” を使えば自動で解凍してくれます。


3. *.mpgファイルをqvgaサイズに縮小する。

    携帯動画変換君を使用し,[AVIファイル, MPEG4一般設定] で [QVGA標準画質15fpsステレオ] を選択します。


4. 全角ファイル名を半角英数にリネームする。

    リネームするファイル
      bgm, se, image, movie, scriptを展開したファイル。
      (dataとvoiceは全角ファイル名が無さそうなのでそのままでよいです。)


  例: 強制的にリネームしますので必要な方はバックアップをとってから実行してください。

    *.txtファイルのあるフォルダに qdemo.bat と Rename.js を入れる。

    Windowsのコマンドプロンプトを起動。

    *.txtファイルのあるフォルダに移動。

     qdemo.bat txt [enter]   < 変換する拡張子を指定する。

    ファイル名の変換テーブル qdtxt.datが作られます。
    txtフォルダが作られ,リネームされたファイルが txt フォルダに移動します。

    同様に各フォルダに移動し,ogg, wav, avi, png, jpg を変換する。

    qdogg.dat qdwav.dat は結合して qdsound.dat としてください。(エディタでコピペでも可)

    qdpng.dat qdjpg.dat は結合して qdcg.dat としてください。(エディタでコピペでも可)

     copy qdogg.dat + qdwav.dat qdsound.dat [enter]   < コマンドプロンプトで結合する場合

    ファイル名の変換テーブル qd???.dat は文字コードをeucJPに変換してください。


5. *.jpg,*.pngファイルを縮小する。

    SL-A300用は45%(qvga),SL-C系のひとは任意のサイズに縮小してください。

    変換するファイル
       image.pak より展開後,半角英数ファイル名に変換した cg/jpgフォルダ内の *.jpgと cg/pngフォルダ内の *.pngファイル。
       data.pak より展開した dataフォルダ内の *.pngファイル。



   推奨
     α値付きpng対応の高機能グラフィックビューア
     フリーソフト(非商用の個人利用か教育用途のみ。寄付歓迎,のようです)
     FastStone Image Viewer
       http://www.faststone.org/

     それさえもおそらくは平穏な日々
       FastStone Image Viewer の日本語化パッチを公開されています。
       http://hibiheion.seesaa.net/



6. *.txtファイルをeucJPに変換する。

    変換するファイル
       script ファイルより展開した*.txt ファイル,ならびにファイル名の変換テーブル qd???.dat。


  例1:KanjiTranslator.exeを使う。http://www.kashim.com/
  文字コードは eucJP 改行コードは L で変換してください。

  正常に動作しない場合,script ファイルより展開した*.txt ファイルの文字コードを eucJP 改行コードは CRで変換してみてください。


7. 展開したファイルと実行ファイル,セーブファイル,desktopファイルを適切な場所にいれる。


8. mplayer for LinuxZaurusをインストールする。


進展状況について


2006/09/05
   mplayer
    今ごろ mplayerの -loop オプションの使い方を知りました。
     mplayer -loop 引数 サウンドファイル名
     引数:ループ回数,0で無限ループ


2006/08/31
   [layer]と[scroll]
    半透明指定などが実行できないため,前画面付きの背景がscrollしても判らないときがあります。

   その他
    QVGAはtextwindowを隠してから画像表示します。
    フリーズの原因はアルシナリオ9話のテキストが長すぎてバッファに入りきらないためでした。


2006/08/28
   不具合の修正
    いつのまにか「無駄にメモリを消費する病」にかかっていたので修正しました。
    その他,いくつかの処理をQjingaiで使っている仕様に改善しました。


2006/07/23
   画像のカットイン表示の修正。
     実は以前表示できていたのですが,MainWindowに直接描画させるため表示できなくなっていました。

   開発環境が・・・。
     いろいろいじっていたらQVFB用にコンパイルできなくなってしまってしまいました。


2006/07/19
   サウンド再生タイミングの変更について。
     今までvoiceやs.e.が鳴った直後にBGMを再生させていたため,サウンドが途中で切れて聴きづらかった処理を, BGMをすぐに再生させないように変更してみました。


2006/07/09
   立ち絵の表示タイミングの変更について。
     QLabelで画像表示していたときはキー入力待ちになるまで画像が更新されなかったのですが,MainWindowに表示させた場合は即時に更新されるようになりました。
     そこで,今まで立ち絵を3人分読み込む場合,立ち絵の読み込みのたびに(計3回)画像を書き換えていた処理(手抜き)を,立ち絵を3人分読み込んだあとに(1回だけ)画像表示させるように変更しました。


2006/06/25
  大幅に変更したので,不具合も増えたかもしれません。

    1. 画面のタップに対応するためQLabel Widgetに描画していた画像をMainWindowに描画させるようにしました。
      Qtextview WidgetはMouse eventを返さないようなので,CG Windowのみ反応します。
      ちなみに今回とても参考になった文献は「 FreeNoteQt版の開発日記」です。ありがとうございました。
       http://www.urban.ne.jp/home/kanemori/
         Making of FreeNoteQt :http://www.urban.ne.jp/home/kanemori/zaurus/makingfreenote.html

    2. SL-C系の最適な画像サイズが判らないので,タイトル画像のサイズを取得するようにしました。
      任意の画像縮小率に対応したつもりですが確認はしてません。

    3. 時間と勇気が有り余っていたらSL-A300のQVGA横画面に対応しようと思っていましたが,qpe-rotation, rotate plugin SL-A300用などを試してみたらあっさりと実現できてしまいました。
     mplayerで動画を再生できたときも感動しましたが,LinuxZaurusはすごいと思いました。

    4. ボタンによるオプション表示。
      SL-C系のインプットスタイルでは必要ないかも知れませんが・・・。

    5.  テキストファイルの改行コード L 対応。
      たぶん,改行コード L でも動作すると思います。いずれ直そうと思っていて忘れてました。


2006/06/23
  掲示板からの報告より,KanjiTranslator.exeで文字コード変換した場合は,正常に動作しないことが判明しました。 (nkfで変換したデータを使用していたため気付きませんでした。)
  script ファイルより展開した*.txt ファイルの文字コードは eucJP 改行コードは CRで変換してください。
  ファイル名の変換テーブル qd???.datの文字コードは eucJP 改行コードは L でも動作します。
  近日中に修正したいと思います。


2006/06/08
  ボタンを連打してしまってテキストを読み損ねることがあったので,Bキーで5件前までのテキストを確認できるようにしました。


2006/06/07
  画面揺れ効果を入れました。はじめはWindow全体を揺らしていましたが,画像表示しているWindowだけ揺らすように改善しました。
  コンソールへの無駄なテキスト表示をやめたら若干動作が軽くなりました。


2006/06/06
  FastStone Image Viewer でpngファイルを作り直してみました。今のところ特に問題ありません。


2006/06/04
  2,3の画像ファイルを変換してみただけですが,Windows用の画像変換ソフトはFastStone Image Viewerが良さそうです。


2006/06/01
  Windows用の画像変換ソフトを試してみました。
 D-ORDERS!フリー版 で黒いひとを試したときは問題無いと思ったのですが白いところが透けてしまうのがおしい。

 「データ変換用 batファイル + shスクリプト」に65%縮小(520*390)用 qdemo_65.sh (Linux用)追加。


2006/05/30
 手元にNitro+作品があったので動作させてみました。[ Qsaya]

 データ変換方法が読みにくかったので, knoppix関係の説明は別ファイルにしました。


2006/05/29
 ”ExtractData” の最新版がうちのPCで起動できなかったので,QdemoBat180529.zip に Linux用の展開プログラムをつけておきました。
 と,思ったら ”ExtractData” の旧版を公開してくださいました。ありがたい。


2006/05/28
 初めてC言語の2次元配列を使いました。やっぱり配列が使えると便利ですね。

 「データ変換用 batファイル + shスクリプト」に80%縮小(vga)用 qdemovga.sh 追加。また, qdemoeuc.sh 修正しました。

 自分はVine2.6でデータ変換してしまったためknoppixを紹介していますが,より簡単なWindows用変換ソフトがあればそちらを使用したいところです。良いソフトがありましたら教えてください。


2006/06/25
 初公開。
「データ変換用 batファイル + shスクリプト」とWindows2000,knoppix4.02を使って,上に書いてあるとおりに変換したファイルを使用しています。めんどうくさいけどたぶんできます。頑張れ。 < やるひといるのかなぁ・・・。


2006/06/24
 *.pakの展開にはsusie+plaginより[Aurora Wall]の ”ExtractData” が最適であることがわかりました。
 展開だけでなくテキストファイルの圧縮も解除してくれるのが良いです。
  http://atelibet.s11.xrea.com/side_yuu/tool/

 Windowsマシンを使ったの日本語ファイル名の変換はCScriptを使う方法で解決しました。
 変換用にCScriptとbatファイル書きました。

 ファイル名を半角英数に変換できたのでknoppixを使って,euc変換やα値付きpngファイルの変換ができるようになりました。
 変換用にshスクリプト書きました。


2006/05/23
 cygwinやらknoppixやら使ってみたのですが,日本語ファイル名やα値付きpngの一括変換方法などが根本的な解決には至らずQtuyoのほうに逃避していました。Qdemoの開発過程で新しく覚えた命令を使っているので無駄ではないのですが,そろそろこちらを再開したいです。


2006/05/22
 LinuxZaurus用にデータ変換する際にVine2.6相当のLinuxマシンが必要であるため,Windows環境でも簡単にデータ変換できないか検討中です。


スクリーンショット




Windowの中央上付近をタップするとタイトルバーが隠れます。(2006/08/31)
Windowの右上付近をタップするとテキストWindowが隠れます。(2006/08/29)
また,SL-C系と動画再生の互換性を保つため,SL-A300のrotateは以前と逆向きでお願いします。



VGA画面で45%縮小画像表示。(2006/08/28)



QVGA横画面対応(2006/06/21)
J(:Jump)キーでメッセージスキップします。(2006/05/29)



画像表示に関してはQtuyoとほぼ同じ仕様です。(2006/05/25)




別のソフト(2006/05/10)
わかりづらくてすみませんでした。


フォルダ構成(2006/05/24,暫定)


Qdemo(フォルダ名適当)
   ├cg 
   | ├png
   | | └*.png  (α値を維持したまま45%に縮小,ファイル名変更)
   | ├jpg
   | | └*.jpg  (45%に縮小,ファイル名変更)
   | └qdcg.dat (全角ファイル名−>半角英数ファイル名変換テーブル,eucJPに変換)
   ├sound
   | ├ogg
   | | └*.ogg     (ファイル名変更)
   | ├wav
   | | └*.wav     (ファイル名変更)
   | └qdsound.dat (全角ファイル名−>半角英数ファイル名変換テーブル,eucJPに変換)
   ├mpeg
   | ├avi
   | | └*.avi     (動画変換,ならびにファイル名変更)
   | └qdavi.dat (全角ファイル名−>半角英数ファイル名変換テーブル,eucJPに変換)
   ├script
   | ├txt
   | | └*.txt   (ファイル名変更,ならびに文字コードをeucJPに変換)
   | └qdtxt.dat (全角ファイル名−>半角英数ファイル名変換テーブル,eucJPに変換)
   ├data
   | └*.png     (α値を維持したまま45%に縮小,skip.pngが必要です)
   ├voice
   | └*.ogg     (オリジナルのフォルダ通りに展開してください)
   ├Qdemonbane  (実行ファイル)
   └saveQdb.dat  (セーブデータ)


  Qdemonbane.desktop (Homeボタンを押しても行方不明にならなくなる)
   LinuxZaurusの /home/QtPalmtop/apps/Applications に入れる。



参考文献など

URL

Aurora Wall
http://atelibet.s11.xrea.com/side_yuu/
 http://atelibet.s11.xrea.com/side_yuu/tool/
 ExtractData
 Nitro+ の*.pak展開プログラムがあります。
 テキストファイルの圧縮を自動で解凍してくれます。
 また,susieだとメモリ不足で展開できなかった動画ファイルが展開できます。


m-akita's Home Page
http://m-akita.sakura.ne.jp/
 Nitro+系作品のテキストファイルローダを公開されています。
 圧縮されたテキストファイルの解凍方法についてアドバイスをいただきました。


zlib 入門
http://oku.edu.mie-u.ac.jp/~okumura/compression/zlib.html
 comptest.c
 gcc comptest.c -o comptest -lz
 圧縮されたテキストファイルの展開にこちらのサンプルプログラムを使用していました。


ダメ跡地
http://kotone.bunkasha.co.jp/~kenjo/
 http://kotone.bunkasha.co.jp/%7Ekenjo/susie/index.html
 Nitro+ Susieプラグイン
 *.pakを展開しないと閲覧できません。


Soon Hot, Soon Cold
http://pscatterb.exblog.jp/
 http://prudentialscatterbrain.hp.infoseek.co.jp/
 nkf 2.0.6a for LinuxZaurus
 今回はLinuxZaurusで文字コードの変換を行いました。


http://atty.skr.jp/mplayer.html
mplayer for LinuxZaurus
 mplayerが無いと音楽が再生できません。


携帯動画変換君を公開されています。
 http://www.nurs.or.jp/~calcium/3gpp/


frog.raindrop.jp
http://frog.raindrop.jp/
 JScriptの作成にこちらを参考にしました。
 連番の拡張子にリネームするJScript
 http://frog.raindrop.jp/knowledge/archives/000679.html#more


http://hp.vector.co.jp/authors/VA015850/software/
 複数画像の一括拡大・縮小が可能な 「藤 -Resizer- 」を公開されています。
 一括してガンマ補正などの効果をかけることもできます。


kashim.com
http://www.kashim.com/
 文字コード一括変換用ソフト KanjiTranslator.exe を公開されています。
 文字コードは eucJP 改行コードは L で変換してください。


Qt-2.3.2 のドキュメント(日本語)
 http://www.kde.gr.jp/~ichi/qt-2.3.2/
 これが無いと開発できません。
  http://www.kde.gr.jp/~ichi/qtref-ja-2.3.2.tar.bz2
  ドキュメントのアーカイブ


書籍
 Qt GUIプログラミング
 Cの絵本



ご意見・ご感想など

 掲示板かメールでお願いします。
 ※本ソフトウェアはメーカー様とは無関係です。
 ご迷惑になりますので絶対に問い合せないでください。

 Email: ykiys あっとまーく(@) yahoo.co.jp


もどる

C-マンション
Since:2006/05/14