Комментарии 15
Говорите не программист? Вполне себе сносно спроектировали дизайн. Я смотрел сорцы оригинального дудлера на JS. Так вот Ваш код изящнее и чище можете собой гордиться. Чем же вы зарабатываете, если не этим?
+3
>>нагрузка процессора при этом стремится к 50-70%
помоему это в любой игре будет так — отрисовка ведь постоянная
помоему это в любой игре будет так — отрисовка ведь постоянная
-4
Попалось место где не допрыгнуть :(
+1
Да, жрёт круто. Это в коде что-то не так, python тут ни при чём.
0
Да, скорее всего бред — использовать интерпретируемый язык для написания игр.
Ничуть.
+5
Попробовал отпрофилировать — большая часть времени работает метод
Так что самый простой способ — снизить FPS (при этом подкорректировав скорость по Y и гравитацию). При 25 FPS, гравитации 1.3 и вертикальной скорости 35 выглядит приемлемо, а процессора жрет заметно меньше (хотя все еще прилично).
{method 'blit' of 'pygame.Surface' objects}
— т.е. отрисовка внутри PyGame.>>> p.sort_stats('cumulative').print_stats(10) Wed Oct 19 14:34:27 2011 profile.txt 253095 function calls (252783 primitive calls) in 35.892 CPU seconds Ordered by: cumulative time List reduced from 753 to 10 due to restriction <10> ncalls tottime percall cumtime percall filename:lineno(function) 1 0.001 0.001 35.893 35.893 main.py:4(<module>) 1 0.050 0.050 35.811 35.811 main.py:32(main) 22623 30.889 0.001 30.889 0.001 {method 'blit' of 'pygame.Surface' objects} 1797 0.202 0.000 28.373 0.016 locations.py:88(draw) 214 0.004 0.000 3.343 0.016 locations.py:37(draw) 2011 3.334 0.002 3.334 0.002 {pygame.display.flip} 2011 0.310 0.000 0.310 0.000 {method 'tick' of 'Clock' objects} 1 0.000 0.000 0.258 0.258 main.py:16(__init__) 1796 0.021 0.000 0.231 0.000 sprites.py:68(setX) 1 0.063 0.063 0.206 0.206 {pygame.display.set_mode}
Так что самый простой способ — снизить FPS (при этом подкорректировав скорость по Y и гравитацию). При 25 FPS, гравитации 1.3 и вертикальной скорости 35 выглядит приемлемо, а процессора жрет заметно меньше (хотя все еще прилично).
+3
Надеюсь напишете тут статью когда закончите?!
И еще бы добавить возможность управления стрелками. Курсор частенько вылетает за рамки окна… и инопланетянин перестаёт двигаться тогда… а в опасный момент это и подвести может.
И еще бы добавить возможность управления стрелками. Курсор частенько вылетает за рамки окна… и инопланетянин перестаёт двигаться тогда… а в опасный момент это и подвести может.
0
По-моему это великолепно. Именно такими людьми совершаются инновации на сцене видеоигр (т.к. мастодонты не любят рисковать). Ну а известную игру выбрать для начала — это правильно, т.к. есть рабочий образец и есть на что ориентироваться. Пожелаю успехов на этом поприще и жду новых игр!
-2
Зарегистрируйтесь на Хабре , чтобы оставить комментарий
Doodle Jump на pygame