しお/シェルの差分の作り方・基礎
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
開始行:
* シェルの差分の作り方・基礎 [#a6dc7f79]
このページでは、サーフェスの変化のある部分だけを切り抜い...
今後、変化のある部分だけの切り抜きを「差分」と呼びます。~
シェルのサーフェスすべてを、表情など変わる部分以外の絵も...
それにPNAファイルまでついてくるとなると、ファイル数も相当...
容量が大きければ、ユーザさんのDLの時間やHDDの圧迫にも関わ...
~
** 0.初めに [#qa1c1e8c]
すごく簡単な例として、Surface Manを用意しました。~
このゴーストを使って説明しています。~
&attachref(./surface_basic.nar);~
~
** 1.必要な部分をピックアップする [#qa1c1e8c]
まず、Surface Manのマスターシェルを見てください(shell/mas...
このシェルであれば、顔部分しか変わっていないので、他は余...
なので、切り抜いてしまいましょう。~
&attachref(./i_sb01.png);
変わっているのはグリーンの部分だけなので、surface01.pngと...
顔部分だけになってしまったので、surface01.pnaとsurface02....
~
** 2.surfaces.txtを書く [#qa1c1e8c]
今の状態でサーフェスを適用すると、差分失敗のシェル(shell/...
かっこわるいので、surfaces.txtを書き換えましょう。~
surface1を例にとると、~
surface1
{
collision0,9,153,141,182,Change
}
と現在書かれています。これに「element」を記述します。~
elementは差分をどうやって配置するかといった指示をします。~
この場合であれば、~
surface1
{
element0,overlay,surface00.png,0,0
element1,overlay,surface01.png,20,20
collision0,9,153,141,182,Change
}
となります。~
以下にelementの記述を一行づつ解説します。~
~
*** element0,overlay,surface00.png,0,0 [#k28ac390]
この指示を文章として読むと「0のエレメントにsurface00.png...
Surface Manはsurface00.pngがすべてのサーフェスのベースで...
そして位置指定は、surface0と位置を変えなくていいので、0,0...
~
*** element1,overlay,surface01.png,20,20 [#k28ac390]
これもelement0とほぼ同じ指示です。
一つだけ違うのは、位置指定がされていることです。~
これをelement0と同じように0,0に指定してしまうと、顔がもの...
surface00.pngのx0・y0に重ねる指定になっているからです。~
この位置を指定するには、元の切り出し画像の左上隅からx・y...
Surface Manであれば、~
&attachref(./i_sb02.gif);
顔部分の左横と上の暗いピクセル数が、surface01.pngの位置指...
この指定が面倒くさければ、右の例のように、左上隅x0・y0か...
~
surface2も同じように記述を加えてください。~
~
** 3.余分な部分を塗りつぶす [#qa1c1e8c]
この状態で差分としてはぼぼできているのですが、たぶん差分...
これは個別に差分用のPNAファイルを用意してやっても消せます...
はみ出している部分を透過色で塗りつぶしてしまいましょう。~
&attachref(./i_sb03.png);
これだけです。~
~
~
最終的に差分成功のシェル(shell/better)と同じになっていれ...
お疲れさまでした。~
~
**コメント [#v73fcc6a]
#comment(below)
終了行:
* シェルの差分の作り方・基礎 [#a6dc7f79]
このページでは、サーフェスの変化のある部分だけを切り抜い...
今後、変化のある部分だけの切り抜きを「差分」と呼びます。~
シェルのサーフェスすべてを、表情など変わる部分以外の絵も...
それにPNAファイルまでついてくるとなると、ファイル数も相当...
容量が大きければ、ユーザさんのDLの時間やHDDの圧迫にも関わ...
~
** 0.初めに [#qa1c1e8c]
すごく簡単な例として、Surface Manを用意しました。~
このゴーストを使って説明しています。~
&attachref(./surface_basic.nar);~
~
** 1.必要な部分をピックアップする [#qa1c1e8c]
まず、Surface Manのマスターシェルを見てください(shell/mas...
このシェルであれば、顔部分しか変わっていないので、他は余...
なので、切り抜いてしまいましょう。~
&attachref(./i_sb01.png);
変わっているのはグリーンの部分だけなので、surface01.pngと...
顔部分だけになってしまったので、surface01.pnaとsurface02....
~
** 2.surfaces.txtを書く [#qa1c1e8c]
今の状態でサーフェスを適用すると、差分失敗のシェル(shell/...
かっこわるいので、surfaces.txtを書き換えましょう。~
surface1を例にとると、~
surface1
{
collision0,9,153,141,182,Change
}
と現在書かれています。これに「element」を記述します。~
elementは差分をどうやって配置するかといった指示をします。~
この場合であれば、~
surface1
{
element0,overlay,surface00.png,0,0
element1,overlay,surface01.png,20,20
collision0,9,153,141,182,Change
}
となります。~
以下にelementの記述を一行づつ解説します。~
~
*** element0,overlay,surface00.png,0,0 [#k28ac390]
この指示を文章として読むと「0のエレメントにsurface00.png...
Surface Manはsurface00.pngがすべてのサーフェスのベースで...
そして位置指定は、surface0と位置を変えなくていいので、0,0...
~
*** element1,overlay,surface01.png,20,20 [#k28ac390]
これもelement0とほぼ同じ指示です。
一つだけ違うのは、位置指定がされていることです。~
これをelement0と同じように0,0に指定してしまうと、顔がもの...
surface00.pngのx0・y0に重ねる指定になっているからです。~
この位置を指定するには、元の切り出し画像の左上隅からx・y...
Surface Manであれば、~
&attachref(./i_sb02.gif);
顔部分の左横と上の暗いピクセル数が、surface01.pngの位置指...
この指定が面倒くさければ、右の例のように、左上隅x0・y0か...
~
surface2も同じように記述を加えてください。~
~
** 3.余分な部分を塗りつぶす [#qa1c1e8c]
この状態で差分としてはぼぼできているのですが、たぶん差分...
これは個別に差分用のPNAファイルを用意してやっても消せます...
はみ出している部分を透過色で塗りつぶしてしまいましょう。~
&attachref(./i_sb03.png);
これだけです。~
~
~
最終的に差分成功のシェル(shell/better)と同じになっていれ...
お疲れさまでした。~
~
**コメント [#v73fcc6a]
#comment(below)
ページ名: