Python
Java
PHP
IOS
Android
Nodejs
JavaScript
Html5
Windows
Ubuntu
Linux
CPU 到 GPU 法线映射
我正在创建一个地形网格 然后这个答案 https stackoverflow com a 5284527 1356106我正在尝试将 CPU 计算法线迁移到基于着色器的版本 以便通过降低网格分辨率并使用在片段着色器中计算的法线贴图来提高性能
OpenGL
Shader
fragmentshader
normals
glsles
使用 Three.js 在片段着色器中手动选择 mipmap 的 lod
我正在使用 Three js 中的 glsl es 编写一个基于物理的着色器 为了添加镜面全局照明 我使用内部带有 mipmap 链的立方体贴图 dds 纹理 按照 CubeMapGen 的说明进行预先计算here http seblaga
threeJs
opengles20
mipmaps
glsles
levelofdetail
如何在 openGL ES 2.0 中执行 2 遍以获得模糊效果
为了创建模糊效果 理论上需要创建 2 个顶点着色器 一个用于水平通道 第二个用于垂直通道 然后使用一个片段着色器进行实际采样 我的问题是 如何实际执行 2 个顶点着色器 我是否需要渲染 然后通过 glReadPixels 返回像素 然后再次
Android
opengles
glsles
如何在 GLSL / WebGL 中将 1 个 32 位整数打包为 4 个 8 位整数?
我正在寻求并行化一些复杂的数学 而 WebGL 看起来是实现这一目标的完美方法 问题是 您只能从纹理中读取 8 位整数 理想情况下 我希望从纹理中获取 32 位数字 我的想法是使用 4 个颜色通道来获得每像素 32 位 而不是 4 乘以 8
javascript
webgl
GLSL
glsles
在 SCNShadable 入口点之间传递值
在 OpenGL 程序中 您通常会在顶点着色器中声明类似的内容 varying bool aBooleanVariable 然后读取片段着色器中的值 你如何在一个框架内做到这一点 SCNShadable入口点 例如来自SCNShaderMo
opengles
scenekit
metal
glsles
如何在 GLSL ES 中编写 const 数组
我正在尝试为 iPhone 上的 OpenGL ES 应用程序编写一个简单的顶点着色器 但我的数组构造函数给我带来了麻烦 attribute vec4 normal attribute vec4 position void main voi
ios
opengles
GLSL
glsles
在 WebGL for 循环中使用制服(或类似的)的解决方法?
我正在致力于在 WebGL 中实现片段着色器 并遇到了只能在 for 循环中使用常量表达式的限制 有人对此有任何合适的解决方法吗 在我的具体情况下 我正在实现双边过滤器 并且当前在我的片段着色器中将窗口大小指定为常量 但希望能够从 Java
javascript
webgl
Shader
glsles
Three.js/GLSL - 将像素坐标转换为世界坐标
我的 Three js 应用程序中有一个简单的着色器 可以将屏幕着色为红色 但是 我想将给定世界位置右侧的所有像素着色为不同的颜色 我见过some answers建议使用varying vec4 worldCoord gl ModelVie
threeJs
GLSL
webgl
glsles
WebGL:如何将值绑定到 mat4 属性?
在某些 WebGL 应用程序中 假设我们有一个 GLSL 顶点着色器 其启动方式如下 attribute vec4 foo1 attribute vec4 foo2 attribute vec4 foo3 attribute vec4 fo
javascript
opengles
webgl
glsles
Three.js - 在单个点云中使用多个纹理
我正在尝试使用 ShaderMaterial 在单个点云中使用多个纹理 我将纹理数组与纹理索引属性一起传递给着色器 并选择要在片段着色器中使用的适当纹理 相关设置代码 var particleCount 100 var uniforms t
javascript
threeJs
webgl
glsles
切换到GLSL 300时,遇到以下错误
当我切换到使用 OpenGL ES 3 和 GLSL 300 时 我在碎片着色器中遇到以下错误 未声明的标识符 gl FragColor 当使用 GLSL 100 时 一切都很好 现代版本的 GLSL 只需将片段着色器声明为out价值观 以
GLSL
glsles
OPENGLes30