Libgdx Animation using images from TextureAtlas gets incorrectly rotated -
मेरे TextureAtlas में Sprite मेरे के लिए एनीमेशन 90 डिग्री घुमाया जाता है।
जब मैं अपना एनीमेशन खींचना यह अभी भी 9 0 डिग्री तक रोटेट करता है मैं यह कैसे तय कर सकता हूं?
मेरा कोड ऐसा दिखता है:
बनावट एटलास स्प्रीशीशेट = न्यू टेक्सचरएट्लस (Gdx.files.internal ("images / spritesheet / spritesheet.atlas" )); सरणी के & lt; AtlasRegion & gt; CLOUD_ANIMATION_REGIONS = spritesheet.findRegions ("cloud_animation"); एनीमेशन एनिमेशन = नया एनिमेशन (0.1f, ImageProvider.CLOUD_ANIMATION_REGIONS); रेंडर विधि में:
बैच.ड्रा (एनिमेशन.getKeyFrame (elapsedTime, true), x, y); एनीमेशन पूरी तरह से पूर्णतः काम करता है लेकिन यह 90 डिग्री की तरह spritesheet में घुमाया जाता है।
मुझे पता है कि अगर मेरे पास Sprite I Sprite.draw (बैच) को कॉल कर सकते हैं और यह रोटेशन ठीक कर देगा लेकिन मुझे लगता है कि एनीमेशन के लिए उस तंत्र का उपयोग करने में सक्षम नहीं प्रतीत होता है?
संपादित करें:
जैसा अलेक्जेंडर ने कहा, इस चाल करना होगा:
batch.draw (textureRegion, एक्स, वाई, 0 , 0, बनावटरेगियन.गेटरेगियनविड्थ (), बनावटरेगियन.गेटरेगियनहाइट (), 1, 1, 90);
ठीक है, यहाँ अपरीक्षित कोड है:
बनावट रेशम बनावट रीजन = एनीमेशन.केकेफ़्रेम (एपॉज़ेडटाइम, सच); अगर (TextureAtlas.AtlasRegion & amp instanceof textureRegion; & amp; ((TextureAtlas.AtlasRegion) textureRegion) .rotate) {batch.draw (textureRegion, एक्स, वाई, 0, 0, textureRegion.getRegionWidth (), textureRegion.getRegionHeight (), 1 , 1, 90, सत्य); } अन्य {बैच.ड्रा (टेक्स्टचर रीजन, एक्स, वाई); } क्या मैं यहाँ कर रहा हूँ: अगर एटलस पैकर के रूप में घुमाया क्षेत्र चिह्नित मैं जाँच और फिर आकर्षित यह घुमाया 90 कोण दक्षिणावर्त मूल 90 कोण वामावर्त रोटेशन क्षतिपूर्ति करने के लिए। देखें और उस का विशेष संस्करण TextureRegion घुमा सकते हैं
संपादित:। मार्कस टिप्पणी के आधार पर तर्क ठीक
Comments
Post a Comment