2018年 6月 の投稿一覧

Python関連の本

Python入門書は昨年あたりから急激に増えてきたようですね。ネットの記事では入門書22冊読み比べというのもあるようです。私が前回紹介した本が今のところ最新で、図を用いて詳しく丁寧に説明しているので分かり易いと思います。

3ステップでしっかり学ぶ Python入門

プログラム言語そのもののお勉強は基本のキのところですから非常に重要なのですが一通りコードを叩くと飽きてしまうので最近はゲーム関連の本を読み始めています。

JavaScript と同時進行でお勉強して、両者の相違点を意識していけば更に理解が深まるのではないでしょうか。それからゲームのプログラミングをしているとキャラクターや背景画面の表示、それらの画像の動かし方、条件判定、スコア表示等々でプログラムの挙動がよくわかるので効率的にかつ飽きずにお勉強できますよね。

単純作業を効率化するプログラムとしてはPython はうってつけだと思いますから次に購入したい本はこれだなぁ。

退屈なことはPythonにやらせよう

それからゲームと並行してWEBアプリケーションのフレームワークも Ruby ⇒ Ruby on Rails のように押さえておきたいのでDjango関連の本が出たら購入して是非とも読みたいと思っています。

この手の本は価格もそれなりに高価なものですから、私のように道楽でやってるとお小遣いのやり繰りもなかなか大変なのです。(どなたか献本してくださるといいのですがねぇ、、)


Cocos2d-x JS版(改その1)

プログラム言語そのもののお勉強から最近やっと Ruby のRuby on Rails やPython のDjango のようなWEBアプリケーションのフレームワークの門を叩きました。Python の方がもう少し煮詰まったらDjango はやることにして(植木等さんのそのうち何とかなるだろうのノリ、、)今回はゲームなのです。

Cocos2d-x はゲームエンジンとしてunity と並んで有名なモノなのですが、オープンソースで手が付けやすいし、たまたま書籍を購入していたのでまたまた毛色の変わったボールをもち(テキトーだしすぐに飽きる)突っ込みだした次第なのです。

この Go!Go!gengen33!!は下記の記事を参考にしましたがこの方のブログではUnity と Cocos2d-x のメリットやデメリットも大変詳しく解説してありましてとても参考になりました。

【ゲーム作成】cocos2d-jsで初心者でもできるカンタンゲームを作ってみよう!

前回ざっくりとメインキャラクターだけラグビーボールを追いかけているおじんラガーのアイコンにしたのですが、main.js のところを編集していくとスマホで遊べるゲームがサクッと出来たので感動しました。画像の表示や画像の移動、衝突判定、スコアの表示、敵やアイテムの出現等々が順を追って解説されているのでモノ凄く JavaScript やCocos2d-x JS版のお勉強になりました。

せっかくだからもうひと踏ん張りして、暇なときにスマホで手軽に遊べるように改造計画(改その1)発動なのです。

先ずはラガーアイコンをもう少し小さくして敵との衝突のリスクを減らしました。次に敵の画像をまっくろくろすけをイメージして前回のPart3で使ったBANG画像にしました。ポイントになるコインの画像はPart2のヤカンの画像にしました。

それから敵がバンバン出てきてポイントが稼げないので敵とコインの出現率が1対1.5だったのを両方とも1.5にしました。

これで前回は敵の動きが速すぎて全く得点出来なかったところが改善されました。また改善点が見えてきたら改造計画を発動しますが、少しはこちらも使えるようになったので Part3 は Python版とCocos2d-x JS版の同時進行にしますわ。

◎参考書籍
Cocos2d-x かんたんゲーム開発

ラグビーボールを追いかけて(Cocos2d-x JS版)

Part3(JavaScript版)のPython版への移植はPythonをお勉強中ですから保留状態なのです。まあPythonのほうはコツコツと気長にお勉強を続けて行くとして数年前に購入して放置してあったこちらの本もそろそろ出番が来たようです。

