[掲示板へもどる]
一括表示

  [No.710] はじめまして 投稿者:tonakai  投稿日:2010/03/07(Sun) 20:50:53

はじめましてtonakaiと申します。
このページには度々拝見しています。

このページを見て解析に興味が持ちました。
また解析をすることでプログラムのスキル向上と思い、解析をチャレンジしてみようと思います。

まだ初心者ですが^^

そこで以下の質問をさせてください。

1:解析にあたって気をつけないといけないこと。
2 :読んだほうが良い本はありますか?
3:初心者が最初に解析するには良いゲームはありますか?
4:解析に必要な勉強はありますか?

どうぞよろしくお願い致します。


  [No.711] うい〜(cv)平沢唯 投稿者:まくちゃん  投稿日:2010/03/08(Mon) 04:33:48

ども、はじめまして。
なんとも、初々しい書き込みで(*´д`*)ハァハァでつ(ぉ

> また解析をすることでプログラムのスキル向上と思い、解析をチャレンジしてみようと思います。
おー!また仲間が増えそうで嬉しいですよ〜(*゜∀゜)

> そこで以下の質問をさせてください。
どんとこいやー!

> 1:解析にあたって気をつけないといけないこと。
気をつけることは特にないと思いますが、まずは根気です!
データ解析は数値とにらめっこなので、とても地味な作業が続きます。
解析を楽しむこと。そして目標、夢を持つこと!
ウチの場合は、○○のキャラクターを舐めるように見るんじゃー!
という変態的な目標なので(ぉ
つか、エロパワーは偉大です!
ルーク!ワシについてくるのだ!エロパワーは素晴らしいぞ!一緒に宇宙を支配しようではないか!
かといって、エロパワー(ダークサイド)を薦めるわけではありません。そんなの人それぞれですしねw
ジグソーパズルを解くノリでやってます。

> 2 :読んだほうが良い本はありますか?
解析するデータによります。
圧縮や画像、音は本を買うまでもありません。
ネットにゴロゴロあります。
世界を周ればコンバータなどソースコードを公開している方が結構いますので、とても参考になります。
3Dに関してはネットでは難しいと思います。
OpenGLやDirectXなど簡単な表示系やシェーダーなどはネットでも学ぶことが出来ますが自分の経験上、本の方がわかり易いです。
まずポリゴンとは何か?から始まる初心者的な本からが良いと思います。
DirectXで言えばオススメというかウチが購入してお勉強したのがこの辺です。

・DirectX9 DirectX Graphics
ttp://www.amazon.co.jp/gp/product/477751112X
DirectXの基本からシェーダーまで載ってます。

・3D格闘ゲームプログラミング
ttp://www.amazon.co.jp/gp/product/4797341807
Xファイル(アスキーコード版)を開きチャンクを辿りながら自力で読む方法や描画からモーション補間まで載ってます。
この著者のシリーズはほとんど持ってます。

・DirectX逆引き大全500の極意―Visual C++2002/2003/2005対応
ttp://www.amazon.co.jp/gp/product/4798013161
「これがやりたい」から引ける本。アイマスビューアのセルフシャドウはこれを参考にしました。

・DirectX 9 シェーダプログラミングブック
ttp://www.amazon.co.jp/gp/product/4839912475
シェーダープログラムとはなんなのか?基本から深いところまで学べる本です。
(↑このBBSはURLが3つ以上貼れない)

でも、3DをやりたいのであればOpenGLから始めることをオススメします。
DirectX3Dに比べてとても難易度が低いです。
OpenGLの解説ページはたくさんあるのでこっちは本の必要はないと思います。
配布されているGLUTを使ったサンプルコードを改造して使うと良いと思います。

> 3:初心者が最初に解析するには良いゲームはありますか?
360版アイマス or L4U!!w
エンディアンの問題があるので、ちょっと壁があるかもしれませんが最近やった中では一番素直なデータ構造でした。
マテリアルやボーンなどは難しいですが面の表示までは、そう難しくはないと思います。
テクスチャはDXT系なので自力展開は難しいと思います。
ヘッダ追加とエンディアン変換でDDSファイルに変換か、DXTからベタのRGBAに展開するプログラムのソースコードが検索すると出てくるので、それを頂くしかないですね。

> 4:解析に必要な勉強はありますか?
tonakaiさんのプログラムレベルがどれだけかわかりませんがバイナリデータを任意に読み込んでlongやfloatなどの数値に加工して出力するくらいは出来ないと始まりません。
それには2進数、10進数、16進数、ビット演算をしっかり把握する必要があります。

ということで頑張ってくださいね!


  [No.712] ありがとうございます。(^^) 投稿者:tonakai  投稿日:2010/03/08(Mon) 20:11:49

どうもこんばんはtonakaiです。
すばやいお返事ありがとうございます。

>> 3:初心者が最初に解析するには良いゲームはありますか?
>360版アイマス or L4U!!w
さっそく360版アイマスを購入しました。
これから実際にプレイしてどのキャラがいいかな〜
とっ思案してプレイします。^^

申し訳ありません。
またいくつか疑問点が浮かんできたので
ご質問させてください。

>最近やった中では一番素直なデータ構造でした
「最近」と書いてましたが、
過去の解析の中で見た場合に初心者にやりやすい
ゲームはありましたか?

"まくちゃん"さんの日記にPS3のddsファイルを扱っていた記事が
ありまして、自分もそれをやってみようと試してみました。
DISCからddsファイルを抽出することは出来ました。

ddsを表示してみようとDirectXのddsのフォーマットを調べてみたり、
ddsファイルの中身をバイナリエディタで調べてみましたが、
正直とっとかりも見つかりません。
このファイル解析に対してのヒントを差し支えない範囲で教えていただけませんか?

う〜ん。
聞いてばかりだな。ーー


  [No.713] それはですね 投稿者:まくちゃん  投稿日:2010/03/09(Tue) 02:40:31

> すばやいお返事ありがとうございます。
いえいえ。

> さっそく360版アイマスを購入しました。
> これから実際にプレイしてどのキャラがいいかな〜
> とっ思案してプレイします。^^
お気に入りのアイドルを決めておけば、きっと挫折しそうになっても愛の力で乗り切れるはず!( ゜∀゜)b

> 過去の解析の中で見た場合に初心者にやりやすい
> ゲームはありましたか?
ウチが初めてポリゴンデータを解析したのはPSのリッジレーサーです。
初心者向けといえばそうかもしれません。
でも初心者ならまずは2D画像から挑戦ですね。
PSのゲームはインデックスカラーと16bitカラーなので8bitカラー(256色)のデータなら
ダンプエディタのビットマップ表示モードで眺めると絵らしきものが見れると思います。
そこからあたりを付けて画像の先頭アドレスを導き、カラーモードなどのフラグや縦横サイズ、カラーパレットを見つけ出しBMPなどに変換するプログラムを書いてみてはどうでしょう。
まずこれが第一段階ですね。
最近のゲームはRGBAの4byteをベタで持っていることが多いので数値ではこっちの方が見つけ易いです。

> ddsを表示してみようとDirectXのddsのフォーマットを調べてみたり、
> ddsファイルの中身をバイナリエディタで調べてみましたが、
> 正直とっとかりも見つかりません。
> このファイル解析に対してのヒントを差し支えない範囲で教えていただけませんか?
まず正常なDDSファイルはどんなデータなのか?それを知るべきです。
ZIPファイルやBMP、PNG、JPEGなど世の中にはいろんなファイル形式があります。
これらをダンプしただけで形式を判別出来るようになることがデータ解析への近道です。
ウチは日頃からいろんなファイルをダンプエディタで眺めることを心がけています。
そうすれば、そのPS3用ディスクから抽出したデータがどういったものなのか気づくはずです。
というか、そのことについて書かれているのが、この前のスレにあるHI_Ricky氏の書き込みです。


  [No.714] Re: それはですね 投稿者:tonakai  投稿日:2010/03/09(Tue) 05:25:16

なるほど。
とても参考になるアドバイスありがとうございます。
まずは簡単なのからやっていって経験を積むことから始めようと思います。

"まこちゃん"さん、
ありがとうございます。

また何かあればご質問があればするかもしれません。
そのときにはよろしくお願い致します。


  [No.715] 自分も質問です。 投稿者:まうぃんちゃん  投稿日:2010/03/13(Sat) 18:54:49

オンラインゲームの3Dファイルを自分が持っている3Dソフトで素材として扱い動画を作ろうと考えています。
3DソフトはShade 10とCINEMA 4Dを持っています。
しかし、当然フォルダに入っているファイルをそのまま読み込む事は出来ない為、
どうしたもんかと悩んでいます。
拡張子はupkとなっています。
まず何かのソフトで解凍なり抜き出す?必要があると思うのですが、
知恵が足りず検索してもいい方法が見つかりません。
どうかお知恵を貸してください。


  [No.716] なかなか難易度の高い質問ですねw 投稿者:まくちゃん  投稿日:2010/03/14(Sun) 03:49:26

これは名探偵なコナン君が必要ですね。
こんな質問を受けているようなものです。
「ここに金庫があります。中身を取り出したいです。ダイヤルを回したら開けられるようです。どうしたら開けられますか?」
(´・ω・`)超能力者じゃないんで無理です。

