[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 05/09 17:59 / Filesize : 301 KB / Number-of Response : 931
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

▼ノベルゲームツールを作っちゃうぞ!Ver3.0



1 名前:名前は開発中のものです。 [03/07/31 21:37 ID:L/7S/kPx]
ノベルゲームツールを制作中の人達が集うスレです。
新たなノベルツールを作ってやるというチャレンジャー歓迎。

前スレ
▼ノベルゲームツールを作っちゃうぞ!Ver2.0
pc2.2ch.net/test/read.cgi/gamedev/1040118471/

前々スレ
▼ノベルゲームツール作っちゃうぞ!
pc2.2ch.net/test/read.cgi/gamedev/1013170036/

681 名前:167 mailto:sage [2006/08/25(金) 09:38:02 ID:jrxmWGLu]
何か半ば一人でスレ回しているような、いいのかなぁ?(´Д`)
出発まで二時間弱、サンプルを後一つテストしたらうpします('='

682 名前:名前は開発中のものです。 mailto:sage [2006/08/25(金) 10:13:57 ID:jrxmWGLu]
終わったぁっヽ!(;´Д`)ノ

abyss-21.hp.infoseek.co.jp/Release.zip

やはり、見目は以前とは変わっておりません(;´Д`)
変更点としては、
・命令を1種類追加した
・一部の命令に修正を加えた
・ボタン・選択肢の挙動に修正を加えた
・小規模なリファクタリング(主にプラグイン実装に向けて)
といった感じです、次回こそはコンフィグ/セーブ/ロードのUIを実装します(´Д`)

683 名前:167 mailto:sage [2006/08/25(金) 10:15:34 ID:jrxmWGLu]
682=167です、って手が千切れてるっ!?Σ(;´Д`)
それじゃあ旅行に行ってきます、初東京、HEYが私を待っているっヽ(´―`)ノ

684 名前:名前は開発中のものです。 mailto:sage [2006/08/25(金) 13:18:18 ID:Dk+d8Pjf]
いてらさーい&乙!
東京かwwwwすれ違ったら声かけてwwwwwwww

685 名前:名前は開発中のものです。 mailto:sage [2006/08/30(水) 03:01:44 ID:NaGlz63p]
167氏のツールに密かに期待してます
有名所以外の殆どのノベルツールは途中放棄か開発中止
なんで頑張って下さい(´・∀・`)

686 名前:167 mailto:sage [2006/09/01(金) 23:36:04 ID:rkfXRnHT]
>685
有難う御座います、かなり遅々とした進行ですが見守って頂ければと(´Д`)
ゲーム製作と平行して作っていますので、ゲーム製作が崩壊しない限りは多分続きます(笑



しかし、次は何をしたらいいのやら…とりあえず暫定的なUI付けて、.1.0化してしまおうか(´Д`)

687 名前:名前は開発中のものです。 mailto:sage [2006/09/02(土) 10:20:13 ID:eWKt0lWh]
普通委託だろ

688 名前:167 mailto:sage [2006/09/02(土) 16:28:38 ID:Fd1liBPp]
>687
すみませんが、もうちょっとくやしく(´Д`)

689 名前:名前は開発中のものです。 mailto:sage [2006/09/02(土) 16:37:20 ID:z39240xp]
普通委託だろ!!(# ゚Д゚) ムッキー
( `Д´)フォオオオオオオオオオ!




690 名前:167 mailto:sage [2006/09/02(土) 19:55:54 ID:Fd1liBPp]
>689
そのネタ分かる人が居るとはw

でも、全くもって>687の意味が分からないのですが(´Д`)

691 名前:名前は開発中のものです。 mailto:sage [2006/09/02(土) 20:03:36 ID:oesB5Kxd]
おれも作ってみようかな

692 名前:167 mailto:sage [2006/09/03(日) 02:06:45 ID:66Tm+XR+]
>691
是非、宜しければ参加してみては如何でしょうか?(´Д`)















一人ぼっちはいやぁぁぁぁぁぁぁぁぁ!!!(゜Д゜)

693 名前:名前は開発中のものです。 mailto:sage [2006/09/03(日) 18:51:02 ID:eey2yLha]
がんがれw

694 名前:691 mailto:sage [2006/09/03(日) 21:11:21 ID:cU2iM9bL]
>>167
おー
おれ仕事の関係で今日からやっと夏休みなんだよね(´д`)
どこまで出来るか分からんがやってみるか

じつは何度か作ったことはあるけど、途中で飽きたりソース間違えて消しちゃったりで
完成したことないんだ

695 名前:名前は開発中のものです。 mailto:sage [2006/09/04(月) 13:40:50 ID:bi9qwFDh]
あるあるwwwwwww
コンパイラだの構文解析のとこだけ作って満足してしまって
実際に動作する部分は画像処理とか分からなくて丸投げ

696 名前:691 mailto:sage [2006/09/04(月) 17:08:07 ID:LrSgxQcd]
directx初期化とウィンドウ周り、あとアイドリングループを書いた
ゲームは久しぶりなんで牛歩すぐる。。。

どうせ自分で使うんだし、カチカチに構文解析したりしなくてもいいんだよな
むしろスクリプトに不都合があったらフリーズするくらいの勢いでおkと開き直るぜ

697 名前:167 mailto:sage [2006/09/04(月) 22:42:18 ID:/CCmq6NR]
>695
画像処理とかはyaneSDKとかライブラリに任せてしまうのもアリかと(´Д`)
何から何まで作ってたら、それこそOSも自作しなければなりませんし(´Д`)

>691
はじめましたか、頑張ってくださいませ(´Д`)

698 名前:691 mailto:sage [2006/09/05(火) 23:03:17 ID:gvw63Bma]
members3.jcom.home.ne.jp/jellyjam/p/novel1.zip

・タイトル画面
・BGMとSE

のみ!
タイトル画面もスクリプトで定義しようかと思ったけど結局専用クラス作った
スクリプトは HTML のタグっぽくしてみようかな

699 名前:167 mailto:sage [2006/09/05(火) 23:35:14 ID:wZ6FAlYi]
>691
早速見させてもらいました。
おお、Delphi+QuadrupleD使いさんですか。私も使ってた事があるので凄く親近感(´Д`)
お互い、また〜りと頑張っていきましょう(´Д`)



700 名前:167 mailto:sage [2006/09/08(金) 00:35:53 ID:UgywsUje]
意外にプラグイン仕様って面倒なんですね、ほぼ全部作り直しです…orz
やるべき事は分かっているとはいえ、凄く面倒臭いです…安西先生…。

701 名前:691 mailto:sage [2006/09/08(金) 16:58:34 ID:1VBGugvG]
ボタンとかスクロールバーなどのインターフェイスをコーディング中。
単調で楽しい作業じゃないので遅々として進まない。
あと終了画面作った。
members3.jcom.home.ne.jp/jellyjam/img/novel2.png

ところで OGG のデコードに時間が掛かるのか、曲再生と画面が同期しないぜ。
こういう問題ってファイル先読みで簡単に回避できるんだろうけど、
今後スクリプトで曲再生することを考えると、先読みを前提にした
スクリプトってのもどうなのかなって思う(´д`)
たとえば、

 //スクリプト開始時など余裕のあるときに読まなくちゃだめ
 SoundLoad 0, "Hoge.ogg";

 〜色々な処理

 //画像表示と同時にさっき読んでおいた曲を再生
 ImageLoad 0, "Hoge.bmp";
 ImageShow 0;
 SoundPlay 0;

ってやるよりは、

 //バッファにロード
 SoundLoad 0, "Hoge.ogg";
 //バッファに読み込んだ直後に再生できる
 SoundPlay 0;

のほうがわかりやすいよね。
どうしよう・・・
とりあえずゲームの進行上問題があるわけじゃないから後回しにするか。

702 名前:691 mailto:sage [2006/09/08(金) 17:02:43 ID:1VBGugvG]
>>167
ノベルツールでプラグインって珍しいでつね
どういう機能をもたせるのですか?
画面演出とかかな

703 名前:名前は開発中のものです。 mailto:sage [2006/09/08(金) 23:15:14 ID:on10xxCb]
いや、むしろそこじゃなくて
ノベルライブラリでプラグインとは珍しいと小一時間(ry

704 名前:167 mailto:sage [2006/09/09(土) 02:32:07 ID:BEgS0IlO]
>691
拡張命令・画面効果・画面更新等を拡張可能にしようかなぁと(´Д`)
>703
いや、まあ、そうですが…機能は多いに越した事は無いでしょうし(´Д`)

705 名前:691 mailto:sage [2006/09/10(日) 01:30:35 ID:v/7m/wWm]
なかなかすすまん・・・

・終了確認画面
・環境設定画面の一部
・BGMの再生ライブラリを変更

members3.jcom.home.ne.jp/jellyjam/p/novel2.zip

706 名前:691 mailto:sage [2006/09/12(火) 22:46:00 ID:oVDOT1SQ]
チクショー
やっぱり文字描画周りの最適化がうまくいかん・・・
GetGlyphOutline+縁取り文字のコストが大きすぎて描画のたびにループが引っかかる
フォントキャッシュも使ってるのにどうしたらいいのか

縁取りするときって
1:描画したい文字をテクスチャに描き出す
2:まず上下左右斜めの8方向に少しづつずらしながら影となる部分を転送
3:最後に真ん中の文字を転送
ってするのがいいのか、それとも文字を描き出すときにいっしょに影の部分も描いちゃうのか
どっちがいいんだろう
後者はテクスチャ作成のコストは掛かるけど画面転送は一度で済むよな・・・
うーん、キリキリとかってどうやってるんだろう

707 名前:167 mailto:sage [2006/09/14(木) 22:47:04 ID:Mu0alcRU]
両方試してみて、良い方を選べば良いのでは?と駄レス(´Д`)

abyss-21.hp.infoseek.co.jp/Release.zip
プラグイン実装に向けて内部の処理を大幅に変えました…つ、疲れたorz
とりあえず、ソースコードの一括置換機能は慎重に使うべきですね………それだけで、約10日分の作業がロールバックorz

708 名前:691 mailto:sage [2006/09/16(土) 01:02:54 ID:NN0IE0OR]
おk
ノベル部のおおよその青写真は見えてきた

>>707
両方だめな場合はどうしたらいいんだー!!
というわけで第三の可能性に期待

709 名前:名前は開発中のものです。 mailto:sage [2006/09/16(土) 12:11:28 ID:jovjB3vC]
>GetGlyphOutline+縁取り文字のコストが大きすぎて描画のたびにループが引っかかる 
気になったんだが、描画の度にGetGlyphOutline使ってるのか?
画像バッファを別に用意してバッファに縁取り文字を描いた後、描画時には画像を転送してるんじゃ無いのか?



710 名前:691 mailto:sage [2006/09/16(土) 13:27:01 ID:NN0IE0OR]
みなさんこんにちは
無駄に速かったフレームレートを60から30に下げたぜ

>>709
うんにゃ
テクスチャに書き出してるのは一回だけです
その書き出す作業が重いみたい

縁取りの方法でいま試してるのは、
 ペンを太くして、
 StrokeAndFillPathで作業用ビットマップに文字描いて、
 オーバーサンプリングしてアンチエイリアスかけて、
 テクスチャのαチェンネルにコピーして、
 真中にもう一回普通のペンで文字を書く

あんまり綺麗じゃないけど代わりに結構速くなったかも
文字の端が切れてるけどとりあえずキニシナイ
members3.jcom.home.ne.jp/jellyjam/img/huchi,png

711 名前:691 mailto:sage [2006/09/18(月) 02:45:01 ID:iMJQ2DE5]
ああ、休みが終わってしまう
members3.jcom.home.ne.jp/jellyjam/p/novel4.zip

とりあえず形にはなった…かな?
暇をみて手直ししようっと

712 名前:167 mailto:sage [2006/09/21(木) 21:38:12 ID:EwmQaT2V]
>691
私もそろそろ休みが終わりに近付いて参りました(´Д`)

プラグインに対応可能にしておこうと、悪戦苦闘中………STLが使えなくなるのは辛いorz

713 名前:691 mailto:sage [2006/09/23(土) 00:46:18 ID:GaUh6ZuC]
members3.jcom.home.ne.jp/jellyjam/p/novel5.zip

・文字を一文字づつ表示させる
・コンフィグで文字表示速度変更可能にした(効果薄)
・その他いろいろ最適化?

相変わらず文字描画が遅くてぶちきれそうですよ
キーボードのボタン押しっぱなしにして効果をスキップさせるとよく分かる
異常な遅さだ
これ以上はもうおれの手に負えない予感がする
どうしたらいいのか見当もつかん

キリキリなんか文章を早送りしても全然引っかからないのに
ほんと一体どうやってるんだ?????

714 名前:名前は開発中のものです。 mailto:sage [2006/09/25(月) 23:42:47 ID:mUEtTpI8]
ざっと見ただけだけど、Enterキーを押してから縁付き文字を描画してるよな?
画面切り替わり時とかに画像バッファにできるがぎり縁付き文字を描画しておいて後は転送するだけってのはどう?

715 名前:名前は開発中のものです。 mailto:sage [2006/09/26(火) 01:48:00 ID:uC9Pmxg/]
>713
パスカルだからソースは読んでないけど、毎フレーム完全更新してるだろ。
キー待ちで30%、文字が増えるとだんだん増えるとかアリエネー。

Direct3Dでハードウェア使ってるんならともかく、
自前で処理するなら更新量の少ないノベル系は差分更新が基本。

って、Direct3D使ってるのか。
毎フレーム、システムメモリ→ビデオメモリ転送をやってる臭い。

後バックバッファが初期化されてなくて、電脳戦士ポリゴン状態。

716 名前:691 mailto:sage [2006/09/26(火) 23:02:19 ID:5GK4Zf+o]
members3.jcom.home.ne.jp/jellyjam/p/novel6.zip

・ループ内ループを少なくして速度アップ&負荷軽減?
・クリック待ちマーク表示

>>714
うん、こんな感じ
 0: 文字描画先用にでかいテクスチャを用意する
 1: 文字ごとに転送先矩形とα値を持ってて、ループが回るごとにα値を足していく
 2: α値が0以上の文字を全て表示
 3: 表示中の文字のα値が一定に達すると次の文字を作成する(ここが重い)
 4: 文字を全部描画し終わったら一文字づつ表示するのを止めて、でかいテクスチャを一枚表示

> 画面切り替わり時とかにできるがぎり縁付き文字を描画
メインループと文字作成処理を別にするってことだろうか
これをやるとなるとシナリオの先読みが出来なくちゃいけないよな
排他処理とかやった事ないんだけど・・・ちょっと考えてみる


>>715
うーん、確かに画面全体更新してるけど、転送は気になるほどにはコスト掛かってないんだよな
それよりも「文字を作る部分」が致命的に重い
>>714の言うみたいに文字を作るタイミングをどうにかすればどうにかなりそうなんだけど

> 後バックバッファが初期化されてなくて
ええー、D3DDevice.Clearってやつでしょ
入れてるのに・・・
あ、あとCPU占有は直ってると思ふ

長文超スマソ

717 名前:名前は開発中のものです。 mailto:sage [2006/09/27(水) 01:47:02 ID:Lg5LzC0m]
>716
初期色じゃないのか。
でもPresent毎に、画像が表示されていない部分がピンクと緑に交互に点滅する。
Clearの引数が変なのか?

あと文字送り時と待ち時で文字の影が微妙に変化してるのが気になる。

718 名前:691 mailto:sage [2006/09/27(水) 05:45:03 ID:OT3HMnk+]
おはよーう

>>717
> 画像が表示されていない部分がピンクと緑に交互に点滅する。
うーん、もしかしてロゴとタイトルのところかな?
フルスクリーン時に確認できたぴょん。
Zバッファが作成されてないのにクリアしようとした?のでうまくいかなかったのかも

> あと文字送り時と待ち時で文字の影が微妙に変化してるのが気になる
テスト用の画像を読み込んでみたところ、画面描画が斜めに歪んでいるのを確認(´д`;)
テクスチャ座標の指定方法がまずかったみたいだ。
丸め誤差かな〜とも思ったけど、座標をそれぞれ-0.5したら直った・・・ような気がする
ttp://bbx.hp.infoseek.co.jp/cgi-bin/bbx.cgi?log=19&vew=325

言われたところを手直ししてみた。
直ってるといいなぁ。
members3.jcom.home.ne.jp/jellyjam/p/novel7.zip

みんなありがとう
PCは一つしか持ってないので試してくれるとめちゃくちゃ助かる!

719 名前:名前は開発中のものです。 mailto:sage [2006/09/27(水) 14:57:45 ID:Lg5LzC0m]
>718
直リン出来たっけ?直ってない
ttp://gamdev.org/up/img/7683.jpg



720 名前:691 mailto:sage [2006/09/29(金) 05:50:49 ID:QV+p/gWm]
members3.jcom.home.ne.jp/jellyjam/p/novel8.zip

・シナリオファイルにコメントを仕込めるようになった
・ラベルジャンプ実装
・軽めの禁則処理
・環境設定を保存/読み込み
・エフェクトスキップ(ただしシステムエフェクト以外。今のところ背景のクロスフェイドのみ。。)
・文字描画をさらに高速化

>>719
(T∀T)
なんでClearがうまくいかないんだろう?
ポケモソ色になる理由もわからん。。。
普通に
D3DDevice.Clear(1, nil, D3DCLEAR_TARGET, $FFFFFFFF, 1.0, 0);
ってしてるだけなんだけどなぁ
Zバッファもステンシルも作ってないのに何でこれじゃ駄目なんだ?

原因がわからないんで、画面クリアする方法として白いテクスチャを貼るようにした
環境設定の「ソフトウェアクリア」で適用できる
かなりの力技だ・・・

721 名前:167 mailto:sage [2006/09/29(金) 08:10:48 ID:7dA9h7AY]
DLL対応として、黙々とソースコードを書き換え中。
対した成果にもならないのに、御苦労様と自分を褒めてみやがります(;´Д`)

>691
>ポケモソ色になる理由もわからん。。。
一昔前のゲームによく発生した現象ですなぁ、確か同様にDelphi+QuaDで作られたGeoってゲームも発生した筈。
案外、QuaD側の何らかのバグかもしれません。あるいは、ハードウェアとの相性か。

722 名前:名前は開発中のものです。 mailto:sage [2006/09/29(金) 18:06:46 ID:bhyX8J2r]
>720
>D3DDevice.Clear(1,?nil,?D3DCLEAR_TARGET,?$FFFFFFFF,?.0,?);
第一引数が0でないなら、
第二引数には正しいD3DRECT配列をセットする必要が。

環境設定を選択したり呼び出そうとしたりすると、強制終了する。

723 名前:691 mailto:sage [2006/09/29(金) 21:55:49 ID:QV+p/gWm]
>>721
ライブラリってハード等の内部を知らなくても使えるんだけど、
何か問題があったとき何がいけないのかすら分からず困るって今回実感したっす・・・
これまで報告された不具合は、自分の環境では何ともないのもあるんだけどなぁ
ともあれDll対応がんがってください!

>>722
> 第二引数には正しいD3DRECT配列をセットする必要が
おーそうだったのか早速やってみたよ

強制終了については、恐らく文字描画部分においてロックした範囲外に描きこんでいるか、
もしくは画面転送時のテクスチャ座標の不正だと思う。ここじゃないかと思われるところに手を入れてみた。

もしこれでも駄目なら、アプリケーションのログ(AppLog.txt)が出力されるようになってるので、
そのログに「■ TConfiguration を作成し終わりました」って一文があるかどうか確認お願い致します(´д`;)
この一文がなければコンフィグクラスが作成すらされてないようだから問題は文字描画だと思われる。

(テスト用なので余計なファイルを含んでおらず軽いです)
members3.jcom.home.ne.jp/jellyjam/p/novel_test.zip

724 名前:名前は開発中のものです。 mailto:sage [2006/09/29(金) 22:05:02 ID:bhyX8J2r]
>723
00013: TConfiguration を作成します
00014: ■ TConfiguration が TTitle に割り込みました ■
00015: 環境設定背景テクスチャ をパターンNo.7に登録しました
00016: TTitle を削除しました
00017: TConfiguration を削除しました
00018: ■■■ アプリケーションは正常に終了しました ■■■

725 名前:691 mailto:sage [2006/09/29(金) 22:24:50 ID:QV+p/gWm]
>>724
thx
不具合の該当個所が分かったので見直してみる

726 名前:167 mailto:sage [2006/09/30(土) 01:54:31 ID:CWRN1laE]
>691
そこでオススメ、ライブラリの改良ですよ。
ある程度言語に精通していれば、少し位の改良なら可能な筈です。
不具合と思うのなら見つけて修正しちゃいましょう、私もyaneSDKをホイール対応に書き換えましたし。
ただ、注意すべき事としてはライブラリの改良に夢中になって制作が進まなくなってしまうかもしれません。
経験者は語る、ですよ。アハハハハハ('A`)………orz

727 名前:691 mailto:sage [2006/10/01(日) 04:52:48 ID:dnondVMz]
わっかんねー
クリッピングは適正に行われている。不正な範囲への描画はしてないはずなんだ。
そもそもそれが強制終了の理由ならおれのマシンでも落ちてるだろうしなー
そうすると文字描画以前の問題、「そもそもテクスチャが作成できていない」ことも考えられる
もしくは・・・何らかの理由で画像が失われているとか?

>>724さんへ
誠に申し訳ないのですが、さらに詳細なログを吐くものを用意しました
根本的に直ってないと思われますので ”必ず” 落ちると思いますが、試してみてはいただけないでしょうか?
前回のログを見る限り、メモリにゴミは残していないと思われますので、その点では安心ですね(ぉ
members3.jcom.home.ne.jp/jellyjam/p/novel_test.zip

728 名前:691 mailto:sage [2006/10/01(日) 05:03:16 ID:dnondVMz]
>>726
ウヘヘ
QDいろいろ書き換えてますよ

デフォルトだと起動時に自動的にウィンドウモードで起動してしまい、
その後、再度適正なサイズでフォームを初期化しなおさなければならないのでフォームがちらつくんですよね
それがイヤなんで、強制初期化をしないようにしてあります

ともあれライブラリ無しじゃおれのような日曜プログラマがゲーム作るなんて考えられませんね
こんなものがタダで手に入るんですからスバらしい世の中になったものです(しみじみ

729 名前:名前は開発中のものです。 mailto:sage [2006/10/02(月) 01:29:09 ID:UlsNOh/C]
00013: TConfiguration を作成します
00014: ■ TConfiguration が TTitle に割り込みました ■
00015: 環境設定背景テクスチャ をパターンNo.7に登録しました
00016: 文字属性をセットしました
00017: 数字用のをテクスチャを作成しました (256, 32)
00018: 文字0の描画を行います
00019: LockedRect(6, 0, 19, 23)
00020: 文字0の描画が終わりました
00021: 数字テクスチャ をパターンNo.8に登録しました
(略
00056: 文字9の描画が終わりました
00057: 数字テクスチャ をパターンNo.17に登録しました
00058: ボタン ■ゲームに戻る をセットしました
00059: ■タイトルに戻るテクスチャを作成しました (256, 32)
00060: TTitle を削除しました
00061: TConfiguration を削除しました
00062: ■■■ アプリケーションは正常に終了しました ■■■



730 名前:691 mailto:sage [2006/10/02(月) 06:52:30 ID:SjsAmGkd]
>>729
うおおおおおお
超ありがとう
おかげで原因を特定できたと思う!!

選択肢も実装できたんで今夜にでもあぷするね

731 名前:691 mailto:sage [2006/10/03(火) 06:32:43 ID:VF5p6dxQ]
ohayo-

members3.jcom.home.ne.jp/jellyjam/p/novel9.zip

・リターンキーの押しっぱなしを禁止にした
・スキップはコントロールキーで行うようにした
・選択肢を作れるようにした
・ファイル間のラベルジャンプを可能にした
・フレームレートを60に戻した(描画処理は2フレームに一回)
・ゲーム中にF2を押すとタイトルに戻れるようにした
・文字のオーバーサンプリング品質を2x2から4x4にした

強制終了の原因は文字描画じゃなくて、テクスチャをクリアする部分だった
そこで範囲エラーが出てたみたい
見当違いのところを見直してたんだから見つからないわけだ(´Д`;)
これで駄目だったらおれは首を吊ってお詫びするしかないだぜ?

732 名前:名前は開発中のものです。 mailto:sage [2006/10/03(火) 23:33:39 ID:o1GE8YJf]
>731
ソフトウェアクリアにチェックが入っていると、
ロゴからタイトル、タイトルからスタート、の画面切り替わりの一瞬、ピンク(or緑)が出る。
チェックを外してあると問題ない。

733 名前:691 mailto:sage [2006/10/04(水) 23:14:32 ID:kQAZxApl]
>>732
おk、サクッと直したぜ
つか>>722で教えてもらったClearがしっかり機能してるみたいだから、
もうソフトウェアクリアは要らないな

バックログ用のスクロールバーを作ってるんだけど、
ログのページ数によってツマミの大きさが変化するようにしたいなぁ
そうすると、ただツマミの画像を用意するだけじゃ駄目だから、結構骨が折れる・・・

ちょっと商用ゲームの体験版行脚してくる ≡┌| ∵|┘

734 名前:167 mailto:sage [2006/10/05(木) 00:48:01 ID:GiAiv8xj]
>691
進んでいるようで羨ましい限りです、頑張って下さい(´Д`)
こっちは、string→char[]→mystr(自作文字列コンテナ)………全然、進んでる気がしませんorz
STLがDLL←→EXE間で使えればこんな苦労もせずに済むのですがorz

735 名前:名前は開発中のものです。 mailto:sage [2006/10/05(木) 01:09:37 ID:Rdmm7845]
自作文字列コンテナとか作ってないでDLL、EXE間は普通にchar*で受け渡しすればいいんじゃないの?

736 名前:167 mailto:sage [2006/10/05(木) 08:08:52 ID:GiAiv8xj]
>735
関数間のやりとりは勿論それで構わないのですが、
問題は構造体としてデータをやりとりする時なのです(´Д`)
そういう時にはchar[]では足りず、とはいえ互換性やメモリ関係でSTLは使えずorz
という事で、急遽stringと関数名で互換性を持つ自作文字コンテナを作っていたりします。
(c_strとsize、コピーコンストラクタと代入演算子程度なので難しくはありませんが)
で、その変更に伴ってコードのあちこちを弄繰り回しているワケで…どちらかというと、そっちの方に時間がかかっているワケです。

737 名前:名前は開発中のものです。 mailto:sage [2006/10/05(木) 10:10:15 ID:XYVQ+Y1d]
えーと、それはコンパイラが替わるとすぐ使えなくなる糞プラグイン仕様ですか?

738 名前:167 mailto:sage [2006/10/05(木) 18:00:25 ID:GiAiv8xj]
>737
どうでしょう、あるいはそうかもしれません(´Д`)
現状ではSTLをDLL←→EXE間で使わず、データの受け渡しは関数あるいは構造体で行うようにしています。
そしてその構造体は私が定義したもの以外はほとんど使っていません(今調べてみたら、HWNDとRECT位です)
また、アラインメントもソースコード側で設定するようにしています。
しかし、クラスや構造体のメモリ配置が異なるコンパイラ間で一致しているという保証は無いっぽいです。
よって、現状では異なるコンパイラでプラグインが作成できるという保証はありません(´Д`)
(ただ、COMとかの事を考えるとWindowsの標準的なコンパイラ(VC、BCC)はメモリ配置が一致してるっぽいです)
(実際のところ、テストしてみなければ真偽は分からないのですが)

つまるところ、あらゆるコンパイラに対応といった形式は取らない可能性が高いです。
BCCとVCだけに対応してたら良いかな〜、といういい加減かつお気楽思考で。
というか、構造体のメモリ配置すら一致していなければハンドルの受け渡しも出来ないんですが…。
という事で、現状は糞一歩手前プラグイン仕様(仮)です(´Д`)

739 名前:名前は開発中のものです。 mailto:sage [2006/10/05(木) 18:31:29 ID:WFfOZN/r]
吉里吉里のプラグイン機構がなかなか無理矢理で参考になるかもしれない



740 名前:167 mailto:sage [2006/10/05(木) 19:02:45 ID:GiAiv8xj]
>739
めっちゃソースコード多いですね、全部読んでたら人生終わりそうです(´Д`)
とりあえず、プラグイン関係を見させてもらいます。情報提供、ありがとうです(´Д`)

741 名前:691 mailto:sage [2006/10/07(土) 08:59:03 ID:wJ08v4YK]
members3.jcom.home.ne.jp/jellyjam/p/novel10.zip

・バックログできたかも(詳しくはRead Me参照
・文字表示速度がいんちき臭かったので見直した
・ソフトウェアクリア廃止
・一部のシステム用画像を常に保持するようにした

というわけで以前に比べてメモリ喰います。
といってもビビるほど占有したりしないですが・・・。

バックログの文字描画スピードが気がかりだったんだけど、
最適化を繰り返したおかげか、何とか実用に耐えるぐらいにはなってると思ふ。
CPUパワーによっては重く感じるかもしれないんで、ちょっと試してみてくれませんか。

742 名前:名前は開発中のものです。 mailto:sage [2006/10/10(火) 01:14:00 ID:VVRIseRt]
Youその調子でスクリプトじゃなくてGUI化汁!

743 名前:691 mailto:sage [2006/10/11(水) 00:29:21 ID:szAi/qJj]
---------ここからチラ裏

現状報告および開発メモとか愚痴とか

1:ずっと気になっていた文字列の左端が切れる原因がわかった!
縁の幅を考慮してなかったからみたいだぜ
members3.jcom.home.ne.jp/jellyjam/img/text.png

2:MMXによるピクセル操作について
8バイトづつ処理しようとしたらループ内の命令が多くなって逆に遅くなった(´Д`;)

3:LockRect市ね
今までテクスチャ全体をロックしてたんだけど、それよりも必要な矩形だけを
ロックしたほうが速くなるんじゃなかろうかと考えて実践してみた
つまりちょっとした描画ついてもその都度LockRectを呼ぶ事になるわけだが、これがまた逆に重い…
なるべくLockRectを呼ぶ回数を減らすようにしたほうが速いのかも

4:ビットマップのパレットがわかんないんです(><)

ここまでチラ裏--------------

>>742
すみませんよくわかんないです(><)

744 名前:167 mailto:sage [2006/10/11(水) 12:58:19 ID:v5NKuri3]
abyss-21.hp.infoseek.co.jp/Release.zip

アップデートしました、し か し 変 更 点 は あ り ま せ ん ( ; ´ Д ` )
内部仕様を大幅に変更しただけです、しかしこの変更のおかげでプラグインが実装できたかも?
二三日以内に、サンプルのプラグインを作成してうp出来るかもしれません(´・ω・`)

745 名前:167 mailto:sage [2006/10/11(水) 13:04:40 ID:v5NKuri3]
追記
>743
GUI化は専用のエディタを作らなければなりなせんよ、よってスクリプトを先に作るべきかと。

たとえば、Text "発言者名", "内容";という命令があった場合、
Text→発言者名と内容を入力→スクリプトをアプリケーション側が記述といった感じでしょうか。
簡単に言えばホームページ作成ソフトと同じですね、HTMLを弄らなくてもノベルゲームが作れるというか。

746 名前:名前は開発中のものです。 mailto:sage [2006/10/11(水) 13:09:20 ID:9Q/4jY+z]
高機能版Yuuki!を目指しちゃいなYO!

747 名前:691 mailto:sage [2006/10/12(木) 00:23:32 ID:m2DwlIiA]
members3.jcom.home.ne.jp/jellyjam/p/novel11.zip (音なし)

・文字色・フチ色を自由に変更できるようにした
・ホイールの回転で読み進められるようにした
・文字キャッシュの検索方法を変更して高速化?

速度アップのためにいろいろやってみたけど、速くなったんだかなってないんだか・・・
特にメッセージスキップはもっと速くなって欲すぃなぁ
現状を文字で表すなら「ぅおおおおおお・・・・!」だとして、
希望としては「ぅふぬぉおおおおおぉぉぉぉぉお・・・・・!!」ぐらいにはなって欲しい

>>745
エディタかぁ
ゲームよりそういうのを作るほうが好き( ´,_ゝ`)

>>746
同じDelphi製ということで、実は密かに目標・・・というか参考にしてたりして
エディタがユニークだと思う

748 名前:691 mailto:sage [2006/10/12(木) 04:29:15 ID:m2DwlIiA]
members3.jcom.home.ne.jp/jellyjam/p/novel12.zip

すまん、高速化のいい方法を思いついたので上げなおしだ
メッセージスキップがスーパー速くなったかも試練
あと句読点ウェイト入れてみたよ

つーか寝てねーんだよ! 今日も仕事あqswでrftgyふじこlpあzsxdcf
うわあああああああああああああああああああああ

749 名前:名前は開発中のものです。 mailto:sage [2006/10/12(木) 22:55:03 ID:4adqTnrf]
大学生の俺は暇組み、更に学祭中という神イベント発生中。



750 名前:名前は開発中のものです。 mailto:sage [2006/10/12(木) 22:56:06 ID:4adqTnrf]
はい日本語おかしいですね orz
こんな俺は地方駅弁orzorz

751 名前:名前は開発中のものです。 mailto:sage [2006/10/13(金) 19:50:48 ID:DxADPv/2]
時代は私大だ、国立なんて話にならん。

752 名前:691 mailto:sage [2006/10/13(金) 20:39:29 ID:YV5yxr+U]
流れに逆らってすまんが

ゲーム部分に構造的欠陥がみっかったので一部作り直すことにした。
結果として実行速度を落とさず、且つ処理量を大幅に削減することができた。
超すごいぜおれ!

こんな感じ
members3.jcom.home.ne.jp/jellyjam/img/text_test1.png
フチを太くしてみたり
members3.jcom.home.ne.jp/jellyjam/img/text_test2.png
文字間隔を変えてみたり
members3.jcom.home.ne.jp/jellyjam/img/text_test3.png

そんな超すごいおれからみんなに質問があるんだけど・・
吉里吉里にルール画像を使ったトランジションってあるけど、あれどういうふうにやってるんだろう?
ルール画像を参考にして単純にα値を加算していくのかと思ったんだけど、ルール画像を調べてみると
RGB(0, 0, 0)のピクセルがあるんだよぅ このピクセルは加算していっても意味ないよねぇ

753 名前:167 mailto:sage [2006/10/13(金) 22:20:01 ID:0R6SaG7C]
>691
おめでとうございます!…とも言ってられませんなぁorz
私も頑張りませんと(´・ω・`)

下記の話ですが、私もよく分かりません(´Д`)
ただ、トランジションの種類にもよるかと思われます。

・最終的に、「完全」に入れ替わる場合
・一部混合された状態が、「完全」である場合

恐らく上がトランジションの効果だと思われますが、その場合は誤魔化しているのではないかと。
具体的には、α(α値)×a(比例定数)+1みたいな。いや、想像なので答えにならないかもしれませんが。

754 名前:名前は開発中のものです。 mailto:sage [2006/10/13(金) 23:36:08 ID:XAQthbNe]
ソース見てないから判らないけど

alpha = min(max(a + t,0),255)
a : ルールアルファ
t : -255 → 255

こんな感じじゃないの。
Direct3Dでやるのは難しかったような気がする。

755 名前:名前は開発中のものです。 mailto:sage [2006/10/14(土) 02:49:19 ID:QHMCKQ0j]
普通にPixelshaderかな

756 名前:名前は開発中のものです。 mailto:sage [2006/10/14(土) 08:38:07 ID:wDIV82eQ]
>755
ノベルの動作環境にピクセルシェーダを要求なんて、今現在のところギャグじゃね?

マルチテクスチャでSetTextureStageStateを弄ればなんとかなりそう?
もしくはRenderTargetなテクスチャを使ったマルチパスでも可能なのかな?

757 名前:名前は開発中のものです。 mailto:sage [2006/10/14(土) 09:59:35 ID:Tkny+AqF]
www.nhk.or.jp/strl/tvml/japanese/player2/index.html

このくらいはやってくれよ

758 名前:691 mailto:sage [2006/10/14(土) 13:23:33 ID:7hCa6/d9]
おおーすげーレスついてる

>>753-754
> α(α値)×a(比例定数)+1
> alpha = min(max(a + t,0),255)

ふーむなるほど
こんなのよく思いつくなぁ

>>755-756
初めて目にする単語ばかりで頭がクラクラしたけど、最期の力を振り絞って調べてみたよ
ピクセルシェーダって、また別にスクリプト書かなくちゃいけないのか・・・
アセンブラみたいだけどこれまた難しそうだなあ
あと実行環境に縛りがあるみたいだね

マルチテクスチャについては、特にここを読んでみた ttp://platz.jp/~moal/mtexture.html
ああ、えーと? 何が書いてあるのかすら分からないんですが日本語の再勉強からはじめた方がいいでしょうか

うー、この両者はおれにとってはまだ敷居が高そうです
とりあえずPascal+MMXでゴリゴリ書いてみて、それで速度が出ないようなら試してみますー
フレーム毎に全画面書き換えするのが怖くもあるけど、操作するのはαだけだから
それほどクリティカルな速度遅延にはならないはず、と勝手に楽観してます

>>757
ttp://gedo-style.net/g/?v=273092&d=d.jpg

759 名前:名前は開発中のものです。 mailto:sage [2006/10/14(土) 14:31:31 ID:tsJdaQzl]
>>754
>Direct3Dでやるのは難しかったような気がする。
これはギャグのつもりか?
普通にalphaテストで出来るよ。



760 名前:691 mailto:sage [2006/10/14(土) 16:47:20 ID:7hCa6/d9]
members3.jcom.home.ne.jp/jellyjam/p/novel13.zip

うーんできちゃったかもしれん
テクスチャのαチャンネルをクリアあるいは$FFにするためにMMX使ったけど、それ以外はPascal直打ちー
それでも"そこそこ"速度は出てるみたいだ
最適化したらもう少しだけ速くなるかも?

ゲーム中、4回トランジションを行っており、
効果終了までそれぞれ 100, 60, 120, 140 フレームを要するようになってる
命令について詳細は Scenarioフォルダ参照のこと
コントロールキーでメッセージスキップさせちゃうと効果もスキップしちゃうので注意だぜ

ところでZソートがおかしいらしく、文字の描画順がヘンな事に気付いた
まったく、次から次へと問題が見つかるなぁ

761 名前:691 mailto:sage [2006/10/14(土) 17:36:27 ID:7hCa6/d9]
ゲェェーッ文字のα値の計算がおかしい!

一日に何回もすまん、ちょっと修正した
上のリンクに上げ直したよ

762 名前:名前は開発中のものです。 mailto:sage [2006/10/14(土) 20:59:33 ID:NApT4IfZ]
alphatestじゃ滑らかじゃないからヤダヤダ

763 名前:名前は開発中のものです。 mailto:sage [2006/10/15(日) 00:20:45 ID:H7M4nsmQ]
>759
これの一番下こと?
ttp://www.platz.or.jp/%7Emoal/colorkey.html
アルファテストだと描くか描かないかの二択だから、
クロスフェード的な切り替えは出来ないんじゃ?
って意味か>762 書いてて解った。

>760
例によって強制終了。
最初の
_BgDraw Transition

_BgDraw CrossFade
にかえると、
最初のBGを表示するところまで延命するけど文字が出る前に死。

ついでに環境設定も死。

764 名前:名前は開発中のものです。 mailto:sage [2006/10/15(日) 00:35:43 ID:H7M4nsmQ]
>760
ついでに思いつき。
毎回書き換えなくても、
一度ルールアルファを絵に書き込んだのなら、
あとはD3DTSS_ALPHAOPのD3DTOP_ADDとD3DTOP_SUBTRACTで、
頂点カラーの操作だけで出来そうな。

765 名前:691 mailto:sage [2006/10/15(日) 01:06:29 ID:ZmNwMkpc]
一撃死キタ─────(゚皿゚)────────!!!!

もしかしたら LockRect の D3DLOCK_DISCARD が悪さをしてるのかもしれん!
いやきっとそうに違いない!そうだったらいいな
しかし該当する部分で書き換えたのはそこぐらいだものな

D3DLOCK_DISCARD フラグを0にしたテスト版です
例によってログを吐きつつ実行しているので、動作がもっさりするかもしれません
うごけ〜うごぉけぇえ〜
members3.jcom.home.ne.jp/jellyjam/p/novel_test.zip

> D3DTSS_ALPHAOPのD3DTOP_ADDとD3DTOP_SUBTRACT
さっそく調べてみます

766 名前:691 mailto:sage [2006/10/15(日) 02:35:05 ID:ZmNwMkpc]
>>764
SetTextureStageState(0, d3d8.D3DTSS_ALPHAARG1, Dword(D3DTA_TEXTURE));
SetTextureStageState(0, d3d8.D3DTSS_ALPHAARG2, Dword(D3DTA_DIFFUSE));
SetTextureStageState(0, d3d8.D3DTSS_ALPHAOP,   Dword(D3DTOP_ADD));
を設定しつつ頂点色を 0x0〜0xFF へインクリメントしてみた。実行速度は確かに速い!
でも最初にルールのα値をそのまま書き込んじゃうと、白いところが最初から白くなっちゃう(´д`;)
(当たり前だ!)

でもこれ、なんかすごくおしいような気がするぜ
もうちょっと研究してみるか

767 名前:名前は開発中のものです。 mailto:sage [2006/10/15(日) 02:37:25 ID:H7M4nsmQ]
環境設定とトラジ未使用で生存。

1: C:\Work\novel_test\imgs\Bg1.bmp を読み込みました
2: ルール画像 C:\Work\novel_test\imgs\左回り.bmp を読み込みました
3: 背景の描画方法はルール画像によるトランジションが選択されました
4: テクスチャのαチャンネルを塗り潰します...

768 名前:名前は開発中のものです。 mailto:sage [2006/10/15(日) 02:41:11 ID:H7M4nsmQ]
>766
前半はSUBTRACTの255->0で

769 名前:691 mailto:sage [2006/10/15(日) 03:54:36 ID:ZmNwMkpc]
members3.jcom.home.ne.jp/jellyjam/p/novel_test.zip

>>768
でけたー!さいこー
トランジションは直ったかもしれない
ループ内でアンロックしてた・・・
なんでおれのPCはこれで動くんだ? おまえどれだけ頑強なのかと問い詰めたわけだが

環境設定は何がいけないのかわからん・・・
もうちょっと見直しが必要だ



770 名前:691 mailto:sage [2006/10/15(日) 09:18:55 ID:ZmNwMkpc]
みんな落ち着いて聞いてほしい
おれもだいぶ落ち着いてきた

さっき友達からグラボ借りてきてドライバ入れたらWindowsがおかしくなった
そしてOS再起動したら

作 業 し て い た H D D が ぶ っ 壊 れ た

BIOSでも認識しないし電源を入れるとカラカラ音がしてシュゥウウウ・・・っていう
OS入れなおしてみたけどだめだった。なぜかDVD-ROMまで応答しなくなった
なんだこれ
おれがなにをしたっていうんだよ最悪だ
なんでよりによってこのタイミングでこのドライブなんだよ
各種パスワードも2chのログも全部消えたのか
眠くなってきたよパトラッシュ・・・

771 名前:名前は開発中のものです。 mailto:sage [2006/10/15(日) 09:53:53 ID:yU568J+m]
今は、おやすみ

772 名前:名前は開発中のものです。 mailto:sage [2006/10/15(日) 10:19:33 ID:TsWQJW5K]
766,768のやり方は軽くていいんだけどその代わり吉里吉里でいうvague値が使えないから
トランジション用のテクスチャをUSAGE_DYNAMICで作って
CPUでアルファ値を書き換えるってやり方もそのうち試してみてもいいと思うよ

と流れを読まずに下記子

773 名前:名前は開発中のものです。 mailto:sage [2006/10/15(日) 10:51:53 ID:TsWQJW5K]
ついでにSUBTRACTは古いグラボで対応してないのがあった気がするんで
機会があったら調べてみるのもいいかもね

と流r

774 名前:691 mailto:sage [2006/10/15(日) 13:25:52 ID:ZmNwMkpc]
あーもうあったまきた
見てろよこうなったらサーバに残ってたソース使って絶対完成させてやるからな!

ただし明日からな!

>>773
実はおれもその話が気になってた
D3DTSS_ALPHAOPを使ったものと、環境依存のないPascalを使ったものの二種類を用意しておけば問題ないかもな

775 名前:名前は開発中のものです。 mailto:sage [2006/10/15(日) 19:31:36 ID:H7M4nsmQ]
ご愁傷様です。
これに懲りずに頑張れ。

ついでに、これに懲りてバックアップ多めに。

>773
SUBTRACTが駄目でも、MODULATEを使えばそれなりに見せられないかな。

>772
これか。
ttp://devdoc.kikyou.info/tvp/docs/kag3doc/contents/Trans.html
確かに今のやり方だとvagueが最大?で固定されてしまうのかな。
うーん思いつかない。

776 名前:691 mailto:sage [2006/10/17(火) 21:43:49 ID:HTib+2UI]
おいすー

およそ>>760程度にまで復旧できたぜ!
高速スキップ、トランジション、文字色変更、バックログ、ホイール操作、文字キャッシュ検索高速化など。
つーかカスタマイズしたライブラリまで消えちゃって、これを作り直すのに時間を割いたわけだが(´д`;)
まったくおれの集中力と粘り強さには毎度まいど驚嘆させられるよな

とはいえメッセージスキップから復帰すると100%落ちる(!)のでまだうpできねーです・・・
一回作ったんだから何とかなりそうなものだけどなかなかうまくいかないなぁ

>>775
そのページ読んでみたけどvagueって面白いパラメータだね
αを計算するとき、しきい値を考慮すればできるかな?
うーむ、境界がガクガクになりそうな予感・・・

777 名前:691 mailto:sage [2006/10/21(土) 04:53:57 ID:D3IMVVB2]
members3.jcom.home.ne.jp/jellyjam/p/novel14.zip

・ウィンドウ位置を保存できるようにした
・トランジションの実行方法をPascalとDirect3Dの二種類から選べるようにした
・ループ内ループをさらに減らして最適化

負荷ちょっとだけ減りました。スキップ速度はこのくらいあればいいよね?
あー、次は変数と条件分岐か・・・

778 名前:名前は開発中のものです。 mailto:sage [2006/10/21(土) 08:49:29 ID:5+bS6DmJ]
>>691
「指定されたファイルが見つかりません。」ですた……

779 名前:691 mailto:sage [2006/10/21(土) 12:47:23 ID:D3IMVVB2]
>>778
(; ・`д・´)
檄スマソ拡張子間違ってた!
なんかJ-COM垢の機嫌が悪いみたいであっぷろーどできなくなっちゃたから、
ゲムデブにご協力いただくことにしますた
ttp://gamdev.org/up/img/7904.zip

ついでといっちゃあなんだが
タイトルに戻るとき、音を全部消すようにできてなかったので直しといた



780 名前:167 mailto:sage [2006/10/21(土) 20:24:51 ID:veRCNjBt]
御久し振りで御座います(´Д`)
私は現在、プログラマが死後に堕ちるであろうリファクタリング地獄の三丁目に居りますorz
何時終わるのやら………誰かボスケテ(;´Д`)

一応、次回更新時には
・自動改行
・Z座標の実装
・プラグイン仕様の完全実装
を目標に出来たら良いなとか思ってみたりもしないでもないです。

781 名前:名前は開発中のものです。 [2006/10/22(日) 05:29:18 ID:0GnJFT5M]
良スレage






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](;´∀`)<301KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef