UE4瞎讲
文章平均质量分 65
zzk1995
这个作者很懒,什么都没留下…
展开
-
UE4的delegate
首先,UE4中的delegate和C#里边是一样的,delegate的本质是一个特殊类的对象,它可以储存(一个或多个)函数指针和payload数据(就是除了函数指针,还能存些你调用时候的额外参数)UE4中的delegate类名字中都有signature,这里我们以overlap的回调委托为例:在各种mesh components中,都有这么一个字段FComponentBeginOver原创 2015-09-05 13:03:56 · 10095 阅读 · 0 评论 -
UE4的NetWork简单原理
UE4内部封装实现了大量和网络相关的代码,使得我们不需要再自行编写很多底层的网络同步代码了(连接主机,套接字传输等等)。我们只需要实现相关的函数接口,并进行一定的设置,就可以实现网络游戏的功能了。 下面先讲讲UE4NetWork的几个要点: *1.UE的网络同步和Replicate密切相关,从字面上理解,就是Server到Client的信息同步。 2.大部分的自动化Replicate都是Ser原创 2015-12-11 17:34:27 · 11830 阅读 · 3 评论 -
UE4的Cast方法与类型转化
UE4中,我们经常会用到Cast函数,作用是强制转化一个指针到我们需要的类型,并且如果不能强制转化,就会返回nullptr。通过判断转换之后是不是nullptr,我们也能实现很多有用的功能(比如用于判断子弹击中的到底是什么) 那么Cast到底是如何实现的呢?要看Cast,首先要看到一个类型,叫做UClass,他是实现UE类型识别的重要类型。 我们经常打交道的类型都是继承自UObjectBase的原创 2015-11-17 00:48:41 · 23251 阅读 · 2 评论 -
UE4简单巡逻BehaviorTree的构建
上次我们搞了一个C++的AI代码初始化,但是只有C++初始化,AI是不会行动的。这次我们接着初始化之后的步骤,搞一个可以简单巡逻并且发现玩家之后会追踪的简单AI逻辑。 主要逻辑如下: 1.平时按照固定路线巡逻 2.发现玩家之后,追踪玩家 3.拾取玩家视野之后,继续追踪最后一次看见的位置几秒,之后放弃 4.放弃之后,继续按照原路线巡逻 5.如果听到声音,警惕地向声音发生处张望几秒 6.张原创 2015-11-23 15:05:29 · 5410 阅读 · 0 评论 -
UE4的AI c++代码初始化
AI的行动主要逻辑位于BehaviorTree内,AI的主要行动实现主要位于AIController中,而AI的记忆主要位于Blackboard内。下面是一些基本概念:1.BehaviorTree内部含有一个成员是Blackboard。所以我们一般只给一个AICharacter内部设置一个成员BehaviorTree就行了,而在Editor内把Blackboard指认给BehaviorTree。2.原创 2015-10-10 00:19:58 · 3282 阅读 · 0 评论 -
UE4实用类PawnSensingComponent简介
PawnSensingComponent是涉及AI编程时候的常用类,实现了很多强大的功能,对于AI感知帮助很大。 主要功能有 1.AI的视觉,是一个锥形感知体。 2.AI的听觉,主要与距离和声音大小有关,与遮挡物也有关。首先介绍一下AI的视觉方面吧,PawnSensingComponent的初始化很简单,在类内声明一个PawnSensingComponent字段,之后this->sensing原创 2015-11-21 19:56:26 · 4752 阅读 · 0 评论 -
UE4的Collision与Physics
Collision和Physics都是各种Mesh的属性,和Unity3D很像,Collision和Physics是两个独立的Component,Collision仅仅掌管碰撞发生的检测和回调,而Physics仅仅模拟碰撞发生之后位置速度等等的变化,可见Collision似乎用处更大一点。比如Collision可以设置各种perset,里边的标签都是不同的碰撞处理逻辑,但是本质上都是一些channe原创 2015-10-10 18:43:36 · 14090 阅读 · 1 评论 -
UE4的射线拾取
Ray-Trace作用于射线拾取。射线拾取主要相关 1.拾取函数是UWorld的多个方法。比如LineTraceSingle是单一拾取,拾取到一个之后就不继续穿透了,而LineTraceMulti会拾取多个目标。 2.射线拾取的主要参数有拾取开始点,结束点,拾取结果(一个FHitResult类型的引用,相当于返回值)拾取的碰撞通道和一个FCollisionQueryParams类型的参数。这个F原创 2015-10-10 00:23:16 · 14476 阅读 · 0 评论 -
UE4的MaterialInstance作用
我们经常会在游戏中看到Materials,但是还有一种数据结构名字叫做MaterialInstance。其实不少游戏的Mesh指认的都是MaterialInstance而不是Materials,为什么呢?1.Materials和MaterialInstance都可以指认给Mesh 2.Materials是在游戏运行之前编译好了的,而想要修改Materials的内部参数(比如动态修改其基本色,法线贴原创 2015-10-10 00:21:19 · 5734 阅读 · 1 评论 -
数据库中乐观锁与悲观锁的概念
作者:ChenLuLouis 出处:http://www.cnblogs.com/chenlulouis/ 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。 该文章也同时发布在我的独立博客中-chenlulouisBlog。锁( locking )业务逻辑的实现过程中,往往需要保证数据访问的排他性。如在金融系统转载 2016-05-01 22:50:42 · 777 阅读 · 0 评论