2014-01-07 00:16:10 mynewdays 阅读数 18568
  • C# For Unity系列之基础篇

          本套C#语言教程,全部采用案例化教学模式。结合C#知识点在实际游戏中具体的应用场景,让初级学员快速、深入的学好C#语言,为进一步全面、高效的学习Unity游戏引擎,制作精良的游戏产品,打下坚实的语言基础!        真正学好Unity,其先决条件是一定要有稳固、扎实的编程基础!因此目前绝大多数(线下)Unity培训机构(一般4-5个月)都会先给学员讲解C# for Unity 的编程加强课程。(一般高校的编程课程内容少、不深入...)         本套《C# for Unity》课程共分为“入门篇”、“基础篇”、“中级篇”、“进阶篇”,分别对应于完全“零”编程基础、较少编程基础、需要强化C#编程、需要深入学习C#脚本,等各类型学员群体。       说明:  本课程使用Virtual Studio2012,以及Unity5.2 进行开发与讲解。(学员使用更高版本,对学习影响不大) 一、热更新系列(技术含量:中高级): A:《lua热更新技术中级篇》 https://edu.csdn.net/course/detail/27087 B:《热更新框架设计之Xlua基础视频课程》 https://edu.csdn.net/course/detail/27110 C:《热更新框架设计之热更流程与热补丁技术》 https://edu.csdn.net/course/detail/27118 D:《热更新框架设计之客户端热更框架(上)》 https://edu.csdn.net/course/detail/27132 E:《热更新框架设计之客户端热更框架(中)》 https://edu.csdn.net/course/detail/27135 F:《热更新框架设计之客户端热更框架(下)》 https://edu.csdn.net/course/detail/27136 二:框架设计系列(技术含量:中级):  A:《游戏UI界面框架设计系列视频课程》 https://edu.csdn.net/course/detail/27142 B:《Unity客户端框架设计PureMVC篇视频课程(上)》 https://edu.csdn.net/course/detail/27172 C:《Unity客户端框架设计PureMVC篇视频课程(下)》 https://edu.csdn.net/course/detail/27173 D:《AssetBundle框架设计_框架篇视频课程》 https://edu.csdn.net/course/detail/27169 三、Unity脚本从入门到精通(技术含量:初级) A:《C# For Unity系列之入门篇》 https://edu.csdn.net/course/detail/4560 B:《C# For Unity系列之基础篇》 https://edu.csdn.net/course/detail/4595 C: 《C# For Unity系列之中级篇》 https://edu.csdn.net/course/detail/24422 D:《C# For Unity系列之进阶篇》 https://edu.csdn.net/course/detail/24465 四、虚拟现实(VR)与增强现实(AR):(技术含量:初级) A:《虚拟现实之汽车仿真模拟系统 》 https://edu.csdn.net/course/detail/26618 五、Unity基础课程系列(技术含量:初级)  A:《台球游戏与FlappyBirds—Unity快速入门系列视频课程(第1部)》   https://edu.csdn.net/course/detail/24643 B:《太空射击与移动端发布技术-Unity快速入门系列视频课程(第2部)》 https://edu.csdn.net/course/detail/24645  C:《Unity ECS(二) 小试牛刀》 https://edu.csdn.net/course/detail/27096 六、Unity ARPG课程(技术含量:初中级): A:《MMOARPG地下守护神_单机版实战视频课程(上部)》 https://edu.csdn.net/course/detail/24965 B:《MMOARPG地下守护神_单机版实战视频课程(中部)》 https://edu.csdn.net/course/detail/24968 C:《MMOARPG地下守护神_单机版实战视频课程(下部)》 https://edu.csdn.net/course/detail/24979

    11820 人正在学习 去看看 刘国柱

unity3d是一个跨平台的游戏开发引擎,可以使用c#开发各种平台上的游戏,如windows,Mac,Android,windows phone,IOS,Flash等。下面说下如何将开发好的unity3d游戏发布到Android手机上

1.安装unity3d

这是官网下载地址,这里能下载到最新版本的unity3d:http://unity3d.com/unity/download,安装的话一路默认就行

2.安装java sdk和Android sdk

