2017-08-05 15:09:59 qq_35534985 阅读数 1933
  • 从这里开始虚幻4-Editor介绍 v4.18

    本课程系列取名英译系列,是录制人员参考国外英文原版经典教程,结合中国人的习惯录制而成。希望能够给大家以帮助。从这里开始虚幻4系列教程,是Unreal的官方发布的入门教学,非常经典,是学习Unreal的佳入口。

    2396 人正在学习 去看看 杨石兴

《学习笔记记录》

新人接触UE4,在此发帖主要用于记录学习内容,同时希望可以帮助其他朋友

下载好后的Ureal4AR插件解压后文件目录如图所示

我使用的UE4是4.16.2版本

新建一个UE4项目,项目选择C++类型,Basic Code,不需要包含Starter Content

项目名称命名为Unreal4AR_test,开始创建项目。

VS2015打开后,注意等待其分析完成后再进行后续操作

然后找到创建的项目的文件夹,将之前下载的插件中解压的文件夹中ARSampleUEv4_16文件夹中的所有文件复制到项目文件夹中

然后在UE4编辑器中选择File->RefreshVisual Studio Projece

此时关闭VS和UE4编辑器,打开Epic Games Launcher,选择工作,在我的工程中选择刚才创建的Unreal4AR_test工程,打开后即可使用。


如果是Personal licenes版本要注意执行完Refresh Visual Studio Project命令后,返回VS2015,更新VS中的文件,一定要等待VS扫描完所有文件后再进行后面的操作。

注:Editor demo版的Unreal4AR是不能打包生成的

2016-12-12 16:10:30 qq_20309931 阅读数 3741
  • 从这里开始虚幻4-Editor介绍 v4.18

    本课程系列取名英译系列,是录制人员参考国外英文原版经典教程,结合中国人的习惯录制而成。希望能够给大家以帮助。从这里开始虚幻4系列教程,是Unreal的官方发布的入门教学,非常经典,是学习Unreal的佳入口。

    2396 人正在学习 去看看 杨石兴

Unreal Engine 4 C++ 插件介绍

好记性不如烂笔头啊,还是记录一下!


1.创建插件

创建插件的步骤很简单,但是很容易出错:

  1. 关闭项目,在项目目录下创建Plugins文件夹
  2. 拷贝一个空白插件(BlankPlugin)到Plugins文件夹下(BlankPlugin位于路径Engine/Plugins/Developer/BlankPlugin)
  3. 把文件夹,文件名,文件内容里面所有的 BlankPlugin 替换为你的插件名字
  4. 重新生成项目
  5. 重新编译项目

会发现你的项目中已经自动检测出了插件:

项目示例

其中<插件名称>.uplugin为插件的描述文件:

{
    "FileVersion" : 3,
    "Version" : 1,
    "VersionName" : "1.0",
    "FriendlyName" : "MyTestPlugin",
    "Description" : "Test Plugin Develop",
    "Category" : "Tests",
    "CreatedBy" : "Colocasia",
    "CreatedByURL" : "",
    "DocsURL" : "",
    "MarketplaceURL" : "",
    "SupportURL" : "",
    "EnabledByDefault" : true,
    "CanContainContent" : false,
    "IsBetaVersion" : false,
    "Installed" : false,
    "Modules" :
    [
        {
            "Name" : "MyTestPlugin",
            "Type" : "Developer",
            "LoadingPhase" : "Default"
        }
    ]
}

描述文件不能乱改,否则会导致加载失败,需要修改可以参考官方文档:描述器文件格式

插件中也有项目的配置文件,<插件名称>.Build.cs

// Copyright 1998-2016 Epic Games, Inc. All Rights Reserved.

namespace UnrealBuildTool.Rules
{
    public class MyTestPlugin : ModuleRules
    {
        public MyTestPlugin(TargetInfo Target)
        {
            PublicIncludePaths.AddRange(
                new string[] {
                    // "MyTestPlugin/Public"
                    // ... add public include paths required here ...
                }
            );

            PrivateIncludePaths.AddRange(
                new string[] {
                    "MyTestPlugin/Private"
                    // ... add other private include paths required here ...
                }
            );

            PublicDependencyModuleNames.AddRange(
                new string[]
                {
                    "Core",
                    "CoreUObject"
                    // ... add other public dependencies that you statically link with here ...
                }
            );

            PrivateDependencyModuleNames.AddRange(
                new string[]
                {
                    // ... add private dependencies that you statically link with here ...
                }
            );

            DynamicallyLoadedModuleNames.AddRange(
                new string[]
                {
                    // ... add any modules that your module loads dynamically here ...
                }
            );
        }
    }
}

然后配置完后就可以像引擎编写模块一样,愉快的编写代码了。


2.C++静态链接插件

在说此方法之前,先引用下官网的说明,不是很推荐用这种方法:

为了使插件真正可插拔,我们通常不鼓励为插件添加依赖关系。

但是如果一个游戏各个系统都是一个个插件,或者有人发布了很好用的代码类的工具插件,就可以用下面的方式进行静态链接。(静态链接后如果找不到插件编译会报错)

在你需要依赖的模块的<模块名称>.Build.cs中加入下列代码:

PrivateDependencyModuleNames.AddRange(
    new string[] {
        "MyTestPlugin"
    }
);

PrivateIncludePathModuleNames.AddRange(
    new string[] {
        "MyTestPlugin"
    }
);

这样就可以访问插件中的接口了,不过这里有个大坑:

