• 2024-10-08模板测试
     模板测试(StencilTest)是3D渲染中的一种技术,它根据预设条件比较参考值与模板缓冲区的值来决定片段是否进行下一步深度测试。本文介绍了模板测试的条件判断公式、语法,包括命令、比较函数,以及更新操作的各种关键字,如Keep、Zero等。并通过穿透效果的例子展示了模板测试的实际应用
  • 2024-08-21stencil示例
    stencil是一个webcomponents开发框架。pnpmcreatestencilmy.counter.tsx:import{Component,h,Prop,State}from"@stencil/core";@Component({ tag:"my-counter", styleUrl:"my-counter.css", shadow:true,})exportclassMyCou
  • 2024-02-01OpenGL中的Frame Buffer、Depth Buffer、Color Buffer、Stencil Buffer
    FrameBufferFrameBuffer:是一块buffer(即内存),存储了一帧的buffer数据。从数据结构的角度来看,此处的FrameBuffer并不是一个真正意义上的buffer,其存了一些指针,分别指向DepthBuffer、ColorBuffer、StencilBuffer、Texture、RBO(RenderBufferObject)等。Wiki中的解释:https
  • 2023-10-253.1 模板测试与深度测试(Stencil Test & Z Test)
    一、模板测试(StencilTest)模板测试可以实现的一些效果图1.是什么①从渲染管线出发:模板测试是在逐片源操作阶段,透明测试之后,深度测试之前的位置。②从书面概念上理解说到模板测试,就要先说道模板缓冲区。模板缓冲区与颜色缓冲区和深度缓冲区类似,模板缓冲区可以为屏幕上的每个像素点保
  • 2023-08-31解决VR中UGUI world space UI会被其他物体遮挡的问题
    问题:在制作VR内容时,通常使用的都是UGUI,一般会将Canvas的rendermode设置为worldspace,但是这样设置过后,因为UI是直接放在了场景里面,很容易被其他物体挡住。解决方法:Unity官方的一个VR例子中给出了一个shader的解决方案。将如下的shader文件挂在材质上将这个材质赋予需要总
  • 2023-05-05DX12 实现 模板——物体轮廓
    前言本篇将展示如何运用深度模板缓冲区来实现游戏中的物体轮廓效果源代码model_outline基础知识模板测试过程//compare_func:定义的比较函数。对两个参数进行比较//StencilRef:模板参考值//StencilReadMask:位于D3D12_DEPTH_STENCIL_DESC//Value:正在接受模板测试的值if
  • 2023-01-20stencil的简单使用
    这边给unlit(不发光)shader加上stencil功能Unlit_Stencil.shader,其中stencil相关的用//-----包起来了Shader"My/Unlit_Stencil"{Properties{_Mai
  • 2023-01-05UGUI之Mask切割图像shader应用
    在我之前的一篇文章写到使用Mask切割图像的方法。具体链接​​http://www.manew.com/thread-93954-1-1.html​​正如一些朋友所说上面这种方法把图放大之后确实存在有边缘出
  • 2022-11-29【详细解析版】Unity UGUI Mask组件实现原理
    MaskingisimplementedusingthestencilbufferoftheGPU.即Mask是利用了GPU的模板缓冲来实现的,关于模板,打个简单的比方,就像一个面具,可以挡住一部分“脸”的显示一样。
  • 2022-11-01模板测试 Stencil testing
    渲染管线的流程:应用阶段->几何阶段->光栅阶段参考:Unity渲染流水线-知乎(zhihu.com) 模板测试发生在光栅阶段,顺序是:Alpha测试->模板测试->深度测试  U