Unreal Engine VR
207 subscribers
7 photos
6 videos
27 files
79 links
Материалы и посты о разработке VR с помощью Unreal Engine.

чат: @unrealengine_vrchat

rutube.ru/channel/22560044
youtube.com/@8bit-sage
instagram.com/8bitsage
tiktok.com/@8bitsage

Донат: boosty.to/8bitsage/donate

Вопросы: @this8bitsage
Download Telegram
Всем привет!

Сейчас разбираю VRE плагин и частично переношу код в свой пет проект.

наткнулся на использование #UE_INLINE_GENERATED_CPP_BY_NAME(YourClass_name)

Ранее ни в одном курсе об этом не слышал, поэтому напишу от себя.

Если вы разрабатываете VR-проекты на Unreal Engine 5.1 или новее, то наверняка стоит использовать макрос UE_INLINE_GENERATED_CPP_BY_NAME(FileNameClass). Этот макрос напрямую и упрощает жизнь при компиляции и линковке.

Как пользоваться? Убедитесь, что у вас Unreal Engine 5.1+

Пример h файл

// MyActor.h
#pragma once

#include "CoreMinimal.h"
#include "GameFramework/Actor.h"
#include "MyActor.generated.h"

UCLASS()
class MYVRPROJECT_API AMyActor : public AActor
{
GENERATED_BODY()

public:
AMyActor();
...
};


cpp файл

// MyActor.cpp
#include "MyActor.h"
#include UE_INLINE_GENERATED_CPP_BY_NAME(MyActor)

#include "XRMotionControllerBase.h" //чисто для примера
#include и другие подключения

AMyActor::AMyActor()
{
PrimaryActorTick.bCanEverTick = false;
...
}



Преимущества использования UE_INLINE_GENERATED_CPP_BY_NAME:

1. Уменьшение количества файлов для компиляции
Ранее каждый .gen.cpp файл компилировался отдельно, что увеличивало общее количество файлов, обрабатываемых компилятором. Инлайнинг этих файлов с помощью макроса снижает общее количество компилируемых единиц, что может ускорить процесс сборки.

2. Совместимость с инструментами разработки
Некоторые IDE, такие как JetBrains Rider, добавили поддержку этого макроса, обеспечивая корректную работу с исходным кодом Unreal Engine.
👍2🔥1