トップページ > 拡張の基本

拡張の基本


Celestiaは拡張性に富んでいます。
既存の天体のパラメータをいろいろと編集する事ができたり、新しい天体を追加する事ができます。
新しい天体を追加するにはextraディレクトリに所定のファイルを入れるだけです。
使用するファイルは主に次の通りです。 なお、Celestiaでできるカスタマイズは天体の編集・追加だけにとどまりません。
この他にも各種情報を取り扱った.datファイルやCelestia起動時のパラメータを扱ったcelestia.cfgファイルなどもあり、 これらも好みに応じてカスタマイズできます。

これらのファイルはCelestia起動時にのみ読み込まれます。
ファイルの内容の変更を確認したい場合はCelestiaを起動し直してください。


標準インストール時のディレクトリ構造(Windows版)


標準インストール時のディレクトリC:\Program Files\Celestia\をルートとして説明します。
data.stc、.ssc、.xyz、.datファイルなどを格納。
  • .ssc(惑星・衛星・小天体用)
  • .stc(恒星用)
  • .dat(各種情報)
  • .xyz(特殊軌道)
  • .dsc(銀河・星雲)
extrasユーザ独自のAdd-Onファイルを格納。
fontsフォントファイルを格納。
models.3ds、.cmodファイルを格納。
  • .3ds
    標準的な3Dモデルファイル。一般的な3Dモデリングソフトで作成できます。
  • .cmod
    Celestia用モデルファイル。これを利用して.3dsファイルより変換できます。
shaders影の定義ファイル?
textureshires .jpg、.pngなど一般的な画像形式が使用できます。
  • hires - 高解像度
  • medres - 中解像度
  • lores - 低解像度
medres
lores
AUTHORS.txt著者名と連絡先メールアドレスを記載。
celestia.cfgCelestia起動時の設定ファイル。
celestia.exeCelestia実行ファイル。
celestia
(ショートカット)
作者サイトへ直行。
Changelog.txt更新履歴。
controls.txt操作方法一覧。
COPYINGGNUライセンスについての記述。
demo.celHelp-Run Demoを選択した時に作動するスクリプト。
favorites.celBookmarkで保存された位置情報。
guide.celNavigation-Tour Guide用の天体情報。
KbdMouseJoyControls.txtキーボード、マウス、コントロールパッドでの操作方法一覧。
libpng1.dllライブラリ?
README.txtCelestiaを使用する際の諸注意など。
start.celCelestia起動時に作動するスクリプト。
TRANSLATORS.txt各国語版への翻訳者一覧。
unins000.datアンインストールする際の情報。
unins000.exeアンインストーラー。
zlib.dllライブラリ?
このページのトップへ トップページへ

拡張方法


新しい天体を加えるには最低限としてデータファイルが必要となります。
なおテクスチャファイル、3DモデルファイルはCelestia付属のものを使うか、あるいは何も使わないのであればあえて追加する必要はありません。
次ではデータファイルとしてextraplanets.ssc、テクスチャファイルとしてextraplanets.jpg、3Dモデルファイルとしてextraplanets.3dsを利用する場合について説明します。

その1

extraplanets.sscをdataディレクトリまたはextrasディレクトリに、extraplanets.jpgをtextures\medresディレクトリ(中解像度用で使用する場合)、extraplanets.3dsをmodelsディレクトリにそれぞれ入れます。
この場合は、celestia.cfgファイルの適切な項目に登録しないと動作しません。
例:
.stcファイル: StarCatalogs項
.sscファイル: SolarSystemCatalogs項

その2

バージョン1.3.0以降ならこの方法が利用できます。
多くのAdd-onファイルがこの形式になっており、展開して出来たフォルダをそのままextrasディレクトリ(デフォルトの場合です。celestia.cfgファイルを編集する事により変更できます。詳細はこちら。)に入れれば使用できるようになっています。
まずディレクトリを作成し、任意のディレクトリ名をつけます。(例としてextraplanetsとします)
次にextraplanetsディレクトリ直下にextraplanets.sscを配置し、同じ階層にtexturesディレクトリ、modelsディレクトリを作成します。
そしてmodelsディレクトリにextraplanets.3dsを置きます。 更にextraplanets\texturesディレクトリにhires、medres、loresディレクトリを作成(必要なディレクトリのみ作成でも可)し、利用したい解像度用のディレクトリにextraplanets.jpgを置きます。
ディレクトリ構造は次の通りとなります。
extraplanetsextraplanets.ssc
textureshiresいずれかのディレクトリに
extraplanets.jpg
medres
lores
modelsextraplanets.3ds
最後にextraplanetsディレクトリをextrasディレクトリに置きます。

軌道データファイルとして.xyzファイルを使用する場合は次の通りにしてください。
.sscファイルと同じディレクトリに置いても、動作しません。
extraplanetsextraplanets.ssc
textureshiresいずれかのディレクトリに
extraplanets.jpg
medres
lores
modelsextraplanets.3ds
dataextraplanets.xyz

Virtual Textureの導入方法

Virtual Textureはズームアップ時には高解像度テクスチャを、ズームアウト時には低解像度テクスチャを表示します。なお、各テクスチャはズームのレベルごとに天体全体のテクスチャを多くの正方形に分割されたもので構成されており、通常のテクスチャのように一度に天体全部を読み込むのではなく、その時その時の画面上に必要な部分だけのテクスチャを読み込むようになっています。そのため、マシンにあまり負担をかけずに高解像度のテクスチャで天体を観賞できます。

ディレクトリ・ファイル構造は以下の例を参考にしてください。

64K Jestr Earth Mark II (VT/DDS)のディレクトリ構造

JMII DDSJMII DDS.ssc
ReadMe.txt
textureshiresJMII DDSlevel_0tx_0_0.ddsなど2枚
level_1tx_0_0.ddsなど8枚
level_2tx_0_0.ddsなど32枚
level_3tx_0_0.ddsなど128枚
level_4tx_0_0.ddsなど512枚
JMII DDS.ctx
Level Aではそれぞれ 4 Ax2 だけテクスチャが分割されています。
左からX番目、上からY番目のテクスチャはtx_(X-1)_(Y-1).ddsと表されています。

JMII DDS.ctx

メモ帳などで作成し、保存後拡張子を.ctxに変更してください。
VirtualTexture
{
        ImageDirectory "JMII DDS" # 画像配置ディレクトリ
        BaseSplit 0
        TileSize 512 # 読み込み時の基本サイズ
        TileType "dds" # 構成ファイルの拡張子?
} 

JMII DDS.ssc

AltSurface "JMII DDS" "Sol/Earth"
{
	Texture "JMII DDS.ctx" # .ctxファイルを指定
        NightTexture "JNight DDS.ctx" # 夜テクスチャも指定できます。
        NormalMap "JNormal DDS.ctx"
	HazeColor [ 1 1 1 ] # 以降、霧の密度や反射光の色などをオリジナルとは別個に設定できます。
	HazeDensity 0.25
	SpecularColor [ 0.5 0.5 0.55 ]
	SpecularPower 12.0
}

このページのトップへ
トップページ > 拡張の基本