unity3d 网页插件_unity 3d网页插件 - CSDN
  • WWebView v1.3.2最新版 适合u5.6-2017.3 unity3d内嵌web网页插件
  • Unity3D网页插件

    千次阅读 2013-07-10 13:21:24
  • Unity3d 网页插件BestHttp使用介绍

    千次阅读 2016-10-20 14:29:38
    Best HTTP (Pro) 这是一款很多公司都在用的网页插件,感觉确实不错,分Pro版本和普通版本,下载地址:http://www.manew.com/thread-96247-1-1.html 需要你对http短连接有一定的了解。废话不多说啊,开搞! 一....

    原创


    Best HTTP (Pro)  这是一款很多公司都在用的网页插件,感觉确实不错,分Pro版本和普通版本,下载地址:http://www.manew.com/thread-96247-1-1.html

    需要你对http短连接有一定的了解。废话不多说啊,开搞!


    因为自己找教程的时候,就找到一篇文章,还写的不多,本来想写的细一点,把大部分功能都写一下,还蛮多的,有点偷懒,上传流文件,下载上传进度其实插件的PDF都有,看一下就差不多,我这只是抛砖引玉。


    using UnityEngine;
    using System.Collections;
    using UnityEngine.UI;
    using System.Collections.Generic;
    
    //需要的命名空间
    using BestHTTP;
    using BestHTTP.Statistics; 
    using BestHTTP.Cookies;
    using System;
    using System.IO; 
    
    
    
    public class bestHttpDemo : MonoBehaviour {
    
        public RawImage image;
        public Text showResponse;
    
    
        //Get请求   不写HTTPMethods.Get默认也是Get
        public void OnGetRequest()
        {
            HTTPRequest request = new HTTPRequest(new Uri("https://www.baidu.com/"), HTTPMethods.Get, OnRequestFinished);
            request.Send();
        }
    
    
        //请求回调   request请求  response响应  这两个参数必须要有 委托类型是OnRequestFinishedDelegate
        void OnRequestFinished(HTTPRequest request, HTTPResponse response)
        {
            showResponse.text = "响应:" + response.DataAsText;
        }
    
    
        //下载图片 
        public void OnLoadImage()
        {
    
            //Lambda表达式,下载直接回调,简便写法。  
            new HTTPRequest(new Uri("http://img.manew.com/data/attachment/forum/201610/19/155755pbw4tt22zznczohh.png"), (request, response) =>
            {
    
                image.texture = response.DataAsTexture2D;
                
                //保存图片
                try
                {
    
                    if (Application.platform == RuntimePlatform.Android)
                    {  
                        //在PlayerSetting里修改 WriteAccess写入入口为外部SDCard   (这里还有问题,安卓里没存上,还没搞懂为什么)
                        //Application.persistentDataPath  在安卓上  /mnt/sdcard/Android/data/com.zou.chongyang/files  
                        File.WriteAllBytes("jar:file://" + Application.persistentDataPath + "/MyImage.png", response.Data);
                    }
                    else
                    {
                        File.WriteAllBytes(Application.dataPath + "/MyImage.png", response.Data);
                    }
    
                }
                catch (IOException e)
                {
                    print(e);
                }  
    
            }).Send();
    
        }
        
        /*
        //最好自己去看BestHTTPDocumentationEN.pdf文档,功能蛮多的。
        //BestHttp更多API  还蛮多的,懒得弄到UI上显示,自己拿着用吧。
        public void BestHttpAPI()
        {
            GeneralStatistics stats = HTTPManager.GetGeneralStatistics(StatisticsQueryFlags.All); //获取统计信息,统计类型全部
    
            BestHTTP.Caching.HTTPCacheService.IsSupported        //是否支持缓存(只读)
            stats.CacheEntityCount.ToString();                   //缓存对象个数
            stats.CacheSize.ToString("N0");                      //缓存总大小
            BestHTTP.Caching.HTTPCacheService.BeginClear();      //清空缓存
           
            BestHTTP.Cookies.CookieJar.IsSavingSupported        //是否支持保存Cookie(只读)
            stats.CookieCount.ToString();                       //Cookie个数
            stats.CookieJarSize.ToString("N0");                 //Cookie总大小
            BestHTTP.Cookies.CookieJar.Clear();                 //清空Cookie
         
            HTTPManager.GetRootCacheFolder()                    //获取缓存和Cookies目录路径
    
            stats.Connections.ToString();                       //Http连接数
            stats.ActiveConnections.ToString();                 //激活的Http连接数
            stats.FreeConnections.ToString();                   //空闲的Http连接数
            stats.RecycledConnections.ToString();               //回收的Http连接数
            stats.RequestsInQueue.ToString();                   //Request请求在队列的数量
    
            BestHTTP.HTTPManager.OnQuit();                      //退出统计
         
         
            //缓存维护  缓存最大1mb,   删除2天前的缓存
            BestHTTP.Caching.HTTPCacheService.BeginMaintainence(new BestHTTP.Caching.HTTPCacheMaintananceParams( TimeSpan.FromDays(2),1 *1024*1024 ));
            
            //Cookie维护  删除7天前的Cookie并保持在最大允许大小内。
            BestHTTP.Cookies.CookieJar.Maintain();
         
            //获取Cookie集合
            List<Cookie> cookie = CookieJar.Get(new Uri("https://www.baidu.com/"));
            //Cookie的API很多
            cookie[0].Name
            cookie[0].Domain 
            cookie[0].Value
        }
        */
    }
    


    Cookie介绍: https://my.oschina.net/jihan19921016/blog/506473

    总结:不错,很好用!

    展开全文
  • Unity3D 插件 粒子生成系统 TC Particles v1.8.2 http://www.idoubi.net/unity3d/tool/5805.html Unity3D插件 截屏工具 Ultimate Screenshot Creator v1.4.3 http://www.idoubi.net/unity3d/tool/5803.html Unity3D ...

    Unity3D 插件 粒子生成系统 TC Particles v1.8.2
    http://www.idoubi.net/unity3d/tool/5805.html
    Unity3D插件 截屏工具 Ultimate Screenshot Creator v1.4.3
    http://www.idoubi.net/unity3d/tool/5803.html
    Unity3D Q版糖果消消乐 完整源码 Candy Match 3 Kit v1.1.0
    http://www.idoubi.net/unity3d/complete-project/2057.html
    Unity3D 生物毛发设计制作插件 Hair Designer v1.5.7
    http://www.idoubi.net/unity3d/tool/5802.html
    Unity3D 网络运动数据同步插件 Smooth Sync v3.22
    http://www.idoubi.net/unity3d/tool/5686.html
    Unity3D 游戏数据保存加载插件 Easy Save – The Complete Save & Load Asset v3.1.1
    http://www.idoubi.net/unity3d/tool/5684.html
    Unity3D 年度获奖插件 AVPro
    http://www.idoubi.net/unity3d/tool/5682.html
    Unity3D 建筑创建工具 BuildR 2 – Procedural Building Generator v2.21
    http://www.idoubi.net/unity3d/tool/5661.html
    Unity3D 地图生成工具 MapMagic
    http://www.idoubi.net/unity3d/tool/5624.html
    Unity3D 内置网页浏览器 UniWebView 3 v3.12.1
    http://www.idoubi.net/unity3d/tool/5618.html
    Unity3D 自动高光生成插件 Hierarchy PRO – Auto HighLighter v21.3f1
    http://www.idoubi.net/unity3d/tool/5614.html
    Unity3D 瓦片地图插件 2D Tilezone
    http://www.idoubi.net/unity3d/tool/5612.html
    Unity3D 关卡制作工具 Strata Easy 2D Level Generator v1.3
    http://www.idoubi.net/unity3d/tool/5568.html
    Unity3D 网格模型编辑工具 Mesh Editor v1.9
    http://www.idoubi.net/unity3d/tool/5564.html
    Unity3D服务端插件 Master Server Kit v1.18
    http://www.idoubi.net/unity3d/tool/5515.html
    Unity3D 解体动画的粒子系统 Disperse Pixels v1.12
    http://www.idoubi.net/unity3d/tool/5024.html
    Unity3D 现代风格UI资源包 Modern UI Pack v2.2.5
    http://www.idoubi.net/unity3d/tool/4095.html
    Unity3D AI 框架 Eliot – AI Framework v1.2
    http://www.idoubi.net/unity3d/tool/4229.html
    Unity3D 简易细节层次插件 Simple LOD
    http://www.idoubi.net/unity3d/tool/3764.html
    Unity3D 物体表面贴花喷漆插件 Easy Decal Easy Decal v1.6.8
    http://www.idoubi.net/unity3d/tool/4060.html
    Unity3D 汽车底盘传动模拟插件 Kinematic Car Suspension – Offroad Car
    http://www.idoubi.net/unity3d/tool/3162.html

    展开全文
  • Unity3d 画线插件

    热门讨论 2020-07-30 23:32:29
    Unity3d 画线插件,可以在u3d中画各种非常酷的线。
  • Unity中内嵌网页插件 UniWebView 2.8使用

    万次阅读 热门讨论 2016-11-14 20:48:02
    UniWebView2:适用于Andriod、ios和Mac os,在移动端效果最好。支持WP8,不支持windows桌面系统,包括编辑器状态。 Unity4.x版本是 UniWebViewUnity AssetStore 上的插件

    2016.10.22   孙广东  

    http://blog.csdn.net/u010019717

                   

                      UniWebView2:适用于Andriod、ios和Mac os,在移动端效果最好。支持WP8,不支持windows桌面系统,包括编辑器状态。  Unity4.x版本是 UniWebView

    Unity AssetStore 上的插件: https://www.assetstore.unity3d.com/en/#!/content/32461        

                 在Unity中主要用于活动,就想《阴阳师》  手游!



     


    开发有些不方便,因为不支持window下的 Editor的调试!,  只能在Mac下!

     

    使用的主要思路

         插件的 官网 ;   http://uniwebview.onevcat.com/

    下载插件然后安装导入 Unity
     

    使用 Prefab 和设置 URL .

            从 UniWebView/Prefab 文件夹下 拖拽 UniWebViewObject  预制体,在Inspector 上设置 URL(在Windows上也设置不了), Mac 上Play就可以看到效果, 但是在Window上要打包成移动包才行。

             

     

    UniWebView的工作方式

     

              在Mac 系统下可以设置 UniWebView组件上的:  Insets 能控制 web 视图的大小。Start函数中加载(Load On Start )和加载完成时自动显示(Auto Show WhenLoad Complete )。

     

     

               除了显示 web 页面的基本用法,UniWebView 有一些其他重要的功能、 与Unity场景通信, 侦听 web 页event事件和计算一些 javascript。

             请参阅详细的在线手册 http://uniwebview.onevcat.com/manual

             和脚本引用 http://uniwebview.onevcat.com/reference/class_uni_web_view.html

     

     

    通过脚本设置  UniWebView  加载Web 内容并显示:

           假设, 你在 UniWebView.cs  脚本的所在对象上有一个脚本,  其中定义了字段:

    private UniWebView _webView;


        你可以通过这样的方式 得到 引用:

    var _webView = gameObject.GetComponent<UniWebView>();


           // 监听事件

    _webView.OnLoadComplete += OnLoadComplete;
    _webView.OnReceivedMessage += OnReceivedMessage;
    _webView.OnEvalJavaScriptFinished +=OnEvalJavaScriptFinished;


                然后  设置 Web 页面的大小  和你 想要加载页面的Url :

     

    _webView.insets = newUniWebViewEdgeInsets(5,5,5,5);    // 距离全屏差5个像素
    _webView.url = "http://uniwebview.onevcat.com/demo/index.html";


     

                 设置完成后,收到调用加载 页面 :

    _webView.Load();


     

               页面加载成功或者失败的  完成回调函数大致如下:

    voidOnLoadComplete(UniWebView webView, bool success, string errorMessage) {
     if (success) {
        //  显示 加载完成的界面
       webView.Show();
      } else {
        //   输出 错误码
       Debug.LogError("Something wrong in webview loading: " + errorMessage);
      }
    }


     

    如果 不想监听(其实是不处理失败检测)和自己处理这个 OnLoadComplete  事件,可以 设置属性:        你好像也可以 先调用 Show()  函数,然后在调用 Load(), 函数。

             autoShowWhenLoadComplete  =  true;


    Web页面和  Unity游戏逻辑的通信

    一、UniWebView发送消息给 Unity

              这个建议使用 url  方案。UniWebView 将监听 以  uniwebview:// 开始 的 url

    如果玩家在 Web 页面点击了 Url 链接, UniWebView 将会解析为一个 UniWebViewMessage  对象  ,然后引发 OnReceivedMessage 事件。   一个 UniWebViewMessage 对象包含 一个路径字符串(其中有url 和args 参数字典)。

               例如当点击了链接 :  uniwebview://move?direction=up&distance=1

      将被解析为:

    path = "move"
    args = {
        direction ="up",
        distance ="1"
    }


     

    你在 监听了 OnReceivedMessage 事件 的回调中, 会得到 UniWebViewMessage对象,然后实现自己的逻辑:          (自己注:  在游戏中我们通常点击了活动的每个标签或者 Button可能是页面切换,可能是Button的网络请求,  都可以以这种方式来弄!  如果是C#写逻辑,那不就没有了一些热更新的优势了???)

    voidOnReceivedMessage(UniWebView webView, UniWebViewMessage message) {
      Debug.Log(message.rawMessage);
       if (string.Equals(message.path,"move")) {
          // It is time to move!
          // In this example:
          // message.args["direction"] ="up"
          // message.args["distance"] ="1"
       }
    }


     

    关于更多的  url 方法可以看:  AddUrlScheme 这个API 函数

    http://uniwebview.onevcat.com/reference/class_uni_web_view.html#a785e560917f32efe65d91874c632f7d5

     

     

    二、Unity发送消息到 UniWebView

           你可以运行任何的 javescript 页面,  通过使用 EvaluatingJavaScript 你能调用并运行Javascript,  这个JavaScript代码可以是你游戏脚本中的字符串形式。  你能监听 OnEvalJavaScriptFinished  事件, 来处理这个结果。

     

     

    其他功能:

    http://uniwebview.onevcat.com/manual

     

    X      背景透明-在 iOS 中,默认情况下web 视图还有一个灰色的背景 。你可以使用 SetTransparentBackground 来设置为 背景透明。

     

    X      加载进度框 -  就是表示加载进度,以改善体验。您可以禁用 和 通过SetShowSpinnerWhenLoading 和SetSpinnerLabelText 自定义标签文本。

     

    X      Back 按键 和导航工具栏按钮支持-用户可以使用后退按钮在 web 页面之间导航,Android 设备上像在本机浏览器中一样。Ios 是一个带有导航按钮的默认工具栏。

     

    X      向前 和 向后 ,浏览器的两个行为,您可以在你的游戏中控制网页导航,通过 GoBack 和GoForward 方法。

     

    X         清理缓存-web 视图将保持 url 请求,默认情况下,这可能会使旧的页面显示。

    即使您更新您的 web 页。使用 CleanCache 来解决这一问题。

     

    X       在web 视图  播放 youtube 视频 -只需加载url,它就如此简单的播放。

     

    X       加载本地文件 和 html 字符串-  给定设置 本地文件的 url,或 调用 LoadHTMLString 具有 html字符串的值,您可以加载本地的内容。

     

    X        更多使用- 你不能只用它来加载 html 和web 页,而且还显示一些图像。

     

    X 不止一个 web 视图-  如果您希望在你的游戏中显示 多个 web 视图,那就是 有多个 挂有UniWebView 组件的GameObject 而已。。

     

     

     

    设置  AndroidManifest.xml   

                    因为 Unity垮平台, 肯定会使用第三方或者自己扩展的android 插件, 就需要维护同一个 AndroidManifest.xml  文件,  需要合并每个插件的需求 (解决冲突)。

            

    http://uniwebview.onevcat.com/manual.html#merge_instruction

     

     

                  在导入这个插件之前, 如果在您的项目中已经有一个AndroidManifest.xml 文件,你不应该从 UniWebView 包导入 AndroidManifest.xml 文件了(如果没有就直接全部导入就行了)。  而是您需要手动更新该文件。   其实是相当简单,只需不到2 分钟 。

     

                 你可以遵循这些步骤,使其正常工作︰

    1.    在项目中的 Assets/Plugins/Android   路径下 ,使用文本编辑器打开  AndroidManifest.xml  文件。

     

    2.       文件中 搜索  android.intent.action.MAIN(肯定有且只有一个)       然后按照下面的步骤操作:

     

    Merge(合并)

    (1)   上面步骤二的搜索结果位于<activity>与</activity> 标记对之间。  然后插入下面两行数据:

     
    <meta-dataandroid:name="android.app.lib_name" android:value="unity"/>
    <meta-dataandroid:name="unityplayer.ForwardNativeEventsToDalvik"android:value="true" />

     声明: 这个插件本人并没有在实际项目中使用,  所有观点都是个人理解,   给大家带来不便表示抱歉!

    (2)  同样的在<activity...> 标记中,将 android: name 的值更改为"com.onevcat.uniwebview.AndroidPlugin"。这将使用 UniWebView 的activity 来启动你的游戏。这样做,这样我们可以避免 web 视图在 安卓系统的一些问题(类似的问题网上也是有人 提到过:

                  “在安卓平台使用最大的问题是Unity失去焦点的问题。经过使用OnApplicationFocus方法测试,调用平台WebView打开界面时默认打开另一个Activity,Unity本身为一个Activity,当打开另外一个Activity时Unity会失去焦点,此时焦点不在Unity程序身上,如果锁屏或者按Home键再打开后只会调出最后一个显示的Activity,也就是UniWebView打开的网页,而不是Unity程序。也就是在打开网页的界面按下Home键或者锁屏后程序将无法正常返回。主要的问题在于Unity程序和打开的网页属于不同的Activity,解决的方法为更改Unity工程中的安卓配置文件,使一个Activity继承于另一个,显示在同一个Activity上。)。                    如果你的mainactivity  使用的不是 com.unity3d.player.UnityPlayerNativeActivitycom.unity3d.player.UnityPlayerActivitycom.unity3d.player.UnityPlayerProxyActivity 其中之一的话,您必须修改UniWebView源代码 修改到你的activity名字上。  请参阅重新编译的指南 http://uniwebview.onevcat.com/manual#manual-recompile ,更多地了解它。


    (3) 同样的在 <activity...> 标记中,添加 android: hardwareAccelerated ="true"android:windowSoftInputMode="adjustResize" 。这将使安卓系统提供 html5功能。


    最总   会变成这样的格式:

    <activityandroid:name="com.onevcat.uniwebview.AndroidPlugin"
      android:label="@string/app_name"
       android:hardwareAccelerated="true"
       android:windowSoftInputMode="adjustResize"
       android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen">
       <intent-filter>
           <action android:name="android.intent.action.MAIN" />
           <category android:name="android.intent.category.LAUNCHER"/>
       </intent-filter>
       <meta-data android:name="android.app.lib_name"android:value="unity" />
       <meta-dataandroid:name="unityplayer.ForwardNativeEventsToDalvik"android:value="true" />
    </activity>


     

    (4) 最后,添加访问互联网的权限, 如果有了就不用添加了。 在</manifest> 标记  之前 添加:

     

    <uses-permissionandroid:name="android.permission.INTERNET" />


     http://blog.csdn.net/u010019717

     

    插件Demo的一些 在安卓手机上的截图:



     



    展开全文
  • Unity 3D网页游戏与flash网页游戏的较量
  • 游戏开发者眼中的Unity 3D网页游戏测评报告
  • Unity3d】200个插件免费分享(所有资源已上传)

    万次阅读 多人点赞 2019-07-05 10:03:48
    接触U3D有段时间了,积累了点插件、资源、学习网站、论坛等,现在整理下,跟广大同仁们分享下! 所有资源已经上传完毕,约5G。 200个插件免费分享 【下载链接】  链接:https://pan.baidu.com/s/1smQzbDb 密码...
  • Unity内嵌网页插件

    2020-07-30 23:33:32
    网页渲染为纹理并与其完全交互 加快库存管理器,简化注册页面 构建UI 功能 - 将网站渲染为2D或3D对象 Chromium后端; 一流的支持:HTML,CSS和JavaScript - 从Unity 调用JavaScript¹ - 从JavaScript调用Unity¹ - ...
  • 如何能隐秘地在没有连接外网的机器上安装Unity3D的WebPlayer播放器插件? Unity发布成网页版后,需要安装WebPlayer播放器才能加载显示文件内容。 一般情况下,只需要从官网下载完整版的WebPlayer安装包文件,就能...
  • 一、前言 发现就喜欢研究这些插件,为什么...要不说Unity3D入门容易,提升难呢,因为提升全是靠苦功夫,去研究底层代码。算了,不絮叨了 二、参考文章 Unity3D 装备系统学习Inventory Pro 2.1.2 总结 Unity3D...
  • unity 3D 游戏 网页打开无需插件

    热门讨论 2020-07-27 23:33:15
    这是一款真实的不用任何安装环境的网页游戏,只要有浏览器就可以开始使用。 并提供全部的网页设计代码。文件有点大,大概30M左右。
  • Unity3D 简易细节层次插件 Simple LOD http://www.idoubi.net/unity3d/tool/3764.html Unity3D 物体表面贴花喷漆插件 Easy Decal Easy Decal v1.6.8 http://www.idoubi.net/unity3d/tool/4060.html Unity3D 汽车底盘...
  • Unity3D网页数据交互的基本原理

    千次阅读 2015-08-10 09:45:03
    1、Unity3D的游戏引擎是和编辑器集成在一起的,所有它也是一个制作/开发平台。 2、Unity3D是使用JavaScript、C#作为核心脚本语言来驱动事个游戏引擎。 3、平台可以发布Exe执行文件或者打包为可供网页调用的一个独立...
  • Unity3d_项目_嵌入网页(一)

    热门讨论 2020-07-21 10:00:36
    共三份。这是第一份。 Unity3d_项目_嵌入网页插件 Unity3d_项目_嵌入网页插件
  • Unity集成内嵌网页插件-支持Android和IOS

    万次阅读 热门讨论 2016-07-15 16:33:57
    本文所用到的插件,是修改自一个日本人keijiro的代码。他的源码地址为:https://github.com/keijiro/unity-webview-integration 为更易于使用,本插件是将其源码由...本插件支持Unity网页javascript进行双向交互
  • Unity免费插件分享 UniWebView 3 3.8.0 Unity3D手机网页视图组件 最新版 UniWebView 包含一组 C# 的高层级 API,它对 iOS 和 Android 平台的本机 API 进行了抽象封装。使用 UniWebView,您可以在无需了解本机开发的...
  • unity3d网页加载

    2018-04-10 13:33:55
    需要使用的插件:Awesomium1.7.0using System.Collections;using System.Collections.Generic;using UnityEngine;using zuoYeChe.file;using Awesomium.Core;using Awesomium.Core.Data;using Awesomium.Unity;using...
1 2 3 4 5 ... 20
收藏数 1,944
精华内容 777
关键字:

unity3d 网页插件