设为首页收藏本站官方微博

其他 TGA图片字库制作

[复制链接]
查看: 5534|回复: 12
打印 上一主题 下一主题

[其他] TGA图片字库制作

跳转到指定楼层
楼主
发表于 2011-7-4 17:53 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

TGA图片字库制作

我很想加入这个行业,而且有足够的时间、耐心。最近我拿个小游戏学学,先分析了一下。显示文字是TGA图片字库,已经得到这个字库了,现在该到制作新字库TGA了。网上搜了一下,找到了Bitmap工具,这个工具确实很不错。- ~# C; H4 o. P5 N2 @& l) v2 |" T! i
我想知道的是,能不能原字库图片的宽度和字母的各类参数不变的情况下,再加新的字符?首先新加字符然后得到字符参数还是按预设的参数来新加字符?是PS来实现?(我估计PS定坐标很麻烦). g; K1 H) i4 }4 j7 Y
那位热情的大侠请教一下小弟。谢谢~
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 很美好很美好 很差劲很差劲
回复

使用道具 举报

13#
发表于 2011-7-5 16:39 | 只看该作者
回复 rinat 的帖子
2 T  F. R1 s( H; J! s
: k; N6 @9 X- l7 `: w) C6 g! q9 H* V/ phttp://www.game798.com/html/2007-03/3147.htm
" f# w2 g3 T* c; q% t- k# g: V4 f  I2 I1 W- t
希望对你有用,一个TGA库.其实百度一下.挺多的.只要能将生成的像素位图转换为带通道的TGA就可以了,至于压缩或者非压缩,看你的游戏了,反正这种库都支持.; d* F; I+ }9 n8 Q

5 W% o: [8 L" n& t还有就是,如果你要用现成的软件修理字库图,首先你的新的文字量要少,比如几个或者几十个,那么工作量可以接受,如果你要把一个A码的TGA字库扩充到U码,那么手动...我觉得不显示,至少我这种等级的闲人做不来..  W4 |6 B: F" f$ X) e* `

& u9 f9 i, }/ w- ?6 m7 k( @总结一下,个人感觉,字库的话.还是自己写个小软件,来的快.因为你不是想还是使用原来的方式进行字库读取么。
: M6 _" D2 a7 I5 w  l8 m8 p' t% t" h' R- o' X3 \' u0 _
或者还有2条路,inject,劫持掉他的显示方式,直接用你的绘图方式来输出文字,007大仙很熟悉,你可以PM或者QQ或者怎么怎嘛他.$ I4 b+ c" U( k: |9 @
% \1 ~2 B% R( Q* y( D4 P; t0 H- B  p( i
最后一条路就是放弃.
回复 支持 反对

使用道具 举报

12#
发表于 2011-7-5 16:33 | 只看该作者
魔鸢 发表于 2011-7-4 18:20 . G( u2 V" [. c$ x5 o
TGA图片字库一向都是美工的活,童鞋,你要汉化的话就完全搞错方向了,抠鼻~~~
6 \; F1 g9 S% @$ ]7 k( Y
生成字库这种东西交给美工嘛?看来美工需要去学编码,尤其是了解图像相关API,然后去写代码,生成包含需要的字符的图片了...
回复 支持 反对

使用道具 举报

11#
发表于 2011-7-5 14:52 | 只看该作者
本帖最后由 solidji 于 2011-7-5 14:52 编辑 3 K# {: @" X' S$ M7 ^. q

3 q6 M  X$ e4 O# ]; T( u重新做一张更方便
" u7 P5 K1 q' c; \如果非要加在后面,也可以自己实现( k( N$ T3 s. Q% Q1 N
我给你提供个思路。我们先假设原来的字库你已经找到,并且是纹理图片字库
, \4 b, X; J3 u" T. J$ q首先
3 Y% _0 j7 L& z; z! I9 c/ sCreateVertexBuffer(sizeof(CnFontVertex)*6*8192, D3DUSAGE_DYNAMIC, FVF, D3DPOOL_SYSTEMMEM, ppVertexBuffer,pSharedHandle);//创建一个包含8192个字符的足够大的字库缓存" g- e3 R9 E; ?! p9 j/ \
                g_pFontVertexBuffer = *ppVertexBuffer;
: y: K3 q7 c* D5 ~, D9 A4 p, R) o4 |" y                g_pFontVertexBuffer->Lock(0,Length,(void**)&mem,0);
8 m+ x2 n$ |: s( x7 k) m1 Q' W                g_pFontVertexBuffer->Unlock();$ \' ^  S/ `' t

+ t1 V3 ]5 Y9 q$ pCString font = _T(".\\font.bmp");//这个是自己要添加的新的字库
, l4 y# \1 r; V3 {* L                        D3DXCreateTextureFromFileEx(7 ^% {$ i6 A. U( e3 B% x
                        m_device,  s4 u0 e/ ?: m; K! B" \
                        font,
, t" ?0 l' [2 i6 K1 ]  O: k/ S( d7 D                        D3DX_DEFAULT,2 E5 S6 C2 D, ^" F
                        D3DX_DEFAULT,6 J* h- C; W: w" H* d
                        D3DX_DEFAULT,
; L7 V5 D  S3 k                        0,
3 H, |# S$ Q8 W( t                        D3DFMT_A1R5G5B5,+ |8 l: h& L3 J
                        D3DPOOL_MANAGED,1 h; D9 x: ?& m  ?
                        D3DX_FILTER_TRIANGLE,- d" s! q! ^8 P& Q1 R
                        D3DX_FILTER_TRIANGLE,
* k3 h( g- G1 E1 }5 k/ l6 W( q                        D3DCOLOR_RGBA(0, 0, 0, 255),- q8 X. _4 z+ ?% F$ O
                        NULL,, W" Q: L1 N0 r% X/ y) ]4 Z
                        NULL," e; L* ~. s3 m( t3 T8 j  p
                        &Tex);
% p( j7 r( y3 S. P6 V2 X. {. O( M+ [& c$ C1 V
IDirect3DTexture9* in = Tex->Lock(0, pDesc.Size, &pbData, D3DLOCK_READONLY);
% {5 n- E. U% H: w/ K( O把Tex里的数据lock到pbData
2 b* T7 Y+ ?7 \$ \6 E4 n% U# z然后把pbData里的数据copy到mem接在原本的字库后面
. J$ n) K: q( V7 ~g_pFontVertexBuffer->Lock(0,Length,(void**)&mem,0);8 v! C! n  S5 ?! @: s3 R* r
memcpy(pbData,mem,len);4 w/ j6 S: ], f
g_pFontVertexBuffer->Unlock();3 S& ?: p: i* g' o6 ~' h5 x4 _

; Z. ]1 J" e) m) @& K最后保存成TGA
4 Q) x$ }" w" A# ~& g1 x2 KD3DXSaveTextureToFileA(“new字库.tga”, D3DXIFF_TGA, ppVertexBuffer, NULL);: h- Z: x. c4 q: b
3 T. G0 ]( v7 U/ k! H" @" a# r
这个代码我没调试随手写的,表达下思路而已,不可照搬
回复 支持 反对

使用道具 举报

10#
发表于 2011-7-5 12:12 | 只看该作者
回复 rinat 的帖子' r& a) K) T0 q. C* ]! C4 z; W
) ]; C6 h7 \/ W/ q* W: g9 J
重新做一个新的不行吗?4 q3 k% P3 S# T
在原图片上添加字符,理论上是可以的,但应该不会有专门的软件,因为这个功能基本没人会用到。除非自己写一个,否则只有PS了。
回复 支持 反对

使用道具 举报

9#
 楼主| 发表于 2011-7-5 10:16 | 只看该作者
沉睡的绵羊 发表于 2011-7-5 09:06
- E7 i: M1 A+ ^4 q1 q1 v( C! phttps://www.chinaavg.com/thread-28475-1-1.html2 n7 N9 O5 W' T6 J1 g2 ?; Z5 O
这是招人简章。& |) J+ n8 n7 }% ^
楼上的,你的想法很好。我是技术 鈂緦 , ...
& g3 |& h* x6 ~3 y2 K
果然是,这个光操纵PS就不行了,修改原TGA遇到了些小问题,要得自己好好研究TGA了。
回复 支持 反对

使用道具 举报

8#
 楼主| 发表于 2011-7-5 10:14 | 只看该作者
caesarzx 发表于 2011-7-5 10:02 / D4 k  L# s- e6 e
要命,民间汉化成行业了。

: ]' e: m8 V2 P恩,就是贡献性的民间行业,呵呵~
回复 支持 反对

使用道具 举报

7#
发表于 2011-7-5 10:02 | 只看该作者
要命,民间汉化成行业了。
回复 支持 反对

使用道具 举报

6#
发表于 2011-7-5 09:06 | 只看该作者
https://www.chinaavg.com/thread-28475-1-1.html/ h: V0 R' u2 W
这是招人简章。
- e, a- |9 s! h" q' F楼上的,你的想法很好。我是技术 鈂緦 , QQ 号码是 11203768 , 欢迎一起交流。
; N9 w/ c: K3 l" J& Z1 J, G5 d你说的想法非常好,不过TGA的文件格式你得非常熟悉才能用软件用。
回复 支持 反对

使用道具 举报

5#
 楼主| 发表于 2011-7-4 18:36 | 只看该作者
魔鸢 发表于 2011-7-4 18:21 ( |2 q/ ]- x- o8 ]. {" z
如果你有兴趣可以进考核群跟大家一起发展啊

! e  D  a+ x6 U. y" N; {; p+ y能否提供个群号?谢谢
回复 支持 反对

使用道具 举报

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

本版积分规则

冒险解谜游戏中文网 ChinaAVG

官方微博官方微信号小黑屋 微信玩家群  

(C) ChinaAVG 2004 - 2019 All Right Reserved. Powered by Discuz! X3.2
辽ICP备11008827号 | 桂公网安备 45010702000051号

冒险,与你同在。 冒险解谜游戏中文网ChinaAVG诞生于2004年9月9日,是全球华人共同的冒险解谜类游戏家园。我们致力于提供各类冒险游戏资讯供大家学习交流。本站所有资源均不用于商业用途。

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