2017年01月の日記です

目次

01日 あけましておめでとうございます
04日 正月休み
08日 プログラマーの技術力
09日 Android の cordova で file を扱う
11日 アントニー・ホーア 誕生日(1934)
14日 WaveRunner
15日 あの頃のインターネット
20日 1996年のそのほかのゲーム
21日 家の10年目メンテナンス
21日 風邪ひき
26日 後藤英一 誕生日(1931)
27日 ザ・ハウス・オブ・ザ・デッド
31日 【追悼】中村雅哉さん


あけましておめでとうございます  2017-01-01 09:45:07  家族

▲目次へ ⇒この記事のURL

あけましておめでとうございます

今年は子供三人が共に小学生という、たった1度のチャンスの年越し。


まぁ、それがどうしたというわけでもないのだけど、子供たちの要望で「夜更かし許可」した。

いや、毎年のように夜更かし許可している気がするのだけど、結局眠くて寝てしまうのが常だった。


しかし、次女も小学校3年生になり、ちょっと物事がわかるようになってきた。

毎年紅白を見ていても「知らない歌ばかり」でつまらなかったのが、楽しんでみられるようになったようだ。


「除夜の鐘聞いてみたいから、12時まで頑張る!」と言いながら起きている。




半年くらい前から、小学校6年の長男には、小学校1年の次女と同じ時間に寝るのは「早すぎて寝られない」状態だった。


なので、皆と一緒に寝る必要はないことにしていた。

次女が寝るときは大抵僕がそばにいて、話をしながら寝る。長女はこの話に参加したくて一緒に寝ることもあったし、長男と一緒に本を読んでいることもあった。


徐々に生活時間が遅くなりつつあり、次女もそれに引きずられた。

長男が小学校1年の時には、8時半には寝るようにしていた。でも、最近次女が寝るのは9時過ぎだ。



そんなこともあり、多少夜更かしが大丈夫になった、というのもあっただろう。

10時ごろまでは紅白を見て楽しんでいた。


いつも途中で寝てしまうから、最後まで見てみたいそうだ。




でも、ついに次女が「つまらない」と言い出す。

まぁ、紅白はビデオを録っているし別のもの見てもいいよ、と許可すると、ゲームで遊ぼうと言い出す。


最近の子供たちのお気に入りは、マリオカートダブルダッシュ!。2003年のゲームだけど、楽しんでいる。

カートに2人乗っている設定で、複雑な操作を、2人で分担できるのが子供にも遊びやすいようだ。


長男と長女はなかなか息があっていて、自力でほぼすべてのコースで1位を取れるほどに攻略していた。

でも、最後の1コース…スペシャルカップの 150cc だけ、攻めあぐねていた。


僕も参加してプレイ。

と言っても、僕はほぼ「久しぶりプレイ」なので、すっかり下手になっている。

僕に期待しているわけではなく、通常のプレイでは難敵である「ドンキーコング」を、僕がプレイヤーキャラとして使用しただけ。


これで、ついに1位を取った。

…あたらしいコースが出現したけど、興奮した状態で 11時半を迎えた。




家の外に出てみると、近所で鳴っている除夜の鐘が聞こえる。

とりあえず、「除夜の鐘聞いてみたい」という願いは達成。


この後紅白にチャンネルを戻し、途中は飛ばしたけど「最後まで見てみたい」というのも達成。


「ゆく年くる年」を見て、家からかすかに聞こえる鐘の音ではなく、実際の除夜の鐘がどのようなものかも知ることができた。



ひとまず、あけましておめでとうと家族で言い合うが、本当はまだ明けてはいない。

「明ける」って、夜明けのことだからね。


#子供には先日その話をしたので、ちゃんと理解している。




夜更かしはしたが、みな夜明け直前に起きて、近所で一番初日の出が見やすい場所に行って拝んできた。

…いや、実は長男だけ「眠い」と言って留守番したのだけど。



おせち料理は、だて巻き、鶏ハム、栗きんとん、豚の角煮と、その汁で漬け込んだゆで卵、いくらのしょうゆ漬け、松前漬け、紅白かまぼこ、昆布巻き、黒豆、菊の酢の物。


菊の酢の物は妻が秋に仕込んだものだけど、それ以外は今年は全部僕が作ったので、少し寂しい。



というのも、年末に妻が自転車で転んでけがをしてしまい、右手が不自由だから。


自転車で前輪が穴にハマって縦に回転してしまい、鎖骨打撲で腱を痛めてしまったようで、右腕が自由に動かないのです。



指先は大丈夫なので、三角巾で腕を釣った状態で近所を歩いて、ポケモンGOは遊んでいます。

まぁ、家に閉じこもっていても気が滅入るので、散歩するのは良いことです。


#妻としては自転車に乗れないのが、行動範囲が狭くなってしまって面白くないらしい。

 ちなみに、僕はポケGOはやってません。



▲目次へ ⇒この記事のURL

同じテーマの日記(最近の一覧)

家族

別年同日の日記

03年 謹賀新年

03年 -70度

05年 A Happy New...

06年 あけましておめでとうございます

13年 あけましておめでとうございます

15年 あけましておめでとうございます

16年 あけましておめでとうございます


名前 内容

正月休み  2017-01-04 15:10:26  家族

▲目次へ ⇒この記事のURL

正月休み

例年、2日は長兄の家に親族一同が集まる。


ところが、今年は長兄の長女が体調を崩したそうで、中止になった。

病名ははっきり聞いてないけど、ノロとかインフルエンザとか、感染性のものが流行しているからね。



急遽2日が暇になった。

そこに加えて、元日の日記にも書いたが妻は腕を怪我していて自由に動かない。

だからゆっくり家で過ごすのが良いだろう…と思っていたら、自由が利かないからこそ家にいると鬱々するという。


じゃぁ出かけよう。

急遽の思い付きで、昼ごはんを食べてから家を出る。


しばらく前から「映画見に行きたい」と妻が行っていたので映画も考えたのだけど、見たい映画は近所ではやっていなかった。


よし、以前から長女と約束したきりになっているから、動物園に行こう。




金沢動物園は家から30分ほどの距離にある。

なのだけど、正月だから道も混んでいて、もう少しかかった。


久しぶりの金沢動物園だけど、ずいぶんと改修工事が行われたようだ。

以前から「無駄に長かった」散策路にショートカットが作られ、カンガルー舎にも人が入れるようになった。


一方で人気者だったウォンバット、ヒロシは永眠した。

国内での飼育最高齢記録だったようなので、堂々の大往生だろう。


いつもなら、我が家は博物館系の施設をゆっくりと楽しむ。


普通、どこの博物館や動物園でも、ざっと見るなら2時間程度で終わるように作られている。

でも、細かな説明まで読み始めるとその倍はかかる。いつもはそうやって楽しむんだ。


しかし、この日は午後から出かけたのでそれほど時間が無かった。

さらに、子供たちは動物園前の自然公園でも遊びたいと言っている。細かな説明はなしで、次々と見ながら回る。

まぁ、ところどころ見所は時間をかけて楽しんだかな。


2時ごろから入り、4時前に園をでた。

それから、自然公園で遊ぶ。とても長いローラースライダーがあるのだけど、この日はすでに夕方だし、人も少なかったのでそれほど並ばずに滑ることができる。



子供を見守りながら、周囲を見ると桜が咲いていた。初春。

この日記についている写真は、その桜。



30分ほど遊んだら、もう閉園時間。

駐車場は 5時には閉鎖なので、急いで出なくてはならない。


あわただしかったけど、子供としては十分に楽しかったようだ。


夕飯はスシロー。

長兄宅に集まると大抵寿司だから、正月には子供も寿司食べたいだろうと思ったのだけど、別にそうでもなかったみたい。




3日。今度は映画を見に行く。


妻が「この世界の片隅に」を見たがっている。

「君の名は」も見たいのだけど、多少SF含みで難しいそうなので、子供と見るなら「この世界~」のほうが良いだろうとの判断。



さて、僕が住んでいる大船は、映画の街として知られる。

でも、映画館は一軒もない。昔はあったのだけど。


大船松竹撮影所が「松竹シネマワールド」というテーマパークを作った際に、その中に映画館を作った。

松竹公式映画館ができたわけで、昔から街にあった小さな映画館はつぶれてしまった。


しかし、シネマワールドは酷い内容のテーマパークで、3年程で閉園。

その後松竹自体が大船から引っ越してしまい、「映画の街」大船には、映画館も撮影所も残っていない。



そんなわけで、映画を見ようと思ったら結構な遠出になってしまう。

「この世界に」は上映館が少ないことも相まって、片道1時間弱の ららぽーと横浜 まで出かける羽目になった。




朝からスマホで予約を入れ、15時半からの席を確保した。

15時半だから昼飯後に出ても間に合うかな、と思ったけど、折角行くのなら買い物したいと妻が言うので、早めに出る。


と言っても、ちょうど昼飯時に到着。

初売りセールの劇混みで、どこも満席。


ミスタードーナツが出店で100円セールをやっていたので、それを買ってベンチで食べる。

昼ごはんというより、おやつだな。後でちゃんと食べよう。


そして買い物。

東急ハンズに入って、長女が「いろんなもの売ってるね」と驚いている。


大人の駄菓子屋なんだよ、と説明する。

わくわくするものを、手ごろな額で売っている場所。必要ないものまでも、つい買ってしまう場所。


妻が欲しいものを探す間、子供は「ゲーム」のコーナーに張り付いていた。



館内案内を見ると、ジグソーパズル専門店があった。

