这个月勉勉强强才写了一篇,都快月底了,都还没有写第二篇博客的冲动,证明这个月确实收获甚少,有点状态不佳,懒毒入骨啊.刚刚看了这个月其实已经写了三篇,然而事实是这博客还有另外一个人也在更新文章,博主并没有人格分裂,呵呵,好冷... 最近迷迷糊糊地在用UE4写一些功能,本来也没在意一个简单的枚举变量有多麻烦,然后自己确实也因为这个东西打断一点工作时间. 如果只是在C++中使用的话,都还没什么问题,跟平常的定义一样就行,如果要在蓝图中使用的话,需要用UPROPERTY标记他可在蓝图中编辑调用,然后,他…
我的目的非常简单,点击按钮,播放或暂停场景中的视频 1.准备了一个mp4视频资源,为视频资源创建了一个Media Texture,在Media Player中选择导入进来的视频资源,再为Media Textue创建一个Material 2.再选择User Interface/Widget Blueprint创建UI,命名MyUI 3.双击MyUI,创建一个图片,我希望全铺于屏幕,于是我在Anchors里选择了全铺,然后再Appearance/Image选择开始的创建的Media Material…
首先先熟悉几个UE4常用的类 AGameMode(控制整个项目的逻辑) The GameMode defines the game being played. It governs thegame rules, scoring, what actors are allowed to exist in this game type, andwho may enter  the game. GameMode定义了游戏开始运行,它决定了游戏的规则,得分,允许谁退出这个游戏,或加入这个游戏等. 同时,G…
做C++项目的时候遇到了一个小地图的问题,从网上找了个蓝图的思路,转载一下. 原文:https://www.engineworld.cn/thread-3835-1-1.html 本文使用ue4提供的SceneCapture2D(场景照相机)来创造一个游戏中俯瞰的实时小地图,并将其固定显示在界面左上角. 此例子仅说明正交相机和UI用户界面的基本使用. 首选,我们需要拖入一个SceneCapture2D组件到场景, 此相机默认使用的是透视投影,我们需要在它的属性中设置投影模式为正交投影,即设置属性…
在eclipse或者myeclipse下构建maven项目,该项目由多个子模块组成. 1.创建一个父项目 NEW -->project-->maven-->maven Project,点击下一步,进入new maven Project的Select project name and location界面 ,什么也不做,直接下一步到Select an Archetype界面. 在这个界面中选择maven-Archetype-site-simple,然后选择下一步,进入选择Enter a g…
当不想新建一个数组对象的时候,就可以使用“Make Array”创建一个数组…
1.简介 在tableview中又默认的cell格式,其中组织如下: <截取自官网文档> 最终的在页面上默认的cell也只能像上述那样的显示效果,如果这种要是无法满足我们的界面要求,那么我们可以自定义cell来进行创建. 2.实现 目标:我们需要制作如下一个table,它的cell高度宽度和排版都是一样的,所以非常适合使用xib来定制cell. 1. 初始化工程后我们将table的数据存放在plist中: 2.在controller中我们以懒加载的方式将plist数据加载进来 详细方法可参考[…
一 往关卡中放置物体 二 Static Mesh 和 BSP 从今天开始我们要建立一个类似CF游戏的场景,不写一句代码,纯蓝图实现. 三 英语学习 今天早上开会,经理说了一件让我震惊的事情,她说最近大Boss在一直在上海,在办公司要说英语,开会也用英语,不然被抓到有被开除的危险,我的英语很不好,心累,所以要抓紧时间学习英语,一下是今天的学习总结: 感谢您的阅读,若有不足之处,欢迎指教,共同学习.共同进步. 博主网址:http://www.cnblogs.com/majianchao/ 如您喜欢,…
.h UFUNCTION(BlueprintImplementableEvent, meta=(DisplayName = "LoginSuccess")) void LoginSuccess(); .cpp LoginSuccess();…
如果参数类型带上“&” void URegisterUserWidget::Login(FString& NickName, FString& Password, FString& RePassword) { common.print(NickName + "," + Password + "," + RePassword); } 在蓝图中则会变成输出参数:…
原文地址:http://demo.netfoucs.com/u011707076/article/details/44036839 前言 寒假回家到现在已经有十多天了,这些天回家不是睡就是吃....哎╮(╯▽╰)╭,今天早上一觉醒来,突然得知,UE4免费了,这绝对是个好消息,前不久我还在纠结怎么申请校园账号呢o(╯□╰)o.迫不及待打开电脑下载了UE引擎的一个类似管理的客户端,在里面最醒目的一栏,看到一个令人哭笑不得的导航,如下图: EPIC这是要逆天的节奏吗?不过不管他了,接下来,我们便一同学…
接着上节我们继续学习,现在我们来创建一些NPC(non-playable characters,非玩家角色).在这个游戏中,当我们靠近NPC时,它们会做出相应的反应. 一 创建C++类 1) 在UE编辑器中,打开文件-新建C++类,选择从Character(角色)类继承,然后命名子类为NPC. 2) 编写代码.打开NPC.h文件: 添加头文件:(注意包含头文件必须在#include "NPC.generated.h"这一行前面加) #include "UObjectGloba…
先大量使用蓝图制作项目,后续再用C++把复杂的蓝图重写一遍,用C++代码按照蓝图依葫芦画瓢就可以了,很简单,但需要遵守一些原则: 第一种方法:使用继承 一.创建一个C++类作为蓝图的父类(C++类继承蓝图一样的父类),在UE4中修改蓝图的父类. 二.C++类中的方法.成员变量与蓝图一一对应,并且方法和成员变量名称不能与蓝图的重复. 三.A蓝图不能直接使用B蓝图的变量,A蓝图把要公开的变量封装在函数内返回,并且只返回UE4自带的基础变量类型,不能返回自定义类型,以方便C++重写时返回C++中的成员…
目录 UObject Actor种类 AActor APawn(可操控单位) AController(控制器) AGameMode(游戏模式) AHUD(HUD) ... Component种类 UActorComponent(基本组件) USceneComponent(场景组件) UChildActorComponent(子演员组件) UStaticMeshComponent(静态网格组件) ... 总结 参考 引擎版本:Unreal Engine 4.22 UObject UE4的最基础类型…
虽然有人建议UE4使用C++创建VR项目,能避免一些坑爹的错误,但是我用C++创建,竟然问题更多,还存在创建不了的情况,也不知道是不是我的操作问题,快疯了. 于是我还是选择了蓝图创建VR项目,但是... 可能是写代码习惯了,蓝图用着相当别扭,而且有些功能甚至没有,我也不知道,反正是没找到. 最后,折中,用C++来写部分功能,再在蓝图中调用,这里就写了应用在VR手柄上的一个射线拾取,为了让用户能更好的操作,我们需要将射线在场景中绘制出来. 射线拾取 //起点 终点 FHitResult RayGe…
Spring Boot的由来 相信大家都听说过Spring框架. Spring从诞生到现在一直是流行的J2EE开发框架. 随着Spring的发展,它的功能越来越强大,随之而来的缺点也越来越明显,以至于发展到后来变得越来越臃肿,使用起来也非常的麻烦. 到后来由于过于强调配置的灵活性,有时即使只为了加入一个简单的特性,而需要相当多的XML配置,从而被人们诟病为"配置地狱"! 后来许多优秀的服务端框架涌现出来,比如基于JavaScript的nodeJS,基于Python的Django,Fla…
1.简介 代码库 正如之前博客介绍的,xib可定义页面的某个部分,特别当此部分区域的view集中并且还有一些相互关联性(如隐藏等)是i特别适合使用xib来进行封装. 本文为[How to]使用自定义cell进行tableview的创建,适用于cell样式不发生变化的情况的后续.在本文中需要在tableview的footview中增加一个加载 按钮用于模拟加载更多数据的场景.如下图: 2.实现 1.创建xib文件 在xib中load more ing view为隐藏状态,对于进度圈也有特殊如下设置…
http://aigo.iteye.com/blog/2281373 原文作者:@玄冬Wong 相关内容: C++实现动态加载的问题:LoadClass<T>()和LoadObject<T>()  http://aigo.iteye.com/blog/2281558C++实现动态加载UObject:StaticLoadObject():以Texture和Material为例 http://aigo.iteye.com/blog/2268056 这里说的静态加载指的是必须在构造函数中…
在UE4编辑器中,打开内容浏览器,右击鼠标,创建传说中的行为树: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvQTM2MzA2MjM=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="" /> 之后便会得到存在一个根节点的空的行为树: 右側是设置行为树的黑板资源,此资源可自己创建与定义.实质就是不同bot之间协调…
目录 蓝图 蓝图命名规范 蓝图优化 暴露C++至蓝图 暴露C++类 暴露C++属性 暴露C++函数 暴露C++结构体/枚举 暴露C++接口 蓝图和C++的结合方案 使用继承重写蓝图 使用组合重写蓝图 方案比较 参考 蓝图 大家都知道,蓝图是UE4提供的极其容易上手的一种可视化脚本,更具体的就不说了. 纯靠蓝图搭建的UE4游戏是存在的,但是这类游戏往往优化很差(除非游戏玩法本身的性能需求不高).更合适的流程往往需要程序员编写C++代码创建一些蓝图可用元素,而设计师再通过蓝图快速搭建游戏. 蓝图命名…
一.使用dotnet命令创建(适用于.NET Core,可以创建包含任意数量个项目的模板,但不会出现在vs的新建项目模板中) 官方文档:https://docs.microsoft.com/zh-cn/dotnet/core/tools/custom-templates 拷贝所有要用作模板的项目到新建文件夹 在新建文件夹下添加./.template.config/template.json 文件 编辑template.json文件,内容如下: { "$schema": "ht…
平台集成和构建开发环境:LPCXpresso 54608入门指南 本文主要介绍了创建一个适用于LPCXpresso54608开发板的Embedded Wizard UI应用程序所需的所有必要步骤.请一步一步仔细按照这些说明操作,以确保您能够将目标上的所有东西全部运行. 此外,本文假设您熟悉Embedded Wizard UI的基本概念. 先决条件 首先,你需要有以下硬件资源: ■    NXP的LPCXpresso54608开发板 ■    USB线缆,连接开发板到计算机. 确保你已经安装了以下…
    一.创建方式分类: 命令 vs 配置文件 Kubernetes 支持两种方式创建资源:   1.用 kubectl 命令直接创建(适用于少数的pod创建) kubectl run httpd-app --image=reg.yunwei.edu/learn/httpd:latest --replicas=2   1)在命令行中通过参数指定资源的属性. [root@cicd ~]# kubectl run httpd-app --image=reg.yunwei.edu/learn/htt…
