当前位置: 首页 > web >正文

Unity WebGL文本输入

插件

kou-yeung/WebGLInput
版本如下图所示:

在这里插入图片描述

使用

Unity版本:2019.4.40
使用:文本输入组件对象添加WebGLInput脚本,没有其他额外操作,输入组件正常使用
问题:插件中部分C#语法需要高版本支持,可自行修改。

发布

使用WebGL默认模板发布。

问题:

非全屏模式下,文本输入正常,输入光标跟随移动。
全屏模式下,文本输入异常,输入光标不跟随移动。

解决:

运行插件作者的示例项目(默认),查看网页原代码。
修改index.html文件,覆盖全屏按钮的点击事件。修改如下:

  <script>var fullscreenButton = document.querySelector(".fullscreen");fullscreenButton.onclick = function () {document.makeFullscreen('unityContainer');};</script>

完整index.html

<!DOCTYPE html>
<html lang="en-us"><head><meta charset="utf-8"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><title>Wooden Toy Production Line Webgl</title><link rel="shortcut icon" href="TemplateData/favicon.ico"><link rel="stylesheet" href="TemplateData/style.css"><script src="TemplateData/UnityProgress.js"></script><script src="Build/UnityLoader.js"></script><script>var unityInstance = UnityLoader.instantiate("unityContainer", "Build/WebGL.json", { onProgress: UnityProgress });</script>
</head><body><div class="webgl-content"><div id="unityContainer" style="width: 1008px; height: 567px"></div><div class="footer"><div class="webgl-logo"></div><div class="fullscreen" onclick="unityInstance.SetFullscreen(1)"></div><div class="title">Test Text Input</div></div></div><script>var fullscreenButton = document.querySelector(".fullscreen");fullscreenButton.onclick = function () {document.makeFullscreen('unityContainer');};</script>
</body></html>

成功解决

小优化

使用 WebGL 模板
创建一个webgl模板,不需要每次发布后修改index.html

  1. 找到引擎安装路径,在文件夹中查找webgl模板,例如搜索 WebGLTemplates
  2. Assets文件夹下新建文件夹WebGLTemplates,此文件夹中新建文件夹Custom,名字区分不同的模板
  3. 复制默认模板中的内容到Custom文件夹中,修改index.html
    在这里插入图片描述
  4. 项目设置窗口中选择自定义的模板
    在这里插入图片描述
http://www.xdnf.cn/news/15187.html

相关文章:

  • 【世纪龙科技】汽车信息化综合实训考核平台(机电方向)-学测
  • ClickHouse JSON 解析
  • Java代码块
  • Android 应用常见安全问题
  • JAVA JVM对象的实现
  • 【spring boot】三种日志系统对比:ELK、Loki+Grafana、Docker API
  • 长效住宅代理IP:反爬虫战场上的隐形盾牌
  • 代码随想录17|二叉树的层序遍历|翻转二叉树|对称二叉树
  • Java入门之JDK下载和安装
  • HTTP 错误 500.19 - 打开 IIS 网页时出现内部服务器错误
  • Windows Edge 播放 H.265 视频指南
  • 自动化测试策略设计和避坑概要
  • 图解Java数据容器(三):Queue
  • imx6ull-裸机学习实验16——I2C 实验
  • 【C++】第十四节—模版进阶(非类型模版参数+模板的特化+模版分离编译+模版总结)
  • Vue响应式原理五:响应式-自动收集依赖
  • 第七讲:C++中的string类
  • 分布式ID方案
  • 羊肚菌自动采收车设计cad【7张】+三维图+设计说明书
  • 什么?不知道 MyBatisPlus 多数据源(动态数据源)干什么的,怎么使用,看这篇文章就够了。
  • 目标检测中的评价指标计算
  • 从零搭建多商户商城系统源码:技术栈、数据库设计与接口规划详解
  • 好用研发项目管理软件对比:8Manage PM与飞书功能深度测评
  • 【网络安全】利用 Cookie Sandwich 窃取 HttpOnly Cookie
  • Canvas 状态管理 语法糖 canvas.withSave() {}
  • Houdini 分布式解算效率瓶颈突破:渲染 101 云集群实战指南
  • 【网络】Linux 内核优化实战 - net.ipv4.tcp_keepalive_probes
  • Docker 镜像加速站汇总与使用指南
  • GitHub上优秀的开源播放器项目介绍及优劣对比
  • iOS APP混合开发性能测试怎么做?页面卡顿、通信异常的工具组合实战