> 3DソフトはShade 10とCINEMA 4Dを持っています。
どちらも使ったことがないので扱えるデータ形式がわかりません。
XファイルやDXFなど一般的な形式は読み込めそうですが、まずそれを調べる必要があります。
一般的には、そのソフト独自の形式でファイルを扱います。
例えばShadeであればShade専用の形式で読み込みや保存がされるはずです。
その形式はどんなものかはメーカーから一般的に公開されているとは限りません。
メタセコイアのように公式ページでフォーマットを公開している場合もあります。
それらを参考にデータを変換します。プログラムを書いて翻訳機をつくるわけです。

国それぞれに異なる言語がある。日本でも地域によって方言がある。
常識だって国や地域それぞれ。
ゲームやツールでも同じような感じで開発者が扱いやすいものにするので、あらゆる形式があり決まりというものはありません。

> しかし、当然フォルダに入っているファイルをそのまま読み込む事は出来ない為、
> どうしたもんかと悩んでいます。
> 拡張子はupkとなっています。
> まず何かのソフトで解凍なり抜き出す?必要があると思うのですが、
PC用のゲームはDirectX形式で格納されている場合が考えられますが、通常ならそのメーカーが独自に開発したフォーマットであると考えるべきでしょう。
拡張子は当てになりません。
ゲームでデータを扱う場合、拡張子よりはファイルのヘッダ情報からデータ形式を判別することが多いです。
例えば一般的にあるBMPだからといって中身がBMPとは限りません。
開発者が勝手に付けているかもしれません。
upkという名前で推測するとそのファイルは複数のファイルが連結してると思います。
pkというのは「パック」という意味で使われることが多いです。
圧縮されているかは中身を見てみないとわかりません。
結論として、データを解析してなんらかのツールを自作しない限り、そのまま見ることは不可能かと思います。


  [No.717] Re: なかなか難易度の高い質問ですねw 投稿者:まうぃんちゃん  投稿日:2010/03/14(Sun) 17:37:29

そうですかー。
ありがとうございました。
ちなみにご存知かもしれませんが、まいんちゃんのパンチラを見つけました。
お礼にどうぞご覧ください。

http://minkch.com/archives/51544864.html


  [No.718] のほほ 投稿者:まくちゃん  投稿日:2010/03/14(Sun) 17:59:30

> ありがとうございました。
いえいえ。解析頑張ってくださいね。

> ちなみにご存知かもしれませんが、まいんちゃんのパンチラを見つけました。
ふふふ。この話題が上がる前に放送日に見て自分で気づきました。
Twitterに書き込みしましたが最初誰も信じてくれませんでしたw


  [No.719] Re: のほほ 投稿者:まうぃんちゃん  投稿日:2010/03/14(Sun) 18:21:31

さすがすぎますwwwww
ではまったりと解析がんばります。