unity3d中使用c#编写的代码如何才能在android手机上运行呢,答案是压根就不能运行,unity3d通过mono框架将c#代码转换成Android代码,所以若想发布Android程序,就需要安装Android sdk,而Android又是基于java运行环境的,所以也需要安装java sdk,下面附上下载地址。java sdk:http://www.oracle.com/technetwork/java/javase/downloads/jdk-7u2-download-1377129.html;Android sdk下载地址:http://developer.android.com/sdk/index.html

java sdk的安装一路默认就好,默认路径为C:\Program Files (x86)\Java。

Androi sdk下载完毕后,解压,然后运行SDK Manager.exe,在弹出的界面中勾选需要的内容,如下图所示


其中最重要的是Android的版本,这里列出了很多版本,有些文章说,不能单独选择一个4.0以上的版本(不包括4.0),否则发布的时候会报错,但是通过实验,只勾选Android 4.4.2(API19),然后安装也能够成功发布到手机上。

勾选万选项后,然后点击安装,接下来就是等待的时间了。

3.发布

安装完毕之后,打开unity3d

1)配置发布时的Android sdk目录,在菜单中选择Edit---Preferences...,在弹出的对话框中选择“External Tools”,在最下面的“Android sdk location”中选择你的路径,其实就是你下载的Android sdk压缩包解压之后的sdk文件夹的路径,如下图


2)配置完毕之后,在菜单中选择“File----Build Settings”,弹出如下图窗体,在左边选择Android,然后在右边选择“Build and run”或者“Build”,弹出对话框用来选择发布的位置和程序名称,设置之后,开始发布。

3)在发布过程中可能会报如下错误


这是因为Build Identifier的名称不是唯一的,不能使用默认的,在右边这是因为Build Identifier的名称不是唯一的,不能使用默认的,修改方法是在发布窗口点击“play settings”,然后设置Build Indentifier属性的值为"com.aaa.bbb"这种格式的,总之不能使用默认的就好了。




2014-08-04 17:59:42 yc1219 阅读数 19509
  • C# For Unity系列之基础篇

          本套C#语言教程,全部采用案例化教学模式。结合C#知识点在实际游戏中具体的应用场景,让初级学员快速、深入的学好C#语言,为进一步全面、高效的学习Unity游戏引擎,制作精良的游戏产品,打下坚实的语言基础!        真正学好Unity,其先决条件是一定要有稳固、扎实的编程基础!因此目前绝大多数(线下)Unity培训机构(一般4-5个月)都会先给学员讲解C# for Unity 的编程加强课程。(一般高校的编程课程内容少、不深入...)         本套《C# for Unity》课程共分为“入门篇”、“基础篇”、“中级篇”、“进阶篇”,分别对应于完全“零”编程基础、较少编程基础、需要强化C#编程、需要深入学习C#脚本,等各类型学员群体。       说明:  本课程使用Virtual Studio2012,以及Unity5.2 进行开发与讲解。(学员使用更高版本,对学习影响不大) 一、热更新系列(技术含量:中高级): A:《lua热更新技术中级篇》 https://edu.csdn.net/course/detail/27087 B:《热更新框架设计之Xlua基础视频课程》 https://edu.csdn.net/course/detail/27110 C:《热更新框架设计之热更流程与热补丁技术》 https://edu.csdn.net/course/detail/27118 D:《热更新框架设计之客户端热更框架(上)》 https://edu.csdn.net/course/detail/27132 E:《热更新框架设计之客户端热更框架(中)》 https://edu.csdn.net/course/detail/27135 F:《热更新框架设计之客户端热更框架(下)》 https://edu.csdn.net/course/detail/27136 二:框架设计系列(技术含量:中级):  A:《游戏UI界面框架设计系列视频课程》 https://edu.csdn.net/course/detail/27142 B:《Unity客户端框架设计PureMVC篇视频课程(上)》 https://edu.csdn.net/course/detail/27172 C:《Unity客户端框架设计PureMVC篇视频课程(下)》 https://edu.csdn.net/course/detail/27173 D:《AssetBundle框架设计_框架篇视频课程》 https://edu.csdn.net/course/detail/27169 三、Unity脚本从入门到精通(技术含量:初级) A:《C# For Unity系列之入门篇》 https://edu.csdn.net/course/detail/4560 B:《C# For Unity系列之基础篇》 https://edu.csdn.net/course/detail/4595 C: 《C# For Unity系列之中级篇》 https://edu.csdn.net/course/detail/24422 D:《C# For Unity系列之进阶篇》 https://edu.csdn.net/course/detail/24465 四、虚拟现实(VR)与增强现实(AR):(技术含量:初级) A:《虚拟现实之汽车仿真模拟系统 》 https://edu.csdn.net/course/detail/26618 五、Unity基础课程系列(技术含量:初级)  A:《台球游戏与FlappyBirds—Unity快速入门系列视频课程(第1部)》   https://edu.csdn.net/course/detail/24643 B:《太空射击与移动端发布技术-Unity快速入门系列视频课程(第2部)》 https://edu.csdn.net/course/detail/24645  C:《Unity ECS(二) 小试牛刀》 https://edu.csdn.net/course/detail/27096 六、Unity ARPG课程(技术含量:初中级): A:《MMOARPG地下守护神_单机版实战视频课程(上部)》 https://edu.csdn.net/course/detail/24965 B:《MMOARPG地下守护神_单机版实战视频课程(中部)》 https://edu.csdn.net/course/detail/24968 C:《MMOARPG地下守护神_单机版实战视频课程(下部)》 https://edu.csdn.net/course/detail/24979

    11820 人正在学习 去看看 刘国柱

