Hi,
Ich bin relativ neu in Objective-C und versuche mich momentan an einem 2D TowerDefense Spiel fürs iPhone.
Nachdem ich einige Performance Probleme hatte, habe ich versucht, meinen Code so weit es geht "auszumisten" und habe unter anderem auch eine Trennung von Spiellogik-Update und Grafik-Rendering in meiner Main-Gameloop vorgenommen. Trotzdem läuft das Spiel nicht einwandfrei, was offensichtlich daran liegt, dass sämtliche Objekte klassische UIViews (ImageView, Button, usw) sind. Sowohl die Creeps als auch Tower und Geschosse müssen von der iPhone Hardware also speicherintensiv gerendert werden.
Meine Frage ist nun, wie ich das Rendern der Grafik einfacher bzw. schneller und eleganter lösen kann, als mit UIViews, setImage: und setCenter:
Ich habe schon überlegt, auf OpenGL umzusteigen, was mir jedoch weder sinnvoll noch dieser relativ einfachen Aufgabe angemessen erscheint - oder?
Was ist CoreGraphics, hat das was mit meiner Frage zu tun und ist das in dieser Situation sinnvoll?
Auch von Bitmap-Texturen oder so habe ich schonmal gehört - kann mir jemand erklären, was es damit auf sich hat?
Ich bin relativ neu in Objective-C und versuche mich momentan an einem 2D TowerDefense Spiel fürs iPhone.
Nachdem ich einige Performance Probleme hatte, habe ich versucht, meinen Code so weit es geht "auszumisten" und habe unter anderem auch eine Trennung von Spiellogik-Update und Grafik-Rendering in meiner Main-Gameloop vorgenommen. Trotzdem läuft das Spiel nicht einwandfrei, was offensichtlich daran liegt, dass sämtliche Objekte klassische UIViews (ImageView, Button, usw) sind. Sowohl die Creeps als auch Tower und Geschosse müssen von der iPhone Hardware also speicherintensiv gerendert werden.
Meine Frage ist nun, wie ich das Rendern der Grafik einfacher bzw. schneller und eleganter lösen kann, als mit UIViews, setImage: und setCenter:
Ich habe schon überlegt, auf OpenGL umzusteigen, was mir jedoch weder sinnvoll noch dieser relativ einfachen Aufgabe angemessen erscheint - oder?
Was ist CoreGraphics, hat das was mit meiner Frage zu tun und ist das in dieser Situation sinnvoll?
Auch von Bitmap-Texturen oder so habe ich schonmal gehört - kann mir jemand erklären, was es damit auf sich hat?