Unity发布webgl获取浏览器的URL

Unity发布webgl获取浏览器的URL

Unity发布webgl之后获取浏览器的url
在unity中创建文件夹Plugins,然后添加添加文件UnityGetBrowserURL.jslib

 var GetUrlFunc = {//获取地址栏的URLStringReturnValueFunction: function () {var returnStr = window.top.location.href;var  title =decodeURI(returnStr);var bufferSize = lengthBytesUTF8(title) + 1;var buffer = _malloc(bufferSize);stringToUTF8(title, buffer, bufferSize);return buffer;}};
mergeInto(LibraryManager.library, GetUrlFunc);

在这里插入图片描述

在Unity中添加代码

using UnityEngine;
using System.Runtime.InteropServices;
using UnityEngine.UI;public class NewBehaviourScript : MonoBehaviour
{[DllImport("__Internal")]private static extern string StringReturnValueFunction();//获取地址栏的URL,这个方法名要和上面js代码的方法名一样public string webGLURL = "";public Button btnGetBrowser;public Text txtBrowserURL;private void Start(){GetBrowserURL();btnGetBrowser.onClick.AddListener(() =>{GetBrowserURL();});}private void GetBrowserURL(){
#if UNITY_WEBGLwebGLURL = StringReturnValueFunction();txtBrowserURL.text = webGLURL;Debug.Log(webGLURL);
#endif}
}

场景布局
在这里插入图片描述
发布webgl
在这里插入图片描述
拷贝到nginx
在这里插入图片描述

运行结果
在这里插入图片描述

在地址栏输入Ip:端口号/?serligblsdhroivbaelirbgvkersab ,/?后面是随便打的字符,然后按下enter会刷新网页并重新显示URL,(显示的文字和在编辑器下显示的文字不一致的原因是:webgl不支持unity自带的字体中的中文,换个其他的字体就行了)
在这里插入图片描述

资源下载

自己去我发布的资源下载吧。我上传半小时了还不审核通过。

Enjoy

资源可以私信获取,有不明白的欢迎私信留言

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/493171.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Darkhole 2

kali:192.168.223.128 靶机:192.168.223.152 主机发现 nmap -sP 192.168.223.0/24 端口扫描 nmap -sV -p- -A 192.168.223.152 开启了22 80 端口 web 进入登录界面发现没有注册按钮了 扫一下目录 gobuster dir -u http://192.168.223.152 -x html,txt,php,bak,zip,git --wor…

软考47-上午题-【数据库】-数据查询语言DQL2

一、聚合函数 聚合函数实现数据统计的功能,返回一个单一的值。聚合函数一般与select语句的group by子句一起使用。 示例: 二、数据分组-group by 聚合函数加上group by子句进行分组。 通常一个聚合函数的作用范围是满足where子句中指定条件的记录&…

pytest如何在类的方法之间共享变量?

在pytest中,setup_class是一个特殊的方法,它用于在类级别的测试开始之前设置一些初始化的状态。这个方法会在类中的任何测试方法执行之前只运行一次。 当你在setup_class中使用self来修改类属性时,你实际上是在修改类的一个实例属性。在Pyth…

Node.js中的模块化开发与代码组织

在现代的前端开发中,模块化已经成为一个不可或缺的部分。而在Node.js中,模块化开发更是被广泛应用。本文将深入探讨Node.js中的模块化开发及代码组织,带领大家了解其原理和应用方法。 什么是模块化开发? 模块化开发是指将一个大…

【51单片机】红外遥控红外遥控电机调速(江科大)

1.红外遥控简介 红外遥控是利用红外光进行通信的设备,由红外LED将调制后的信号发出,由专用的红外接收头进行解调输出 通信方式:单工,异步 红外LED波长:940nm 通信协议标准:NEC标准 2.硬件电路 红外发送部分 IN高电平时,LED不亮,IN低电平时&…

内网穿透的应用-如何在群晖配置WebDAV实现云同步Zotero科研文献与笔记【内网穿透】

文章目录 前言1. Docker 部署 Trfɪk2. 本地访问traefik测试3. Linux 安装cpolar4. 配置Traefik公网访问地址5. 公网远程访问Traefik6. 固定Traefik公网地址 前言 Trfɪk 是一个云原生的新型的 HTTP 反向代理、负载均衡软件,能轻易的部署微服务。它支持多种后端 (D…

Three.js-02Vue框架入手

1.创建项目 说明&#xff1a;默认有vue基础&#xff0c;node版本18以上。 vue create threejs 2.选择vue3 4.安装 npm i three 5. 修改页面 <template> <div></div> </template><script setup> import * as THREE from three;const width win…

如何在Linux部署Portainer并结合内网穿透远程管理本地Docker容器

文章目录 前言1. 部署Portainer2. 本地访问Portainer3. Linux 安装cpolar4. 配置Portainer 公网访问地址5. 公网远程访问Portainer6. 固定Portainer公网地址 前言 Portainer 是一个轻量级的容器管理工具&#xff0c;可以通过 Web 界面对 Docker 容器进行管理和监控。它提供了可…

(C++)map、set的介绍和使用

个人主页&#xff1a;Lei宝啊 愿所有美好如期而遇 目录 前言&#xff1a; set set的构造 set的迭代器 set方法 insert erase count lower_bound && upper_bound multiset map map的构造 map的迭代器 map方法 insert []运算符重载 multimap 前言&…

VirtualBox+Vagrant安装linux

一、VirtualBox安装 VirtualBox官网&#xff1a;Oracle VM VirtualBox 这里采用VirtualBox--7.0.0 版本 二、Vagrant安装 Vagrant官网&#xff1a;Vagrant by HashiCorp Vagrant镜像仓库&#xff1a;Discover Vagrant Boxes - Vagrant Cloud 这里采用Vagrant--2.4.1版本 在…

JAVA学习笔记11

1.标识符 1.1 标识符的命名规则和规范 1.1.1 标识符概念 ​ 1.Java对各种变量、方法和类等命名时使用的字符序列称为标识符 ​ 2.凡是自己可以起名字的地方都叫标识符 int num1 90。 1.1.2 标识符的命名规则&#xff08;必须遵守&#xff09; ​ 1.由26个英文字母、数字…

Jeecg项目部署

说明&#xff1a;Jeecg是一款低代码开发平台&#xff0c;简单说是一款现成的项目&#xff0c;该项目集成了许多功能&#xff0c;我们可以在这个项目之上开发自己的业务代码。 本文介绍Jeecg项目的部署&#xff0c;包括后端jeecg-boot项目、前端vue3项目。前端项目在本地Window…