まこなここんなにわかりやすい(教科書に載せたいほど)言いがかりネタに、少ないとは言え半ば信じちゃってるコメントがあるのを見ると、日本は平和だなぁと思いました。
 と、言うか、ちゃんと中身読んでないだけかも。

 後、毒舌担当の人の感想だから、わざわざコメントで聞かんでも、ソースが無いのは明白だと思うんだが。



栗原 はるみ
「たれ・ソース」レシピ
 去年届いた、スパムの数をまとめてみました。

   1月 1,019通
   2月 1,197通
   3月 1,154通
   4月 1,346通
   5月 1,660通
   6月 1,760通
   7月 1,657通
   8月 1,304通
   9月 1,178通
  10月 1,645通
  11月 2,123通
  12月 2,712通

 1~3月は変化無し。

 4月辺りから増え始めてるのは、会社や個人で新しく機械を買って、ウィルス対策をしていない機械が増えたから、ボットが増えたって事かな?
 もしくは、どの会社にも相手にされないほど壊滅的に頭の悪い人が、スパマー始めたか。

 8~9月で、数がガクッと減ってるのは、プロバイダ各社のスパム対策が功を奏したからと思われます。俗に言う、「Outbound Port25 Blocking」って奴ですな。

 まぁ、10月からは、「はい、元通り」なんですが。


 で、去年は総勢18,755通のスパムが来たわけですが、2005年に比べて3.5倍くらいになってます。
 と、なると、今年のスパムの総数は、何事も無ければ65,000通を超えそうですな。いやはや、困った物だ。




ジョナサン・ランド, 吉田 弘一郎
抱腹絶倒!! スパム秘宝館
 また、懲りずに、コンテンツ・パイプラインと悪戦苦闘。
 と、言うか、日本語の資料が少ないんじゃー!

 さて、NyaRuRuさんの以下の記事の2ページ目を参考にして、Dictionary<String, int> の int をパターン表示用の独自クラス PatternData に変更してみた。

  第5回 ゲーム開発者にとってのビルド作業とは? ― Content Pipelineを使ってみる

 が、XML ファイルのインポートでクレームが出る。

  XmlImporter君:PatternData なんて、見つからんよ?

 PatternData クラスをちゃんと書いてるから、血眼になって探せば見つかるはずなのに、何て、根性の無い奴だ。

 いや、ちょっと、待てよ? 俺達はとんでもない勘違いをしていたのかも知れない。

 と、XmlImporter君の立場になって考えると、コンテンツのインポート後に、PatternData クラスがコンパイルされるはずだから、見つかるはずが無い事に気づく。

 なるほど、納得だ。

 じゃあ、これをゲームライブラリに持っていけば、良かろうだ!

 と、ゲームライブラリを作成して、参照と Properties の Content Pipeline に追加。

 で、再チャレンジ。

  XmlImporter君:PatternData なんて、見つからんよ?

 おや? あ、namespace つけてなかった。

  <Asset Type="Generic:Dictionary[string,PatternData]">

            ↓

  <Asset Type="Generic:Dictionary[string,PatternDataLibrary.PatternData]">

 よし、これで、どうよ?

  XmlImporter君:PatternDataLibrary.PatternData の ContentTypeWriter が見つからんよ?

 ContentTypeWriter? え~と、ああ、これか。じゃあ、ContentTypeWriter<PatternData> で派生して書けば良いのか。

 ん? GetRuntimeReader 関数で、リーダーの名前を返さないとダメなのか。ContentTypeReader<PatternData> の派生クラスも作って、"PatternDataLibrary.PatternDataTypeReader"を返すようにコーディング。

 さて、ビルドだ。

  XmlImporter君:PatternDataLibrary.PatternData の ContentTypeWriter が見つからんよ?

 工工エェ(´Д`)ェエ工工

 仕方が無いので、ContentTypeWriter げググる。

 グーグル君曰く

  選択された言語のページからは該当するページが見つかりませんでした。ウェブ全体からのContentTypeWriterの検索結果:
  ContentTypeWriter の検索結果 約 42 件中 1 - 7 件目 (0.23 秒)

 工工エェ(´Д`)ェエ工工

 42件って、日本語で言うと何件?(答え:42件)

 しょうがないので、このページをチェック。

 あ、なんか、クラスの手前に「[ContentTypeWriter]」って書いてある。それか!

 早速、追加して、ビルド。ビルド成功。ふ~。

 じゃあ、さっそく、実行。って、冷害例外?

 なぜか、コンテンツのロードで、例外が発生。PatternDataLibrary.PatternDataTypeReader が無いって、何で?

 良くわからんので、また、ネットの海へダイブ。さっきのページを良く見ると、GetRuntimeReader 関数で、typeof(クラス名).AssemblyQualifiedName なんて、返してやがる。その案、頂き!

 とりあえず、これで、万事問題なく動作を確認。

 ちなみに、GetRuntimeReader 関数の引数に、ターゲットプラットフォームが入ってくるので、両対応の場合はそれでリーダーを変えられる模様。

 XNA で遊んでたり、某戦国ラ○スとかで遊んでいたりしてたので、久し振りの LOST PLANET。

 とりあえず、ミッション5までクリアしましたが、EASY なのに難しいデスヨ?

 まぁ、大体が、崖から落ちて死亡とかが多いので、難易度関係ないのですが!
 後、現状の腕だと、あからさまに倒せそうもない敵に、挑むのも原因ですが。

 とりあえず、だいぶん、慣れてきましたので、必死で逃げた戦術的撤退したワーム君とかは、いつか倒そうと思います。

 さて、ブルードラゴンも再開しなくちゃ。

 DefaultProcessorAttribute に渡すプロセッサ名と、実際に選ばれるコンテンツ・プロセッサ名の一覧。
  EffectProcessor        → Effect - XNA Framework
  MaterialProcessor → Material - XNA Framework
  ModelProcessor → Model - XNA Framework
  ModelTextureProcessor → Texture (Model, DXT, mipmapped)
   - XNA Framework
  PassThroughProcessor → No Processing Required
  SpriteTextureProcessor → Texture (Sprite, 32bpp) - XNA Framework
  TextureProcessor → Texture (mipmapped) - XNA Framework
 ちょっと、独自形式の画像を気軽に扱うために、コンテンツ・パイプラインの調査をしました。が、わかりやすい(日本語で書かれた)資料が見つからなかったので、あ~だこ~だと四苦八苦。

 ContentImporter を派生して、クラスを作れば良い事はすぐにわかったのですが、その後が大変。

 親クラスを ContentImporter<Texture2D> にして、Import 関数をオーバーライドしてみるも、Texture2D の作成ができなくて、ダメ。
 今度は、ContentImporter<Bitmap> にして見るも、コンテンツ・プロセッサが対応していないと、クレームをつけてきて、ダメ。
 んで、ようやく、PixelBitmapContent と言う物を発見するも、やっぱり、コンテンツ・プロセッサがクレームを。

 最終的に、Faces プロパティに PixelBitmapContent をセットして、Texture2DContent を返す事で、ようやく、終了。

 とりあえず、以下のような感じで書くと言う例を置いておきますので、参考にどうぞ。
