lufy's legend

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 8699|回复: 5
打印 上一主题 下一主题

游戏中新手指引的按钮遮挡应当是什么思路?

[复制链接]

25

主题

0

好友

313

积分

帐下督

Rank: 2

跳转到指定楼层
楼主
发表于 2016-3-13 09:36:09 |只看该作者 |倒序浏览
QQ截图20160313100520.png

如图 第一次进入游戏会有新手提示 但是我想要的效果是加一个黑色的透明遮罩  这本身没有问题 但是遮罩需要挖空一个矩形 就是说全屏都会有一个遮罩 但是升级按钮这个位置是没有遮罩的 一般是什么思路 是多画几个遮罩拼起来还是自己ps一张挖掉矩形的png?
回复

使用道具 举报

25

主题

0

好友

313

积分

帐下督

Rank: 2

沙发
发表于 2016-3-13 09:41:12 |只看该作者


效果类似于这种
回复

使用道具 举报

37

主题

8

好友

9309

积分

诸侯王

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

板凳
发表于 2016-3-13 10:44:36 |只看该作者
after5120 发表于 2016-3-13 09:41
效果类似于这种

最简单的,当然是用几个矩形来拼凑了,但是既然你发帖,估计也是不想使用这种方法
还有一种方法就是使用LBlendMode.SOURCE_OUT混色模式了,下面是我写了一个简单的函数
你只要传入你要的参数即可,第一个是LPoint对象,是半透明的范围大小,第二个参数是LRectangle对象,是中间扣除的范围
  1. function getMask(point, rectangle){
  2.         var baseLayer = new LSprite();
  3.         baseLayer.alpha = 0.8;
  4.         var rectangleLayer = new LSprite();
  5.         rectangleLayer.graphics.drawRect(0, "#000000", [rectangle.x, rectangle.y, rectangle.width, rectangle.height], true, "#000000");
  6.         baseLayer.addChild(rectangleLayer);
  7.         var pointLayer = new LSprite();
  8.         pointLayer.graphics.drawRect(0, "#000000", [0, 0, point.x, point.y], true, "#000000");
  9.         pointLayer.blendMode = LBlendMode.SOURCE_OUT;
  10.         baseLayer.addChild(pointLayer);
  11.         baseLayer.cacheAsBitmap(true);
  12.         return baseLayer;
  13. }
复制代码
不明白的话,可以看这个demo
http://lufylegend.com/demo/test/124.html
不回答与技术和引擎不相关的问题
回复

使用道具 举报

25

主题

0

好友

313

积分

帐下督

Rank: 2

地板
发表于 2016-3-13 10:47:44 |只看该作者
lufy 发表于 2016-3-13 10:44
最简单的,当然是用几个矩形来拼凑了,但是既然你发帖,估计也是不想使用这种方法
还有一种方法就是使用L ...

谢谢大神!
回复

使用道具 举报

0

主题

0

好友

6

积分

士兵

Rank: 1

5#
发表于 2017-4-21 10:21:00 |只看该作者
lufy 发表于 2016-3-13 10:44
最简单的,当然是用几个矩形来拼凑了,但是既然你发帖,估计也是不想使用这种方法
还有一种方法就是使用L ...

调用怎么调,是把point写成{x:x_value,y:y_value}格式吗
回复

使用道具 举报

37

主题

8

好友

9309

积分

诸侯王

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

6#
发表于 2017-4-21 19:01:37 |只看该作者
linyujie 发表于 2017-4-21 10:21
调用怎么调,是把point写成{x:x_value,y:y_value}格式吗

引擎文档和demo例子都有,参数我已经明确说明了是LPoint对象
不回答与技术和引擎不相关的问题
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

防止垃圾广告,请填写任意字符

Archiver|lufy's legend

GMT+8, 2024-4-20 15:16 , Processed in 0.055923 second(s), 27 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部