No video

Создание 3D шутера для Android #2 | Godot Engine 3 2. Управление, столкновения, гравитация

  Рет қаралды 8,785

Уроки Godot Engine 3D - Petr Nagel

Уроки Godot Engine 3D - Petr Nagel

Күн бұрын

Мои игры в Google Play - play.google.co...
Мои игры на Yandex Games - yandex.ru/game...
Мои игры в App Store - apps.apple.com...
Все мои игры на Godot - pn.studio ВАЖНО! ВСЕ НОВЫЕ МАТЕРИАЛЫ БУДУТ ВЫХОДИТЬ НА ЯНДЕКС ДЗЕН
y2u.ru?zen
| -- СПАСИБО -- | #Godot3D #GodotEngine #Godot Создание 3D шутера для Android - процесс не такой уж и сложный, как может показаться!
Сегодня рассмотрим обработку управления с сенсорного экрана, передвижение персонажа и взаимодействие с объектами.
Исходники:
drive.google.c...
Прошлый урок:
• Создание 3D шутера для...
СТАНЬ ОФИЦИАЛЬНЫМ СПОНСОРОМ КАНАЛА SKANERSOFT
/ @godot3d
ЗАДАЙ МНЕ ВОПРОС, НА КОТОРЫЙ Я ОТВЕЧУ В ВИДЕО
ingast.ru
ЗАКАЖИ РЕКЛАМУ НА КАНАЛЕ SKANERSOFT
y2u.ru?реклама
=== ЧЕРПАЕМ ЗНАНИЯ ТУТ ===
Godot Engine Russia: godot-engine.ru
Второй канал: / skaner
=== ИНФОРМАЦИЯ ===
Наш чат в Discord: y2u.ru?чат
Группа ВК: y2u.ru?vk
Автор идеи и ведущий: y2u.ru?me
Поддержать монеткой: y2u.ru?donate
Прочие способы поддержать монеткой: onjs.ru
=== ТЕХНОЛОГИИ ===
Операционная система: Ubuntu 19.04 / Windows 10
Запись видео: OBS, Captura
Обработка звука: Audacity
Монтаж: KDEnlive, Movavi
Музыка из видео: skanersoft.ru#music
=== ПЛЕЙЛИСТЫ ===
GDScript Book (обучение GDScript)
• GDScript Book - изучен...
Создание 3D игр на Godot Engine
• Уроки Godot Engine на ...
Создание игр на Godot Engine
• Playlist
Написание игр и приложений на NW.js
• Playlist
Основы создания игр на JavaScript с нуля + интересные решения для ваших игр
• Создание игр на JavaSc...
Интересные решения на JavaScript
• Playlist
Истории игровых движков
• История движка
Создание "арканоида" на чистом JavaScript с нуля
• Как создать Arkanoid н...
Создание 3D игр на C++
• Playlist
Программирование в Lazarus
• Playlist
Теги для поиска моих видео - #SkanerSoft #GodotEngine
-- добавлено в 2020 году --
ДРУГ, ПОДДЕРЖИ ПРОЕКТ!
PATREON - / skaner
БУСТИ - boosty.to/game3d
KZbin - / @godot3d