前言 当可以把MagicaVoxel的静态模型导入到UE4后,我又开始不满足了.默认第三人称蓝图的"汽车碰撞人偶(雾)"与场景中的体素画风格格不入,于是,我便想着用自己建造的体素画风人物创建一个第三人称蓝图,于是我又再次进行了尝试(谁叫UE4的MarketPlace里面没有像Unity那样友好的插件呢). 在开始之前,先说明一下我使用的工具:MagicaVoxel,Maya2018(其实我也不想用,但是某些骨骼处理上还是Maya具有很强的优势.Blender应该也可以,不过我并没有找到…
1.继承Thread类方式 这种方式适用于执行特定任务,并且需要获取处理后的数据的场景. 举例:一个用于累加数组内数据的和的线程. public class AdditionThread extends Thread { private int sum = 0; private int[] nums; ​ public AdditionThread(int[] nums, String threadName) { super(threadName); this.nums = nums; } ​…
1.继承Thread类 public class MyThread extends Thread { public MyThread() { } public void run() { for(int i=0;i<10;i++) { System.out.println(Thread.currentThread()+":"+i); } } public static void main(String[] args) { MyThread mThread1=new MyThread…
概述 描述 允许一个对象在其内部状态改变时改变它的行为,对象看起来似乎修改了它的类. 其别名为状态对象(Objects for States),状态模式是一种对象行为型模式. 有限状态机(FSMs) 拥有状态机所有可能状态的集合 状态机同时只能在一个状态 一连串的输入或事件被发送给状态机 每个状态都有一系列的转移,每个转移与输入和另一状态相关 动画状态机系统.行为树系统来理解 并发状态机 有些状态需要并行执行,例如动画状态机,经常分为上半身动画与下半身动画融合,如装备动作.射击动作.换弹动作与行…
创建关卡脚本 蓝图具有和虚幻3中Kismet一样的功能,每个关卡都由自己的蓝图,他可以: 引用和操控actors 控制使用Matinee的过场 管理关卡流,存档点以及其他关卡相关的系统 和关卡中的类蓝图(Class Blueprint)交互,从而读写变量和触发事件 创建交互式游戏对象 Make interactive assets such as doors, switches, collectible items and destructible scenery. 使用CONSTRUCTION…
目录 11.1 本篇概述 11.2 RDG基础 11.2.1 RDG基础类型 11.2.2 RDG资源 11.2.3 RDG Pass 11.2.4 FRDGBuilder 11.3 RDG机制 11.3.1 RDG机制概述 11.3.2 FRDGBuilder::AddPass 11.3.3 FRDGBuilder::Compile 11.3.4 FRDGBuilder::Execute 11.3.5 RDG机制总结 11.4 RDG开发 11.4.1 创建RDG资源 11.4.2 注册外部资…