プログラミング

Android

最近のAndroid開発環境の構築

最近では ADT付属のeclipseとして Google から提供されているので、これを使って開発環境を構築する手順をまとめておきます。 必要な物 Java (JDK) ADT Bundleのeclipse (AndroidSDKも同梱)
OpenGL

NVIDIA ドライバを 331.65 へ更新

今までは 320.49 を使用していましたが、これ 331.65 へ更新してみました。手元のボードは GTX 650 Ti なので、これで OpenGL 4.4 の拡張がちょっとは使えるかと期待して更新を行った次第です。 あとは、Kepler世代のGPU内部には HWエンコーダーが入っていて、これ NVENC が使えるようになるかと思っての更新です。
プログラミング

C++で UTF-8文字リテラルを使いたい

VisualStudio 2010 環境限定ではあるけれど、ソースコードがBOM付UTF-8であれ、ShiftJISであれ、文字リテラルを UTF-8 で処理させて、実行体Exeの中に格納できる方法を発見しました。 int main() { char str[] = "あああ"; printf( "%s", str ); return 0; } このようなコ...
DirectX

VisualStudio 2013をインストールしてみた

MSDNのほうではVisualStudio 2013がRTMになってダウンロード可能となったのでインストールしてみました。 今回はその記録です。 まず素のWindows7にインストールしようとしたら、セットアップできませんでした。 InternetExplorer10 を要求するようです。 DirectX SDKを使って開発している場合にはこれが少々問題にな...
プログラミング

関数プロファイラーライブラリを更新

以前作成した関数プロファイラーライブラリを更新しました。 友人に使ってもらったのですが、「マルチスレッド対応してない!」と指摘されました。確かに未対応だったのですが、プログラムが落ちてしまうくらいにダメダメだったようで。今回はその対応をしたものとなります。 使い方等は以前と変わらずです。1つ問題があって、本ライブラリではマルチスレッド時のスレッド関数の終了で...
OpenGL

OpenGL 1.1で気をつけること

OpenGL 1.1 のバージョンであれば、今ならどこでも動くだろうと思ってやむなく使うこともあるかと思います。 そんなときに意外と嵌まってしまうポイントがあるようだったので、ここに記録&公開しておきたいと思います。もしも○○も気をつけなきゃいけないポイントだよね!ということがあればコメントにでもいただけると嬉しいです。 ・ちゃんと初期化処理を行う。 ドライ...
プログラミング

関数プロファイラーライブラリを公開です

ちょっと前から作成していた関数プロファイラーをライブラリの形にしたので、これを公開します。 使い方 プログラムの頭で、ProfilerInit() を実行し、終了直前で ProfilerExit() を呼び出します。 付属のライブラリをリンクするようにして、コンパイル時のオプションで"/Gh /GH"を指定します。 例 追加のインクルードディレクトリに DI...
プログラミング

DIAについて -関数フック入れてのプロファイラ作成 (2)

Debug Interface Access SDKを用いて pdb ファイルにアクセスしてみます。 これもプロファイラ作成のための準備のため、です。たぶん簡易プロファイラ作成で一番手間なのはここの分野じゃないかなと思っています。
プログラミング

関数フック入れてのプロファイラ作成 (1)

前回の /Gh,/GH で関数にフックを入れられることがわかったので、これを利用して関数プロファイラを作成してみようと思います。 ただしここで1つ注意点があります。確かに呼ばれた関数のアドレスがわかりますが、そのアドレスがどの関数なのかを知る必要があります。アドレスから関数への対応を知るためには、いくつか方法があります。 mapファイルを参照する pdbファ...
プログラミング

gccでMSVCの_penter,_pexitと同様のことをするには

前回フックについて調べた勢いで、gccで VisualStudio の /Gh,/GHオプション(_penter,_pexit)と同様のことを行うにはどうすればよいかを調べてみました。 調べてみると gcc にも同様の機能を実現するためのオプションを発見しました。 ”instrument-functions”というものです。ただフックの関数名はちょっと違うよ...