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

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

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

Теория ООП / Интерфейс. Кружок готов к игре!

  • На этом уроке мы допишем методы Игрока в классе Circle.
    Реализуем метод Беги() и Поймал(), и даже исправим
    недочёты в описании интерфейса (!!).
    В конце урока я ответил на многочисленные вопросы участников.
  • Дата отправки отчёта: 21 мая 2017 г.
  • Задание выполнено: за 30 мин.
  • Чему научился: Вычислять соприкосновения спрайтов.
  • Что было сложным: Понять весь этот матан.
  • Комментарии: Ну как я и написал в прошлом каменте - надо сравнивать 2 координаты фигур. Правда у меня как всегда в голове только расплывчатый образ был, без конкретной реализации.

    Вот сколько я в школу ходил и были там уроки геометрии и нигде никто не давал таких вот знаний, чтобы потом на практике применить. Вот про закон пифагора я знаю и что толку с этого?
    return Convert.ToInt16(Math.Sqrt(p.X - q.X) * (p.X - q.X) + (p.Y - q.Y) * (p.Y - q.Y));
    Я бы такое под дулом автомата не придумал. Сто раз проверил все эти буквы, чтобы опечатки даже не сделать. А уж чтобы придумать...

    Как оказалось - границы фигуры вычисляются из центра. И это только для круга. А как для квадрата? А для треугольника?

    На старых приставках я замечал, что спрайт физически всегда является квадратом, даже если некоторые пиксели у него прозрачные. Кстати надо было graphics делать пнг формата с альфаканалом, чтобы белый фон фигуры не был виден.
    Так вот, походу всегда будут вычисляться координаты квадратных границ фигур, что внесет визуальные пиксельные погрешности, которые иногда видны на слабых системах при перерисовке спрайтов.

    Думаю это будет заметно и тут, когда фигур на арене будет много.
  • Оценка видео-уроку:
Отчёт от 10588 за Теория ООП / Интерфейс. Кружок готов к игре!




Оцени работу

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

1. --
Евгений Волосатов
Евгений Волосатов
ответить
→  kalobyte  # Теория ООП / Интерфейс. Кружок готов к игре! / 2017-05-22 17:33

Вот именно поэтому я так долго думал про бильярдные шары, какова формула их столкновения. А Интернета тогда не было :-)


10558. --
Иван Воронин
Иван Воронин
ответить
→  Евгений Волосатов  # Теория ООП / Интерфейс. Кружок готов к игре! / 2017-05-23 08:51

Да, когда не было интернета, времени уходило не мало на исследования и эксперименты. Главное, правильно поставить задачу и двигаться.


10558. --
Иван Воронин
Иван Воронин
ответить
→  kalobyte  # Теория ООП / Интерфейс. Кружок готов к игре! / 2017-05-23 08:51

Да, во всех 2D играх квадратные спрайты.



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





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

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

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

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


Научился: Стало яснее что такое интерфейс , дальше надо все это заставить двигаться , так именно не знаю -(



Научился: Запускать процесс движения кружков
На первом скриншоте со шлейфами для наглядности, на втором стал чистить арену, всё получилось очень красиво