Готовим локации к внедрению


https://youtube.com/live/dAO_1R7BpUM

Вот и настало время слияний, для меня пока самое волнующее и пугающее — страх смешать пропсы в кучу или не смочь разместить всё в «сборе» в нужном месте в основном «мире».

Наткнулся на видео с разбором одной из серии Tomb Raider, с сопоставлением с данными истории, было интересно представить как может быть захватывающе придумывать игры такого рода. Это видео — https://youtu.be/iiLlL9c6tf0

Мои проекты:
Библиотека звуков — https://www.simpra.org/sound/

Мой ассет рыб — https://www.unrealengine.com/marketplace…

Моя игра — «Tear of Time: Lost memory»
Купить игру в Steam — https://store.steampowered.com/app/1802920/
Купить игру в VKPlay- https://vkplay.ru/play/game/tearoftime_lm/
Купить игру в Epic Games Store — https://store.epicgames.com/ru/p/tear-of-time-lost-memory-add761
Страница ранней демо-версии на itch.io — https://simpra-org.itch.io/tear-of-time-ep1-demo
Другие ссылки на раннюю демо-версию игры:
https://77.md/hata1-g
https://77.md/hata1-m

AI камер 2, AIPerception точки, C++


https://youtube.com/live/iHBE1jmZkJY

Второй вариант AI камеры видеонаблюдения, более «честный». Как научить AIPerception размещаться и смотреть из нужных нам мест.

Код C++ который я использовал в своих решениях:
В файле «.h», после «public:» добавляем:

virtual void GetActorEyesViewPoint(FVector& OutLocation, FRotator& OutRotation) const override;

В файле «.cpp», в зависимости что нам нужно, добавляем все или некоторые из этих:

#include "Components/CapsuleComponent.h"
#include "Components/StaticMeshComponent.h"
#include "Engine/Engine.h"

Тут первое — если будем искать приклеплённые к капсуле компоненты, среди которых меш с нужным нам тегом «Eyes».
Второе — обязательно если ищем меш.
Третье — только если нужно будет выводить текст в движке подобно printstring.

А это общий код для файла «.cpp», содержащий закомментированные иные варианты, если понадобятся:

void ACPP_CamSurvBase::GetActorEyesViewPoint(FVector& OutLocation, FRotator& OutRotation) const
{
    //OutLocation = GetMesh()->GetSocketLocation("HeadSocket");
    //OutRotation = GetMesh()->GetSocketRotation("HeadSocket");
    OutLocation = GetRootComponent()->GetRelativeLocation();
    OutRotation = GetRootComponent()->GetRelativeRotation();
    //FRotator CurrentRotation = GetRootComponent()->GetRelativeRotation();
    //FRotator NewRotation = CurrentRotation + FRotator(-25.0f, 0.0f, 0.0f);
    //OutRotation = NewRotation;
    //const TArray<USceneComponent*> ChildComponents = GetRootComponent()->GetAttachChildren();
    const TArray<USceneComponent*> ChildComponents = GetCapsuleComponent()->GetAttachChildren();

    for (USceneComponent* Child : ChildComponents)
    {
        // Проверяем, является ли компонент StaticMesh и имеет ли тег "Eyes"
        if (UStaticMeshComponent* StaticMesh = Cast<UStaticMeshComponent>(Child))
        {
            if (StaticMesh->ComponentHasTag("Eyes"))
            {
                OutLocation = StaticMesh->GetComponentLocation();
                OutRotation = StaticMesh->GetComponentRotation();
                /*
                FString Message = FString::Printf(
                    TEXT("Found Mesh with Tag 'Eyes'! Location: %s, Rotation: %s"),
                    *OutLocation.ToString(), // Конвертируем FVector в строку
                    *OutRotation.ToString() // Конвертируем FRotator в строку
                );
                if (GEngine)
                {
                    GEngine->AddOnScreenDebugMessage(
                        -1, // ID сообщения (-1 означает, что сообщение уникально)
                        50.0f, // Время отображения сообщения в секундах
                        FColor::Green, // Цвет сообщения
                        Message  // Текст сообщения
                    );
                }
                */

                return; // Выходим из функции после нахождения первого совпадения
            }
        }
    }
}

В текущем виде он ищет меш с тэгом «Eyes» среди прикрелённых к капсуле, для замены класса Character(где есть капсула).
Если это нужно в простой pawn, то раскомментируйте строку:

const TArray<USceneComponent*> ChildComponents = GetRootComponent()->GetAttachChildren();

И закомментируйте следующую для капсулы:

const TArray<USceneComponent*> ChildComponents = GetCapsuleComponent()->GetAttachChildren();

Если нужно как для бота в следующем видео, чтобы зрение исходило из сокета «HeadSocket» прописанного в скелете бота, то нужно раскомментировать эти две строки и закомментировать всё остальное после них:

OutLocation = GetMesh()->GetSocketLocation("HeadSocket");
OutRotation = GetMesh()->GetSocketRotation("HeadSocket");

 