長男が興味を示し、見てみたいという。


行ってみると、強い興味を示したのは長女。

お小遣いで買いたいと言い出したけど、ジグソーパズルなら僕が持っているのもあるので、まずはそれをやってみな、と落ち着かせる。


絵柄を気に入ってほしがっていたのは、1000ピースのもの。

でも、長女はせいぜい、50ピースくらいのジグソーしかやったことが無い。


翌日、僕の持っていたのを出してみたら、250ピースだった。これを描いている時点で苦戦中。

これくらいできてからでないと、1000ピースは無駄になってしまうからね。




2時ごろにフードコートに行って昼飯を食べ、それから映画館へ。

「この世界の片隅に」は、いい内容でした。ネタバレは良くないので詳細には語らない。


子供たちには、あらかじめ当時の歴史を伝えてあったけど、あえて多くを説明しない造りの映画だったため、ちょっと難しかった様子。

疑問点などは帰りの車の中で受け付けて、どんどん答えて置いた。




うちの父は、戦争中が重苦しいばかりの暗黒の時代のように言われるのを嫌がっていた

戦争中だって、人は楽しければ笑うし、結婚だって出産だってある。


戦争体験というと人の死ぬ話ばかりが注目されるけど、そうした普段の生活も伝えていかなくては正しい認識にならない、と。



「この世界~」は、父が伝えたかったような内容を伝えてくれる映画なのだと思う。



うちの母は、戦争中に広島のはずれに疎開していたそうだ。

街からは山をいくつか隔てている。


父とは11歳差で、父は戦争に「行った」派だけど、母は終戦時にまだ8歳。

ドングリを拾って、水に晒してせんべいを作り、前線の兵士に送った話などを聞いた。


ある夜、街が燃えている、と騒ぎになって、大人に負ぶわれて山の上まで見に行ったのを覚えているという。

街の方向が、夜なのに真っ赤に照らされていて、子供心に怖かった思い出だけがあるそうだ。


ただ、その印象だけが強烈に残っていて、原爆だったのか、果たして本当に街が燃えていたのかはわからないという。


こんな話もしたところ、戦争が決して遠い昔の話ではなく、身近に経験者がいる話なのだと分かってくれたようだ。



▲目次へ ⇒この記事のURL

同じテーマの日記(最近の一覧)

家族

別年同日の日記

04年 あけましておめでとうございます

05年 おせち料理

05年 お食い初め

06年 獅子舞

16年 テニスとインベーダー


名前 内容

プログラマーの技術力  2017-01-08 15:26:44  業界記

▲目次へ ⇒この記事のURL

Twitter で「コピペで済ますプログラマ」という話題を見かけました。

プログラムが書けないプログラマ、でもあります。


冗談みたいだけど、本当にそういう人はいます。

本とかネットとか、いろんな場所で「例示」されたプログラムを持ってきて、組み合わせて目的のものを作り上げてしまうのね。



昔から「読み書き算盤」と言われます。まず読めないとどうしようもないけど、「書く」というのは読むことの延長ではなく、違うレベル。


プログラムも同じで、「読める」…意味が分かることと自分で書けることは違います。

コピペプログラマは、読めるから組み合わせることもできるけど、書けないのです。


とはいえ、それがダメだというのではない。

最初は意味も分からず写経するのが大切だし、意味が分かってきたら真似して作ることが大切。


でも、その段階でプロになってしまうと、ちょっと問題が出てきます。



「業界記」として書いている一連のシリーズでは、あまりネガティブなことは書かないようにしています。

でも、今回はこうした話を書いてみます。




プログラム課としてはかなり年長の「ベテラン社員」がいました。

一度一緒に仕事をしたこともあります。年長なので、その時のメインプログラマでした。…肩書上は。


でも、実際にはコピペプログラマ。自分では書けず、過去のプログラムの切り張りでプログラムを作ります。


ゲーム作成って「そのゲーム独特の」処理も多いのね。コピペでは済まない。

そうした部分は、部下のプログラマに任せます。

メインプログラマは全体を統括するのが仕事で、実際のプログラムは他の人に任せてもいい。


ここでは、実際にほとんどを組んだ人を「事実上のメインプログラマ」と呼びましょう。


この、事実上のメインプログラマが作っていて、どう処理してよいかわからない部分がありました。

ハードウェアに密接に関係するパラメーターを決定しないといけない部分で、仕様書を繰り返し読んでもどのようなパラメーターが求められているかわからないのね。

ある程度の試行錯誤が必要でした。


しかし、事実上のメインが試行錯誤を始めてしまうと、進捗が止まってしまいます。

そこで、「肩書上のメインプログラマ」がその部分を担当しました。


ベテラン社員で顔が利きますから、他の部署に行って必要な処理をしている他のプログラムを見つけ出し、該当部分をもらってきます。


あとは、プログラムの流れを見て該当処理をしていると思われる部分を、丸ごとコピペ。

そのままでは動かなかったので、変数の形式などを試行錯誤しながら「それらしく」合わせます。


これで完成。

プログラムの内容は理解していないので、本当に正しいのかわかりません。

でも、必要としている変数の値の範囲では「それらしく」動いているのだからいいんじゃないかな。



「事実上のメインプログラマ」が、後学のために処理の内容など尋ねたのですが、「切り張りしただけだからわかんねぇ」とのこと。

何やってるのかわからないで、よくちゃんと動くプログラム作れますね…と、変な感心をしていました。




この人と同期の、また別の人の話。

同期なので当然ベテラン社員なのだけど、一応自分でプログラムはできました。


でも、ちょっと論理性が怪しい。

「読み書き算盤」でいえば、算盤の部分ができていない感じ。



その人が、ST-V の導入初期に「3Dプログラムの勉強会をしよう」と提案しました。


ST-V は3Dを扱えるハードだったけど、3D経験者はまだあまりいませんでした。

そこで、3Dの基礎概念くらいは全員が知っている必要がある、と考えたようです。

ここら辺は、ベテランらしい面倒見のよい部分です。


特に反対など出るわけもなく、会議室で第1回の勉強会が行われました。



ここでは「ゲームを作る上での」概念が大切。

だから、回転行列とかを教えるのではない。そんなものはライブラリを使えば済む話。


2Dなら表示したい座標を指定すればよかったけど、3Dだとカメラ座標とキャラクタ座標があって~ とかそういう話。




話がキャラクターの動きになった時、「回転はX、Y、Zの軸を中心に行われるけど、どの順番で回しても一緒」と先輩社員。


え、それ違いますよ。回転順序は重要、と僕が指摘したのですが、「お前、3Dわかってないなぁ。あとで説明してやるから席に来い」と言われます。


で、一通りの説明終了後に、先輩が実際の動きを実演してみせるというので、興味のある人は先輩の席の周りに集まります。



まず、「回転順序は関係ない」ことが実演されます。

3Dのモデリングソフトを起動し、回転を実演します。


X軸を回してからY軸を回せばこういう形で、Y軸を回してからX軸を回しても同じ形に…なりません。


焦って何度か同じ操作を繰り返す先輩社員。でも、同じになるわけないです。3Dでは回転順序は重要ですから。


本当は他にもいろいろ実演しながら説明する予定だったのだけど、なんとなくここで会がお開きになってしまいました。

勉強会も、続けてやる予定だった2回目は行われませんでした。


だって、みんなの前で「教える」と息巻いていた人が、基本部分すら理解していないとわかってしまったのだから。


みんなの前で誤りを指摘して恥をかかせた形になってしまったので、この先輩社員には後まで恨まれていたような気がします。




セガは大手会社だったから、プログラマーの技術力も高かったんでしょう?

と人に言われることがあります。


でも、ここに例を挙げたように、そんなことはありません。

初歩的なことでもできない人は結構多かった。


「技術力」は個人のものなので、大手だからと言って高いことはない。


でも、大手だと「層」の厚さはありました。多くの個性が集まっているのね。

コピペしかできなくても、顔が広くて必要なプログラムを確実に見つけてくる、というのも大切な個性。

3D勉強会を開いた人だって、3Dは理解していなかったけど、2Dゲームでは有名なものを何本も手掛けた方です。



もっと大切だったのは、プログラマー以外の「テストプレイ要員」が豊富にいたことのように思います。

中小企業だと、余計な人員を雇う余裕はないので、全員がゲームの作成にかかわっていて「デバッグプレイ」まで手が回らないことも多いのです。


でも、人員に余裕があれば、ひたすら遊んでバグを出すこともできる。

バグっていうのは見つからないと除去できないもので、見つけ出すことが何よりも大切です。



結局、個人の技術力は高くなくても、大手の総合力で「製品につぎ込まれた技術力」は高く見えるのね。




まぁ、人数が多いと平均値から離れている人も出てくるわけで、とてつもなく高い技術力の人もいましたけどね。

そちらの話は、またそのうち書く機会もあると思います。



▲目次へ ⇒この記事のURL

同じテーマの日記(最近の一覧)

業界記

関連ページ

些細な綴り間違い【日記 17/02/01】

ゲーム会社の仕事【日記 17/02/08】

別年同日の日記

15年 ジョン・モークリーの命日(1980)


名前 内容

Android の cordova で file を扱う  2017-01-09 12:31:43  コンピュータ

▲目次へ ⇒この記事のURL

仕事でハマった事例があって、同じことで悩んでいる人がいそうだと感じたので書き記しておこうと思う。

最初に、事象を説明しておこう。ここで意味が分からない人は、この記事を読んでも意味が無いと思う。



