マガジンのカバー画像

Python

25
運営しているクリエイター

記事一覧

[生成AI]共感型カウンセラーボットを作成する - Alexa音声アシスタント編

[生成AI]共感型カウンセラーボットを作成する - Alexa音声アシスタント編

この記事では、Amazon Alexaのスキル開発と生成AI(ChatGPT、Claude、Gemini)を活用して、音声対話型のAIアプリを無料で作成する方法を紹介します。音声アシスタントとして、日本で広く利用されているAlexaスキルを使います。

Alexaスキル開発は初心者にも扱いやすく、Amazonのリソースとガイドラインに従えば簡単にスキルを構築できます。全世界で何億台ものデバイスがA

もっとみる
Python Panda3Dライブラリで太陽系シミュレーターを作成する

Python Panda3Dライブラリで太陽系シミュレーターを作成する

この記事は、日経ソフトウエアの承諾を得て掲載しています。

日経ソフトウエア2024年3月号

日経ソフトウエア特集記事を書かせていただきました。
↓↓↓特集3 Pythonで「太陽系シミュレーター」を作る↓↓↓

太陽系シミュレーター開発の経緯

私が太陽系シミュレーターを作ろうと思ったのは、漫画「チ。ー地球の運動についてー」を読んで感動したからです。人間の探究心と創造性の素晴らしさを力強く讃え

もっとみる
Python Panda3Dライブラリで3D地図を作成する

Python Panda3Dライブラリで3D地図を作成する

商業誌デビューの経緯

以前、Processing (Python Mode)で3D日本地図を作成する記事を書きました。

この記事が日経ソフトウエアの編集長さんの目にとまり、特集記事として執筆する機会を与えていただきました。初めての商業誌への執筆です❤️ 
↓↓↓ 栄えある25周年記念号の第5特集に載せていただきました。↓↓↓

Panda3Dライブラリへの乗り換え

雑誌記事としてリライトする

もっとみる
Pythonでマイクラを作る ㉑パーリンノイズで雲を実装する

Pythonでマイクラを作る ㉑パーリンノイズで雲を実装する

Pythonでマイクラを作る 第21回です。今回は雲の自動生成に挑戦します。本家マイクラでは、ワールドを作成するたびにランダムな地形が作成されます。まるで地球上に存在しているような美しい景観は、パーリンノイズ(Perlin Noise)によって作成されているのです。
マイクラクローンにおいて、パーリンノイズで雲を作ります。まずはパーリンノイズについて説明します。

パーリンノイズとはパーリンノイズ

もっとみる
Pythonでマイクラを作る ⑳プレイヤーのモーションを実装する

Pythonでマイクラを作る ⑳プレイヤーのモーションを実装する

Pythonでマイクラを作る 第20回です。今回はプレイヤーのモーションを実装します。プレイヤーのモデルは、頭、体、両手両足の6つのブロックで構成されています。両手両足のブロックを適切に動かすことで歩行モーションを実現できます。
それから2段ジャンプと自動ジャンプを実装して、プレイヤーの操作性をアップします。操作性を向上させると、ユーザーの満足度もアップさせることができます。

歩行モーションの実

もっとみる
Pythonでマイクラを作る ⑲サウンドを実装する

Pythonでマイクラを作る ⑲サウンドを実装する

Pythonでマイクラを作る 第19回です。今回はサウンドを実装します。

今まで無音のマイクラクローン(Pynecrafter)で遊んでいましたが、BGM(BackGround Music)を鳴らすだけで、ゲームの面白さが倍増したように感じました。プレイヤーの歩行音やブロックの設置、破壊音を鳴らすと、ユーザーは自分の操作を確認できて、満足感が増します。
今回サウンドを実装してみて、ゲームにおける

もっとみる
Pythonでマイクラを作る ⑱マインクラフトにワールドを転送する

Pythonでマイクラを作る ⑱マインクラフトにワールドを転送する

Pythonでマイクラを作る 第18回目です。今回は本家マインクラフトとの連携を実装します。マイクラクローン(Pynecrafter)で作成した建築を本家マイクラに転送することができるようになります(トップ画像)。

