【Unity3D杂记】发布到WebGL中使用WWW读取csv文件总是失败

笨木头  2016-12-8 8:32   未分类   阅读(4,287)   5条评论

废话:

最近老板要我做一个培训游戏,由于我们公司主要是做网站的,自然是要做网页版的游戏了。

如果让我用网页端的技术来开发游戏,实在是有心无力,于是我提议用我最熟悉的技术来做,毫无疑问,只能选择Unity3D了。

在Unity3D的新版本中(我使用的是5.4.2),已经不支持生成WebPlayer了,只能生成WebGL版本。

小姑娘:废话还真多

 

1.问题描述

为了减小服务器的压力,我打算把游戏所需的静态数据(即不会发生改变的死数据)保存到CSV文件里,关于这个,大家有兴趣的话,我下次再聊聊(直接在公众号里发消息给我吧,我会看到的)。

在WebGL中读取文件只能用WWW了,可是折腾了好久,就是读不到任何数据。

 

2.解决方法

突然灵机一戳(小姑娘:是灵机一动!),我想到了,没错,CSV文件必须是Utf-8格式,否则是加载不出来的。

有可能是文件里包含了中文导致的(没有去验证)。

 

3.保存Utf-8格式的方法

先用记事本打开CSV文件,然后另存为,下方有一个文件格式的下拉选项,选择Utf-8,保存即可:

 

4.唠叨一下

Unity3D发布WebGL真是太慢了!

 

 

5 评论

      1. 楼主,我只是在WebGL上简单加载一个本地图片,就不可以。能指点下吗?
        url 是本地每个图片的路径
        ///
        /// 加载图片
        ///
        ///
        IEnumerator LoadImage(string url)
        {
        print(url);
        if (cube == null)
        {
        cube = GameObject.CreatePrimitive(PrimitiveType.Cube);
        }
        yield return null;

        WWW www = new WWW(url);
        yield return www;

        if (www.error != null)
        {
        print(“#####:加载图片失败” + http://www.error);
        StopCoroutine(“LoadImage”);
        }

        cube.GetComponent().material.mainTexture = http://www.texture;

        http://www.Dispose();

        }

发表评论

电子邮件地址不会被公开。 必填项已用*标注