चूंकि Table.drawDebug को libGDX में पदावनत किया गया है, इसलिए मुझे इसके बजाय क्या उपयोग करना चाहिए?


10

मैं एक सरल खेल बनाने के लिए "लर्निंग LibGDX गेम डेवलपमेंट" पुस्तक का अनुसरण कर रहा हूं। मैं मेनू निर्माण अनुभाग में हूं जहां हम एक मंच बनाते हैं और इसे डिबग बॉर्डर के साथ प्रस्तुत करते हैं।

पुस्तक का उपयोग करने के लिए कहते हैं, Table.drawDebug(stage)लेकिन इस स्थिर विधि को Tableपूरी तरह से फ्रेमवर्क वर्ग से हटा दिया गया है ।

मैं आयात कर रहा हूं com.badlogic.gdx.scenes.scene2d.ui.Table; नीचे मेरा कोड है:

@Override
public void render(float deltaTime) {
    Gdx.gl.glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
    Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);

    if (debugEnabled) {
        debugRebuildStage -= deltaTime;
        if (debugRebuildStage <= 0) {
            debugRebuildStage = DEBUG_REBUILD_INTERVAL;
            rebuildStage();
        }
    }
    stage.act(deltaTime);
    stage.draw();

    Table.drawDebug(stage);
}

अंतिम पंक्ति Table.drawDebug(stage);में संकलन त्रुटि है"The method drawDebug(ShapeRenderer) in the type Table is not applicable for the arguments (Stage)"

क्या डिबग मोड में मंच खींचने का एक नया तरीका है?

जवाबों:


11

यह एक बार फिर बदल गया है।

वर्तमान में विधि के लिए सही कोड निम्नानुसार है, जैसा stage.setDebug()कि प्रतीत होता है हटा दिया गया है (पता नहीं चल सकता है कि क्या संस्करण हुआ) और इसके साथ प्रतिस्थापित किया गया stage.setDebugAll(true);:

@Override
public void render(float deltaTime) {
    Gdx.gl.glClearColor(0, 0, 0, 1);
    Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);

    if (debugEnabled) {
        debugRebuildStage -= deltaTime;
        if (debugRebuildStage <= 0) {
            debugRebuildStage = DEBUG_REBUILD_INTERVAL;
            rebuildStage();
        }
    }
    stage.act(deltaTime);
    stage.draw();
    stage.setDebugAll(true);
}

स्टेज वर्ग के लिए Scene2d एपीआई प्रलेखन


5

जवाब मिला, स्थैतिक Table.drawDebug(stage);कॉल के बजाय एक इंस्टेंस विधि है जिसे कहा जाता है stage.setDebug()


1
LibGDX के वर्तमान संस्करण के साथ, यह अब ऐसा नहीं प्रतीत होता है, कम से कम यदि यह उसी स्थान पर स्वैप किया जाता है जहां पर वह पुस्तक डालता है।
जेम्स स्कैप
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.