Some Memorandum

DirectX11に挑む素人の備忘録。

2015-01-01から1年間の記事一覧

WINAPIとは

Windowアプリケーションを作るときに使うインターフェース(関数群、的なもの)。 専用の型がいくつかある。BYTE型 HRESULT型 LRESULT型 UINT型などなど。とはいえ、typedefで名前がついてるだけで実際はunsigned char型だったり、LONG型だったりらしい。ビビ…

スケルトンコードとは

プログラムを書くときにいっっっっっっつも使うテンプレコードのこと。骨組みコード。 たとえば #include <stdio.h> void main{ return 0; } みたいな。当然だが書く言語や分野とかでスケルトンコードは違う。そういった目的に合わせて、最近の開発環境たちはスケルト</stdio.h>…

typedefとは

typedef(タイプデフ)は、プログラミング言語のCとC++のキーワードである。これはデータ型に新しい名前をつけるために使用される。プログラマが容易にソースコードを理解できるようにすることが目的である。 typedefなし int coxes; int jaffa; ... coxes++…

LRESULT・HRESULTとは

LRESULT は通常、ウィンドウプロシージャの戻り値としてよく使われます。 LRESULTは「LONG型の戻り値」です。ウィンドウプロシージャの戻り値等で使われますが、意味的にはそれ以上の特定用途はありません。つまり、各関数やAPIの仕様でその値の意味が決まり…

ハンドルとは

ハンドルってのはいわゆるポインタみたいなもんで、メモリ上のどこかに存在するリソースの場所を特定するための物です。多分実体は void * が typedef で別名定義されてるだけだと思います。 detail.chiebukuro.yahoo.co.jp

Windows SDKでDirectX11

WinSDKのみを前提にしたサンプル(DirectX11の初期化、画面クリア)を見つけたので、それを解析していこうと思う。 で、最初の問題。 ビルドはできるし実行もできるんだけど、即時終了(ウィンドウが出た瞬間消える)してしまう。 ディレクトリファイルを設定し…

DirectX SDKとWindows SDK

DirectX11の開発を、 www.amazon.co.jp この書籍を参考にはじめてみた。 DirectX9など、過去バージョンの開発もしたいなら VisualStudio2010以降(恐らく)+DirectX SDK の組み合わせになるが、 DirectX11のみの開発なら VisualStudio2012or2013+Windows SDK…

DirectX11をVisualStudio2013ではじめる

DirectX11をやってみることにした。 環境設定の流れを調べてまとめておく。 参考サイト:Setting up a DirectX 11 project in Visual Studio 2013 (and Visual Studio&nbsp;2012)digitalerr0r.wordpress.com DirectX11をインストールする。自分の場合は入っ…

数学パズル

入門書の次のステップになにかいい本はないかなと探して こんなの買った。 www.amazon.co.jp 課題を設定してそれを実現する過程で必要な知識が身につけていく というスタイルが一番モチベーション続く気がする。

M_PIで困った

ヘッダファイル<math.h>をインクルードしたのに マクロ『M_PI』が使えない。 調べてみたら #include達の上に#defineで _USE_MATH_DEFINES って書いたらええよとのことだったので書いた。 なおった。</math.h>

fputcの仕様

CSVファイルを読み込んで(char) 計算して(int) 別のCSVファイルとして出力(char) というのをやりたかったので、char⇔int変換をやってくれる関数を探してました。 で、検索してたらfputcにたどり着きました。 int fputc(出力したいもの(int型),出力先ファイル…

C言語逆引きハンドブック

を買いました。 今まで「なんすかこれ」ってなったらネットを徘徊して情報を集めてました。

fopenとfopen_s

ある方に頂いたCのテキスト『やさしいC』を進めてます。で、その中にこんなコードがありました。

トゥーンな質感

質感 ゲーム内の3DCGの質感は 超リアルなのもいいけど 『大神』みたいな質感にあこがれてる。 で、調べたらああいう質感を出したいときは「トゥーンレンダリング」とか「トゥーンシェーダ」とかを使うらしい。(大神は独自手法だったけど) やってみよう Unit…

スクリプトの名前変更は死を招く

スクリプトを書いてる内にだんだん意味合いが変わってきてスクリプト自体の名前を変えたくなることがあります。 ちゃんと後先考えて書き始めればそんなことないんだろうけど、まだまだ未熟だとそんなこともあるのです。 しかも、「スクリプトAの名前をスク…

ソースコードの貼り付け

今までGitHubのGistっていうサービス?を使って貼り付けてたけど、 なんか見づらいし色もつかないしでむむむってなってた。ので、ちゃんと調べたらHatenaがいろいろサポートしてた。

連打と当たり判定

現状 攻撃ボタン(z)を押すと前方に当たり判定(AtackCollider)が出現。 決めた時間(AtackTime)で消える。基本的にアニメーションに合わせている。

スクリプトの実行順を明示する

現状 新しいスクリプトDetachChildren(以下、スクリプトB)を親オブジェクトに適用し、 子オブジェクトに既に適用してあるスクリプトInstWall(以下、スクリプトA)と共に実行する。

親子とスクリプト

現状 オブジェクトの位置を基準に別のオブジェクトを生成するスクリプト。 これを適用していたオブジェクトを子オブジェクトにしたら、親オブジェクトの位置を元に生成するようになってしまった。

親子関係で管理を楽に

現状 別々に作ったゲームオブジェクトのプレハブ。 でも頻繁にそれらをセットで使うことがある。

敵をつくる

丁寧に記事にすると時間かかって本末転倒なのが痛いほど分かったのでシンプルに投げやりに行くことにした。 現状 Atackボタン(z)を押すと決めた時間だけ攻撃の当たり判定が出現する。

床と壁の区別

Unityで『3Dな2Dアクションゲーム』という妙なものをつくって遊んでいます。 その過程でいろいろ壁にぶち当たって死にかけた内のひとつが 床と壁が区別できない ことでした。 は? では超わかりやすいキャプチャ達を見てみましょう。

伝説のはじまり

Unityでいろいろと作り出してから備忘録が溜まってきたので、開発日記モドキを書いていきます。 とはいえプログラムをまともに始めてまだ4ヶ月。 スパゲッティがみるみる絡まっているのでコードはあまり参考にならないかと存じます・・・。 でもOculasとかも…