41,从UE5.1迁移到UE5.8排坑全记录

作为一个古法编程爱好者,决定与时俱进,用AI进行UE5的那个肉鸽,毕竟不是研究,只是工程,甚至小demo,那就流水线吧,把主要精力用在有深度的知识的研究上,

看到大家说AI只能用5.8版本,好吧,那就开干。

原以为移植很简单,转成5.8,generate后,.sln很快出来,原以为不过如此。结果出现一个错误,不知所云。

双击RoughLike1.uproject,

直接弹出对话框,显示错误内容

The last build used an outdated BuildSettingsVersion, or the target still requires upgrading.

Please upgrade RoughLike1Editor.Target.cs:

Update the build settings version (Installed Engine Build & Source Build):

DefaultBuildSettings = BuildSettingsVersion.V7;

OR

Declare a unique build environment (Source Build only):

BuildEnvironment = TargetBuildEnvironment.Unique;

If you have already updated the target, would you like to rebuild & open the project?

那就把这两个.target.cs改为DefaultBuildSettings = BuildSettingsVersion.V7;

不过是配置问题,应该的。

现在应该可以了吧,结果

只有血量条,玩家呢?

按下~,双击bp_player0,发现能看到,说明paperzd插件没问题。

不放心,又查了下插件,果然没问题。

那就可能是摄像机的问题。

比如说,osg中camera可以addchild()不同的物体,谁说要加载场景中所有的物体呢?那么类推,UE应该也类似,那camera有问题?

添个灯光和几个圆锥体试试,果然运行后也看不到了

虱子多了不痒,一个个解决吧,先改下花屏问题,改成DX11

既然摄像机有问题,那就试试cameraActor,拖拽到场景,果然能看到

那就用CameraActor替代弹簧臂和摄像机组件。

复制代码
UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "Camera", meta = (AllowPrivateAccess = "true"))
TObjectPtr<ACameraActor> ViewCamera;

void AMyPaperZDCharacter::BeginPlay()

{

Super::BeginPlay();

复制代码
APlayerController* playerController = Cast<APlayerController>(Controller);
ULocalPlayer* localPlayer = playerController->GetLocalPlayer();
UEnhancedInputLocalPlayerSubsystem* subsystem = ULocalPlayer::GetSubsystem<UEnhancedInputLocalPlayerSubsystem>(localPlayer);
subsystem->AddMappingContext(DefaultMappingContext, 0);
FActorSpawnParameters SpawnParams;
ViewCamera = GetWorld()->SpawnActor<ACameraActor>(FVector::ZeroVector, FRotator::ZeroRotator, SpawnParams);
if (ViewCamera)
{
    ViewCamera->GetCameraComponent()->SetProjectionMode(ECameraProjectionMode::Orthographic);
    ViewCamera->GetCameraComponent()->SetAspectRatio(0.0f);
    ViewCamera->GetCameraComponent()->SetConstraintAspectRatio(false);
    ViewCamera->GetCameraComponent()->SetOrthoWidth(2048);

    ViewCamera->AttachToActor(this, FAttachmentTransformRules::KeepRelativeTransform);
    ViewCamera->SetActorRelativeLocation(FVector(0, 0, 1000));

    FVector2D ViewportSize;
    GEngine->GameViewport->GetViewportSize(ViewportSize);
    if (ViewportSize.Y > 0)
    {
        float TargetOrthoHeight = 1152.0f; // 你希望在纵向上看到的像素高度(自行微调)
        float NewOrthoWidth = TargetOrthoHeight * (ViewportSize.X / ViewportSize.Y);
        ViewCamera->GetCameraComponent()->SetOrthoWidth(NewOrthoWidth);
    }
    // 【重点】蓝图 X/Y/Z → 转成 C++ 旋转
    // 蓝图 X = Roll
    // 蓝图 Y = Pitch
    // 蓝图 Z = Yaw
    // C++ FRotator( Pitch, Yaw, Roll )
    // 所以 → FRotator( 蓝图Y, 蓝图Z, 蓝图X )
    double roll = 0;
    double pitch = -90.0;
    double yaw = -90.0;
    ViewCamera->SetActorRelativeRotation(FRotator(pitch, yaw, roll));

    playerController->SetViewTarget(ViewCamera);
}
摄像机果然OK了![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/1470e5fd7ce54cee86c05146379100d6.png)

但是画面乱七八糟了,

这下懵逼了,是zfighting还是材质?

查看了下地图

原来是材质问题

把 Masked 改为 Translucent,ok了

相关推荐
mengzhi啊1 天前
UE5 沙漠添加植物,然后在湖泊游泳。关键词:湖泊使用蓝图的重叠事件,湖泊的碰撞偏移。所有的物体都可以使用蓝图来使用它
ue5
Zhichao_978 天前
【UE5.8】VS2026安装
ue5
DolitD9 天前
UE像素流与云渲染技术方案对比分析
3d·云原生·ue5·云计算·图形渲染
Дерек的学习记录10 天前
Unreal Engine 5:第三人称运动系统和人物动画
开发语言·学习·ue5
努力学习的小廉13 天前
UE5 入门系列(三):核心框架类全解析
ue5
平行云14 天前
建筑BIM/3D可视化轻量级实时评审与分享方案
unity·ue5·3dsmax·实时云渲染·云桌面·云游戏·建筑bim
BugPhysician19 天前
影之刃零首发UE崩溃排查:着色器缓存、虚拟内存与驱动版本
ue5·影之刃零·影之刃零报错·影之刃零进不去·ue崩溃·ue引擎崩溃·ue5引擎崩溃
电子云与长程纠缠21 天前
UE5魂系游戏开发教程05
开发语言·学习·游戏·ui·ue5
fanfan_hongyun21 天前
UE5.1 蓝图调用C++方法
ue5
易知微EasyV数据可视化21 天前
UE5 中接入 GDAL:从vcpkg编译到插件打包
ue5