1.csv文件的导入

UE4是可以直接导入csv文件的,其过程和其他文件资源(图片Texture,静态网格物体StaticMesh等)相似,但在导入过程中有一些需要注意的点。

如下图所示

这是一份编辑好的csv文件,里面的字段名称和数据类型都是需要统一的点,同时在所有数据行前需要有目录ID,这是区别于第一个字段的,如果忽略ID的编辑,在导入时会出现提示:无法识别name字段数据,这是因为UE4软件将name的数据识别成目录ID,导致name字段的实际数据为空。

其余字段的数据只需要注意类型统一即可,一般来说最通用的就是string格式(类似于万精油),如果需要格式转换可以在UE4软件中进行。

在编辑好csv文件之后保存,在UE4软件中直接导入即可,导入之后会自动生成为一个Data Table类型的文件,如下图所示

在UE4内容浏览器中创建一个Structure用来承载该Data Table的数据,必须保证变量名称和csv文件中的字段名称相同,避免数据混乱,数据类型也应该保持一致。

2.URL地址读取及动态材质设置

UE4可以直接读取到网页的URL地址,并进行地址图片的下载。

首先创建一个Actor蓝图,在View视图中添加一个Cube组件,在组件内部添加3个Text文档输入,分别作为csv文件的name,description和hp的载体。

在内容浏览器中创建一个简单的材质,并添加实例,将实例的TextureSample转换为变量,在实例中勾选该变量,使其成为可编辑状态,同时将该材质实例赋予Actor蓝图的Cube。

返回Actor蓝图中,创建材质实例的动态变量

同时创建一个自定义函数

给自定义函数添加4个输入节点,分别对应csv文件的4个字段,将前面3个字段分别赋予Text,这里在连接节点时会自动进行类型转换。将第4个关键数据URL地址连接到DownloadImage函数上,成功时将其下载的Image自动转换成Texture并赋予材质实例的TextureSample变量,达到动态更换材质的效果。

往关卡中拖放3个Actor蓝图实例,打开关卡蓝图进行函数的编写。

首先获取到关卡中所有的Actor蓝图实例,然后读取csv文件生成的Data Table文件数据,对其进行循环遍历,将遍历的结果赋予事先创建好的Structure,并将其输出到自定义函数的节点中。

运行关卡,可以看到结果

UE4的csv文件导入、URL地址的读取及动态材质的设置的更多相关文章

  1. CSV文件导入到数据库中读取数据详解(接着上个帖子)

    一.controller层 二.SERVICE层 @Overridepublic Result importJinjiangAssessResult(MultipartFile file) throw ...

  2. Laravel 5使用Laravel Excel实现Excel/CSV文件导入导出的功能详解

    1.简介 本文主要给大家介绍了关于Laravel 5用Laravel Excel实现Excel/CSV文件导入导出的相关内容,下面话不多说了,来一起看看详细的介绍吧. Laravel Excel 在 ...

  3. SQL Server:把CSV文件导入到SQL Server表中

    有时候我们可能会把CSV中的数据导入到某个数据库的表中,比如做报表分析的时候. 对于这个问题,我想一点也难不倒程序人员吧!但是要是SQL Server能够完成这个任务,岂不是更好! 对,SQL Ser ...

  4. 把CSV文件导入到SQL Server表中

    保存数据库数据直接查询select * from tableName 在数据表格的左上角右击——将结果另存为选择路劲保存好的就是.csv格式的数据 有时候我们可能会把CSV中的数据导入到某个数据库的表 ...

  5. C# ASP.NET CSV文件导入数据库

    原文:C# ASP.NET CSV文件导入数据库 using System; using System.Collections.Generic; using System.Text; using Sy ...

  6. [转]csv文件导入Mysql

    本文转自:https://blog.csdn.net/quiet_girl/article/details/71436108 本篇博客主要讲将csv文件导入Mysql的方法(使用命令行). Step1 ...

  7. 将CSV文件导入到hive数据库

    将csv文件导入hive后出现了所有的字段只显示在新建的表的第一个字段中,后面的字段全是null. 出现这种的原因是hive以行分隔数据,需要修改为按逗号'  ,  ‘ 进行分隔读取, 具体操作如下, ...

  8. MySql csv文件导入导出

    一.导出到csv(本地导出) 通过mysql客户端shell连接到服务器,选择使用的数据库,输入sql代码: select * from test_info into outfile '/tmp/te ...

  9. 2017年4月8日Office 365 使用CSV文件导入邮件组

    国内版 第一步: Import-Module msonline Connect-MsolService 输入用户名密码 第二步: Get-MsolUser" 第三步: Set-Executi ...

随机推荐

  1. Angular待办事项应用2

    todo组件 接上一篇,在根目录创建todo组件 命令行输入:ng g c todo 得到 文件结构 修改默认路由为todo: 然后打开浏览器:http://localhost:4200/ ,查看,t ...

  2. Why we should overwrite the hashCode() when we overwrite the equals()

    Preface Though I have used Java programme language for almost a year, I'm not familiar with a notion ...

  3. JSP学习笔记(1)-JSP简介

    1.什么是JSP? JSP是Java server page的缩写,有sun公司倡导,许多公司参与,于1999年推出的一种web服务设计标准.JSP基于Java Servlet以及整个java体系的W ...

  4. C# 运算符 ++在前与++在后实例分析。

    首先记住计算技巧“++在前先+1,++在后后+1”. static void Main(string[] args) { int i = 10; Console.WriteLine(i);//此时i的 ...

  5. sublime3中如何快速生成html头部信息

    前提要安装Emmet 插件:已经结束了啊,不要以为下面的操作跟问题有关,下面是具体的生成头部信息方法 输入下边加粗的缩写,然后Tab,就可以了: 生成html4.01 Transitional用 ht ...

  6. AJAX-XMLHttpRequest和本地文件

    网页中可以使用相对URL的能力通常意味着我们能使用本地文件系统来开发和测试HTML,并避免对Web服务器进行不必要的部署. 然而当使用XMLHttpRequest进行Ajax编程时,这通常是不行的. ...

  7. marquee 滚动到文字上时停止滚动,自定义停止方法

    我要实现的效果如下图:当鼠标移到续费提醒文字上时,文字滚动停止,并出现后面的关闭按钮:当鼠标移出文字时,文字继续滚动,后面的关闭按钮不显示. 在网上查到的marquee停止滚动的的代码是这样的: &l ...

  8. Jquery对于input事件的处理

    Jquery对于input事件的处理.获取此表单元素,以及其内容 .text()不能使用在表单选项上 要使用.val() input元素使用类似onblur(this),事件在function(obj ...

  9. C#+SharpMap的相关代码

    //放大的代码: private void MapZoomIn(NameValueCollection queryString) { SharpMap.Map map = Session[" ...

  10. web 学习资源

    学习 https://skills.bugbank.cn/ https://github.com/JnuSimba/MiscSecNotes 靶场 http://skysec.top/2018/01/ ...