Home

プラチナゲームズ プログラマーブログ

VisualStudio デバッグを便利にしよう autoexp.dat ~その2~

どうも 森田 和則です。(たまにはフルネームで)

最近やっと PlayStation3 を購入しました。
使っていたSony製のハードディスクレコーダー(アナログ)も6年経ち
不調になってきたので torne と合わせて購入しました。

かなり快適に録った映像が楽しめます。
操作もいい感じですばらしいです。

PlayStation3でしか発売されていない名作もいろいろプレイ
 ・メタルギア ソリッド 4 ガンズ・オブ・ザ・パトリオット
 ・アンチャーテッド 黄金刀と消えた船団(アンチャーテッド2)
 ・ゴッド・オブ・ウォー III

全てかなり良かったです。
他にもいい作品がありますが、お金が・・・・

お金・・・・


ふってこないかな・・・・・・




さて、お金は宝くじでも買って当てるとして
autoexp.dat 第二回目です。
今回は社内ライブラリをサンプルに説明していきます。

Continue reading

入力支援ツールの作成~その4 設計~

お久しぶりです。 森田です。

さっそく続きをどうぞ

Continue reading

VisualStudio デバッグを便利にしよう autoexp.dat ~その1~

どうも 森田です。

Webを徘徊しているとブログネタになりそうな物を発見しました。

Faith and Brave - C++で遊ぼう
BoostのVisual Studio Debugger Visualizers


Boost関連でお話されていますが、VisualStudioの機能の事です。
空いた時間でテストしながらになるので間違った事を書くかもですが、全てひっくるめて経過報告として書いていきます。

興味のある方はつづきをどうぞ

Continue reading

入力支援ツールの作成~その3 ファイルの読み込みと書き込み~

最近は暑くて暑くて自転車での通勤が苦痛になってきました。
ビショビショになってしまうので、会社についてすぐにシャワーを浴びたい気分ですよ。。。


どうも森田です。
日記風な滑り出しとなりましたが、スルーして続きです。

前回テキストエディタを作成する事になり、HTMLの設定を行いました。
今回は、ActiveX を使用した ファイルの入出力の関数を作る所からスタートです


ではでは続きを


Continue reading

入力支援ツールの作成~その2 テキストエディタ~

どうも、お久しぶりです 森田です。


前回からかなり時間が経ってしまいましたね。
申し訳ないです。

前回の記事をみていない方は 入力支援ツールの作成~その1 必要性~ からどうぞ。

ではさっそく

Continue reading

四方山話:いつまで経っても手放せない道具

こんにちは、大森です。

新人歓迎会のときに痛めた右手首がまだ治りません。
あれから1ヶ月たつのになぁ...。

今回は少し方向性を変えて、私が普段仕事で使用している道具について書いてみたいと思います。
皆さんにもなじみのある、どこにでも転がっているものです。


四方山話:いつまで経っても手放せない道具

Continue reading

movabletypeにCustomEditorButton2を追加する。

どうも森田です。久しぶりに プラグイン追加のお話を。


前回 SyntaxHighlighter を追加したのですが、
記事を書く時に毎回タグを指定するのが面倒に感じました。

<pre class="brush: c;">

</pre>
「クラス指定はどう書いたっけ・・・」とか思うわけです。
ましてやプラグインを導入したわけではない齋藤さん大森さんはマニュアルを一から読まないといけないわけです。
そんな事やってられません。

そんな中、「誰かボタンを追加するプラグインでも作ってないかなぁ」

customEditorButton2_000.png
と思い、プラグインを検索した所、



blog.aklaswad.com:CustomEditorButton2
http://blog.aklaswad.com/mtplugins/customeditorbutton2.html
customEditorButton2_001.png
あっさり発見しました。

このプラグインは任意のボタンを追加する事ができるようになるプラグインです。
実は、SyntaxHighlighterを追加してその日すぐにこのプラグインを追加しました。

今回は実装方法、ボタンの追加までを紹介致します。
ちなみに、追加したプラグインも公開します。(プラグインは、記事下部にあります。)

では、実装方法から


Continue reading

float型のエンディアン変更バグ 解決編

  • 2010年6月29日 22:19
どうも 森田です。

前回は問題が発生した所まで書きました。前回の記事を読んでいない方はこちらから


ではさっそく

Continue reading

float型のエンディアン変更バグ

  • 2010年6月28日 17:43
お久しぶりです 森田です。

E3に行ってまして更新が止まっておりました。申し訳ないです。

今回はバイナリデータ関連のお話。
みなさんが遊んでいるゲーム中の情報はバイナリデータとして保存されています。
例えば、
 ・キャラクターモデルのデータ
 ・アニメーションデータ
そのデータは実行される環境、プラットフォームによって方式が違い中身が違います。
(インテル系プロセッサはリトルエンディアン方式。Motorola系ではビッグエンディアン方式。○○のゲーム機では××方式)
その為、プラットフォーム毎に対応した方式でデータを出力する必要があります。
今回はその出力時に発生するバグのお話です。

意外と気付かずバグを仕込んでいる可能性が高いので、エンディアンを扱っている方はこのまま読んで頂いた方が安心できるかと思います。


では、さっそくエンディアンの説明から


マルチバイトのバイナリを表現、配置する方式をエンディアンと呼びます。
リトルエンディアン、ビッグエンディアンが存在していて、その違いを例として以下に示します。
(ミドルエンディアンというのもあるらしいですが、今回直接は関係ないので興味があれば調べてみて下さい。)

例)600000の数値をバイナリで保存する場合。

600000を十六進数、4バイト表記にする。
600000 = 0x000927c0

この4バイトの数値をバイナリで保存すると
エンディアン1byte目2byte目3byte目4byte目
リトルエンディアン0xc00x270x090x00
ビッグエンディアン0x000x090x270xc0
となります。

リトルエンディアン最下位のバイトから順番に表現、ビッグエンディアンでは最上位のバイトから表現されます。
Windowsはリトルエンディアンなので、Windowsからビッグエンディアン用のデータを保存しようとする場合は、バイトを入れ替えて保存する必要があります。

この「バイトを入れ替えて保存する」の処理を間違ってしまうと気付きにくいバグが発生してしまうのです。
もしかして、あなたの作ったプログラムにバグがあるかも知れません。
「え?どういうこと?ナニナニ?」と不安な方は続きをどうぞ

Continue reading

誰が為のプログラミング:第3回 /*欲しいものは何ですか?*/

こんにちは、大森です。

新人歓迎会も無事終わり、これで年度初めのお祭りは全部消化しました。
今年の新人歓迎(観芸)会は、豪勢な舞台と仕掛けで、だいぶ派手に仕上がってました。
昔に比べると、何というか次世代のゲームを見ているような、そんな感じの芸でした。
まぁ派手なのと面白さは別の話なので、そこは厳しく行こうと思います。

さて今回は、実際のコードを見ながら、
「何を」「どこに」書けば使い易いプログラムになるのか?
ということを考えてみたいと思います。


誰が為のプログラミング:第3回 /*欲しいものは何ですか?*/

Continue reading

Index of all entries

Home

Return to page top