読者です 読者をやめる 読者になる 読者になる

ChikenHeart

自分自身の備忘録と活動日誌

近況:興味の移り変わりが激しい

近況 プログラミング 読書

 前回の投稿から1か月ぐらい立とうとしている

やっぱりかなり三日坊主間があるな自分。

今回の投稿は今の興味と作りたいものをつらつらと書く。長いよ

 

 最近の興味はプログラミング全般かな。

結局自分が何をしたいかっていうと、個としての力をつけたいんだと思う。

今は会社員として組織の中で働いているけど、「これって誰でもできるやん?」と思っている。

だから、自分にしかできないことっていうのを求めてプログラミングしたいと考えているんだと思う。

そういうわけで、ゲームに限らずWeb系だったりサーバー系だったりのプログラムは学ぼうかなと。

 

 そこで Progateっていう学習サービスを見つけた。

prog-8.com

ブラウザ上で各種言語が学べる。基本講座は無料、中級以降は月額980円。

学べるのはHTML/CSS/Java/JavaScript/Ruby/Phython etc...

いいところは、環境を準備しなくてもすぐにコード書くことに移れるところ。

必要があれば自分のPCに環境構築すればいい。

ここで、いろんなものを軽ーく学んでいこうとおもう。

ゲームとWebを考えると、Co-opマッチングサービスが作れたらいいかなあと考えてる。

 

 ゲーム作成はUnity の C#、GameMaker で学んできた。

何か作れたわけじゃないけど。ゲームっぽいものは作れた。

結局今は自分が何を作りたいかわからなくて、もやもやしてる。

もやもやしたまま固執しても、時間の無駄だから別のことやろうと思って上に書いたようなことになった。

また、こんなゲームが作りたい!っていうのが出てきたら、その時作り始めればいいしな。

一度学んだことは、完全には消えない。やればまたなんとなく思い出すもんだし。

 

 もう一つ、人工知能に興味をもってる。

去年、松尾豊先生の「人工知能は人間を超えるか?」っていう本が出てブームみたいになってたらしいが、自分は多分別のこと考えてたね。

www.amazon.co.jp

その本を今年手に取ってみて、ほえーとおもった。

機械学習が、いろんなWebサービスに適応されてるんだなあと感じた。

ただ、このまま進めばSF映画ちっくなこともそのうち実現されるんじゃないとも感じた。

まだまだ発展途上の段階で、応用アプリケーションの類はこれから。

難しいんだとうけど、あんまりやってる人がいなさそうだからやっていこう。

通常のネットコンテナンツはGoogleとかFacebookとまMicrosoftがやるだろう。

松尾先生が書いてたようにロボット系で、やれば突出できるんじゃないかなとか。

Phython + arduino人工知能を搭載したデバイが作れそうだなとは思ってる。

 

 そしてつらつら考えてたら、Webアプリケーションと人工知能の組み合わせで何かサービスを作りたい。

個人的には、今人工知能を感じようと思っても何ができるかよーわからん。

これは大半の人がそう思ってることだと思う。

だから、今はこんなのができるんだよーってのをブラウザ上で感じれたらいいんじゃないか?

 

 何か形にしたいが、形にする前にあきらめてる気がする。

これ、やめたいなあ。。。

 

「無料ではじめる2Dゲーム開発 GameMaker:Studio入門」をやってる

ゲーム開発 プログラミング

少し間が空いてしまっていて、Game a week も思うように進んでいない。

コマンド式のRPGの実装が、うまくいかなくてむしゃくしゃしてしまっていた。

とりあえず、基礎からやりなおそうということでこの本を読んでいる。

 

無料ではじめる2Dゲーム開発 GameMaker:Studio入門 スマートフォンへの出力対応!

無料ではじめる2Dゲーム開発 GameMaker:Studio入門 スマートフォンへの出力対応!

 

 シューティングゲームを作るところまでやったが、一切GML(Game Maker Language)を使わずに作成している。

GameMakerはこんなにいろいろできるものが、GUIとして実装されているのかと驚いた。ただ作っている感じがするのは、やはりGMLだと思う。コーディングってのはなんか楽しいよね。

 自分としてはGUIだけでここまでできるんだから、せめてGMLでこれらの機能を実装できるようにならなければGameMakerを使えているとは言えないな・・・

 この本では、後半部分はGMLを使用してゲーム作成をするので、ここでGUIとの対応を考えながら学んでいければと思う。

 

 

 あと言い訳んなっちゃうけど、1週間で1個はキツイなあ。

