- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
所以,我有以下问题已经困扰我一段时间了。
Shader 绘制多组顶点。因为它是从文本文件加载到 GPU 中的,所以 OpenGL 根本不需要输入它。
struct Shader
{
// Load that shader from filename
Shader( string filename ... ) ;
} ;
在我的代码中键入一组顶点
VertexArray<VertexPTC> ptcVerts ; // PTC is position, texcoord, color.
ptcVerts
的数组应该只由 ptcShader
绘制.尝试绘制一个 pcVerts
的数组用ptShader
是一个错误(因为颜色值将被解释为纹理坐标)。
所以我希望编译器能够标记出这种错误。方法如下:
template<typename T> struct Shader
现在是着色器,虽然它从不使用 T
at all 是在编译时键入的。编译器现在强制执行 VertexArray<VertexPTC>
的限制由 Shader<VertexPTC>
绘制.
这是好还是坏?着色器不需要或不使用T
,所以我担心我对模板的使用在某种程度上是一种误用。
最佳答案
您在代码中表达了现实世界的约束。你在这里的例子实际上并没有表明在这里给你买任何东西,所以继续证据我想知道表达它是否多余,或者与实际出现的任何情况无关。但是,如果您要为不同类型的顶点数据集使用不同类型的着色器,我想说您已经找到了正确的表达方式。
关于c++ - 人工模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16199918/
这个问题已经有答案了: How does Google reCAPTCHA v2 work behind the scenes? (5 个回答) 已关闭 8 年前。 我知道评估是人类用户正在使用您的网
根据以下链接,Artifactory AQL 允许通过 REST API 仅返回感兴趣的字段来“显示特定字段”。 https://www.jfrog.com/confluence/display/RT
我想制作一个比应有的大得多的虚拟 Win32 EXE 文件。所以默认情况下,样板 Win32 EXE 文件为 80 KB。我想要一个 5 MB 的空间来测试其他一些实用程序。 第一个想法是添加资源,但
这个问题已经在这里有了答案: 已关闭10年。 Possible Duplicate: Relational database design question - Surrogate-key or Na
我正在尝试在构建作业中生成一个 JSON 构建信息文件以上传到 Artifactory 并在两个工具之间创建可跟踪性。然而,常规的 Jenkins JSON API 文件设计不正确,因此我需要在运行作
当您通过现有 Artifactory 将 Artifactory 部署到 Artifactory 时,它不会将其与现有 Artifactory 所具有的构建相关联。 例如:如果您使用 Jenkins
我是一名优秀的程序员,十分优秀!