denis8424 WIP
воскресенье, 24 мая 2020 г.
среда, 25 марта 2020 г.
Создание 3D шутера для Android #4 | Godot Engine 3 2 | Настройка сцены, ...
Пользователь ScanerSoft создал очередной видеоурок, кому интересен движок Godot, переходите, там много полезной информации.
пятница, 6 марта 2020 г.
Сделал в догонку пример полосы здоровья с помощью узла ColorRect.
Собственно, самый цимес этого примера - в принципе
расчета цвета для полосы здоровья. Суть в том, что изменение цвета из красного в зеленый, через желтый, требует изменения только двух каналов - R и G. Синий при этом лучше вообще выкрутить в ноль и не трогать. Если подробнее, то градиент выглядит так:
Красный - 1.0, 0.0, 0.0
Желтый - 1.0, 1.0, 0.0
Зеленый - 0.0, 1.0, 0.0
Видно, что первую половину градиента красный остается неизменно равным 1.0, а вторую половину уменьшается до нуля, зеленый же наоборот в первую половину увеличивается до 1.0, а вторую половину остается неизменным. Код, который создает список цветов:
var colorList = []
for i in range(101):
var R = 0.0
var G = 0.0
var B = 0.0
if i > 50:
R = (100 - i)*0.02
G = 1.0
if i < 51:
R = 1.0
G = i * 0.02
colorList.append(Color(R, G, B))
КДПВ:
расчета цвета для полосы здоровья. Суть в том, что изменение цвета из красного в зеленый, через желтый, требует изменения только двух каналов - R и G. Синий при этом лучше вообще выкрутить в ноль и не трогать. Если подробнее, то градиент выглядит так:
Красный - 1.0, 0.0, 0.0
Желтый - 1.0, 1.0, 0.0
Зеленый - 0.0, 1.0, 0.0
Видно, что первую половину градиента красный остается неизменно равным 1.0, а вторую половину уменьшается до нуля, зеленый же наоборот в первую половину увеличивается до 1.0, а вторую половину остается неизменным. Код, который создает список цветов:
var colorList = []
for i in range(101):
var R = 0.0
var G = 0.0
var B = 0.0
if i > 50:
R = (100 - i)*0.02
G = 1.0
if i < 51:
R = 1.0
G = i * 0.02
colorList.append(Color(R, G, B))
КДПВ:
четверг, 5 марта 2020 г.
Сделал стреляющую турельку.
Турельку-то сделал, но пришел к нескольким выводам:
во-первых, художник из меня, прямо скажем, так себе, во-вторых, сколько десятилетий назад была сделана последняя игра с видом сверху? А ведь вращение башен и прочего в косоугольной проекции делается не так.
Собственно сам принцип наведения базируется исключительно на векторах, как и подобные примеры, которые я делал на BGE, тут только вектора в 2D, вот и вся разница. Да и стрельбу с упреждением я не делал, оно стреляет прямой наводкой. Еще побаловался с сигналами, но это надо бы углубить, поскольку не совсем понятно подключение сигналов "на лету", в данном примере, я у каждого самолетика сделал узел-излучатель сигналов. Турель подключалась к этому узлу и заставляла его излучать сигнал, который уже отправлялся к нужному узлу самолета. А хорошо было бы отправить сигнал непосредственно с турели.
Скачать здесь: Turret.7z
понедельник, 10 февраля 2020 г.
Таки добил движение юнитов как в стратегиях...
Хотя уже в процессе пришло понимание, что неплохо бы вообще весь код, отвечающий за отдачу команд, в том числе юнитам, упаковать в отдельный узел, вроде как интерфейс отдельно, мухи сцены/юниты отдельно.
Еще неплохо было бы отправлять юниту не просто координаты точки, куда ему двигаться надо, а приказ, например {'MOVE', Vector2(128.0, 54.0)} или {'ATTACK', 'KinematicBody2D: 1016'} и прочее, типа 'GUARD', 'RETURN_TO_BASE', MOVE_AND_ATTACK', на что фантазии хватит.
Замечу так же, что блок - схемы рулят. Если бы не они, то я еще полгода бы размышлял, как бы это получше организовать.
КДПВ из предыдущего сообщения, в этом смысле существенно ничего не поменялось.
Управление понятно какое, плюс клавиша Shift работает.
Собственно ссылка: Move_TO_ClickII.7z (~400 kB)
Еще неплохо было бы отправлять юниту не просто координаты точки, куда ему двигаться надо, а приказ, например {'MOVE', Vector2(128.0, 54.0)} или {'ATTACK', 'KinematicBody2D: 1016'} и прочее, типа 'GUARD', 'RETURN_TO_BASE', MOVE_AND_ATTACK', на что фантазии хватит.
Замечу так же, что блок - схемы рулят. Если бы не они, то я еще полгода бы размышлял, как бы это получше организовать.
КДПВ из предыдущего сообщения, в этом смысле существенно ничего не поменялось.
Управление понятно какое, плюс клавиша Shift работает.
Собственно ссылка: Move_TO_ClickII.7z (~400 kB)
вторник, 13 августа 2019 г.
Перерисовал текстуры.
Сочетание цветов мне всё равно не нравится, но смысла долго возиться с подгонкой я не вижу. Картинка ниже:
Подписаться на:
Сообщения (Atom)