Ich hoffe, jemand kann mir helfen, herauszufinden, was vor sich geht.Debugging von SIGKILL auf glDrawArrays(). iPhone iOS
Ich entwickle ein iPhone-Spiel mit cocos2d framework
. Von Zeit zu Zeit bekomme ich meinen Code gestoppt wegen SIGKIL
Signal. Wenn ich auf "Weiter" klicke, wird das Spiel ohne Probleme fortgesetzt. Das Konsolenprotokoll ist gelöscht (keine Fehler- oder Warnmeldungen) Ich bekomme es auf meiner benutzerdefinierten Klasse, die ein texturiertes Rechteck mit OpenGL
zeichnet. Dieser Code wird etwa 300 Mal pro Sekunde ausgeführt und ich bekomme SIGKILL
nur etwa einmal pro 1-2 Stunden.
ist hier ein Stück Code:
(gdb) p *screenCoord[1]@8
$8 = {0, 296, 249.827072, 296, 0, -0, 249.827072, -0}
(gdb) p *textureCoord[1]@8
$12 = {0.456224144, 0.29296875, 0.700195312, 0.29296875, 0.456224144, 0.58203125, 0.700195312, 0.58203125}
Stapelüberwachung:
#0 0x123028a7 in <????>()
#1 0x12301528 in <????>()
#2 0x0a767092 in gldRenderFillPolygonPtr()
#3 0x12300185 in <????>()
#4 0x0a55c3e1 in gleDrawArraysOrElements_ExecCore()
#5 0x0a555280 in glDrawArrays_IMM_Exec()
#6 0x01522c7c in glDrawArrays()
#7 0x0007e6bd in -[CLScrollingBack draw] at /MyProjects/_ROBOTS/RobotsAttack/AbductedAliens game template/CLScrollingBack.m:430
#8 0x001bfdaa in -[CCNode visit]()
#9 0x001bfd7d in -[CCNode visit]()
#10 0x001bfd7d in -[CCNode visit]()
#11 0x0020f708 in -[CCDirectorIOS drawScene]()
#12 0x00211bb4 in -[CCDirectorDisplayLink mainLoop:]()
Die letzten Zeilen in der
glColor4f(1.f, 1.f, 1.f, 1.f);
i = 1;
glBindTexture(GL_TEXTURE_2D, curText);
glVertexPointer(2, GL_FLOAT, 0, screenCoord [i]);
glTexCoordPointer(2, GL_FLOAT, 0, textureCoord [i]);
SIGKIL --> glDrawArrays(GL_TRIANGLE_STRIP, 0, 4);
Hier wird der Inhalt von Arrays auf diesem Moment ist log sind:
2012-06-20 13:05:27.368 RobotsAttack![9487:207] cocos2d: CCSpriteBatchNode: resizing TextureAtlas capacity from [2] to [4].
2012-06-20 13:05:27.368 RobotsAttack![9487:207] cocos2d: CCSpriteBatchNode: resizing TextureAtlas capacity from [4] to [6].
Current language: auto; currently objective-c
Ich wäre dankbar, wenn mir jemand sagen könnte, wie ich diese Situation debuggen und feststellen kann, was vor sich geht.
Haben Sie das jemals herausgefunden? – jsherk
Nein. Ich hoffe nur, dass es nur während der Arbeit mit xCode ist und keinen Einfluss auf reale Spieler haben wird. Da habe ich es immer beim Debuggen mit Gerät an xCode angeschlossen. – Marmot
Ich bekomme es sehr gelegentlich, wenn ich in den Simulatoren auf Xcode laufe. Aber ich hatte noch nie einen Absturz bei mir auf einem Gerät, obwohl ich das Gerät beim Testen normalerweise nicht mit Xcode verbunden lasse. Also meine Gedanken sind auch, dass es irgendwie mit Xcode zu tun hat. – jsherk