在用Unity3D发布安卓时遇到了两个问题,在此记录下解决办法:

第一个:

错误提示:

Error building Player: UnityException: Bundle Identifier has not been set up correctly
Please set the Bundle Identifier in the Player Settings. The value must follow the convention 'com.YourCompanyName.YourProductName' and can contain alphanumeric characters and underscore.
Each segment must not start with a numeric character or underscore.

解决方法:

打开File=>build settings => player settings=>在Inspector找到Bundle Identifier 选项,原来是:com.YourCompanyName.YourProductName

后两项改个名字就行了


第二个:

错误提示:

Error building Player: Win32Exception: ApplicationName='D:/android/android-sdk-windows-1.6_r1\tools\zipalign.exe', CommandLine='4 "C:\Users\Administrator.OTCITZ1YGXVV59Z\Documents\New Unity Project 1\Temp/StagingArea/Package_unaligned.apk" "C:\Users\Administrator.OTCITZ1YGXVV59Z\Documents\New Unity Project 1\Temp/StagingArea/Package.apk"', CurrentDirectory='Temp/StagingArea'

解决方法:

你会发现D:/android/android-sdk-windows-1.6_r1\tools\目录下面并没有zipalign.exe这个可执行文件,所以在D:\android\android-sdk-windows-1.6_r1\build-tools\20.0.0里找到这个文件,将其拷贝到之前的目录,就解决啦。



