geometry-shader

    2热度

    1回答

    我正在处理动态立方体贴图渲染。特别是,为了渲染立方体贴图,我使用了DirectX SDK示例“CubeMapGS”中的着色器。着色器似乎是正确的,如你所见: SamplerState ss; Texture2D tex; cbuffer Constants { float4x4 worldMat; float4x4 viewMats[6]; float4x4

    3热度

    1回答

    所以我只是学习几何着色器,我有一个用例。 由于性能方面的原因,我不想一直使用几何着色器,因为大多数对象大多数时间都不需要它。但是,当我确实需要它时,顶点和片段着色器应该做同样的事情。我可以重用我的顶点和片段着色器吗? IE。 顶点: #version 330 in vec3 position; out vec3 whatever; void main() { ... }

    1热度

    1回答

    我想知道是否有人会用我的程序来指出问题。我确信挫折与数据通过GS的方式有关。例如,如果几何着色器被从代码中取出(修改其他两个阶段以适应变化),我最终得到一个可用的管道。如果我修改GS的数据输入接受PS_INPUT而不是VS_DATA,程序不会崩溃,但会输出空白的蓝屏。我的意图是在二维平面上创建一个正方形集合,所以空白的蓝色屏幕并不完全是我要做的。 Texture2D txDiffuse[26] :

    -1热度

    1回答

    我试图在几何着色器中实现billboarded四边形来渲染粒子效果。几何着色器输入是点(vec3),其输出是具有位置和UV坐标(vec3,vec2)的三角形条。我已经尝试过两种顶点输入绑定的变体,但都不起作用。 如果我设置的顶点像这样结合: VkVertexInputBindingDescription binding_desc[2] = {}; binding_desc[0].binding

    3热度

    1回答

    我有一个纹理立方体,看起来像 我想在SceneKit视图中使用它的立方体。我为此使用了SceneKit几何SCNBox。不幸的是,结果是质地完全投射,而不是仅仅通过使用相应部分的每个面,: let videoGeometry = SCNBox(width: 1, height: 1, length: 1, chamferRadius: 0) videoGeometry.firstMaterial

    1热度

    1回答

    我正在努力创建一个cg着色器,该着色器从网格的每个顶点发出一个四边形。我知道我正在研究制作几何着色器,但找不到任何可以在Unity中发挥很好效果的文档或几何附加着色器示例 - 大多数只修改顶点子着色器中的现有顶点。 对于网格上的每个顶点,我基本上都是在创建一个由在网格上每个现有顶点处创建的四边形组成的粒子系统。 在此先感谢您的任何指导或资源!

    3热度

    2回答

    我有一个几何着色器具有以下推常数块: layout(push_constant) uniform Instance { mat4 VP; vec3 posCam; float radius; float curvature; } u_instance; 推常量在管道布局定义如下: uint32_t offset = 0; uint32_t size

    1热度

    1回答

    我正在尝试实现顶点着色器代码以实现给定顶点网格上的“广告牌”行为。我想要的是正常定义网格(如3D对象),然后让它始终面向相机。我也需要它始终具有相同的尺寸(屏幕式)。这两个“效果”应该发生: 在我的情况下,唯一的区别是,而不是2-d吧,我想有一个3D物体。 要做到这一点,我试图按照this tutorial中的替代方案3(图片取自同一位置),但我无法弄清楚他们提出的很多假设(可能是由于我缺乏在图形

    0热度

    1回答

    所以我在我的程序中有三个着色器。 顶点: #version 330 core in vec2 Inpoint; in vec2 texCoords; out vec2 TexCoords; uniform mat4 model; uniform mat4 projection; void main() { TexCoords = texCoords; gl_

    1热度

    1回答

    我想附加一个几何着色器到我现有的(和工作)顶点和片段着色器。负责建设项目的片段: int geometryShader = GLES31.glCreateShader(GLES31Ext.GL_GEOMETRY_SHADER_EXT); glShaderSource(geometryShader, geometryShaderSource); glCompileShader(g