<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>いちばんやさしいゲームの作り方 &#187; C++</title>
	<atom:link href="http://www.game-create.com/archives/tag/c/feed" rel="self" type="application/rss+xml" />
	<link>http://www.game-create.com</link>
	<description>文系の人でも、数理学がわからない人でもゲームプログラミングをマスターできるブログ</description>
	<lastBuildDate>Tue, 08 Jun 2010 01:28:47 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Visual C++ 2010 では Windows 2000 向けのバイナリが作れない？</title>
		<link>http://www.game-create.com/archives/3473</link>
		<comments>http://www.game-create.com/archives/3473#comments</comments>
		<pubDate>Sun, 06 Jun 2010 14:55:56 +0000</pubDate>
		<dc:creator>Byerkut</dc:creator>
				<category><![CDATA[ウェブログ]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[MFC]]></category>
		<category><![CDATA[STL]]></category>
		<category><![CDATA[VC++ 2010 EE]]></category>
		<category><![CDATA[Windows 2000]]></category>
		<category><![CDATA[マルチスレッド]]></category>
		<category><![CDATA[リンク]]></category>

		<guid isPermaLink="false">http://www.game-create.com/?p=3473</guid>
		<description><![CDATA[よくわからんのですが、 C/C++ ランタイムを静的リンクしなければ大丈夫なのでしょうか。
Application statically linked with Visual C++ 2010 C/C++ runtime [...]]]></description>
			<content:encoded><![CDATA[<p>よくわからんのですが、 C/C++ ランタイムを静的リンクしなければ大丈夫なのでしょうか。</p>
<p><a href="http://support.microsoft.com/kb/2005279/en-us" class="external">Application statically linked with Visual C++ 2010 C/C++ runtime fails to launch with error ‘The procedure entry point EncodePointer could not be located in the dynamic link library KERNEL32.dll’.</a></p>
<p><span id="more-3473"></span></p>
<p><a href="http://support.microsoft.com/kb/2005279/en-us" class="external">リンク先</a>を見ると STL や MFC でも C/C++ ランタイムを使っているので同じエラーが出ると書いてあるような気がします。他のサイトなんかも参考にしてみましたが Windows 2000 向けのバイナリは作れないと考えて問題ないのかもしれません。</p>
<p>余談ですが、内部で STL を使ってマルチスレッドを実現するためには _beginthread, _beginthreadex が必要な予感がしていたのですが、この調子ですとやっぱり必要かもしれませんね。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.game-create.com/archives/3473/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ぷらがぶる</title>
		<link>http://www.game-create.com/archives/3440</link>
		<comments>http://www.game-create.com/archives/3440#comments</comments>
		<pubDate>Tue, 01 Jun 2010 14:18:20 +0000</pubDate>
		<dc:creator>Byerkut</dc:creator>
				<category><![CDATA[ゲームプログラミング]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[インタフェース]]></category>
		<category><![CDATA[オブジェクト指向]]></category>
		<category><![CDATA[クラス]]></category>

		<guid isPermaLink="false">http://www.game-create.com/?p=3440</guid>
		<description><![CDATA[ゲームの設計をしていて、オブジェクトの特性を簡単に足せたら楽だなぁ、と思います。 C/C++ ではどうやるのがベターなんでしょうか。

簡単にとはいきませんが、インタフェース（実際にはインタフェースっぽい実装なきクラスで [...]]]></description>
			<content:encoded><![CDATA[<p>ゲームの設計をしていて、オブジェクトの特性を簡単に足せたら楽だなぁ、と思います。 C/C++ ではどうやるのがベターなんでしょうか。</p>
<p><span id="more-3440"></span></p>
<p>簡単にとはいきませんが、インタフェース（実際にはインタフェースっぽい実装なきクラスですが）とそのインタフェースの代表的な実装（特性オブジェクト）を用意しておいて、クラスに実装＋内包させるという方法がひとつ思い浮かびます。</p>
<p>また、ただ単に振る舞いが増えるだけだと実用性に限界がありそうですので、既存の振る舞いに変化が加えられると嬉しいのかな、とも思います。ただ、そうすると、「変化させてもいいよ」というポイントを（少なくとも特性オブジェクトには）公開しないといけませんね。</p>
<p>…というのを CakePHP を見ながら考えました。 attach() メソッドの手法なら C/C++ でもやってやれないことはないのか。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.game-create.com/archives/3440/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>「 COM とは何か？」を本で学びたい（さわりだけ）</title>
		<link>http://www.game-create.com/archives/3181</link>
		<comments>http://www.game-create.com/archives/3181#comments</comments>
		<pubDate>Fri, 16 Apr 2010 14:21:20 +0000</pubDate>
		<dc:creator>Byerkut</dc:creator>
				<category><![CDATA[ゲームプログラミング]]></category>
		<category><![CDATA[3D]]></category>
		<category><![CDATA[Amazon]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[COM]]></category>
		<category><![CDATA[Direct3D]]></category>
		<category><![CDATA[DirectX]]></category>
		<category><![CDATA[書籍]]></category>

		<guid isPermaLink="false">http://www.game-create.com/?p=3181</guid>
		<description><![CDATA[…というわけでゲームコーディング Vol.1 を買いなおしました。


実は以前、コンピューターの技術で食っていくのをやめようかと思った時期がありまして、持っている本を売りに出してしまったのです。入手できなくならないうち [...]]]></description>
			<content:encoded><![CDATA[<p>…というわけでゲームコーディング Vol.1 を買いなおしました。</p>
<p><span id="more-3181"></span></p>
<p><iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&#038;bc1=000000&#038;IS2=1&#038;bg1=FFFFFF&#038;fc1=000000&#038;lc1=0000FF&#038;t=game-create-22&#038;o=9&#038;p=8&#038;l=as1&#038;m=amazon&#038;f=ifr&#038;md=1X69VDGQCMF7Z30FM082&#038;asins=4777511405" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0" class="left"></iframe></p>
<p>実は以前、コンピューターの技術で食っていくのをやめようかと思った時期がありまして、持っている本を売りに出してしまったのです。入手できなくならないうちに買いなおそうと思って Amazon に突入です。</p>
<p>この本は最初に読んだ時と、ある程度わかってから読んだ時で違う面を見せてくれるのでためになります。どれだけ勉強が進んでいるかのバロメーター的な存在。</p>
<p>レビューで、「ソースコードの割合が多い」との意見がありましたが、自分は全部本で確認できた方がありがたい気がします（自分が書く本はページ数の関係で無理そうですが…）。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.game-create.com/archives/3181/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Visual Studio 2010 には Standard Edition がないらしい…</title>
		<link>http://www.game-create.com/archives/2971</link>
		<comments>http://www.game-create.com/archives/2971#comments</comments>
		<pubDate>Sun, 28 Feb 2010 15:33:34 +0000</pubDate>
		<dc:creator>Byerkut</dc:creator>
				<category><![CDATA[ウェブログ]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[MSDN]]></category>
		<category><![CDATA[Visual Studio]]></category>
		<category><![CDATA[Windows SDK]]></category>

		<guid isPermaLink="false">http://www.game-create.com/?p=2971</guid>
		<description><![CDATA[うそ、嘘って言って…
Visual C++ Editions

個人でちょっと頑張って Windows ソフト作っちゃおうかな、とか考えている方（自分もそうなんですけど）はどうしたらいいのでしょうか…
MFC は使わない [...]]]></description>
			<content:encoded><![CDATA[<p>うそ、嘘って言って…</p>
<p><a href="http://msdn.microsoft.com/en-us/library/hs24szh9(VS.100).aspx" class="external">Visual C++ Editions</a></p>
<p><span id="more-2971"></span></p>
<p>個人でちょっと頑張って Windows ソフト作っちゃおうかな、とか考えている方（自分もそうなんですけど）はどうしたらいいのでしょうか…</p>
<p>MFC は使わないからいいんですけど SPY++ とか Windows SDK に入ってるっけなぁ…</p>
]]></content:encoded>
			<wfw:commentRss>http://www.game-create.com/archives/2971/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>指示かメッセージか振るまいか</title>
		<link>http://www.game-create.com/archives/2937</link>
		<comments>http://www.game-create.com/archives/2937#comments</comments>
		<pubDate>Tue, 23 Feb 2010 01:38:38 +0000</pubDate>
		<dc:creator>Byerkut</dc:creator>
				<category><![CDATA[ゲームプログラミング]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[オブジェクト指向]]></category>
		<category><![CDATA[クラス]]></category>
		<category><![CDATA[メッセージ]]></category>
		<category><![CDATA[備忘録]]></category>
		<category><![CDATA[関数]]></category>

		<guid isPermaLink="false">http://www.game-create.com/?p=2937</guid>
		<description><![CDATA[クラス作ってクラス関数を作って名前つけることが日常ですが、この名前ってどうしようか悩みます。このロジックは指示かメッセージか振るまいか。

クラスの設計中はクラスの性質を考えようかとも思うのですが、あとから見ると「あ、こ [...]]]></description>
			<content:encoded><![CDATA[<p>クラス作ってクラス関数を作って名前つけることが日常ですが、この名前ってどうしようか悩みます。このロジックは指示かメッセージか振るまいか。</p>
<p><span id="more-2937"></span></p>
<p>クラスの設計中はクラスの性質を考えようかとも思うのですが、あとから見ると「あ、これは指示か」とか思うこともあります。ほとんどの場合、指示と指示を受けての振る舞いが近いのであんまり気にならないのですが、なんだか性質を考えていることになるのか疑問に感じるようになります。</p>
<p>噂によると、メッセージと振る舞いとを別に記述できる言語もあるそうですが、どんなんでしょう。考えようによっては Windows もメッセージを受けて処理を決定するという点では別に記述しているような気もします（やたら入力を拒否する反抗的なテキストボックスとかも作れるみたいです）。</p>
<p>時間があったら調べてみたいと思います。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.game-create.com/archives/2937/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ゲームプログラミングでもこれをやってはいかんですよ</title>
		<link>http://www.game-create.com/archives/2879</link>
		<comments>http://www.game-create.com/archives/2879#comments</comments>
		<pubDate>Thu, 11 Feb 2010 14:19:18 +0000</pubDate>
		<dc:creator>Byerkut</dc:creator>
				<category><![CDATA[ゲームプログラミング]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[仕事]]></category>
		<category><![CDATA[制御構文]]></category>
		<category><![CDATA[占い]]></category>
		<category><![CDATA[月月火水木金金]]></category>

		<guid isPermaLink="false">http://www.game-create.com/?p=2879</guid>
		<description><![CDATA[今週、２回目の同じようなミスです。
if (someConditions == true)
switch (variable) {
  /* 中略 */
}

例によって if 文を誤ってコピペしてしまったミスなん [...]]]></description>
			<content:encoded><![CDATA[<p>今週、２回目の同じようなミスです。</p>
<div class="hl-surround" ><div class="hl-main"><pre><span class="hl-reserved">if </span><span class="hl-brackets">(</span><span class="hl-identifier">someConditions</span><span class="hl-code"> == </span><span class="hl-reserved">true</span><span class="hl-brackets">)
</span><span class="hl-reserved">switch </span><span class="hl-brackets">(</span><span class="hl-identifier">variable</span><span class="hl-brackets">) {
  </span><span class="hl-mlcomment">/* 中略 */
</span><span class="hl-brackets">}</span></pre></div></div>
<p><span id="more-2879"></span></p>
<p>例によって if 文を誤ってコピペしてしまったミスなんですが、 if 文の条件を満たす場合のみに続く switch 文が実行されるようになってしまっています。こういうのが嫌なので if 文にはブロックを付けるようにしています。</p>
<div class="hl-surround" ><div class="hl-main"><pre><span class="hl-reserved">if </span><span class="hl-brackets">(</span><span class="hl-identifier">someConditions</span><span class="hl-code"> == </span><span class="hl-reserved">true</span><span class="hl-brackets">) { </span><span class="hl-mlcomment">/* 中略 */ </span><span class="hl-brackets">} </span><span class="hl-comment">// これなら if 文の結果如何に関わらず次の switch が実行される
</span><span class="hl-reserved">switch </span><span class="hl-brackets">(</span><span class="hl-identifier">variable</span><span class="hl-brackets">) {
  </span><span class="hl-mlcomment">/* 中略 */
</span><span class="hl-brackets">}</span></pre></div></div>
<p>今回なぜ外れていたのかわかりませんが、疲れているのでしょうか。</p>
<p>一瞬、疲れすぎて死なないか心配になりましたが、生命線の膨らみが大きく、しかも二重生命線なので体は丈夫とのことです。命拾いしました。余談ですが感情線も二重です。知能線が二重だったらコンプリートだったのに…</p>
]]></content:encoded>
			<wfw:commentRss>http://www.game-create.com/archives/2879/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>そもそもプログラミングという単語の意味はなんだろう？</title>
		<link>http://www.game-create.com/archives/2868</link>
		<comments>http://www.game-create.com/archives/2868#comments</comments>
		<pubDate>Tue, 09 Feb 2010 14:45:56 +0000</pubDate>
		<dc:creator>Byerkut</dc:creator>
				<category><![CDATA[ゲームミュージック]]></category>
		<category><![CDATA[BGM]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[Cubase]]></category>
		<category><![CDATA[MIDI]]></category>

		<guid isPermaLink="false">http://www.game-create.com/?p=2868</guid>
		<description><![CDATA[というのも最近、 MIDI 関連の情報でプログラミングという単語を目にすることが多く、不思議に思ったためです。てっきり MIDI 機器とやり取りするためのライブラリや API を C/C++ などから使うことを指している [...]]]></description>
			<content:encoded><![CDATA[<p>というのも最近、 MIDI 関連の情報でプログラミングという単語を目にすることが多く、不思議に思ったためです。てっきり MIDI 機器とやり取りするためのライブラリや API を C/C++ などから使うことを指しているのかと思ったのですが、 Wikipedia に次のようにあります。</p>
<p><span id="more-2868"></span></p>
<blockquote><p>
プログラミング</p>
<p>　・コンピュータプログラムを作成すること。→プログラミング (コンピュータ)を参照<br />
　・シーケンサーにシーケンスを設定すること。→ミュージックシーケンサーを参照。
</p></blockquote>
<p>普段 Cubase でやってることを指してプログラミングということでしょうか（今は MIDI しかやっておりません）。確かに手続きを記述するという意味では仕事でやっているプログラミングと同じかもしれません。エクスクルーシブ・メッセージなんかはちょっとした関数呼び出しみたいですし。</p>
<p>同人作品の曲に使う音源を選んでいるのですが、ソフト音源（という表現が古いかも）は音質は良いのですが容量が大きいみたいです。作曲マシンがネットブックに近い XP なので重たい処理はハードに逃がしたい…</p>
]]></content:encoded>
			<wfw:commentRss>http://www.game-create.com/archives/2868/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>VBA の経験をゲームプログラミングに生かす</title>
		<link>http://www.game-create.com/archives/2806</link>
		<comments>http://www.game-create.com/archives/2806#comments</comments>
		<pubDate>Wed, 27 Jan 2010 14:33:22 +0000</pubDate>
		<dc:creator>Byerkut</dc:creator>
				<category><![CDATA[ゲームプログラミング]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[VBA]]></category>
		<category><![CDATA[ソースコード]]></category>
		<category><![CDATA[関数]]></category>

		<guid isPermaLink="false">http://www.game-create.com/?p=2806</guid>
		<description><![CDATA[仕事で VBA を触っているのですが、同じプログラミング言語でもこれを C/C++ によるゲームプログラミングに生かすには若干の基礎知識が必要かもしれないと思いました。

VBA だとプロシージャと関数とでサブルーチンの [...]]]></description>
			<content:encoded><![CDATA[<p>仕事で VBA を触っているのですが、同じプログラミング言語でもこれを C/C++ によるゲームプログラミングに生かすには若干の基礎知識が必要かもしれないと思いました。</p>
<p><span id="more-2806"></span></p>
<p>VBA だとプロシージャと関数とでサブルーチンのようなものを作ることができますが、 C/C++ だと関数です。関数＝機能と考えると、処理のブロックをなんでも関数で実装するのに違和感がなくなってくるのですが、最初は大変かもしれません。</p>
<p>ただ、 VBA の関数は戻り値を捨てられないとか、プロシージャを呼び出すのに Call が必要という仕様は、ソースコードが読みやすくなって良いなぁ、と思いました。 C/C++ を初めて見たときの記号っぽさが苦手だっただけに強く感じます。</p>
<p>VBA で逆に有利だと感じたのは、構造体や参照渡しができるという点です。普段 VBA しかやってなくても、できるだけ楽したいと思っていろんなプログラムを組まれている方は、ゲームプログラミングを覚えるのも楽だと確信しました。</p>
<p>VBA の基礎を活かしてゲームプログラミングを学ぶ際の一番の壁は、イベントドリブンというモデルで考えていた部分をゲームにうまく応用できるかだと思うのですが、ちょうどそのあたりの原稿を書いているので、書店に並んだら「ああ、こうなったか」と笑っていただけると幸いです。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.game-create.com/archives/2806/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Boost を使って JSON をパースする</title>
		<link>http://www.game-create.com/archives/2771</link>
		<comments>http://www.game-create.com/archives/2771#comments</comments>
		<pubDate>Thu, 21 Jan 2010 11:11:23 +0000</pubDate>
		<dc:creator>Byerkut</dc:creator>
				<category><![CDATA[ウェブログ]]></category>
		<category><![CDATA[Boost]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[JSON]]></category>

		<guid isPermaLink="false">http://www.game-create.com/?p=2771</guid>
		<description><![CDATA[C++ で苦手な分野かと思われましたが、サンプルを見ると「なるほどこうやるのか」と得心が行きました。
Chapter 14. Boost.PropertyTree

パスをルートから渡すことで途中の構造を柔軟に解析できる [...]]]></description>
			<content:encoded><![CDATA[<p>C++ で苦手な分野かと思われましたが、サンプルを見ると「なるほどこうやるのか」と得心が行きました。</p>
<p><a href="http://www.boost.org/doc/libs/1_41_0/doc/html/property_tree.html" class="external">Chapter 14. Boost.PropertyTree</a></p>
<p><span id="more-2771"></span></p>
<p>パスをルートから渡すことで途中の構造を柔軟に解析できるというのがポイントかと思いました。これで数値や文字列など基本的な型であれば値を取得することができ、リストの場合はループで巡回することもできると。なんとも便利じゃないですか。</p>
<p>次のゲーム制作には使うところがありませんが、覚えておいて損はなさそうです。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.game-create.com/archives/2771/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ゲームプログラミング入門者が抱える不満というのはこういう感じかな…</title>
		<link>http://www.game-create.com/archives/2731</link>
		<comments>http://www.game-create.com/archives/2731#comments</comments>
		<pubDate>Tue, 12 Jan 2010 13:37:28 +0000</pubDate>
		<dc:creator>Byerkut</dc:creator>
				<category><![CDATA[ゲームプログラミング]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[DirectX]]></category>
		<category><![CDATA[DTM]]></category>
		<category><![CDATA[コード進行]]></category>
		<category><![CDATA[作曲]]></category>
		<category><![CDATA[初心者]]></category>
		<category><![CDATA[勉強]]></category>

		<guid isPermaLink="false">http://www.game-create.com/?p=2731</guid>
		<description><![CDATA[おかげさまでスクールに通うようになってからは作曲の勉強も（若干の壁を感じつつも）順調に進んでおリますが、それ以前はこうはいきませんでした。書店で「作曲入門」とか「 DTM 入門」とか本を見つける度に読んでは見るのですが、 [...]]]></description>
			<content:encoded><![CDATA[<p>おかげさまでスクールに通うようになってからは作曲の勉強も（若干の壁を感じつつも）順調に進んでおリますが、それ以前はこうはいきませんでした。書店で「作曲入門」とか「 DTM 入門」とか本を見つける度に読んでは見るのですが、さっぱり曲が作れるようになりません。ゲームプログラミングでもこれと同じ状態なのかもしれません。</p>
<p><span id="more-2731"></span></p>
<p>「作曲入門」と銘打っても、読んでみると前提知識が必要なことが多く、文面から「～なのはご存知かと思いますが」といったニュアンスを感じてしまうことがあります。でも、本当に入門したいときは「ご存知」ではないことがほとんどかと思います。結果、 Amazon なんかでよく見る「入門できない」という評価になってしまうのかもしれません。</p>
<p>たとえばコード進行があります。それ以前の話なのですが、コードって思いつくだけで 100 個以上あるのです。本当の入門者は次のことがわかりません。</p>
<ul>
<li>全部覚えないといけないのか？</li>
<li>暗記しないといけないのか？</li>
<li>１曲中にどれだけ使わないといけないのか？</li>
<li>逆に１曲中にどれだけ使えるのか？</li>
<li>どうやって使うのか？</li>
</ul>
<p>しかしながら、だいたいケアされているのが最後のひとつだけという場合がほとんどでした（自分が読んできた本では、ですが）。この辺、面白いので興味ある方は勉強していただくと良いと思いますが、曲によってはコードを１つだけで構成することもできます。平坦な曲（さして感動もない簡単な曲というか…）で良ければ５つくらいで曲になります（その５つはキーによって変わりますが）。こういった雰囲気だけでもわかってないと読み進めにくいとあっては「入門できない」という判断になっても仕方ないのかもしれません。</p>
<p>今後求められるのは、こういう目に見えない不安をいくつ拾えるかなんですが、まだまだ先の長い戦いになりそうです。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.game-create.com/archives/2731/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

