unity导出WebGL格式后与数据库通信方法

unity版本:2020.1.0f1

1. unity与数据库的通信方法

Mysql版本若是8,要想连上数据库需要更改Mysql的配置文件my.ini,将其默认的[mysql]解码方式换成下面的语句,之后在重启电脑重启电脑重启电脑。(我就是没有重启电脑导致配置不生效浪费好多时间)
default_authentication_plugin = mysql_native_password

using System.Collections
using System.collections.Generic
using UnityEngine;
using UnityEngine.UI;
using MySql.Data.MySqlClient;
using System;
using System.Data;

public class connectToMySql:MonoBehaviour
{
	//数据库设置
	private MySqlConnection connection;
	private string server="127.0.0.1";
	private string port="3306";
	private string database="数据库名称";
	private string userName = "登入数据库的用户名";
	private string password = "登入数据库的密码";

	//连接数据库
	void Start()
	{
		string connectionString = string,Format("server={0};port={1};database={2};user={3};password={4};",server,port,database,user,password);
		connection = new MySqlConnection(connectionString);
		try
		{
			connection.Open();
			Debug,Log("连接成功");
		}
		catch(Exception ex)
		{
			Debug.Log("连接失败"+ex.Message);
		}
		connection.Close();
	}
}

以上代码只实现了在unity中连接数据库,当项目导出其他格式后就无法连接数据库了。

2. 导出webGL格式后网页与unity的通信方法

步骤如下:

一、在Assets文件夹下创建Plugins文件夹,在创建以.jslib为后缀的js文件

mergeInto(LibraryManager.library),{
//此处写unity在网页中调用的函数
	Hello:function(){
		Consloe.log('hello,world')
}

二、在Script文件夹下创建unity传给网页所执行方法的文件,我取名为UnityCallWeb

using System.Collections
using System.collections.Generic
using UnityEngine;
using System.Runtime.InteropServices;

public class UnityCallWeb:MonoBehaviour
{
	[DllImport("_internal")]
	private static extern void hello();
	void Start()
	{
		hello();
	}
}

三、在Script文件夹下创建网页传数据给Unity的文件,我取名为WebCallUnity

using System.Collections
using System.collections.Generic
using UnityEngine;
using UnityEngine.UI;

public class WebCallUnity:MonoBehaviour
{
//我需要讲传入的字符串用~分开,形成数组,在赋值给unity中的showText
public Text[] showText;
public void Receive(string s)
{
	string[] words = s.Splite('~');
	for (int i = 0;i<showText.Length;i++)
	{
		showText[i].text = words
	}
}
}

四、将WebCallUnity脚本挂载在canvas中(也可挂载在其他位置),在unity项目中给showText绑定元素
五、将项目导出成WebGL格式,在生成的index.html文件中做如下修改。

//找到文件的.then(unityInstance)=>{}在这个函数里面添加要传给unity的数据,也就是添加下面这行语句
//其中canvas是挂载了WebCallUnity的物件,需要根据自己挂载脚本的位置做出相应改变
//receive是在unity中执行的函数,对传给unity的数据做处理。
//abc~def~ghi~jko~是传给unity的字符

unityInstance.SendMessage("canvas",,"receive","abc~def~ghi~jko~")

3. webGL、unity与数据库的通信方法

实现了从html文件中传输数据到unity之后,要想实现unity项目导出后与数据库连接,只需在导出后的html上获取从数据库得到的数据,在数据其传输给unity即可。即对导出后的html文件进行二次开发
由于代码太多了,公司不能连外网就不敲了,太多了。

  • 4
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Unity3D是一款功能强大的游戏引擎,可以用来开发各种类型的游戏和应用程序。其中,导出WebGL格式Unity3D的一个重要功能,它使得我们可以将游戏或应用程序直接发布到Web上,让用户可以通过浏览器来访问和体验。 使用Unity3D导出WebGL格式非常简单。首先,我们需要确保在Unity中我们的项目已经设置好了所需的场景、模型、材质和脚本等。然后,我们可以选择菜单栏中的"Build Settings"选项,打开一个设置窗口。 在"Build Settings"窗口中,我们需要选择"WebGL"作为目标平台,并设置一些导出选项。例如,我们可以选择导出的文件名和保存的路径。我们还可以选择是否需要压缩文件,以及是否需要在导出过程中进行连接和优化操作。 当我们设置好导出选项后,只需点击"Build"按钮,Unity3D将开始导出我们的项目为WebGL格式。这个过程可能需要一些时间,具体取决于我们的项目大小和计算机性能。 完成导出后,Unity将生成一个文件夹,其中包含所有导出WebGL文件。我们可以将这个文件夹上传到Web服务器上,然后用户可以通过使用任何兼容的浏览器访问我们的游戏或应用程序。 使用Unity3D导出WebGL格式,我们可以将我们的项目变成一个跨平台的应用程序,用户可以通过使用不同设备上的Web浏览器来访问和播放。这种格式导出不仅便于使用,而且还可以保留游戏或应用程序的许多功能和性能,使其在Web上的运行效果更加流畅和逼真。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值