cocos creater 黑边问题原理解析

cocos黑边问题原理

图片来源:帮帮识字app

1. 为什么美术给的图没有黑边

1.1 原图:

1.2 去掉透明区域:

2. 为什么tiny压缩过以后 会出现黑边

2.1 tiny压缩完的图片(998K):

2.2 tiny压缩过的图片 去掉透明区域(165K):

3.tiny 压缩图片 和 原始图片细节对比

3.1 原始图片

3.2 tiny 压缩过后的图片细节

4. 不透明区域 用tiny压缩过的纹理。 透明 & 渐变区域用原图。

4.1 处理过的图片(497K 没有黑边)

4.2 去掉透明区域(alpha=0的区域 变成 不透明)

4.3 放大以后 (外圈 有一圈带颜色 & alpha=0的像素)

5.openGl 分析

5.1 编辑器中设置的混合模式 会通过 glBlendFuncSeparate 方法 传入 opengl 中

5.2 openGl的混合规则

GL_ZERO 因子等于0
GL_ONE 因子等于1
GL_SRC_COLOR 因子等于源颜色向量C¯source
GL_ONE_MINUS_SRC_COLOR 因子等于1−C¯source
GL_DST_COLOR 因子等于目标颜色向量C¯destination
GL_ONE_MINUS_DST_COLOR 因子等于1−C¯destination
GL_SRC_ALPHA 因子等于C¯source的alpha分量
GL_ONE_MINUS_SRC_ALPHA 因子等于1− C¯source的alpha分量
GL_DST_ALPHA 因子等于C¯destination的alpha分量
GL_ONE_MINUS_DST_ALPHA 因子等于1− C¯destination的alpha分量
GL_CONSTANT_COLOR 因子等于常数颜色向量C¯constant
GL_ONE_MINUS_CONSTANT_COLOR 因子等于1−C¯constant
GL_CONSTANT_ALPHA 因子等于C¯constant的alpha分量
GL_ONE_MINUS_CONSTANT_ALPHA 因子等于1− C¯constant的alpha分量

6. 解决黑边的方式

6.1 图片格式改成单点采样 (锯齿)
6.2 预乘 & 选择 GL_ONE 混合模式(spine 预乘模式 不支持 etc2 )
6.3 把图片的透明区域 预设带颜色的值。(spine etc2格式 待测试)
7. 图片处理方式
7.1 OpenCV简介

Opencv(Open Source Computer Vision Library)是一个基于开源发行的跨平台计算机视觉库,它实现了图像处理和计算机视觉方面的很多通用算法,已成为计算机视觉领域最有力的研究工具。在这里我们要区分两个概念:图像处理和计算机视觉的区别:图像处理侧重于“处理”图像–如增强,还原,去噪,分割等等;而计算机视觉重点在于使用计算机来模拟人的视觉,因此模拟才是计算机视觉领域的最终目标。

OpenCV用C++语言编写,它具有C ++,Python,Java和MATLAB接口,并支持Windows,Linux,Android和Mac OS, 如今也提供对于C#、Ch、Ruby,GO的支持

8. unity实现扩展阅读

https://zhuanlan.zhihu.com/p/340754532

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
回答: 在Cocos Creator中,可以使用cc.Graphics组件来进行绘制。通过调用该组件的方法,可以在画布中创建线条。例如,可以使用moveTo方法指定起始点,然后使用lineTo方法创建从起始点到指定点的线条。\[1\]另外,Cocos Creator中的物体外观是通过材质来描述的。材质包含了着色器的数据集,可以通过可视化调整来实现光照效果、光反射等效果。\[2\]如果想要获取自己的节点树中的Graphics组件,可以按照节点树的层级关系进行获取。例如,可以通过getChildByName方法获取到对应的节点,然后使用getComponent方法获取到Graphics组件。\[3\] #### 引用[.reference_title] - *1* *3* [CocosCreator中的Graphics绘制组件](https://blog.csdn.net/qq_42597694/article/details/120651974)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [CocosCreater 教程(中)](https://blog.csdn.net/qq_35624156/article/details/127943958)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值