
推荐一个自己开发维护的开源插件XCharts:基于UGUI的功能强大、易用、参数可配置的数据可视化图表插件。支持折线图、柱状图、饼图、雷达图、散点图、热力图等常见图表。
这个问题我也遇到了,我是这样解决的。先介绍环境:我是在windows7上运行Unity566,数据库也是sqlite,最终发布成EXE文件,也是在PC上运行。
发布前,我的数据库文件db放在unity的Asset目录下。
(1)象网上许多友友介绍的一样,先在C:\Program Files\Unity 566f2(64-bit)\Editor\Data\Mono\lib\mono\20目录下,把:MonoDataSqlitedll、sqlite3dll、SystemDatadll这三个文件复制到你的工程文件Asset\Plugins\目录中。
然后直接发布,比如发布后的文件分别有两项:exEXE,ex_Data(这是目录)。
(2)此时,你把工程文件Asset\的数据库文件db,复制到发布后的ex_Data\目录下就可以了。我试过了四、五次,都没出现问题。
但愿你能成功!!!
原理上基本是一种
都是把2D图像映射到一个平面网格上,然后让这个网格始终面向摄像机,同时摄像机的投影模式为平行投影(没有近大远小)
实际实现上有挺多的,比如可以在3D模式下自己实现上述原理,还可以使用assetstore的一些2D游戏制作插件,还可以使用unity3d自带的2D模式制作。
不需要,数据的来源方式多种多样,而且一般来说也不会直接通过unity客户端程序来 *** 作数据库。单机游戏的数据一般都是通过随机数或者配置文件来生成,联网游戏则有游戏后台来提供相关数据源。
Unity3D怎样读取Access数据库?
在U3D中要访问Access数据库,我们需要用到两个dll,SystemDatadll和SystemEnterpriseServicesdll,缺一不可。我们找到这两个dll放到u3d的Plugins文件夹下面。
下面我们创建一个Access数据库版本是07样式是accdb(03版本的Access数据库的样式为mdb)在我们进行code的时候,要根据不同的版本进行判断啦,对于不同的Access数据库版本,我们要对应不懂的文件后缀名。要不然会提示你数据库文件是未知文件。
下面是读取Access的一个demo,其他的修改,添加数据都是在修改他的sql语句啦。简单的代码如下:
using UnityEngine;
using SystemCollections;
//引入命名空间
using System;
using SystemData;
using SystemDataOdbc;
public class RaderData : MonoBehaviour
{
/// <summary>
/// 声明一个接受读取数据字段值的变量
/// </summary>
string text = stringEmpty;
public void Start()
{
//读取数据文件。
ReadStudent(ApplicationdataPath + “/Wild boaraccdb”);
}
/// <summary>
/// 读取表数值的函数
/// </summary>
/// <param name=”filetoread”>数据文件的路径</param>
internal void ReadStudent(string filetoread)
{
//声明连接数据库的字段
string connection = “Driver={Microsoft Access Driver (mdb, accdb)}; DBQ=” + filetoread;
//从表中查询所有数据
string sqlQuery = “select from Student”;
//打开数据库
OdbcConnection con = new OdbcConnection(connection);
//对数据库进行 *** 作
OdbcCommand cmd = new OdbcCommand(sqlQuery,con);
//根据表名,读取数据到一个临时表
DataTable dt = new DataTable(“Student”);
//try catch finally进行了异常处理,这个是好习惯,嘿嘿
try
{
//打开数据库
conOpen();
//读取数据
OdbcDataReader reader = cmdExecuteReader();
//把数据加载到临时表
dtLoad(reader);
//在使用完毕之后,一定要关闭,要不然会出问题
readerClose();
//关闭数据库
conClose();
}
catch (Exception ex)
{
DebugLog(exToString());
}
finally
{
//判断数据库是否打开,如果打开就关闭。
if (conState!=ConnectionStateClosed)
{
conClose();
}
//释放数据库资源
conDispose();
}
if (dtRowsCount>0)
{
//读取数据
for (int i = 0; i < dtRowsCount; i++)
{
text = dtColumns[0]ColumnName + ” : ” + dtRows[dtColumns[0]ColumnName]ToString() + “ | ” + dtColumns[1]ColumnName + ” : ” + dtRows[dtColumns[1]ColumnName]ToString() + “ | ” + dtColumns[2]ColumnName + ” : ” + dtRows[dtColumns[2]ColumnName]ToString() + “ | ” + dtColumns[3]ColumnName + ” : ” + dtRows[dtColumns[3]ColumnName]ToString();
DebugLog(dtColumns[0]ColumnName + ” : ” + dtRows[dtColumns[0]ColumnName]ToString() + “ | ” + dtColumns[1]ColumnName + ” : ” + dtRows[dtColumns[1]ColumnName]ToString() + “ | ” + dtColumns[2]ColumnName + ” : ” + dtRows[dtColumns[2]ColumnName]ToString() + “ | ” + dtColumns[3]ColumnName + ” : ” + dtRows[dtColumns[3]ColumnName]ToString());
}
}
}
public void OnGUI()
{
GUILabel(new Rect(10,10,500,200),text);
}
}
以上就是关于Unity3D 有什么好用的数据可视化插件么全部的内容,包括:Unity3D 有什么好用的数据可视化插件么、Unity连接sqlite数据库,在windows Unity软件中成功连接,但是发布为EXE后,无法连接、求教大神,unity小游戏怎么简单和数据库连接等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)