untiy webgl常见问题与操作

文章目录

    • [1 untiy和网页相互通信](#1 untiy和网页相互通信)
    • [2 打开新页面(同标签页和新标签页)](#2 打开新页面(同标签页和新标签页))
    • [3 获取网页的URL](#3 获取网页的URL)
    • [4 解析Url内的参数](#4 解析Url内的参数)
    • [5 后处理与色彩空间问题](#5 后处理与色彩空间问题)

1 untiy和网页相互通信

看这个文章

2 打开新页面(同标签页和新标签页)

先看本文untiy和网页相互通信部分

.jslib文件内容

bash 复制代码
mergeInto(LibraryManager.library,
    {
        OpenNewWebsite: function (str) {
            //window.open(Pointer_stringify(str));//新标签页打开页面
            window.location.href = Pointer_stringify(str);//当前标签页打开页面
        },
    });

c#部分

csharp 复制代码
    [DllImport("__Internal")]
    private static extern void OpenNewWebsite(string str);    //直接调用这个方法,参数为地址

3 获取网页的URL

先看本文untiy和网页相互通信部分

jslib部分:

bash 复制代码
mergeInto(LibraryManager.library,
    {
      StringReturnValueFunction: function ()
      {
      	var returnStr = window.location.search;
     	var buffer = _malloc(lengthBytesUTF8(returnStr) + 1);
     	writeStringToMemory(returnStr, buffer);
     	return buffer;
      },
    });

c#部分

csharp 复制代码
 [DllImport("__Internal")]
    private static extern string StringReturnValueFunction(); //直接调用这个方法,返回值为url

4 解析Url内的参数

csharp 复制代码
string url = "http://localhost:8001/#/new_dashboard?litchiId=1";
Uri uri = new Uri(url);
string temp = uri.Query;//返回值形如?id=1 ?后所有的参数都在这里
string[]parameters = temp.Substring(1).Split('&');
Dictionary<string, string> parDic = new Dictionary<string, string>();//参数的字典
for (int i = 0; i < parameters.Length; i++)
{
    string[] kv = parameters[i].Split('=');
    parDic.Add(kv[0], kv[1]);
}
systemModel.gardenID_current = parDic["litchiId"];

5 后处理与色彩空间问题

Webgl支持后处理,需要注意的是,屏幕空间反射是不可用的,环境光遮蔽功能请使用ScalableAmbientObscurance模式

默认的色彩空间是Gamma,使用Linear模式需要取消勾选下方的AutoGraphicsAPI(这将同事构建WebGL1.0和2.0),并手动指定为仅支持WebGL2.0,在2.0模式下,仅支持延迟渲染,主流浏览器均已支持webgl2.0

相关推荐
mxwin26 分钟前
Unity Shader 冰面 Shader 制作原理与流程
unity·游戏引擎·shader
小拉达不是臭老鼠2 小时前
Unity中的UI系统之UGUI_登陆面板实现
ui·unity
郝学胜-神的一滴2 小时前
[简化版 GAMES 101] 计算机图形学 11:频域·卷积·抗锯齿
c++·unity·图形渲染·opengl·three·unreal
元气少女小圆丶19 小时前
SenseGlove Nova 2+Unity开发笔记2
笔记·unity·游戏引擎
想不明白的过度思考者1 天前
Unity学习笔记——虚拟摇杆实现笔记(事件触发器的使用、UGUI 坐标转换)
笔记·学习·unity
魔士于安1 天前
unity volumefog带各种demo第一人称 wsad 穿墙控制
游戏·unity·游戏引擎·贴图·模型
魔士于安1 天前
红色文化馆技术文档
前端·unity·游戏引擎·贴图·模型
LONGZETECH1 天前
Unity 3D工业级教育软件实战:200+无人机装调任务的碰撞检测与交互落地
3d·unity·架构·游戏引擎·无人机·交互·cocos2d
淡海水1 天前
08-认知篇-对比-injectfix深度解析
unity·c#·热更新·clr·hybrid·injectfix
迪普阳光开朗很健康1 天前
BepInEx 插件开发文档中文翻译 - 项目分享
unity·bepinex