改めてみるとローズってかなりクレイジーなキャラクタだと思う。なんかドクターとテンションが近い。
そして第二話にして五十億年後 地球最後の日。こういう、普通の作品なら長編とか劇場版とかに使いそうなショッキングなイベントを何の躊躇もなくシーズン1第二話に持ってくる。
金持ちが地球最後の日を眺めて楽しむというくそったれ優雅なイベントということで、この作品の未来観がわかる。資本主義続くんだね、あと50億年。ちなみに、資本主義の終焉についてはシーズン10第五話で言及している。イギリスの価値観の変化だろうか。
フェイスオブボー。初期の頃は本当に伏線の入れ方が良かった。最近のシリーズはそんな狡猾さが失われている気がする。
太陽がオレンジ色に光ってるのは演出でもおかしいと思ったらサンフィルタがかかってた。なるほどね。でもローズ、いくら直接当たらなくても見ただけで絶対に失明すると思うんだが・・・
あらためて見ると青い宇宙人も死んでいたらしい。救いたい対象が殆ど全滅することもあるからまだ犠牲は少ない方なんだよな。そうそう平和には終わらない。総じてドクターの中では失敗したケースの方が多い計算になってるんじゃないだろうか。
最後、ドクターは自分の星は焼けてしまったと言うけど、未だによくわからない。結局ギャリフレイはタイムロックされたのか、焼けたのか。実際ずっと「みんな死んでしまった」っていってたのに正確には「事実上死んだも同じ」だったわけだし。「ドクターの日」の兵器の説明も全てを滅ぼすみたいな漠然とした説明しかされて無いし、わかりづらい。
ストーリー展開上最後のタイムロードにした方が色々都合が良かったけど、人気出たから続けたい→12人の制約が→タイムロード復活以外に回避策がない
みたいな都合で復活したんだと思う。
プログラムが極めて楽で、ファイルを目視できるPPMテキストを書き出すプログラムを書いた。
//! @brief PPM(RGB各1byte,カラー,テキスト)を書き込む //! @param [in] fname ファイル名 //! @param [in] vmax 全てのRGBの中の最大値 //! @param [in] width 画像の幅 //! @param [in] height 画像の高さ //! @param [in] p 画像のメモリへのアドレス //! @details RGBRGBRGB....のメモリを渡すと、RGBテキストでファイル名fnameで書き込む void pnmP3_Write(const TCHAR* const fname, const int vmax, const int width, const int height, const unsigned char* const p) { // PPM ASCII FILE* fp = _tfopen(fname, _T("wb")); fprintf(fp, "P3\n%d %d\n%d\n", width, height, vmax); size_t k = 0; for (size_t i = 0; i < (size_t)height; i++) { for (size_t j = 0; j < (size_t)width; j++) { fprintf(fp, "%d %d %d ", p[k * 3 + 0], p[k * 3 + 1], p[k * 3 + 2]); k++; } fprintf(fp, "\n"); } fclose(fp); }
恐らく最も何も考えなくても使え、少なくとも結果確認には最良の選択のPNM形式のうち、カラーが扱えるPPMの、吐き出すのが比較的楽そうなP6について、読み込みコードを書いた。
//! @brief PPM(RGB各1byte,カラー,バイナリ)を読み込む //! @param [in] fname ファイル名 //! @param [out] vmax 全てのRGBの中の最大値 //! @param [out] width 画像の幅 //! @param [out] height 画像の高さ //! @param [in] 画像を読み込んだメモリアドレスを返すためのポインタへのポインタ //! @retval true 成功 //! @retval false 失敗 //! @warning RGBが各1byteでないと動作しない //! @details ファイルを読み込み、width*height*3のメモリを確保したうえでRGBをそこへ格納する bool pnmP6_Read(TCHAR* fname, int* vmax, int *width, int *height, unsigned char** p) { // PPM BINARY *width = -1; *height = -1; *vmax = -1; FILE* fp; fp = _tfopen(fname, _T("rb")); char tmp[2048]; char c; while ( c=fgetc(fp)) { if (isspace(c)) continue; if (c == 'P') { //フォーマットを特定する c = fgetc(fp) - '0'; if (c != 6) { fclose(fp); return false; } continue; } if (c == '#') { //コメントを読み飛ばす while (c != '\r' && c != '\n') c = fgetc(fp); continue; } if (*width < 0) { int s = 0; while(1) { if (isdigit(c)) { tmp[s++] = c; c = fgetc(fp); } else { tmp[s] = '\0'; *width = atoi(tmp); break; } } continue; } if (*height < 0) { int s = 0; while (1) { if (isdigit(c)) { tmp[s++] = c; c = fgetc(fp); } else { tmp[s] = '\0'; *height = atoi(tmp); break; } } continue; } if (*vmax < 0) { int s = 0; while (1) { if (isdigit(c)) { tmp[s++] = c; c = fgetc(fp); } else { tmp[s] = '\0'; *vmax = atoi(tmp); break; } } break; } else { break; } } if (*width < 0 || *height < 0 || *vmax < 0) { return false; } const size_t maxsize = *width* *height; unsigned char r, g, b; *p = new unsigned char[maxsize * 3]; for (size_t i = 0; i < maxsize; i++) { fread(&r, 1, 1, fp); fread(&g, 1, 1, fp); fread(&b, 1, 1, fp); (*p)[i * 3 + 0] = r; (*p)[i * 3 + 1] = g; (*p)[i * 3 + 2] = b; } fclose(fp); return true; }
Doctor Who (新シリーズ)
シーズン1 第一話
なぜか気になって見直しを始めた。
新シリーズの開始が2005年。
第一話。この話は敵がマネキンで、ラスボスがちょっと液体的なのが最後に出るだけ。
2005年といえばスター・ウォーズ エピソード3の頃。映画のCGも既にかなりこなれている時代。
しかしドクターフーは旧シリーズ(~1989)があったとはいえ世代も変わり新ドラマ扱いしてもいい。
既にドル箱となってしまった2018年現在とは全く違う雰囲気を感じる。
(この作品は定期的に雰囲気を変えることで長寿化を実現しているので当たり前なんだが・・・)
それにしても、ローズは美人なのに、いつ見てもローズのママはブスだ。。。女手一つで娘育ててるから苦労してるんだろうけど。
この作品、シリーズ通して母を悪く書いてるなとふと思う。あ、エイミーは違うか。美人だし。
そしてこの頃のドクターは過激。
ビルの屋上にあるプラスティックの遠隔装置を爆弾で吹っ飛ばす。全くじゃないけど、爆発物つかうのは珍しい展開。頭使えよ、賢いんだから。屋上の装置壊すには火薬多すぎるし。
でもシーズン4「運命の左折」ではやり過ぎて死んでたし、やっぱり”暴走を止める誰か”がいないとだめなんだろう。
コンパニオン候補が道で暢気に歩きながらドクターに質問する。このシーンもなんとなく珍しい。マーサとは月で、ドナはテレポーテーションして、エイミーは12後のカウントダウンで、クララは・・・ごめんどれが最初なんだ。とにかくいつも余裕がない。
ドクターを探すシーン。いまは懐かしいCRTディスプレイがつながったパソコンでDoctorを検索。
Doctor
Doctor Living Plastic
Doctor Blue Box
やっと見つかったがなんと9代目ドクターの写真が貼ってある。少なくとも13人いる中のよくその顔で写真を撮られたな。
そしてミッキーが入れ替わって、ドクターが解説し、ローズが謎を解き、ドクターがドジって、ローズが助けて・・・、とドクター・フーっぽくなっていく。
そして最後、ローズはドクターとの動向を一度断り、「タイムトラベルもできるけど?」と再度誘われてコンパニオンに。
そりゃやっとの思いで断ったんだから、二回目は無理だよね。
総評。懐かしい。そして作品自体が初々しい。まだ方向性が定まってない感じがして新鮮。