游戏开发论坛

 找回密码
 立即注册
搜索
查看: 7322|回复: 8

求教freetype描边问题

[复制链接]

2

主题

11

帖子

36

积分

注册会员

Rank: 2

积分
36
发表于 2013-3-31 15:14:04 | 显示全部楼层 |阅读模式
最近项目中,因为优化,所以,要废弃之前的描边逻辑。中途遇到些问题,请教一下大家。

之前是在逻辑层上,通过在8个方向上偏移一个像素,实现的描边。这样的效果很好,对于描边的颜色、过度等等的支持很好。但是,在效率上,不怎么好。尤其是在需要同时绘制大量描边字的时候。

所以,现在要在底层直接完成描边信息,一次绘制,直接把每一个像素信息都提到渲染里,一次绘制出来,不需要在上层调用8次(加上正中1次是9次)。

遇到的问题就是,英文和数字通过mono取不出来,而不用mono的话,取出来的是带alpha的。这样的话,就不能区分出什么地方应该描边了。

现在粗略的想法是,在alpha融合上做处理,但是这也仅限一个想法,具体还未想。不知道大家有什么想法,求指教

3

主题

35

帖子

131

积分

注册会员

Rank: 2

积分
131
QQ
发表于 2013-3-31 21:08:12 | 显示全部楼层
设置一下参数就可以了,没这样麻烦吧。

2

主题

11

帖子

36

积分

注册会员

Rank: 2

积分
36
 楼主| 发表于 2013-3-31 21:49:37 | 显示全部楼层
flying_bat 发表于 2013-3-31 21:08
设置一下参数就可以了,没这样麻烦吧。

你是说,使用freetype提供的api吗?如果使用这些api,某些字体(粗字体)效果还算可以,如果是宋体的话,就会模糊。不知道您在使用的时候,尝试过宋体吗?如果尝试过,不模糊的话,求指教一二啊

201

主题

1437

帖子

1963

积分

金牌会员

Rank: 6Rank: 6

积分
1963
QQ
发表于 2013-4-1 20:34:33 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

2

主题

11

帖子

36

积分

注册会员

Rank: 2

积分
36
 楼主| 发表于 2013-4-1 22:47:53 | 显示全部楼层
niexuchina 发表于 2013-4-1 20:34
你确定描边真的有效率问题?

文字渲染消耗的效率极小,即使多出几倍也不应该有问题。

当同屏内,玩家数量达到一定数量时(头顶名字描边),测试出来的帧率是有影响的,所以,我们在优化。而我现在要做的就是要把字体本身和描边信息一次性的存储在贴图中,以便后续使用时,直接用这个贴图。现在遇到的问题就是,freetype提供的api制作出来的描边某些字体(粗字体)效果可以,但是对于,宋体,描边效果不是很好。所以,想自己写描边。
不清楚前辈您在处理这个问题的时候是怎么做的?望指教

201

主题

1437

帖子

1963

积分

金牌会员

Rank: 6Rank: 6

积分
1963
QQ
发表于 2013-4-3 15:56:12 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

23

主题

515

帖子

552

积分

高级会员

Rank: 4

积分
552
发表于 2013-4-8 22:43:34 | 显示全部楼层
freetype可以在提取glyph的时候加参数,非点阵字体提取出来本来就是带alpha的,不带alpha不好看。百度一下即可。

描边上下左右各绘制一次的方法实在太土了,而且效果不好,除非是点阵可以。

2

主题

11

帖子

36

积分

注册会员

Rank: 2

积分
36
 楼主| 发表于 2013-4-20 23:13:11 | 显示全部楼层
疯子阿虹 发表于 2013-4-8 22:43
freetype可以在提取glyph的时候加参数,非点阵字体提取出来本来就是带alpha的,不带alpha不好看。百度一下 ...

前一个项目采用的就是freetype自带的api做的描边效果,就像你说的,带alpha的。但是,因为是比较粗的字体,比如方正粗体、黑体什么的。可现在新项目用的是宋体,freetype提供的描边,就很模糊,所以,现在在想办法做处理。

0

主题

2

帖子

32

积分

新手上路

Rank: 1

积分
32
发表于 2015-7-17 11:49:10 | 显示全部楼层
小傻瓜儿 发表于 2013-4-20 23:13
前一个项目采用的就是freetype自带的api做的描边效果,就像你说的,带alpha的。但是,因为是比较粗的字体 ...

问题解决了吗,同求解决方案啊
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-7-21 08:27

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表