#!/usr/bin/python # -*- mode: python; Encoding: utf-8; coding: utf-8 -*- # Last updated: <2017/09/15 20:59:46 +0900> u""" pi3d input keyboard sample. キーボード入力を取得してみるサンプル。 WASDキーで上下左右に動かしてみる。 ESCキーで終了する。 Windows10 x64 + Python 2.7.12 32bit + pi3d 2.21 """ from __future__ import absolute_import from __future__ import division from __future__ import print_function from __future__ import unicode_literals import pi3d # ウインドウ生成 display = pi3d.Display.create(w=640, h=480, frames_per_second=60) # シェーダーを生成。uv_flatは照明関係の計算をしない。 shader = pi3d.Shader("uv_flat") # カメラを平行投影に camera = pi3d.Camera(is_3d=False) # テクスチャを読み込み tex = pi3d.Texture("airplane_01_64x64.png", mipmap=False) # スプライトを生成 x, y, z = 0.0, 0.0, 20.0 spr = pi3d.ImageSprite(tex, shader, w=64, h=64, x=x, y=y, z=z) # スプライトをDisplayに登録 display.add_sprites(spr) # キーボード取得用クラスを生成 keys = pi3d.Keyboard() # メインループ while display.loop_running(): spd = 8.0 # キー入力で座標を変化させる k = keys.read() if k == ord("w"): spr.translateY(spd) # スプライトのy座標を変化 if k == ord("a"): spr.translateX(-spd) # スプライトのx座標を変化 if k == ord("s"): spr.translateY(-spd) if k == ord("d"): spr.translateX(spd) if k == 27: # ESCキーが押されたらループを抜けて終了 keys.close() display.destroy() break