2018-12-05 17:21:00 qq_32416529 阅读数 665
  • C# For Unity系列之基础篇

          本套C#语言教程,全部采用案例化教学模式。结合C#知识点在实际游戏中具体的应用场景,让初级学员快速、深入的学好C#语言,为进一步全面、高效的学习Unity游戏引擎,制作精良的游戏产品,打下坚实的语言基础!        真正学好Unity,其先决条件是一定要有稳固、扎实的编程基础!因此目前绝大多数(线下)Unity培训机构(一般4-5个月)都会先给学员讲解C# for Unity 的编程加强课程。(一般高校的编程课程内容少、不深入...)         本套《C# for Unity》课程共分为“入门篇”、“基础篇”、“中级篇”、“进阶篇”,分别对应于完全“零”编程基础、较少编程基础、需要强化C#编程、需要深入学习C#脚本,等各类型学员群体。       说明:  本课程使用Virtual Studio2012,以及Unity5.2 进行开发与讲解。(学员使用更高版本,对学习影响不大) 一、热更新系列(技术含量:中高级): A:《lua热更新技术中级篇》 https://edu.csdn.net/course/detail/27087 B:《热更新框架设计之Xlua基础视频课程》 https://edu.csdn.net/course/detail/27110 C:《热更新框架设计之热更流程与热补丁技术》 https://edu.csdn.net/course/detail/27118 D:《热更新框架设计之客户端热更框架(上)》 https://edu.csdn.net/course/detail/27132 E:《热更新框架设计之客户端热更框架(中)》 https://edu.csdn.net/course/detail/27135 F:《热更新框架设计之客户端热更框架(下)》 https://edu.csdn.net/course/detail/27136 二:框架设计系列(技术含量:中级):  A:《游戏UI界面框架设计系列视频课程》 https://edu.csdn.net/course/detail/27142 B:《Unity客户端框架设计PureMVC篇视频课程(上)》 https://edu.csdn.net/course/detail/27172 C:《Unity客户端框架设计PureMVC篇视频课程(下)》 https://edu.csdn.net/course/detail/27173 D:《AssetBundle框架设计_框架篇视频课程》 https://edu.csdn.net/course/detail/27169 三、Unity脚本从入门到精通(技术含量:初级) A:《C# For Unity系列之入门篇》 https://edu.csdn.net/course/detail/4560 B:《C# For Unity系列之基础篇》 https://edu.csdn.net/course/detail/4595 C: 《C# For Unity系列之中级篇》 https://edu.csdn.net/course/detail/24422 D:《C# For Unity系列之进阶篇》 https://edu.csdn.net/course/detail/24465 四、虚拟现实(VR)与增强现实(AR):(技术含量:初级) A:《虚拟现实之汽车仿真模拟系统 》 https://edu.csdn.net/course/detail/26618 五、Unity基础课程系列(技术含量:初级)  A:《台球游戏与FlappyBirds—Unity快速入门系列视频课程(第1部)》   https://edu.csdn.net/course/detail/24643 B:《太空射击与移动端发布技术-Unity快速入门系列视频课程(第2部)》 https://edu.csdn.net/course/detail/24645  C:《Unity ECS(二) 小试牛刀》 https://edu.csdn.net/course/detail/27096 六、Unity ARPG课程(技术含量:初中级): A:《MMOARPG地下守护神_单机版实战视频课程(上部)》 https://edu.csdn.net/course/detail/24965 B:《MMOARPG地下守护神_单机版实战视频课程(中部)》 https://edu.csdn.net/course/detail/24968 C:《MMOARPG地下守护神_单机版实战视频课程(下部)》 https://edu.csdn.net/course/detail/24979

    11820 人正在学习 去看看 刘国柱

解决Unity3D发布后软件界面右下角出现Trial Version

1.选择Help->Manage License
在这里插入图片描述

2.点击Manual Activation在这里插入图片描述

3.选择Save License Request
在这里插入图片描述

4.将.alf文件保存到本地

5.在浏览器打开 https://license.unity3d.com/manual

6.将.alf文件上传,生成一个新的许可证,并下载.ulf文件

7.在步骤三的界面点击Load License,再将下载的.ulf文件导入

8.重新启动Unity,再重新打包,水印已经不存在了。

