Game開発

Native C++ → Managed C++ DLL → C#

C#でツール作ってるけど、基本処理が遅いC#で高負荷確定の3D描画をやるわけにはいかないので、C++で書いた描画部分をC#で使えないか模索中。 んでとりあえずこれでやってみるかって決まったフローがタイトルの Native C++ : 描画エンジン Managed C++ DLL : …

ゲーム入力制御

なんかひさびさに記事まとめようと思ったら前と同じ系統。 何かずっとおなじことしてたように思われそうだけど、そんなことないので。 今やってるのは、ゲームインプットの制御。 物理的にキーボードのキーの数、パッドのボタン数は環境さえ変わらなければ固…

今やっていること

本来なら影シェーダを組み込む予定だったけど、ちょっと脱線。まぁどちらにせよやる予定だった事。 描画順の管理 描画順は不透明⇒半透明と決まっている。先に半透明を描画して、不透明を描画すると半透明の後ろに不透明があった場合に描画されなくなってしま…

ポストエフェクト

前回言ったとおり今の描画システムでシェーダを試せるか組み込んだ。まずはHDRとかFSAAなどのモデルなどを描画したテクスチャをいじくるシェーダーを入れた。といってもガウスサンプルを借りてプロセスフローを組み込めるか検証しただけなので、ぼやけた画像…

シェーダ復活

数ヶ月ぶりにシェーダ復活。虎君もお久しぶり。 ちょっとこのままシェーダいじって今のクラス構造で問題ないかテストさせてみよう。

ぬのっぬ!!スカァイ。

モデルデータから布オブジェクトの作成、布描画の際に法線、テクスチャ、UVを参照できるようにした。 ※静止画だと分かりづらいけど、空柄のメッシュがぬのぬのしています。 頂点法線自体はコピーできていたはずなんだけど、コピー処理に不具合があったみたい…

マルチスレッド化

PhysXの作業用スレッドを用意した。NxUserScheduler を継承してオーバーロードするだけなので、そんなに手間はかからなかった。トレーニングに既にあるので、そいつを参考に自分のプロジェクトに乗せただけ。布のテカリが気になるけど、とりあえず次のりファ…

ごたごた整理

ライブラリ側の方を整理してた。ライブラリ側が結構年増で、古い書き方をしていたり統一がされてなかったり、なんか無駄にこだわってるけど、これでいいじゃん?って思う部分を修正してた。 あと http://www.microsoft.com/japan/msdn/vs_previous/visualc/t…

ぬのっぬの!

出来た出来た。つってもまだトレーニングのクラスを使っていたり、頂点法線が適用されていなかったり、布の設定値がよく理解していないせいで、希望する動きになっていなかったり、テクスチャまだだったり、モデルデータから布用データの変換やっていなかっ…

あれがダメだったのか。

布を自分のプロジェクトに入れてみた。結果から先に言えばまだ出来てない。 残りシミュによって生成されたモデルデータを描画させる必要がある。 本当なら今日中にぬのぬのしたかったんだけど、ブラックボックスの所でモデルデータがうまく生成されずに苦労…

あれ意外と楽?

今日は時間がなくてClothのサンプルだけ見てた。以外と設定も少なく楽なんじゃないか?って印象。 PhysX SDK にはトレーニングとサンプル2つプロジェクトがあって、サンプルの方を見てみたら以前分からなかった CCD の意味が分かった。連続衝突検出の名の通…

分かりづらい

PhysX SDK に入っているトレーニングプログラムと解説ドキュメントを見ながら、自分のプロジェクト上でテストコード書いて試しているんだけど、フィルターとオーバーラップの箇所がいまいち。フィルターの条件式を設定した後に各シェイプのフィルターを設定…

AgPerfMonまだ

入れてない。見た感じ仕込みしておいた実行ファイルをAgPerfMonから実行して色々とモニタリングするご様子。 ただ別の問題があって、Debug実行ファイルだとVC上Only、Release実行ファイルは今のところ最初のコンフィグ読み込みでミスって起動すらしない。。o…

PhysXVisualDebugger導入

PhysXの開発者ページ見てたら PhysXの状態などを表示するデバッガーを見つけたので、入れてみた。 って言ってもデバッガに接続しただけで、パラメタの登録するとデバッガがハングしてしまう。 コードは接続するだけなら凄く楽。接続/切断合わせて2行で終わ…

デバッグ描画

提供されているデバッグレンダラーで渡されたデータを描画してみた。 ただ条件は不明だけど毎フレーム呼ばれないので描画がちらつく。 だからといって前回のデータを描画し続けてもずれるのは確実だし。 原因が分からなかったら、自前で形状だけでも分かるや…

PhysX導入中。

