Articles of opengl es

iDevice ralentit le rendu lorsqu'il n'y a pas d'interaction

Je fais une application en C # Xamarin qui utilise un iPhoneOSGameView pour rendre un stream video que je reçois du réseau. Le problème est qu'après environ 10 secondes sans aucune interaction de l'user avec l'écran, le taux de trame diminue de manière significative. Il semble que l'iDevice passe en mode économie d'énergie. Lorsque j'interagis […]

Copie haute performance des données de pixels RVB sur l'écran dans iOS

Notre produit contient une sorte de décodeur d'image logiciel qui produit essentiellement des données de pixels plein écran qui doivent être rapidement copiées sur l'écran (nous sums en cours d'exécution sur iOS). Actuellement, nous utilisons CGBitmapContextCreate et nous accédons directement au tampon de memory, puis pour chaque trame, nous appelons CGBitmapContextCreateImage, puis nous dessinons ce […]

Compatibilité SpriteKit et UIKit: erreur OpenGL lors de la migration vers Swift 2?

Je ne comprends tout simplement pas ce qui se passe depuis que j'ai migré vers Swift 2. J'ai une application Tabbed et je reçois cette erreur: <CAEAGLLayer: 0x7fb2e053fb40>: calling -display has no effect. Assertion failed: (length + offset <= _length), function commit_data, file /BuildRoot/Library/Caches/com.apple.xbs/Sources/Jet_Sim/Jet-1.50/Jet/jet_types_OpenGL.h, line 863. Je sais que c'est vraiment vague mais je ne […]

Comment faire pivoter un object à l'aide d'OpenGL ES 2.0?

Dans OpenGL ES 1.1, vous pouvez utiliser glRotatef() pour faire pivoter un model, mais cette fonction n'existe pas dans OpenGL ES 2.0. Par conséquent, comment effectuez-vous la rotation dans OpenGL ES 2.0?

Comment écrire une masortingce de const dans GLSL ES

J'essaie d'écrire un simple vertex shader pour une application OpenGL ES sur l'iPhone, mais mon constructor de tableau me cause des problèmes. atsortingbute vec4 normal; atsortingbute vec4 position; void main(void){ const vec4 vertices[3] = vec4[](vec4(0.25, -0.25, 0.5, 1.0), vec4(-0.25, -0.25, 0.5, 1.0), vec4(0.25, 0.25, 0.5, 1.0)); gl_Position = vertices[gl_VertexID]; } Lorsque vous utilisez ce code, […]

ResolveMultisampleFramebufferAPPLE génère INVALID_OPERATION

Je n'arrive pas à comprendre pourquoi glResolveMultisampleFramebufferAPPLE génère une erreur 1282 (0x0502, GL_INVALID_OPERATION ). Code d'installation: glGenFramebuffers(1, &framebuffer); glBindFramebuffer(GL_FRAMEBUFFER, framebuffer); glGenRenderbuffers(1, &colorRenderbuffer); glBindRenderbuffer(GL_RENDERBUFFER, colorRenderbuffer); [context renderbufferStorage:GL_RENDERBUFFER fromDrawable:(id<EAGLDrawable>)self.layer]; glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_RENDERBUFFER, colorRenderbuffer); glGetRenderbufferParameteriv(GL_RENDERBUFFER, GL_RENDERBUFFER_WIDTH, &backingWidth); glGetRenderbufferParameteriv(GL_RENDERBUFFER, GL_RENDERBUFFER_HEIGHT, &backingHeight); GLenum status = glCheckFramebufferStatus(GL_FRAMEBUFFER); if(status != GL_FRAMEBUFFER_COMPLETE) { NSLog(@"failed to make complete framebuffer object %x", status); } glGenFramebuffers(1, […]

Copier NSMutableArray dans un tableau de flottants pour le rendu GLES

J'ai un NSMutableArray appelé mVerticies stocké en tant que membre de ma class et je voudrais les placer dans un tableau float pour les dessiner avec glVertexAtsortingbPointer . Normalement, quand je dessine, j'aurais quelque chose comme: float verticies[] = {-1, -1, 1, -1}; // … prepare to draw glVertexAtsortingbPointer(GLKVertexAtsortingbPosition, 2, GL_FLOAT, GL_FALSE, 0, verticies); // […]

Comment puis-je accéder aux données de pixels brutes d'un tampon de rendu opengl es 2 off screen?

Je peux rendre à l'écran mais j'aimerais pouvoir accéder aux pixels bruts qui ont été rendus par le shader. Le seul moyen que je connaisse est d'utiliser glReadPixels hors de l'écran, mais je voudrais y accéder avant qu'ils soient dessinés à l'écran afin de sauvegarder les images sur le disque. Plus précisément, je veux utiliser […]

OpenGL ES 2.0 Programmes de shaders multiples – le rendu des textures ne fonctionne plus

Mon application dessine un mélange de sprites ponctuels et de textures quadruples standard. Jusqu'à récemment, j'utilisais un seul programme de shader pour cela – cependant, une twig dans le fragment shader (pour décider s'il fallait utiliser des coords / colors de sprite) ralentissait gravement les performances de mon rendu. Mon fragment de shader ressemblait à […]

Problème lors de la capture d'écran de GMSMapView sur Google Maps SDK pour iOS

Un object avec lequel je me bats est lorsque j'essaye de prendre une capture d'écran de n'importe quelle partie de GMSMapView (Google Maps SDK iOS). La sortie UIGmagicsGetImageFromCurrentImageContext () UIImage est invisible. J'ai finalement découvert que GMSMapView est rendu avec OpenGL. Sachant cela, j'ai essayé d'utiliser la méthode glReadPixels (). La chose troublante est que […]