136 | kis00283 | ひゅう | 1995/08/25 09:42:34 |
前へ
後へ
上へ
|
KISSの機能拡張に関して
KISSの機能拡張が現実味を帯びてきてるので, 嬉しいこの頃なんですが,
私も欲しい機能があるので,今のうちに言っておきます ^^;
なお,以前,ほとんど同じ内容で,yavさんに提案していたんですが,
ボードに書いていろんな人に見てもらうのがいいのでは?という
薦めにしたがって,ここに書くことにしました。
● 半透明セル
ストッキングなど,半透明のセルを実現するために,
現在は透明色を交互に配置したりして実現することが在りますが,
規格として取り入れて欲しいのです。
個人的に,実現方法を考えてみました。
単なる1例です。
まず,セルに対し,透明度 X( 0 <= X < 256 ) という項目を設けます。
セルのあるドットの色が ( R1, G1, B1 ) で,
その上に色( R2, G2, B2 ),透明度 X( 0 <= X < 256 )のセルが重なったとき,
表示されるのは ( (R1*X+R2*(256-X))/256 , …以下同様 , … ) というように,
下のセルが透けて見えるようにできればいいと思います。
透明度が 0なら通常のセルで,255でほとんど透明,128なら半透明となります。
透明度は,CNFのセル記述行に記述するか,
あるいはセルの GSヘッダーの部分が使えると思います。
ただ,16色環境では正しく表示されないと思いますし,
256環境でも,完全には難しいですね。
このような場合は,ディザ表示にするか,
あるいは,機種によっては透明度の解釈を,256段階から,16段階,2段階と落とし
どうしても無理なら,最後はこの項目を無視するということにすれば
(つまり通常の不透明セルとして扱うということで)
互換性は保たれると思います。
つまり,データ作者側は,最悪の場合は,半透明セルは不透明として
扱れる可能性があることを意識してデータを作る必要がありますが。
(ま,半透明なストッキングが,不透明で表示されても,
それほど不自然ではないですからね ^^; )
個人的に,透け透け^H^H^H^H半透明セルは,大好きで ^^;
ぜひこういうのが欲しいのです。
yavさんに提案したときは,
αチャンネル(各ピクセルに対する透明度だと思えば良いです)を
つかうのが良いのではないか?というお話でした。
αチャンネルの方がより汎用的ですので,
可能ならその方が良いかなとも思いました。
ただ,何らかのツールが必要になりますね。
(αに何ビット与えればいいでしょ?)
● 固定値のセット別の指定
これは,ちょっとしたことなんですが,
#0.63 PANTYW.CEL :0 1 ; ぱんてい (白)
#1.63 PANTYB.CEL :0 1 ; ぱんてい (黒)
#2.255 BODY.CEL :0 1 ; からだ☆
ここで,セット0では白いぱんてい,
セット1では黒いぱんていをはいていたとします。
さて,セット0で白いぱんていをぺしぺしして脱がせて,
黒に変えてあげようとします。
ところが,黒いぱんていは,宙に浮いてるダケなのに,
固定値のために,これもぺしぺししないといけません。
こういう体験ありますよね。
これを避けるには,次のような方法があります。
#0.63 PANTYW.CEL :0 ; ぱんてい (白)
#3 PANTYW.CEL : 1 ; ぱんてい (白)
#1 PANTYB.CEL :0 ; ぱんてい (黒)
#4.63 PANTYB.CEL : 1 ; ぱんてい (黒)
#2.255 BODY.CEL :0 1 ; からだ☆
セット0では,今はいてる白いぱんていだけ固定値があって,
黒いほうは固定値無しになってます。
でも,この方法はなんか無駄だし,
使う人も多くないと思うので,
こんな CNF記述を取り入れたらどうでしょう。
#0 PANTYW.CEL :0.63 1 ; ぱんてい (白)
#1 PANTYB.CEL :0 1.63 ; ぱんてい (黒)
#2.255 BODY.CEL :0 1 ; からだ☆
セット別に異なる固定値を与えるわけです。
詳しく書くと,セル記述行で,
#N[.K] xxx.CEL :0[.K0] 1[.K1] …
の場合,セット0の固定値は K0の指定があれば K0
省略されていた場合は,K
それも省略されていれば0とみなす …ということです。
以上2点です。
とくに,透明セルは,絶対欲しい欲しい欲しいよう〜(駄々っ子モード)
皆さんのご意見とか,聞かせていただけると嬉しいです。
〜 ひゅう 〜