Java разработка игры с нуля — Graphics — Часть 4

Автор Liza Merichenko
Java разработка игры с нуля — Graphics — Часть 4

Всем привет.

С вами. Виктор курашов и мы продолжаем мучить с вами игру Java 2D сегодня сделаем следующие. Сегодня мы добавим графические компоненты хотелось бы всё-таки увидеть уже что-нибудь на экране, что нам понадобится для начала.

Для этого нам понадобится несколько переменных новых переменная баффет Image Class — это создает переменное нашего холста на котором мы будем рисовать класс graphics2d создает нашу переписку и будем использовать эти переменные мы убиваем так.

Ширина холста создаем анаша ширина ширина экрана зададим также способ растрирование способ обработки света — это у нас константы которые находятся в классе баффет Image напиши. ТТГ и можно в принципе здесь. Было вместо. Бархат имидж например просто написать цифру 23 посмотрим пойдём в бахмуте константы это. Циклодинон могли бы написать, но лучше лучше так. Потому, что потом очень сложно будет вспомнить, что у тебя там за единичка ну и соответственно передадим — это дело нашей пельменный G мы привязываем кисточки нашёл едят graphics — это метод graphics на отжим у нас типа graphics2d то есть Jetta. Наследник график соответственно мы скажем мы приведем тип данных Image Get graphics к типу график с двойными G. Ну первое, что хотелось бы нарисовать мы. Нарисуем background и сделаем мы. Для этого дополнительной класс. Потому, что много идей по поводу того как процессия в дальнейшем разработки игры батлграунд будет изменяться создадим переменную класса класса у нас пока этого нет, но можно вот использовать подсказку эклипса и создать класс Creed Games. Ага вот он нас появился вернемся к нашему нашему евгенбро и инициализируем инициализируем аккаунт задний фон. Давайте теперь перейдем в банк раунд в сам-то. Здесь нам понадобится импортировать кВт HM начнем с методов Public Void принципе по такому принципу будет у нас будет у нас все классы большинство класса в игре строится давайка создадим переменную создадим переменную переменную типа цвет. Давайте создадим конструктор котором мы эту переменную инициализируем пока, что у нас такой класс есть достаточно капустинский ещё не вечер возможно хватит голубыми её сделаем задний фон сделаем глупый. Для чего я делаю отдельный Class background возможно в перспективе захочется как-то взаимодействовать с допустим рисовать какой-то там облака или ещё что-то или даже возможно ещё какой-то взаимодействие производить. Вот и хотелось бы чтобы у нас всё, что относится к задней части экрана она была в одном классе установим цвет. Да кстати здесь нужно. Здесь мы должны получить должны получить кисточку. Да с холстом вот уже 100 кисточкой мы что-то сделаем мы с ней сделаем следующие мы передадим ей цвет и мы. Нарисуем прямоугольник прямоугольник с координатами 0 0. То есть — это вот — это у нас вот эта часть окна будет и ширина наши игровой панели. Кстати я выяснил, что за такое Static Static — это своего рода глобальная переменная означает, что мы можем обращаться к ней на прямую не создавая объект и взаимодействует с этой переменной. Мы будем её менять для всех объектов этого класса. Если я сейчас здесь вызову компоновка уэцн равно 300 да то есть везде изменится во всех объект. Это эти данные изменится до которые зависят от этих данных на самом деле очень удобно. Если бы был просто паблик то нужно было бы создавать какой-то объект пришлось бы создавать например объект Game. Ну например канал где ты его инициализировать равно New Anal на и потом уже как-то. Давать ему анал анал анал выезда было бы анал. Да скорее всего нам пришлось бы, а учитывая то, что у нас уже какой-то объект создал то есть нам сюда бы ещё пришлось объект передавать, что совсем неудобно так так. Ура Это мы сделали теперь нам нужно обновить данные этого объекта я сразу буду добавлять и туда и туда будем пытаться следовать принципу ооп один раз. Мы создали добавили объекты дальше мы будем менять — это только в непосредственно на объекте. То есть вместе где у нас собираются эти объекты мы уже ничего менять не будем так мы. Нарисуем таблетки передадим ему то есть вот мы вызываем метод этого объекта. Да вот этот метод бедро и. Передаем ему нашу киста которым инициализирована ли здесь. Здесь мы её не национализировали дальше в цикле мы вызываем метод геймренджер и здесь уже методы геймренджер мы рисуем этот объект, что если мы сейчас попробуем то у нас пока ничего не получится да ничего не получится, что не получится у нас. По той простой причине, что график — это не он рисует — это где-то виртуально вот поэтому. Давайте создадим ещё один метод мы могли передавать изображения в нашу нашу компонента в нашу нашу панель ой да вот такой вот насчёт компаниец один такой вот метод сдадим и здесь сделаем 2 то есть. Нам нужно как-то соединить то, что мы взяли кисточку и нет. Холмск, но мы не присоединили к нашему экрану. Да вот здесь вот мы как раз и — это и делаем. Нарисуем всё, что у нас уже попала в этом графику у нас на экран немножко не трогает он поторопился. Ну вот всё, что нас попала в наш наш экран мы теперь. Выведи на экран то есть там у нас треугольник голубой размером 400 на 400 на экран и выходим. Кстати если кто-то знает. Вот здесь идёт наблюдателя. Земли если кто-то знает зачем и как их применять зачем они нужны. Я пока не сталкивался с использованием активным, но видимо не для чего-то нужные и соответственно пишет 2. без пауз и мы очищаем буфер то есть мы даём команда сборщик мусора убрать вот — это вот переменную G2 который хранится картинка которую мы уже нарисовали на экране так.

0 комментариев
0

Читайте также