Flame

Flutter のpub

setup

fvm use 2.10.3 --force
fvm flutter create <project>
fvm flutter config --enable-windows-desktop

Game Widget

import 'package:flame/game.dart';
 
void main() {
  final game = Game();
  runApp(
    GameWidget(game: game),
  );
}
 
class Game extends FlameGame with KeyboardEvents {
  @override
  Future<void> onLoad() async {
    await super.onLoad();
  }
}
 

キー入力

class Game extends FlameGame with KeyboardEvents {
  @override
  KeyEventResult onKeyEvent(
    RawKeyEvent event,
    Set<LogicalKeyboardKey> keyPressed,
  ) {
    print(keyPressed);
 
    return KeyEventResult.ignored;
  }
}
 
{LogicalKeyboardKey#00064(keyId: "0x00000064", keyLabel: "D", debugName: "Key D")}

こういうのがとれる