※コピペしてビルドしても動きません。

using System;
using System.IO;
using System.Text;
using Microsoft.Xna.Framework.Content.Pipeline;
using Microsoft.Xna.Framework.Content.Pipeline.Graphics;
using Microsoft.Xna.Framework.Graphics.PackedVector;

namespace ImportLibrary
{
[ContentImporter(".GAZ", DisplayName = "Textrue - GAZ")]
public class GAZImporter : ContentImporter<Texture2DContent>
{
public override Texture2DContent Import(string filename,
ContentImporterContext context)
{
FileStream fs = File.OpenRead(filename);

PixelBitmapContent<Rgba32> contentBmp =
new PixelBitmapContent<Rgba32>(画像の幅, 画像の高さ);

for (int nY = 0; nY < 画像の高さ; nY++)
{
for (int nX = 0; nX < 画像の幅; nX++)
{
contentBmp.SetPixel(nX, nY, ピクセルデータ);
}
}

Texture2DContent contentTex = new Texture2DContent();

contentTex.Faces[0].Add(contentBmp);

return contentTex;
}
}
}

 後、あんまりわかりやすく書く気がないので、NyaRuRuさんの以下の記事を参考にどうぞ。

  第5回 ゲーム開発者にとってのビルド作業とは? ― Content Pipelineを使ってみる

 大掃除後、廊下に続くドアを開けて皆でWiiで遊んでいたら、下の部署から五月蝿いので静かにして下さいと、苦情が来た。
 そんな、仕事納めの日。

 諸事情により、XNAを本格的に調査する必要に迫られた罠。

 と、言うわけで、セッティング。ちょっと、勘違いで手間取ったけど、小一時間ほどで終了。

 βの時はできていたSpaceWarのビルドが、「FBX fileが壊れてるから、ビルドできねんじゃー!」とか、因縁つけられたりと、色々とありましたが、マイクロソフトの伝統芸、2バイト文字の対応し忘れだったので、問題無し。忘れた頃に治るでしょう。

 後は、画面は1280x720なのに800x600の画像が綺麗に収まってて、良く調べたら、実はバックバッファが800x600だった罠。

 まぁ、なんだかんだと、2Dベースのゲームだったら、誰でも簡単にできるので、良い。