Dream World

talk is cheap, show me the code

虚幻4 C++ UFUNCTION 宏 参数解析

虚幻引擎c++中定义了许多宏,如UCLASS(),UPROPERTY(),UFUNCTION(),USTRUCT()等,其中UFUNCTION()宏添加在函数前面,填入适当参数可以帮助函数实现特定的功能, 如允许蓝图调用该函数。这里总结下UFUNCTION()宏几个重要的参数。BlueprintC...

2016-10-12 20:59:32

阅读数 1510

评论数 0

UE4 性能优化方法(转载)

戏帧率很低,或者有卡顿的现象,可能会有很多原因,这时候不要乱猜,比如是不是人物太多了或者渲染的东西太多了,这样猜意义是不大的,可能会浪费很多时间,但是总找不到点上,当然如果运气好也可以找到瓶颈,这个时候我们可以借助相应的工具来查找性能瓶颈。此处我们仅以UE4来展开讲解。首先要确定瓶颈是在CPU还是...

2016-10-12 19:37:11

阅读数 8414

评论数 0

UE4 三角面操作:CustomMesh组件实例,实现自由拉伸的立方体

CustomMesh组件,顾名思义,就是可以自定义的mesh,它提供了最基础的三角面,由程序员决定三角面的三个顶点,所以,只要你水平可以,你就能够用它拼成你想要的任何模型….这里我用8个顶点,12个面拼出来了一个立方体,然后,你还可以任意移动它的8个顶点,自由拉伸任何一个面…..有点像一个建模软件...

2016-08-23 16:23:30

阅读数 4887

评论数 1

虚幻4增强现实Demo

基于4.12制作,使用了Augmented Reality插件。 插件链接https://forums.unrealengine.com/showthread.php?86525-Augmented-Reality-for-UE4两个版本,原理一样,视频见下面的链接。 http://v.you...

2016-07-29 14:37:04

阅读数 2213

评论数 0

UE4 C++示例工程Battery Collector(4.10版本又更名为3rd Person Power-up)

这个是官方的一个C++示范工程,一共有21个教学视频,总时长2个小时。从游戏逻辑上、引擎功能使用程度上来说,都属于比较简单的层次,不过以入门、了解虚幻4的C++特性为目的,这个还是不错的素材。最终效果见优酷链接。下面是主要代码,包含5个类:Pickup,BattertyPickup,Battery...

2016-07-25 21:38:53

阅读数 3123

评论数 2

UE4 蓝图里的 函数递归调用

最近项目里需要用到一个递归算法,测试了下蓝图里函数的递归用法,看起来还可以,代码如下 上面的终止条件为200,超过200会触发引擎的“发现无限循环线”错误。在所有循环代码中,似乎虚幻引擎都会做判断,超过某个循环次数就会报错,这在 一些特殊情形下,是无法满足需求的。还好,200次够我用了..,.

2016-06-18 20:19:19

阅读数 1421

评论数 0

虚幻4编码规范

来自官方文档本页面的内容: 简介 类的组织结构 版权声明 命名规范 示例 基本C++数据类型的可移植别名 注释 指南 示例格式 C++ 11和现代语法 原有宏的新关键字 ‘auto’关键字 Range Based For Lambdas以及匿名函数 强类型枚举 Move语句 第三方代码 代码格...

2016-04-28 16:26:17

阅读数 2161

评论数 1

虚幻4 动画系统概述

虚幻引擎提供了一套完整的动画设计系统,从基本的动画导入,到最后的人物动画控制,流程完善成熟,上手简单。下面先从宏观上介绍下UE4的动画系统,然后深入介绍几个功能模块。一、整体介绍 下面这张图翻译自官方文档,它从整体上介绍了动画功能的来龙去脉,简单明了。 处于核心的是Pawn和Character...

2016-04-26 16:08:18

阅读数 10902

评论数 0

UE4 蓝图 实现 数组的边遍历边删除

在foreach中删除元素时,每一次删除都会导致集合的大小和元素索引值发生变化,从需导致在foreach中删除元素会出现异常。 如下图,最后ArrayTest数组的Length并不为0,foreach节点没有遍历所有元素。解决方法是采用for循环,并且从尾到头遍历。 蓝图的Forloop节点只...

2016-04-25 11:47:47

阅读数 5075

评论数 0

displacement map置换贴图

