Skip to content

Commit

Permalink
移动设备着色器适配
Browse files Browse the repository at this point in the history
  • Loading branch information
linkliu committed Feb 28, 2023
1 parent d4c9532 commit ab9c84c
Show file tree
Hide file tree
Showing 4 changed files with 30 additions and 7 deletions.
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -395,11 +395,11 @@ tags: [U3D, Shader,Cookbook,中文版]

- 原理介绍

## 7. 移动设备中着色器的调整
## 7. 移动设备着色器适配

- 介绍

- 什么是着色器的轻量化?
- 什么是低成本着色器?

- 始前准备

Expand Down Expand Up @@ -677,7 +677,7 @@ Nilesh Mohite

**<u>第六章</u>**, 片元着色器和通道提取, 这一章会解释如何使用半透明材质和通道提取来实现扭曲形变效果

**<u>第七章</u>**, 移动设备中着色器的调整,主要介绍如何针对移动设备进行优化。
**<u>第七章</u>**, 移动设备着色器适配,主要介绍如何针对移动设备进行优化。

**<u>第八章</u>**, 通过Unity 渲染纹理实现屏幕特效,介绍了通过该技术才能更容易实现的视觉特效的实现方式。

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ tags: [U3D, Shader,Cookbook,中文版]

**<u>第六章</u>**, 片元着色器和抓取通道, 这一章会解释如何使用半透明材质和抓取通道来实现扭曲形变效果

**<u>第七章</u>**, 移动设备中着色器的调整,主要介绍如何针对移动设备进行优化。
**<u>第七章</u>**, 移动设备着色器适配,主要介绍如何针对移动设备进行优化。

**<u>第八章</u>**, 通过Unity 渲染纹理实现屏幕特效,介绍了通过该技术才能更容易实现的视觉特效的实现方式。

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -393,11 +393,11 @@ math: true

- 原理介绍

## 7. 移动设备中着色器的调整
## 7. 移动设备着色器适配

- 介绍

- 什么是着色器的轻量化?
- 什么是低成本着色器?

- 始前准备

Expand Down Expand Up @@ -675,7 +675,7 @@ Nilesh Mohite

**<u>第六章</u>**, 片元着色器和抓取通道, 这一章会解释如何使用半透明材质和抓取通道来实现扭曲形变效果

**<u>第七章</u>**, 移动设备中着色器的调整,主要介绍如何针对移动设备进行优化。
**<u>第七章</u>**, 移动设备着色器适配,主要介绍如何针对移动设备进行优化。

**<u>第八章</u>**, 通过Unity 渲染纹理实现屏幕特效,介绍了通过该技术才能更容易实现的视觉特效的实现方式。

Expand Down
23 changes: 23 additions & 0 deletions _posts/shader_book/2023-02-26-移动设备着色器适配.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
---
category: shader
tags: [U3D, Shader,Cookbook,中文版]
---

## 第七章 移动设备着色器适配
在接下来的两章,我们将着手于让我们写的着色器对不同的平台都有较好的性能表现。我们不会讨论任何一个特殊的平台,我们将会分解着色器内的元素,这样的话我们就可以对它们进行调整,从而让它们对于移动平台有更好的优化并且通常来说对其他任何平台来说也更高效。这些技术涵盖了从 **了解Unity提供的一些可以减少着色器内存溢出方面的内置变量****学习可以让我们的着色器代码更加高效的方法**。这一章将会包含下面的这些知识点:
- 什么是低成本着色器
- 着色器的性能分析
- 针对移动设备修改着色器


***
<br>

## 介绍
学习如何优化着色器的艺术将会出现在你参与的任何游戏项目中。在任何产品中总有需要优化着色器的时候,或者需要用更少的纹理来产生相同的效果。作为一个技术美术或者着色器编程人员,你必须要理解这些核心的基本原理来优化你的着色器代码从而让你的游戏在提升性能表现的同时又能达到相同的视觉表现。有了这些知识也可以为你自己开始写着色器代码进行铺垫。比如,你知道使用你着色器的游戏将会运行在移动设备中,我们可以自动的设置所有的光照函数使用 **half vector** 作为视野方向,或者把所有的 **浮点型变量类型(float variable types)** 都设置成 **fixed** 类型 或 **half** 类型。前面提到的这些技术或者很多的其他技术,都可以让你的着色器在目标硬件上更加高效的运行。开始我们的着色器优化学习之旅吧。

***
<br>

## 什么是低成本着色器
我们首先问一个问题,什么是低成本的着色器,它回答起来可能有点困难因为有太多的元素可以可以让一个着色器变得更加高效了。它可以是你的变量使用的内存的大小。可以是你的着色器使用的纹理的大小。也可是一个工作良好的着色器,但是我们却只使用了相较之前一半的代码或者数据就获得了相同的视觉效果。我们将会在这个知识点中探索一些这样的技术并且会展示如何将这些技术结合起来从而让你的着色器更快更高效,并且不管是在移动设备还是在PC上都生成当今游戏中每个人都期望的高质量的视觉效果。

0 comments on commit ab9c84c

Please sign in to comment.