Пікірлер: 56
@PetrNagel
@PetrNagel 4 жыл бұрын
350 лайков гарантируют выход видео в течение дня!
@user-frond-end_dev
@user-frond-end_dev 4 жыл бұрын
Снимай видео пожалуйста по возможности по чаще, спасибо за видосы
@winrar3818
@winrar3818 3 жыл бұрын
7 месяцев прошло а 350 лайков до сих пор нет, обидно
@destervon8119
@destervon8119 4 жыл бұрын
Новый ролик Гения. Сейчас глянем
@jvoorhees
@jvoorhees 4 жыл бұрын
Благодарю за уроки, давно хотел изучать Godot. С помощью Вашего канала сделал первый шаг. Немного не дождался этого урока, дошел сам до всего этого. Единственное что хочу сказать, при использовании Basis, есть один минус. Если организовать приседания, то Basis не подходит. Необходимо изменять размер коллайдера, проще всего это сделать изменением root ноды. Если масштабировать root ноду, то при управлении камерой, масштабирование root ноды сбрасывается в единицу. Возможно я ещё не понял как работает Basis, но вращение камеры пришлось сделать по другому. Ещё бы неплохо было показать, как сделать управление разрешением рендера и viewport через код. Благо это можно сделать буквально в 10 строк. Не нужно будет контролировать и настраивать все через окно настройки проекта. Пишу с телефона, приду на работу напишу код. Возможно кому-то пригодится.
@jvoorhees
@jvoorhees 4 жыл бұрын
Вот собственно и код, который обещал по контролированию рендера. Сильно выкручивать не советую, но для легкой оптимизации самое то. Мой совет устанавливать значения от 1 до 2, выше не имеет смысла. Получается каша. Разве что для создания пикселизации игры по типу DOOM или The Elder Scrolls: Arena. Естественно весь этот код можно организовать и совместить с данным видео, касательно момента с положением позиции прикосновения. В общем куча применения данного кода, главное понять как он работает и все. Могу сказать, что реализация и контроль мобильного управления в частности InputEventScreenTouch и InputEventScreenDrag мне больше нравятся чем в Unity3D. При желании можно написать класс обработки мобильного управления. Главное желание. Те кто перешел из Unity, не пытайтесь работать с Godot как с Unity это совершенно разные инструменты и совершенно по разному работают. ===== CODE ===== extends Node export(float, 1, 2, 0.05) var divider_viewport = 1 var screen_size func _ready(): # Получение разрешение экрана, на запускаемом устройстве. # Можно указать монитор OS.get_screen_size({номер_монитор}) актуально для ПК screen_size = OS.get_screen_size() # Устанавливаем размер окна равное разрешению экрана OS.set_window_size(screen_size) # Устанавливаем разрешение viewport равное разрешению экрана # По сути с этим параметром тоже можно поиграть, но пока не понял как get_viewport().set_size(screen_size) # Устанавливаем разрешение рендера # Если разделить screen_size на N число, то как раз разрешение рендера можно контролировать # Для этого вынесена отдельная переменная divider_viewport = 100%, попробуйте изменить на 2 и т.д. get_tree().set_screen_stretch( SceneTree.STRETCH_MODE_VIEWPORT, SceneTree.STRETCH_ASPECT_EXPAND, screen_size / divider_viewport) # Включаем полноэкранный вид fullscreen OS.set_window_fullscreen(true)
@user-df4ze3bu9z
@user-df4ze3bu9z 4 жыл бұрын
в godot Basis - это матрица 3х3 (для ясности)
@madness2048
@madness2048 4 жыл бұрын
Музыка из Duna 2 с Sega, Avanpost. Автор что, офигел такую классную музыку ставить?
@1keel645
@1keel645 4 жыл бұрын
Лайк не глядя, видео топ!
@GamerStationOnLinux
@GamerStationOnLinux 3 жыл бұрын
Спасибо!
@user-frond-end_dev
@user-frond-end_dev 4 жыл бұрын
Спасибо за видос, познавательно и очень интересно!
@artem031294
@artem031294 4 жыл бұрын
Выздоравливай!
@renamed_user1703
@renamed_user1703 4 жыл бұрын
Очень хотелось бы увидеть видео, о реализации базового AI в 3D пространстве. Видео о нем, только в 2D, да и только на английском. (Поиск путей к игроку, относительно препятствий на пути)
@denseforestcamp
@denseforestcamp 4 жыл бұрын
Возник довольно проблемный вопрос: В своем проекте для Андроид я работал над сохранением (просто рекорд и кол-во игр, тоесть только инт). Пользовался твоим старым видосом по игре "Лучше чем единство" (первая серия) где ты показывал, как пользоваться json ресурсами. (Учитывая экспорт json ресурсов, как исключение. То о чем ты в конце ролика говорил) В итоге, все работает в пределах одного запуска. Тоесть я запускаю игру - все счета на нолях. По ходу игры значения меняються, как и должны. Но после закрытия игры и повторного открытия все снова стает на нулевые счета. Где я могу найти работающие способы сохранения и загрузки на Андроит или хотябы информацию об этом? И спастбо за этот ролик. Тема сенсорного управления оказалась весьма актуальной.
@Godot3D
@Godot3D 4 жыл бұрын
Про сохранение я хочу сделать отдельное полноценное видео. Постараюсь на этой неделе. Материалов сейчас не знаю даже где взять. Только гуглить.
@denseforestcamp
@denseforestcamp 4 жыл бұрын
@@Godot3D Спасибо, буду ждать
@jvoorhees
@jvoorhees 4 жыл бұрын
@@Godot3D Если это мобильная игра, то возможно имеет смысл прикрутить Google Play Games? Был бы идеальным уроком.
@renamed_user1703
@renamed_user1703 4 жыл бұрын
@@Godot3D достаточно полезная тема, учитывая что на канале уже достаточно видео о контроллерах.
@physchemistTI
@physchemistTI 4 жыл бұрын
Отличное видео! Но есть одно предложение: в сети полно бесплатных качественных моделей, почему бы их не использовать?
@skrupidonn
@skrupidonn 3 жыл бұрын
Потому что его канал посвящён геймдеву, а это программирование, анимации, моделирование, звук игр.
@mounshain
@mounshain 4 жыл бұрын
Привет,(Да я спамер), можешь заснять видео как в 2D добавить оружие урон/скорость и всякое такое, в знак благодарности натыкаю лайков)
@denseforestcamp
@denseforestcamp 4 жыл бұрын
Если такие вопросы возникаю, то можно предположить, что вы пока не обладаете навыками работы с документацией и форумами (англоязычными), а так же, вероятно, не решаетесь приступить к решению этой задачи самостоятельно. Так что для вас реализация стрельбы и прочего - это вопрос времени, а не безинициативное ожидания готового ответа от более опытных коллег. А иначе, боюсь, вы не готовы для этой сферы деятельности.
@mounshain
@mounshain 4 жыл бұрын
@@denseforestcamp Кто знает 🤷
@alexstrateg9737
@alexstrateg9737 4 жыл бұрын
Привет) Хороший, подробный ролик. Ты не писал на c++ для godot?
@Godot3D
@Godot3D 4 жыл бұрын
Привет! Пытался, но не вышло)
@emovard3n
@emovard3n 4 жыл бұрын
Все круто кончено, но у меня такой вопрос, а почему нельзя использовать реальные величины для игры? Это же прям избавляет от кучи потенциальных багов, да и выглядит в конце все очень правдоподобно. Не делать высоту в какие-то абстрактные 3 единицы, а сделать высоту персонажа какие-то стандартные метр восемьдесят, глаза (камеру) соответственно чуть ниже. Не извращаться с силой вверх/вниз, а сделать стандартное успорение вниз (гравитацию) и делать относительно правильный прыжок (импульсом демаю не верно будет кидать персонажа вверх, а немного растянуть по времени, можно даже добавить эффект приседания перед прыжком). Я понимаю что могуть быть ньюансы от игры к игре, но это уже не абстракнтые числа в вакууме и помогуть увеличить понимание происходящего, более интуитивный подбор цифр и избежать кучи багов. Как пример вот тут раздел Units godotforums.org/discussion/18480/godot-3d-vector-physics-cheat-sheet
@shkillman
@shkillman 3 жыл бұрын
А как зделать кнопки для платформера! 🥺
@CyberAngel2OOO
@CyberAngel2OOO 4 жыл бұрын
Музыка топ
@alext.4131
@alext.4131 4 жыл бұрын
Лаги в OBS из-за нагрузки на процессор, они c Godot ресурс делят.
@azro63
@azro63 4 жыл бұрын
Низкое разрешение и пиксилизацию можно использовать под игры с закосом на старый дум или дюка нюкема.
@theaz_general
@theaz_general 3 жыл бұрын
может я и тупой или глухой или же слепой или же всё вместе но скажи паж где и как ты реализовал пространство для проведения "пальцем" по экрану??? а то делаю как ты и у меня тупо ничего не хочет работать
@RoVverzc
@RoVverzc 3 жыл бұрын
Что делать, если при написании в коде для управления if e.pressed:. появляется ошибка: W 0:00:01.031 _update_root_rect: Font oversampling does not work in 'Viewport' stretch mode, only '2D'. scene/main/scene_tree.cpp:1236 @ _update_root_rect()
@Priste_
@Priste_ Жыл бұрын
Привет, проект запускается но через время выдаёт ошибку: Invalid get index "0" (on base: 'Array') что делать ?
@Kagekao_666
@Kagekao_666 10 ай бұрын
08:58
@bebracrisp
@bebracrisp Жыл бұрын
Работает, только со временем крашит и в отладке пишет - "Invalid get index '0' (on base: 'Array')."
@kripotarx1523
@kripotarx1523 4 жыл бұрын
Будет ли в дальнейшем реализован джойстик и поддержка мультитача?
@Godot3D
@Godot3D 4 жыл бұрын
Мультитач и так работает) Передвижение работает одновременно с вращением. Про джойстик в самом начале говорил)
@renamed_user1703
@renamed_user1703 4 жыл бұрын
Сам джойстик реализовать очень просто, если хоть чуть-чуть знаешь GDscript
@PROPHESSOR
@PROPHESSOR 4 жыл бұрын
А что нужно исправить в move_and_slide?
@fastxer
@fastxer 4 жыл бұрын
Спасибо за урок. А можно как то в игре менять центр массы объекта, без его перемещения по оси координат? Как бы сказать, как на пример в блендере это делается, переназначением точки origin?
@user-jj4ko2df5n
@user-jj4ko2df5n 4 жыл бұрын
кто-нибудь скажите пожалуйста Как сделать анти алиасинг?
@renamed_user1703
@renamed_user1703 4 жыл бұрын
Ищи в настройках проекта. Также, если я не ошибаюсь, во вкладке import, при импорте текстуры, включай параметр mipmaping или как-то так
@user-jj4ko2df5n
@user-jj4ko2df5n 4 жыл бұрын
@@renamed_user1703 и конечно Я ничего не нашел и ничего не работает((((
@renamed_user1703
@renamed_user1703 4 жыл бұрын
@@user-jj4ko2df5n Выключенный mipmaping: wampi.ru/image/6Xpxbqz Включенный mipmaping: wampi.ru/image/6XpxzHH
@user-sv3jw7eg4k
@user-sv3jw7eg4k 4 жыл бұрын
Godot там с#?
@Lakamfo
@Lakamfo 4 жыл бұрын
Годо скрипт вроде это Пайтон
@arabian1797
@arabian1797 4 жыл бұрын
@@Lakamfo GDScript - это GDScript, а никакой не Python
@arabian1797
@arabian1797 4 жыл бұрын
Да, там есть оффициальная поддержка C#
@Lakamfo
@Lakamfo 4 жыл бұрын
@@arabian1797 GDscript-удобный код снижающий вероятность ошибки. Синтаксис большей частью заимствован из языка Python
@arabian1797
@arabian1797 4 жыл бұрын
@@Lakamfo то, что он схож с питоном ради простоты, не значит, что это питон
@Xtonior
@Xtonior 4 жыл бұрын
Добавь воду и чтоб игра выглядела как ааа игра
@renamed_user1703
@renamed_user1703 4 жыл бұрын
Слишком большие требования. Автор только учится.
@OlegAF
@OlegAF 4 жыл бұрын
Автор программист, ты ему предлагаешь сделать модели и текстуры профессионального качества, чего он явно не в состоянии сделать в связи с отсутствием компетенций в этих сферах. Плюс данный движок, на данный момент, не потянет такое.
@alext.4131
@alext.4131 4 жыл бұрын
@@OlegAF почему движок не потянет? Godot поддерживает карты (SpatialMaterial) и самописные шейдеры. Карты: docs.godotengine.org/en/3.0/tutorials/3d/spatial_material.html Шейдеры: docs.godotengine.org/en/3.0/tutorials/shading/shading_language.html
@OlegAF
@OlegAF 4 жыл бұрын
@@alext.4131 Потому что не потянет. Под 3Д оптимизации ему очень не хватает. Сделать на нём проект уровня ААА по графике пока что не возможно. Посмотрим что будет после выпуска 4 версии.
@arabian1797
@arabian1797 4 жыл бұрын
@@alext.4131 не потянет, потому что OpenGL
Создание 3D шутера для Android #3 | Godot Engine 3 2 прыжок и приседания
13:10
Can This Bubble Save My Life? 😱
00:55
Topper Guild
Рет қаралды 67 МЛН
Parenting hacks and gadgets against mosquitoes 🦟👶
00:21
Let's GLOW!
Рет қаралды 12 МЛН
Создание 3D игры в Godot за час / Уроки Godot Engine 3D
50:07
Налог на незнание JavaScript - [Hamster Kombat]
50:20
Godot. Обзор, плюсы, минусы, перспективы
11:23
Дмитро Конобас
Рет қаралды 8 М.
Geometry Dash, но в ROBLOX
15:51
Нелис
Рет қаралды 190 М.
Я добавил ещё больше ваших ТУПЫХ идей в Майнкрафт
12:39
Made an arcade game in a week | 2-Buttons Jam
9:00
B16D0N
Рет қаралды 5 М.
Can This Bubble Save My Life? 😱
00:55
Topper Guild
Рет қаралды 67 МЛН