Курсы по программированию

Формула программиста

основатель — Волосатов Евгений Витольдович
Поздравляю с 1 сентября! Система начисления Байтов работает.

Нано-игры / Арканоид - Шарик и кирпичики

  • Делаем движение шарика, отскок его от стен и ракетки, а также выбивание кирпичиков.
  • Дата отправки отчёта: 11 апреля 2017 г.
  • Задание выполнено: за 1 час. 30 мин.
  • Чему научился: Научился планировать приложение, набросав эскиз того что в ней должно быть на бумаге, когда-то давно делал также когда пытался написать крестики-нолики на Java, но позабыл о такой практике.
  • Что было сложным: Разобраться с необходимыми точками и их координатами.
  • Комментарии: Есть опрос. Вместо label и radioButton использовал PictureBox-ы для шарика, кирпичиков и доски с расчётом на то, что они поддерживают прозрачность, так как использование графики в игре придаёт её другой вид. Однако столкнулся с проблемой что у движущихся частях виднеется шлейф цветом бекгроунда игровой формы (видно на первом скриншоте), как от него можно избавится? В качестве доп задания добавил  игру подсчет очков (по 100 за кирпичик)  а также меню паузы с возможностью регулировки скорости движения шарика.
  • Оценка видео-уроку:
Отчёт от 1713 за Нано-игры / Арканоид - Шарик и кирпичики


Отчёт от 1713 за Нано-игры / Арканоид - Шарик и кирпичики




Оцени работу

 
Сохранить страницу:

10558. --
Иван Воронин
Иван Воронин
ответить
→  Виталий  # Наноигры / Арканоид - Шарик и кирпичики / 2017-04-13 03:05

Вариантов избавиться несколько:
1 - включить даблбуффер.
2 - использовать фоновую картинку на панели, добавив всем объектам аттрибут прозрачности.
3 - располагать все объекты поверх огромной картинки и перерисовывать их для каждого кадра.


1713. --
Виталий
Виталий
ответить
→  Иван Воронин  # Наноигры / Арканоид - Шарик и кирпичики / 2017-04-13 18:07

Спасибо. Вариант с даблбуфером подошел, шлейфов не видно. Есть несколько интересных идей, буду усовершенствовать  свой проект.


  • Отчёт оценивали:
    18688Arslan0  

Начинаем практику по языку C#





Если вы пришли без приглашения -
введите тысяча двадцать четыре (цифрами).
Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.


Научился: Обрабатывать отскоки шарика от стен и кирпичиков
Трудности: Не получилось перенести количество жизней из одного уровня в другой. Пробовала сделать через глобальную переменную, но что-то тоже не дало результатов. Либо я просто неправильно делала
- Добавила возможность постановки игры на паузу путем нажатия на клавишу "P" - Добавила второй уровень, где увеличилось число кирпичиков и скорость - Добавила подсчет жизней, но не получилось перенести количество жизней из одного уровня в другой. Т.е. если на первом уровне например осталось 3 жизни, то на втором их снова становится 5. Слишком много копипаста, второй уровень фактически повторяет первый, за малым исключением. Принципиально ничего нового не добавилось в логику работы программы. Поэтому думаю, что надо как-то менять структуру программы, добавлять классы, методы, но пока не знаю как это делать


Научился: работе с классом Random, правильно рассчитывать координаты различных элементов формы и менять их положение, траекторию перемещения
Трудности: найти время, придумать что-то дополнительное
почему-то ракетка в начале движения притормаживает...как будто ей что-то мешает двигаться