Во всём помогли и вдохновили видео:
Заменяем стандартную функцию определения точки зрения AIPerception на нужную нам, чтобы «зрение» происходило из нужных нам мест и углов — https://youtu.be/rDXGeXK-PNI

Делаем стекло, и учим AIPerception смотреть сквозь него — https://youtu.be/VCqg25Zxd7Y

Заставляем AIPerception следить за головой персонажа а не центром тушки — https://youtu.be/rYWoyz5Hwy8, или сокетами — https://youtu.be/J8UuAtDeR6M

Как удалить ранее созданные но уже не нужные C++ классы из проекта — https://youtu.be/kU9EXDHPJiQ

Простой гайд по AI с которого я начал — https://youtu.be/E-CfaDdjBic
Подробные уроки по AI из которых я узнал как научить роботов видеть(одно из видео) — https://youtu.be/cfizSLpfN64

Мои проекты:
Библиотека звуков — https://www.simpra.org/sound/

Мой ассет рыб — https://www.unrealengine.com/marketplace…

Моя игра — «Tear of Time: Lost memory»
Купить игру в Steam — https://store.steampowered.com/app/1802920/
Купить игру в VKPlay- https://vkplay.ru/play/game/tearoftime_lm/
Купить игру в Epic Games Store — https://store.epicgames.com/ru/p/tear-of-time-lost-memory-add761
Страница ранней демо-версии на itch.io — https://simpra-org.itch.io/tear-of-time-ep1-demo
Другие ссылки на раннюю демо-версию игры:
https://77.md/hata1-g
https://77.md/hata1-m

AI камеры, правим локацию под себя


https://youtube.com/live/DSMXJOwZ3Mo

Делаем поведение камеры наблюдения на заводе, правим пропсы и локацию под сюжет.

Простой гайд по AI с которого я начал — https://youtu.be/E-CfaDdjBic
Подробные уроки по AI из которых я узнал как научить роботов видеть(одно из видео) — https://youtu.be/cfizSLpfN64

Библиотека звуков — https://www.simpra.org/sound/

Мой ассет рыб — https://www.unrealengine.com/marketplace…

Моя игра — «Tear of Time: Lost memory»
Купить игру в Steam — https://store.steampowered.com/app/1802920/
Купить игру в VKPlay- https://vkplay.ru/play/game/tearoftime_lm/
Купить игру в Epic Games Store — https://store.epicgames.com/ru/p/tear-of-time-lost-memory-add761
Страница ранней демо-версии на itch.io — https://simpra-org.itch.io/tear-of-time-ep1-demo
Другие ссылки на раннюю демо-версию игры:
https://77.md/hata1-g
https://77.md/hata1-m

Расставляем, готовим пропсы, немного AI


https://youtube.com/live/_vh3l2f_Ves

Ещё об ограничениях для AI, готовим и расставляем пропсы по местам.

Простой гайд по AI с которого я начал — https://youtu.be/E-CfaDdjBic
Подробные уроки по AI из которых я узнал как научить роботов видеть(одно из видео) — https://youtu.be/cfizSLpfN64

Библиотека звуков — https://www.simpra.org/sound/

Мой ассет рыб — https://www.unrealengine.com/marketplace…

Моя игра — «Tear of Time: Lost memory»
Купить игру в Steam — https://store.steampowered.com/app/1802920/
Купить игру в VKPlay- https://vkplay.ru/play/game/tearoftime_lm/
Купить игру в Epic Games Store — https://store.epicgames.com/ru/p/tear-of-time-lost-memory-add761
Страница ранней демо-версии на itch.io — https://simpra-org.itch.io/tear-of-time-ep1-demo
Другие ссылки на раннюю демо-версию игры:
https://77.md/hata1-g
https://77.md/hata1-m

Дорабатываем AI патруль


https://youtube.com/live/bncaPts4bqM?feature=share

Ограничиваем патрулирующих

Простой гайд по AI с которого я начал — https://youtu.be/E-CfaDdjBic
Подробные уроки по AI из которых я узнал как научить роботов видеть(одно из видео) — https://youtu.be/cfizSLpfN64

Библиотека звуков — https://www.simpra.org/sound/

Мой ассет рыб — https://www.unrealengine.com/marketplace…

Моя игра — «Tear of Time: Lost memory»
Купить игру в Steam — https://store.steampowered.com/app/1802920/
Купить игру в VKPlay- https://vkplay.ru/play/game/tearoftime_lm/
Купить игру в Epic Games Store — https://store.epicgames.com/ru/p/tear-of-time-lost-memory-add761
Страница ранней демо-версии на itch.io — https://simpra-org.itch.io/tear-of-time-ep1-demo
Другие ссылки на раннюю демо-версию игры:
https://77.md/hata1-g
https://77.md/hata1-m

Об ассетах, AI патруль, devlog 176

Доработаем немного нашего балванчика и добавляем ему патрулирование.

