使用unreal engine5.3.2创建c++第一人称游戏

UE5系列文章目录

文章目录

前言

为了使用unreal engine5.3.2创建c++第一人称游戏,今天安装了Visual Studio 2022专业版。在ue5中创建c++工程,结果编译器报错:

严重性 代码 说明 项目 文件 行 禁止显示状态 详细信息

错误 NETSDK1004 找不到资产文件"D:\Program Files\Epic Games\UE_5.3\Engine\Source\Programs\Shared\EpicGames.OIDC\obj\project.assets.json"。运行 NuGet 包还原以生成此文件。 EpicGames.OIDC C:\Program Files\dotnet\sdk\8.0.204\Sdks\Microsoft.NET.Sdk\targets\Microsoft.PackageDependencyResolution.targets 266

第一感觉是跟 :NuGet 有关系

一、NuGet 简介

微软的官方解释:

适用于任何现代开发平台的基本工具可充当一种机制,通过这种机制,开发人员可以创建、共享和使用有用的代码。 通常,此类代码捆绑到"包"中,其中包含编译的代码(如 DLL)以及在使用这些包的项目中所需的其他内容。

对于 .NET(包括 .NET Core),共享代码的 Microsoft 支持的机制则为 NuGet,其定义如何创建、托管和使用面向 .NET 的包,并针对每个角色提供适用工具。

简单来说,NuGet 包是具有 .nupkg 扩展的单个 ZIP 文件,此扩展包含编译代码 (Dll)、与该代码相关的其他文件以及描述性清单(包含包版本号等信息)。 使用代码的开发人员共享创建包,并将其发布到公用或专用主机。 包使用者从适合的主机获取这些包,将它们添加到项目,然后在其项目代码中调用包的功能。 随后,NuGet 自身负责处理所有中间详细信息。

由于 NuGet 支持公用 nuget.org 主机旁边的专用主机,因此,可以使用 NuGet 包来共享组织或工作组专用的代码。 此外,你还可以使用 NuGet 包作为一种便捷的方式,将自己的代码用于除你自己项目之外的任何其他项目。 简而言之,NuGet 包是可共享的代码单元,但不需要暗示任何特定的共享方式。

二、解决方法:

第一种方法:

在visual studio 2022中:Tools -> NuGet Package Manager -> Manage NuGet Packages for Solution

你可以尝试运行NuGet包还原来生成缺失的文件。在Visual Studio中,你可以通过右键点击解决方案资源管理器中的解决方案,然后选择"管理NuGet程序包",再点击"还原"按钮来还原NuGet包。
第二种方法:

如果第一种方法没解决使用下面的方法

如果你在命令行中操作,可以在"程序包管理控制台"界面中使用dotnet restore命令,然后回车,来还原NuGet包。

再次编译工程

相关推荐
Solange__6 小时前
影视预演怎么用AI生成3D场景?从分镜、Blockout到镜头交付的完整流程
人工智能·游戏·3d·ai·自然语言处理·aigc·游戏策划
会编程的小孩6 小时前
C++ qt的安装
c++
郝学胜-神的一滴11 小时前
游戏设计:原型与开发 11:用概率与电子表格搞定骰子系统
程序人生·游戏·游戏策划·1024程序员节·游戏设计
小成2023032026512 小时前
C++~07补充
开发语言·c++
hold?fish:palm12 小时前
40 二叉树的直径
c++·leetcode
解决小子13 小时前
【虚幻引擎】【C++】【GAS框架】构建角色基类、属性集、数值钳制
c++·笔记·游戏引擎·虚幻·gas·能力系统
treesforest13 小时前
游戏账号安全风险分层方案:IP信号分层与人机复核实践
tcp/ip·安全·游戏·1024程序员节
lunar_coder14 小时前
【C++】如何解决智能指针的析构函数,如何实现shared_ptr的引用计数以及解决shared_ptr的循环引用
c++·1024程序员节
白白白小纯14 小时前
C++进阶.多态
c++
Raspberry_Pi_官方账号15 小时前
隆重推出《Raspberry Pi 复古游戏指南》
游戏·树莓派·diy·raspberry pi