2017-08-24 23:35:48 beihuanlihe130 阅读数 9592
  • C# For Unity系列之基础篇

          本套C#语言教程,全部采用案例化教学模式。结合C#知识点在实际游戏中具体的应用场景,让初级学员快速、深入的学好C#语言,为进一步全面、高效的学习Unity游戏引擎,制作精良的游戏产品,打下坚实的语言基础!        真正学好Unity,其先决条件是一定要有稳固、扎实的编程基础!因此目前绝大多数(线下)Unity培训机构(一般4-5个月)都会先给学员讲解C# for Unity 的编程加强课程。(一般高校的编程课程内容少、不深入...)         本套《C# for Unity》课程共分为“入门篇”、“基础篇”、“中级篇”、“进阶篇”,分别对应于完全“零”编程基础、较少编程基础、需要强化C#编程、需要深入学习C#脚本,等各类型学员群体。       说明:  本课程使用Virtual Studio2012,以及Unity5.2 进行开发与讲解。(学员使用更高版本,对学习影响不大) 一、热更新系列(技术含量:中高级): A:《lua热更新技术中级篇》 https://edu.csdn.net/course/detail/27087 B:《热更新框架设计之Xlua基础视频课程》 https://edu.csdn.net/course/detail/27110 C:《热更新框架设计之热更流程与热补丁技术》 https://edu.csdn.net/course/detail/27118 D:《热更新框架设计之客户端热更框架(上)》 https://edu.csdn.net/course/detail/27132 E:《热更新框架设计之客户端热更框架(中)》 https://edu.csdn.net/course/detail/27135 F:《热更新框架设计之客户端热更框架(下)》 https://edu.csdn.net/course/detail/27136 二:框架设计系列(技术含量:中级):  A:《游戏UI界面框架设计系列视频课程》 https://edu.csdn.net/course/detail/27142 B:《Unity客户端框架设计PureMVC篇视频课程(上)》 https://edu.csdn.net/course/detail/27172 C:《Unity客户端框架设计PureMVC篇视频课程(下)》 https://edu.csdn.net/course/detail/27173 D:《AssetBundle框架设计_框架篇视频课程》 https://edu.csdn.net/course/detail/27169 三、Unity脚本从入门到精通(技术含量:初级) A:《C# For Unity系列之入门篇》 https://edu.csdn.net/course/detail/4560 B:《C# For Unity系列之基础篇》 https://edu.csdn.net/course/detail/4595 C: 《C# For Unity系列之中级篇》 https://edu.csdn.net/course/detail/24422 D:《C# For Unity系列之进阶篇》 https://edu.csdn.net/course/detail/24465 四、虚拟现实(VR)与增强现实(AR):(技术含量:初级) A:《虚拟现实之汽车仿真模拟系统 》 https://edu.csdn.net/course/detail/26618 五、Unity基础课程系列(技术含量:初级)  A:《台球游戏与FlappyBirds—Unity快速入门系列视频课程(第1部)》   https://edu.csdn.net/course/detail/24643 B:《太空射击与移动端发布技术-Unity快速入门系列视频课程(第2部)》 https://edu.csdn.net/course/detail/24645  C:《Unity ECS(二) 小试牛刀》 https://edu.csdn.net/course/detail/27096 六、Unity ARPG课程(技术含量:初中级): A:《MMOARPG地下守护神_单机版实战视频课程(上部)》 https://edu.csdn.net/course/detail/24965 B:《MMOARPG地下守护神_单机版实战视频课程(中部)》 https://edu.csdn.net/course/detail/24968 C:《MMOARPG地下守护神_单机版实战视频课程(下部)》 https://edu.csdn.net/course/detail/24979

    11820 人正在学习 去看看 刘国柱

在Unity3D中发布WebGL,当我们需要将其加入我们自己的网站时,需要将WebGL的内容放入服务代码中。
1. 首先我们需要创建IIS服务器。
打开控制面板->程序->启用或关闭Windows功能->启用IIS服务。
启用IIS服务
这里我们将所有的IIS服务都勾选,在后续使用中都有可能会用到。
2. 接下来我们创建ASP.NET网站
在VS中创建ASP.NET的Web应用程序
创建ASP.NET Web应用程序
其他设置可依据自身需要进行选择。
完成ASP.NET Web应用程序创建后,找到项目目录,将打包导出的WebGL文件复制到指定目录中。
在VS中的解决方案资源管理器中选择显示所有文件,右击我们新导入的WebGL文件并选择包含在项目中。
将WebGL包含在项目中

接下来在网页中根据需要制定相应的跳转或单独初始化WebGL内容。初始化需要调用如下代码:

<script src="TemplateData/UnityProgress.js"></script>
<script src="Build/UnityLoader.js"></script>
<script>
    var gameInstance = UnityLoader.instantiate("gameContainer", "Build/test.json", {onProgress: UnityProgress});//UnityProgress可自定义,详情可参看Unity官方文档
</script>

自定义WebGL模板
需要在ASP.NET中设置Web.config文件,在其中添加mimeMap属性。

