- 1 名前:名前は開発中のものです。 [2007/08/06(月) 19:12:57 ID:CjKwgtC1]
- ノベルゲーム製作ツール吉里吉里/KAGのユーザーが雑談・質問をするスレです。
自作ゲームの進行状況や製作ツールについての話、TJS等の話題もどうぞ。 マルチポストはやめましょう。個人叩きも禁止です。 ※スレで質問をするときは、ドキュメント、スレの過去ログ、公式掲示板のログ、 FAQ、Google等で調べてからにしましょう。 前スレ(その11) ttp://pc11.2ch.net/test/read.cgi/gamedev/1175480292/l50 吉里吉里2/KAG3雑談質問スレ_過去ログ ttp://www.geocities.jp/kirikiri_log/ 吉里吉里ダウンロードページ ttp://kikyou.info/tvp/ 詳しくは>>2-5辺りを参照のこと。
- 197 名前:名前は開発中のものです。 mailto:sage [2007/09/07(金) 20:16:53 ID:y3SMZJhh]
- >>194-196
わかりました。示唆ありがとうございます。 頑張ります。
- 198 名前:名前は開発中のものです。 mailto:sage [2007/09/08(土) 02:37:44 ID:RITYgY6W]
- つーかC++とかjavaとかああいう言語で作った方が楽そうだな。
- 199 名前:名前は開発中のものです。 mailto:sage [2007/09/08(土) 03:16:27 ID:fInbOD0W]
- >>198
C++やJava使うなら、TJS使って吉里吉里を直接叩いたほうがラクだと思う。
- 200 名前:名前は開発中のものです。 mailto:sage [2007/09/08(土) 03:20:35 ID:psxOKq1m]
- >>193
未だに見つけられないけどタイトル間違ってね?
- 201 名前:名前は開発中のものです。 mailto:sage [2007/09/08(土) 03:29:06 ID:92vPEHUG]
- >>200
間違ってるな。 キャプのを見れば?
- 202 名前:名前は開発中のものです。 mailto:sage [2007/09/08(土) 03:36:40 ID:psxOKq1m]
- >>201
キャプにタイトル載ってた悪い
- 203 名前:名前は開発中のものです。 mailto:sage [2007/09/08(土) 03:36:42 ID:92vPEHUG]
- PSP2で動かしたいなぁ
- 204 名前:名前は開発中のものです。 mailto:sage [2007/09/08(土) 04:58:52 ID:Knrt4QsC]
- >>199
TJSで書くとメインループが変態になるし標準ライブラリが無さ過ぎだからそれはない。 LLで書きたいならRubyなり、Pythonなり何でもあるし吉里吉里はKAGありき。 ミドルウェア作る手間が無い上に、ソースいじれるのは相当なアドバンテージ。
- 205 名前:名前は開発中のものです。 mailto:sage [2007/09/08(土) 05:53:10 ID:psxOKq1m]
- 二次元配列(Array)に対して、findを使って添え字を返す事は出来ませんか?
例えばArray[0][5]〜Array[20][5]の中から、aaaという文字が現れる添え字を返す、というような
- 206 名前:名前は開発中のものです。 mailto:sage [2007/09/08(土) 05:57:26 ID:fInbOD0W]
- >>205
多値を返す関数を作りたいって事?
- 207 名前:名前は開発中のものです。 mailto:sage [2007/09/08(土) 06:17:49 ID:psxOKq1m]
- 作りたいというか、例えば
hoge = [0,2,0,4,5,3] とかだと、hoge.find(2)とかで2の入ってる値を返せると思うんですけど hoge = [[1,3], [4,9], [5,10], [7,3]] とかだと、hoge[i][1]の中の10の入ってる添え字を返してほしいと思っても、単純に hoge.find(10) = 2 というようにはいかないので・・・
- 208 名前:名前は開発中のものです。 mailto:sage [2007/09/08(土) 13:35:25 ID:MdoufHni]
- 位置が(3, 2)だからhoge.find(10) => 2は絶対にあり得な様な・・・。
多値を返したいんじゃなくてn次元の深さを考慮したいならループ回せばいいだけじゃない? ただ、外側のインデックスも欲しいなら配列で返さないといけないような気がするけど。
- 209 名前:名前は開発中のものです。 mailto:sage [2007/09/08(土) 13:39:12 ID:92vPEHUG]
- 多次元配列で、一致する値のキーを取り出したって事?
専用関数がないなら、ループが早いかな。
- 210 名前:名前は開発中のものです。 mailto:sage [2007/09/08(土) 13:56:04 ID:GR0gOYSF]
- ループが基本として、
サイズが固定なら設計をかえて1次元配列に格納してしまうというのもありかと。 hoge[y*サイズ+x] の形でつかう。find したあとは y = i / サイズ, x = i % サイズで逆算
- 211 名前:名前は開発中のものです。 mailto:sage [2007/09/08(土) 14:28:35 ID:jV8L49pw]
- 配列で返すのが無難
- 212 名前:名前は開発中のものです。 mailto:sage [2007/09/08(土) 15:54:43 ID:52YGSB/b]
- 検索する回数が多いんであれば、辞書配列と組み合わせてみるとか。
配列に格納するタイミングで辞書配列にも格納するとか。 array[3][2] = "aaa"; なら hash["aaa"] = "3,2"; みたいな(格納方法は色々あるけど) tjsのループは遅いから、メモリを消費したほうが効率がいいかもしれない。
- 213 名前:名前は開発中のものです。 mailto:sage [2007/09/08(土) 22:31:06 ID:NNwR9/3A]
- 配列hogeの中身自体は配列objectだからそりゃfindじゃ探せない
内容である[5,10]の中のポインタなり文字列表現なりをfindに放り込まないと駄目だな 暇だしちょっと多元配列の中身探す関数でも書いてみるか少しかかる >>208 indexは0から始まるから[5,10]のindexは2であってる hogeが外側でhoge[n]はむしろ内側な気がするんだが
- 214 名前:名前は開発中のものです。 mailto:sage [2007/09/08(土) 23:00:27 ID:NNwR9/3A]
- //こんな感じか
//ポイント //配列はArrayクラス(型)のオブジェクトである //tjsの多元配列はArrayオブジェクトを要素として持つ配列に過ぎない function recursiveFind(array, value) { for(var i = 0; i < array.count; i++) { //お馴染み配列要素ループ if(array[i] == value) { //配列内要素が検索値と一致する場合 //インデックスを配列に格納して返す return [i]; } if(array[i] instanceof "Array") { //配列内要素が子配列であった場合 //子配列を対象に再帰 var result = recursiveFind(array[i], value); if(result instanceof "Array") return result.insert(0, i); } } return -1; //検索値valueが見つからない場合は-1を返す }
- 215 名前:名前は開発中のものです。 mailto:sage [2007/09/08(土) 23:17:10 ID:NNwR9/3A]
- //階層化された辞書配列にも対応するとなると面倒だな
function recursiveSearch(object, value) { if(object instanceof "Array") { for(var i = 0; i < object.count; i++) { if(object[i] == value) return [i]; var result = recursiveSearch(object[i], value); if(result instanceof "Array") return result.insert(0, i); } }
- 216 名前:名前は開発中のものです。 mailto:sage [2007/09/08(土) 23:17:42 ID:NNwR9/3A]
- //続き
if(object instanceof "Dictionary") { //辞書配列を配列に展開する時に //添え字の降順で展開されるのを保障しないと駄目だけどメンドイ var dicarray = [].assign(object); while(dicarray.count > 0) { if(dicarray[1] == value) return [dicarray[0]]; var result = recursiveSearch(dicarray[1], value); if(result instanceof "Array") return result.insert(0, dicarray[0]); dicarray.erase(0); dicarray.erase(1); } } return -1; }
- 217 名前:名前は開発中のものです。 mailto:sage [2007/09/08(土) 23:22:22 ID:NNwR9/3A]
- 動作チェックしてねー
うまく動かないときの修正は自分で何とかしてください 返り値の配列には hoge = [[1,3], [4,9], [5,10], [7,3]] に対して recursiveFind(hoge, 10)の場合は[2,1] recursiveFind(hoge, 3)の場合は[0,1] hoge = [%["a"=>1,"b"=>3], %["c"=>4,"d"=>9], %["e"=>5,"f"=>10]] に対して recursiveSearch(hoge, 10)の場合は[2,"f"]が返るハズ
- 218 名前:名前は開発中のものです。 mailto:sage [2007/09/09(日) 04:03:47 ID:qk5Qqg96]
- >ID:NNwR9/3Aさん
ありがとうございます、早速試してみたのですが recursiveFindの方は、if(array[i] instanceof "Array") {〜の所が上手く動いていないようで エラーにはならないものの値が帰ってきませんでした。(-1も帰ってこない) recursiveSearchの方は、while(dicarray.count > 0) {の所でエラーが出てしまいました。 自分ではちょっと分からないので、とりあえずこのままにしておきます。 わざわざ済みませんでした。
- 219 名前:名前は開発中のものです。 mailto:sage [2007/09/09(日) 10:55:56 ID:gBJvuiSC]
- //はーい、array.insertは値を返さないのが原因でしたね
//これでおk //recursiveSearchも手直しするか function recursiveFind(array, value) { for(var i = 0; i < array.count; i++) { //お馴染み配列要素ループ if(array[i] == value) { //配列内要素が検索値と一致する場合 //インデックスを配列に格納して返す return [i]; } if(array[i] instanceof "Array") { //配列内要素が子配列であった場合 //子配列を対象に再帰 var result = recursiveFind(array[i], value); if(result instanceof "Array") { result.insert(0, i); return result; } } } return -1; //検索値valueが見つからない場合は-1を返す }
- 220 名前:名前は開発中のものです。 mailto:sage [2007/09/09(日) 11:10:27 ID:gBJvuiSC]
- function recursiveSearch(object, value) {
if(object instanceof "Array") { for(var i = 0; i < object.count; i++) { if(object[i] == value) return [i]; var result = recursiveSearch(object[i], value); if(result instanceof "Array") { result.insert(0, i); // return result; //ココが原因でvoidが返ってた } } }
- 221 名前:名前は開発中のものです。 mailto:sage [2007/09/09(日) 11:12:37 ID:gBJvuiSC]
- if(object instanceof "Dictionary") {
//辞書配列を配列に展開する時に //添え字の降順で展開されるのを保障しないと駄目だけどメンドイ var dicarray = []; // dicarray.assign(object); // Array.assignも値を返さなかった while(dicarray.count > 0) { if(dicarray[1] == value) return [dicarray[0]]; var result = recursiveSearch(dicarray[1], value); if(result instanceof "Array") { result.insert(0, dicarray[0]); // ココが原因でvoidが返ってた return result; } dicarray.erase(0); dicarray.erase(0); //配列の短縮処理が間違ってた } } return -1; }
- 222 名前:名前は開発中のものです。 mailto:sage [2007/09/09(日) 22:51:06 ID:BYjQlIfL]
- そろそろうざいから消えろよ^^
- 223 名前:名前は開発中のものです。 mailto:sage [2007/09/09(日) 23:06:00 ID:RII2Su3r]
- 半日もレス付いてないんだから黙ってれば良いだけだろ。
自分で蒸し返してどうする。
- 224 名前:名前は開発中のものです。 mailto:sage [2007/09/10(月) 03:18:17 ID:9r8dLBdh]
- >>223
さらに煽りたいだけだから無視するんだ
- 225 名前:名前は開発中のものです。 mailto:sage [2007/09/10(月) 07:12:58 ID:HRJrQ8HB]
- >>ID:gBJvuiSCさん
新しい記述の方で、思っているような二次元配列からの指定の値の位置を取得できました。 お手間をお掛けしまして本当にありがとうございました。
- 226 名前:名前は開発中のものです。 [2007/09/10(月) 22:58:59 ID:0vTzkYhX]
- すいません。
KAG上でTJSを使って背景レイヤに画像を読み込む方法が分かりません。 [iscript] kag.fore.base.loadImages("画像ファイル.jpg"); [endscript] というソースを記述したのですが、なぜか動きません。 「メンバ"mode"が見つかりません」というエラーが出るのです。 どなたか分かる方がいらっしゃればご指導ください。
- 227 名前:名前は開発中のものです。 mailto:sage [2007/09/10(月) 23:28:53 ID:HRJrQ8HB]
- kag.fore.base.loadImages(%[storage:'画像ファイル.jpg']);
- 228 名前:名前は開発中のものです。 [2007/09/11(火) 09:41:44 ID:5Ce72Rks]
- >>227
ありがとうございます。本当に助かりました。 「%[storage:」という記述は初めて見る記述です。 改めて自分の勉強不足を思い知らされました。 本当にありがとうございました。
- 229 名前:名前は開発中のものです。 mailto:sage [2007/09/11(火) 11:55:35 ID:u7yp+b2J]
- xyzzyの吉里吉里モードとかって需要あるん?
自分用にキーワード色分けとかしてみたけど。 こういうのってどこに持ってけばいいのかな。
- 230 名前:名前は開発中のものです。 mailto:sage [2007/09/11(火) 12:26:16 ID:fpRLOyRS]
- ここなりWikiなり自分のサイトなり
- 231 名前:名前は開発中のものです。 mailto:sage [2007/09/11(火) 14:19:34 ID:4dHR8dw4]
- >>228
TJSリファレンスの「オーバライド」の部分と、AnimationLayer.tjs の function loadImages() と、 これまたTJSリファレンスの「式中辞書配列」の部分をよむべし
- 232 名前:名前は開発中のものです。 mailto:sage [2007/09/11(火) 14:20:16 ID:4dHR8dw4]
- >>229
JScript モードでわりとしのいでるけど property をちゃんと処理してくれるならうれしいのでどっかあげとくれ
- 233 名前:名前は開発中のものです。 mailto:sage [2007/09/11(火) 14:44:18 ID:2O9Ni67C]
- NoEditer用のなら作ったぜ。適当だが。
- 234 名前:名前は開発中のものです。 mailto:sage [2007/09/11(火) 15:01:41 ID:fpRLOyRS]
- >>219-221
の関数使ってみたけど、これvalueの値が文字列('テスト'みたいな)だと値が返ってこないな
- 235 名前:名前は開発中のものです。 mailto:sage [2007/09/11(火) 17:05:40 ID:VpoQYryg]
- 状況をもう少しkwsk
16:59:20 コンソール : tf.hoge = [ ["文字列1","文字列2","文字列3"], [3,5,6], ["文字列7",8,"文字列9"]] = (object)(object 0x05156FC4:0x05156FC4) 17:00:00 コンソール : recursiveFind(tf.hoge,"文字列9")[0] = (int)2 17:00:02 コンソール : recursiveFind(tf.hoge,"文字列9")[1] = (int)2 17:02:35 コンソール : tf.hoge = [ %["辞書A"=>"文字列1","辞書B"=>"文字列2","辞書C"=>"文字列3"], [3,5,6], %["辞書G"=>"文字列7","辞書H"=>8,"辞書I"=>"文字列9"]] = (object)(object 0x0516AFC8:0x0516AFC8) 17:04:07 コンソール : recursiveSearch(tf.hoge,"文字列9")[0] = (int)2 17:04:09 コンソール : recursiveSearch(tf.hoge,"文字列9")[1] = (string)"辞書I"
- 236 名前:名前は開発中のものです。 mailto:sage [2007/09/11(火) 17:17:57 ID:fpRLOyRS]
- >>235
ごめん俺の勘違いというかミスだったマジごめん
- 237 名前:名前は開発中のものです。 mailto:sage [2007/09/12(水) 11:28:24 ID:PQsSXN1S]
- 昔ウィンドウズ98でKAG writerでゲームを作っていて、HDDが飛んだ
それ以来ショックで作っていなかったが、近頃また作りたくなってきた …と思って探してみると、なんとKAG writerの配布はとっくに終了していたと…orz なんでもバックアップはちゃんととらなイカンね ……今、KAG writerを手に入れる方法はない となると、使い心地の近いソフトが欲しくなる。そんなのってあるのかな?
- 238 名前:名前は開発中のものです。 mailto:sage [2007/09/12(水) 12:21:52 ID:Vz6XBwPC]
- >>237
web.archive.org/web/20030623141331/http://funnytaste.cool.ne.jp/factory/html/kirikiri.html あ、あんたのためなんだからねっ!!
- 239 名前:名前は開発中のものです。 mailto:sage [2007/09/12(水) 13:00:33 ID:x12SJbVP]
- KKDEの作者さんここ見てたら
テキスト表示部分の背景色や文字色を変えられるようにしてくれー 真っ白は目に痛い
- 240 名前:237 mailto:sage [2007/09/12(水) 13:55:01 ID:jrC4Igcl]
- >>238
おおおおおおおおおおおぉ………( ;ω;) ありがとう、マジにありがとう。涙が出かけたよ!本当にありがとう!!! id変わってるが気にしないでくれ、じゃあ早速弄くってくるけぇのノシ
- 241 名前:名前は開発中のものです。 mailto:sage [2007/09/12(水) 14:40:04 ID:DqdGyjjF]
- >>238
なんというデレデレ。
- 242 名前:名前は開発中のものです。 mailto:sage [2007/09/12(水) 21:50:46 ID:0XzX2c3C]
- >>239
configフォルダ内にあるKAG3-Mode.xshdを開いて colorもしくはbgcolorのところの設定値を変更すれば色が変わるよ。
- 243 名前:名前は開発中のものです。 mailto:sage [2007/09/13(木) 08:33:48 ID:Rz/1lt4j]
- >>242
本当だ、変更できた でも形式が0xじゃないからやりにくいな、設定で自由に変更できるようになれば かぐや姫Studioからの乗り換えも考えられるんだけどなあ
- 244 名前:名前は開発中のものです。 mailto:sage [2007/09/13(木) 09:09:34 ID:KPm+hwRS]
- >>243
そんなの、tjsつかって簡単なフロントエンド書けばよくね?
- 245 名前:名前は開発中のものです。 mailto:sage [2007/09/13(木) 11:13:00 ID:JgBvJqpA]
- セーブデータの削除もうちょっと簡単になってほしい
最早意味が分からないぜ
- 246 名前:名前は開発中のものです。 mailto:sage [2007/09/13(木) 12:12:44 ID:BMsvnmJo]
- >>238
横からいただいた! ありがとうっ 実は前スレでかぐや姫から吉里吉里を起動できないという相談をした者なんだが、 あれからやっぱり問題解決しなくて、ストレスためた結果吉里吉里からはなれてたんだよね。 これつかったら起動したわ。 本当にたすかった。 重ね重ねありがとう。 そしてかぐや姫よ、さらば!
- 247 名前:名前は開発中のものです。 mailto:sage [2007/09/13(木) 18:14:30 ID:wvYbB4ep]
- >>245
プラグイン無しの吉里吉里はそもそもファイル削除自体が不可能だから KAG側が残してるしおりファイルへの参照だけを消して ファイルはあるけど読めない、って状況を作ってるだけなのが現状 ファイル削除が不可能なのは悪意のあるスクリプトを簡単には書けないようにする為の方策なので まぁ仕方ないと思って慣れるしか無いと思うぞ
- 248 名前:名前は開発中のものです。 mailto:sage [2007/09/13(木) 22:14:48 ID:8GXfwQZV]
- File IOすら出来ないっていうのはスクリプト言語として使いづらいがな。
現状LLじゃなくてDSLだから仕方ないか。
- 249 名前:名前は開発中のものです。 mailto:sage [2007/09/14(金) 00:22:17 ID:8bPP6NVF]
- 上書きできるんだから削除不可の意味ねえ
- 250 名前:名前は開発中のものです。 mailto:sage [2007/09/14(金) 04:16:45 ID:wz5roroX]
- そういう話じゃないだろ
- 251 名前:名前は開発中のものです。 mailto:sage [2007/09/14(金) 10:32:09 ID:LrRMixVS]
- >>250
>>247の ファイル削除が不可能なのは悪意のあるスクリプトを簡単には書けないようにする為の方策 これはないって話じゃ?そもそも shellExecute できるし。 単にニーズが(その時点で)なかったから作られてないだけだと思う。
- 252 名前:名前は開発中のものです。 mailto:sage [2007/09/14(金) 18:55:46 ID:/mGNcP3a]
- 悪意のあるスクリプト云々は247の妄想だな。
- 253 名前:名前は開発中のものです。 [2007/09/14(金) 20:43:11 ID:W4a2wkW4]
- ShellExecuteでformat c:\走らせればいい話
- 254 名前:名前は開発中のものです。 mailto:sage [2007/09/14(金) 20:58:13 ID:VOdlxPCf]
- >>253
それじゃフォーマットできない
- 255 名前:名前は開発中のものです。 mailto:sage [2007/09/15(土) 01:50:46 ID:xZ3SJDHD]
- ファイル削除よりシェルのコマンド走らせる方がよほど危険な気がする。
- 256 名前:名前は開発中のものです。 mailto:sage [2007/09/16(日) 07:07:21 ID:L18c5VTd]
- 実のところ吉里吉里からシェルコマンド実行って可能なのか?
System.shellExecute("command","/c ren c:\python25 python") こーいう構文も実行成功は返るけど結果は反映されないし
- 257 名前:名前は開発中のものです。 mailto:sage [2007/09/16(日) 07:19:22 ID:L18c5VTd]
- すまんNT系だとcommandじゃなくてcmdだな
どのみちうまくいかないけど
- 258 名前:名前は開発中のものです。 mailto:sage [2007/09/16(日) 07:33:43 ID:mikIfmHg]
- >>256
それ用のプログラム組めば? なぜ吉里吉里に拘るのかはわからないが
- 259 名前:名前は開発中のものです。 mailto:sage [2007/09/16(日) 08:02:35 ID:YnGZFcp2]
- 単に \ をエスケープしてないだけだろ
- 260 名前:名前は開発中のものです。 mailto:sage [2007/09/16(日) 08:31:25 ID:L18c5VTd]
- 。 。
/ / ポーン! ( Д ) 我ながら酷い凡ミスだな
- 261 名前:名前は開発中のものです。 [2007/09/16(日) 12:05:24 ID:RmO/I0qi]
- for文的なタグを作れないかと思ってまずifやendifがどうなっているのか見ようと思ったんですが
MainWindow.tjsのタグハンドラ群には記述されていませんでした これらってなんか特殊なんでしょうか?
- 262 名前:名前は開発中のものです。 mailto:sage [2007/09/16(日) 12:43:04 ID:tmcqWJJh]
- >>261
その辺は組み込みタグだよ リファレンスのKAGParser→getNextTagの項を参照
- 263 名前:名前は開発中のものです。 mailto:sage [2007/09/16(日) 13:15:02 ID:RmO/I0qi]
- >>262
ありがとうございました!
- 264 名前:名前は開発中のものです。 mailto:sage [2007/09/16(日) 20:16:19 ID:JalQ3AgQ]
- >>261-263
うわ、ksファイルのフォーマットをお遊びでxmlベースにしてインタプリタ書くときに設計をCPU模倣したら スクリプト書いてるのにやたらと低レベルな単語・低レベルな処理だらけで 胃に穴が空くかと思ったときの事思い出した・・・orz フォーマットが違うせいでKAGParserのソース読んだけど使い回せる部分が全然なかったんだよなぁ。
- 265 名前:名前は開発中のものです。 mailto:sage [2007/09/16(日) 21:05:16 ID:yKK+KnS+]
- >>258
吉里吉里をけなされたと勘違いして、過剰反応しちゃった君発見!
- 266 名前:名前は開発中のものです。 mailto:sage [2007/09/16(日) 21:07:59 ID:YnGZFcp2]
- まだまだ暑いねえ
- 267 名前:名前は開発中のものです。 mailto:sage [2007/09/16(日) 21:30:53 ID:XWUf9YCQ]
- 吉里吉里で出力すると文字コードはutf-16ですよね?
これを吉里吉里でutf-8に変換する事ってできませんか?
- 268 名前:名前は開発中のものです。 mailto:sage [2007/09/16(日) 23:18:38 ID:kjXIzAy2]
- utf-16→utf-8の変換テーブル書けばいいじゃん
- 269 名前:名前は開発中のものです。 mailto:sage [2007/09/16(日) 23:31:57 ID:yKK+KnS+]
- テーブルてアホか。
- 270 名前:名前は開発中のものです。 mailto:sage [2007/09/16(日) 23:40:36 ID:u+SFAOkd]
- >>267
ttp://www.exfiction.net/~nojimake/jswh/jswh11.html この辺のjsファイルを参考に。
- 271 名前:名前は開発中のものです。 mailto:sage [2007/09/16(日) 23:47:10 ID:XWUf9YCQ]
- 答えてくれた方ありがとうございます
頑張って自分で書いてみたいと思います ですが吉里吉里でLatin-1コード?に直す方法が分かりません・・・ 参考になるサイトなど無いでしょうか?
- 272 名前:名前は開発中のものです。 mailto:sage [2007/09/17(月) 14:50:29 ID:Kap87Mh5]
- 質問させてください。
メッセージレイヤーに黒板の画像を当てはめ、それを半透明で表示させましたが、透ける事には透けましたが、かなり白っぽくなってしまいました。 kagの問題か、それともpng画像の問題かもわかりません。 なんらかの合成方法が問題だとは思うのですが……。 よろしくお願いします。
- 273 名前:名前は開発中のものです。 mailto:sage [2007/09/17(月) 14:54:09 ID:EyLNDmvj]
- >>272
重ね合わせの方法を変えればいいんでないの? それか下に白っぽい色がついてるとか?
- 274 名前:名前は開発中のものです。 mailto:sage [2007/09/17(月) 15:09:00 ID:Kap87Mh5]
- >>273
下に白はついていないと思います。 重ね合わせの方法というのは絵画ソフトの方でするのですよね? Paint,NETというのを使い、レイヤーのプロパティで不透明度をいじったのですが、前述のようになりうまくいきませんでした。 予想としては、モードで乗算(これが重ね合わせの方法?)をすればいいのかもしれないのですが、このソフトには機能が無く、またそれをしてうまくいくのかもわかりません。 GIMPも見てみたのですが、こちらは操作方法が複雑で手間取っています。
- 275 名前:名前は開発中のものです。 mailto:sage [2007/09/17(月) 15:11:58 ID:EyLNDmvj]
- >>274
>絵画ソフトの方でするのですよね? いや、吉里吉里側で重ね合わせ方法の指定って出来たような… 今手元にマニュアル無いんではっきりとは言えないけど。
- 276 名前:名前は開発中のものです。 mailto:sage [2007/09/17(月) 15:18:27 ID:VeEL1ghH]
- >>274
元の黒板の画像と不透明度をいじったpngの画像をあげてみ
- 277 名前:名前は開発中のものです。 mailto:sage [2007/09/17(月) 15:18:49 ID:Kap87Mh5]
- >>275
config.tjs又はpositionタグで枠画像を指定した場合、opacityが使えないそうです。 >opacity no 不透明度 ( 0 〜 255 ) メッセージレイヤの不透明度を 0 〜 255 の数値で指定します(文字の不透明度や、レイヤ自体の不透明度ではありません)。0 で完全に透明です。frame に "" を指定したときに有効です。 とマニュアルにありました。
- 278 名前:名前は開発中のものです。 mailto:sage [2007/09/17(月) 15:20:37 ID:EyLNDmvj]
- >>277
opacityじゃなく、乗算とかそういうの調べてみて
- 279 名前:名前は開発中のものです。 mailto:sage [2007/09/17(月) 15:49:37 ID:Kap87Mh5]
- >>276
元 www.uploda.org/uporg1022191.png.html 加工 www.uploda.org/uporg1022185.png.html です。 再現に手間取って遅れてしまいすみません。 >>278 imageタグにしかmode指定がなく、そこでしか乗算の指定がありませんでした。 おそらく枠画像を使ったメッセージレイヤでは透過モードの指定ができないのだと思います。
- 280 名前:名前は開発中のものです。 mailto:sage [2007/09/17(月) 16:05:04 ID:VeEL1ghH]
- >>279
ちゃんと透過はできてるね うちではちゃんと下の色が透けたよ そのpngの下にしく画像が真っ白とかいうオチじゃないよね?
- 281 名前:名前は開発中のものです。 mailto:sage [2007/09/17(月) 16:08:47 ID:Kap87Mh5]
- >>280
それはないです。 透けるには透けるのですが、白っぽくないですか? 合成の仕方によっては透過が進むにつれ下のレイヤーの画像になっていくはずなのですが、どんどん白っぽくなってしまいます。
- 282 名前:名前は開発中のものです。 mailto:sage [2007/09/17(月) 16:21:18 ID:hL7FDo9i]
- 画像見るとさ、緑のところだけ透けるようにしたのを作りたいんじゃないの?
これだと全部透けてるけど。
- 283 名前:名前は開発中のものです。 mailto:sage [2007/09/17(月) 16:22:50 ID:EyLNDmvj]
- >>281
そのゲーム画像のスクショ上げてみ
- 284 名前:名前は開発中のものです。 mailto:sage [2007/09/17(月) 16:43:32 ID:8R4a2/cj]
- config.tjs
;layerType = ltAddAlpha; を ;layerType = ltAlpha; に。
- 285 名前:名前は開発中のものです。 mailto:sage [2007/09/17(月) 17:00:31 ID:XTuY4hlk]
- 白っぽくなると言ってるがこれは正常な変化だぞ。
お前がmodeとopacityを混同してるだけだ
- 286 名前:名前は開発中のものです。 mailto:sage [2007/09/17(月) 17:08:55 ID:OMKrut/w]
- www.uploda.org/uporg1022337.jpg.html
比較しやすいように縦にしたけどAの状態の事を言ってるんだよな? 思い当たるのは ・PNG-24で保存してない ・画像がItAddAlpha形式じゃない ・マスク画像が使ってたりする マスク画像使ってる場合は何かミスってると 透過部分が覆い焼きしたようになった記憶がある。 Bなら気のせいだ、画像か目のどっちかを調整するしかない。
- 287 名前:名前は開発中のものです。 mailto:sage [2007/09/17(月) 18:32:29 ID:3AiwkbzC]
- 色が混ざってくすんでいるのを、白っぽくと見てるのかもしれん
枠画像をフォトショで開いたけど、ほぼ透明だなこりゃ 286がやってくれてるけど 枠(木目)を完全不透明にして、緑んとこの不透明度上げてみ
- 288 名前:名前は開発中のものです。 mailto:sage [2007/09/17(月) 23:37:47 ID:Kap87Mh5]
- >>282
後々はそうするつもりですが、現段階で躓いていますので。 >>283 どこが変なのか強調するためにPaint,NETでレイヤーのモードを今度は不透明度54まで下げました。 www.uploda.org/uporg1023195.png.html これを背景に載せると www.uploda.org/uporg1023212.png.html となります。 不透明度を下げるにつれバックグラウンドレイヤに近づく予定が、どんどん白く明るくなってしまいます。 >>284 ;layerType = ltAddAlpha; を ;layerType = ltAlpha; は公式の掲示板のログを漁ってしました。が、その意味まではわかりません。 > modeとopacity そうなんですか。 opacityみたいなことをしたかったのですが。 >>286 Aのことです。 PNG-24・ItAddAlphaはよくわかりません。調べてみます。 マスク画像というのは、画像_m.pngというファイルでしょうか? それ以上のことはよくわからないです。 色々試してみたのですが、kagで解決できない内容でしたら、今は私の手に負えないので諦めることにします。 お付き合いありがとうございました。
- 289 名前:名前は開発中のものです。 mailto:sage [2007/09/17(月) 23:59:18 ID:XTuY4hlk]
- 肝心のシナリオファイルにどう書いてるのか晒せ
- 290 名前:名前は開発中のものです。 mailto:sage [2007/09/17(月) 23:59:21 ID:/t9Slj66]
- ん?合成モードと不透過率の指定はKAGでできたよな。
お前さんが理解してないだけじゃない? 吉里吉里のリファレンス嫁。
- 291 名前:名前は開発中のものです。 mailto:sage [2007/09/18(火) 00:07:56 ID:k4kw7F9w]
- Windows付属のペイントとかで画像作って試してみろ。
素材の作成段階で失敗してる気がするぞ。
- 292 名前:名前は開発中のものです。 mailto:sage [2007/09/18(火) 00:40:28 ID:QLD2gkbP]
- >>289
シナリオファイルは [image storage="教室" page="fore" layer="base"] test[p][er] だけなので関係はないかと。 config.tjsで関係ありそうなところが //-------------------------------------------- メッセージレイヤの設定 ----- function MessageLayer_config() { // ◆ メッセージレイヤの表示モード ;layerType = ltAddAlpha; // ◆ メッセージ枠用の画像 ;frameGraphic = "messageframe"; // position タグの frame 属性に相当 // ◆ メッセージレイヤの色と不透明度 ;frameColor = 0x000000; // position タグの color 属性に相当 ;frameOpacity = 0; // position タグの opacity 属性に相当 説明削りましたが上の部分くらいでしょうか。 フレーム枠画像にcolorやopacitiyは効果ないそうですが。 >>290 メッセージ枠画像では合成モードも不透過率の指定もできないみたいです。 >>291 画像ソフトは本当に使い方がよくわからないので、素材の作成段階で失敗している可能性は大いにあると思いますし、私もそれを疑っています。 windows付属のペイントだと透過画像が作れないので意味はないかと。
- 293 名前:名前は開発中のものです。 mailto:sage [2007/09/18(火) 00:58:03 ID:/PP3azJk]
- 透過部分を作れないからいいんだよ。
ペイントの画像でも色が変化するようなら吉里吉里側に問題がある 色が変化しなければ素材に問題があると分かる
- 294 名前:名前は開発中のものです。 mailto:sage [2007/09/18(火) 01:04:52 ID:JXkSRRhe]
- >>292
画像自体はPNG-24で保存してあるから問題なし。 マスク画像(画像_m.png)は使ってるのか? 使ってるなら白くなる原因だから削除、使ってないなら気にするな。 画像形式がItAlphaになってる。 その状態でメッセージレイヤに透過した画像をframeGraphicに指定すると それより下の画像が白っぽくなる、直すには二通りある。 1:;layerType = ltAddAlpha; を ;layerType = ltAlpha; に書き換える。 2:画像をItAddAlpha形式に変換する ItAddAlphaへの変換は吉里吉里2のリファレンスに 付属の画像フォーマットコンバータについて書いてある。 1をやるなら>>284に謝罪汁、
- 295 名前:名前は開発中のものです。 mailto:sage [2007/09/18(火) 01:12:13 ID:QLD2gkbP]
- >>293
作ってみました。 www.imgup.org/iup465699.png.html 透過されませんでした。
- 296 名前:名前は開発中のものです。 mailto:sage [2007/09/18(火) 01:18:02 ID:QLD2gkbP]
- >>294
1:;layerType = ltAddAlpha; を ;layerType = ltAlpha; これを変えたらできました! >>284 あなたの書いたとおりでした。 ごめんなさい。 取り急ぎ報告しましたが、色々調べてまた書き込みます。 ありがとうございます。
- 297 名前:名前は開発中のものです。 mailto:sage [2007/09/18(火) 01:23:36 ID:5yeO/Swt]
- png-24ってことはRGBは全部で16bitだけど吉里吉里は16bitカラーはどのフォーマットを扱えるの?
そこら辺の仕様の問題じゃない? png-32でも同じ結果?
|

|