插件中的要让其他模块访问的接口要符合模块API的标准

这个问题曾经困扰了我很久:

/**
 * Example of declaring a UObject in a plugin module
 */
UCLASS()
class MYTESTPLUGIN_API UMyTestObject : public UObject
{
    GENERATED_UCLASS_BODY()
};

比如这个例子中:你想UMyTestObject被游戏中的模块创建,必须加入MYTESTPLUGIN_API这个标记,否则会报无法找到定义的LINK2019错误。加入的标记符合<插件名称>_API,注意插件名称必须为大写。

2017-08-05 10:53:11 qq_35534985 阅读数 6631
  • 从这里开始虚幻4-Editor介绍 v4.18

    本课程系列取名英译系列,是录制人员参考国外英文原版经典教程,结合中国人的习惯录制而成。希望能够给大家以帮助。从这里开始虚幻4系列教程,是Unreal的官方发布的入门教学,非常经典,是学习Unreal的佳入口。

    2396 人正在学习 去看看 杨石兴

《学习笔记记录》

新人接触UE4,在此发帖主要用于记录学习内容,同时希望可以帮助其他朋友

在网上看到很多AR的视频,感觉很有意思,就研究了一下,感觉UE4好像不能直接进行AR的开发。通过查找资料,看到一款UE4开发AR的插件,感觉可能很强大,就下载下来尝试一下。

插件名称:Unreal4AR

官方网址:http://www.unreal4ar.com/

打开后出现如下所示界面

此处简要介绍了一下插件的功能,说明插件可以让开发人员使用UE4的蓝图脚本进行项目开发。

点击橙色按钮“GET THE PLUGIN NOW!”获取插件。然后弹出如下界面

该界面显示了UNREAL4AR插件的特性和支持的UE4版本,及目前插件的最新版本v1.8。要想获得插件,还需选择权限,这里分为三种。


第一种Editor demo是免费的,应该只能编辑学习使用,不能打包生成。

第二种是个人开发使用,收费99欧元,用于个人开发

第三种是商业开发使用,收费249欧元,用于商业开发

我这里选择的是第一种,然后点击按钮“ADD TO CART”

然后点击“Proceed to checkout”,进行确认,下一个界面会要求填写信息,我随便写的也可以通过。

然后点击“PLACE ORDER”按钮,即可进入下载页面

然后再点击Download后面的连接就可以下载插件了。

2019-01-29 15:04:31 ywjun0919 阅读数 529
  • 从这里开始虚幻4-Editor介绍 v4.18

    本课程系列取名英译系列,是录制人员参考国外英文原版经典教程,结合中国人的习惯录制而成。希望能够给大家以帮助。从这里开始虚幻4系列教程,是Unreal的官方发布的入门教学,非常经典,是学习Unreal的佳入口。

    2396 人正在学习 去看看 杨石兴

Unreal自定义编辑器有两种方式 :

   1. 插件方式

   2. 自定义编辑器模块

Unreal中的编辑器都是使用Slate进行布局和创建

插件方式

1. 创建项目:选择基础代码

2. 选择 编辑->插件

 

3. 点击 新插件 按钮

4. 选择编辑器Standalone窗口

5. 创建完成,并不会立即显示编辑器菜单,下图并没有添加新的东西

6.  重启编辑器

7. 打开插件窗口看看

8. 分析

前面说过,ShutdownModule并不是关闭窗口的时候调用,因此,要想关闭窗口的时候调用需要注册关闭事件

void FTestEditorModule::PluginButtonClicked()
{
	FGlobalTabmanager::Get()->InvokeTab(TestEditorTabName)->
		SetOnTabClosed(SDockTab::FOnTabClosedCallback::CreateLambda([this](TSharedRef<SDockTab> Self) {
		this->OnWindowClose(Self);
	}));
}

void FTestEditorModule::OnWindowClose(TSharedRef<SDockTab> DockTab)
{
    UE_LOG(LogTemp, Display, TEXT("FTestEditorModule Close"))
}

 

2018-11-15 17:21:01 xiaoxiaolooi 阅读数 256
  • 从这里开始虚幻4-Editor介绍 v4.18

    本课程系列取名英译系列,是录制人员参考国外英文原版经典教程,结合中国人的习惯录制而成。希望能够给大家以帮助。从这里开始虚幻4系列教程,是Unreal的官方发布的入门教学,非常经典,是学习Unreal的佳入口。

    2396 人正在学习 去看看 杨石兴

unreal GIS 模块

unreal4 源代码模块

自从unreal4 开源以来,osg ogre 渐渐不能用来吃饭,于是本着听人劝吃饱饭的思想,转头unreal门下,继续为混口饭事业,投身革命。可是unreal的c++编程基本没有什么例子可看,只好自己从头做起。

  1. 开发者驱动
  2. 编辑器
  3. 工程目录
  4. 基础框架代码
  5. 第三方库

在这里插入图片描述
这个是文档目录,代码量难以阅读,决定从以下三方向入手,第一次写文字,真心不容易。
1.案例编写使用unreal4 的普通界面搭建自定义三维场景 介绍 editor层的基础代码
2.添加GIS地图属性信息 介绍 驱动层的基础代码
3.程序化植物合成 介绍 与unreal基础平台结合
以后会陆续跟新到这里
推荐大家使用 阿里云 https://promotion.aliyun.com/ntms/yunparter/invite.html?userCode=ic4sfgeu

Unreal里的动画

阅读数 1623

没有更多推荐了,返回首页