【发布时间】:2013-03-14 10:44:48
【问题描述】:
我使用以下代码将纹理加载到对象上。
- (void)ldText:(UIImage *)Image
{
glGenTextures(1, &texture);
glBindTexture(GL_TEXTURE_2D, texture);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
CGImageRef cgImage = Image.CGImage;
float Width = CGImageGetWidth(cgImage);
float Height = CGImageGetHeight(cgImage);
CFDataRef data = CGDataProviderCopyData(CGImageGetDataProvider(cgImage));
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, Width, Height, 0, GL_RGBA, GL_UNSIGNED_BYTE, CFDataGetBytePtr(data));
}
纹理被正确映射。
我现在需要加载两个纹理。并且纹理应该定期更改。是否可以?有人可以指导我如何从这里开始吗?
*更新: 我用函数 ldText2 用 Image2 加载了另一个纹理。并在每个“更新视图”中更新它。现在,我在同一个对象上获得了两个纹理,并且每当调用“更新”函数时都会发生变化。每次调用“更新”函数时,我都会交换纹理 1 和纹理 2。 但问题是时间间隔!我希望它慢慢发生。如何为此设置时间间隔?*
【问题讨论】:
-
比如使用NSObject的这个方法? - (void)performSelector:(SEL)aSelector withObject:(id)anArgument afterDelay:(NSTimeInterval)delay;
标签: iphone ios objective-c opengl-es glkit