cocos2dx 部分截屏问题

这个冬天有点冷灬 2016-10-22 01:10:38
我想写一个你猜我画的游戏,需要对画板的地方进行截屏传到服务器端,下面是一个简单的界面图

需要截取的是hello world所在的白色区域。用的是RenderTexture这个类,部分截屏的话是用的里面的setVirtualViewport这个方法,然后是最后截取的图片都不对,偏差很大,参数各种试都没成功,官方的文档的注释感觉说的也不是很清楚。
截屏处理的代码

auto origin = Director::getInstance()->getVisibleOrigin();
auto visibleSize = Director::getInstance()->getVisibleSize();
RenderTexture * renderTexture = RenderTexture::create(canvasWidth, canvasHeight);
renderTexture->ignoreAnchorPointForPosition(true);
renderTexture->setAnchorPoint(Vec2(0,0));
Rect fullRect;
fullRect.setRect (
0,
0,
visibleSize.width,
visibleSize.height);
Rect virtualViewPort;
virtualViewPort.setRect (
0,
0,
canvasWidth,
canvasHeight);
renderTexture->setVirtualViewport(vecCanvas, fullRect,virtualViewPort);
renderTexture->begin();
Director::sharedDirector()->getRunningScene()->visit();
renderTexture->end();

vecCanvas的类型是Vec2 是画布左下角的起始坐标,canvasWidth,canvasHeight是画布的宽跟高!
...全文
1326 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
大笨猪o 2017-03-18
  • 打赏
  • 举报
回复
具体是哪里偏差呢
zerozerg2006 2016-12-21
  • 打赏
  • 举报
回复
考虑一下会是适配问题吗?我随便猜的。

721

社区成员

发帖
与我相关
我的任务
社区描述
Cocos2d-x相关内容讨论专区
社区管理员
  • Cocos2d-x
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