基于 unity2018.3.6+sqlserver2014 实现的登录注册功能。
我给我的 VR 系统做了一个简易的登录注册功能。
1. 在 unity 里搭建了一个登录面板如下图:
往视图里添加 3 个 Text(登录信息的提示、账号密码输入提示),3 个 button(用来挂载登录注册事件、退出系统)和两个 inputText(用于输入账号密码)。
2. 搭建注册面板:
跟登录面板一样创建游戏对象就行了,不同的是,这里加了一个确认密码的输入框,不过这里的确认密码我没有加任何代码逻辑,只是个装饰,可用可不用,后面完善功能时再添加也行。
3.unity 连接数据库前的准备 —— 引用数据库 DLL 文件:
创建文件夹 Plugins,添加 4 个 dll 文件:
注意:连接不同数据库添加的 dll 文件不同,这里我们连接 sqlserver,用这四个就够了,这些 dll 可以在网上找,也可以在自己 unity 的安装目录下找到:
这里我遇到一个问题,就是我 unity 2018.3.6f1 导入 dll 文件报错:
网上查了解决方法,主要是说 DLL 的.NET 版本需与脚本运行版本不对应,这里我们就要做一下更改了 —— 找到 File/Build Settings/Player Settings/Other Settings/Configuration,
选择对应版本,重启 unity 即可解决。好了,现在我们可以开始写脚本实现功能了。
4. 登录功能的实现:
(1)首先设计一下数据库的内容:
(2)代码 + 可视化实现:
创建一个脚本 userLogin:``
首先我们添加一些引用:
(如果前面没有添加 dll 文件,这里就无法引用,下面自然也不能连接数据库了)
定义两个公共 inpuField 组件,一个静态文本
在这里,我们要在刚开始的时候获取一下登录提示信息文本组件,在视图中,给这个 Text 组件添加一个标签 LoginMessage。
(3)下面写一个登录的方法,连接数据库访问数据,与输入的数据对比:
server=“计算机 ip 地址 / 电脑用户名,默认 127.0.0.1 为本地地址,也可以用 localhost”、database=“自己创建的数据库名称”、uid = 数据库用户 sa、pwd = 数据库密码,可自定义。其他 sql 语句,自行学习。
(4)测试登录功能:
无输入:
数据库不存在的账号:
密码错误:
账号密码匹配成功登录
5. 登录功能的实现:
(1)直接在注册按钮添加鼠标点击事件,设置 bool setactive 的属性:
(2)注册的实现就是往数据库添加数据:
(3)测试注册功能:
注册相同账号时:
注册新账号成功登录:
好了,到这里,我的登录注册小功能总算是完成了。