Mercurial > touhou
comparison eosd @ 512:b39ad30c6620
Add a pure SDL backend.
author | Emmanuel Gil Peyrot <linkmauve@linkmauve.fr> |
---|---|
date | Thu, 05 Dec 2013 01:55:39 +0100 |
parents | 1bc014f9d572 |
children | 5e3e0b09a531 |
comparison
equal
deleted
inserted
replaced
511:2e8ceaa85d5c | 512:b39ad30c6620 |
---|---|
47 parser.add_argument('--verbosity', metavar='VERBOSITY', choices=['DEBUG', 'INFO', 'WARNING', 'ERROR', 'CRITICAL'], help='Select the wanted logging level.') | 47 parser.add_argument('--verbosity', metavar='VERBOSITY', choices=['DEBUG', 'INFO', 'WARNING', 'ERROR', 'CRITICAL'], help='Select the wanted logging level.') |
48 parser.add_argument('--game', metavar='GAME', choices=['EoSD'], default='EoSD', help='Select the game engine to use.') | 48 parser.add_argument('--game', metavar='GAME', choices=['EoSD'], default='EoSD', help='Select the game engine to use.') |
49 parser.add_argument('--port', metavar='PORT', type=int, default=0, help='Local port to use for netplay') | 49 parser.add_argument('--port', metavar='PORT', type=int, default=0, help='Local port to use for netplay') |
50 parser.add_argument('--remote', metavar='REMOTE', default=None, help='Remote address') | 50 parser.add_argument('--remote', metavar='REMOTE', default=None, help='Remote address') |
51 parser.add_argument('--no-friendly-fire', action='store_false', help='Allow friendly-fire during netplay.') | 51 parser.add_argument('--no-friendly-fire', action='store_false', help='Allow friendly-fire during netplay.') |
52 parser.add_argument('--backend', metavar='BACKEND', choices=['opengl', 'sdl'], default='opengl', help='Which backend to use (opengl or sdl for now).') | |
52 | 53 |
53 args = parser.parse_args() | 54 args = parser.parse_args() |
54 | 55 |
55 | 56 |
56 import sys | 57 import sys |
57 import logging | 58 import logging |
59 | |
60 if args.backend == 'opengl': | |
61 from pytouhou.ui.gamerenderer import GameRenderer | |
62 opengl = True | |
63 elif args.backend == 'sdl': | |
64 from pytouhou.ui.sdl.gamerenderer import GameRenderer | |
65 opengl = False | |
58 | 66 |
59 from pytouhou.lib.sdl import SDL | 67 from pytouhou.lib.sdl import SDL |
60 from pytouhou.ui.window import Window | 68 from pytouhou.ui.window import Window |
61 from pytouhou.resource.loader import Loader | 69 from pytouhou.resource.loader import Loader |
62 from pytouhou.ui.gamerunner import GameRunner | 70 from pytouhou.ui.gamerunner import GameRunner |
63 from pytouhou.ui.gamerenderer import GameRenderer | |
64 from pytouhou.game.player import GameOver | 71 from pytouhou.game.player import GameOver |
65 from pytouhou.formats.t6rp import T6RP, Level | 72 from pytouhou.formats.t6rp import T6RP, Level |
66 from pytouhou.utils.random import Random | 73 from pytouhou.utils.random import Random |
67 from pytouhou.vm.msgrunner import NextStage | 74 from pytouhou.vm.msgrunner import NextStage |
68 from pytouhou.formats.hint import Hint | 75 from pytouhou.formats.hint import Hint |
165 hints = Hint.read(file) | 172 hints = Hint.read(file) |
166 | 173 |
167 game_class = GameBossRush if boss_rush else Game | 174 game_class = GameBossRush if boss_rush else Game |
168 | 175 |
169 common = Common(resource_loader, characters, continues, stage_num - 1) | 176 common = Common(resource_loader, characters, continues, stage_num - 1) |
170 renderer = GameRenderer(resource_loader, window.use_fixed_pipeline) | 177 renderer = GameRenderer(resource_loader, window) |
171 runner = GameRunner(window, renderer, common, resource_loader, skip_replay, con) | 178 runner = GameRunner(window, renderer, common, resource_loader, skip_replay, con) |
172 window.set_runner(runner) | 179 window.set_runner(runner) |
173 | 180 |
174 while True: | 181 while True: |
175 first_player = common.players[0] | 182 first_player = common.players[0] |
248 | 255 |
249 | 256 |
250 with SDL(): | 257 with SDL(): |
251 window = Window(double_buffer=(not args.single_buffer), | 258 window = Window(double_buffer=(not args.single_buffer), |
252 fps_limit=args.fps_limit, | 259 fps_limit=args.fps_limit, |
253 fixed_pipeline=args.fixed_pipeline) | 260 fixed_pipeline=args.fixed_pipeline, opengl=opengl) |
254 | 261 |
255 main(window, args.path, tuple(args.data), args.stage, args.rank, | 262 main(window, args.path, tuple(args.data), args.stage, args.rank, |
256 args.character, args.replay, args.save_replay, args.skip_replay, | 263 args.character, args.replay, args.save_replay, args.skip_replay, |
257 args.boss_rush, args.debug, args.no_background, args.no_particles, | 264 args.boss_rush, args.debug, args.no_background, args.no_particles, |
258 args.no_music, args.hints, args.verbosity, args.port, args.remote, | 265 args.no_music, args.hints, args.verbosity, args.port, args.remote, |