You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
145 lines
7.3 KiB
Plaintext
145 lines
7.3 KiB
Plaintext
INTSourceChangelist:1569648
|
||
Availability:Public
|
||
Title:为虚幻引擎4设置Visual Studio
|
||
Crumbs: %ROOT%, GettingStarted, Programming
|
||
Description:关于设置Visual Studio以便使用UE4进行开发的技巧和技术。
|
||
|
||
设置Visual Studio和虚幻引擎4协同工作有利于提高开发人员使用UE4
|
||
的效率和整体用户体验。
|
||
|
||
[TOC(start:2)]
|
||
|
||
## 推荐设置
|
||
|
||
以下是为结合使用Visual Studio和虚幻引擎4的开发人员推荐的设置。
|
||
|
||
* 关闭 **Show Inactive Blocks(显示不活动的代码块)** 。如果您不关闭此项,在文本编辑器中,很多代码块会呈现出灰掉
|
||
状态。(_Options(选项) > Text Editor(文本编辑器) > C/C++ > Formatting(格式))_ 。
|
||
* 打开IntelliSense(智能编码)和"squiggles(波浪线提示)"功能,让它们正常运行。(请参照[Intellisense(智能编码), Live Errors(实时错误)和Squiggles(波浪线提示)](#Intellisense)部分)
|
||
* 在Visual Assist X (VAX)中关闭 **Format After Paste(粘帖后格式化)** 功能。这个功能有时候会导致格式变得混乱。(_VAX Options(VAX选项) > Advanced(高级) > Corrections(校正)_)
|
||
* 在解决方案浏览器中停用 **External(外部)** 文件夹, 它们会扰乱视图。(
|
||
在 _Options(选项) > Text Editor(文本编辑器) > C/C++ > Advanced(高级)_ 中 **Disable External Dependencies Folder(禁用外部依赖文件夹)** )
|
||
* 如果不需要 **Edit & Continue(编辑&继续)** 功能,请关闭它们。(_Options(选项) > Debugging(调试) > Edit and Continue(编辑并继续)_)
|
||
* 关闭 **Error List(错误列表)** 窗口。如果启用该功能,当您的代码中出现合法错误时 **Error List(错误列表)** 窗口会自动弹出
|
||
。但是,当和虚幻引擎结合应用时, **Error List(错误列表)** 会显示不正确的错误信息。建议您最好
|
||
禁用该窗口,并使用 **Output(输出)** 窗口来查看您的代码错误。这个窗口将仅显示
|
||
真正的错误。**要想禁用Error List(错误列表)窗口:**
|
||
|
||
* 如果 **Error List(错误列表)** 窗口处于打开状态,请关闭它。
|
||
* 从 **Tools(工具)** 菜单中, 打开 **Options(选项)** 对话框。
|
||
* 选择 **Projects and Solutions(项目和解决方案)** 并取消选中 **Always show error list if build finishes with error(如果编译中出现错误总是显示错误列表)** 选项。
|
||
|
||
|
||
(#Intellisense)
|
||
## Intellisense(智能编码)、Live Errors(实时错误)和Squiggles(波浪线提示)
|
||
|
||
虚幻引擎4项目现在可以正常支持 IntelliSense(智能编码)功能,包括实时Error List(错误列表) 和 "squiggles(波浪线提示)"!
|
||
(请参照以下介绍获得如何启用它的信息。)
|
||
|
||
VC10的IntelliSense功能可以在您编写代码的过程中重新编译C++。这比仅检查
|
||
VAX的语法强大很多: VC10使用完整的C++编译器,可以验证每一行代码。这个功能非常强大并且将会
|
||
加快您的工作流程!
|
||
|
||

|
||
|
||
当其和波浪线提示功能结合使用时,如果您正在查看的文件有任何IntelliSense 错误,都可以在Error List(错误列表)中看到。
|
||
您可以通过Error List(错误列表)的右击菜单来打开或关闭该功能。
|
||
|
||

|
||
|
||
由于Squiggles(波浪线提示)功能不能和虚幻引擎4项目协同工作,您可能已经禁用了它们。请确保点击
|
||
C/C++ Advanced(高级)选卡,并使用以下设置。
|
||
|
||

|
||
|
||
当您打开一个C++文件时,您可以通过查找这个图标来判断IntelliSense编译器是否正在“工作”:
|
||
|
||

|
||
|
||
### 实现细节
|
||
|
||
* 当编写代码时显示波浪线提示有时候要花几秒钟的时间。
|
||
* 这是因为我们有很多包含文件,且IntelliSense目前不使用预编译头文件。
|
||
* 有时候您会看到“误报的”IntelliSense 错误。以下是几种可能的原因。
|
||
* IntelliSense编译器(EDG)比MSVC编译器更严格。
|
||
* 某些针对IntelliSense的#defines设置和正常编译时的设置不同。
|
||
* IntelliSense编译的C++总是被当做32位对待。
|
||
* 如果绝对需要,您可以把代码封装到 `#ifdef __INTELLISENSE__` 中,以消除波浪线提示。
|
||
* IntelliSense的错误的表达方式和VC++ 编译器的错误的表达方式略有不同。他们只是表达不同而已。
|
||
* 头文件中的Squiggles(波浪线提示)功能通过编译包含它的已知 `.cpp` 对应的头文件来进行工作。
|
||
* 有时候IntelliSense把这个功能搞乱了,导致您会在头文件中看到波浪线提示。
|
||
* 如果需要,您可以增大 **Max Cached Translation Units(最大缓存变换单元)** 设置。
|
||
* 它会使用更多的内存,但可能会提高一点反应速度。
|
||
* 有少量C++文件还不能和IntelliSense相兼容。
|
||
* Unreal Build Tool有一个新的 `-IntelliSense` 选项。
|
||
* 这将为我们的所有项目文件产生IntelliSense属性表。
|
||
* 当添加了新的模块或者项目包含发生改变时仅需要重新运行它即可。
|
||
|
||
|
||
## UnrealVS 插件
|
||
|
||
[INCLUDE:Programming/Development/VisualStudioSetup/UnrealVS#Overview]
|
||
|
||
[PUBLISH:Rocket]
|
||
[REGION:note]
|
||
UnrealVS插件不能和Visual Studio 2012精简版协同工作。它仅能和Visual Studio 2012 专业版相兼容。
|
||
[/REGION]
|
||
[/PUBLISH:Rocket]
|
||
|
||
请参照[](Programming/Development/VisualStudioSetup/UnrealVS)页面
|
||
获得设置及使用该插件的信息。
|
||
|
||
## 调试
|
||
|
||
Visual Studio支持通过‘可视化查看器’来扩展调试器,从而轻松地查看常见的虚幻数据类型,
|
||
比如对象FNames 和动态数组。根据您所使用的Visual Studio 2010或Visual Studio 2012的不同,
|
||
这个功能的设置也有所区别。
|
||
|
||
[PUBLISH:Licensee]
|
||
### 针对Visual Studio 2010的可视化查看器设置
|
||
|
||
虚幻引擎4包含了一些针对Visual Studio中的 `autoexp.dat` 文件的附加内容,使您可以
|
||
在调试器中轻松地查看UE4数据类型(array, name, map等)。
|
||
|
||
可以在以下位置找到这些附加内容:
|
||
|
||
//depot/UE4/Engine/Extras/VisualStudioDebugging/AUTOEXP.DAT_addons.txt
|
||
|
||
您可以设置环境变量 `_vcee_autoexp` 为 `AUTOEXP.DAT_addons.txt` 文件的本地路径,
|
||
从而使得可以自动包含这个文件中的内容。这意味着不需要将该内容融合到 `autoexp.dat`文件中。
|
||
|
||
另一个选择是将这些内容融合到您的 Visual Studio 2010 `autoexp.dat` 文件中,
|
||
可以在以下位置找到该 `autoexp.dat` 文件 (默认):
|
||
|
||
C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\Packages\Debugger\autoexp.dat
|
||
[/PUBLISH:Licensee]
|
||
|
||
### 针对Visual Studio 2012的可视化查看器设置
|
||
|
||
[PUBLISH:Licensee]
|
||
您会发现UE4发布内容包含了具备该可视化查看器逻辑的文件。
|
||
|
||
//depot/UE4/Engine/Extras/VisualStudioDebugging/UE4.natvis
|
||
[/PUBLISH:Licensee]
|
||
|
||
[PUBLISH:Rocket]
|
||
您会发现您的安装文件中包含了具备该可视化查看器逻辑的文件:
|
||
|
||
[ROCKETINSTALL]/Engine/Extras/VisualStudioDebugging/UE4.natvis
|
||
[/PUBLISH:Rocket]
|
||
|
||
复制该文件到以下位置:
|
||
|
||
[VSINSTALLDIR]/Common7/Packages/Debugger/Visualizers/UE4.natvis
|
||
[USERPROFILE]/My Documents/Visual Studio 2012/Visualizers/UE4.natvis
|
||
|
||
[REGION:warning]
|
||
复制该文件到您的Visual Studio安装目录内可能需要管理员权限。
|
||
[/REGION]
|
||
|
||
<!--
|
||
## 提示和技巧
|
||
|
||
这里是一些技巧,可以使您在编程时更加轻松,效率更高。
|
||
-->
|