・Cordova / Phonegap でスマホ用のコンテンツを作っている。

・<input type="file"> を使ってスマホ内のファイルを選択し、Javascript でその内容を得る。

・iOS とブラウザでは動くのだけど、Android では環境により、ファイル選択できたり、できなかったりする。


まずは、上にある事象を「乗り越えた」。

上の事象で困っている人もいるかもしれないから後で解説するけど、乗り越えたうえでさらに問題がある。


・ファイル選択は出来たが、得られるものが違う。

 iOS と同じ動作にさせるのに、どうしたらいいのかわからない。



原因は、Android ではセキュリティの問題で WebView からローカルファイルが扱えないこと。

ただし、これは途中のバージョンからの仕様なので、「過去との互換性」を気にして、扱えるようにしてある端末もある。


だから、端末によっては動くのに、別の端末では動かないことがある。

原因が特定しづらい、最初のハマりポイントだ。



この問題を「乗り越える」には、Android では file chooser の plugin を使う。

プラグイン自体は多くの人が作っていて、ほぼ同じ動作なので好きなものを使えばよい。


僕はdon / cordova-filechooserを使った。

他のものに比べ、制御用のオプション指定が無い。制御が不要であれば軽量で使いやすい。


HTML の Content-Security-Policy に file: blob: cdvfile: を追加すること。

そうしないと、Javascript からローカルファイルを扱えない。


file: はローカルファイルを意味する。blob: はローカルファイルの中身をデータとして扱う指定だ。

cdvfile: は、Cordova 独自の file 拡張機能を扱うことを意味する。



さて、これでファイル選択ができるようになっても、得られるものが HTML5 で得られるものと違う。

この違いを乗り越えるのが結構ややこしいことになる。




HTML5 の input file で得られるのは、Javascript の「file object」だ。

ファイル名やサイズ、更新日などと共に、ファイルの中身を読み取れるようになっている。


android の fileChooser で得られるのは、ファイルの「コルドバ拡張の」パスだ。

これは cdvfile: スキームで表現される。


特殊なスキームだけど、気にすることはない。

例えば、img タグにこのスキームを渡せば、そのまま画像ファイルを表示できる。


まぁ、ファイルを選択するという目的にはかなっているのだけど、得られるものが違う。

HTML5 / iOS で動くプログラムでは、file object を得られているのに、cordova では file path しか得られないのだ。


僕の場合、file object をそのまま受け渡すライブラリを使っていたので、できれば file object が欲しかった。



window.resolveLocalFileSystemURL を使うと、ファイルのパス名を fileEntry オブジェクトに変換できる。


fileEntry には file メソッドがあり、file object を取り出せる。

これで目的の file object を得ることができた。



// iOS / HTML5 の file タグ
$("input:[type=file]").on("change",function(e){
  getFile(e.target.files[0]);
});


// 上と等価な Android の fileChooser
function fail(){alert("error");};

fileChooser.open(function(path){
  window.resolveLocalFileSystemURL(path,function(fileEntry){
    fileEntry.file(function(file){
      getFile(file);
    })
  },fail);
},fail);


getFile に file object が渡されればよい、というプログラムであれば、こんな感じかな。




ただし、まだ問題がある。


cordova の File API 関連は拡張されている。

というのも、アプリを作成するのであれば、自由なファイルアクセスや、ファイル書き込みも欲しいから。


Javascript では、セキュリティのためにファイルアクセスは基本的に禁じられているし、書き込みもできない。


これらを実現するために、cordova では File API 関数群は全部互換品に置き換えられている。


しかし、ここで問題が生じる。

Android で得られる file object は、cordova による「互換品」であり、HTML 5 の file object とは違うものだ。




HTML5 には、Blob がある。


Blob っていうのは捉えどころのない塊の意味合いがあるのだけど、プログラムの用語としては binary の塊のことだ。

旧来の Javascript では、バイナリは「文字列」として扱ったのだけど、HTML5 ではより効率よく扱える Blob という概念ができた。


file object は blob object から派生したものになっていて、バイナリの塊と共に、ファイル名やサイズ、更新日付などを持っている。


そして、blob も file も、「とらえどころのない塊」なので、そのままではデータとして扱えない。

必ず、データを取り出したり変換したりするメソッドや関数を使用して扱う。



さて、cordova では、こうした「関数」レベルで互換性を保っている。


ところが、僕が使っていたライブラリでは、blob を渡されたかどうかを、データの型を確認して確かめていた。

file は blob から派生したものだから、blob として認識される。でも、それ以外のものを渡されると、エラー終了する。


まぁ、当然の処理なのだけど、cordova の file object は、HTML の blob の派生ではなく、独自の構造体に過ぎなかった。

だから、cordova の file object が得られたからと言って、iOS の file object と同じように処理を行っても、動かない。


ここは非常に厄介なハマりポイントだった。




結局のところ、Android では「そのライブラリを使わない」という決断をせざるを得なかった。


ライブラリを改造しても良かったのだけど、ある程度の規模のものを改造するのであれば、改めて「動作検証」をしないといけないし、今後ライブラリがバージョンアップされるたびにそれを繰り返す必要がある。

そうした手間はかけたくなかったんだ。


幸い、そのライブラリは「各実行環境での差異」を吸収するためのものだったので、Android だけなら独自に書いてもそれほど難しくはなかった。



別の手段として、自前で blob を用意してライブラリに渡す、という方法も考えた。


file object は当然データを得られる。これは cordova でも一緒だし、そうでないと意味がない。

そして、データがあれば blob を生成できる。


ところが、調べてみるとこちらにも問題があった。


blob は元々「ファイルや、ネットから得たデータなどを上手に扱う」ためのもので、入力を前提としていた。

生成する方法も後から策定されたのだけど、ドラフト時点と正式決定時点で方法が違っている。


このため、Android のバージョンにより、blob を生成する方法に差異がある。

Android 4 までと、5以降で実装されている方法も違う…「らしい」。


らしいというのは、僕自身が実機確認できていないから。

確認できない不安があるのであれば、比較的古くて安定動作が望める仕様を使ってプログラムを作るしかない。




最終結論としては、Android の file 周りは、iOS / HTML5 と「共通化しづらい」ことになる。


iOS や HTML 5 では、ファイルを選択した結果 file object が得られる。

しかし Android では file path しか得られず、fileEntry に変換したうえで file object を得ないといけない。


そうやって得た object は、できるだけ互換を保つ努力はされているが、完全互換ではない。

file を受け取るライブラリ等を使用している場合、そのライブラリは動かないかもしれない。


Android で blob を作り出せれば問題は解決しそうなのだが、Android のバージョン間で blob の生成方法には違いがある。

そのため、この方法を使うのは注意が必要だ。



しかし、問題は所在が分かれば解決できる。

解決方法は、そのプログラムごとに違うだろうが、ここに書いたことがヒントになれば幸いだと思う。



▲目次へ ⇒この記事のURL

同じテーマの日記(最近の一覧)

コンピュータ

別年同日の日記

03年 Mac の新しい WebBrowser

13年 続・Windows8


名前 内容

アントニー・ホーア 誕生日(1934)  2017-01-11 11:39:18  今日は何の日

▲目次へ ⇒この記事のURL

今日は、アントニー・ホーアの誕生日(1934)


コンピューター科学者で、クイックソートの考案者です。


わかる人には「じゃがいもソート」を思い出してもらえばいい。

…もう4年前になるのか。今では毎年正月の恒例となったNHKの教育番組「大人のピタゴラスイッチ」の、初めての放送時に紹介された動画でした。

ジャガイモの重さを比べながら、軽い順に並べていく。この際のアルゴリズムが、クイックソートでした。


#ちなみに、「しめじソート」もあり、しめじをマージソートで長さ順に並べていました。



ソートというのは「何かを基準に並べること」です。

いろんなアルゴリズムがあるし、適材適所で使い分ける必要がある。


クイックソートは、考えられた当時としては超早かったので「クイックソート」と名付けられましたが、今ではもっと高速なアルゴリズムもあります。

でも、ソートって「理想的な場合」と「最悪の場合」で速度が違うのが普通だし、理論上は速くてもプログラムがややこしくなるのであれば結局遅いし、今でもクイックソートはイイセン行っています。



上は YouTube にあったソートアルゴリズム比較。真ん中がクイックソートです。

繰り返し、いろんな条件でソートを行っているのだけど、クイックソートが平均的に速いのがわかります。




ソートっていうのはアルゴリズムの基本で、いろんな考え方がある、くらいには知っておいた方がいいです。

プログラマでない限り、詳細に知っている必要はないけど。


「検索アルゴリズム」も基本なのですが、検索前に並べてあるのが前提というのも普通だったりもします。

だから、やっぱりソートは重要。


例えば、辞書はすぐに目的の語を検索できます。

これは、辞書の項目が「あいうえお」なり「ABC」なりの順にソートされているためです。


そして、ソートアルゴリズムの中には、「すでにソートされている」ことを前提に、新しい要素を入れる場所を高速に探し出すものもあります。

これ、「ちょうどよい位置を探す」なので、検索アルゴリズムなのね。ソートと検索は密接な関係にあるのです。




「順番に並べる」ための方法をソートと呼ぶので、何もすべてが「計算機で実行できる」わけではありません。


昔、「パスタソート」という話を聞いたことがあります。折れてしまったパスタを長さ順に並べる方法。

パスタをまとめて立てたら、「輪っか」を下から持ち上げていくだけ。

