Как сделать прозрачную сцену cocos3D (EAGLView с прозрачным фоном)? Я знаю, что это будет повторный вопрос. НО Я пробовал все предложения из разных источников, но не из них работал для меня.EAGLView с прозрачным фоном?
Просто перечислите их здесь в качестве ссылки:
1) Изменена непрозрачный и чистый цвет в методе setGLDefaultValues в CCDirector.m
openGLView_.opaque = NO;
glClearColor(0.0f, 0.0f, 0.0f, 0.0f);
2) В EAGLView initWithCoder
CAEAGLLayer *eaglLayer = (CAEAGLLayer*)[self layer];
pixelformat_ = kEAGLColorFormatRGBA8;
depthFormat_ = 0; // GL_DEPTH_COMPONENT24_OES;
multiSampling_= NO;
requestedSamples_ = 0;
size_ = [eaglLayer bounds].size;
eaglLayer.opaque = NO;
glClearColor(0.0f, 0.0f, 0.0f, 0.0f);
CGColorSpaceRef rgb = CGColorSpaceCreateDeviceRGB();
const CGFloat myColor[] = {0.0, 0.0, 0.0, 0.0};
eaglLayer.backgroundColor = CGColorCreate(rgb, myColor);
CGColorSpaceRelease(rgb);
eaglLayer.drawableProperties = eaglLayer.drawableProperties = [NSDictionary dictionaryWithObjectsAndKeys: [NSNumber numberWithBool:NO], kEAGLDrawablePropertyRetainedBacking, kEAGLColorFormatRGBA8, kEAGLDrawablePropertyColorFormat, nil];
if(! [self setupSurfaceWithSharegroup:nil]) {
[self release];
return nil;
}
3) Изменен метод isOverlayingDeviceCamera моего CCViewController
viewController.isOverlayingDeviceCamera = YES;
Я использую EAGLView.h версию 1.3 Я пытался использовать новую версию (1.7), но я не мог продолжать, поскольку это дает ошибку компилятора с этим импортом
#import <OpenGL/OpenGL.h>
Пожалуйста, дайте мне руку, так как я впустую весь мой день с игрой вокруг этого
Я пробовал его в setGLDefaultValues. Но не работает. Должен ли я использовать более новую версию классов EAGLView вместо версии 1.3? – sajaz
Обновление: я попробовал openGLView_.backgroundColor = [UIColor redColor]; Затем он показывает красный фон и внезапно снова становится черным – sajaz