ios - Cocos2dx changing sprite size and texture uv without using plist file -


i using cocos2dx. testing device ipad2 want sprite size independent of texture size because cant afford 1 one mapping. here example suppose have texture dimensions 1024,1024 want use portion of 0,0 300,300 want sprite draw 100,100 200,200 how can acheive this

i have tried setting quad manualy giving weird behaviour quad vertices are

     quad.bl.vertices = 0,0      quad.br.vertices = 1024,0      quad.tr.vertices = 1024,1024      quad.tl.vertices = 0,1024 

nothing displayed on screen

but when change them

     quad.bl.vertices = 0,0      quad.br.vertices = 2048,0      quad.tr.vertices = 2048,2048      quad.tl.vertices = 0,2048 

then portion of sprite displayed on screen. after changing vertices bit seems if coocs 2d assuming bottom left corner of ipad @ 1024, 1024 regards

i think need

ccrect requiredportion = ccrectmake(0, 0, 300, 300); ccrect drawarea = ccrectmake(100, 100, 100, 100);  ccimage *image = new ccimage(); image->initwithimagefile("texture.png");  //create full size texture example 1024,1024 cctexture2d *texture = new cctexture2d(); texture->initwithimage(image);  //create sprite require portion of texture (here size of created sprite 300,300); ccsprite *spritenew = ccsprite::createwithtexture(texture, requiredportion);  //setting anchor point make sure drawing required position on screen spritenew->setanchorpoint(ccp(0, 0));  //set scale sprite make fit in required area i.e (requiredsize/currentsize) spritenew->setscale(drawarea.size.width/requiredportion.size.width); spritenew->setposition(drawarea.origin);  somenode->addchild(spritenew); 

make sure delete image , texture later, not autorelease.


Comments

Popular posts from this blog

Unable to remove the www from url on https using .htaccess -