<?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; DIBSection</title>
	<atom:link href="http://www.game-create.com/archives/tag/dibsection/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>パソコンの 2D ゲームプログラミングは死んだのか？</title>
		<link>http://www.game-create.com/archives/946</link>
		<comments>http://www.game-create.com/archives/946#comments</comments>
		<pubDate>Sun, 09 Nov 2008 22:50:46 +0000</pubDate>
		<dc:creator>Byerkut</dc:creator>
				<category><![CDATA[ゲームプログラミング]]></category>
		<category><![CDATA[2D]]></category>
		<category><![CDATA[3D]]></category>
		<category><![CDATA[DIBSection]]></category>
		<category><![CDATA[DirectDraw]]></category>
		<category><![CDATA[DirectX]]></category>
		<category><![CDATA[XNA]]></category>

		<guid isPermaLink="false">http://www.game-create.com/?p=946</guid>
		<description><![CDATA[DirectX や XNA でゲームを作る場合は 3D の土台で作られます。果たしてパソコンでの 2D ゲームプログラミングは死んだのでしょうか？

自分は「今後、更新されない」という観点から見て 3D に取って代わられ [...]]]></description>
			<content:encoded><![CDATA[<p>DirectX や XNA でゲームを作る場合は 3D の土台で作られます。果たしてパソコンでの 2D ゲームプログラミングは死んだのでしょうか？</p>
<p><span id="more-946"></span></p>
<p>自分は「今後、更新されない」という観点から見て 3D に取って代わられたと思います。たとえば DirectDraw や DIBSection などは更新されていません（逆に言うと枯れた技術ということになるので喜ばしいことでもありますが）。</p>
<p>でも、あまり悲観的になる必要はないと思います。 3D は入り口だけ我慢して勉強すればあとは 2D よりすばらしい世界が広がっています。慣れてくると 2D のゲームを作る際にも 3D の土台で作りたくなるはずです。</p>
<p>3D の技術が 2D のゲームプログラミングにもたらす恩恵をいくつか挙げてみます。</p>
<ul>
<li>ゲーム専用機にのみ搭載されていたスプライトと同様の機能が用意されている</li>
<li>抜き色に加えてアルファブレンディングが可能になる</li>
<li>グラフィックの拡大・縮小・変形が容易になる</li>
<li>オブジェクトの重なり順をコンピュータが管理・計算してくれる</li>
<li>画面外へ出たオブジェクトを自動的に描画対象から外してくれる</li>
</ul>
<p>どうでしょうか？スプライトやアルファブレンド、描画順のハンドリングからの解放など魅惑の機能ばかりですね。</p>
<p>「そうはいっても 3D の書籍や入門サイトの内容は難しくてわからないよ」と思われる方もいらっしゃるでしょう。無理もありません、私もそうでした。ゲームプログラミングの情報を発信するサイトとしてこの状態を黙ってみているわけにはいきません。今はまだ、参考書籍を紹介するにとどまっていますが、このサイトを通じて何らかの答えを出そうと思います（できれば来年中に）。</p>
<p>震えてお待ちください。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.game-create.com/archives/946/feed</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>原点が左上に来るデバイス非依存ビットマップを作る</title>
		<link>http://www.game-create.com/archives/160</link>
		<comments>http://www.game-create.com/archives/160#comments</comments>
		<pubDate>Thu, 29 Nov 2007 04:40:41 +0000</pubDate>
		<dc:creator>Byerkut</dc:creator>
				<category><![CDATA[ゲームプログラミング]]></category>
		<category><![CDATA[BMP]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[DIBSection]]></category>
		<category><![CDATA[Win32API]]></category>

		<guid isPermaLink="false">http://www.game-create.com/?p=160</guid>
		<description><![CDATA[デバイス非依存ビットマップを作るには BITMAPINFO 型の変数に必要な情報を詰めて CreateDIBSection() 関数へ渡しますが、普通に作ると原点が左下になります。
DirectX や Win32API  [...]]]></description>
			<content:encoded><![CDATA[<p>デバイス非依存ビットマップを作るには BITMAPINFO 型の変数に必要な情報を詰めて CreateDIBSection() 関数へ渡しますが、普通に作ると原点が左下になります。</p>
<p>DirectX や Win32API のように原点を左上にするためには BITMAPINFO 型の変数の bmiHeader.biHeight メンバにマイナスの値を設定します。</p>
<p><span id="more-160"></span></p>
<div class="hl-surround" ><div class="hl-main"><pre><span class="hl-identifier">BITMAPINFO bmpInfo</span><span class="hl-default">;

::</span><span class="hl-identifier">ZeroMemory</span><span class="hl-brackets">(</span><span class="hl-code">&amp;</span><span class="hl-identifier">bmpInfo</span><span class="hl-code">, </span><span class="hl-reserved">sizeof</span><span class="hl-brackets">(</span><span class="hl-identifier">BITMAPINFO</span><span class="hl-brackets">))</span><span class="hl-default">;
</span><span class="hl-identifier">bmpInfo</span><span class="hl-default">.</span><span class="hl-identifier">bmiHeader</span><span class="hl-default">.</span><span class="hl-identifier">biSize</span><span class="hl-default"> = </span><span class="hl-reserved">sizeof</span><span class="hl-brackets">(</span><span class="hl-identifier">BITMAPINFOHEADER</span><span class="hl-brackets">)</span><span class="hl-default">;
</span><span class="hl-identifier">bmpInfo</span><span class="hl-default">.</span><span class="hl-identifier">bmiHeader</span><span class="hl-default">.</span><span class="hl-identifier">biWidth</span><span class="hl-default"> = </span><span class="hl-number">640</span><span class="hl-default">;
</span><span class="hl-identifier">bmpInfo</span><span class="hl-default">.</span><span class="hl-identifier">bmiHeader</span><span class="hl-default">.</span><span class="hl-identifier">biHeight</span><span class="hl-default"> =  -</span><span class="hl-number">480</span><span class="hl-default">; </span><span class="hl-comment">// ←ここ
</span><span class="hl-identifier">bmpInfo</span><span class="hl-default">.</span><span class="hl-identifier">bmiHeader</span><span class="hl-default">.</span><span class="hl-identifier">biPlanes</span><span class="hl-default"> = </span><span class="hl-number">1</span><span class="hl-default">;
</span><span class="hl-identifier">bmpInfo</span><span class="hl-default">.</span><span class="hl-identifier">bmiHeader</span><span class="hl-default">.</span><span class="hl-identifier">biBitCount</span><span class="hl-default"> = </span><span class="hl-number">32</span><span class="hl-default">;
</span><span class="hl-identifier">bmpInfo</span><span class="hl-default">.</span><span class="hl-identifier">bmiHeader</span><span class="hl-default">.</span><span class="hl-identifier">biCompression</span><span class="hl-default"> = </span><span class="hl-identifier">BI_RGB</span><span class="hl-default">;</span></pre></div></div>
<p>ちなみに、このサイトで配布している <a href="http://www.game-create.com/archives/86">template.cpp</a> では、クライアント領域の高さを保持している iClientHeight が unsigned int なので普通に書くと警告が出ます。</p>
<p>そこで…</p>
<div class="hl-surround" style="height:16.8px;"><div class="hl-main"><pre><span class="hl-identifier">bmpInfo</span><span class="hl-default">.</span><span class="hl-identifier">bmiHeader</span><span class="hl-default">.</span><span class="hl-identifier">biHeight</span><span class="hl-default"> =  </span><span class="hl-number">0</span><span class="hl-default"> - ::</span><span class="hl-identifier">iClientHeight</span><span class="hl-default">;</span></pre></div></div>
<p>…とかやっています。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.game-create.com/archives/160/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ゲーム用のウィンドウのひな形を更新しました 2007/11/28 版</title>
		<link>http://www.game-create.com/archives/159</link>
		<comments>http://www.game-create.com/archives/159#comments</comments>
		<pubDate>Wed, 28 Nov 2007 03:53:44 +0000</pubDate>
		<dc:creator>Byerkut</dc:creator>
				<category><![CDATA[お知らせ]]></category>
		<category><![CDATA[BMP]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[DIBSection]]></category>
		<category><![CDATA[Win32API]]></category>

		<guid isPermaLink="false">http://www.game-create.com/?p=159</guid>
		<description><![CDATA[ゲーム用のウィンドウのひな形である template.cpp を更新しました。

バックバッファを DIBSection に対応しました。グローバル変数の pBackBuffer へピクセルデータを転送することで、あたか [...]]]></description>
			<content:encoded><![CDATA[<p>ゲーム用のウィンドウのひな形である template.cpp を更新しました。</p>
<p><span id="more-159"></span></p>
<p>バックバッファを DIBSection に対応しました。グローバル変数の pBackBuffer へピクセルデータを転送することで、あたかも直接 VRAM を編集しているかのように描画処理を書くことができます。</p>
<p>「<a href="http://www.game-create.com/archives/86">ゲーム用のウィンドウを作成する</a>」</p>
]]></content:encoded>
			<wfw:commentRss>http://www.game-create.com/archives/159/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
