登录  | 立即注册

游客您好!登录后享受更多精彩

查看: 73|回复: 4

[视频] 2024 UE4引擎 Dump SDK实战

[复制链接]

170

主题

21

回帖

1036

积分

管理员

积分
1036
发表于 5 天前 | 显示全部楼层 |阅读模式
游客,如果您要查看本帖隐藏内容请回复



什么是游戏引擎?游戏引擎就是一个为了运行某一类游戏的机器设计的,可以能够被机器识别的代码指令集合。说白了他就是写了很多的累。他在游戏引擎里面写了很多的类,人物类、怪物类、载具类各种类。然后里面把它的属性、把它的名称、把它的功能都定义好了,你拿去直接用就可以了。
这就是一个游戏引擎。为什么会有游戏引擎这种东西呢?当然是方便我们的游戏开发的那别人都给你定义好那个东西,你直接拿去用就行了。你就不用重新定义,你就不用再写那么多的东西,你直接用就好了。而UE引擎又叫做虚幻引擎,可以在get hub上下载到它的源码。大家比较熟悉的U13、U14、U15,而我们这套课程只讨论U144.23版本以后,直到U15这个区间。
因为UE是4.23,这个是一个分界线。G name又是什么呢?G要不接口的又是什么呢?G name是存放游戏里面所有名称字符串的一个地址。因为在游戏室里面,如果由于是引擎给我们定义好的人物类或者是什么类,它里面一定有它的属性,也有它的名称,有它的功能函数。
大家是不是以为如果我们找到这个电影,然后去他的名称的这个成员这里就能获取到他的名字呢?它的内容其实不是这样的,因为是你在这个位置是获取不到它的真正的类名的。你这里它只有一个name,ID就是一串数字,它里面存的是一串数字,一串内容ND的编号。所以说我们获取到的这个类地址我们也拿不到,因为我们只能拿到编号。
那它U14它是怎么做的呢?UE4引擎里面有个函数叫get name函数。它这个函数的功能大概就是传入一个name ID,然后通过算法就可以得到一个真正的名字。那么我们是不是也要这样做啊?我们是不是只要去把它的这个g name的这个data name算法我们自己实现一遍,然后我们再去获取到它的内容ID,我们就可以把它直接转化成我们需要的字符串了,是可以的。
我们来看一下代码。这个代码是我从UE4引擎里面扒下来的。这个类大家可以看一下class这个类,for name pool这个类,他就是我们的105。经历我们所谓的经历。
我说的其实就是它。
这里面是它的一个部分内容,当然不是全部,我只拿过来的我们需要用的。首先第一个这个函数是什么?如果不知道这个函数是什么的同学,建议先去看我在B站发的基础视频。这是一个构造函数,它在什么时候调用?在创建对象的时候调用。这个大家没问题。然后这是它的一个成员函数,这是它的三个成员。
这个没什么好讲的,我们这节课的重点是get name函数。Get name函数,这个就是UE4的1个get name函数。我们来看一下他做了什么,调用了这个函数。Get for name这个函数我也贴在这里了,是这个。
这个函数是干嘛的?获取name AD什么意思?这个就是一个name ID我们获取到name ID过后,再把它传入到这个里面,然后再通过某种算法得到真正的名字。我们刚刚也说过,它的一个功能逻辑就是内部函数,我们就已经获取到了它的内容ID然后来看这个函数。这就是这个函数。对,这些都可以不用看,我们主要看这里这一行。这个函数,这还是它实际功能,然后我们收起来看这个函数。这个函数里面大家可以看这里这个nap。
这个函数,它实际上就是来获取一个G内幕。我们可以打开看一下,在这里,这是它的前面的一个定义。我们来看一下它的代码里面什么意思,这里是一个初始化的判断。如果成功初始化了,那直接返回这个纪念母。如果没有去的话,那么他在这里遛一下。
在这个过程中,它是不是就调用到了一个构造函数?大家知道构造函数是什么时候调用的?创建对象的调用,这里就调用到了一个它的构造函数。然后再返回。返回一年不。
好意思,就是说这个函数获取到这个界面。那来看这个函数,这个函数在这里,我们前面说过,get name函数,name ID拿到MID过后再得到一个G内部,然后就加入这个函数。这个函数里面其实就是我们的一个算法。我们前面说过的data name函数的工作。
逻辑是什么?
传入一个name ID,然后调用算法得到一个真正的字符串。算法就是这里,也就意味着我们只要能够把这个功能给还原,这个算法给还原,重新实现一遍,那我们就可以自己有一个g name,自己有一个get name的一个函数的。如果听到这里觉得有点懵的同学,一定得把我的那个基础课看一下。关于面向对象编程,我的那堂课是讲了的。我再带大家捋一捋,这是get name函数,它首先在这里获取到的name ID,然后在这里。在这里调用这个函数,在这个函数里面获取单机name,然后再通过这个算法计算得到一个真正的字符串。
虽然细节方面可能有一些我没有说到,但大概就是这么的一个流程。我们下节课就将来还原这个dat name函数。

第1课什么是引擎 及特点_思维导图.jpg

0

主题

10

回帖

34

积分

新手上路

积分
34
发表于 4 天前 | 显示全部楼层
6666666666666
回复

使用道具 举报

0

主题

189

回帖

145

积分

注册会员

积分
145
发表于 4 天前 | 显示全部楼层
支持一下
回复

使用道具 举报

0

主题

5

回帖

27

积分

新手上路

积分
27
发表于 4 天前 | 显示全部楼层
膜拜神贴,后面的请保持队形~
回复

使用道具 举报

0

主题

31

回帖

236

积分

注册会员

积分
236
发表于 3 天前 | 显示全部楼层

6666666666666
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|断点社区 |网站地图

GMT+8, 2025-4-3 18:57 , Processed in 0.183446 second(s), 22 queries , Yac On.

Powered by XiunoBBS

Copyright © 2001-2025, 断点社区.

快速回复 返回顶部 返回列表