PhysXを導入してみた。まだ箱が飛び散るだけ。パラメタもサンプルのやつ。 サンプル試そうにもソリューションが vc2008 だから試せない。しぶしぶドキュメント(英語)を見ながら進めた。 よく使う処理の逆引き作っておかないと忘れそうなくらい量が多い。とり…

std::stringを派生

以前の日記で sscanf か何かをstringで出来ないか?と書いた記憶があるけど、今日ちょっと作った。変換指定文字の種類やフィールド幅、精度やフラグなどは全く入っていないけどw std::string str; char buffer[64] = ""; str.assign( "[" ); str.append( it…

とりあえず描画とデバッグメニュー

前回のデバッグメニューの不具合部分と、放置され続けてた汚いコードを整理した。デバッグメニューはテンプレートの塊なんだけど、テンプレートって何か俺出来る感を得られるよねw デバッグメニューいじってて見つけたけど、テンプレートってビットフィール…

デバッグメニューに不慮の疑いあり

デバッグ描画を強化してて、ついでだからそろそろデバッグメニューもガシガシ使うかーと思った矢先。表示が位置がおかしかったり、リークしたり、リークが分かりづらかったり。作って放置しておいたのが原因かー。でもデバッグメニュー作るのおもしろいから…

ファイル周りのマルチスレッド化

今のところ何も問題いなそう。ファイル管理の更新時の間にクリティカルセクションに入るようにして、 スレッドを CreateThreadEx から _beginthreadex に変えた。 IOは実質一つしか存在しないらしいので、そこで排他処理を施してあげないとダメみたい。 ス…

うまくいくはずがないのだ!

ファイル管理の更新メソッドをマルチメソッドで呼んでファイル読み込みさせたら、タイミングも場所もばらばらだけどいたるところでハングする。せめてパターンあれば。。あと今更だけどリソース管理がうまくいっていないみたい。orz 最悪だw

すっ キリ り

リソース周りを綺麗にした。片っ端からメソッドを private にして、案の定一部 friend 化した。ついでに動かなかったシェーダビューワモードも動くようにした。そろそろデバッグ描画用意して、エフェクトエディタモード用意したいなー。エフェクトが出来たら…

テクス・ちゃ〜♪

一度でいいからたむけんの経営する肉屋にいってみてー。IMEさんよ。。。「やってみる」「してみる」「いってみる」のみるを「見る」に変換せんでくれ。。すかん。 以前ファイルとリソース周りを整理したときに簡易モデルのテクスチャが放置されていて、テク…

なんだよTCPつれないなー

昨日からいじっている WinSock を使ったネットワークプログラムで、クライアント側の操作で、サーバ側の画面が変わらないかなーって思っていじっていたけど、TCPって知識どおり、くそ真面目でめんどくさいなー。やっぱこういったのはUDPになるのかなー? 昨…

開発環境に不満がある

VCとかじゃなくて、ログやデバッグメニューの事ね。デバッグメニューももっと使いやすいようにしないと使わない。特に不満があるのがログ。ログを出しているけど見ても分かりづらい。日頃でなくてもいいログとエラーログが、ごっちゃになっているのが原因。…

freadな罠

そりゃねーべ、エフリード!テキストで開くと失敗する。MSDN兄さんに聞いてみました。 指定のストリームがテキスト モードで開いている場合、キャリッジ リターンとライン フィード (CR-LF: carriage return–linefeed) は単独のライン フィード (LF: linefee…

参照カウンタの不可視化

参照カウンタのバグを直した後、改めてファイルクラスを使っているところを見たら、どうも分かりづらい。原因はアタッチの概念を知った上で組まないといけない。これじゃ意味ない邪魔なだけだ。なので使用する上で不要だと思うものを後ろに隠した。 変更前 …

参照カウンタ修正のつもりが。。

参照カウンタがおかしかったので直していたつもりが、ファイル読み込みの根元部分をいじっていた。ちゃんとクラスごとにポリシー持たせないと戸惑うね。 いじった部分は外部ファイルの読み込みを今まではファイルの種類ごとに分かれていたけど、処理をわける…

自分がよく使うツール一覧

なくてもいいけど、あると知らなかった事を後悔するソフト、ツール。ユーザにツールの存在を知らなかった事を後悔させることがツールの理想系なんじゃないかな。と、まあ自分がよく使っているツールをまとめてみました。ただ別に紹介するレベルじゃないもの…

メタセコのxファイルから

新しいパソコンになってから、モデリング環境整っていなかったので メタセコ入れてみた。まぁメタセコ自体の感想はここではなし。 とりあえずいたっきれを既存のxファイルエクスポートで吐き出してみて 自分のプロジェクトで正常に読めるかテストしてみた。…