在游戏中经常会有这样的情况,就是一个平面——这个平面在现实中并不是一 个“平”面,例如砖墙的表面带有石质浮雕等等。这样的情况如果要求游戏开发人员将复杂的3D细节都做出来是不现实的,因为即使不计较在建模时候的复杂度, 过多的3D细节也同样会大量消耗显示芯片的性能,让游戏根本没有可玩性。同样在小型制作...

2016-04-07 15:35:50

阅读数 6951

评论数 0

虚幻4Matinee功能 基本概念及简单示例(Sequence编辑器)

虚幻4提供的Matinee功能十分强大,可以用来制作动画、录制视频。它的核心想法是在Matinee编辑器内提供一套自己的时间坐标系,在这个相对时间内通过调节actor的属性来改变actor的状态,进而达到制作动画的目的。如果更加大胆一点,我们不仅可以调节actor,还可以更改相机的状态,粒子效果的...

2016-03-28 16:16:46

阅读数 14834

评论数 0

c++中Const,Const函数,Const变量,函数后面的Const

看到const 关键字,C++程序员首先想到的可能是const 常量。这可不是良好的条件反射。如果只知道用const 定义常量,那么相当于把火药仅用于制作鞭炮。const 更大的魅力是它可以修饰函数的参数、返回值,甚至函数的定义体。const 是constant 的缩写,“恒定不变”的意思。被co...

2016-03-24 09:58:59

阅读数 1603

评论数 0

虚幻UE4蓝图添加数学表达式

蓝图里面如果需要进行复杂的数学运算,可以利用“Math Expression”来简化节点,步骤如下。 添加“Math Expression”节点 节点重命名,在名字里直接写入变量名及运算过程即可。如输入:(x+y)+x; 节点会自动识别变量及数学符号。 点开这个节点,里面就是数学运算过程。

2016-03-23 09:53:44

阅读数 3209

评论数 0

C++ 中malloc函数详解(转载)

一、原型:extern void *malloc(unsigned int num_bytes);头文件:#include <malloc.h> 或 #include <alloc.h> (注意:alloc.h 与 malloc.h 的内容是完全一致的。)功能:分配长度为n...

2016-03-09 14:13:36

阅读数 23644

评论数 1

vs2015多行注释与取消多行注释

注释: 先CTRL+K,然后CTRL+C 取消注释: 先CTRL+K,然后CTRL+U

2016-03-05 11:53:07

阅读数 34692

评论数 1

UE4材质初探(转载)

原文链接UE4的材质表面上看起来很简单,可是到了用的时候却总是没有办法实现好的效果。所以特意对文档进行阅读,初步了解了一下主要知识点。当前使用的UE4版本:4.8.0。UE4中的材质有很多用途,可以用于光照、延迟渲染、粒子系统等等。由于暂时不会用到,目前只做了最基础的材质使用的研究,也就是说是Ma...

2016-03-02 17:04:30

阅读数 17079

评论数 0

虚幻UE4碰撞系统

虚幻引擎的碰撞系统...

2016-02-21 15:27:38

阅读数 9548

评论数 0

虚幻4蓝图使用小技巧(更新)

不得不说,虚幻的蓝图系统还是非常方便强大的,大大的提高了开发效率。蓝图是一个很成熟的系统,也就有很多隐藏的小技巧,这些技巧谈不上多高深,却可以使人们在使用蓝图时更加得心应手,更加喜爱这个“可视化编程“。发现一个更黑科技的技巧…见动图 直接把变量拉到节点上,直接生成函数参数啊,类型自动匹配...

2016-01-31 22:12:51

阅读数 9444

评论数 0

虚幻4全局函数类蓝图(蓝图函数宏库)

在之前的虚幻版本中,要想实现某个函数在任意蓝图调用,必须通过C++实现,虚幻4.8版本提供了一个蓝图类—BlueprintFunctionLibrary,在这个蓝图类里写的所有函数都可以在任意蓝图里调用。具体步骤如下。首先,创建一个BlueprintFunctionLibrary类。右键—Blue...

2016-01-25 20:59:19

阅读数 3164

评论数 0

C++函数重载和函数覆盖的区别

“overload”翻译过来就是:超载,过载,重载,超出标准负荷;“override”翻译过来是:重置,覆盖,使原来的失去效果。先来说说重载的含义,在日常生活中我们经常要清洗一些东西,比如洗车、洗衣服。尽管我们说话的时候并没有明确地说用洗车的方式来洗车,或者用洗衣服的方式来洗一件衣服,但是谁也不会...

2016-01-11 09:46:42

阅读数 934

评论数 1

提示
确定要删除当前文章?
取消 删除
关闭
关闭