首页 > TAG信息列表 > float3
OpenCL
http://man.opencl.org/dataTypes.html https://stackoverflow.com/questions/28904114/opencl-sending-float3-host-to-device https://community.khronos.org/t/typedef-cl-float4-cl-float3-cl-platform-h/2530 They shouldn’t and they won’t. cl_float3 is iden图形 3.3 曲面细分与几何着色器 大规模草渲染
曲面细分与几何着色器 大规模草渲染 曲面细分与几何着色器的应用 曲面细分着色器的应用 曲面细分就是把一条直线进行不断的细分,然后把它和曲线进行逼近,逐渐变成曲线的形状。 可以使用在海浪、雪地的部分,比如雪地的脚印,也可以通过曲面细分着色器来处理和优化。Unity里基础光照(Lambert、Phong、BlinnPhong模型)的Shader代码
//以下是各种光照模型(Lambert、Phong、BlinnPhong、Gourand)的Shader代码,在Unity里创建一个Material后可以选择使用,各行代码都有注释,不再详细解释了。 Shader "MyShader/BaseShader"{//包含Lambert、Phone、Blin-Phong模型 Properties {//定义属性 _Diffuse("Metal视频渲染
一、视频的渲染首先需要获取对应的视频帧,这里使用AVAssetReader进行获取视频帧,具体可以看https://www.cnblogs.com/czwlinux/p/15779598.html关于视频的获取。这里使用的格式是kCVPixelFormatType_420YpCbCr8BiPlanarFullRange进行获取视频的数据 二、关于如何将kCVPixelFormatUnity Shader 消融效果
游戏中有一种很常见的效果:角色死亡或者场景烧毁会逐渐消融 消融效果 要实现消融效果,最重要的就是让某些像素显示,某些像素消失 为了实现这种效果 我们就需要标记哪些像素要显示,哪些像素要消失,可以使用噪声图来给每一个像素做标记 由于噪声图的随机性,使得像素的显示和消失显得非常unity shader development[9]
以物理方式制作着色器 在你在上一章学到的许多东西中,有三条规则是你实现的BRDF需要遵循的,以便被认为是基于物理的。将这些知识付诸实践的一个方法是审查定制的Phong表面着色器,看看它是否破坏了这些规则。该着色器遵循Phong的原始配方,而Phong是相当古老的,所以很有可能是这从纹理中生成法线贴图
概要 本为主要讲解生成法线贴图的基本方法,并在 unity 中进行实现和测试。 预备知识 法线贴图和基本的图形学知识,基本的向量和极限的知识。 高度图或灰度图 一张二维纹理有两个维度 u 和 v,但其实,高度(h)可以算第三个维度。有了高度,一张二维纹理就可以想象成一个三维的物体了移动端下雪系统的实现
做完下雨做下雪,下雪其实和下雨有很多类似的地方。类似的部分我就不再仔细说明,主要还是看不同的部分。个人认为下雪比下雨更加困难。 首先还是从雪粒子开始,雪粒子无法像雨一样根据深度来直接判断阻挡,因为雨是垂直下落的,但雪不是,雪是会有各种方向的,所以这里需要做实实在在的碰CG内置函数大全
数学函数 点击查看代码 abs(x) 返回输入参数的绝对值 acos(x) 反余切函数,输入参数范围为[-1,1], 返回[0,π]区间的角度值 all(x) 如果输入参数均不为0,则返回ture; 否则返回flase。&&运算 any(x) 输入参数只要有其中一个不为0,则返回true。 asin(x) 反正弦函数,输入参数取值区间为,返如何在UE4中做出涟漪的效果
涟漪这个效果我相信很多人都尝试实现过,也有各种实现方法。在这里,我实现的方法是使用Custom节点,用算法生成法线。接下来向大家分享一下思路,看一下最终效果图。文末提供了材质球百度云链接。 最终效果图 简单地说一下原理:先用UV做出伪随机的格子,每个格子就是一个单独的UV,不过具有第4篇 Unity中各种shader - Unity 3D ShaderLab开发实践
第4篇 Unity中各种shader - Unity 3D ShaderLab开发实践 15 Pass的通用指令开关 15.1 LOD Unity LOD-Level of Detail(多层次细节)用法教程 - Chinar - 博客园 (cnblogs.com) shader中的实现方式: 脚本中的控制: using UnityEngine; public class_SetShaderLOD : MonoBehaviour {一种简易的球面图包裹物体AO实现
最近翻到了一篇2005年siggraph的文章:Ambient Occlusion Fields Janne Kontkanen https://files-cdn.cnblogs.com/files/hont/kontkanen2005i3d_paper.zip 感觉大概思路是通过球体去拟合包裹范围内的模型,得到一个近似点计算AO。 原文方法比较复杂,用了2个Cubemap7个参数。 这里卡通渲染小结
最近接触了一段时间的卡渲,也制作了相应比较典型的两个demo,接下来便好好总结一下对卡通渲染的一些理解和心得。接下来先放上思维导图,让自己有一个清晰的思路去一步步总结。 我把卡通渲染分为了三个部分,其中最核心的两个部分是描边和着色,这是非写实主义(NPR)区别于写实主义最视差贴图(Parallax Texture)
https://bzyzhang.github.io/2020/11/29/2020-11-29-%EF%BC%88%E4%B8%89%EF%BC%89%E8%A1%A8%E9%9D%A2%E5%87%B9%E5%87%B8%E6%8A%80%E6%9C%AF/ https://www.jianshu.com/p/fea6c9fc610f [learn OpenGL] https://learnopengl-cn.github.io/05%20Advanced%20Lighting/05%20Para案例学习——Interior Mapping 室内映射(假室内效果)
最近油管推荐了Interior Mapping的教程,发现很有意思,发现各种资料都比较零散 于是到处搜集学习了一些资料,有了这篇文章汇总,大家一起学习学习 案例学习——Interior Mapping 室内映射(假室内效果) 1 背景介绍——虚假的窗户2 怎么模拟窗户?2.1 通用——视差映射(Parallax Mapping深入理解法线贴图
高度图转法线 高度图中保存的是物体表面的高度信息,可以利用u,v方向上高度变化的斜率,计算出tangent和binormal,然后通过向量叉乘得到normal。我们在fragment shader中计算每个fragment的normal: void InitializeFragmentNormal(inout Interpolators i) { // 取两侧点进行采样 float2深入理解法线贴图
高度图转法线 高度图中保存的是物体表面的高度信息,可以利用u,v方向上高度变化的斜率,计算出tangent和binormal,然后通过向量叉乘得到normal。我们在fragment shader中计算每个fragment的normal: void InitializeFragmentNormal(inout Interpolators i) { // 取两侧点进行采样 f剖析虚幻渲染体系(05)- 光源和阴影
目录5.1 本篇概述5.1.1 本篇内容5.1.2 基础概念5.2 Shader体系5.2.1 Shader概览5.2.2 Shader模块层级5.2.3 Shader基础模块5.2.3.1 Platform.ush5.2.3.2 Common.ush5.2.3.3 Definitions.ush5.2.3.4 ShadingCommon.ush5.2.3.5 BasePassCommon.ush5.2.3.6 BRDF.ush5.2.3.7 VertexFacunity模仿瓶子中的液体晃动
在VR游戏《半条命:Alyx》中,有个酒瓶中液体晃动的交互。 这里在patreon上有个实现了液体晃动的工程,作者忘了叫啥了,记得的话补回来。这里简单分析一下代码的意思,之前也看过,只是不太理解旋转部分的代码,现在重新复习一下。 液体的shader Shader "Unlit/SpecialFX/Li贴图扭曲 伪流体(译)
原文地址:https://catlikecoding.com/unity/tutorials/flow/texture-distortion/ 大纲: 使用流图调整UV坐标。 创建一个无缝的动画循环。 控制流的外观。 使用导数贴图添加凹凸。 1.滚动uv 在大多数情况下,我们只希望表面由水,泥,熔岩或某种看起来像液体的神奇效果制成。它不UnityShader_泳池实现
实现思路: 1、实现水面抖动: ①利用顶点偏移实现水面的上下波动; ②对Unity自带的CustomRenderTextureUpdateZone生成波纹贴图,并采样实现水纹 2、水面的实现: ①水面是由反射+折射产生的,这其中又涉及到涅斐尔效应,距离越远反射的比例越高,折射比例越低 ②为让水面看起来更有层次感,shaderlab内置变量
常用变换 unity_ObjectToWorld 当前模型矩阵。 unity_WorldToObject 当前世界矩阵的逆矩阵。 UNITY_MATRIX_MVP 当前模型 视图 投影矩阵。 UNITY_MATRIX_MV 当前模型 视图,矩阵 常用帮助函数 float3 WorldSpaceViewDir(float4 v) 世界空间中从该点到摄像机的观察方向 float3unity shader渐变纹理卡通化着色效果
有时纹理贴图的作用不仅仅是给模型贴上一层“外衣”,一些其他的效果也可以使用贴图来完成,比如使用渐变纹理来使物体有一定的卡通化效果。 回想一下看过的一些动画就可以知道,动画里人物的绘制的明暗区域的过渡非常直接,如下图,可以看到几乎不是纯黑就是纯白。 那么我们也可以在uunity shader法线贴图实现凹凸映射效果
法线贴图 法线贴图是一张保存了物体法线信息的纹理,可以用来细化模型的光照效果。 例如一块石头表面坑坑洼洼的,如果全部用建模实现,需要非常多的顶点数和面数才能完成。但是做一个简单的模型,比如表面平整的一块石头,然后使用法线贴图来重设顶点的法线,在远处观看也能得到相当接近unity shader 实现blinn-phong光照模型
接着上一篇说 上一篇 phong光照模型 blinn-phong模型只改动了phong模型中的高光部分 不使用光的反射方向而是引入一个新的变量,光照方向加上视角方向之后归一化。 而计算高光也不是使用视角方向点乘光线反射方向,而是使用法线方向点乘这个新引入的变量 完整代码如下 Shader "Te