Ist die NDK für eine gute Leistung bei der Entwicklung eines Android Game erforderlich?

Ich habe gehört, wenn ich Android-Spiel ohne Verwendung der NDK zu entwickeln, ist die Leistung deutlich niedriger. Ist das die Wahrheit?

  • Fehler: Kann nicht ausgeführt werden
  • Unterstützt Codec für Android-Gerät
  • Android Parse Json Array von Strings
  • Bild auf Leinwand in JPEG-Datei
  • EditText erweitert zu langsam in AlertDialog auf Android
  • Konnte nicht laufen Programme auf Eclipse android
  • Wie bekomme ich benachrichtigt, wenn Systemgebietsschema in Android geändert wird?
  • Verwenden der Google Cloud Print API mit Android
  • Android WebView - Intercept Klicks
  • Freigeben von Text über Absicht auf Facebook ohne Verwendung von Facebook sdk
  • Flip-Card-Übergang zwischen zwei Aktivitäten Android
  • Ich möchte nicht, dass Android meine Bitmap automatisch skaliert
  • 3 Solutions collect form web for “Ist die NDK für eine gute Leistung bei der Entwicklung eines Android Game erforderlich?”

    Ich sehe 3 Hauptgründe für NDK:

    • Du möchtest C / C ++ – Codebasis wiederverwenden (zB Game Engine in C ++ geschrieben, Crossplatform Spiele)
    • Erhalten mehr Speicher (Sie können viel mehr Speicher über NDK verwenden)
    • Ihr Spiel ist sehr CPU-intensiv und Sie brauchen alle Ihre Geräte Power.

    In allen anderen Fällen können Sie wählen, was Ihnen gefällt. SDK / Java erlaubt Ihnen, OpenGL genauso wie NDK zu verwenden, also werden Ihre Grafiken nicht langsam. Du solltest vorsichtig sein mit GC, um glattes Gameplay zu bekommen. Wenn Ihr Spiel sehr CPU-intensiv ist, können Sie einige Methoden in C ++ schreiben und sie über JNI anrufen. Übrigens hat Dalvik JIT so Java-Code kann so schnell (noch schneller) als C-Code sein.

    Nein, das ist einfach nicht wahr.

    Es hängt sehr davon ab, was dein bestimmtes Spiel tut. Die wesentliche Frage ist: Ist Ihr Spiel CPU-intensiv (oder erfordern größere Mengen an Speicher).

    • Wenn es nicht ist, halten Sie sich an das SDK.
    • Wenn du es nicht weißt, weil du in der Vergangenheit noch nicht viele Spiele geschrieben hast, so bleibst du auf dem SDK.
    • Sogar es dort entpuppen sich, Teile des Spiels zu sein, die mit der zusätzlichen Rechenleistung zu tun haben, können Sie diese Teile immer zu nativen Code während der Entwicklung nach Bedarf extrahieren.

    Ein Grund, die NDK über das SDK zu wählen, hat einen riesigen Hintergrund in C ++, was dich in dieser Umgebung produktiver machen könnte. Allerdings, angesichts der aktuellen Stand der Toolsets (bequemes Debugging, Build-Zeiten, einfacher Zugriff auf SDK-Bibliotheken usw.), ist dies nur selten wirksam.

    Nein, du brauchst nicht die ndk zu verwenden, es sei denn du willst ein super-realistisches 3D-Spiel wie Real Racing 3 machen, wenn es ein Spiel mit einfachen Grafiken oder nicht viel zeitkritischen Sachen ist

    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.