自分の力量が図れてないからだと思うんだけども、思い描いている完成品に1週間では遠く及ばない。

完成できないからやる気も落ちるっていう悪循環。

 

 この本を読んで、基礎を固めたい。

そして終わらせたら、もう一つのタワーディフェンスの本も買ってやろうとおもっている。

これらを終わらせた段階か途中でGame a weekまたやるとおもいます。

 

Game A Week 2週目、RPG tutorialやってたら終わった。。。

プログラミング ゲーム開発

2位回目は、コマンド式簡単なRPGを作成しようと考えた。

しかし、けどコマンドとかの入力わからんなということでHeartBeastさんの「Make an RPG 」をやり始めた。

[Beginner] Make an RPG - YouTube

 ただ始めると思ったより長く、先週はこれやってたら終わった・・・

多くのことを学ぶことができたので、今週はやろうと思っていたコマンドRPGをやろうかと思う。

 

成果物:https://1drv.ms/u/s!AmShjq5Cn7qt_UwSIO_dIRgZ1AV9

動画:

 

 

 結構難しくて、中身理解できてない部分もあると思う。

基本の移動方法は、物理計算して力を加えた分だけ動かす方式っぽい。

 

得れたもの

・ダッシュでのエフェクト

・ダイアログの表示

・ポーズメニューでの操作

・ファイル操作によるセーブ&ロード

・Room切り替え時の変数保存

・Macroの使用 (Global変数として、数値と文字列を対応させる?)

⇒マクロの記事 : http://emilycharlotte.jp/2015/02/19/249

・Scriptでの関数管理

などなど、役立つ部分が多かった。プレイヤーの動きとか敵の動きはある程度把握していたので、特にUI部分(っていっていいのか?)が参考になった。

 一度スタート/セーブ/ロード/ポーズ画面のテンプレートを作っておきたい。

 

 たぶん今後も使っていくであろうポーズメニューの管理オブジェクトのStep内はこんな感じ。

  1. /// Control the menu
  2. if(alarm[0] <= 0)
  3. {
  4. if(obj_input.key_down || obj_input.yaxis > 0.5)
  5. {
  6. if(menu_index < array_length_1d(option)-1 ) menu_index++;
  7. else menu_index = 0;
  8. alarm[0] = room_speed/6;
  9. }
  10. if(obj_input.key_up || obj_input.yaxis < -0.5)
  11. {
  12. if(menu_index > 0) menu_index--;
  13. else menu_index = array_length_1d(option) -1;
  14. alarm[0] = room_speed/6;
  15. }
  16. if(obj_input.key_attack)
  17. {
  18. switch(menu_index)
  19. {
  20. case 0:
  21. obj_player_stats.room_start_action = RETURN;
  22. room_goto(obj_player_stats.previous_room);
  23. break;
  24. case 1:
  25. scr_save_game();
  26. break;
  27. case 2:
  28. obj_player_stats.room_start_action = LOAD;
  29. room_goto(obj_player_stats.previous_room);
  30. break;
  31. case 3:
  32. game_end();
  33. break;
  34. default:
  35. break;
  36. }
  37. obj_input.key_attack = false;
  38. }
  39. }

上部のKey_downの入力有無で、ポーズメニュー内の選択位置を変更。

今回のゲームは、文字がハイライトされる。

下のSwitch文の分岐で、選択中のメニュー内容の実行。

 

 アクション用RoomとポーズメニューRoomを使って管理しているんだけども、メニューの表示をGUIで管理する。そして、アクションは選択で実行にすればコマンドRPG作れるだろう。今週こそ、思い描いたコマンドRPGを作るぞ!

 

雑記:普段のお仕事がゲームとか、ましてやプログラムとも全く関係なくてやきもき。

家での作業が楽しいのは趣味だからなのか、仕事であっても楽しいのか。

安易に転職したいとか言いたくないが、ゲーム業界で働きたいと思ってしまうなあ。

なんにしても、PRのためには自分でゲームを1つ作らないとなとは思う。

そんなこんなで、Game a Week は続けていきます。