Unity WebGL网页背景透明化(2021更新)
针对上一篇文章Unity网页透明化,做进一步补充完善。
目录
- 效果演示
- Unity中
- 网页中
- 实现过程(以Unity2018.4.2f1为例)
- 1.创建.jslib文件,文件内容如下:
- 2.修改Camera相机参数
- 3.打包。
- 4.修改Build文件夹下的json文件
- 5.打开index.html查看效果即可
- PostProcess后处理
- 色彩空间-Gamma与 Linear
- Unity2020打包后修改
- 粒子消失问题
- 最后
效果演示
Unity中
网页中
实现过程(以Unity2018.4.2f1为例)
1.创建.jslib文件,文件内容如下:
var LibraryGLClear = {glClear: function(mask){if (mask == 0x00004000){var v = GLctx.getParameter(GLctx.COLOR_WRITEMASK);if (!v[0] && !v[1] && !v[2] && v[3])// We are trying to clear alpha only -- skip.return;}GLctx.clear(mask);}
};
mergeInto(LibraryManager.library, LibraryGLClear);
注意 Mac系统中,文本文档编码问题,可能会导致修改后缀之后乱码。
命名随意,放在Asset文件夹下任意位置,
文件链接: https://pan.baidu.com/s/1j8LFBHwbPCDhgIzOBOr0Ww 密码:6f7l
2.修改Camera相机参数
修改Clear Flags 为Solid Color
Background 中 Alpha值为0。
3.打包。
经测试,并不需要修改打包设置,默认即可。
4.修改Build文件夹下的json文件
将 “backgroundColor”: 的参数修改为"transparent",
完整代码
{
"companyName": "DefaultCompany",
"productName": "NewTM",
"dataUrl": "newtm.data.unityweb",
"wasmCodeUrl": "newtm.wasm.code.unityweb",
"wasmFrameworkUrl": "newtm.wasm.framework.unityweb",
"TOTAL_MEMORY": 268435456,
"graphicsAPI": ["WebGL 2.0", "WebGL 1.0"],
"webglContextAttributes": {"preserveDrawingBuffer": false},
"splashScreenStyle": "Dark",
"backgroundColor": "transparent",
"cacheControl": {"default": "must-revalidate"}
}
5.打开index.html查看效果即可
PostProcess后处理
若用相机后处理插件PostProcess,颜色会异常,因为背景颜色透明后,是根据html颜色来判定Bloom的。
色彩空间-Gamma与 Linear
在Unity2018中,需将打包设置中的ColorSpace设置为Gamma空间,若设置为Linear空间,则透明无效。
在Unity2020中,使用LInear也可以透明化背景。
Unity2020打包后修改
Unity2020打包后的网页结构和2018区别很大,没有json文件了。
需要将html文件中的
<canvas id="unity-canvas" width=1920 height=1080 ></canvas>
修改为
<canvas id="unity-canvas" width=1920 height=1080 style="width: 1920px; height: 1080px; background: transparent"></canvas>
粒子消失问题
粒子不要用默认的材质,自定义一个材质就可以了。
最后
项目和Demo链接:https://download.csdn.net/download/boyZhenGui/12330739
积分不够的朋友可以私信我。
如果对你有帮助,可以收藏一下。顺手给我点个赞就更好啦,谢谢。
参考资料:
https://support.unity3d.com/hc/en-us/articles/208892946-How-can-I-make-the-canvas-transparent-on-WebGL-?_ga=2.179246048.597631836.1586496094-324193956.1586496094https://forum.unity.com/threads/webgl-transparent-background.284699/?_ga=2.210898705.524976980.1586484471-1016004096.1586484471
主要是这篇帖子中chitzui的回答,不过经测试,并不需要修改打包参数,也可以完成背景透明化。
https://forum.unity.com/threads/webgl-with-transparency-on-the-cavas.327425/?_ga=2.34395042.2038369983.1586999210-215010673.1586999210
Unity WebGL网页背景透明化(2021更新)相关推荐
- Unity 制作签名背景透明化效果,抠字效果
不知道公司是不是和我杠上了,进公司做的第一个项目是拍照,后面连续几个都有拍照功能,而且设计方案上还多加了签名的功能. https://blog.csdn.net/weixin_37608784/art ...
- Unity WebGL打包网页端运行显示Not allowed to access uv4 on mesh
项目场景:Unity WebGl网页连接后台服务器 提示:这里简述项目相关背景: 该项目实现的是Unity Web端联网后台读取数据主要功能 问题描述 提示:这里描述项目中遇到的问题: 在该项目中在U ...
- Unity WebGL/WebPlayer与html通信对比,在html添加网页端按钮直接测试
Unity WebPlayer与html通信,在html添加网页端按钮直接测试 由于现在各大浏览器的升级,UnityWebPlayer的网页方式逐渐被摒弃掉,但是很多老项目或者追求稳定的开发者还在选择 ...
- Unity Webgl内嵌网页页面
Unity Webgl端有时候会有这样一个需求,在Unity界面上内嵌一个网页,并且可以在界面上把这个网页关掉(不是重新打开新的标签页) 效果如下: 现在来实现这个功能: 1.在Assets文件夹下新 ...
- Unity发布WebGL注意事项以及移动端打开webgl网页
Unity发布WebGL网页端 Unity发布webGL项目时存在很多的易错点,这些错误点没有统一的规律,因为是跨平台开发,开发过程中需要去解决未知的和已知的报错点,下面就我这两年开发WebGL遇到的 ...
- 6个网页背景特效源码 canvas+three.js科技贴图 webgl源码
隧道穿梭特效 粒子矩阵特效 几何随机变换特效 下载地址: 6个网页背景特效源码 canvas+three.js科技贴图 webgl源码-素材美
- Unity发布WebGL网页版
开始WebGL开发 什么是 Unity WebGL?** WebGL工程选项允许Unity以JavaScript程序形式发布使用HTMl5技术和WebGL渲染API.在网页浏览器中运行的Unity内容 ...
- unity webgl自适应网页尺寸
我使用的是unity 2019.4 LTS版 一共有两步 1 在Index.html中修改 <!DOCTYPE html> <html lang="en-us"& ...
- Unity WebGL错误集锦
ips: 0 Unity的PlayerSettings的otherSettings或者Publish Settings里面的Enable Exceptions里面选择Full StackTrace , ...
最新文章
- 腾讯 angel 3.0:高效处理模型
- 代码提示级别设置 inspection
- K8s容器集群管理系统
- verilog学习记(快速入门)
- java 怎么从date取得年份
- QList、QVector、QMap容器类
- java中的远程debug调试
- 皮肤暗的女孩如何穿衣服
- 厉害了,10行代码实现抽奖助手自动参与抽奖
- docker操作记录-5
- Hadoop配置lzo压缩
- 几种将将虚幻引擎内容流送到多个平台的推流方案比较
- S7-200SMART PLC基础知识汇总
- 各linux操作系统查看内核版本命令
- Matlab二维线图对数坐标及与hold on结合的问题
- 基于MATLAB 2021b的机器学习、深度学习
- 现实迷途 第三十章 若即若离
- 上班摸鱼 这个软件少不了 任意窗口透明化
- c语言精确线搜索抛物线法,一维迭代搜索(黄金分割法抛物线法).ppt
- BAD PASSWORD: it is too simplistic/systematic
热门文章
- Android Killer(反编译工具)技巧
- AutoCAD 描图方法小结
- 33岁,工作10年的老测试员被裁,所谓经验根本不值钱
- Kalibr标定时卡在Extracting calibration target corners的问题
- 关于纯净的win7旗舰版安装后无无线网驱动问题
- 圣天诺SuperPro狗模拟视频语音教程
- 【pytorch】时间序列预测 —— 同时预测多个分位点
- 最新论文笔记(+11):Privacy-Preserving Searchable Encryption Framework for Permissioned Blockchain Networks
- AI得贤招聘官上线ChatGPT,免费为企业提供AI智能助手Molly
- easyExcel以Map的形式读取参数