首页 > TAG信息列表 > fragment-shader

android-Andengine为精灵中的每个像素设置alpha

我在场景中有一个大Sprite-例如200×200,在应用程序中,我有一个array [200] [200],其中我为大Sprite中的每个像素存储0或1. 我想在现有精灵上再绘制一个纹理精灵(例如10×10),但是我想为新精灵中的每个像素计算是否需要在此场景上绘制取决于所提供的数组(如果位于像素的相应位置)数

为何两个透明png照片的opengl着色器混合功能变黑?

照片1是: 照片2是: 当然照片2是部分透明的. 但是当我在诸如此类的着色器中混合它们时: vec4 add(vec4 one, vec4 two){ return mix(one, two, two.a); } 它们部分变为黑色,如下所示: 我很困惑为什么它会产生黑色. 我知道混合功能基本上是这样实现的: A*(1-alpha)+B*alpha 解决

c-OpenGL实现MultiPass

我在将一些已经在Shadertoy中成功实现的代码移植到桌面OpenGL时遇到问题,问题是我需要创建一个FrameBufferObject FBO,以便我可以进行屏幕外计算,然后再将其传递给主要的glsl片段着色器,这是因为该缓冲区需要将自身作为纹理进行引用才能获得先前的值,以便它能够运行模拟. 我已经成

c – 如果我将片段着色器附加到程序,则出现错误1282

我正在尝试使用着色器运行程序.在Another question I made,我发现我正在将固定管道功能与更新的东西(来自OpenGL 2.0)混合,所以我试图删除像glMatrixMode这样的所有“旧东西”,但我不确定我是否正确地做到了.怀疑我还删除了像glLightfv这样的调用,如果我使用可编程管道,我不确定它

c – 如何在OpenGL中创建深度淡化效果?

我想创建一个半透明的球体,它在与其他物体(例如地面)相交的地方突出显示. 就像这张图片中的白线一样: 我找到了an Unreal Engine 4 tutorial关于如何创建这样的东西. 它在着色器中使用“深度淡化”.不幸的是,我还没有找到任何关于Depth Fades的OpenGL教程. 如何创建这样的效果?解决

android – 如何在opengl es 2.0中禁用颜色插值?

由于在opengl中没有平面着色的选项,当有不同颜色传递给每个顶点时,是否有一种解决方法可以禁用颜色插值?解决方法:基本上,唯一的方法是使用三角形绘制,而不是使用三角形条带或风扇.并且对于每组三个顶点来构成单个三角形使用相同的颜色.那将删除阴影效果导致相同颜色之间的插值是相

Android OpenGL以原始(小)分辨率渲染到frameBuffer,然后将其缩放(viewPort)到屏幕大小

我有一个NV21(YUV420)相机视频,我正在应用它片段着色器,以获得一些滤镜效果和YUV到RGB转换. 除了糟糕的表现外,一切都在发挥作用.我的片段着色器有点沉重,因为它有很多textur2D()调用. 原始帧分辨率为480×640像素,我注意到如果我将视口设置为原始大小(而不是全屏大小),它的工作正

android – 在LibGDX中将几个纹理传递给着色器

我需要将2个(或更多)纹理传递给一个着色器.此外,我必须在渲染方法中绑定纹理,因为我使用FrameBuffer并尝试在飞行中绑定纹理.所以,我的代码如下: @Override public void show () { fbo = new FrameBuffer(Format.RGB565, Gdx.graphics.getWidth(), Gdx.graphics.getHeight(),