最初にこの本を読んだ時には全くチンプンカンプンで直ぐにコケたんですが、JavaScriptも中級者のところまで来た感がありますし、今回のCocos2dのJavaScript版もサクッと動かせそうなので早速オープンソースのコードをネット上から引っ張ってきて自分流にコードを叩いてみました。main.jsだけいじればスマホでもきっちりと動くのでこれは面白そうです。


Go!Go!gengen33!!

実際にアクセスしてもらうとわかると思いますが、今までのPart2 とpart3 はパソコンだとなんとか操作できたのですがスマホやタブレットでは全く動かすことができませんでしたが、これだとスマホをタップするだけで手軽に遊ぶことができますよね。

part3の現在進行中の横スクロールアクションのいわゆる “エンドレスランナー” はスマホで手軽に遊べそうですから、Part3はCocos2d版も作ってみようと思います。

◎参考書籍
Cocos2d-x かんたんゲーム開発


ラグビーボールを追いかけてPART3(JavaScript版)

今回のPrat3はキャラクターをUPキーでコントロールして、進む洞窟は短冊のような矩形を右側に付け足していくシンプルなものです。キャラクターはラガーアイコンとボールを合体させたものにしました。

 

今回使うキャラクターのアイコンを透過して、オリジナルの洞窟と背景を入れ替えると芝生の上を走ってるイメージになりジャストフィットしますよね。

今回もまたタイプミスが非常に多くて芝生がなかなか育ちません。子要素の芝生(オリジナルでは洞窟)となる80個のdiv が次々と生成されていくはずなんですが、、、

そして何度もソースコードを見直して出来たのがこちらです。↓↓

ラグビーボールを追いかけてPART3(JavaScript版)

芝生の上端か下端にラガーアイコンの上端か下端が達すると衝突と判断されてbang アイコンが出てゲームオーバーになります。

前回のPart2同様にスマホやタブレットでは操作が難しく、なお且つ今回はパソコンで操作してもキャラクターのラガーアイコンが私の人生同様にすぐに降下しちゃいます。(それに加えて私はすぐにスベるタイプです、、)ゲームとして楽しむには障害物を途中に入れたり芝生(洞窟)のカーブを三角関数を使って滑らかにしたりかなり手を入れなければなりませんよね。

今回は主目的がPython の方にあるのでPart2も含めて改良版はもう少し私のプログラミング力が向上してからにしましょうか。(JavaScriptもやっと初心者から中級者になったくらいでまだまだお勉強しなきゃ、、)

 

◎参考書籍
ゲームを作りながら楽しく学べるHTML5+CSS+JavaScriptプログラミング


ラグビーボールを追いかけてPART3(序)

Python の入門書を読んでコードを叩いております。そろそろ飽きてきたので、Ruby → Ruby on Rails のように Django をやろうと思っていましたが、ふと、横スクロールアクションで “ラグビーボールを追いかけてPART3” を作ることを思いつきました。


Pythonプログラミングより)

手持ちのJavaScript を使ったゲームを紹介しているプログラム入門書に横スクロールアクションのゲームのサンプルがあるので、ラガーとボールを一体化したアイコンを動かすものにします。うまい具合にこの本の続編に同じゲームをPython に移植しているものがあり、すでにこの本も購入済みですので、javaScript とPython で動かしてみてその相違点を抑えることもできそうです。

最初に pygame という Python のゲーム用のライブラリを自分のWINマシンでイぢってみました。まずはウインドウの表示です。

pygame は JavaScript のCanvas とAnimation といったところですよね。引き続きPython のサンプルコードを叩きながら、先ずはJavaScript の方の横スクロールアクションのゲームをサンプルを動かしてみて画像をラグビーモードに置き換えたJavaScript 版を作ります。

(JavaScript編に続く、、)

◎参考書籍
ゲームを作りながら楽しく学べるHTML5+CSS+JavaScriptプログラミング

ゲームを作りながら楽しく学べるPythonプログラミング