短いものから順に、支えを失って倒れます。倒れたところを傾斜にしておけば、転がって短い順に並んでくれます。



僕は世代じゃないので実際に見たことが無いのだけど、昔の図書館では目録を「検索カード」で管理していたそうです。

著者名順とか、署名順とかで並べられている箱があって、その中でカードを探し出せば、どこの棚に本が置かれているかわかる。


カードの上部…肩の部分には、すべて同じ位置に穴があけられています。

でも、この穴は、「穴」として存在しているものと、穴の上部を切り欠き、カードの辺の「凹み」として存在しているものがあります。

カードを束にして、穴に棒を通して持ち上げると、「穴」のものだけが釣り上げられ、「凹」は下に残ります。


これで、カードを2つに分類できました。


実は、穴は複数空いています。

カードを2つに分けた後、それを「前後」になるように束にして、再度別の穴で持ち上げる。

実は、穴か凹かは2進数になっていて、繰り返すことでカードの束を順番に並べられるのです。


(下の桁から繰り返し、最後に一番上の桁を処理すると、ちゃんと並ぶ)


これもまた、ソートアルゴリズムです。




僕が作るようなプログラムは、ゲームなんかが多いので、使うのはもっぱら挿入ソートです。

非常に単純なアルゴリズムで、あらかじめソート済みの時には十分な速度で動く。


10位までのハイスコアランキング、とかなら全く問題ないし、アルゴリズムが単純なのでむしろ速い。


3D描画のためにポリゴンをZ軸に従って順次並べる…なんてことになると、もっと高速なアルゴリズムが必要になります。

何百も、場合によっては何万ものデータを、かなり短い安定した時間で並べる必要があるからね。


Amazon とかでお買い物をすると、他の類似商品をお勧めされることがあります。

これもソートアルゴリズム。何らかの指標で購入製品と別の製品の「類似度」を測り、類似度が高いものから順にお勧めしているのです。


同じように、google 検索も検索文にマッチしたものの中から、様々な指標で「お勧め度」を算出して、ソートして表示しています。


ページそのもののお勧め度もあるし、更新日付の近さや地理条件なども順位に関連する。

だから、同じ検索内容でも、日によってソート順序が変わったりもします。


何十万もあるページの中から瞬時にソートするには高度なアルゴリズムが必要です。




コンピュータープログラムでは、ソートは基本です。

今の世の中はコンピューターがいたる所にありますから、そこらじゅうソートアルゴリズムだらけ。


もちろん、用途に応じて新しいソートアルゴリズムなんかもまだ考案されたりしています。

でも、クイックソートは古典でありながら、今でも十分利用されているソートアルゴリズムの一つです。



▲目次へ ⇒この記事のURL

同じテーマの日記(最近の一覧)

今日は何の日

別年同日の日記

04年 住宅展示場

06年 自宅で新年会


名前 内容

WaveRunner  2017-01-14 09:45:27  業界記

▲目次へ ⇒この記事のURL

WaveRunner は、1996年の秋に発売になったはず。

Model2 で作られた、マリンジェット…もしくジェットスキー、水上バイク、パーソナルウォータークラフト(PWC) などと呼ばれる、海の上を走る小型船舶のレースゲームです。



念のため書いておくと、水上バイクは日本でよく使われる一般名称で、PWC は英語圏でよく使われる一般名称。

マリンジェットはヤマハの商標、ジェットスキーはカワサキの商標です。


そして、WaveRunner というのは、ヤマハが発売しているマリンジェットの機種名。

というわけで、ヤマハに許可を得て実機を登場させた、水上バイクのゲームなわけです。


http://www.gamesdatabase.org/から引用


マリンジェット、WaveRunner なのに、広告チラシ下部の英文では jet ski って書いてある。

わかってないとしか思えない。




たしか1996年の春ごろ、部署内でアイディアコンテストをやる、と企画課の課長が発表しました。


企画は当然アイディアを考えるのが仕事なのだけど、企画以外でも「こんなゲームを作りたい」というようなアイディアを誰しも持っているもの。

でも、そうしたアイディアは埋もれがちなので、みんなに課題として提出してもらって、いいアイディアのものをゲーム化したい、という趣旨でした。


しかし、漠然と「考えて」と言っても、アイディア出しに慣れていない人には難しいだろうから、と、方向性が示されます。


レースゲームとすること。

他にないようなアイディアを入れること。

普通の車のレースゲームはたくさん出ているので、目を引くような変わった操作性が欲しいこと。


この方向性で、各自1つは企画書を提出して、とのことでした。



僕もアイディアを出しはしたのだけど、それはまぁいいんだ。

しばらくして、良いアイディアだと皆の前で発表されたものがあって、そこで「あぁ、最初から出来レースだったのか」と気が付いた。


出来レースといっても、受賞者が決まっていたという意味ではないのね。

ただ、あらかじめ上層部が考えているアイディアがあって、それに沿うアイディアが出てきたところで掬いとる、というだけだった。


マリンジェットを使ったレースゲーム、というアイディアを、何人かが提出したそうで、それらのアイディアが良かった、と褒められます。

これから夏だからタイムリーだし、水上の挙動というのはお客様も慣れていないので新鮮な感じがする…などなど。




僕としては、選出理由を聞いていて、まるっきり白けてしまいました。


この頃、水上バイクがちょっと流行の兆しを見ていました。

テレビのバラエティなんか見てても、「これから流行する新しいマリンスポーツ」的な感じでよく出てた。



今調べてみたら、水上バイク自体の歴史は古いのですが、流行し始めたのはカワサキの Jet ski 以降なのね。

というのも、他の会社は「一人載りのモーターボート」として考えているのに、カワサキは「引っ張ってもらわないでできる水上スキー」と考えていたから。


他社が乗り物を作っているのに、カワサキはスポーツギアを作った、ということでしょうか。似て非なるもの。

これで、1980年代の中ごろにアメリカで流行し始めます。ヤマハが参入したのもこの頃。


1990年ごろにはブームが起きて、これをきっかけに 1990年代半ばから次々と「規制」が作られます。

規制しないといけないほどの大ブームになったという事ね。



その流行が日本に数年遅れで入ってきていたようで、それが先に書いたテレビ番組などの例になります。

たしか、この年の春のショーでも、海外のゲーム会社が、3D視点の水上バイクのレースゲームを出展していました。


つまり、話題になっているし、他社が作っているから、うちも同じようなの作ろう。

ただそれだけのことだし、それを「アイディア」とは言いません。




別に他社の真似が悪いわけではないです。


以前も書いたけど、全く新機軸のゲーム、っていうのは、実は受け入れられない。

どこかで見た、という既視感と、それなのに新しい、という新規性の両立が大切です。


つまりは、真似をしつつ新しいものを入れるのが大切。



今探しても、その海外のゲームが見当たらないのだけど、たしか拡大縮小スプライトで作られた3Dゲームだった。

アウトランとか、パワードリフトとか、そういう感じの画面構成なのね。


時代的に「一昔前」の作りだったのだけど、水上バイクというアイディアは悪くなかった。

じゃぁ、3Dの技術で作り直したらイケるんじゃないか、ってこと。



でも、「アイディアコンテスト」として、これを評価するのは筋が悪い。

「他社にないようなアイディア」という課題だったのに、思いっきり真似です。


さらに、すでに春なのに「これから夏だし」はあり得ない。

ゲーム開発は6か月くらいかかるんです。


もう、この選定の時点で悪い予感しかしませんでした。


…はい、あたりです。


Aqua jet (1996 namco)


jet wave (1996 konami)


wave race 64 (1996 nintendo)



その年の秋は、セガの WaveRunner を含め、4種類も水上バイクのレースゲームが出たんです。

うち一つは家庭用だけど。


特徴的なのは、セガだけがヤマハのマリンジェットをゲーム化し、他の会社はカワサキのジェットスキーだという事。

先に書いたように、水上バイクブームはカワサキのジェットスキーによってもたらされたものだから、そちらにするのが当然と言えば当然。




ゲーム自体はよくできていました。

基本的には、インディ 500 のチームが引き続きレースゲームを作った、という形なのかな。


何作も作っているので、ノウハウは持っている。

ひいき目かもしれないけど、アーケード3機種の中では、WaveRunner が一番人気出たんじゃないかな。


でも、お客さんからすると「似たようなゲームがいっぱい」という状況にはなるよね。

人気が分散してしまい、大ヒットとはなりませんでした。


▲目次へ ⇒この記事のURL

同じテーマの日記(最近の一覧)

業界記

別年同日の日記

03年 libSDL

04年 アンケート

11年 おさんぽ

16年 トーマス・J・ワトソン 誕生日(1914)


名前 内容

あの頃のインターネット  2017-01-15 15:06:40  コンピュータ 業界記

▲目次へ ⇒この記事のURL

ふと気づくと、このサイト「魔法使いの森」も、いつの間にか20年を超えていた。

最初に書いた記事はファミリーBASICで、1996年の10月1日に公開していたようだ。


僕がこのサイトを作り始めたきっかけは、セガ社内での「流行」があったからだった。

なので、個人的なことなのだけど、業界記タグで書いてみよう。




以前に書いたことがあるのだけど、パソコン通信は、1991年に始めたと思う。


電話事業の民営化でパソコン通信が可能となったのが 1985年。

高校の頃読んでいた MSX マガジンでも、パソコン通信の記事とかがずいぶん出ていた。


1991年だとすでにブームもひと段落して、機材が手ごろに購入できるようになってきた。

そこで、「すっかり出遅れた」と思いながら始めたのだった。



