使用资源文件夹和Mysql在Unity中加载三维模型
我想使用资源文件夹加载三维模型。我创建了一个sql数据库来存储地址。在本例中,我将文件“deer-3ds”存储在文件夹“Models”中,并将这些信息保存在sql中名为“modeladdress”的表中。 所以请帮我更正代码。我知道这是100%的错误,但我不知道如何修复它。多谢各位使用资源文件夹和Mysql在Unity中加载三维模型,mysql,unity3d,model,Mysql,Unity3d,Model,我想使用资源文件夹加载三维模型。我创建了一个sql数据库来存储地址。在本例中,我将文件“deer-3ds”存储在文件夹“Models”中,并将这些信息保存在sql中名为“modeladdress”的表中。 所以请帮我更正代码。我知道这是100%的错误,但我不知道如何修复它。多谢各位 using UnityEngine; using System.Collections; using System; using System.Data; using Mono.Data.Sqlite; publ
using UnityEngine;
using System.Collections;
using System;
using System.Data;
using Mono.Data.Sqlite;
public class addobject : MonoBehaviour {
// Use this for initialization
void Start () {
//GameObject deer=Instantiate(Resources.Load("deer-3d.bak",typeof(GameObject)))as GameObject;
// GameObject instance = Instantiate(Resources.Load("Models/deer-3ds", typeof(GameObject))) as GameObject;
string conn = "URI=file:" + Application.dataPath + "/modeladdress.s3db"; //Path to database.
IDbConnection dbconn;
dbconn = (IDbConnection) new SqliteConnection(conn);
dbconn.Open(); //Open connection to the database.
IDbCommand dbcmd = dbconn.CreateCommand();
string sqlQuery = "SELECT ordinary,foldername, filename " + "FROM modeladdress";
dbcmd.CommandText = sqlQuery;
IDataReader reader = dbcmd.ExecuteReader();
while (reader.Read ()) {
int ordinary = reader.GetInt32 (0);
string foldername = reader.GetString (1);
string filename = reader.GetString (2);
string path = foldername + "/" + filename;
//Debug.Log( "value= "+value+" name ="+name+" random ="+ rand);
GameObject instance = Instantiate(Resources.Load(path, typeof(GameObject))) as GameObject;
instance.SetActive (true);
}
reader.Close();
reader = null;
dbcmd.Dispose();
dbcmd = null;
dbconn.Close();
dbconn = null;
}
// Update is called once per frame
void Update () {
// GameObject instance = Instantiate(Resources.Load("Models/deer-3ds", typeof(GameObject))) as GameObject;
// instance.SetActive (true);
}
}
首先,您在数据库管理系统中使用的是SQLite,而不是MySQL。其次,您编写查询的方式 string sqlQuery=“从modeladdress中选择普通、文件夹名、文件名“+” 将返回每个型号的
普通
、文件夹名
和文件名
。您需要使用WHERE
子句来精确指定要使用的模型。因此,在实际执行查询之前,您需要知道要从数据库查询哪个模型,在这种情况下,为什么还要查询数据库?无论如何,您都必须存储一些唯一的标识符,这样数据库就不会解决任何问题
现在,关于您编写的实际代码,它似乎是正确的(即,它应该返回您想要的内容)。问题一定是您的表为空,返回的值不正确,或者对象实例化的位置不正确,因此您认为它不工作。如果你想要一个更具体的答案,你必须用你所面临的具体问题(即“错误”具体是什么?)来评论这个答案。问题是什么?发生了什么“错误”?