『DirectXゲームグラフィックスプログラミング』(N2Factory) [本(技術書)]
やはり、具体的にDirectXを使って何かプログラムを作ろうと思ったら、リファレンス的な内容の本より、こうしたDirectXの使い方や仕組みを1つ1つ詳しく解説してある本のほうがいいですね。
今まで苦手意識のあったDirectXも、やっと少し慣れてきたような感じがします。
昔は、DirectXというと、本当にちんぷんかんぷんだったのですが、今は、こうしたいい本もありますし、よくよく調べていくと、DirectXもOpenGLに共通するようなところもたくさんあります。
基本的な仕組みと、DirectXの設計思想のようなものが、感覚的にでもつかめれば、大分分かってきて、プログラミングもしやすくなります。
今は、本だけでなく、ネットにもいろいろ情報がありますから、そうした情報も手助けにして、勉強していけば、それほど難しくもないのかなと思います。
ただ、DirectXの方が使いやすい場合とOpenGLの方が使いやすい場合と、その用途ややりたいことによって分かれるようです。
迷ったときは、DirectXとOpenGL、それぞれのメリットとデメリット並べて比較すると分かりやすいと思います。
今は、サンプルを参考に、いろいろ小さなプログラムを作ったりしています。
そのうち、人に説明できるレベルになったら、OpenGLのブログを作ったときと同じように、DirectXのブログも作ってみようかと思います。
ちなみに、左のプラグインで紹介している「GLUTでOpenGL 3Dプログラミング」ですが、そこそこアクセスがあります。
一応、世の中の役にはたっているみたいです…
『DirectX ゲームグラフィックス プログラミング Ver. 2.1 Vista [NextCreator] (NEXT CREATOR)』(N2Factory著、ソフトバンク・クリエイティブ)
『GPU Gems』をインターネット上で見つける [本(技術書)]
この本は、GPUを使ったシェーダ・プログラミングなどについて、様々な手法が載っている本です。
ほしいなと思っていたのですが、何せ値段が高いので躊躇していました。
会社のお金で買うのさえも、躊躇していました。
しかし、英語版ですが、以下のURLで公開されています。
NVIDIAの開発者向けのホームページらしいです。
http://developer.download.nvidia.com/books/HTML/gpugems/gpugems_part01.html
かなりうれしいですし、しばらくは重宝しそうです。
でも、そのうち、日本語版がほしくなって、買っちゃったりして…
こちらのデモも面白いですね。
NVIDIAの技術者とかは、競争が激しいから大変だろうけど、仕事、面白いんだろうな、と思ってしまいました。
こんな技術を身に付けたいものです。
CEDEC 2007 - NVIDIA、DirectX 10世代の流体力学技術とスキンシェーダについて解説
GPU Gems 日本語版―リアルタイムグラフィックスプログラミングのテクニック、ヒント、トリック
GPU Gems 2 日本語版 ?ハイパフォーマンス グラフィックスとGPGPUのためのプログラミング テクニック?
OpenGL Shading Language (OpenGL)
DirectXシェーダプログラミング 仕組みからわかるゲームエフェクトテクニック [NEXT CREATOR]
『DirectX9 DirectX Graphics [I・O BOOKS] 』その後 [本(技術書)]
ブログのアップはサボっていますが、DirectX9の本、『DirectX9 DirectX Graphics (I・O BOOKS) 』は読み続けています。
今日、サンプルフレームワークのところを読み終わるところで、3次元の数学の章は先に読んでしまったので、大体半分が読み終わったことになります。
章の内容の、得意、不得意にもよりますが、大体、1日30分くらい、この本を読むのに使って、1週間に1章は読み終わることができます。
本の内容は、今まで読んだ内容では、DirectX Graphicsの初期化、2Dグラフィックス、サンプルフレームワーク、3Dグラフィックスの数学などについて、主に、DirectX Graphicsやサンプルフレームワークの関数の解説が中心に書かれています。
そして、関数の使い方を示す簡潔で短いサンプルコード、関数を使う上での注意事項が書かれています。全体のサンプルコードは、付属CD-ROMに譲るという形になっています。
こちらも、解説した技術だけを使ったものにしぼられているようなので、余計なコードに惑わされることはなさそうです。
これから、いよいよ、3Dグラフィックスの解説に入っていきます。とても、楽しみにしています。
是非、これから、DirectX9、特に、DirectX Graphicsを勉強してみたいという人は、読んでみてください。なかなかお勧めです。
『DirectX9 DirectX Graphics (I・O BOOKS) 』(NRTTKR著、工学社)
『GLUTによるOpenGL入門2 テクスチャマッピング』(床井 浩平) [本(技術書)]
本は10冊同時に読めという内容の本を見かけましたが、自分もDirectXの本や自己啓発書と平行して、この本を読んでいます。
この本は、まるまる1冊、OpenGLのテクスチャマッピングの技術を扱った、他に類書のないCG技術の本です。
テクスチャマッピングの解説は、さっと済ませて、テクスチャ行列の使い方や、スフィアマッピングやキューブマッピングといった環境マッピングや、テクスチャマッピングを応用した様々なエフェクト技術を、その数学的な意味とあわせて、詳しく扱っています。
さらには、GLSL(OpenGL Shading Lanuage)の解説も行っています。
このように、この本は、テクスチャマッピングを中心に、いろいろなエフェクト技術を詳しく扱っていますが、かなり深い内容なので、正直言うと、少し難しいと感じます。
ちゃんと理解するには、数学的なロジックも追って読んでいかないといけません。
どちらかというと、中級者、上級者向けで、OpenGLの基本をある程度理解した人向けです。
OpenGLの基本を理解したい人には、同じ著者の前作、『GLUTによるOpenGL入門―「OpenGL Utility Toolkit」で簡単3Dプログラミング! (I・O BOOKS)』の方をお勧めします。
また、画像ファイルの読み込みなどは、著者お得意の手抜きでさっと済まされているため、これについては、他の書籍やネット上の情報を参考にしなければならないと思います。
私は、正直言うと、テクスチャマッピングは今ひとつ苦手で、その価値も軽く見ていましたが、この本を読み始めて、その奥の深さや、できることの範囲の広さ、面白さを知ることができるようになりました。
是非、この本を読んで、理解してしまおうと思っています。
この本は、CGを学んでいる人、仕事で使っている人には、一読の価値のある、優れものだと思います。
『GLUTによるOpenGL入門2 テクスチャマッピング [CD-ROM付]』(床井 浩平 著、工学社)
『MFCによるOpenGL3Dプログラミング―ライブラリを使って簡単に3D-CG図形を描画する! (I/O BOOKS)』
(工学社)
『DirectX9 DirectX Graphics [I・O BOOKS] 』 [本(技術書)]
やはり、できれば、3Dグラフィックス関係のプログラミングの仕事がしたいというのことあり、いろいろと勉強しています。最近は、新しい技術としてDirectXの勉強を始めました。
『DirectX9 DirectX Graphics (I・O BOOKS) 』という本を読んでいます。
思っていた以上にわかりやすく、重宝しています。
この本には、DirectX Graphicsの関数などの解説が、詳しく、わかりやすく書かれています。
DirectXの関数は引数が多く、きめの細かい設定ができるのですが、その反面、そこがDirectXの難しさという気もします。
設定の仕方によってはエラーになる場合もあります。また、デフォルト値を設定すればいいところも結構あります。
そういった、細かい部分の情報ももらさず、この本では解説されています。
痒いところに手が届くような内容の本だと思います。
書いた人が、読者がどこでつまずきそうか、よく知っていて書いているという感じがします。
ただ、この本、一見、それほど分量がないように見えますが、結構読み応えがあります。
最初、慣れるまでは、なかなか読んでも進まないかもしれません。
それなりの覚悟が必要かもしれません。
DirectXは決して簡単ではないということでしょうか。
他の本でも、これは同じだと思います。
この本の作者は、この本を発行している工学社の、編集部の方のようです。
一日中、CG関係の本を書いたりできるなんて、ちょっとうらやましい気もします。
こんなことを書いたら、ちょっと失礼かもしれませんが…
『DirectX9 DirectX Graphics (I・O BOOKS) 』(NRTTKR著、工学社)
『基礎からわかる画像処理』 [本(技術書)]
ちょっと前まで、『猫でもわかるC#プログラミング (猫でもわかるプログラミングシリーズ)』という本を読んでいましたが、それと平行して『基礎からわかる画像処理―画像処理のアルゴリズムを理解する 基礎ボケ画像ボケ補正画像逆光補正画像パノラマ画 (I/O BOOKS)』という本も読んでいました。
画像処理関係のプログラム開発の仕事がしたいというのが、その理由です。もちろん、3次元CGを使ったプログラムの開発が一番やりたいのですが、画像処理も、いろいろ応用すると面白そうなので、試しに、基礎的なことを勉強してみました。
今までも、画像処理関係の技術をまとめた本を読んだことがあるのですが、いつも、途中で挫折していました。
しかし、今回は、無事読み終わりました。
『基礎からわかる画像処理』は、本当に画像処理の基礎的なことしか書いてありませんが、様々な手法が、C#のサンプルコード付きで、コンパクトにまとめてあります。
まずは、基礎から勉強してみたいという方にはぴったりの本なのではないかと思います。
分量はそれほど多くないため、頑張れば、1日1章くらい読めてしまいます。
最近勉強したC#の実践的な使い方の勉強にもなり、とても参考になりました。
今度は、JPEGフォーマットを詳しく解説した本でも読んでみようかと思っています。
『基礎からわかる画像処理―画像処理のアルゴリズムを理解する 基礎ボケ画像ボケ補正画像逆光補正画像パノラマ画 (I/O BOOKS)』(工学社、田中 成典監修、西田 義人、吉村 智史編纂)
『猫でもわかるC#プログラミング』 [本(技術書)]
今は、正月休みですが、仕事があるときは、通勤途中や行きによるコーヒーショップで、『猫でもわかるC#プログラミング』を読んでいます。
いろいろあって、やはり、得意なC++だけでは、これからはやっていかれないかもしれないなと思い、久しぶりに言語の学習をしています。
フォームを作って、簡単にプログラミングできますみたいな本にはあまり興味がなく、まずは言語仕様を知りたかったので、この本にしました。
昔だったら、気合入れて、『独習C#』見たいな本で、いきなり深く学ぼうとしたと思いますが、今は、忙しいし、他にも勉強していることがたくさんあるので、まずは、言語仕様が知りたいと思い、この本にしました。
かなり、初心者向けに書かれていますが、一応、全体像を知りたいという目的なら、問題ない本だと思います。
分かりやすいし、サイズも小さめなので、行き帰りの電車の中で読んだりするのには好都合です。
『独習C#』見たいな分厚い本は、この本を読んだ後に、さらに深く学びたくなったら読みます。
C#を勉強してみて、いろいろ新しい概念が出てきて面白いです。
2次元配列などの扱いも、C++とはかなり違いますし、プロパティやインデクサなども面白いですね。
Javaもいいけど、C#も魅力的ですね。
まだまだ、知らないことがたくさんありますが…
『猫でもわかるC#プログラミング (猫でもわかるプログラミングシリーズ)』
(粂井 康孝著、ソフトバンク・クリエイティブ)
『C#の絵本』((株)アンク著、翔泳社)
神田三省堂で『OpenGLプログラミングガイド 原著第5版』を買いました [本(技術書)]
今日は、久しぶりに神田三省堂に行ってきました。
お目当ては、『OpenGLプログラミングガイド 原著第5版』。
最初、秋葉原のラオックスあたりで買おうと思ったのですが、久しぶりに、神田神保町に行ってみたくなり、三省堂で買うことにしました。
実は、神田神保町のあたりが大好きで、できることなら、将来住みたいと思っているくらいです。
今の収入と、フリーエンジニアの不安定さでは、ちょっと難しいところがあります。
でも、本気で探せば、今の収入でも住めるようなお手ごろ賃貸物件があるのかもしれませんが…
その場合は、かなり頑張って働いて、かなり節約もしないと厳しいとは思います。
さて、でも、それは将来の夢で、今日の目的は、神田三省堂で本を買うこと。
久しぶりに行った三省堂、なんか雰囲気が少し変わっていました。
何となく高級な感じになっていました。
目的の理工学書売り場に直行したのですが、売り場の配置も変わっていました。
営業時間も長くなったみたいです。
本当に久しぶりだったので…
お目当ての、『OpenGLプログラミングガイド 原著第5版』ですが、もちろんちゃんと売っていました。
中に少し目を通して、エイやで買いました。
こんなに高い本を買うのは、本当に久しぶりです。
しっかり、領収書もらいました。
一応、フリーエンジニアなので…
もう一つのお目当ては、洋書売り場で、洋書のコンピュータ書籍を物色すること。
売り場はそれほど大きくないですが、ちゃんといい本がそろっていて、中も目を通せるのがいいところ。
『OpenGL Superbible: Comprehensive Tutorial and Reference (OpenGL)』と『OpenGL Distilled』がかなり魅力的でした。
『OpenGL Superbible』は相変わらず、圧倒的なボリューム感と詳しさが魅力です。意外に安そうだったので、ちょっと迷いましたが、そう何冊も高い本を買うわけには行かないので、今日はちょっと我慢しました。
さて、もう1冊の『OpenGL Distilled』。
この本は、今日、初めて知ったのですが、なかなかよさそうな本でした。
コンパクトにOpenGLの機能をまとめていますし、ちゃんと各プラットフォームでのOpenGLの使い方にも触れられています。
ただ、ページ数の割りに高かったので、三省堂では、とりあえず我慢して、家に帰ってからアマゾンで買いました。
三省堂より、少しだけ安かったです。
もう少し、安かったら、本当に優れものの本だと思います。
洋書売り場で、なかなか面白そうな本を見つけました。
マグロウヒル・バイリンガルブック・ビジネスシリーズというもので、日経などから出ている、MBAシリーズみたいな本と同じような、ビジネスマン向けの書籍です。
見開き2ページの左が英語、右がその日本語訳になっています。
これなら、英語があまり得意でない人にもとっつきやすいし、仕事にも役立ちます。
いろいろな内容のものが出ていましたが、私は、『Getting Organized at Work(賢い仕事の「段取り力」)』というのを買いました。
英語も、内容も入門レベルです。
通勤途中に、趣味と実益を兼ねて、気軽に読んでもよさそうです。
本を買って、洋書の物色もしたあとは、神保町で外を眺めたり、買った本に目を通したりして、のんびりコーヒーを飲んでから帰ってきました。
さて、神田神保町に住めるのはいつのことやら…
『OpenGL Superbible: Comprehensive Tutorial and Reference (OpenGL)』
『OpenGL Distilled』
『OpenGLの神髄』(著者: Paul Matz, 翻訳:松田晃一, 松田 真梨子)
『MFCによるOpenGL3Dプログラミング―ライブラリを使って簡単に3D-CG図形を描画する! (I/O BOOKS)』
(工学社)
『Windowsゲームプログラミング』 [本(技術書)]
仕事や学校の勉強でWindowsのグラフィックスプログラミングが必要になった人や、これからWindowsのグラフィックスプログラミングを学びたい人、学ぶ必要のある人にお勧めの本があります。
『Windowsゲームプログラミング』がお勧めです。
なぜかというと、理由は3つあります。
1つ目は、この本はゲームプログラミングというよりは、Win32APIとC言語を使ったWindowsのグラフィックスプログラミングを詳しく解説した本だからです。直線のような簡単な図形から、ポリラインやポリゴンのような複雑な図形まで描けるように、詳しく、分かりやすく解説されています。
2つ目は、作者の赤坂玲音さんが、信頼できるプログラミング書籍の作家で、アマゾンなどでのレビューでも高い評価を得ているからです。赤坂玲音さんはゲーム関係のプログラミング書籍を多数出されています。学生時代にプログラミングコンテストでも受賞した経験があり、技術的にも信頼できる人です。
3つ目は、2つ目の理由と重なりますが、全体に文章がとても分かりやすいからです。また、技術的なことも詳しく、大切なことをしっかりとおさえて理解しやすく書いています。例えば、ペンやブラシといったWindowsのグラフィックスプログラミングで必要となるオブジェクトの削除のタイミングもきちんと解説しています。また、ハンドルとはそもそも何なのかということもコラムを読むとちゃんと分かります。
ただし、ゲームの作り方そのものについては、あまり詳しくは、解説されていません。この本で取り上げた内容で書かれたことが、ゲームのどういうところで活きてくるのかはわかりますが、具体例はあまりありません。また、3Dグラフィックスについての解説はありません。
ゲームを作りたいという人は、この本で学んだ内容をもとに、他の本を読む必要があるでしょう。
この本をお勧めできるのは、ずばり、ゲームでも、ビジネスソフトでも、Windowsのグラフィックスプログラミングが必要だという人です。
『Windowsゲームプログラミング』(赤坂 玲音、ソフトバンククリエイティブ)
重宝しました、『VBScriptポケットリファレンス』 [本(技術書)]
私は、普段、C++やCでプログラミングをしているのですが、今回は、珍しく、VisualBasic系の言語を使いました。
VBScriptで作った、Accessデータベースの移行ツールや、バックアップツールに始まり、VisualBasic.NETでのASP.NETで作った簡単な販売管理システムまで。
慣れない言語でプログラミングをするのは、大変なものです。
VisualBasicは難易度が低く、生産性も高い言語ですが、普段使い慣れていない人には、基本的なことでも調べなければならなくなります。
そんな時、役に立つのが、言語のちょっとしたリファレンス。
今回は、『VBScriptポケットリファレンス』というリファレンスがとても役に立ちました。
VBScriptでのプログラミングはもちろん、VisualBasic.NETでも、基本的な部分は共通する部分が多いため、結構重宝しました。
まずは、この本で調べ、分からなければ、ネットで検索し、技術系の掲示板などを調べました。
そうして、何とか、システムを作り上げることができたのです。
『[改訂版] VBScriptポケットリファレンス』(アンク著、技術評論社)