2015年12月30日水曜日
宇宙から飛んでくる四角をやっつけろ
昔読んだパソコン雑誌(Oh!Xだったかな?)で、「初期のゲームには、『宇宙から飛んでくる四角をやっつけろ』みたいなのが多かった」といった記事がありまして、すごく印象に残っています(その割には、なんの雑誌のどういうコーナーか全くおぼえていませんが)。
黒い画面を宇宙、きれいなドット絵が出せない(パソコンの能力か作者の限界かは知らんが)ので、とりあえず、■で表現、みたいなのが目に浮かびます。
自分で作るゲームにも、思わずツッコミを入れたくなるような不条理さをもっと入れんとあかんな、と思いまして、次の次の次の次のゲーム(つまり第六弾)は、タイトルが先で、『大宇宙お手玉』とすることにしました。
ゲームの内容は、これからボチボチ考えていきます。
2015年12月27日日曜日
C++ 再学習(2)
「C++のエッセンス」という本で、C++を学習しなおしています。
「第2章ユーザ定義型」「第3章モジュール性」「第4章クラス」「第14章歴史と互換性」を読みました。
自分がC++を使う場面というのは、仕事で、メモリ制約の多い組込み機器のソフトウェア開発を行うときです。
そこでは、「better C」的に使っているだけで、ちょっと「開発言語はC++です」というのはおこがましいような使い方をしています。
ということで、興味があるのは14章のC言語との関係でしたが、やはり「C++を、いくつかの機能が追加されたC言語と考えないように。」と釘を刺されていました。
「配列ではなくコンテナを」という点も、ヒープを使うのに抵抗を感じるような環境では、なかなか難しいと感じるあたり、組込みソフトウェアの特殊性というのを再認識しました。
また、コピーコンストラクタやオブジェクトの代入は危険で避けていたのですが、プログラマが気をつけるだけでなく、コンパイラに検出してもらう方法が参考になりました(deleteをはじめ、default、override、explicitなど、今まで使っていませんでした)。
「C++プログラマが何年間も見落とすことが多いのは、新機能ではなく、むしろ、機能間の関係の強化、基礎的な新しいプログラミングテクニックを実現可能にするための機能間の関係である。換言すると、初めてC++を学習した際に思いもよらなかったことや、当時は実現不可能と考えたことが、現在は優れた方式となっている可能性があるのだ。それを見つけるには、基本をもう一度吟味するしかない。」
↑ははー、そのとおりでございます。
2015年12月26日土曜日
ジュノファーストに驚いた
JUNO FIRST、MSX版しか知らず、あまり興味がなかったが、
改めてアーケード版を見て「あ、こういう表現があるんだ」と気づかされた。
ドットの動きとか、画面の奥行きのあらわしかたとかがおもしろい。
2015年12月20日日曜日
ゲーム第三弾、第四弾、第五弾構想中
ゲーム第三弾、第四弾、第五弾構想中です。
- 第三弾「(仮称)スクラッ字」
- 第四弾「(名称未定)錯視ゲーム」
- 第五弾「平安京マンホール」
スクラッチで隠された図形を当てる、というありがちなゲームですが、自分なりの切り口で、ちょっと違うものにしたいです。
先日、静岡科学館る・く・るに行ってみたら、随所で「錯視」を体験できました。それで、アカデミックではなく、おバカな感じで錯視を体験できるゲームを作ってみようかなと。
やっぱりこれからのアプリは「体験」ですよね。
私のMy first LSIゲームであるマンホールを現代風にアレンジ。
現代風はウソ。
平安京エイリアンのように碁盤の目に、あの「マンホール」をのっけてみようというもの。
ゲーム&ウオッチの「マンホール」はすでにGoogle Playに存在しているので、またまた自分なりの切り口で、ちょっと違うものにしたいです。
あまり関係ないですが、私、京都市上京区の生まれです。
2015年12月17日木曜日
TO MORSE(ツモルス) 1.1を公開しました
TO MORSEの改良作業が終了、アプリを更新しました。
パズルの問題作成処理を改良したことにより、ROUNDが進んでいったときに中途半端に展開されて簡単になってしまう、といったことが発生しにくくなりました。
今回は国外にも配布してみようと、英語の解説文も用意してみましたが、通じるのだろうか...
2015年12月16日水曜日
C++ 再学習(1)
「C++のエッセンス」という本で、C++を学習しなおしています。
なぜ今ごろC++の新刊が出るのかと思っていたら、「C++11」というのが策定されたからのようです。
まだ、「第1章 基本」を読んだだけですが、知らなかったことや、知っていても内容が古かったことや、かんちがいをしていたことがいくつかありました。
知らなかったこと
- 波括弧で囲む初期化 double d2 {2.3};
- constexprによるコンパイル時評価
- autoで宣言
知っていることが古かったこと
- 空ポインタを表すnullptr ← NULLではなく0を使うべしと思っていたが、それは「古い時代のコード」
かんちがい
- 関数の引数に使う参照 ← constでない参照は使うべきではないと思っていた
など。
プログラミング言語についての知識はアップデートしないと、どんどん古くなっていくんだなと実感させられました。
2015年12月5日土曜日
ゲームアプリ第一弾「ToMorse」改良に着手
ゲームアプリ第三弾ネタは温め中ですが、先に第一弾のToMorseの改良をすることにしました。
ゲームそのものにかかわるところとしては、パズル問題作成部分の改良です。
例えば、「Z」は「--・・」なので、画面上は「TTEE」に展開されるのですが、展開先にすでにパネルが存在すると、展開されきらずに「MEE」とか「GE」といった中途半端な形になることがありました。
これをなるべく解消しようというのが一点め。
あと、自分のAndroid端末は内蔵ストレージが小さめなので、アプリをSDカードに移すようにしているのですが、自分のアプリでそれができなかった!
ゲームアプリ第二弾のときに、その方法を知ったので、第一弾にも反映しようというのが二点め。
あとは、外からは見えない部分ですが、第二弾開発で得たことをいくつか反映させようと思っています。
タイムアタックとか、スコアとか、元々なかった要素は入れないことにします。別なゲームになってしまいそうなので。そういう点では、第二弾より地味なままです。
ゲームアプリ第一弾ToMorse、初ダウンロード!
ゲームアプリ第一弾「ToMorse(ツモルス)」が公開から二ヵ月以上経過して、初めてダウンロードしていただけました!!
このアプリを公開することで、いろいろと思い知ったというか、学習しました(←まだ過去形ではなく、「学習中です」が正しい)。
何を思い知ったかというと、公開するのはカンタンだが、人に知ってもらうのはタイヘンだということです。
これは、あちこちで書かれていることでしたが、もう少し甘く見ていました。
Google Playでこのアプリを見つけること自体が難しいですから、誰も知らなくて当然です。
見つけるのが難しいのは、今も変わっていない(というか、公開から時間が経つとさらに不利か)ですが、見つけてダウンロードしてくださったかた、どうもありがとうございました。
登録:
投稿 (Atom)