1994年には WWW が普及し始め、「ホームページ」が続々作られ始める。

それまでは、インターネットに接続しようと思うと、大学などの研究機関同士のネットワークに参加するしかなかった。


同じ 1994 年には IIJ が接続サービスを開始。

でも、まだ非常に高くて、個人が使うようなものではなかった。



1996年頃になると、個人でも使える接続サービスが増えて、競争で値段が下がってくる。

でも、やっぱり僕はパソコン通信で十分で、インターネットには接続していなかった。




大学の卒業研究が「ハイパーテキストによる執筆環境」だったので、 WWW に興味はあった。


セガの社内は、当時まだ 10Mbps だったのだけど、Ethernet で接続されていた。

社外にも接続されていたのだけど、使用するには許可が必要だった。


でもある日、当時セガが作成していた「ホームページ」(当時は WEB サイトのことをそう呼んでいた)が、社内から見られるようになっているのを知った。

セガ公式とはいえ、情報はわずかで、ほとんどがファン同士の交流掲示板だった。


そして、社内で見られるのは深夜 0 時時点のスナップショット。

掲示板の話題は最新ではないし、こちらからは発信できない。

でも、WWW を体験してみるには十分だった。



ホームページは社内の情報部署が作っていたようなのだけど、その部署の人が「個人ホームページ」もサーバーに置いているのを知った。

こちらは非常に個人的なことしか書いてなかったし、当時の個人ホームページらしい、自分の趣味の紹介を書いてあるだけ。


ほとんど更新されなかったけど、時々見に行っていた。



そして、さらに全く違う部署の人も、「個人ホームページ」を公開していることがあると知った。

その人のマシンの IP アドレス直打ちで接続しないといけないし、案内はどこにもない。

でも、出来の良いページを作っている人の IP アドレスは口コミで広まっていた。




そんな社内で人気の WEB ページの一つが、どこかの部署のデザイナーさんが作っていたページだった。


当時の Mac … OS 8 には OS 標準で httpd 機能があって、ページを公開できたのを利用して作られていた。

個人のマシンで直接公開しているので、その人が勤務中しか見られない。


週一回更新されていて、デザイナーさんらしく「扉絵」を 3D CG で描いていた。

毎回ゲームをテーマにしたイラストで、主人公キャラが必ずミッフィーちゃんになっている。


まず、この CG の出来が良かった。

簡単なつくりだけど、ちゃんとそのゲーム「らしさ」を出していたし、主人公をミッフィーちゃんにしてもちゃんと成立するような図柄にデフォルメしてある。

それを、毎週描いているというクオリティの高さ。



もっとも、ページ内は、非常に短い4コーナーだけ。

写真主体で、ちょっと文章がついていただけじゃなかったかな。


先に書いたけど、この頃のホームページって、自分の趣味を紹介したりするのが普通。

その紹介も「プログラムと料理が趣味です」とか書いてある程度で、詳細に踏み込まない人が多かった。


それを、毎週短い記事とはいえ、趣味丸出しで情報を発信している。

これが、会ったこともない人なのに性格がわかって面白い。



僕もこういうページを作ってみたい、と思い始めた。

幸い、パソコン通信環境はある。あとはプロバイダに申し込めばインターネット接続できる。


プロバイダへの申し込みを進めると同時に、どんなページを作ろうか考え、記事を書き始めた。

やっぱりページは4コーナーで構成して、自分が趣味丸出しにできるものにしよう。


作成期間は、確か 2週間くらい。

「Old Good Computer」「社会の歯車」「男の料理(現在「簡単料理の作り方」に改題)」「森の生活」の4コーナーで構成される「魔法使いの森」はこうして公開された。


当初は真似をして毎週更新していたのだけど、だんだん記事が長くなり、書くのが辛くなって毎週更新はやめた。

(今はほぼほったらかしで、申し訳ないと思っている)




先に書いた、デザイナーさんが作っていたページに、告知が出た。


せっかく作っているのだから、インターネットで公開します。URL が添えられていた。

そして、しばらく後には、社内ページは閉鎖されて、インターネット公開のみとなった。


それまでは作者さんに連絡する手段がなかったのだけど、ネット公開になって連絡できるようになり、しばらく仲良くしていただいた。

その後、ベンチャービジネスに参加するためセガを辞める、と聞いた。


そしてさらに後、作成していたソフトが完成したと、ご自身のページで公表していたと思う。


ピンク色のクマのぬいぐるみがメールを運ぶ、不思議なメーラーソフトだった。




ポストペットの公開は1997年 1月だったそうで、20周年のお祝い記事を読んで、上記のことを思い出した。


当サイトが参考にしたページは「ナミ通」。

ポストペットのキャラクターデザイナーである、真鍋奈見江さんが作成していた。



WEB ページ作成時も参考にさせてもらったし、ポストペットの成功は「うまくやったなぁ」と、正直羨ましかった。

僕も何か自分の力でやってみたかったけど、そのために会社を辞めて独立するというのは、なかなかできるものではない。



僕も後でセガを辞めて独立したのだけど、こうした成功者に触れていたことは後押しになったように思う。


#直接的にはやはり同じ部署で独立した、同期の女性デザイナーの成功のほうが大きかったと思うのだけど。

 こちらの話はまたそのうち書きます。



まぁ、そんなわけでポストペット 20周年おめでとうございます。

今は交流はないのだけど、その当時仲良くしていただいた者として…そして、会社経営者として、20年会社を維持したことはすごいと思うのです。



▲目次へ ⇒この記事のURL

同じテーマの日記(最近の一覧)

コンピュータ

業界記

別年同日の日記

04年 ぎょうざ

10年 ポケモンスクランブル

13年 マインスイーパー

14年 zepto で clone


名前 内容

1996年のそのほかのゲーム  2017-01-20 09:52:52  業界記

▲目次へ ⇒この記事のURL

20年たったら書く、というつもりで書いているけど、そろそろ「語ることが何もない」ゲームが増えています。


新人の頃は、雑用仕事でいろんなチームに駆り出されたし、部内テストプレイ筐体で遊ぶこともありました。

しかし、この頃になると中堅社員になっていて、雑用はやらないし、忙しくて部内ロケテスト台でも遊ばないことが多いのね。


先に書いた WaveRunner も、「アイディアコンテスト」のことは覚えているのだけど、自分で遊んだ覚えがほとんどない。



▼SEGA SKI SUPER G


96年末…冬シーズンに発売されたと思います。

スキーゲームね。ストックを支えに、足を動かすことで操作します。



よく覚えていないのだけど、冬に部内の有志でスキーに行った覚えがあります。

セガは羽田が近いので、会社の仮眠室で泊まらせてもらって、翌朝羽田からの始発便で(チケットが安いので)北海道に行きました。


AM1研では、お金を積み立てての「社員旅行」もあったのだけど、このスキーはそれとは違う、有志の集まりでした。

社員旅行だと、積み立てもするけど会社から補助が出るので、それなりに豪華旅行だった。

でも、このときは有志だけの貧乏旅行(笑)


たぶんそれが 95年~96年の冬シーズンだったと思うので、その時から企画の片鱗があって、取材を兼ねていたのかもしれません。




たしか、冬発売なのでコラムス 97 と同じ頃が締め切りだったと思うんですよ。

夜、ほとんど人のいない部署内で、企画やってた人と会話していたのを覚えている。


その人、いつも夜になると「さらっとトマト」飲んでてね。当時発売されたばかりのジュースだった。

その日も飲んでたので「好きですねー」って言ったら、「だって、すごくおいしいよー」とか、そんな他愛もない会話。


だからどうしたということではなくて、その程度しか記憶に残ってないのです。



▼ダイナマイトベースボール


以前に僕も在籍した「ファイナルアーチ」という野球ゲームを作ったチームがあります。


ファイナルアーチは、決して人気が出たソフトではないのだけど、ゲームセンターにとって「必要なソフト」と考えられました。

野球ゲームって、外回りの営業サラリーマンとかにウケがいいのね。


で、ST-V ではなく Model2 で作ったのが本作。

特徴として、アナログな「バットスイッチ」というのがあります。


90度ほど回転する棒なのだけど、引っ張って離すと、バネの力で元の位置まで戻ります。

これで、野球盤のようにバットを「振る」ことができて、スイングの力も調整できます。



ファイナルアーチって、「サヨナラ打」の意味でつけられたのだけど、わかりにくかった。

和製英語だし、一部の野球ファンはそういう言い方をするけど、一般的な用語ではないのね。


「ダイナマイト」ってつけろというのは、営業側からのリクエストだったと思います。

「ダイナマイト刑事」のヒットがあったので、同じ部署が作ったゲーム、として売り込みやすいという判断。



ダイナマイトベースボール、この後シリーズ化されて毎年バージョンアップ版が発売されます。




AM1研では、基本的にゲームごとに人員が集められ、作成が終わると解散していました。

だから「チーム」って考え方はあまりないのだけど、この「チーム」は、The J League 1994、ファイナルアーチ、ダイナマイトベースボールとスポーツゲームを作り続けていました。


特にプログラマーが、かな。企画やデザインは、ゲームごとに違っていた気がします。




▲目次へ ⇒この記事のURL

同じテーマの日記(最近の一覧)

業界記

別年同日の日記

06年 ウッドデッキ完成

07年 人生初ギャグ?

13年 ピクミン

15年 高柳健次郎の誕生日(1899)

15年 SIMON は世界初のPCか?

15年 【追悼】森公一郎さん (LSI-C の作者)


