魔王现役-第51章
按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!
这个就要从NS支持的两种图片格式说起了。同样一张图片,看起来几乎完全一样的情况下,BmP格式和JPG格式的大小是差很多的。实际上,JPG格式的图片已经经过了压缩。这种压缩会导致图片质量有一定的损失,尽管我们看不出来,但是JPG格式图片相比起BmP来说,一部分颜色会有变化。
在使用显示图片命令,不做任何特别定义的时候,NS会把图片左边最上面的一个象素格(0,0)的颜色作为透明色。
在的BmP图片里,除了人物以外的一整片黑色都是纯黑色(#000000),因此除了人物以外的部分都自动透明了。我们看到的就是人物周围非常干净的边缘。
(未完待续)
点击察看图片链接:附图1
Level 2(再续)
D的游戏制作教材区 Level 2(再续)
附图2(梵尘梦尘风游戏组/五分之庭早期人设友情客串:克里斯背景:实景PS)
而JPG图片,却并不是如此,图上的那些黑块就是因为压缩而改变了的颜色。也许只是变为#000001,但是在这里就成了全透明和不透明的差别。
———————————————————————
问题2:
难道这就意味着JPG图片不能用来显示人物吗?那做出来的游戏岂不是要大得可怕?
当然不是了。实际上,因为JPG价格便宜量又足,还是很大家推荐使用的。至于具体要怎么让JPG的人物边缘也变得干净,就是下一讲的内容了。(爆~)
———————————————————————
问题3:
如果我就是想显示一整张图片,不想要透明色怎么办?还要特意把左上点做成不一样的颜色吗?
不需要,这个问题和问题2一样,也留待下一讲吧。
大家还有什么问题?(众:问了你也只会说留待下一讲,还问什么……)
没问题我收拾东西走人啦……
————————————————————————
想起忘东西,cJ的跑回来:
本日小贴士(意思就是不看也可以,但是看了有好处的):
1
立ち剑涫稻褪侨宋锿计囊馑肌H绻谌毡镜腘S教程里看到“立ち剑保痛碜庞胠d命令显示的图片。
2默认的情况下NS图片显示层次(简):
————————————————————————
文章
人物图片(右)
人物图片(中)
人物图片(左)
背景
————————————————————————
3要把所选的背景等颜色写成#RRGGBB形式的颜色代码,可以使用PHOTOSHOP等作图工具查询,不过更简单的办法是推荐类似Ultraedit一类的文本编辑工具,可以直接挑选颜色并插入代码。
这里提一下很多人问到的关于音乐播放的问题,其实没什么好说的。
NS默认的音乐播放指令就是
bgm‘音乐文件名‘
支持mIDI,mP3等格式。
音乐播放是默认自动循环的。
之后是音效的播放。
dwave0,‘XX。wav‘
第一个数字代表声音的编号,可以同时播放多个音效,例如说:
如果人物语音播放编号为0,而嘈杂的环境音效编号为1,就可以同时播放。
想让音效循环播放的话,使用以下指令:
dwaveloop0,‘XX。wav‘
下面再列出一些音乐音效播放相关的指令供参考。
*****************以下编码需要注意*******************
play‘aa。mid‘用来播放mIDI
play‘*1‘播放cD上的音轨
playonce‘aa。mid‘和上面两个一样,不过不是循环而是放一次就停止
playstop停止mIDI或者cD
wave‘XX。wav‘当然是放WaV文件的命令
waveloop‘XX。wav‘循环播放wav文件
wavestop停止wav播放。很烦吧。。。》《
mp3‘XX。mp3‘播放mP3的
mp3loop‘XX。mp3‘循环播放mP3的
chvol0,100
调节音量的命令,把0号音乐音量调节为100。
cdfadeout1000
mp3fadeout1000
音乐淡入淡出时间设定,这两条是用在*define里的定义,用来定义音乐切换时的渐出时间。
****************编码部分到此结束******************
作业:
1为下面这段程序加入详细的注释(起点读者注意,全部为英文小写半角)
*define
effect2,10,1000
effect3,5,700
game
*start
bg‘a。bmp‘,2
ldc,‘b。bmp‘,3
花的生命很短。
clc,1
end
2利用LeVeL1和LeVeL2的教程内容制作一个简单的电子小说。
3试验effect命令的内置效果,其中有两个效果是很特殊的,如果有发现请指出来。
(和下一个LeVeL有关)
4如果发现哪个命令没有看懂可以提问。不过需要说清楚到底哪里不懂哦。
点击察看图片链接:附图2
NScripter全攻略:LeVeL 3
D的游戏制作教材区 NScripter全攻略:LeVeL 3 悲愤而不得不说的前言:
总之起点就是鄙视英文=_=
所有的程序代码依然都是半角小写
另,明日PK,PK票预订中。
============以下正文=============
NScripter全攻略:LeVeL3透明!透明!反锯齿图片制作与对话框
邪恶之诅咒:
盗帖者全家死光光
无端转载者出门被狗咬
假如获得转载授权,转载同时请贴出本人签字画押授权书。
本教程已在国家R界专利局申请专利,禁止任何形式的侵犯版权行为。
作者联系方式:
fs_countd@126。com
'hide=0'
LeVeL3透明,透明!反锯齿图片制作与对话框
相关指令
transmode
:l;
:c;
:a;
setwindow
相关程序
反锯齿图片制作工具(NS安装包中均有提供)
bw2aconv。exe
—————————————————————————————————————
NScripter的透明格式与设定方法:
透明色指定,也就是指定某张图片中的一个颜色(背景色)不显示,这点应该满好理解的。
NScripter有三种透明色指定格式:
left
copy
alpha
第一种就是left。也就是上一讲已经提到的:
在使用显示图片命令,不做任何特别定义的时候,NS会把图片左边最上面的一个象素格(0,0)的颜色作为透明色。图片格式最好是BmP格式。
第二种copy,顾名思义,就是完全照搬,没有透明色。当然是用来显示方块状的图片了。
第三种,NS自己定义的透明格式。可以解决上次说到的JPeG的颜色问题。关于NScripter不支持自带透明通道的图片格式例如PNG之类的,确实很让人头大,不过应该是属于习惯就好吧……(躲过美工们的砖头)
但是最让我头大的,其实是……无论我怎么讲这个透明格式的原理,都有人反映听不懂……orz……
那么先讲一下怎么设定这三种透明格式吧。
第一种办法:
假如在*define区里加入transmode命令,就能设定游戏默认的透明格式。
上次说过,在不加设定的时候,默认为是左上点透明。
例如:
transmodeleft
transmodecopy
transmodealpha
第二种办法:
当这张图片的显示格式不同于默认格式的时候,需要对每张图片单独定义透明格式。
还记得上一讲说到的人物图片显示命令吗?
ldc,‘chr。jpg‘,10,700
假如,要把这张图片完全显示,没有任何透明色的话,这条命令就会改写成:
ldc,‘:c;chr。jpg‘,10,700
在””里,图片的名称前,增加了:c;
c,当然就代表copy。
同样的,写成:a;就代表采用NS自定义的透明格式。
而写成:l;的话,就是以图片左上点为透明色了。
这种单独的参数设定方法在NS里相当常见。
而且,不只可以用来设定透明格式……具体请参见下一讲,lsp的混沌宇宙。=v=
—————————————————————————————————————
bw2aconv。exe反锯齿图片制作工具的使用:
说了这么多“理论基础”,终于可以开始说NS特定的透明格式了。
上一讲里提到的价格便宜量又足的JPG格式,这时候可以开始派上用场了。
那么首先我们来看看这两张图片。
附图(梵尘梦尘风游戏组/五分之庭早期人设友情客串:海亚辛斯)
(未完待续)
点击察看图片链接:附图
Level 3(续)
D的游戏制作教材区 Level 3(续) 这两张图片的区别就是……
一张背景是黑的,一张背景是白的,没错吧!(被众人殴打:你到底想说什么?!)
咳,咳,总之,个人猜测这就是bw2aconv。exe反锯齿图片制作工具的原理了。
如果这个象素点是作为背景存在的,也就是需要透明掉的部分,
那么,在这两张图片上,这一点的颜色就是不一样的。
这样,就让这个工具知道了哪些部分是需要透明掉的。
从而,生成了按照NS独特的透明格式制作出的图片,也就是下面这张。
(见附图)
bw2aconv。exe的使用方法就是这样:
'如果实在需要配图说明请回帖……看看需求量了……毕竟传图相当麻烦……=v='
1准备两张同样的图片(BmP格式)。分别起名叫
图片名_b。bmp和图片名_w。bmp
第一张图片的背景色为黑色,第二张图片的背景色为白色。
2把这两张图片放在一个文件夹里。
3打开bw2aconv。exe。会跳出一个路径选择框。'这个程序本身放在哪里都无所谓。'
4选择这两张图片所在的文件夹。点确认。
5在这个文件夹里,会自动出现一个新的文件夹,名为“OUT”。
6打开这个out文件夹,就可以找到一张名叫图片名。bmp的图片了。
7现在,就算把这张图片转成JPG使用,也完全不会有锯齿出现了。
当然要记得用刚刚讲过的两种方法之一,把这张图片的透明格式设为alpha哦。
另外就是,bw2aconv。exe会自动转换指定的文件夹内,所有按照这种格式起名的BmP图片。
所以,是可以批量生产的……
假如对透明格式没有更高的要求(比如说半透明,渐变之类的),这么做就可以了。
—————————————————————————————————————
进一步的说明:
看看刚刚生产出来的那张图片,就会发现,右半边图片实际上是一个人物的剪影效果。
也就是说,在图片的左半边,需要显示的部分,在右半边表示为黑色。
而左半边需要透明的部分,在右半边表示为白色。
那么,图片的左半边,需要半透明的部分,在右半边,当然是……表示为灰色了……
总结:图片的右半边每一点的灰度=图片左半边对应点的不透明度
灰度越高越不透明。黑色是全不透明,而白色是全透明。
当然,如果打算做出半透明效果(例如50%透明的对话框),
bw2aconv。exe恐怕就帮不上什么忙了。
需要在PS或者其他作图软件里做这样的处理。这个,就要看美工技术了~
—————————————————————————————————————
对话框的设定:
setwindow,这个恐怕是NScripter里参数最多最长的命令了。并且,相当的常用。
看看还剩点版面就讲了吧。这可是重点丫……
首先是超级简单的对话框,通常是一整块半透明的矩型,虽然不怎么华丽但是很清楚。
那么,除了对话框的颜色以外,还有多少个属性要设定呢?
对话框的位置和大小当然不用说,还有:
对话框里的文字具体显示在哪个位置,能显示几行,每行几个字
每个文字的具体大小,文字的间距,文字是否是粗体,是否要加阴影
还有,文字显示的速度,是一个字一个字慢慢显示,还是一整段文字一起显示。
以上这么多参数,都需要在setwindow里设定。
命令格式是这样的:
setwindow文字显示位置X,文字显示位置Y,每行显示字数,可显示文字行数,文字长,文字宽,行间距,列间距,文字显示速度(数值越小速度越快),是否粗体字(1粗体,0普通),是否阴影字(1阴影,0普通),对话框颜色(用颜色代码表示),对话框的左上点数值(2个数字)和右下点数值(2个数字)
例如:
setwindow8,16,20,23,26,26,0,2,20,1,1,#999999,0,0,639,479
如果想要全透明的对话框,把颜色代码改成#ffffff就可以了。(纯白色……无视……=v=)
这个就是显示一个简单的半透明对话框的办法了。
如果需要复杂一点,把这个