赞
踩
目前如果你想在 UE4 里创建一个 Program 工程的话,存在两点限制,第一需要将工程源文件都放在 Engine/Source/Programs 目录下,第二是必须使用源码版本的引擎来编译。一般来说也没什么问题,但是有些时候会带来一些问题,比如你的 Program 有着特定的用途只和特定的项目相关,放在引擎目录下稍显不合适,会污染引擎代码结构。怎么样解决这两点限制,构建更加干净的项目?
本文的示例工程地址:MyProject,测试的引擎版本为:4.24
首先随便创建一个游戏工程,如果 MyProject,目录结构如下
- MyProject
- |---MyProject.uproject
- |---Config
- |---Content
- |---Source
- |---MyProject.Target.cs
- |---MyProjectEditor.Target.cs
- |---MyProject
- |---MyProject.Build.cs
- |---MyProject.cpp
- |---MyProject.h
- |---MyProjectGameModeBase.cpp
- |---MyProjectGameModeBase.h
类似引擎目录结构,在 Source 目录下新建两个子目录:Programs 用来放所有的 Program 工程模块;Runtime 用来放游戏相关的工程模块。然后将原来 Source 目录下的文件全部复制的 Runtime 目录中,并复制引擎的空工程示例 BlankProgram 工程到 Programs 目录中,并改个新名字 MyBlankProgram(UE4中各个Target名字全局不能冲突),新的结构如下
- MyProject
- |---MyProject.uproject
- |---Config
- |---Content
- |---Source
- |---Runtime // 新建的目录,将之前的 Source 目录下的内容直接平移进来
- | |---MyProject.Target.cs
- | |---MyProjectEditor.Target.cs
- | |---MyProject
- | |---MyProject.Build.cs
- | |---MyProject.cpp
- | |---MyProject.h
- | |---MyProjectGameModeBase.cpp
- | |---MyProjectGameModeBase.h
- |---Programs // 新建的目录,用来放各种工具项目
- |---MyBlankProgram
- |---MyBlankProgram.Build.cs
- |---MyBlankProgram.Target.cs
- |---Private
- | |---MyBlankProgram.cpp
- | |---MyBlankProgram.h
- |---Resources
- |---Windows
- |---BlankProgram.ico

右键 MyProject.uproject 文件,选择 Generate Visual Studio project files,生成工程文件,此时就会发现 MyBlankProgram 工程正确生成到 Solution 中的 Programs 目录下,如图
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。