マガジンのカバー画像

Pyxel記事まとめ

13
Pyxelに関する記事をまとめたものです
運営しているクリエイター

記事一覧

【Pyxel】倉庫番の作り方

今回は倉庫番の作り方を紹介します。倉庫番とは、荷物を指定の位置まで移動させるとゲームクリアとなるゲームです。 倉庫番はゲームプログラムを理解するための重要なエッセンスが詰まったゲームで、「ゲームプログラマになる前に覚えておきたい技術」でも最初の題材として取り上げられています。 なお、今回の内容は【Pyxel】一筆書きゲームの作り方や【Pyxel】Pyxelで学ぶゲームプログラム 〜マップデータの読み込みで学んだ知識を前提としていますので、プログラムに自信がなければ、一度こ

PythonでTiledマップエディタのデータを読み込む

今回は、汎用の2Dマップエディタ「Tiledマップエディタ」をPythonで読み込む方法を紹介します。 例えばこのように Tiled に配置されたデータを読み込みます。 ■まずは日本語化Tiled を日本語化していない場合は、以下の手順で日本語化します。 メニューから「Preference...」を選んで設定画面を開きます。 「Interface」>「Language」>「Japanese」を選びます。 すると表示設定が「日本語」になります。 ■マップデータの新規

【Pyxel】Pyxelで学ぶゲームプログラム 〜マップデータの読み込み2

前回に引き続いて、読み込んだマップデータを元に、プレイヤーの移動処理とゲームクリアの判定を実装します。 なお、前回使用したデータは、以下からダウンロード可能です。 http://syun777.sakura.ne.jp/tmp/pyxel/tilemap.zip ■プレイヤーの移動一筆書きでは、マスをワープして移動していましたが、今回は滑らかにマス目を移動できるようにします。 まずは状態管理用に、Stateの定数を作成します。 import pyxelimport m

【Pyxel】Pyxelで学ぶゲームプログラム 〜マップデータの読み込み

今回は、レトロゲームエンジン「Pyxel」を使って、マップデータを読み込む方法について紹介します。 ■最小限のコードまずはPyxelで動作させるための最小限のコードを書きます。 import pyxelclass App: def __init__(self): pyxel.init(160, 120, fps=60) pyxel.run(self.update, self.draw) def update(self):

【Pyxel】Pyxelで学ぶゲームプログラム 〜フラグと状態遷移

今回はレトロゲームエンジン「Pyxel」を使ってゲームプログラム の基礎である「フラグ」制御と「状態遷移」について学びます。 なお Pyxel のセットアップについては、以下のページにまとめていますので、まだインストールできていない場合は、こちらを参考にしてください。 【関連記事】:【Pyxel】セットアップ手順と基本の関数について ■今回作るものアクションゲームの基礎となる、ジャンプと空中攻撃を実装します。 ■素材のダウンロードお馴染みのニャンコ画像を使用するので以下

【Pyxel】一筆書きゲームの作り方

今回は、レトロゲームエンジン「Pyxel」を使って、一筆書きゲームの作り方を紹介します。 なお Pyxel のセットアップについては、以下のページにまとめていますので、まだインストールできていない場合は、こちらを参考にしてください。 【関連記事】:【Pyxel】セットアップ手順と基本の関数について ■今回作るゲーム 今回作るのはこのように、プレイヤーキャラクターが通った道を塗りつぶし、全ての道を塗りつぶすとゲームクリアとなるゲームです。 ■使用する素材ニャンコの画像を

Pyxelでパズルゲームを作ったのでメモ書き

昨日は「東ゲ部もくもく会」に参加してPyxelでミニゲームを作ってきました。 これはどういうゲームかというと、テトリミノをうまくフィールドに当てはめて、ニャンコをゴールまで導くゲームです。 というわけで、なぜこのゲームを作ったのかまでの思考のメモを書きます。(かなり個人的な内容です) ■「テトリスの仕組み」を使った何かを作ってみたかったこのゲームのアイデアは東ゲ部もくもく会の前日に考えました。もくもく会に参加するなら何か作らねば……という切実な問題があって、それならテトリ

【Pyxel】Pyxelで学ぶゲーム数学の基礎〜三角関数

今回も、レトロゲームエンジン「Pyxel」を使って、ゲームでよく使われる数学について学ぶ記事となります。 今回のテーマは「三角関数」です。三角関数というと何やら難しそうなイメージがありますが、理屈を抜きにしてゲーム開発に使えるところだけ覚えるとすれば、たったの3つなので、それほど難しいものではありません。 もちろん、原理や仕組みを理解すると、より高度なことができますが、最初は使いながら慣れていくのが良いのではないかと思います。 今回学ぶことは以下の3つです。 1. サイ

【Pyxel】Pyxelで学ぶゲーム数学の基礎〜距離の計算と当たり判定

今回は、レトロゲームエンジン「Pyxel」を使って、ゲームでよく使われる数学について学ぶ記事となります。 今回の内容は以下のもので、かなり基本的なものとです。 * 2点間の距離を求める方法 * 円同士の当たり判定 * 矩形同士の当たり判定 ですが、どれもゲームプログラムには必須の知識となります。 なお Pyxel のセットアップについては、以下のページにまとめていますので、まだインストールできていない場合は、こちらを参考にしてください。 【関連記事】:【Pyxel】セッ

【Pyxel】作りながら学ぶゲームプログラム (クリックゲームを改造する)

今回は以前に作成したクリックゲームを改造してたくさんのニャンコが出現するようにします。 元のコードと画像データはこちらからダウンロードできます。 http://syun777.sakura.ne.jp/tmp/pyxel/click.zip このようにニャンコが4体出るようにします。 ■ニャンコをクラス化する前回のコードでは、ニャンコを制御するためのデータを全て App クラスの中に定義していました。この書き方ではより機能を拡張したい場合に Appクラスがどんどん肥大化

【Pyxel】作りながら学ぶゲームプログラム  (クリックゲーム)

今回はレトロゲームエンジン「Pyxel」を使って簡単なミニゲーム作成する手順を紹介します。 Pyxelのセットアップ手順はこちらの記事にまとめています。 ■今回作成するゲーム シンプルなクリックゲームを作成します。画面内を動き回るニャンコをクリックできるとゲームクリアとなります。 ■画面の表示まずは画面表示を実装します。テキストエディタを開いて、以下のコードを記述して「click_game.py」などのファイル名で保存します。 import pyxelclass A

イージング関数を使ったUI挙動の作り方

今回はイージング関数を使ったUIの動きの作り方を紹介します。イージング関数とは、0.0〜1.0 の値を渡すといい感じの曲線で推移するパラメータを返してくれる関数です。Tween や Easing と呼ばれることもあります。 上記画像は、cubeOut (3次関数) によるイージング関数の使用例です。横軸が時間の経過で、縦軸が値の変化となります。 イージング関数の一覧は以下のページにまとめられています。 イージング関数が簡単に使用できるかどうかは環境によりますが、プログラ

【Pyxel】セットアップ手順と基本の関数について

今回は、レトロゲームエンジン「Pyxel」の初期セットアップと、基本的な知識をまとめた記事となります。 ◾️PyxelとはPyxelは、WindowsとMacOS X、Linux環境で動作するゲームエンジンです。 使用可能なプログラム言語は Python です。 レトロゲーム風のゲームを開発することを意識しているため、色数が16色まで、同時に再生できるサウンドが4音までとなっていますが、その制限ゆえ、ゲームプログラムを学ぶ最初の環境としては、とても良いのでは、と個人的には思