小编gen*_*ult的帖子

如何将纹理应用于glutSolidCube

我可以找到关于将纹理映射到指定顶点等的多边形的教程,但没有关于如何将纹理应用于使用glut(glutSolidCube)绘制的立方体(或其他东西)的内容.

我做的事情如下:

glTexEnvfv(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, decal);
glTexParameterfv(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, repeat);
glTexParameterfv(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, repeat);
glTexParameterfv(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, nearest);
glTexParameterfv(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, nearest);

glPixelStorei(GL_UNPACK_ALIGNMENT, 1);
glTexImage2D(GL_TEXTURE_2D, 0, 4, myImageWidth, myImageHeight, 0, GL_RGBA, GL_UNSIGNED_BYTE, (GLvoid *)myImage);

//...

glEnable(GL_TEXTURE_2D);

//now draw the cube
glutSolidCube(N);
Run Code Online (Sandbox Code Playgroud)

这样做我得到纹理应用于立方体,但整个立方体获得纹理中第一个字节的颜色!

在使用glutSolidCube时,有没有办法将纹理映射到实心立方体(和其他实体)?

opengl glut textures

16
推荐指数
2
解决办法
4万
查看次数

有没有很好的库来解决C++中的三次样条函数?

我正在寻找一个好的C++库来为我提供解决大型三次样条函数(大约1000个点)的函数,任何人都知道吗?

c++ spline

16
推荐指数
3
解决办法
4万
查看次数

如何在64位Windows中制作OpenGL应用程序?

我的项目在xp32中编译,链接和运行,然后我尝试将其交叉编译为x64,我遇到了很多问题:

  1. 没有原生x64不稳定的OpenGL SDK所以我链接到什么?
  2. 我看到有人说x64应用程序使用32位opengl dll.我试图在xp64中使用驱动程序运行我编译的64位应用程序到我的视频卡(radeon 4850),我在xp32上使用的相同,我得到了典型错误"bla bla bla,也许重新安装应用程序将解决问题"
  3. 如果我使用视频卡驱动程序如何使其与其他卡一起使用,我应该为每个卡构建一个版本吗?(没意义).我应该加载一个可用的库dinamicaly吗?(同样没有意义)
  4. 哪个是x64的参考实现?我在哪里可以找到它的libs链接?

我真的迷失了这件事.我做了很多搜索,发现没什么能帮助我理解,直到妈妈.

那么,路径是什么?我想知道如何制作原生的x64 OpenGL应用程序?

c++ opengl 64-bit winapi visual-studio-2005

16
推荐指数
1
解决办法
3万
查看次数

iOS上的GL_TRIANGLES或GL_TRIANGLE_STRIP?

本文档(Apple的OpenGL iOS文档)中,Apple建议在iOS上的OpenGL ES中使用三角形条带(索引)三角形:

为了获得最佳性能,您的模型应使用glDrawArrays作为单个无索引三角形条提交,并尽可能少复制顶点.

然而,Imagination Technologies公司(该公司在iOS设备中使用的图形芯片的创造者)提出的另一种方式圆这个文件(POWERVR 3D应用开发建议书).他们专门写在第11页:

使用索引三角形列表比使用条带更有效.

我的问题:谁是对的?或者我误解了这两个文件?

iphone opengl-es ipad ios

16
推荐指数
1
解决办法
4406
查看次数

OpenGL - 具有多个纹理的蒙版

我已根据以下概念在OpenGL中实现了屏蔽:

  • 面具由黑色和白色组成.
  • 前景纹理应仅在蒙版的白色部分中可见.
  • 背景纹理应仅在蒙版的黑色部分中可见.

我可以通过使用glBlendFunc()使白色部分或黑色部分工作,但不能同时使用两个,因为前景层不仅混合到蒙版上,而且还混合到背景层上.

有没有人知道如何以最好的方式实现这一目标?我一直在网上搜索片段着色器.这是要走的路吗?

c++ opengl blending mask

16
推荐指数
1
解决办法
2万
查看次数

C++,找到未使用的代码和包含

是否有任何免费工具(或直接的Eclipse CDT插件)扫描C++代码以查找未使用的函数,方法,变量,包括......?

我只为C#和Java找到了这个东西,但是我想把它用于C++.

Cppcheck和编译器可以在作用域中找到未使用的变量,但是它们没有找到类中未使用的成员函数或.cpp文件中未使用的包含.有这样的东西可以在项目中找到已弃用的旧代码.

c++ eclipse plugins find

16
推荐指数
1
解决办法
7645
查看次数

从哪里开始进行游戏开发?UIKit vs Core Animation vs QuartzCore vs OpenGL vs cocos2D

如果我有兴趣在iPhone/iPAD上进行游戏开发,那么有哪些技术可以开始研究?事实上,只是关于这些技术的一个简单的子弹,突出它如何适合典型的游戏开发将是伟大的,因为这个问题的原因是我不理解这些如何组合在一起.所以在这种情况下,这些大致适合这里:

  • UIKit的
  • 核心动画
  • QuartzCore
  • OpenGL的
  • cocos2D上

我得到的印象是cocos2D将成为可行的方式,它似乎是一个更简单的OpenGL包装器?不知道UIKit vs Core Animation与QuartzCore之间的位置是什么?

iphone opengl-es cocos2d-iphone ios quartz-core

16
推荐指数
1
解决办法
5178
查看次数

安装CUDA 5.0 RC示例

我试图安装完整的CUDA 5.0包但我收到以下错误:

Driver:   Not Selected
Toolkit:  Not Selected
Samples:  Installation Failed. Missing required libraries.
Run Code Online (Sandbox Code Playgroud)

所以,在/tmp/cuda_install_2340.log中我得到了:

Missing required library libglut.so
Run Code Online (Sandbox Code Playgroud)

但我以前安装过它,因为我这样做:

facundo@gpgpu:~$ locate libglut
/usr/lib/x86_64-linux-gnu/libglut.a
/usr/lib/x86_64-linux-gnu/libglut.so
/usr/lib/x86_64-linux-gnu/libglut.so.3
/usr/lib/x86_64-linux-gnu/libglut.so.3.9.0
Run Code Online (Sandbox Code Playgroud)

那么,问题是什么?我在Ubuntu 12.04上

install cuda

16
推荐指数
1
解决办法
1万
查看次数

矩阵变换的Opengl阶

假设我有一个蓝色的3D盒子(顶部是红色的).

  1. 现在我调用glScalef(1,10,1).
  2. 然后我调用glRotatef(90,0,1,0).
  3. 然后我渲染立方体.

我期望看到红色面朝向屏幕(沿着模型的Y轴).

但我现在看到的是:红色面朝向屏幕(如预期的那样).但拉伸发生在视图空间的Y轴上(而不是模型).

我知道如果我沿着Z轴设置比例,那么我将得到正确的结果.但我的困惑是,我认为在Y轴上放大,然后旋转盒子,会给我正确的结果.

我错过了什么?

opengl transformation matrix

16
推荐指数
1
解决办法
2万
查看次数

使用 QEMU 模拟 Raspberry Pi 4?

我想使用 QEMU 模拟 Raspberry Pi 4,但我找不到 RPi4 的任何图像。我需要一个 QEMU 可以模拟 Cortex-A72 的内核。

arm qemu raspberry-pi raspberry-pi4

16
推荐指数
2
解决办法
2万
查看次数