我目前正在尝试使用 OpenGL 4 设置 2D 精灵动画。例如,我用 Gimp 设计了一个平滑旋转的球。大约有 32 个框架(4 行 8 个框架)。
我的目标是在 2D 纹理中创建精灵图集,并将精灵数据存储在缓冲区 (VBO) 中。我的精灵矩形将始终相同(即 rect(0,0,32,32) ),但每次帧索引递增时,我的纹理坐标都会发生变化。
我想知道如何修改坐标。
我花了很多时间研究 OpenGL 1.x……几个月前我又回到了 OpenGL,但我意识到很多事情都发生了变化。我会尝试几种选择,但欢迎您的建议和经验。
我目前正面临着一个令人讨厌的C++问题.
实际上,我甚至不明白为什么在过去的20年里我没有面对它:(
在我目前的上下文中,我们大量使用与我们专有的静态库静态链接的c ++可执行文件(主要是在Linux嵌入式系统中).出于技术和优化原因,我们确实使用静态库.
事实上,在过去的几年里,我曾经创建了共享库...
所以我开始用静态类成员编写一些类.如下:
class Inner
{
public:
Inner()
{
std::cout << "CTOR Inner" << std::endl;
}
};
class A
{
static Inner _inner;
...
};
// in the .cpp
Inner A::_inner;
///////////////////////
Run Code Online (Sandbox Code Playgroud)
非常基本的用例,不是吗?
但在我的单元测试中,与lib链接,我无法std::cout在控制台中看到该语句.然而,如果我将我的类Inner和A移动到可执行源代码中......它可以正常工作.
我确信这是一个非常基本的问题,我意识到过去几年我从未面对过这个问题.这是与编译器有关的问题吗?请注意,我在Windows和Linux上测试了这两种情况(Debian,Gcc 4.9).
欢迎任何想法.
Z.