名前 内容

家の10年目メンテナンス  2017-01-21 11:51:42  住まい

▲目次へ ⇒この記事のURL

現在、家の10年目メンテナンスを行っている。


家の完成は2005年なので、10年目は2年前だ。

実際、「10年目点検」は 2年前に受けている。


その点検の際に、ハウスメーカーの想定以上に屋根葺きスレート板が割れていたらしい。



いわゆる「屋根瓦」ではなく、薄い板で作られた屋根を見たことがあるだろう。

あれが「スレート」だ。本来は、頁岩のこと。バージェス頁岩で有名な、あれだ。


頁岩は薄く剥がれる。その特性を活かして薄い板を作り、屋根葺きに使うのだ。


でも、天然物は高いので、人工品のほうがよく使われる。

そして、昔は人工品を作るのに石綿を使った。製品名として「カラーベスト」というものが有名なのだが、ベストはアスベスト(石綿)の意味だ。


しかし、石綿は発がん性があるというので、今は使用禁止になっている。

ちょうど我が家を立てた10年ほど前は、スレート材に石綿が使えなくなり、各社が試行錯誤を繰り返していたころで、今から見ると品質が悪かったそうだ。


それで、あまりにも割れが多いので、メーカー保証として無料にできないか掛け合ってくれることになった。




ところが、その後音沙汰がなかった。

こちらも忘れてしまっていたのだけど、年末になってハウスメーカーの営業の人が訪れた際に思い出し、話してみた。


#購入時の営業の人は、毎年年末にカレンダーをもって訪問に来てくれて、その後家で困っていることが無いか話を聞いてくれる。

 非常にこまめな方で、このようなサポートが非常にありがたい。



それから数か月後には、再び連絡があり、メーカー保証してもらえることになったと伝えられた。

そして、それを織り込んだうえで、そのほかのメンテナンスの見積もりも行われた。


…その後、また連絡がない。

いや、途中で屋根材メーカーからサンプルが送られてきた。

これをもとに色などを決定するのだろうな、と思いつつ、サンプルが送られてきたのだからまた担当者から連絡が来るだろう…と思ったまま、長い時間が過ぎた。


また年末が来て、営業の方が来る頃になって「そういえばメンテナンスの話進んでない」と思い出す。

営業の方が来て相談して、年明けに今度は担当の方が交代して連絡があった。


あとはトントン拍子に話が進む。

年が明けてから計画を再始動したのに、すでに我が家の周囲には足場がめぐらされ、今も屋根の上から工事音が響いている。



壁の塗り替えなどもあり、外観は大きく変わるはず。

最も、色は「大まかな希望」は伝えてあるが、最終決定は実際に塗ってみて決めるそうだ。


#小さな塗装サンプルでは実際の色とイメージが違うことが多いため。

 実際に壁の一部をいくつかの色で塗ってみて、それで決めるそうだ。


工期は 1か月ほどの予定。



▲目次へ ⇒この記事のURL

同じテーマの日記(最近の一覧)

住まい

関連ページ

続・家の10年目メンテナンス【日記 17/02/20】

別年同日の日記

03年 うざいやつ

04年 レベルX

15年 RAID NAS 、QNAP T-220 購入

16年 ポール・アレン 誕生日(1953)


名前 内容

風邪ひき  2017-01-21 12:00:14  家族

▲目次へ ⇒この記事のURL

先週の週末、次女が熱を出した。


39度を越える高熱。インフルエンザを疑ったが、関節などは痛くないというし、結構元気。

そして、翌日には熱も下がってケロリとしている。


火曜日に、僕も発熱した。このときは 38度くらいまで。

翌日水曜日には 39.5度まで上がったのだけど、「次女と同じっぽいから、明日には下がるだろう」と楽観視した。


…しかし、そんなに甘くなかった。翌日木曜はずっと 38度台。さらに翌日金曜日朝、やっと下がって 37度弱。

夜には平熱に戻ったのだけど、今日土曜日もまだ体力的に回復しきれていない感じ。


この間に、長女も木曜日の朝に 38度越えの熱を出した。

でも、翌日朝には平熱に戻って元気に学校に行った。



なんだろう? 子どもなら軽く収まるのに、大人がかかると重症化するような風邪?


探してみたら、「インフルエンザC型」というのがあるそうだ。


インフルエンザではあるが、変異せず、1種類しかない。そのため、一度かかると生涯免疫を獲得する。

普通は5歳までにかかるらしく、感染してもすぐ治る。


しかし、大人になってからかかると重症化するらしい。


もしかしてこれか? …と思っていたら、妻も同じような症状が出た。

ちょっと熱が出て、すぐ治った。長女や次女と同じ反応。



大人になってからかかることは珍しい、というのに夫婦そろって大人が罹ったのだから、違うだろう。

そして、妻はすぐ治ったのだから、大人が重症化、ということでもなさそうだ。


単に僕が体力が無くて、それほど強力ではない風邪に負けたというだけの話だと思う。



▲目次へ ⇒この記事のURL

同じテーマの日記(最近の一覧)

家族

関連ページ

続・家の10年目メンテナンス【日記 17/02/20】

別年同日の日記

03年 うざいやつ

04年 レベルX

15年 RAID NAS 、QNAP T-220 購入

16年 ポール・アレン 誕生日(1953)


名前 内容

後藤英一 誕生日(1931)  2017-01-26 10:10:44  今日は何の日

▲目次へ ⇒この記事のURL

今日は後藤英一さんの誕生日(1931)


パラメトロンの発明で有名な方ですが、他にもコンピューター関連の素子を多数発明しています。



まずは、パラメトロンから説明しましょう。


その昔、コアメモリというメモリ素子がありました。

フェライトコア…鉄粉を焼き固めて作ったドーナツ型の焼き物を、電線で多数編んだだけのものです。


こんなものが、非常に優れたメモリ素子になる。

真空管は高価だし、水銀遅延線は不安定で有毒だし、ウィリアムス管は思ったより記録密度が低いし…という時代に現れ、一躍メモリの主役になりました。


パラメトロンは、このフェライトコアに電線を巻いて、二つ組み合わせ、コンデンサを付けただけの素子です。

…ちゃんと動作原理を理解していないのだけど、コイルとコンデンサなので LC回路(発信回路)が出来上がります。


2つのコイルは、半周期ずらした逆位相になるのだけど、これが「どちらの位相になっているか」を制御することで、0と1を表現できる。


この回路は非常に安定していて、弱くても位相を決めてしまえば、後は勝手に発振しながら定常状態を作り出し、しっかりした波になる。

つまり、弱い波を増幅する効果がある。


この効果を使って、複数の素子からの入力を同時に別の素子に入力すると、逆位相の波は打ち消しあい、同位相の波は強めあう。

これにより、入力された回路の「最初の状態」が決まる。最初の状態が決まれば後は勝手に増幅して状態を保持するので、多数決の論理回路になる。


これで、論理回路が完成します。論理回路があれば、後はコンピューターを組み立てられます。



後藤さんは、大学生の時にコンピューターを作ろうとし、予算が足りないためにできるだけ安く、論理回路が作れる素子としてパラメトロンを発明します。

素子を使ったコンピューターとして、最初に完成したのは電電公社・電気通信研究所の MUSASINO 1号 (1957)。


後藤さんの所属していた東大高橋研究室でも、1957年に9ビット加算器が動作することを実験で確認し、翌年には 36bit コンピューター PC-1 を完成させます。


#当時は、1byte = 6bit が普通なので、1word = 6byte のコンピューターとなる。


この方式は国内のコンピューター会社でも採用され、日立の HIPAC 103、日本電気の NEAC 1101、富士通 FACOM 212 などが作成されます。


しかし、パラメトロンは真空管や、当時新素子だったトランジスタよりずっと安く、安定性もあったものの、速度が致命的に遅いという問題がありました。

パラメトロン自体が発振回路ですから、外部から与えるクロックを上げて高速化…などは出来ないのです。


この頃最新のトランジスタコンピューターでは、動作速度 1MHz 程度。

それに対し、パラメトロンは最高でも 60KHz 程度でした。


パラメトロンコンピューターを各社が作っていた期間は 2年程度…広く見ても 5年程度で時代は終わりました。




1957年、日本人の江崎玲於奈博士が、エサキダイオードを発明しています。

量子トンネル効果を利用したダイオードで、この研究により江崎博士は 1973年のノーベル物理学賞を受賞しています。


後藤さんも、このエサキダイオードにすぐ注目し、パラメトロンコンピューターの研究を続けている最中に、並行して研究を行います。

そして、パラメトロンと同じように動作する素子を、エサキダイオードでも完成させるのです。


…またすみません。僕、回路には疎いので、説明できない。


一応、エサキダイオードを2つ直列に組み合わせることで、2安定回路というものを作れるのだそうです。

出力電圧が2つあり、高い電圧か低い電圧の、どちらかで安定するようになっている。だから2安定回路。


安定したところから多少離れた電圧を入れても、回路自体が「安定」を作り出すようになっているので、すぐに安定状態に戻ります。


2つの状態があるのですから、2進数を表現できます。

そして、これはパラメトロンと同じように、多数決回路として動作するのです。



2つのダイオードを組み合わせただけで論理素子となることから、ゴトーペアと呼ばれています。


#ダイオードなら何でもいいわけではなく、エサキダイオードのようなものでないとダメなんだそうです。




後藤さんは 1960年代前半に、ワイヤーメモリを発明しています。


コアメモリは、ワイヤーの交点にフェライトコアを配置したものでした。