<mimeMap fileExtension=".unity3d" mimeType="application/unity"/>
<mimeMap fileExtension=".unityweb" mimeType="application/unity"/>

设置MimeMap属性
然后点击重新生成即可完成网页操作。
3. 发布ASP到指定文件夹
右击项目,选择发布。
发布网站
在弹出来的页面中选择新建配置,发布到文件夹中。
选择指定的发布目标
在IIS、FTP的设置中选择文件系统,并制定发布的位置,最后点击发布按钮即可发布网站到本地。
4. 接下来我们需要将刚刚发布到本地的网站加入到IIS服务中
打开控制面板->系统和安全->管理工具->Internet Information Services (IIS)管理器。
右击网站,添加网站即可进入设置界面。
在IIS中添加网站
在设置界面中,填写网站名称,选择刚刚发布的网站目录,并分配本地IP地址。
设置网站属性
设置完成后即可通过浏览器访问我们发布的网站。
在局域网中可以通过IP地址进行访问。
PS:Unity官方提示WebGL不能在移动端运行,但是在发布的网页中,如果WebGL设置的内存不大,也可以在手机上打开(只测试了Chrome)。
如果出现错误提示,如无法解析UnityLoader.js等问题,需要在IIS服务器中添加MimeMap设置,添加对.unity3d和.unityweb文件类型的支持即可。
添加MimeMap设置
添加类型配置

2018-12-08 12:25:03 hc1350544 阅读数 1128
  • C# For Unity系列之基础篇

          本套C#语言教程,全部采用案例化教学模式。结合C#知识点在实际游戏中具体的应用场景,让初级学员快速、深入的学好C#语言,为进一步全面、高效的学习Unity游戏引擎,制作精良的游戏产品,打下坚实的语言基础!        真正学好Unity,其先决条件是一定要有稳固、扎实的编程基础!因此目前绝大多数(线下)Unity培训机构(一般4-5个月)都会先给学员讲解C# for Unity 的编程加强课程。(一般高校的编程课程内容少、不深入...)         本套《C# for Unity》课程共分为“入门篇”、“基础篇”、“中级篇”、“进阶篇”,分别对应于完全“零”编程基础、较少编程基础、需要强化C#编程、需要深入学习C#脚本,等各类型学员群体。       说明:  本课程使用Virtual Studio2012,以及Unity5.2 进行开发与讲解。(学员使用更高版本,对学习影响不大) 一、热更新系列(技术含量:中高级): A:《lua热更新技术中级篇》 https://edu.csdn.net/course/detail/27087 B:《热更新框架设计之Xlua基础视频课程》 https://edu.csdn.net/course/detail/27110 C:《热更新框架设计之热更流程与热补丁技术》 https://edu.csdn.net/course/detail/27118 D:《热更新框架设计之客户端热更框架(上)》 https://edu.csdn.net/course/detail/27132 E:《热更新框架设计之客户端热更框架(中)》 https://edu.csdn.net/course/detail/27135 F:《热更新框架设计之客户端热更框架(下)》 https://edu.csdn.net/course/detail/27136 二:框架设计系列(技术含量:中级):  A:《游戏UI界面框架设计系列视频课程》 https://edu.csdn.net/course/detail/27142 B:《Unity客户端框架设计PureMVC篇视频课程(上)》 https://edu.csdn.net/course/detail/27172 C:《Unity客户端框架设计PureMVC篇视频课程(下)》 https://edu.csdn.net/course/detail/27173 D:《AssetBundle框架设计_框架篇视频课程》 https://edu.csdn.net/course/detail/27169 三、Unity脚本从入门到精通(技术含量:初级) A:《C# For Unity系列之入门篇》 https://edu.csdn.net/course/detail/4560 B:《C# For Unity系列之基础篇》 https://edu.csdn.net/course/detail/4595 C: 《C# For Unity系列之中级篇》 https://edu.csdn.net/course/detail/24422 D:《C# For Unity系列之进阶篇》 https://edu.csdn.net/course/detail/24465 四、虚拟现实(VR)与增强现实(AR):(技术含量:初级) A:《虚拟现实之汽车仿真模拟系统 》 https://edu.csdn.net/course/detail/26618 五、Unity基础课程系列(技术含量:初级)  A:《台球游戏与FlappyBirds—Unity快速入门系列视频课程(第1部)》   https://edu.csdn.net/course/detail/24643 B:《太空射击与移动端发布技术-Unity快速入门系列视频课程(第2部)》 https://edu.csdn.net/course/detail/24645  C:《Unity ECS(二) 小试牛刀》 https://edu.csdn.net/course/detail/27096 六、Unity ARPG课程(技术含量:初中级): A:《MMOARPG地下守护神_单机版实战视频课程(上部)》 https://edu.csdn.net/course/detail/24965 B:《MMOARPG地下守护神_单机版实战视频课程(中部)》 https://edu.csdn.net/course/detail/24968 C:《MMOARPG地下守护神_单机版实战视频课程(下部)》 https://edu.csdn.net/course/detail/24979

    11820 人正在学习 去看看 刘国柱

