UE4读取scv文件 -- 数据驱动游戏性元素
官方文档链接:http://docs.unrealengine.com/latest/CHN/Gameplay/DataDriven/index.html
略懒,稍微麻烦重复的工作,总希望能找人帮忙一起做,但是有人对于稍微一点点的规则他都理解不了(主要也是懒,不想做),于是我从xml来到了scv文件,scv文件可以从Excel文件中导出,也可以在Excel里面编辑,于是帮忙的人也就是需要在Excel里面填入数据即可。
1.我定义了这么一张简单的表格,这里的中文才是后面有坑的地方
2.需要在UE4定义对应的数据格式,这里提供两种方式
a.蓝图定义数据结构:
b.c++定义数据结构,记得数据结构名称F开头,编译:
- /** Example Data */
- USTRUCT(BlueprintType)
- struct FExampleData : public FTableRowBase
- {
- GENERATED_USTRUCT_BODY()
- public:
- /** Name */
- UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = ExampleData)
- FString Name;
- /** Age */
- UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = ExampleData)
- int32 Age;
- FExampleData()
- {
- Age = 0;
- }
- };
3.将Excel另存为.csv并用Notepad++或者记事本将其转为utf-8的编码格式,导入UE4后会是乱码,将.csv文件拖入UE4中,他会要求你选择一种数据格式,拉开选项就有开始我们定义的两个选项,一个BP_StructExample, 一个ExampleData,因为定义的一样的格式,这里选择谁都可以。
我这里选择C++定义的结构,方便后面在C++中直接调用数据(蓝图一样de)。
4.调用数据:
- FExampleData* _ExampleData = Example->FindRow<FExampleData>("002", "data002");
- GEngine->AddOnScreenDebugMessage(-1, 10.0f, FColor::Red, _ExampleData->Name+ FString::FromInt(_ExampleData->Age));
5.运行结果:
6.假如我们最开始的Excel不见了,又需要其他人帮忙更改数据,我们就需要再将UE4的数据导出为CSV
7.然后你用Excel打开csv,你就会发现他所有数据都在第一格,或者乱码了,这里我们需要将他的编码如上改为ANSI,再用Excel打开就可以正常编辑了。
本文转自:http://blog.csdn.net/qq992817263/article/details/52637612
UE4读取scv文件 -- 数据驱动游戏性元素相关推荐
- ue4 读取本地文件
UE4C++ 读取本地文本文件 1.创建文件路径 FString LoadDir = FPaths::ProjectContentDir()/TEXT("LoadText.txt" ...
- python xlrd读取文件报错_python利用xlrd读取excel文件始终报错原因
1.代码按照网上百度的格式进行书写如下: 但运行后,始终报错如下: 百度了xlrd网页: 分明支持xls和xlsx两种格式的文件,但运行始终报错. 最后找到原因是因为我所读取的文件虽然是以.xls命名 ...
- 运行时读取PAK文件
运行时读取PAK文件 https://zhuanlan.zhihu.com/p/79209172 运行时读取PAK文件 安宁 游戏/仿真开发,UE4用户 运行时加载资产的问题 Unreal运行时加载资 ...
- python read函数报错_python 使用read_csv读取 CSV 文件时报错
读取csv文件时报错 df = pd.read_csv('c:/Users/NUC/Desktop/成绩.csv' ) Traceback (most recent call last): File ...
- UE4中Pak文件的读取规则
本文链接 https://blog.csdn.net/BDalasja/article/details/95618330 最近项目转战UE4了,需要研究UE4的热更,就此研究了一下PAK文件的相关内容 ...
- 2D游戏引擎制作:读取XML文件 1
读取XML文件 1 前言 渲染底层部分暂时结束,等用到了再继续写. 之前创建的窗体大小800和600还有标题等信息是写死在代码里的,但笔者们一般需要将它提出来放在一个文件里,以便修改这些属性时不用重新 ...
- ue4 开发动作游戏_《隐龙传》:首款UE4打造的国产动作游戏
原标题:<隐龙传>:首款UE4打造的国产动作游戏 武侠风格的游戏一直以来是国内游戏市场的宠儿,从早期的端游时代到如今的手游时代,各类武侠大作可以说是层出不穷.但是在主机游戏平台,由于该类游 ...
- c++读取.dat文件_MySQL 数据文件类型
不同的数据文件后缀名:Data and database file extensions A data file could be any file, but for the purpose of t ...
- UE3 供游戏性程序员的使用的性能最优化方法
供游戏性程序员的使用的性能最优化方法 概述 广泛性能调查 游戏和渲染性能 游戏线程分析 渲染线程分析 常见性能问题 概述 为追踪虚幻3游戏的内容或特定的游戏表现,有一系列有帮助的工具. 一个被用于 I ...
- java读取mysql数据库配置文件_java读取properties文件的方法
Java 读写Properties配置文件 Java 读写Properties配置文件 1.Properties类与Properties配置文件 Properties类继承自Hashtable类并且实 ...
最新文章
- ajax重复被调用,重复jQuery ajax调用
- lua 的正则表达式之坑
- 【小白学习Keras教程】四、Keras基于数字数据集建立基础的CNN模型
- 程序员面试金典——11.5找出字符串
- laravel 任务队列_Laravel 队列系统实现及使用教程
- Java人事面试100问
- xampp套件使用php,php集成套件服务器xampp安装使用教程(适合第一次玩PHP的新手),xampp安装使用...
- python中三元运算符_Python中三元表达式的几种写法介绍
- 路由器桥接成功后,仍然没有网络
- N沟道的Vgs是正的,P沟道的Vgs是负的
- 秋天的第一杯奶茶该买哪家?我用爬虫爬取所有数据教你买哪家
- JMeter递增加压
- 实验4 用JavaBean实现简单计算器
- 常见的继电接触器控制线路总结
- MMORPG游戏的人工智能(AI)和行为树设计
- StratifiedShuffleSplit实现分层抽样交叉验证
- delta和gamma中性_在期权交易中,Delta、Gamma、Theta、Vega都是什么?
- python文件open方式:r、r+、w、w+、a、a+
- python画e指数函数_python实现画出e指数函数的图像
- [NAS] OMV6 手机ES浏览器无法访问SMB解决方法