前三步应该不难,甚至可以合并到一个工具里来实现。也就是从TXT中提取汉字,整理不重复的以后,直接生成TGA文件。6 w7 n9 \, N* F" F0 w* c
至于第四步,我还没有研究过游戏的XML结构。不好下结论。但想来是XML结构应该不会太难。
( M" R: X: ^5 k% E- F因为下载的两个游戏都在单位的电脑上,我明天一早就出差走,可能没有时间去研究了。那就凭我现在的理解说两个问题,可能两个问题一旦搞明白XML文件以后就不是问题了,但还是希望007能给我解释一下,这样我在出差的时候就能够把程序的主题框架构思出来,解决一些算法上的问题,出差一回来就可以动手了。
$ t" e, J# m" X8 S7 I1 C- ]9 I) l: f( w T" |# q& `& i! ?
问题1:我们汉化的游戏中的英文和数字怎么处理?仍然调用原来的字体TGA文件吗?
- h- b# }, j* u( W+ D* }问题2:假设我们汉化制作好以后的TGA中按顺序保存了如下汉字“一二三四”,而在需要显示的对话中,一句是“一三”,另一句是“一四”。
% o( U2 G* |% A3 B5 M那么在XML中,是不是应该有这样的结构:8 c$ ^4 e9 ^( g7 z X) g, l) ?
{$ F C1 i! K$ F7 [0 C$ D: y
SHOWTEXT //需要显示文字的ID,或者是偏移量2 V/ A2 V) z9 S$ B" @
X // 显示的X坐标
2 R# x* b6 A; ~. |5 cY // Y坐标
# y8 n" o8 z. y. g& \}2 f( P/ d# H$ y) t" r
当然,如果这个结构中再包含字体文件,那就解释了我的第一个问题。如果是这样,那又出现一个新问题,就是制作汉化的XML时,需要考虑英文或者数字的宽度,将后面的文字显示位置进行调整。
# l2 E2 i: N( B! q! d; l! w. h& Z6 m' H K: n8 Q
“一三”对应的XML内容就是{TGA名, ID:1, X:100, Y: 100;TGA名, ID:3, X:116, Y: 100} //假设显示在(100,100) X0 D2 N' l5 _# s9 u
“一四”对应的XML内容就是{TGA名, ID:1, X:200, Y: 100;TGA名, ID:4, X:216, Y: 100} //假设显示在(200,100)" [& F2 n$ z; g: W8 D
' b4 M P; t; v/ o% p猜测,以上都是我的猜测,请007发一个游戏中XML的样式我看一下。 |