これに対し、ワイヤーメモリはあらかじめ磁性体を塗布したワイヤーを編んだものです。


これもまた、資料が少なすぎて解説できない。

フェライトコアの代わりに磁性体を塗っただけで同じもの…なら話は速いのですが、どうもそうではありません。


コアメモリは、読み出し時に書き込まれていた値を「破壊」してしまいます。

そのため、読み出し直後には必ず書き込みを行う必要があり、メモリアクセス速度の低下につながります。


しかし、ワイヤーメモリは非破壊で読み出しが行えるのだそうです。


しかし、この発明もすぐに半導体メモリの時代が来てしまったために、国内で使われた程度で終わっています。




後藤さんは、単にパーツを組み合わせて何かを発明するような「発明家」ではなくて、素子の物理特性などを調べ、その性質を組み合わせることで目的にかなったものを作り出そうとする研究者です。


興味は主にコンピューター素子だったようですが、それだけではありません。



1933年のノーベル物理学賞は、ポール・ディラックが受賞しています。

彼は「ディラック方程式」として、複数の力学を1つの数式にまとめようとしました。


この数式に従うと、磁石のN極とS極は、「片方だけでも存在し得る」ことになります。

ディラック以前は、磁石の両極は不可分のものと考えられていました。


こうしたものを「単極子」、英語では「モノポール」(モノは「1つの」という意味。ポールは棒、軸、極性…両端があるものを意味する)と呼びます。


後藤さんは、モノポールの探究にも情熱を注いだらしいのです。




さて、これで後藤さんの話になるとよく出てくる言葉が説明できます。

ある時、外国人の研究者に名前を名乗るとこういわれたそうなのです。


「私はこの分野で後藤という名前の日本人を3人知っている。パラメトロンの後藤、ゴトーペアの後藤、磁気モノポールの後藤。お前はそのうちのどれか?」


パラメトロンとゴトーペアは、論理的にはある程度似ている素子です。

しかし、その物理特性などは全く違い、全く違う研究と思われていたのでしょう。


もちろん、モノポールは全く畑違いの分野です。

だから、この質問をしたくなる理由もわかります。


もちろん、後藤さんの返事は「そのすべてだ」だったそうです。





これだけ幅広い研究を行う人ですから、時には脱線…のように見える研究も行います。

彼の中ではひとつながりなのでしょうけど。



ジョセフソン素子、という論理素子があります。

超電導状態になる極低温でしか動作せず、エサキダイオードにも見られる量子トンネル効果を利用しています。


このジョセフソン素子を使い、パラメトロンの「安定性」を導入したのが、磁束量子パラメトロン素子。

パラメトロン自体が発振回路なので速度を上げられない…と先に書いていますが、発振回路はコイルの大きさなどにより発振速度が変わります。


磁束量子パラメトロンでは、通常のシリコン素子よりもスイッチングが高速で、テラヘルツ越えで安定して動作します。

元となったジョセフソン素子よりも低電力で動作するなど、優れた特性を持ちます。


この素子は 1986年にはすでに開発され、動作が確認されているのですが、なにぶん超低温でないと動かないため、実用化はされていません。



しかし、後藤さんは実用化を目指し…晩年は、液体ヘリウムによる極低温冷凍庫を安く作ることができないか、という研究に熱心だったそうです。

液体ヘリウム自体が非常に高価なものですが、普通の冷凍庫のサイズで、普通の2倍くらいの値段に収めることができれば、超電導コンピューターが実用化できる、と研究を続けていたとか。


しかし、残念ながら 2005年に亡くなられています。



▲目次へ ⇒この記事のURL

同じテーマの日記(最近の一覧)

今日は何の日

別年同日の日記

14年 iOS の position:fixed バグ回避方法


名前 内容

【雷更新世】 どうやら「棒」のpoleと「極」のpoleは別語のようです。 https://en.wiktionary.org/wiki/pole (2017-01-27 00:38:59)

ザ・ハウス・オブ・ザ・デッド  2017-01-27 08:57:55  業界記

▲目次へ ⇒この記事のURL

1997年、とされていることが多いので、僕もそのつもりでいました。

でも、どうやら 1996年中だった様子なので、慌てて文章書いています(笑)


Wikipedia の英語版だと、96年9月13日国内リリース、となっているのだけど、これは日付的に、秋のショーに展示しただけではないかな…


でも、タイトル画面には (c)1996 とあるので、年内に正式リリースまでこぎつけたのだろう。

(1997年発売になれば、1996,1997 と併記される)


で、英語版を 1997年に出して、国内より海外で人気が出たゲームなので、1997年発売とされやすい様子。




ワンサガンの際に書きましたが、1991年頃からガンシューティングゲームのブームが起き、セガでも AM2 研が「バーチャコップ」(1994)を出しています。


ポリゴンボードを使用したガンシューティングゲームとして話題にはなったのですが、この当時 MODEL2 はまだ非常に高価で、ゲームセンターが資金回収できるほどのヒットだったのかというと微妙な所。


しかし、その後 MODEL2 のコストも下がり、1996年の初旬に AM3 研が「ガンブレード N.Y.」を発売。

2研と 3研がポリゴンでガンシュー作ったのだから、1研でもなんか作りなさい、と上層部から指令が出ます。




ガンシューティングは、日本よりもアメリカで人気があります。

実際に銃が身近な国だからね。作るのであれば、アメリカでウケるものを作らないといけない。


ところが、アメリカではゲームを作る際に。日本よりも細かな「レーティング」が定められていました。

これが厳しくて、特に「銃」に関しては使わせまいとする。

銃が身近だからこそ、子供が銃をかっこいいと思うような表現はダメなのです。


このレーティングは、今でもあるのだけど、当時とは基準も違います。

というのも、何か問題があるとすぐに基準が変更されるため。


だから、まず筐体についている銃が本物っぽいのはダメ。

水色とかピンク色とか、一目でおもちゃだとわかる安っぽいつくりにする必要があります。



1992年に「モータルコンバット」という格闘ゲームがアメリカで発売され、大ヒットしました。

このゲームが、実写の取り込みで、勝つと相手の首を刎ねて血しぶきが飛んだり、心臓を抉り出して血しぶきが飛んだりする。


これが問題となり、「血の表現」はNGとなりました。



そのため、バーチャコップでも、相手は悪人…人なのに、銃で撃っても血が出ません。

血が出るのはNGだから、そういう表現を無くしたのね。


でも、そのバーチャコップが問題になります。

ポリゴンを使用した「リアルな表現」で、人に銃を向けるゲームだということ自体が問題視されたのです。

レーティングの基準が改正され、「人に銃を向ける」がNGとなりました。



ガンブレード N.Y. は、敵が「アンドロイド」となっています。

マシンガンで撃っても簡単には倒せない。撃ち続ける必要がある。もちろん血も出ない。


マシンガンで撃たれ続けていても動ける人なんていないですから、明らかに人ではない。

「人に銃を向けてはならない」という基準に対して問題はありません。


…すぐに基準が変えられ、「人型のもの」はNGになりました。



そしたら、確か海外のメーカーが、イルカを狙うシューティングゲーム出したのではなかったかな。

イルカを調教して体当たり兵器とする…という研究が過去になされたのは事実で、それをテーマとしたガンシューティングゲーム。


これが残酷だ、と問題になり、「人型のものや、生物に銃を向けてはならない」とまた基準が変わるのです。




さて、ゲームとしてみた場合、一発では敵が死なずに「何発か撃ち込まないといけない」というのは、いいルールです。


狙いを定めるうえでも、前の着弾点を見て調整できるからね。

何より、一発では倒せないというのは緊張感と、倒せたときの安堵感を生みます。

ガンブレード N.Y. では、そういう部分を中心にゲームを組み立てています。



バーチャコップでは、警察対悪人、という設定での「銃撃戦」を描いています。

ここで問題となるのが、相手が銃を撃ったとしたら、こちらは「避ける」なんてできない、ということ。


そこで、相手がゆっくり動き、動きが完成すると撃ってくる、という形で「時間制限」を意識させています。

ゲームとしては良いのだけど、ちょっと違和感のある部分でもあります。



さて、新しいゲームを作るとしたら、どうすればよいか?


生物ではなく、人型ともいえず、一発では倒せないようなイメージのあるもので、銃で撃つ敵としてふさわしいもの…

相手は銃などを持たず、動きがある程度ゆっくりであるのが自然なものが良いです。


ここで「ゾンビ」という案が浮上してきました。

いろんな条件を満たしていますし、何よりもアメリカ人はゾンビ大好きですから。


#当初は「幽霊」を考えていたそうなのですが、幽霊に銃でダメージ与えるというのも変ですから…



ただ、ゾンビも「人型」だということを懸念する人もいました。


銃による殺人が度々問題になるアメリカで、子供が遊ぶゲームだからこそ、節度を持った使い方がなされないといけない。

レーティングの規制は、そうした背景で作られたものです。


ここでまた、「ゾンビは死んでいるから生物じゃない」とか言い出すのは、趣旨を理解していないのではないか?



しかし、ゲームはゾンビを敵として作ることになりました。この頃の通称は「ゾンビガン」じゃなかったかな。

レーティングにかかるかどうかはわかりませんが、できるだけ人と違う異形のものとして描くしかないでしょう。


#アメリカのゲームのレーティングは、仮に引っかかってもゲームセンターに置けないわけではない。

 ただ、第三者の審査でレーティングが定められ、内容によってはアドバタイズ画面で警告を出さなくてはならない。



