2011-07-23 4 views
2

Je ne comprenais pas certains concepts de position d'objet dans Corona SDKposition Sprite à Corona SDK

J'ai créé la feuille de sprite:

local spriteSheet = sprite.newSpriteSheet("button.png", 138, 64); 
local spriteSet = sprite.newSpriteSet(spriteSheet, 1, 2); 
local sp = sprite.newSprite(spriteSet); 

et il est positions sont étranges et Sprite est hors des limites de l'écran même Je mis positions x et y à zéro

config.lua est:

application = 
{ 
    content = 
    { 
     width = 320, 
     height = 480, 
     scale = "letterbox" 
    }, 
} 

I penser que problème dans « referencePoint »

me dire comment changer setReferencePoint d'écran par défaut (pas d'image ou d'un groupe ...), écran juste par défaut ...

Répondre

2

Techniquement, vous pouvez utiliser un système de coordonnées différent pour tous vos graphiques en créant un groupe d'affichage et de tout attacher à ce groupe, mais il semble vraiment que vous posez la mauvaise question. Plutôt que d'essayer de changer le point de référence de l'écran, vous devriez vous demander pourquoi vos sprites ne sont pas positionnés correctement.

Veuillez créer une nouvelle question qui met l'accent sur ce problème et l'expliquer davantage, car tout ce que vous dites ici, c'est que les positions sont "étranges". Qu'est-ce que ça veut dire?

+0

maintenant ma question est la suivante: comment changer le système de coordonnées pour tous les objets à l'écran (non groupés) – Pleerock

+1

Pourquoi pas les regrouper tous? C'était ma suggestion. mettre tout (y compris les autres groupes) dans un groupe. – jhocking

+0

oui, mais ce n'est pas si confortable ... Mais maintenant il me semble qu'il n'y a pas d'autre moyen. Merci =) – Pleerock

0

Vous pouvez modifier votre code comme ci-dessous et il suffit de vérifier, il fonctionnera:

local spriteSheet = sprite.newSpriteSheetFromData("button.png",require("button").getSpriteSheetData()) 
local spriteSet = sprite.newSpriteSet(spriteSheet,1,9); 
sprite.add(spriteset,"button",1,9,1000,0); 
//button is lua file use button.lua 
local sp = sprite.newSprite(spriteSet); 
sp:prepare("button"); 
sp.x = display.screenOriginX+138; 
sp.y = display.screenOriginY+64;