画像をクリックすると拡大。ドラッグ&右クリックで保存。
シムのスキン++基礎のきそ++
シムファンの多くが最初にぶち当たるナゾは、「スキン」。
ユーザースキンをDLするようになり、迷ったこと、困ったことを思い出しながら、疑問を明らかにしようという試みです。
内容は、自分自身が疑問に感じていたことを確認するため、ゲームを再インストールした際に行った検証をもとにしています。
他のページと内容が重なる部分も多々あるうえに、正確にお伝えしたと思う余り、少々冗漫のきらいがございます。どうぞご存知の部分は飛ばして読んでください。
- +++CONTENTS+++
- スキンが表示される仕組み
- 検証 --- スキン各ファイルの欠損と表示のされ方
- CMXの役割---ポイントはbmpとCMXの3行目
- スキンファイルのリネーム法
- テクスチュアのトラブル
- スキントラブル・原因発見のための早見表
本稿は05年1月21日に再検証の結果を踏まえ、加筆訂正をしております。検証結果を公開しつつ、新たに分かったことについては [ スキンの仕組み1::CMXをマスター ] にまとめていますので併せてお読みください。
シムピープルでキャラクターの体と顔を表示させるには、最低3種類のファイルが必要です。
これらをまとめて「スキンセット」と便宜的に呼んでいます。
また、スキンセットはシム人用だけではありません。犬や猫用もあれば、帽子や武器のような装備品、さらに遊べるボールやギターなどアニメーションつきのオブジェクトにも使われています。
ここで取り上げるのは、この中のシム人用スキンセットと各ファイルとなります。
スキンが表示される仕組み
左がおなじみのbmp。
右がメッシュをBody Wrap で開いてみたところ。メッシュ自体は色のデータを持っていません。
上の bmp と skin を首尾よくドッキングさせると3Dのキャラのできあがり。
スキンセットの各ファイルは1つだけでは、何一つ形にすることはできません。3種類のファイルをルールにしたがって関連付けることができ、ようやく立体的なグラフィックになるのです。
まず、必要なファイルそれぞれの呼び方を決めておきましょう。混乱を避けるために決めるものですから、、この呼び方がMaxis正規のものという意味ではありません。
- bmp → キャラやアクセサリなどの表面部分を表示するための bmpファイル
- skn → キャラやアクセサリなどの立体形状を表示するためのファイル。メッシュと呼ばれているもの。
- cmx → 1 と 2 をセットにすることを指定するファイル。拡張子は .cmx
キャラクター作成画面にスキンを表示するには?
1人のシムが誕生するまでを見ながら、どのようにスキンが表示されるかを見ていきます。ゲームを起動し、新しい家族の作成画面でユーザーキャラを作ります。
1.キャラクターの作るには、最初に大人か子供か、男か女かを選び、次に肌の色を決めます。これで選択ウィンドウに条件に合うスキンが表示されるという仕組みです。
たとえお気に入りの服でも、肌色が設定と異なると、選ぶことはできません。
シム人のスキン・ファイルのお約束 ( ファイル名の記号 / 普段着ボディの例 )
| 種類 | 型番 | 性別 | 世代 | 体型 | 肌色 | ニックネーム | 記号 | 拡張子 | 付記 |
|---|---|---|---|---|---|---|---|---|---|
| bmp | |||||||||
| B | *** | M F | A C | Fat Fit Skn | Lgt Med Drk | _**** | --- | bmp | 体型はなくても可 |
| skn= メッシュ | |||||||||
| xskin-B | *** | M F | A C | Fat Fit Skn なし | なし | _***** | HEAD-HEAD/ -PELVIS-BODY | .skn | 体型はなくても可 |
シム人用のボディ bmp には体型記号が必須です!!
*頭用は種類記号がC。犬のスキンもBで始まるが、性別・男女・肌色・体型のところが [ Dog ] となる。
*シムの普段着以外の、購入できるボディスキン(水着、フォーマル等)も構成は同じ。種類のBが、S=水着、F=フォーマル、L=パジャマ、H=ハイファッションに替わる。
*種類・型番は必ずしも付けなくてもよい。 種類・型番はシム人の頭と身体を表示する場合は必須。 帽子、剣などの装備品、ロボットなどのスキンファイルは種類・型番を省略できる。
*sknの記号(-HEAD-HEAD)は、特定の条件を満たせば省略することができる。条件は、skn ファイル内 2行目で貼り込むbmpを指定すること。( なお、3Dの表示位置については、ファイル名ではなく、skn内の3Dデータ記述のみが有効になる。
参考:アクセサリーの項2)
大人の男、明るい肌は顔と同じですが、体型はいろいろ。
たとえば、サンプル画像のマッチョはMuscularSim様の skn と bmp に、独自の体型記号= Buf を、体型記号としてBMPのファイル名につけています。また、大デブのボディjは、Chubby Sim様のsknに、拙作の bmp を合わせ、体型をXLGとしたもの。
このように、体型については独自の記号をつけても、ちゃんとセレクトしてくれます。
すべての体型が選択肢として表示されるのは、シムのヘッドに体型の区別がないためです。
つまり顔が大きかろうが小さかろうが、デブも瘠せもありというわけ。
たとえば 条件が「大人の男で、明るい色の肌」のときは---
頭用に[ C■■■MAMED ] で始まるBMPファイル、
身体用に[ B■■■MAMED ]で始まるBMPファイル
これに当てはまるファイルは、fat,fit,skn、そしてウチのようにオリジナルの体型も全部表示されるはずです。
キャラクター作成画面では肌の色が重要な選択肢。そして、スキン関係のファイルの中で、肌色が設定されているのはbmpのみ。
このことから、最初にシステムが行うことは、条件に合う bmp のリストアップではないかと思われます。
再検証を通じ、bmpにマッチするcmxを選ぶときに、bmpファイル名の体型記号を読み込み、cmxファイル内3行目の記述と矛盾がないかを照合し、そのスキンのセットを確定することがわかりました。
たとえば、bmpのファイル名が B777Fa Fat Lgt_vvvvv.bmp のとき、cmx ファイル内の3行目に、(クレジットとバージョンを入れると5行目) B777Fa Fat Lgt_vvvvv か、B777Fa Lgt_vvvvv と記述されていないと、そのCMXを選ぶことができません。
すると、せっかく条件に合っていたBMPでも、候補から落とされてしまいます。
せっかく入れたスキンがキャラクター作成の選択画面にまったく出てこない原因の1つがこれ。もし、sknに問題がある場合は、ボディが透明の状態で選択画面に表示されます。
CMXで 重要なのは、ファイル名ではなく、3行目の記述です。
検証に使わせていただいたのはHappy SimzさんのFF9 Kujaスキン。
ヘッドボディとも特殊なスタイリングなので、他のスキンと混同することなく、検証できます。(ゲームを再インストール直後、追加スキンがすべて表示されていることを確認し、検証)
- 1.bmp なしで、skn と cmx だけを GameData / Skins に入れる → 選択画面に表示されない
- 2.cmx なしで、bmpとsknだけを GameData / Skins に入れる → 選択画面に表示されない
- 3.sknなしで、bmpとcmxだけを GameData / Skinsに入れる → 選択画面に透明の状態で表示される
ペット&ガーデンニングまで(完全版2)、スタパラまで、マジカルまでの3タイプのアドオンのバージョンで行いましたが、bmpがない状態では、選択画面にもまったく現われてこないことを確認しています。ただし、アクセサリーや一部のスキンで濃いグレーに表示されることがあります。
また、異常な表示(ボディが透明になる)はメッシュがないときに見ることができます。もともと3Dのポリゴンデータはカラーデータを持っていないからですが、もしかしたら、ラブラブデートまでをアドオンしたときは、スキンを表示する仕組みが異なるのかもしれません。なお、BMPが256色になっていないとき、一辺が8ピクセルの倍数になっていないとき ( 例 ・128×127px ) も、異常な表示になることがあります。
CMXの役割<---ポイントは bmp="" と="" cmx="" の="">---ポイントは>
検証で分かったことは、最初にBMPファイルが選ばれるのではないかということです。こう考えると、CMXにどんなファイル名をつければいいのかが、おのずから決まってきます。
次に、そのbmpがシムを表示する資格があるかを、cmx内の3行目の記述と照合します。
bmpファイル名と cmx の記述が一致し、なおかつ条件を満たしていれば、それをシムのスキンセットとして認定するのです。
つまり、たとえ、これを表示するのに必要なsknが見つからなくても、候補として表示してうということです。これが、キャラクター選択画面で、頭と手足だけで身体が透明で表示される原因です。
キャラクター作成画面でテクスチュアをリストアップするために、システムが重要視するのは、ヘッド用は肌色、ボディ用は肌色と体型記号までです。
B123MaDrkFit_Red×××
B123MaDrkFat_Pink×××
というBMPがあると、それぞれを表示するための Skn を探さなければなりません。
では、bmp と skn はどのようにリンクして いるのでしょう?
シムピープルでは、skn =メッシュは使い回しが可能で、同じ立体データを肌色違いのキャラ、色違いの洋服など、さまざまなものに使われます。
ということは、ファイル名で bmp と skn を関連づけることはできません。
そこで登場するのがCMXファイルです。
性別と世代、肌色、体型が決まり、 bmp がピックアップされると、ゲームシステムはその bmp用の cmx を探します。
cmx に指定されている skn ファイルで BMPを表示するためです。
PCが cmx を探すときに参照するのは、cmx のファイル名ではありません。cmxファイルの3行目の記述を見るのです。
たとえば、B123MaDrkFit_Red×××.bmpというbmpであれば、cmxの3行目にも、B123Ma が書かれているもの、次に Fit が書かれているCMXを探すようです。
ちょっとややこしいのですが、このときにゲームシステムがOKを出す記述は、
B123Ma×××
B123MaFit×××
の2種類です。
スキン用BMP ファイル で重要なのは、ファイル名の 種類・型番・性別・世代・肌色・体型まで。
CMXで重要なのは、ファイル内の3行目に書かれている種類・型番・性別・世代・肌色・体型までと思われます。(*)
*ヌード用とハンド用のテクスチュアをリンクさせるときは、bmpファイル名のアンダーパー以下を参照する。
重複が起きるファイル名はどこからどこまで?
シム人のテクスチュア、メッシュ、CMXの各ファイル名で重要なことは---- 文頭のB/C、型番、性別・世代は絶対に必要
- bmp には肌色・体型が必要
- 3つのファイルの関連付けは bmpファイル名 と cmx 内3行目の記述が文頭・型番・性別・世代(・体型 *)までが一致する必要がある。
- メッシュとCMXは、同じ名前のファイルが2枚以上、ゲーム内にあってはいけない。・・・これについては検証中です。
なお、よく言われるスキン関係ファイル名の重複ですがケースにより、トラブルになったり、難なく表示されたりとさまざまです。
現在、考えられる範囲でテストを繰り返していますが、重複するのはファイル名だけではないことを書き加えて起きます。
トラブルを起こすコンフリクトには、おもに次のようなものがあります。
■ファイル名以外のコンフリクト
■cmx ファイル内3行目のコンフリクト
skn ファイル内2行目のコンフリクト
とくに cmx ファイル内3行目のコンフリクトは、ファイル名同士の重複よりも重大かもしれません。
一方、現在までのテストでは、sknファイルの場合、ファイル名の重複によるトラブルのほうが多いようです。なお、bmpファイルは似て非なるファイル名はいくらでもOKです。
似たような名前のSKNがあったときのトラブル例を紹介します。
- そのファイルを無視する→どちらのテクスチュアも表示しない
- 「テクスチュアはあるんだけど・・・」と透明の身体で表示(後で重複するファイル名のスキンをアップしたときに多い)
- 先に読み込んだほうの指示通りに表示する。(BettyもKittyも、同じメッシュで表示するか、どちらか1つだけ表示する )
- アバれて仕事拒否→強制終了(ほとんどない)
以上が症状例です。また、同じ状態でも、どうということなく表示してくれることもあります。どれが起きるかは運と環境・・・次第でしょうか?
ではスキンのコンフリクトをCheck!
これがそのときのチェックの結果。
ゲームを再インストールする前に、シムピープルフォルダ全体をSkinDoctorでチェックしました。
「スキンのコンフリクトだよ」とリストアップされたなかに、デフォルトでインストールされるMaxis提供のスキンがあったのです(アニメーションを呼び出すために使う特殊なCMXかもしれません。
ご存知の方はフォローを御願いします)。このファイルは体型だけが異なるCMXでした。
この記述についてはコメント欄で、縁さまがお応えくださっています。
このファイルは職業別のユニフォームだそうです。なぜユニフォームのなかでこれだけをチェックしたのかは謎です。
ドクターが指摘してくれたCMXファイル名の重複は、それほど重要ではないことが後に行った検証で分かりました。
また、cmx内、skn内のコンフリクトについては、チェックしてくれないようです。
このリストの中で直さなければならないのは、
l 200fafit_miniju.cmx
L200FAFit_BWar.cmx
のファイルです。Maxis デフォルトとユーザーメイドのスキンセットが重複した典型的な例なので、恥を忍んでの公開です。
ただし、ファイルの名前だけが重複しているときは、それほど大きな問題ではないようです。別のテストでも、両方ともきちんと表示できました。
もし、スキンファイルのコンフリクトで問題が起きた場合は、どちらか一方を削除するか、リネームするしかありません。( リネーム法については後述)
なお、頭がMで身体がF、頭がCで身体がAというように性別・世代の異なるスキン同士をIFF Pencil2などでデータを書き換える方法で組み合わせると、PCがハングするそうです。
このことからもシムピープル内でスキンを扱うときに、MA、FA、MC、FCまでのファイル名がいかに重要かが分かります。
同じデザインなら、bmpはいくつでもOK! skn と cmx を1つにして省ファイル化を
シムのために素敵なスキンをDLしていると、気づかないうちに、同じ文頭記号+ナンバー+性別・世代+肌色の bmp を フォルダにアップしていることがあります。bmp が cmx や skn と異なるのは、ファイル名の肌色・体型までが同じものがあっても構わないということです。サンプル画像はウチのExpansionShared/SkinsBuy内。並んでいるのは Sims GO GO GO 作成の水着テクスチュア=bmpです。
同じナンバー・性別・世代・体型・肌色の水着が並んでいますね。
実はほかにもあるのです。Sims Go Go Go様の兄さんたちの身体が気に入ってるので・・・。
ではダウンタウンで購入できるかどうか確かめて見ましょう。モデルはCorry's FactoryさんのFF-Xティーダ君。
ちゃんと購入画面に表示されています。
これらのbmpはファイル名の重要な部分が同じです。
ということは、CMX の3行目も同じでなければいけません。
となれば、これらの水着を表示するCMX は たった1枚で足りるのではないでしょうか?
つまり、skn と cmx は使い回しができるということです。
使い回すことでファイルを減り、ゲームの読み込みも速くなりますが、同時にスキンの混乱のもとを生み出すことになります。
スキンクリエイター配布スキンの代表的な構成としては次が挙げられます。
1.テクスチュア・メッシュともオリジナル(あるいはアレンジ)
2.テクスチュアがオリジナル ・ メッシュは他のクリエイター作成のユーザーメッシュ
3.テクスチュアがオリジナル ・ メッシュはゲーム梱包のMaxisメイド
*それぞれ、CMXが添付の場合と、添付されていない場合があります。
1の場合はほとんど問題がありません。ファイル名はおそらく独自のものだからです。
2の場合は確認が必要です。添付されているメッシュが、ほかのスキンと一緒にインストールされている可能性があります。
3の場合は注意が必要です。添付されているskinとcmx を、Skins や SkinsBuy に放り込んでしまうと、ゲーム内にあるファイルと重複してしまうかもしれません。
こうした混乱はユーザーメイドだけではなく、デフォルトのスキンセットでも起きます。
さらに困ったことに、Maxisメイドメッシュは、データセットを追加するたびにゲーム内に追加インストールされてしまうのです。つまり、データセットのバージョンにより、入っているメッシュとCMX が異なってしまうことになります。
追加スキンは公式サイトからDLすることで追加できますが、実は全く同じメッシュを少しだけ異なるファイル名でMaxisさんは配布しているようです。私自身、このことに気づかず、或る日、いきなり何人かのシムを透明にしてしまったことがありました。
では、どうすればいいのでしょう?
--- 自力で調べる----
これ以外に方法はありません。
スキン関係のファイルを整理するポイント
- 同じ skn を使う bmp は、ファイル名の冒頭・型番・性別・世代までを完全に一致させる。
- cmx ファイル内3行目の記述を、bmp の冒頭・型番・性別・世代までと一致させる。
- 使用する skn ファイル名が、cmx ファイル内にきちんと記述されていることを確認する。
1.bmpには 種類+型番+性別+世代+体型までがファイル名に記述されていること。2.CMX ファイル内3行目の記述は、使用するbmpファイル名の種類+型番+性別+世代までが記述されていること。
3.同じデザインのsknは XSKINで始まり、拡張子.sknであればどんなファイル名でもOK。ただしCMX に、正しく記述する。
4.種類+型番+性別+世代+体型までが同じ名前のCMXは、ゲーム内に(すべてのフォルダ、farファイルも含む)に、1つしか置かない。
Maxisメイドのメッシュリストを公開してくださっているサイト様 :::
「いや、そんな面倒はイヤだ!」というのであれば、怪しいスキンファイルは、リネームするしか方法はありません。
スキンファイルのリネーム・記述の確認法
スキン関係のファイル名を変えるリネームは最終手段です。どうしても使いたいスキンが表示されないときなどに限ってください。
もちろん、作者がファイル名の改変を禁じている場合は行ってはいけません。ほとんどのクリエイターはゲームプレイに必要なファイル名のアレンジを許可していますので、サイトのインフォメーション、スキンファイルに添付されているREAD ME で確認しましょう。
Home >Tools >Babel Fish Translation へ行き、いったん英語に翻訳してから日本語にします。正確ではなくてもニュアンスはとれると思います。
男性用のボディを女性キャラに使用させたり、普段着用のスキンを購入用に変更したいときも、この方法を使います。
1.リネームしたいファイルをそろえる。
すべてコピーをとり、失敗に備えておく。
2.bmpのファイル名を目的にあわせて変更する
普段着用スキンをフォーマルに指定しなおす場合を例にとると---。
B×××MAFitLgt_■■■.bmp→F▲××MAFitLgt_■■■.bmp
文頭記号を B→F に変える。
コンフリクトを避けるときは、型番(×××の部分)も変える。
型番は必ず半角英数3文字。自分でつけたものであることが後で分かるように決めておくと便利。
*bmpの肌色・体型+名前はヌードを呼び出すときに使われます。
3.sknの記述を確認する。
skn をテキストエディタ ( WINの場合はメモ帳でよい ) で開く。
1行目はsknのID。一般的には、ファイル名と一致させておけば間違いはない。またはnameとする。 name は「ファイル名だよ」の意味。
ただし、クリエイターが、ファイル名と1行目を変えている場合は、そのままでゲームにアップし、テストをすること。
sknファイル名と、ファイル内1行目は必ずしも一致させなくても構わないため、目的があって変えている場合もある。
2行目はテクスチュアを指定する行。ここに特定のテクスチュアファイル名があると、そのBMP専用のメッシュとなる。
4.sknのファイル名の変更
トラブルのとき以外はしないこと。
bmp、CMX、skn内1行目とは違う名前でもOK。
同名のsknがある等のトラブル解消の場合は、
xskin-B×××MAFit_■■■-PELVIS-BODY.skn
の×××部分を変更する。例113→Z13
5.CMXファイルの修正、または作成。
| // Character File. Copyright 1997, Maxis Inc. | ファイル情報・コピー |
| version 300 | ---- バージョン |
| 0 | |
| 1 | ここは1 |
| L 200 fa fit _ ××× | この行はbmpとのセットを定義する |
| 0 | |
| 0 | |
| 1 | セットに使うSKNファイル数。付属品があれば増やす |
| PELVIS | どこにつけるsknかを指定。正確でなくてもOK |
| xskin-b200fafit_bwar-PELVIS-BODY | SKNファイル |
| 0 | |
| 0 | |
| 0 |
- 1、2行目はそのまま丸写しでOK。
- 3行目は必ず0
- 4行目はsknファイルの数と同じにする
- 5行目はこのセットのID ( cmxID ) 。bmpファイル名と型番・世代または体型までを一致させる
- 6.7行目は必ず0
- 8行目は呼び込むメッシュの数。たいていは1
- 9行目はメッシュのつく位置。これは胴なのでPELVIS。 skn名を参考に。(間違っても問題ないので神経質にならないこと)10行目は拡張子を除いたsknファイル名を正確に記述
- 最後の3行は必ず0
- 各行は改行キーで切っていく
10行目の記述を間違えると、キャラクター作成画面や購入画面で透明になります。>
テクスチュアのトラブル
ユーザーメイド のスキンファイルに問題があることはあまり考えられません。
ハックオブジェクトなどと違い、ごくシンプルなデータだからです。
もし、テクスチュアに不具合があれば、キャラクター選択画面にも購入画面にも表示されません(選択画面でクラッシュすることもある)ので、それを目安にしてください。
テクスチュアに原因があると考えられるときは、次のいずれかです。
1.形式が違う
256色BMPになっていない場合。SIMPOSE-iumでも確認できます。
2.大きさが違う
テクスチュアファイルは一辺が8ピクセルの倍数の正方形でなければ表示できません。たとえば256×257ピクセルになっていると、透明になります。
ごく稀ですがファイルが壊れる場合があります。フォトショップ、ファイヤーワークスなど、お使いのペイントソフトで開き(本当に壊れると開きません。その場合はDLし直してみましょう)、別名保存でインデックスカラーのBMPで保存し直してみます。
- 1.bmp がアップされていない→アップしたフォルダ内を調べるか検索
- 2.cmx がアップされていない→アップしたフォルダ内を調べるか検索
- 3.cmx ファイル内3行目の記述とbmpのファイル名が違う
- 4.テクスチュアとCMX名の性別・世代・肌色が選んでいる条件と違う
頭や身体が透明になる
- 1.skn のファイル名 がCMXファイルの記述と違う
- 2.skn ファイルがない
- 3.bmp の形式が256色BMPでない
- 4.bmp ファイルの一辺が8ピクセル×Nではない
- 5.skn ファイル名またはskn ファイルの 1行目が他のファイルと重複している
最後に---
スキンは複雑かつ、なかなかアバウトな代物です。ただ、もしスキンに不具合があれば、ボディやヘッドを使うことは、まず絶対できません。
キャラクターを選択したり、家を選択すると強制終了というケースで、スキンに原因があることはあまりないと考えられます。
キャラクターのリソースをIFF Pencil2や、Character Make over Studio等を使って、キャラクターの性別、世代に矛盾するスキンを着せていると強制終了が起きるそうです。
たとえば、男性キャラに女性用ボディを性別FAのままで指定した場合は、ゲームを起動し、データを読み込む時点でハングするはずです。または、マップ読み込み時や、マップ上でキャラを選択したときにハングすることもあります。
このようなときはSKINSフォルダ内からテクスチュアとCNXを削除し、再起動すれば、そのキャラクターは別のボディにお着替えして現われてくれるでしょう。
プレイしているうちにデータファイルが壊れることはありますが、スキン関係のファイルではそう起きることはありません。
スキンに関しては不思議なことが多く、随分迷いました。最も不思議に思ったのは、或る日気が付くと冬服が透明になってしまったときです。何かの拍子にMaxisからDLしておいた拡張スキンパックが,オートインストールされてしまったらしく、Skinフォルダを覗くと、ズラリと同じBMPが少し違う名前で並んでいたのです。その後、試行錯誤を繰り返し、あれこれ試してきましたが、なかなかその規則性はつかめずにいます。
この項を書いたあと、縁さんに貴重なことを教えていただき、大々的に再検証をしました。その結果、自分自身の知識の浅さと思い込みを知りました。本稿は、その結果を踏まえ、加筆訂正をしたものです。
再検証の結果については「スキンの仕組み::CMXをマスター」をご参照ください。
2005年01月15日