ゾンビが出てくる時点で「ホラー」なので、恐怖心を煽るための血の表現なども必須。

しかし、ここは先に書いたように「血はNG」でもあるので、色を変えられるようになっています。


緑色なら血ではない、という、これも逃げ口上ですな。


#国内では特に規制がなかったので「赤」で発売されましたが、これには怖すぎるという苦情もあったようです。

 設定で色が変えられるようになっていたため、後期の出荷分は工場で緑色に設定されたようです。




全体的なイメージは、サイコスリラー映画の「セブン」の影響を受けてます。

企画者が「このイメージで」と、ビデオを借りてきてみんなで鑑賞会をやったらしい。


チーム全員でイメージを共有してから作成に入ったため、ゲームの印象をまとめ上げるのに成功してます。


#イメージを伝えるためにビデオを見せる…ということ自体は良く行われます。

 でも、一シーンを参考にする程度で、「雰囲気を出すために」と、映画丸ごと一本をみんなで見る、というのは珍しかった。




そういえば、謎の事故や病気が相次いだのもこの作品だった気が…


いや、偶然レベルなのだけど、スタッフの車がもらい事故したり、急病で入院してしまったり。


ゾンビのゲームなんか作ってるから祟りじゃないか、って誰かが言い出して、いや、ゾンビは霊と違って祟らんだろうとか言いながら、チーム全員で神社に行ってお祓いしてもらったはず。


そういうのを信じているかどうかじゃなくて、誰かが気にし始めるとチームの士気にかかわるので、念のためやっておくか、というような意味合い。




…と、知っているのはこの程度。

プロジェクト始まってすぐの頃のこういう話は聞いていたのだけど、後は気が付いたら「完成間近」だった。

僕の方もコラムスで忙しかったのかな?



完成何度かテストプレイをやった記憶はあるな。

結構難しいゲームなのだけど、繰り返し遊んでいたのでそれなりに上手になっていた。


そういえば、発売後に部署の先輩が「横浜のゲーセンでクリアしたら、見てた女の子に大うけで仲良くなれた」って喜んでたっけ。

このゲームはヒットして注目度が高かったし、その先輩もテストプレイ繰り返していたからすっかり上手になっていたのね。役得。




当初の狙い通り、日本もさることながら、アメリカやイギリスで大ヒットになりました。

その後、確かイギリスのゲーム雑誌がチームに取材して、雑誌が送られてきたのね。


その雑誌では、タイトルが長すぎるので、独自の略称をつけていました。


本来のタイトルは The House of The Dead 。部署内では「デッド」(語尾上げ)って呼んでました。

海外での一般的な呼称は HOD 。長いから The は省略した上で、頭文字を取っているのですね。


でも、その雑誌は The HOT-D という略称にしていました。

この略称かっこいいな、って企画の人が喜んでました。



その後シリーズ展開するにつれ、半ば公式に HOD が使われるようになったので、The HOT-D って呼んでた人はいないんじゃないかな。



▲目次へ ⇒この記事のURL

同じテーマの日記(最近の一覧)

業界記

別年同日の日記

03年 おでん


名前 内容

【追悼】中村雅哉さん  2017-01-31 11:20:49  今日は何の日

▲目次へ ⇒この記事のURL

昨夜、ナムコ創業者の中村雅哉さんが 22日に亡くなられていたというニュースが入ってきました。


ナムコには思い入れがあるので何か書きたい、という気持ちのある反面、僕は中村さんの人柄についてほとんど知りません。

ちょっと検索して書けるような薄っぺらいお悔やみを書くよりも、自分のナムコに対する思いを書こうかと思います。




インベーダーゲームのブームは僕が幼稚園年長の時。


まだ当時はテレビゲームは「大人の遊び」でしたから、幼稚園児がテレビゲームなんてやるわけがない。

(もっとも、うちには「TV FUN 701」があったので、テレビゲームという遊びがあることは知っていた)


そのまま、「インベーダーゲーム、というものがある」という程度の知識しかないまま育ちます。


以前も書いたのですが、小学校2年の時、年が離れた兄(当時高校生だと思う)に、ゲームセンターに連れて行ってもらいました。

親が出かけるので兄は僕の「お守り」を頼まれていて、家にいてもつまらないからゲームセンターに連れて行った、というだけだと思いますが。


兄は、自分の小遣いでどれかゲームを遊ばせてくれる、と言いました。

インベーダーゲームの知識しかなかったので「インベーダーやりたい」と言ったのですが、当時のゲームセンターにはすでにインベーダーはない。


最新のゲームはドンキーコングで、兄は上手に…簡単そうにプレイしていました。

僕にもやらせてくれたのですが、難しい。すぐ終わったと思います。


そして、やっぱりインベーダーを遊びたいと言っている僕に、兄が似たゲームを遊ばせてくれます。



これも難しくてすぐ終わったのだけど、インベーダーに似たゲームを遊んだ、ということで満足。

この、僕を始めて満足させてくれたゲームが、ナムコの「ギャラクシアン」でした。




もっとゲームを見てみたい、と思うのですが、小学校の規則でゲームセンターに行くのは禁止でした。

そのうち、友達から「あそこの駄菓子屋にゲームが置いてある」なんて情報をもらって、入り浸るようになります。


ネオジオの頃の、駄菓子屋の店頭にゲーム機が1台置いてあるような「駄菓子屋ロケーション」ではなく、小さなゲーセンみたいな駄菓子屋があったのです。

当初は3台くらい。人気があるので店舗拡張して、後には8台くらい置いてあったかな。


他にも似たような店が3件ほどありました。



小学生であまりお小遣い持ってないから、人のプレイを見てばかり。

それでもゲームは面白かった。


遊んでいるのは主に中高生で、おそらくは不良が多かったのでしょう。

人のプレイを食い入るように見ている変な小学生は、適当にからかわれました。


でも、からかいながらもその人たちは優しかった。

ゲームで手が離せないので「ちょっとそこのお菓子食べたいから、おばちゃんにお金払ってきてよ」とか使いッパシリにされて、その駄賃として「最後の一機」を遊ばせてくれたりするのです。


#ハイスコアを目指すプレイをしている人は、これはどうもダメだ、と見たところで、残機がいてもゲーム放棄することがあった。



このときのゲームは、主にパックマン。

馴染みのグループの人が上手で、パターンを組んで延々と遊んでいました。


自分ではとても覚えられませんでしたが、パターンを試行錯誤しながら組み上げた「攻略ノート」を見せてもらったりしました。

今思うと、「ゲームは攻略するものだ」とこのときに知ったのかもしれません。


この頃、友達の家にローリングクラッシュが置いてありました。

(その友達の親戚が喫茶店をやっていて、店に置けない筐体を預かっていた)


何度でも遊べるので、このゲームは攻略しました。

そして、やはりノートに攻略パターンを記録していました。




だらだら書いても仕方ないので、この先は少し飛ばしましょう。


この頃ゲームに魅せられていた人なら、誰しもナムコを特別に思っていたはずです。

ヒットしたからと言って似たようなゲームを作らない。どのゲームも常に「新しい体験」でした。



僕もナムコのゲームは大好きでした。


以前も書きましたが、スーパーマリオはパックランドの真似だ、と思っていた。

ナムコが好きだったからこれが許せなくて、スーパーマリオを遊んだのは、大ヒットからしばらくたった後です。


#今となってはこれは誤解だったと知っていますし、今ではスーパーマリオは大好きなゲームの一つですが、これはナムコの話としては余談。



高校の頃には、将来はゲーム会社で働きたいと思っていました。

大学になると具体的に考え始めます。


そして、出した結論は、「ナムコ以外のゲーム会社に行こう」でした。


いつか独立したい、という夢もありました。

(これも、ナムコから独立したゲームスタジオの影響があります)


その時に、ナムコだったら大好きすぎて、とても出て行こうとは思えないだろう、という気がしたのですね。

それくらいナムコが好きだった。




最も、1980年代中期~後期のナムコのゲームが好きだった、という程度で、それほど詳しいわけでもありません。


ゲームセンターにあまり行かなかった時期もあって、フォゾンとか見てもいないし。

NG も飛び飛びに読んでいたけど、全号集めようとするほどのものではない。未来忍者の映画だって見ていない。


まぁ、好きだと言っても所詮はぬるいファンに過ぎないです。マニアと自称できるほどでもない。




中村雅哉氏の話が全然ないので、最後に少しだけ。


僕の大学時代の知人が、ナムコに入社しています。

だから、直接は知らないけど雰囲気的なものを聞いたことはある。



基本的に、ゲーム開発には口を出さないけど、面白いかどうかはきっちり確認する人だった、と聞いたことがあります。

スケジュールも特に定めない。会社なんだから商売っ気が必要なはずなのに、そんなことよりも面白いものを作ることが優先だという。


そういう雰囲気だから、ナムコが常に新しいゲームを作り続けられたのだと思います。

そして、そのナムコに牽引されてゲーム業界は大きくなりました。



ゲーム業界の末席にいたものとして、中村氏に感謝しております。



▲目次へ ⇒この記事のURL

同じテーマの日記(最近の一覧)

今日は何の日

別年同日の日記

03年 映画鑑賞

03年 アンティキュティラ

05年 ねずみの手も借りたい

10年 PS3

11年 見上げてごらん、夜の星を

13年 いろいろ書きたいなぁ

15年 Landiskと格闘中

15年 Landisk のデータ復旧


名前 内容


戻る
トップページへ

-- share --

0000

-- follow --




- Reverse Link -