Простой гайд по AI с которого я начал — https://youtu.be/E-CfaDdjBic
Подробные уроки по AI из которых я узнал как научить роботов видеть(одно из видео) — https://youtu.be/cfizSLpfN64

Библиотека звуков — https://www.simpra.org/sound/

Мой ассет рыб — https://www.unrealengine.com/marketplace…

Моя игра — «Tear of Time: Lost memory»
Купить игру в Steam — https://store.steampowered.com/app/1802920/
Купить игру в VKPlay- https://vkplay.ru/play/game/tearoftime_lm/
Купить игру в Epic Games Store — https://store.epicgames.com/ru/p/tear-of-time-lost-memory-add761
Страница ранней демо-версии на itch.io — https://simpra-org.itch.io/tear-of-time-ep1-demo
Другие ссылки на раннюю демо-версию игры:
https://77.md/hata1-g
https://77.md/hata1-m

AI варианты, FL звук двигателя, текстура-билборд

Добавляем роботам вариантов поведения — патруль, перенос грузов.

Пока ковырял AI наткнулся на интересные вещи:
Генератор звука двигателя в FL — https://youtu.be/lmI2YLxLvpc
Текстура ведущая себя как билборд, но без наклона — https://youtu.be/-ttCqgpNvD0

Простой гайд по AI с которого я начал — https://youtu.be/E-CfaDdjBic
Подробные уроки по AI из которых я узнал как научить роботов видеть(одно из видео) — https://youtu.be/cfizSLpfN64

Библиотека звуков — https://www.simpra.org/sound/

Мой ассет рыб — https://www.unrealengine.com/marketplace…

Моя игра — «Tear of Time: Lost memory»
Купить игру в Steam — https://store.steampowered.com/app/1802920/
Купить игру в VKPlay- https://vkplay.ru/play/game/tearoftime_lm/
Купить игру в Epic Games Store — https://store.epicgames.com/ru/p/tear-of-time-lost-memory-add761
Страница ранней демо-версии на itch.io — https://simpra-org.itch.io/tear-of-time-ep1-demo
Другие ссылки на раннюю демо-версию игры:
https://77.md/hata1-g
https://77.md/hata1-m

AI роботов на заводе, зарядная станция

Начал знакомство с искусственным интеллектом в Unreal engine, нужно сделать на завод роботов, научить их работать, ходить на зарядную станцию и обратно, и замечать игрока если попадается в поле зрения.

Простой гайд по AI с которого я начал — https://youtu.be/E-CfaDdjBic
Подробные уроки по AI из которых я узнал как научить роботов видеть(одно из видео) — https://youtu.be/cfizSLpfN64

Библиотека звуков — https://www.simpra.org/sound/

Мой ассет рыб — https://www.unrealengine.com/marketplace…

Моя игра — «Tear of Time: Lost memory»
Купить игру в Steam — https://store.steampowered.com/app/1802920/
Купить игру в VKPlay- https://vkplay.ru/play/game/tearoftime_lm/
Купить игру в Epic Games Store — https://store.epicgames.com/ru/p/tear-of-time-lost-memory-add761
Страница ранней демо-версии на itch.io — https://simpra-org.itch.io/tear-of-time-ep1-demo
Другие ссылки на раннюю демо-версию игры:
https://77.md/hata1-g
https://77.md/hata1-m

Дизайн уровня, двигаем мировые текстуры, devlog 173

Доделываем душевую, применяем, двигаем текстуры по мировым координатам

Библиотека звуков — https://www.simpra.org/sound/

Мой ассет рыб — https://www.unrealengine.com/marketplace…

Моя игра — «Tear of Time: Lost memory»
Купить игру в Steam — https://store.steampowered.com/app/1802920/
Купить игру в VKPlay- https://vkplay.ru/play/game/tearoftime_lm/
Купить игру в Epic Games Store — https://store.epicgames.com/ru/p/tear-of-time-lost-memory-add761
Страница ранней демо-версии на itch.io — https://simpra-org.itch.io/tear-of-time-ep1-demo
Другие ссылки на раннюю демо-версию игры:
https://77.md/hata1-g
https://77.md/hata1-m

Дизайн уровня, мировые текстуры, devlog 172

Доделываем душевую, применяем текстуры по мировым координатам

Библиотека звуков — https://www.simpra.org/sound/

Мой ассет рыб — https://www.unrealengine.com/marketplace…

Моя игра — «Tear of Time: Lost memory»
Купить игру в Steam — https://store.steampowered.com/app/1802920/
Купить игру в VKPlay- https://vkplay.ru/play/game/tearoftime_lm/
Купить игру в Epic Games Store — https://store.epicgames.com/ru/p/tear-of-time-lost-memory-add761
Страница ранней демо-версии на itch.io — https://simpra-org.itch.io/tear-of-time-ep1-demo
Другие ссылки на раннюю демо-версию игры:
https://77.md/hata1-g
https://77.md/hata1-m