当前位置:网站首页>Handling method of occasional error reporting on overseas equipment
Handling method of occasional error reporting on overseas equipment
2022-06-27 16:49:00 【UWATech】
1) Handling method of occasional error reporting on overseas equipment
2)Shader Redundancy rule ShaderLab Occupation size problem
3)URP Renderer Feature Realize quadratic element tracing ,Cutout To deal with the problem
4)Unity Solution for video playback in
This is the first 286 piece UWA Push of technical knowledge sharing . Today we continue to select and develop a number of 、 Optimization related issues , Suggested reading time 10 minute , If you read it carefully, you will get something .
UWA Question answering community :answer.uwa4d.com
UWA QQ Group 2:793972859( The original group is full )
Android
Q: Recent projects occasionally show errors in pictures on overseas equipment :

A: This problem has been confirmed as Unity Of bug, Due to recent Google Play To enforce AAB pack , So the probability is that ; The general test is to use APK, It's easy to miss this last step of verification . to update Unity After the corresponding version, you can repair :
thank [email protected] The Q & a community provides answers
Shader
Q:Shader Redundancy rule ShaderLab Will the occupation also become larger ?
A: Experiment on a real machine , see Shader When redundant ShaderLab Memory changes .
Here are Shader There is 20 Share Standard when :
Here are Shader There are only 1 Share Standard when :
because Profiler Can't see ShaderLab Specific content of , So strictly speaking ,Shader Redundancy does cause ShaderLab Memory increase .
thank [email protected] The Q & a community provides answers
Rendering
Q: Before, our cartoon rendering was in Shader Write more than Pass To draw the stroke , Recently I tried to use SRP Batcher Found during optimization ,SRP Batcher Does not support multiple Pass Of Shader. So I tried URP Renderer Feature To render the stroke of all characters .

It's easy to implement , But there is one problem that cannot be solved , Namely Cutout The problem of .

The lower edge of the skirt is mapped Alpha The control of the , It's not really a vertex . Former Pass Written in character rendering Shader in , You can use maps to control , But with Renderer Feature To deal with it , The stroke of all character models uses the same material , You can't use the respective mapping channels of the model to deal with . The display effect is Cutout The stroke part of cannot be processed :


The edges are complicated , But there are only a few control vertices , It doesn't feel good to realize .
Now I have used the color information of model vertices ,RGB It's the stroke color ,A Is the stroke thickness . The way I can think of is to use A Some special values to deal with some vertices ( amount to Clip Drop some vertices , But it's definitely not relevant API), But it doesn't seem feasible . I don't know if you've ever met , Or is there any good way ?
I tried to mark points with vertex information , But there are flaws , The edges associated with the points are affected , The stroke is gone :

Let the art add some points , It can basically solve ( In fact, the outer edge will not show all , But I can't see it anymore ):

But this method is still not good . Best in Renderer Feature You can get the material information of the model being rendered .
Can you put more than one Pass Of Shader One of them Pass Get a separate Renderer Feature Li Hua , Instead of redrawing ? For example, disable this for the first time Pass,Renderer Feature Turn it on when you draw ?
A1: Customize a LightMode,Render Feature Set this in LightMode, In this way, the mapping data on the shader can be .
Add a screenshot that looks like this :
For custom LightMode,Unity Default ignore , Only Render Feature It is manually specified to draw this LightMode,Unity To draw .
thank [email protected] The Q & a community provides answers
A2: as follows , such SRP Batcher Finally, we can get more together Pass Of Shader 了 :
Don't disable normal rendering .
Two pass, A normal pass, A custom lightMode Of pass,lightMode Of pass For rendering stroke ScriptableRendererFeature Manually specify a custom rendering lightmode.unity I won't render your custom lightMode.
Thanks to Qiu Lei @UWA The Q & a community provides answers
Video
Q: Need to play video in the game , Meet some basic needs , For example, play remote video , Broadcast as you go down , Set the video playback speed , Video progress bar , Pause or something .
Currently known, you can use your own Video Player、AVPro and Sofdec2 These three paragraphs , I'd like to ask if there is any big guy system that has studied video playback , Can share a little experience , Thank you for .
A: Consider integration https://github.com/bilibili/ijkplayer To Unity Play adaptation on :
https://www.gero.pub/2017/10/26/how-to-use-ijkplayer-in-unity/
thank [email protected] The Q & a community provides answers
The cover map comes from the Internet
Today's sharing is here . Of course , There is no end to life but to know . In the long development cycle , The problems you see may be just the tip of the iceberg , We are already in UWA The Q & a website has more technical topics waiting for you to explore and share together . You are welcome to join us , Maybe your method can solve other people's urgent needs ; And he's a mountain “ stone ”, Can also attack you “ jade ”.
Official website :www.uwa4d.com
Official technology blog :blog.uwa4d.com
Official Q & a community :answer.uwa4d.com
UWA School :edu.uwa4d.com
Official technology QQ Group :793972859( The original group is full )
边栏推荐
- Bit.Store:熊市漫漫,稳定Staking产品或成主旋律
- ORM表关系及操作
- Principle Comparison and analysis of mechanical hard disk and SSD solid state disk
- Use redis to automatically cancel orders within 30 minutes
- 防火墙基础之源NAT地址转换和服务器映射web页面配置
- Deeply digitise, lead cloud nativity and serve more developers
- The time of localdatetime type (2019-11-19t15:16:17) is queried with the time range of Oracle
- Introduce you to ldbc SNB, a powerful tool for database performance and scenario testing
- 基于 Nebula Graph 构建百亿关系知识图谱实践
- A distribution fission activity is more than just a circle of friends!
猜你喜欢

10分钟掌握mysql的安装步骤

【多线程】线程通信调度、等待集 wait() 、notify()

Redis Series 2: data persistence improves availability

A distribution fission activity is more than just a circle of friends!

Domain name binding dynamic IP best practices

Jialichuang EDA professional edition all offline client release

Hung - Mung! HDD Hangzhou station · salon hors ligne vous invite à construire l'écologie

域名绑定动态IP最佳实践

Li Chuang EDA learning notes 16: array copy and array distribution

Array represents a collection of several intervals. Please merge all overlapping intervals and return a non overlapping interval array. The array must exactly cover all the intervals in the input. 【Le
随机推荐
Solving Poisson equation by tensorflow
Impressive questions
[multithreading] thread communication scheduling, waiting set wait(), notify()
Construction and management practice of ByteDance buried point data flow
利用Redis实现订单30分钟自动取消
logstash排除特定文件或文件夹不采集上报日志数据
继手机之后 报道称三星也削减了电视等家电产品线的产量
华为云首次解读云原生2.0十大典型架构,加速构建现代化应用
2/15 topology sorting +dfs (the order of specified directions is very important) +bfs
Data center table reports realize customized statistics, overtime leave summary record sharing
About MySQL: the phenomenon and background of the problem
Annual comprehensive analysis of China's audio market in 2022
事件监听机制
Introduce you to ldbc SNB, a powerful tool for database performance and scenario testing
QT5 之信号与槽机制(信号与槽的基本介绍)
Li Chuang EDA learning notes 16: array copy and array distribution
Handling of difficult and miscellaneous problems during the installation and configuration of qt5.5.1 desktop version (configuring arm compilation Kit)
数据中心表格报表实现定制统计加班请假汇总记录分享
Oracle概念三
Qt5 signal and slot mechanism (basic introduction to signal and slot)




