рендеринг спрайтов с использованием области текстуры и движка

Обратите внимание, что это мой первый треск в Анденжине. Я играл с libGdx как с потенциалом для разработки игр для Android, но он не удовлетворяет моим потребностям, поскольку я хочу разрабатывать только для Android, а 3D-движок, выполняющий 2D-работу, кажется излишним. Теперь я хочу попробовать Andengine и посмотреть, есть ли у меня то, что мне нужно. Самой большой проблемой в Andengine, кажется, является сложная схема именования (я более склонен к опечаткам, когда ключевые слова движка состоят из нескольких символов. LibGdx имел простое соглашение об именах (Texture, TextureAtlas и т. Д.).

Однако в libGdx .jar, похоже, есть ошибка с классом экрана, и мой проект libGdx, к сожалению, будет отложен. Я видел, что Andengine был еще одним чрезвычайно популярным движком и что у него был похожий (но не совсем похожий) класс, называемый сценой. Во всяком случае, я здесь.

Мой код:

private Camera camera;
private static final int CAM_WIDTH = 800;
private static final int CAM_HEIGHT = 480;
private ITexture texture;
private ITextureRegion textureRegion;

public int playerX = 300;
public int playerY = 300;

@Override
public EngineOptions onCreateEngineOptions()
{
    camera = new Camera(0, 0, CAM_WIDTH, CAM_HEIGHT);
    EngineOptions engineOptions = new EngineOptions(true, ScreenOrientation.LANDSCAPE_FIXED, new RatioResolutionPolicy(CAM_WIDTH, CAM_HEIGHT), camera);
return engineOptions;

@Override
public void  onCreateResources()
{
    //Load textures
    try{
        this.texture = new AssetBitmapTexture(this.getTextureManager(), this.getAssets(), “europe.png”)
    } catch (IOException e){}
    this.texture.load();
}

@Override
public Scene onCreateScene()
{
    Scene scene = new Scene();
    scene.setBackground(0.09874f, 0.6274f, 0.8784f);
    Sprite player = new Sprite(playerX, playerY, this.textureRegion, this.getVertexBufferObjectManager());
    scene.attachChild(player);
    return scene;
    }
}

Моя проблема:

Всякий раз, когда я запускаю проект, моя карта Европы только частично отображается в виде треугольника в верхнем правом углу моего планшета. Карта также переворачивается с ног на голову.

Я не могу использовать TextureAtlas, потому что мой главный компьютер вышел из строя и на нем был установлен Texture Packer, что привело к необходимости кодировать на планшете (используя AIDE). Я также использую устаревшую .jar of Andengine. Причина в том, что я клонировал репозиторий git в свою игру и получил кучу ошибок, говорящих о том, что в файле x86 .so произошла ошибка. В конце концов я заставлю его работать (даже если мне придется самому модифицировать взорванный игровой движок !!!), но пока я хочу изучить основы этого движка.

Кто-нибудь знает, как исправить мою проблему? Кроме того, хотя не требуется каких-либо советов по использованию Andengine будет принята с благодарностью. Заранее спасибо!

Дополнительные примечания:

Независимо от того, какие цифры я положил вSprite player = new Sprite() конструктор ничего не меняет.

Также обратите внимание, что ширина экрана преднамеренно установлена ​​низкой.

ВАЖНОЕ ОБНОВЛЕНИЕ!

Мне удалось получить клонированный репозиторий из GitHub для работы с AIDE. У меня есть Android-устройство ARM, а не x86 (я не совсем уверен, что у многих есть x86 Android). Это может помочь другим людям, имеющим эту проблему:

Чтобы исправить ошибки компиляции, я пошел вandroid.mk скрипт, который инициализирует сборку машинного кода для Andengine. Я прокомментировал x86 и запустил свое приложение с базовым проектом Andengine, и это сработало. Очевидно, он пытался собрать машинный код x86 для моего устройства ARM.

Теперь у меня есть доступ ко всем возможностям Andengine и, наконец, я могу уничтожить этот дрянной, устаревший .JAR, который я использовал до сих пор. Это открывает для меня множество учебных пособий, хотя я все же хотел бы получить ответ здесь.

В ответ на комментарий ниже я отправляю сообщение с вопросом о том, что я скопировал приведенный выше код с учебного веб-сайта. Я решил, что мне нужно, изучить основы Andengine, прежде чем я начну сочинять свою собственную грязную кодовую базу :)

Ответы на вопрос(0)

Ваш ответ на вопрос