大佬 最后是怎么实现的 目前也要开发类似的游戏
如果每个节点慢慢拼 太耗时 美术切图也比较慢
大佬 最后是怎么实现的 目前也要开发类似的游戏
如果每个节点慢慢拼 太耗时 美术切图也比较慢
这个可以在前期把图片分好区,然后点击的时候把相应的区的像素rgba 全部设置成想要rgba,刷新texture就行了
张晓衡大佬的微店上有一个9.9块的填色游戏,你可以买来参考
这个就是要确定你要填的是那个区域是难点,解决了剩下就是涂色而已,你可以对像素级操作,采用图遍历,遇到不是白色不继续走,这样就可以遍历出点击像素所在白色区域所有白色,填色就好,也就是上面说的Flood Fill算法,推荐这个图搞透明底白色线比较好,可以方便换线颜色也可以方便判断填涂区域,背景可以任意换背景图
const {ccclass, property} = cc._decorator;
@ccclass
export default class NewClass extends cc.Component {
@property({type: cc.Texture2D})
texture: cc.Texture2D = null;
start () {
let rt = new cc.RenderTexture();
rt.initWithSize(this.texture.width, this.texture.height);
rt.drawTextureAt(this.texture, 0, 0);
// data就是这个texture的rgba值数组
let data = rt.readPixels();
console.log(data);
}
}
大佬 你这个说的应该是把图一点一点的拼接好, 这种方法太耗时了
大佬最后咋实现的啊?我们也要做像素填色这类型游戏了。
盲猜可以用网格法, 先写个脚本把图片跑成二维数组的网格,根据点击所在网格下标判断区域,然后给区域内的网格设置颜色
个人觉得网格还不如美术把每一个单独切块然后重新拼。只对单个精灵操作改变颜色。
你的填色是固定填色, 还是任意位置, 点哪里就哪里上色。
1.如果你是固定方向上色,我这里有方案。
2.如果你是 点哪里就哪里换颜色, 在论坛搜索 <贴花> 关键字, 最高适配到 3.5.2了。 或者去看 官方案例, 溶解, 点击消除 有官方案例
很好奇最后是怎么实现的
大佬你好,需求是这样的 : 先给一张图片,然后就一个一个格子的像素,鼠标点哪个格子,就给哪个格子填色。
你是3d的吗, 3d 的看我说的。
2d 的话论坛有很多答案你自己找下,我目前主要在看3d 的。
3d 参考方案:
1.去看这个贴子。 贴花效果
不过提前说一下,这个效果精度很低, 涂色的位置和你点击的位置有差距。
2.这个官方的demo, 它的办法是弄了很多个面,很多个材质。 你点哪里就换哪里的材质。
3.还有这个demo 也可以参考, 和上面两种处理方式类似。
这三个的处理方法, 如果配合美术,处理的好, 可能都能解决你的问题。因为你是一个格子,一个格子,而不是 点哪里就是哪里。 没有那么高的精度要求的话是可以用的。
好的,辛苦了大佬,我是2d的,刚入门两个星期,再找找办法。
弄一个类似于噪声贴图的图。需要填充的区域给你填充的颜色。shader里面拿正常贴图和噪声贴图uv点,颜色做混合就行了
像素填色,我这边的想法是拿到一张图片,怎么分解为像素,然后操作每一个像素格子。比如像这张图片
去研究shader,你看上面大佬发的。
好,我去b站看下放空大佬的shader教程,谢谢大佬。