まず本家マイクラにMOD(RemoteControllerMod)を導入して、マイクラクローンからコマンド(命令)を送信できるようにします。次に、マイクラクローン側にワールド転送プロ

もっとみる
Pythonでマイクラを作る ⑰建築MODで村を作る

Pythonでマイクラを作る ⑰建築MODで村を作る

Pythonでマイクラを作る 第17回目です。今回は本格的な建築を行います。
本家マイクラでは、MOD(Modification)と言われる非公式の機能拡張プログラムがあります。プレイヤーや敵モブの見た目を変えたり、公式では存在しないアイテムを追加したり、便利な機能を追加したりすることができます。
マイクラクローンに建築MODを導入します。道路、街路樹、家を簡単に作れる機能を追加して、小さな村を作

もっとみる
Pythonでマイクラを作る ⑯レンダリングの高速化

Pythonでマイクラを作る ⑯レンダリングの高速化

Pythonでマイクラを作る 第16回目です。今回はレンダリングの高速化します。
レンダリングとは、CG(コンピューターグラフィック)をディスプレイ(コンピューター画面)に描画することです。マイクラはリアルタイムでたくさんのブロックを描画しているため、コンピューターに大きい負荷がかかります。負荷が大きすぎると、処理が追いつかず画面がカクカクしてしまいます。
見えないブロックを描画しないなどのレンダ

もっとみる
Pythonでマイクラを作る ⑮物理シミュレーションの実装

Pythonでマイクラを作る ⑮物理シミュレーションの実装

Pythonでマイクラを作る 第15回目です。
今回はプレイヤーのジャンプを実装します。重力や衝突判定のある物理世界を作るには物理エンジンを使用することが多いのですが、今回は物理シミュレーションをプログラミングで行います。
これまでプレイヤーはブロックをすり抜けできる状態でした。衝突判定を行なって、プレイヤーがブロックをすり抜けできるバグを修正します。

放物線の運動方程式$$
x = v_x t

もっとみる
Pythonでマイクラを作る ⑭ゲームをセーブする

Pythonでマイクラを作る ⑭ゲームをセーブする

Pythonでマイクラを作る 第14回目です。今回はセーブ機能を追加します。
せっかく作った建築がゲーム終了で消えてしまうと悲しいです。セーブ機能があれば、セーブデータからワールドをロードして再現できるようになり、建築の続きができるようになります。これで建築が捗りますね。

セーブ方法を考えるワールドをセーブするにはいくつかの方法が考えられます。
最も簡単なのは、テキストファイルでブロック情報を保

もっとみる
Pythonでマイクラを作る ⑬メニュー画面を作成する

Pythonでマイクラを作る ⑬メニュー画面を作成する

Pythonでマイクラを作る 第13回目です。今回はメニュー画面を作成します。
メニュー画面にはボタンやラベル、入力欄などの GUI部品を配置します。GUI とは Graphical User Interface の略で、画面上に表示された絵や図形(アイコン)をマウスなどのポインティングデバイスで操作する仕組みのことです。
メニュー画面のデザインは、PlumpMath/Panda3DCraft

もっとみる
Pythonでマイクラを作る ⑫インベントリからブロックを選択する

Pythonでマイクラを作る ⑫インベントリからブロックを選択する

Pythonでマイクラを作る 第12回目です。インベントリ(アイテム一覧のホップアップ画面)を実装します。インベントリに44個のブロックを表示します。ブロックをクリックすると、ホットバーのブロックを入れ替えられるようにします。

インベントリの画像を作成インベントリの枠画像をドット絵エディタなどで作成します。サイズは 1000x370 です。こちらの画像をダウンロードしてお使いください。image

もっとみる
Pythonでマイクラを作る ⑪起動画面を実装する

Pythonでマイクラを作る ⑪起動画面を実装する

Pythonでマイクラを作る 第11回目です。今回はユーザーインターフェースの実装を続けます。まず画面上にテキストを表示できるようにします。デバッグモードでは、プレイヤーの情報(位置や向きなど)を画面上で確認できるようにします。最後、起動画面(スプラッシュスクリーン)を表示して、本格的なゲームに近づける方法を学びます。

フォントの準備フォントとはコンピューターで使われる文字の書体のことです。Pa

もっとみる