unity3d可以直接读取MySQL,但是打包成webgl网页格式之后便会受到限制。 我各种翻墙,从网上查找各种文章,都没有找到完整的技术解决方案。只好自己淌着水过河,终于找到了一个通过PHP解决的方法。 PHP读取MySQL,然后unity加载PHP的返回。

首先是用的体unity加载PHP的代码,由于加载可以传参,但是返回只能是字符串格式,因此,需要给解析的变量名编入数组,再加上分隔符,收到返回后然后再用正则表达式分割字符串。

这里是php去读取MySQL然后编成字符串的代码。

<?php

header("Access-Control-Allow-Credentials: true");
header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Methods: POST, GET, OPTIONS');
header('Access-Control-Allow-Headers: Accept, X-Access-Token, X-Application-Name, X-Request-Sent-Time');

if (!empty($_POST["sql"]))
{
    $sql = $_POST["sql"];
    $table = $_POST["table"];
	$name = $_POST["name"];
}

$servername = "10.1111111";
$username = "aaa";
$password = "aaa";
 
$name1 = explode('@',$name); 
 
$conn=mysql_connect($servername,$username,$password) or die("error connecting") ; //连接数据库
 
mysql_query("set names 'utf8'"); //数据库输出编码 应该与你的数据库编码保持一致.南昌网站建设公司百恒网络PHP工程师建议用UTF-8 国际标准编码.
 
mysql_select_db($table); //打开数据库
 
 
$result = mysql_query($sql,$conn); //查询

//echo $name;

while($row = mysql_fetch_array($result))
{
	for($i=0;$i<count($name1);$i++)
	{
		$name2=$name1[$i];
		//echo $name1;
		//echo $name2;
		if(array_key_exists($name2,$row))
		{
			echo $row[$name2];
			if($i<(count($name1)-1))
			{
				echo "###";
			}	
		}

	}
	
echo "@@";
}


	

?>

这是C#加载PHP的返回的代码,将参数传递进去,www加载PHP。

     /// <summary>
     /// 调取mysql 中KKS
     /// sql 语句   表库名  变量名列表
     /// </summary>
     public IEnumerator getKKSWithPHP(string sql, string table, List<string> nameList,Action< List<string>,string> callBack)
     {
         yield return new WaitForSeconds(0.5f);
         WWWForm form = new WWWForm();
         string name = "";
         for (var i = 0; i < nameList.Count; i++)
         {
             name += nameList[i];
             if (i < nameList.Count - 1)
             {
                 name += "@";
             }
         }

         form.AddField("sql", sql);
         form.AddField("table", table);
         form.AddField("name", name);

         WWW www = new WWW("http://11.11.11.11/index0.php", form);

         yield return www;
         if (string.IsNullOrEmpty(www.error))
         {
             //Debug.LogError(Time.time);
             callBack(nameList,www.text);
         }
         else
         {
             Debug.LogError(www.error);
             callBack(null, null);
         }
     }

此时,根据解析完的字符串,遍历变量的数组,使用反射获取值。

注意,php代码需要部署在服务器,否则加载完不会运行,只是当做一段txt。

Unity3D 发布App Store

阅读数 640

没有更多推荐了,返回首页