1999 年 3 月留言板(下)

云风工作室

留言: WS 的 RLE 结构是偏重速度的, TinyHsu, 你的 RLE Sprite 剪裁的效率怎样?

名字: 云风
来自: 202.103.110.217
Wednesday, March 31, 1999 at 23:46:14 (CST)
留言: to tinyhsu

是cinepak codec的
看看AVI文件属性的详细信息里有

名字: freemind
来自: 202.98.33.179
Wednesday, March 31, 1999 at 22:42:44 (CST)
留言: 为游戏制作大本营申请了无数主页但一个能正常使用的都没有,暂时放在游戏制作论坛上了 8studio.163.net 。
名字: 8studio
E-Mail: 8studio.com.cn
主页: 8studio.163.net
来自: 八爪鱼工作室 202.94.2.136
Wednesday, March 31, 1999 at 21:24:08 (CST)
留言: 你别去SINA找人讨论,那里的学术气氛似乎不怎么好,大家都忙于表现自己,其实你这里是中国最好的GAME PROGRAMER WEBSITE,这不是恭维,相信这一点。但只是有点过于注重显示方面的了。
名字: 8studio
E-Mail: 8studio@8studio.com.cn
主页: www.8studio.com.cn
来自: 八爪鱼工作室 202.94.2.136
Wednesday, March 31, 1999 at 20:53:48 (CST)
留言: 明天上传RLE sprite supported的pdx测试程序,不如ws快,但比ws的rle sprite更节省内存。(新的结构哟 :)
名字: tinyhsu
E-Mail: tinyhsu@netease.com
主页: www.deep.163.net
来自: 202.96.100.141
Wednesday, March 31, 1999 at 20:42:56 (CST)
留言: freemind,你的smartavi到底支持的是哪一种格式的avi呀?,早上我试了N次N种格式,愣没撞到大运。:~~~~(
名字: tinyhsu
E-Mail: tinyhsu@netease.com
主页: www.deep.163.net
来自: 202.96.97.44
Wednesday, March 31, 1999 at 20:08:01 (CST)
留言: PDX MPEG player.去我的主页下载,但是在公司里测试时8台机器有四台不能正常工作(都为同一类型显示卡),why?,大家试试呀,启动时程序会自动搜寻CDROM目录检测VIDEOCD类型,也就是说,在启动文件前在光驱放入vcd既可播放。
名字: tinyhsu
E-Mail: tinyhsu@netease.com
主页: www.deep.163.net
来自: 202.96.97.44
Wednesday, March 31, 1999 at 20:05:50 (CST)
留言: *—%……¥—*!新浪网贴子post不上!老说什么密码错!注册了几个笔名,还是这样!&*%!:(
名字: limoon
来自: 202.104.218.38
Wednesday, March 31, 1999 at 10:22:24 (CST)
留言: 发布超级 AVI 播放器 SMARTAVI 1.0 版!
名字: freemind
主页: http://freemind.163.net
来自: 游戏硅谷 202.98.46.135
Wednesday, March 31, 1999 at 01:36:44 (CST)
留言: RA 是 Tile Base 的, 不需要检查碰撞
Limoon,这个数据量只有整屏的一半, 又不用 Alpha 混合,当然快了 ^_^
但如果加一帧在里面就等于白算一帧, 速度就又慢了
btw, 中间加一帧正是我最开始的想法, 我在最原始的版本就做了(那个ALpha混合的)
在我的机器上只有 14fps. 不实用. 所以我才放弃的
Sigh, 等机器速度再快 10 倍的时候在讨论算几帧显示一次的问题吧 :-(
风魂现在加新的整屏特效处理很容易, 我想找时间写点天气等特效进去 ^_^

名字: 云风
来自: 202.103.110.57
Tuesday, March 30, 1999 at 23:52:30 (CST)
留言: ha, 看来我的想法不错 :) , 快了10帧. 不过效果不是很理想. 主要问题是每帧图象中前后2帧错位太大, 如果在两帧间加画(或混合)多1帧, 可能效果会好一点. :-)

名字: limoon
来自: 202.104.218.56
Tuesday, March 30, 1999 at 23:37:43 (CST)
留言: 有关碰撞检测的问题,大家认为啥方法较好。
比如红XXX中。

名字: dai
来自: 202.103.155.34
Tuesday, March 30, 1999 at 22:38:47 (CST)
留言:
有必要在DX中播放AVI吗?

名字: dai
E-Mail: superdai@163.net
来自: 202.103.155.34
Tuesday, March 30, 1999 at 22:36:43 (CST)
留言: 我的游戏制作主页已经做好了,但为之申请的militiaman.163.net无法访问。
名字: 8studio
E-Mail: 8studio@8studio.com.cn
主页: www.8studio.com.cn
来自: 八爪鱼工作室 202.94.7.32
Tuesday, March 30, 1999 at 22:17:01 (CST)
留言: pdx开始支持rle的sprite和M...M....MPEG replay .hehehehe.DirectMedia有个好处,关于流输出的代码是公开的,所以xixixixi.pdx现在可以支持exclusive mode下的全速回放了,而且不需要该死的overly支持哟,:),明天上传demo!
名字: tinyhsu
E-Mail: tinyhsu@netease.com
主页: www.deep.163.net
来自: 202.96.100.252
Tuesday, March 30, 1999 at 20:33:46 (CST)
留言: 我忘了支持 555,现在修好了, 刚才的链接是 exe 不是 .zip 我写错了
不过现在新的版本把那个效果做进去了 ;-)

名字: 云风
来自: 202.103.110.57
Tuesday, March 30, 1999 at 19:56:28 (CST)
留言: 我想如果在头尾关键帧中插入一定的过渡帧, 可能效果会好一点. 例如要把屏幕滚动30个点, 用10帧完成这个滚屏动作, 而不是一帧搞定, 每帧移动3点, 按照梅花更新, 这样就不只 2 帧相关.
btw, wsmar30.zip 的下载连接无效, actdemo.zip在我这里运行不正常(背景是绿色的).

名字: limoon
来自: 202.104.218.60
Tuesday, March 30, 1999 at 19:27:00 (CST)
留言: 对了,我改写了DirectMedia中有关overly支持的代码,xixi,在DirectMedia中exclusive下replay video clip没问题喽。:),这是好消息哟。
名字: tinyhsu
E-Mail: tinyhsu@netease.com
主页: www.deep.163.net
来自: 202.96.100.180
Tuesday, March 30, 1999 at 18:01:09 (CST)
留言: 停了一天的电,不爽,:(,什么也没干的云晕乎乎过了一天.
名字: tinyhsu
E-Mail: tinyhsu@163.net
主页: www.deep.163.net
来自: 202.96.100.180
Tuesday, March 30, 1999 at 17:57:25 (CST)
留言:
云风,我原来放djgpp文件的地方现在不能用了。你把链接去掉吧。:(

名字: snow
来自: 202.103.135.61
Tuesday, March 30, 1999 at 17:23:45 (CST)
留言: limoon, 你的想法有点问题, 就是, 那样屏幕上的信息只是 2 帧相关的了
不过我还是被打动了, 刚才写了程序看了下. 如果是贪便宜,一次更新
奇数行,一次更新偶数行的话, 效果很糟糕. 如果是做梅花状的交错更新
强些, 如果你想看看效果, 我把下载链接放在下面. (用 A 切换效果)
不过你要先下载 actdemo.zip (这次应该传好了 :-)

名字: 云风
主页: http://www.netease.com/~cloudwu/windsoul/wsmar30.zip
来自: 202.103.110.57
Tuesday, March 30, 1999 at 16:48:12 (CST)
留言: 忘了说, 我上传了一个DIRECTSOUND WRAP CLASS(测试版连同源码490K), 和一个使用DIRECTDRAW放AVI的程序(源码119K)在我主页, 有兴趣有精力就下载用用试试.

所谓的GAMMA CONTROL(利用显示器帮助我们进行alpha混合, IDirectDraw4 Interface)一定需要硬件(MONITOR)支持, COLOR CONTROL也需要硬件支持所以,一定要用GetCaps METHODS来查询硬件配置. 如果硬件不支持, 一切挖空心思都是白费. 也可以利用OVERLAY来搞ALPHA BLENDING, 但是, 还是要用硬件支持. 所以唯一的出路是: Lock & write to Surface DIRECTLY, Rotate Palette, 用云疯的疯魂库, 还有就是DirectX Media 6.0. 半夜两点了, 睡!

名字: Gamester
来自: 128.174.0.228
Tuesday, March 30, 1999 at 15:09:05 (CST)
留言: 风魂游戏库是用在 WINDOWS 底下的吗?在WINDOWS底下也能用汇编吗?我感到
很惊奇。请发E_MAIL 给我。谢谢。

名字: 小羊
E-Mail: tengephone@163.net
主页:
来自: 江西 202.101.240.188
Tuesday, March 30, 1999 at 14:43:04 (CST)
留言: 云风:
消除滚屏跳动DEMO包解不开,因此我还没有看过你程序的效果和速度,不过,我有个想法:不用在程序中去进行alpha混合,利用显示器帮助我们进行alpha混合去消除滚屏跳动。

因为显示器的是由电子束轰击荧光粉发光,每荧光点是由三种不同颜色的荧光粉组成,它们发出的光线互相混合在一起组成各种颜色;在640*480分辨率下每像素是由大约6个荧光点组成,但由于荧光粉够小,相邻八个像素颜色会被人眼混合,这样我们在程序滚屏时,只需更新下一帧的部分像素,如隔行更新或交叉更新每行部分像素,再下一帧时,再把前次未更新的更新完,这样每次人眼看到的是由上帧和下帧的混合图象,在最后一帧时,再将所有的像素更新。

这个方法还没试验过,我想如果可行的话,速度将很快! 不过在LCD屏上可能不行. ^_^

名字: limoon
来自: 202.104.218.43
Tuesday, March 30, 1999 at 14:42:49 (CST)
留言: 抱歉
我上传时少传了 1K, 结果 Bullet FTP 没有通知我 :-(
现在正在重传

名字: 云风
来自: 202.103.110.57
Tuesday, March 30, 1999 at 14:07:54 (CST)
留言:
下载那个actdemo.zip后总不能打开。是不是文件坏了?

名字: snow
来自: 202.103.135.61
Tuesday, March 30, 1999 at 13:58:30 (CST)
留言: 不好意思, 搞错了, 那个COUNTER每次没有设成0; 286FPS, 不可能, 3D倒是有可能. 这是新的:
Testing;
7
85
86
84
86
86
86
86
86
86
86
86
86
86
86
85
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86
86

说实话, 你的风魂到了我的机上也是这个速度. 所以, 我敢肯定, 要动真格的, 我的WRAP CLASS最多比你慢5FPS. ^_^, GOD SPEED TO YOU, TO ME!

名字: Gamster
来自: 128.174.0.228
Tuesday, March 30, 1999 at 13:11:24 (CST)
留言: Gamester, 如果你能用传统的 DirectDraw 做出和我昨天的残像效果 DEMO
一样效果,一样速度的东东 (不要用 D3D 里的 硬件 Alpha 通道)
我就服了你 ^_^

名字: 云风
来自: 202.103.110.57
Tuesday, March 30, 1999 at 12:59:17 (CST)
留言: To Julien:
不用那么作, 你那样可以. 只是有时, 你为了加快, 不想重新一块块重新构造BACKBUFFER再FLIP到屏幕, 就将现有的PRIMARY-SURFACE翻到BACKBUFFER2上, 进行一定的修改, (叫PATCHING). 再翻到BACKBUFFER1上, 然后由BACKBUFFER1翻到PRIMARY-SURFACE上显示出来. 不知道能不能只用一块BACKBUFFER来完成. 当然最KOOL的是CHAIN FLIPING, 没等一块BACKBUFFER(1)的FLIP完, 马上在另一块BACKBUFFER(2)上建立新的布景, 一等BACKBUFFER(1)的FLIP完成, 马上翻上BACKBUFFER(2), 用来放MOVIE的. 用DIRECTDRAW可以搞好多TRICK. ^_^.

现在看看我的FPS, 我稍微改了改DDEX1.CPP, 我的FPS可以用INCREDIBLE来形容
第1次TESTING dwBackBufferCount是2:
Testing;
3
24
44
64
84
104
124
144
164
184
204
225
245
265
285

285 FPS! 有没有搞错!!!!!!!! 哇, DAMN!!!
第2次TESTING dwBackBufferCount是1:
Testing;
4
25
45
65
85
105
125
145
165

只有前一次的一半.
第3次TESTING dwBackBufferCount是3:
Testing;
4
25
45
64
84
104
124
143
163
183
202
第4次TESTING dwBackBufferCount是2:
Testing;
2
23
43
63
83
103
123
143
163
183
202
222
242
262
282
我的VIDEO CARD是最好的STB VELOCITY 4400 WITH TV out! 16MB显存. 3D RENDING近500 FPS(测试多次), FF7运行起来跟飞一样. 用DIRECTDRAW达到285 FPS很正常.

终于可以对云风说: Do not underestimate the power of DirectDraw! Ahhahahahahahaaaaa.......

名字: Gamester
来自: 128.174.0.228
Tuesday, March 30, 1999 at 12:40:45 (CST)
留言: 去年我写斜视角 Engine 的时候, 已经是使用的非常完备的 CACHE 机制
只有暂时不用, 不显示的图(包括 Sprite, 地面, ....) 就利用 CACHE
中转, 算是极端的节约物理内存了. 但 Sprite 的内存问题还是头痛.
以至于不可能为主角设计超过 4 招的绝招. 敌人一律都只能有一招
(看看 Diablo, 主角真正通过动作表现的招数就两组, 魔法效果倒不占用太
多的内存) 就这还不能让不同的 NPC 同时出现的太多.(Diablo 里, 你见过
很多种类的 NPC 同时攻击你吗?)
想象 Diablo, 过关的时候为什么等那么长时间, 就明白数据量之大了,
而且 Diablo 一定采用了特别好的 CACHE 机制, 运行游戏的时候, 外存工作
是不停的. 我觉得 Diablo Engine 放在现在, 也没什么人真正超越

名字: 云风
来自: 202.103.110.57
Tuesday, March 30, 1999 at 12:23:07 (CST)
留言: 昨天网线断了 :-( 我已经把 风魂做成 .lib 文件, 正式封装 ^_^
写给老王:
仙剑中所有的精灵都只有行走这个动作,而且走路是 3帧的, 而且它是 320x200x256
的游戏(刚这点就足够小 1/8)
Diablo 里的处理方法我在留言里算过了, 大约 4M 的 Sprite 数据量
10M 并不多, 如果你看过杀气的图片数量就会明白. 上G 的图量不算什么,
(不过是 24bit 色不压缩的)
hehe, 不多谈了, 这几天灵感滚滚而来, 我有好多程序,文章,要写 ^_^

名字: 云风
来自: 202.103.110.57
Tuesday, March 30, 1999 at 12:00:09 (CST)
留言: to gamester
我看到你的例子里的FLIP吓坏了,要FLIP这么多次?还要建两个BACKSURFACE?
可是我只是在原来的程序里将1改成2就有这种效果,我就不明白了......:)

名字: julien
来自: 202.96.190.63
Tuesday, March 30, 1999 at 10:59:25 (CST)
留言: To julien:
怎么样? 很帅吧? 如果你搞1 PRIMARY, 3 BACKBUFFER, ddsd.dwBackBufferCount = 3; 更快, 我不鼓励你这么作, 因为建在显存才行, 而这么作吃内存.

名字: Gamester
来自: 128.174.0.228
Tuesday, March 30, 1999 at 10:54:12 (CST)
留言: 昨天回去试程序,在双缓冲程序里没做任何多余的工作,只是将
dwBackBufferCount的值写成了2,(原来是1),程序的帧数竟然可以有
%30的提高!难道只要这样写就是3缓冲?测试程序见这则流言的
"主页"项,但只有169的用户才可以访问,163的各位可以向我mail索取,
65k.

名字: julien
E-Mail: julien@990.net
主页: ftp://172.18.8.7/default.htm
来自: 202.96.190.124
Tuesday, March 30, 1999 at 09:35:21 (CST)
留言: 163老说登陆人数超限,没法子,:( 过一阵子再将新测试包传上来,PDX很快就会支持RLE sprite,到时候. hehehe ;-)
名字: tinyhsu
E-Mail: tinyhsu@netease.com
主页: www.deep.163.net
来自: 202.96.100.112
Tuesday, March 30, 1999 at 07:57:38 (CST)
留言: 我从最近的贴子中学到很多东西. 其实老王(WEIRD NAME)和云疯(WEIRD NAME)讨论的问题没有错对分明的答案, 我看得出来云疯对于内存分配控制是十分上瘾, 这种看法对得不能再对了(拍马X, ^_^, 哈哈!)! 事实上我倡议大家都向
云疯学习他严禁的作风, 特别在内存分配控制方面.

老王的ARGUMENT也没有错, 我一向认为解析度, 精灵大小不必搞的那么尽善尽
美, WHY? 个人设计计划, 不可能尽善尽美, 没有这个能力. 在尽了所有努力的前提下, 能折衷的地方就稍为折衷一点. AGREED? 而且, 你有一个选择, 在不同的剧情下载入不同的图片RESOURCE, 音乐音效, "载入不同的精灵和场景图象才是明智的做法。而且在图象质量和内存容量以及速度之间寻找一个平衡点也是非常重要的,绝对不会出现一味追求图象效果而让容量没有控制的膨胀的情况."(QUOTE). 这也是我用对象的重要原因, 一个delete ptrClassSpriteObj; 就能将HEAP中的对象数据清掉, (还要靠你写类对象的水平而论, Destructor写不清楚就会在HEAP中留下不必要的GARBAGE). 我从未用程序真正测试过我所说的, 所以我可不为我所说的负责.

这种辩论没必要搞得那么紧张, 云疯他是"顽固"些(ME TOO, ^_^, :-) ), 谁不是这么顽固, 觉得别人是错的自己是对的?? 每个人都有自由选择自己的信仰,
说不动他人就算了.

名字: Gamester
来自: 128.174.0.228
Tuesday, March 30, 1999 at 05:33:21 (CST)
留言: 哈哈!
云风,你也忘了我所说的都是平均值,而你都是按照主角来算的。仔细看看我的原文,是不是都有“平均”二字。:^)
你说的10个人我当然没有忽略,我当时还想了半天究竟有多少组动作呢,照你的说法岂不是需要10x40组动画?:^(
既然你都说Diablo中人物行走都只用3帧,为什么我用8帧你还嫌少呢?而且走路用8帧绝对是可行的,我敢打这个包票,嘿嘿!因为我做过,无论是从速度还是连贯来看,都非常的好,当然没有打滑一说。
“如果步长是 24 的话. 那么 12 帧画就比较好. 每隔两点画一个,如果是 8 的话, 不能平均分布”why ?! (24/8=3),其实就算做成n帧的,如果程序中控制协调得好,照样能获得很好的行走效果。而且你这里专指走路一说,如果是原地的动作,只要能满足动作连贯的需要,是多少帧都没有关系。所以说,平均下来8帧已经应该算是正常的。
另外,我说的对称当然不是指所有的人物,请看原文中是否有“某些人物”一词。象杨过这样的残疾人士自然不在其内。而且最后并没有说能省1/2呀,而是平均下来,省掉1/3。
编了这么久的程序,也没听说过“Sprite的图片数据量的数量级绝对是10M 级”这个概念,真的,一次也没有听说过。要是仙剑或Diablo的精灵图象容量数量级是10M的话,肯定到现在还不敢上市呢!(相比之下,江湖倒是胆子大得多):^) 简单的计算一下就知道,在640x480x8模式下,10M相当于32个屏幕那么大,如果你用的是15寸的显示器的话,那么这个图片的大小将是(1.5x1.2)平米,想象一下有多大吧。*~!~*
不过有一点应该承认的是,RLE压缩对精灵处理是个好主意,能省不少内存是事实,这一点我倒是忽略了。
实际上在实际的游戏编程中,绝对不会象我们那样来计算所需内存容量。在不同的场景下,必要的条件下,载入不同的精灵和场景图象才是明智的做法。而且在图象质量和内存容量以及速度之间寻找一个平衡点也是非常重要的,绝对不会出现一味追求图象效果而让容量没有控制的膨胀的情况,至少我不会这样做,在图象容量太大的时候,适当对图象进行调整是非常必要的。
好了,就此作罢,其实也没有什么好争的,反正近期我也没有去做一个rpg的打算。另外也想说明一点,我做程序可从来都是程序员兼美工,所以关于图象制作和处理方面的知识我还是很了解的。呵呵!
既然大家讨论的都是技术上的问题,就没有必要太照顾面子,也许我措辞有点严肃,而且总爱挑毛病,云风老兄就当良药苦口吧。:^)

名字: 老王
主页: http://dxstudio.yeah.net
来自: 202.94.2.34
Monday, March 29, 1999 at 23:24:48 (CST)
留言: 问题征解:
我从后台监视到了游戏程序运行中的消息(message ),可是我向游戏程序发送消息却不能触发相同的事件,如鼠标、键盘事件等等。游戏的HWND和消息经过后台监测都相同。
哪位能回答这个问题?我悬奖。
Email:litek@mail.sc.cninfo.net

名字: litek
E-Mail: litek@mail.sc.cninfo.net
来自: 202.98.117.113
Monday, March 29, 1999 at 23:11:54 (CST)
留言: 有了RLE支持的风魂果然不同反响,he.he.遗憾PDX仍没有完成对这一部分代码的支持,我会在今明两天完成这部分代码使pdx支持RLE,hehehe :),过一会儿大家可以去我的主页下载新的测试程序,相对应于ws的tile base那个demo。
名字: tinyhsu
E-Mail: tinyhsu@netease.com
主页: www.deep.163.net
来自: 202.96.100.129
Monday, March 29, 1999 at 19:14:06 (CST)
留言:
看样子,云风一周整理整理一次留言板也只勉强跟得上“形势”。 :)

名字: snow
主页: http://weichi.yeah.net/
来自: 202.103.139.23
Monday, March 29, 1999 at 17:31:00 (CST)
留言: 还有,横向行动的帧数和斜向行动的帧数怎么设定好一点,是
1:1还是按照几何学1:1.414.....?:)

名字: julien
来自: 202.96.190.124
Monday, March 29, 1999 at 13:29:23 (CST)
留言: 因为人物大小定下来后, 一个行走循环的位移就等于步长,是固定的.
控制不好就感觉小人的步子是虚的,打滑. (要保证走路的时候,
永远有一个脚的坐标是固定的,不要打滑)
如果步长是 24 的话. 那么 12 帧画就比较好. 每隔两点画一个,
如果是 8 的话, 不能平均分布, 这个小人的动画就不平滑了 :-(
所以帧数和时间,距离都有关系.
Sigh, 不具体设计,很多细节是难想到的.

btw, 我发现了 MMX 优化的函数有一个重大的漏洞, 所以竟然比不优化的慢:-(
正在改进中...

名字: 云风
来自: 202.103.110.242
Monday, March 29, 1999 at 13:15:10 (CST)
留言: why not include a function_resource_viewer in your engine.
名字: flydragon
来自: henan 199.166.210.220
Monday, March 29, 1999 at 13:10:37 (CST)
留言: to cloudwu
:::: 帧数是不能随意取的.
~~~~~~~~~~~~~~~~~~~~~~~
为什么?

名字: julien
来自: 202.96.190.124
Monday, March 29, 1999 at 12:36:48 (CST)
留言: 糟糕,忘了, 以前的版本里用的我自己写的专门 RLE 处理. 非常的快
(这也是我用 RLE 的原因, 太喜欢我自己写的这个高速 RLE 处理了
就是 clip 慢点点, 这就是在边缘时会比 TinyHsu 的慢点的原因)
这次的虽然是 MMX 的, 但是却是标准的不压缩精灵, 所以...
(RLE 精灵我也会去用 MMX 优化的, 到时候, 哼哼)

名字: 云风
来自: 202.103.110.242
Monday, March 29, 1999 at 11:57:47 (CST)
留言: 新的测试程序已经上载,大家自已试试看吧。
名字: tinyhsu
E-Mail: tinyhsu@netease.com
主页: deep.163.net
来自: 202.96.112.86
Monday, March 29, 1999 at 11:50:57 (CST)
留言: 我的 MMX 的还没有全部完成, 昨天那个只记得优化 sprite 函数
blit 忘了. 而时间大量消耗在背景滚动的 blit 中.
我的显卡是 565 的, 555 的 Sprite 也优化过. 但我没有比较
555 优化快,还是 MMX 快. (MMX 干这个也很麻烦的)

名字: 云风
来自: 202.103.110.242
Monday, March 29, 1999 at 11:40:25 (CST)
留言: 老王, 就算你的想法全正确, 也漏了最重要的一点. 我说的 10 个不同的小人
你竟然忽略了. 你算的是一个人的, 也就是主角的. 如果还有阿猫啊狗的,总不能
用和主角一样的图片吧 ^_^. mirror 是将 8 个方向变成 5 个.(是 5/8 :-)
而且逻辑上并不正确(杨过断了右手,转个身,变成右手拿剑了, 左手空空了:-).
我说的 RLE 是单压缩空白的, 并不压缩主体图片,
但单这个就能剩超过 1/3 的内存. 关于 12 帧图并单单为了平滑, 其中,
还有逻辑正确的因素,小人走一步的跨度, 和时间都和帧数相关, 帧数是不能随意取的.
(而且 8 帧绝对不够, 做8帧还不如做 3 帧算了, 很不伦不类)
40 组动作可不是我夸张. 10 个人每人摊下来才 4 组, 这远远不够的.
实际问题要要实践中才能发现. 不信你问任何一个发行或准备发行 Diablo too
游戏公司的程序员.(我知道的有 八爪鱼, 鹰翔, 金山) 游戏中最占内存的是什么,
保证告诉你是精灵. Diablo 本身就处理的很巧妙, 你可以注意一下,
人站着的时候只有 4 个方向, 为什么这点也要省,再不用我说了.
按你的数据我再算一次:
10(个不同的人)*5(方向)*(80*80)*4(组动作)*8(帧)*2bytes=20M
显然你没有实际操作过.否则应该有 Sprite 的图片数据量的数量级绝对是
10M 级的这个概念. Diablo 所以可以在 8M 上跑:因为
1. 它里面的同时出现的不同的 Sprite 大约只有 5 种
2. 精灵应该是压缩过的 (大约 2/3 的数据量)
3. 行走只有 3 帧, 站立只有 4 方向, 每精灵连 4 组动作都没有, 只 1-2 组
4. 256 色的
这样 5*8*(80*80*2/3)*2*12=4M
btw, DX 在 16bit 下用 8bit 的 surface 不够快, 因为还要设置调色板,
而且调色板还要转换内部成 16bit 的.自己干可以直接传16bit 调色板指针

名字: 云风
来自: 202.103.110.242
Monday, March 29, 1999 at 10:36:59 (CST)
留言: TO 老王:
您有关SPRITE的计算可能有失误,图的大小可能会达到100X100,人物动作需要占用图形面积,只有在实际操作的时候才能发现这些问题,为了对准不同祯之间人物的位置,不是身体的位置,而是站立脚的位置,包括打斗等等,在这种情况下,人物在图形中总是只占了不到50%的地方,斜45度场景中人物图可能还会比100X100大一些。这种情况下用RLE可能是好办法,但用其它压缩格式则更有效率。

名字: 8studio
E-Mail: 8studio@8studio.com.cn
主页: www.8studio.com.cn
来自: 八爪鱼工作室 202.94.2.125
Monday, March 29, 1999 at 09:49:05 (CST)
留言: cloudwu的MMX优化版本好像越来越慢了.大家的感觉呢?,现在163的主页登陆人数超标,过一会儿我再将新版本的程序载上去.
名字: tinyhsu
来自: 202.96.112.47
Monday, March 29, 1999 at 09:40:12 (CST)
留言: 照你这么说, 这样又出现另外一个问题, 大家都只买有用的软件如SYSTEM UTILITY, ANTIVIRUS SOFTWARE, WORD PORCESSOR等, 根本部会买GAME. 嗷!
大家都买盗版, 噢, 那岂不是任何游戏公司都赚不到钱了么?

名字: Gamester
来自: 128.174.0.228
Monday, March 29, 1999 at 09:02:41 (CST)
留言: To Snow:
很同意你的观点.

名字: Gamester
来自: 128.174.0.228
Monday, March 29, 1999 at 08:56:08 (CST)
留言: btw, 1元美元好象兑8元RMB左右.
名字: limoon
来自: 202.104.218.33
Monday, March 29, 1999 at 08:26:56 (CST)
留言: To Gamester:
其实中国的计算机也不贵, 不过中国大部分人的收入低, 这是主要问题!我这里(广东)的价格是这样的(单位是RMB):

32M SDRAM(PC100): 330 / 64M SDRAM(PC100): 660
P166(无货) / PII-350: 1550 / C333: 620
Riva-128ZX(8M显存): 650 / i740(8M显存): 350 / TNT(16M显存): 1350
AD1816声卡: 55 / Yamaha724(PCI声卡): 155
keyboard: 55
mouse: 20
机电: 200
monitor: MGA 17"(DJ700E): 2900 / PHILIPS 15A: 1580
hard disk: 6.4G FIREBALL EX: 1450 /3.2G FIREBALL EX: 1190

怎样不算贵吧? 现在8000元RMB可以买到PII350, 64M, 128ZX-8M,6.4G硬盘的机器. PIII也不过一万元左右就可拿下.

不过国内平均收入低, 你在美国可能不清楚. ^_^

名字: limoon
来自: 202.104.218.33
Monday, March 29, 1999 at 08:24:23 (CST)
留言: 这次写错的是URL 仔细看我的主页地址哟 :) ,害得我又一次拨号上网 :~~~~(
名字: tinyhsu
E-Mail: tinyhsu@netease.com
主页: www.deep.163.net
来自: 202.96.100.137
Monday, March 29, 1999 at 08:11:07 (CST)
留言: 早上公司要来几个MM,xixi ;^),下午我把优化过的版本传上来.
名字: tinyhsu
来自: 202.96.100.178
Monday, March 29, 1999 at 07:58:59 (CST)
留言: To Snow:
你有没有错? 这个样子也敢写游戏,真有精神!! SEE! 我的计算是这样, 内存永远比CPU, MOTHERBOARD, VIDEO CARD, 便宜, 这里(U.S), 我一片32MB的内存只要四十美元. 现在更便宜, 所以我随便设一台P166($100), 64MB($80)的系统内存, 4MB VIDEO CARD($200), 随便搞块SOUND CARD($40), 我的游戏就能玩. 这种设置: 最多要我420美元! 加上KEYBOARD($40), MOUSE($40), 显屏($100),
机壳($20), 520美元.

问题在于, 市面上已找不到P166, 都是P266- P450,. 这是我哥说的. 不知道是不是真的. 我的朋友, 他在去年九月份买的机器, P300, 4M VIDEO CARD, 48MB MEMORY, 加上WINDOWS95, 总共花了他不到1000美元. 我再问问他看,这数字是不是对的.

我的感觉是, 美国硬件发展太快, 几个月下来, 一个鸟鸟的硬件就折价50%我怎么设计游戏, 只要不象"江湖"那么FUCK UP, 对内存的WELL MANAGE, 就没有问题, 相比之下, 我可是高估了中国玩家的硬件配置水平.

名字: Gamester
来自: 128.174.0.228
Monday, March 29, 1999 at 02:37:14 (CST)
留言: 云风:
你的MMX优化程序在我的机器上未见优势. 怎么会事?
ws1: 34-44fps
ws2: 34-38fps
pdx: 37-49fps

名字: limoon
来自: 202.104.218.44
Monday, March 29, 1999 at 01:03:36 (CST)
留言: to 云风:
前面你关于sprite消耗内存容量的计算,我也考虑过,但是,并没有你所预料的
那么多,毕竟大家都不是弱智程序员:3)。我在这里提出异议,并不是想阻止风魂
的开发,只是对DX的忠实用户有个交代。

1、“假定一个小人的大小是 100x100”,实际上,在一般情况下,小人的平均
大小并不会有100x100那么大,主角可能大一点,那些小喽罗就不会这么大了。
保守一点吧,平均下来可能会是80x80,那么,首先,这就省了1/3。
2、“如果需要行走等动作平滑, 需要 12 帧图”,好象不需要这么多,我曾做过
这样的动画,8帧足以,虽然12帧可以达到更好,但是,毕竟做游戏与做动画不
一样,你必须在速度与内存之间有所取舍。那么,这又省了1/3。
3、“如果屏幕上同时出现10 个不同的小人”,he he,差不多吧,再多点也没关系
4、“共计 40 组动作”,差不多,不过即使两方都使出降龙十八掌也不过才36种
招式,而且某些招式在某些情况下是使不出来的,就可以不用载入内存了。
5、最后一点,非常重要的,应该考虑到某些人物的动作是左右对称的。主角和
一些重要的配角因为装备了各种武器,所有左右可以不对称,但是,另外一些
虾兵蟹将在制作的时候可以简化一些,左右作成对称的。嘿嘿,DirectDraw的
Blt函数还有一个显为人知的特性,那就是镜像和旋转(风魂中最好也能支持这
个特性哦,可大大节省内存:3),所以你只用保存左右中的某一个方向的就可以
了。那么,平均下来,这又大概会省掉1/3。
6、“一共需要建立 40x8=320 个 100x100 的 surface”,纠正一下,在实际的
游戏中,绝对不会为每个精灵都建立一个surface,把它们尽可能画在一张图片
上是最好的方法。

好了,上面的配置应该已经是很令人满意的了。仙剑虽然人物较大(好象也没有
80x80那么大),而且,它不属于即时战斗类型,过招之前,有足够的时间用来载
入招式图象;Diablo虽然动作花样繁多,但大多数人物都很小。所以,上面的配
置应该是可以取悦挑剔的玩家了。那么,照这样算下来,所需内存容量为:

8位模式 (80x80)x8x40x(2/3)= 1.35M !!!
16位模式 1.365Mx2=2.7M

实际上,这个统计数字还是有很大的水分,实际中因为程序的优化或本来就不需
要这么好的图象配置,还应该再少大概1/3甚至更多,所以如果使用DX的话,精灵
图象在8位模式下低于1M、16位模式下低于2M是完全可能的。

也想提醒云风的是,RLE压缩效率其实很低,对一般图象的压缩率不会低于80%,并
不会省多少内存。而且dx好象支持与primary surface不同bbp的surface(我曾试
过,但是结果怎么样,我自己也忘了,现在也懒得动手再试了),其实,就算现在
不支持,以后的版本也一定会完善这个功能的。哈哈...

(哎哟!不好,云风老兄操着家伙来了,快跑!...)

名字: 老王
主页: http://dxstudio.yeah.net
来自: 202.103.31.188
Monday, March 29, 1999 at 00:17:25 (CST)
留言:
Gamester,我想我的硬件配置之低你是很难想到。我现在的机器
是cyrixpr233,内存32M,16M是EDO,16m是普通DRAM,显卡是
PCI的9680,2M显存,其中1M是自己加的,最近的表现应该是这1M
要坏了。硬盘最近才咬咬牙买了个6G的,否则还只有1G用。
看来如果你写游戏,恐怕我的硬件会让我不敢玩你的游戏了。:)

名字: snow
来自: 202.103.135.5
Sunday, March 28, 1999 at 22:00:45 (CST)
留言: 我一时灵感又想到一个 16bit 色下, 更快的 Alpha 混合算法.
现在我在考虑是先写出代码放在风魂里,还是写文章介绍 :-)

名字: 云风
来自: 202.103.110.246
Sunday, March 28, 1999 at 21:49:51 (CST)
留言: TinyHsu, 我写了个没有 Alpha 混合,不显示光标的版本. 你也改改程序,
再比较一下?
btw, 555 也不错的 ;-) 多一位可以用来加速 keycolor 的识别. 所以在
没有 MMX 时, 我的 Sprite 是分别处理的. 555 的要快一点

名字: 云风
来自: 202.103.110.246
Sunday, March 28, 1999 at 18:46:04 (CST)
留言: 我的 engine暂时不支持555方式.那条提示是意思说的就是这个, 我很奇怪一件事情,为什么有的显卡只支持555? 不好意思 limoon! :P
名字: tinyhsu
来自: 202.96.100.221
Sunday, March 28, 1999 at 17:25:08 (CST)
留言: 是四条线程拖的,相信我,我的alpha blending代码虽然不是汇编写的,但不算很~~~慢。(好歹也自我安慰一下 :),刚才我又试着关掉了两条线程,结果并不明显,显然用链表来管理sprite的那条线程太慢了,:(
名字: tinyhsu
E-Mail: tinyhsu@netease.com
主页: www.deep.163.net
来自: 202.96.100.221
Sunday, March 28, 1999 at 17:18:55 (CST)
留言: MMX 果然不同凡响. 我这里可以从比 TinyHsu 慢,到快 2fps 了 ^_^
(这个就是 TinyHsu 的 Alpha 混合拖下来的吧)

再看看那段代码能不能双流水线优化, 再传上来 hehe

名字: 云风
来自: 202.103.110.246
Sunday, March 28, 1999 at 17:06:22 (CST)
留言: MMX中对齐对读写操作的影响应该是一样的.

名字: limoon
来自: 202.104.218.62
Sunday, March 28, 1999 at 15:32:28 (CST)
留言: PDX在MMX200, S3-375, 2M运行结果: 37-49fps.
不过运行时出现"显示卡不支持标准的16bit颜色"错误信息.

名字: limoon
来自: 202.104.218.62
Sunday, March 28, 1999 at 15:28:10 (CST)
留言: MMX 在位传输的时候, 源数据和目标数据如果不能同时对齐的话,我们只能
保证对齐其中的一个. 那么, MMX 中对齐对读操作影响大些,还是对写操作影响
大些呢? 我有点钻牛角尖了 ^_^

名字: 云风
来自: 202.103.110.246
Sunday, March 28, 1999 at 15:25:18 (CST)
留言: 两人的FPS EQUAL!
T的:
1
64
58
64
66
65
61

C的:
0
63
59
63
64
63
60
63
64

名字: Gamester
来自: 128.174.0.228
Sunday, March 28, 1999 at 13:55:39 (CST)
留言: 我的程序没有达到我理想中的最快(大家可以仔细看看我在程序中所提供的说明文件),cloudwu也是。
名字: tinyhsu
E-Mail: tinyhsu@netease.com
主页: www.deep.163.net
来自: 202.96.112.192
Sunday, March 28, 1999 at 13:41:08 (CST)
留言: 非常的感谢 TinyHsu, 我终于可以准确的比较一下风魂的速度.
刚才我把中间的小位图拿掉了. 风魂的速度在我的 P200/64M 275/4M是
31~39 fps. tinyhsu 的是 31~41 fps
Hmm 这里有两个不公平的地方
1. TinyHsu 的alpha 混合要慢点点(风魂中是固定 50% 的)
2. 风魂的 blit 操作是没有使用 MMX(MMX 使得 keycolor 的检查可以
4 个点一起运行, MMX 的数据块复制比 DWORD 复制快 10%~30%)
我会在今明两天将 MMX 版本的 blit 写完, 做一个公平的比较

btw, C vs C++ 的问题, 这这个比较中没有分量. 因为速度主要消耗在图形处理上
主函数运行时间几乎为 0. (我相信 DirectX 是 asm 写的)
而且 C++ 比 C 慢的情况只是在对象复杂了后, 指针传递消耗的
我再次申明我的观点, 我现在不用 C++,不是因为我认为它运行速度慢

名字: 云风
来自: 202.103.110.212
Sunday, March 28, 1999 at 12:25:39 (CST)
留言: sorry, tinyhsu, 是我的键盘不好啦. 已经用了快 7 年了
有几个键, 按下去不一定出字 :-( 所以刚才敲掉了一个 y ^_^
不过我在风魂的文档里, 你的名字可没有写错 hehe

名字: 云风
来自: 202.103.110.212
Sunday, March 28, 1999 at 12:03:31 (CST)
留言: 8bit 比 16bit 另一个好处就是检查 key-color 简单. 因为 key-color 设定为
0 号色. 用 dword , 一次可以处理 4 个点. 但 16bit 色不行, keycolor
不可能设定成 000000(黑色) 这样不能利用逻辑运算多点同时处理. 光这个,
就比 8bit 慢 4 倍. 当然可以用 MMX 的指令优化. (我现在正在做, 你会发现
风魂的 Sprite 操作会快好多的)

我教你一个方法,怀疑 DirectDraw 的速度. 800x600x16bit.
设置一个内存 Surface 100x100 的用带 keycolor 的 blt 每次
200 个的 blit 到屏幕.(这个是模拟游戏中的
大量 Sprite 的绘制, 由于可能有遮挡关系, 所以 Sprite 往往不只画一次)
注意, 每次请用一个 800x600 的位图(放在内存)当背景滚动一下 (这一步是模拟
一般的 Tile Base 游戏, 背景是小快拼出来的, 这些小块不可能都放在显存,
人物运动的时候, 背景整个在动, 所以有整屏幕的运算量)
简单的说, 看到了老王上次那个滚屏的程序了吗? 在上面加上
200 个 100x100 的带 keycolor 检查的 surface 运动就可以了

如果你完成了请给我看看 fps 数, 我相信在 P200 上不会超过 40fps.
希望你能让我的预言失败.

btw, 写 ASM 倒不这点用途, 所有需要速度的地方我都会考虑用 ASM,
其实 ASM 写习惯了, 并不比 C 复杂, 而且优化的过程非常有趣.
好的游戏应该代码中有相当的 asm 码比例. 比如 Quake,
就有 15% 的代码是 asm 写的.

最后, 我也十分怀疑国内高档显卡的普及率(以后一定会提高的,我相信)
我看见许多用 P200, K6-233 机器的朋友还是 1M 显卡, 最多再加 1M 显存.
只有去年下半年买机器的,才多考虑 4M 以上的. 毕竟, 在 D3D 游戏普及以前,
超过 2M 显存的显卡那叫奢侈.


名字: 云风
来自: 202.103.110.212
Sunday, March 28, 1999 at 11:53:02 (CST)
留言: 写错我的名字啦 是tinyhsu啦.......... :~~~~(
名字: tinyhsu
来自: 202.96.100.211
Sunday, March 28, 1999 at 11:46:42 (CST)
留言: 去我的临时主页下载新的测试包,这是应风云要求写的,事先申明一下我的观点,写这个程序我并不想争辨什么。昨天我仔细研究了风云的engine,承认代码很优秀,很适合于DOS编程经验丰富的程序员。
名字: tinyhsu
主页: www.deep.163.net
来自: 202.96.100.211
Sunday, March 28, 1999 at 11:42:23 (CST)
留言: To linmoon:
你的观点倒是很对, 大概暴风雪公司也开发云风那种风魂应用库, 所以常年在
招募会ASM的高手.

但是我也发现, 只要你的系统内存足够, 就算是P100, DDRAW的速度够快. 光讲没用, 不信你可以试试, 用P100, 64MB系统内存, 8MB显存, 写一个在屏幕上800X600X8, 一次用200次BLIT操作的程序, 然后配合DINPUT滑动鼠标, 你会发现速度一点不慢. MS的DDRAW还是好用, 倒是D3D要求很高.

我不知道中国怎么样, 但是在美国什么人都用最好的硬件配置, 特别是大学生.
他们一天到晚都在玩QUAKE!!

名字: Gamester
来自: 128.174.0.228
Sunday, March 28, 1999 at 11:13:20 (CST)
留言: 感谢 snow 和 tinhsu, 我今天 fix 了两个 bug, 一个是 RLE Sprite 一个是
MMX 检测的. 现在我开始写 MMX 优化版本的位图处理.(声音的压缩先放放)
说我浪费时间也好, 说没有意义也好. 等图形低层的代码完成. 大家喜欢就直接
就可以了 ^_^ 如果实在喜欢显存位图. 我再加上 (Allegro 里也有显存位图,
但我实在找不到合适的用法, 我想设计的 2D Game Engine 里位图太多了,显存
又太少)

名字: 云风
来自: 202.103.110.212
Sunday, March 28, 1999 at 11:08:25 (CST)
留言: To Gamester:
我说三缓冲浪费显存是指, 因为既然风魂, 三缓冲2种方式速度一样, 而且三缓冲做到的, 风魂也可以做到, 建立三缓冲不是浪费显存吗?

不要盲目认为玩家的机器配置很高, 我前段时间发现还有很多人在用P120, 1M显存. 电脑游戏机室配置也高不了, 还没有4M显存.

我觉得好的游戏, 应该给玩家要求尽量少. 在较低配置可以玩, 在高的配置效果更好.

名字: limoon
来自: 202.104.218.62
Sunday, March 28, 1999 at 09:41:09 (CST)
留言: 我给所有没有设计过 2D Diablo too 游戏 Engine 的朋友算一比帐.
(注意 DIablo I 是 8bit 的, 我们现在需要 16bit色的)
假定一个小人的大小是 100x100. 如果需要行走等动作平滑, 需要 12 帧图.
行走有 8 个方向. 如果屏幕上同时出现10 个不同的小人, 所有人至少有一组攻击
动作, 被攻击后有反应的动作, 静止的时候有待机的动作 (看看 Diablo 就明白)
共计 40 组动作 (这部分的总图量可以采取适当的方法减少,但实际为达到好的效果需要的图还要多). 如果全部用 surface 存放这些图,
一共需要建立 40x8=320 个 100x100 的 surface, 数据量总量是
240x2x100x100=6,400,000 bytes=6.4M 考虑下拙劣的游戏如江湖者, 为何猛吃
内存(可叹,江湖还没有 8 方向,才两个就如此了)
我的解决方案是, 在风魂中 16bit 色下, 同样可以直接用 256 位图(一组图关联
一个512 bytes 的调色板) 所有的 Sprite 使用 RLE 压缩, 将透明色压缩掉.
6.4M 这个数字马上可以下降到2M 以下.
这不值得我们思考一下吗? 不要被方便的途径,表面上提供的高性能所迷惑

名字: 云风
来自: 202.103.110.212
Sunday, March 28, 1999 at 05:29:09 (CST)
留言: "从内存显存输送数据的确会慢...后来我设成800X600X16后FPS至少60,
不管你搞了多少BLIT的操作"
不会吧? 你的机器从内存往显存传送一个点要多少时间? 不会少于 2 个时钟周期吧?
(如果考虑 key-color, 实际平均要 8-10 个时钟周期)
P200 一秒能处理多少点? 60M 个算极限了吧? 如果你的 fps 是 60
每帧才分到 1M 个点. 一个 100x100 的小位图, 也只能处理100 个.
(屏幕 800x600 大约还等于 48 个这么大的位图呢)
我敢说, 如果你建一个 100x100 的surface 在内存中, 如果 back buffer
在显存, 保持 60fps 的情况下, blit 操作不会超过 100
如果 back buffer 在内存 blit 操作不会超过 50
别告诉我你把 surface 都放在显存, 2D 游戏中动不动就用到上十M 的位图
没那么多显存用的.

btw, 在图形从内存往显存 blit 这个环节, 如果是 PCI 的显卡,
P200 实在不比 P100 快一倍. PCI 的时钟还不到 200Mhz, 是总线制约了速度

名字: 云风
来自: 202.103.110.212
Sunday, March 28, 1999 at 05:10:20 (CST)
留言: To Julien:
BackBuffer和Primary Surface的设置一定要相同, 因为当你进行FLIP,
BackBuffer和Primary Surface对换, 这时, 原来的BackBuffer变成Primary
Surface, 而原来的Primary Surface变成BackBuffer. 所以可以看出Primary
Surface和BackBuffer其实是一样的. 当然, 你可以任意设立Off-Screen Buffers的长宽.

To limoon:
我是很不同意你所说的三缓冲浪费显存, 我认为这种说法要视情况而定. 如果
你设立Primary Suface为1120X768X32, 这肯定占用了不少显存, 可是中国有哪个设计者会将显示模式搞得这么高? 一般来说Primary Surface可以建为800X600X24的显示模式. 这个占用大约1.44MB. 再加两个BackBuffer是4.32MB
的显存. 可是, 为什么还要这么高? 800X600X16和800X600X8不是更好的选择么.
800X600X8只占用480KB显存, 三个加起来也只有1.44MB. 再递减, 640X480X16和640X480X8所占显存更少, 所谓三缓冲浪费显存根本不成立.

你肯定会说, 你希望达到最佳显示效果, 说800X600X24. 我就想问: 为什么要
搞得那么高? 你写的游戏肯定是给国内玩家玩的, 假设有3 - 10%玩家拥有好的显卡(显存至少4MB, 到32MB), 这种情况下800X600X24的设置肯定很不现实. 800X600X8, 640X480X8, 640X480X16肯定是首选的显示设置. 和但情况并不
非如此, 至少有32%的玩家有显存4MB的显卡, 20%的人用8MB的显卡, 8%的人用
16MB的显卡, 和1%人用32MB的显卡(ATI RAGE128.)所以显存根本不是问题.
香港,台湾, 国外玩家的设置更好, 但这不在议题之内.

从内存显存输送数据的确会慢, 如在800X600X24的设置下, BLIT的操作太多得话, 画面更新的速度一定会很慢, 这我试过, 是知道的, 那时还只用P100. 后来我设成800X600X16后FPS至少60, 不管你搞了多少BLIT的操作, 所以那时还要用Sleep来DELAY. 是现在的CPU都是高于200, 内存至少是48MB(不要告诉我你还用16MB内存), 显存是4 - 16MB. 我敢肯定速度不会慢到哪里去.

我就是不明白为什么云风还要自己用ASM来进行特殊缓冲处理, 毕竟不是Direct3D设计界面, MS提供的DirectDraw设计界面已经够快, 自己用ASM来
进行特殊缓冲处理, 这么作"对我"说是浪费时间.

名字: Gamester
主页: www.tianfu.net/~gstudio/index.htm
来自: 128.174.0.228
Sunday, March 28, 1999 at 04:02:27 (CST)
留言: 我想鹫羽的意思应该是说,图形被显示的过程中减少先 buffer 一下的过程,
而直接送到显卡里去.当然我也说了我的观点. 将所有的数据源源的送往显卡,
不见得比在内存多一个中转组织一下,(遮挡的问题在内存中解决),
尽量送最少的数据往显卡快. 虽然多了个缓冲的过程, 但少了内存往显卡的数据量.
谢谢 limoon 的提议, 不过如果游戏较复杂, 将所有要更新的区域框起来不会比
整个屏幕小多少. 如果想实现区域更新很简单.只需要:
lock_screen();
blit_bitmap(screen,directscreen,x,y,x,y,w,h);
unlock_screen();
实际上, 现在的 update_screen() 基本等于
lock_screen();
copy_bitmap(screen,directscreen);
unlock_screen();

名字: 云风
来自: 202.103.110.212
Sunday, March 28, 1999 at 03:35:35 (CST)
留言:
看了鹫羽的留言, 我想反问一下:
所有游戏的画面数据是由程序生成, 难道这些数据是由显卡产生的不成? 而且所有的数据都是由内存送到显存上! 无论你的缓冲建立在什么地方都少不了将内存数据传送到显存!

现在我在下面比较一下三种方式(风魂的方式, 后台缓冲在显存, 三缓冲)的画面显示耗时(不管刷新的问题, 因为其时间大家都是一样的):
1. 风魂的方式:
耗时 = 传送内存数据到显存的时间
2. 后台缓冲在显存:
耗时 = 传送内存数据到显存(后台缓冲)的时间 + 缓冲指针的交换时间(可以说=0)
3. 三缓冲:
耗时 = 传送内存数据到显存(后台缓冲)的时间 + 缓冲指针的交换时间(可以说=0)

以上可以看到, 三种方式在一定情况下耗时一样(在AGP显卡不成立, AGP显卡支持内存到显存的硬件加速), 只不过"三缓冲"可以使程序在"缓冲指针的交换"时可以画下一帧画面. "风魂"也可以做到这步, 实现方法不用我说大家应该知道.

如果建立什么三缓冲, 只有一个结果, 对显卡要求高, 浪费显存.

风魂真正提高速度的办法是:

1. 减少内存到显存的数据传送量, 也就是确定每帧画面的更新区域, 不要每次都把整个缓冲送到显存去!
2. 完全支持AGP显卡的硬件加速! 使到游戏在AGP上有更好的效果.(不是很必要, 有AGP的机器速度不会低到那里去).

请云风考虑改进意见.^_^

名字: limoon
来自: 202.104.218.5
Sunday, March 28, 1999 at 01:31:32 (CST)
留言: To:8studio
MAIL可否收到?

名字: HeroZ
E-Mail: heroz@990.net
来自: 202.102.32.7
Saturday, March 27, 1999 at 18:38:59 (CST)
留言: 是Julien, 无意写成了 Jolien, TYPO.
名字: Gamester
来自: 128.174.0.228
Saturday, March 27, 1999 at 14:38:32 (CST)
留言: To Jolien and 鹫羽:
云风的留言板不支持某些C++语法, 我就把有关TRIPLE BUFFER的
解答放到了我的留言板上了, 地址:

http://www.china-union.com/freebbs/index4.pl?id=gamester

主题是: Jolien要的东西. 有兴趣可以看看.

名字: Gamester
来自: 128.174.0.228
Saturday, March 27, 1999 at 14:31:36 (CST)
留言: 补充一个实际例子, 可以用个感性认识;
在斜视角Engine 设计的那组文章里,有一个 demo 可以下载
如果直接启动 ani.exe 是将 buffer 建立在内存中的
如果用 ani.exe x 启动是将 buffer 建立在显存中的
大家可以比较下感觉, 我觉得是感觉不出的. 不过在我的机器上
建立在显存中的确要快 2帧.

名字: 云风
来自: 202.103.110.65
Saturday, March 27, 1999 at 14:15:54 (CST)
留言: 首先我的观点建立在, 内存往显存复制数据的速度慢于内存往内存复制数据的基础上.
那么. 将back buffer 建立在显存里, 实际就是想直接写屏,而又不产生闪烁.
实际上, 复杂游戏每产生一屏幕上画, 由于 Sprite 的遮挡问题, 实际上画的数据
远远多于一个屏幕的数据量. 这样内存往内存画反而要快. 而传输一个屏幕的数据
到显存并没有想象中的那么慢, 大约是 0.01 秒, 已经小于大多显示器的回扫周期了
如果是简单的游戏, 每次需要更新的数据不多, 那游戏本身就可以有比较高的速度,
所以不需要计较 0.01 秒的得失.

btw, 这个方法在风魂里不是不可以使用, 只需要你调用 DD 创建一个 surface
然后用风魂 0.04 开始支持的 mirror bitmap 镜像到一个 BMP 里就可以.
只是我对这个兴趣不大, 只留了个接口而已

最后, 即使所有所说的好处都成立, 速度的提高也不会是明显的, 毕竟 0.01 秒
这个值是不由游戏的复杂度而改变的. 它在整个游戏的影响反而随着游戏的复杂
而下降.

名字: 云风
来自: 202.103.110.65
Saturday, March 27, 1999 at 14:02:34 (CST)
留言: :将后台缓冲页也设为DirectDraw页面,并把其设在显存中,这样当换页时显卡
:并不进行任何数据复制,只是把其指针对调;只是调换指针,够快的吧!
什么意思?将得到的后台缓冲区设到换页链中去吗?还是有办法手工改变
显示指针换页?
还有DIRECTX手册中的3缓冲的例子,其中
有lpDDSP....,lpDDSMiddle,lpDDSBack(好象是这几个),三个表面,
但在这个例子里面根本没有使用到lpDDSBack表面,所以我对这个例子的真实性
很怀疑.究竟怎么实现3缓冲呢?

名字: JULIEN
来自: 202.96.190.93
Saturday, March 27, 1999 at 13:28:22 (CST)
留言: 小弟有一个提议可大幅提高风魂游戏程序库的运行速度.
将后台缓冲页也设为DirectDraw页面,并把其设在显存中,这样当换页时显卡并不进行任何数据复制,只是把其指针对调;只是调换指针,够快的吧!
但它有缺点,显卡只有在完成一次垂直刷新后才能进行一次换页,否则不能对后台缓冲页进行操作。改进方法是用三缓冲区换页。

名字: 鹫羽
E-Mail: jeu@ynmail.com
来自: 202.96.190.124
Saturday, March 27, 1999 at 13:01:26 (CST)
留言: 关于教育制度,中国的现状是没有能力负担所有的合乎
资格的学生进入大学,不得已使用了淘汰制度,淘汰的结果
就是现在这种状况,如果降低学业压力,所有高中上完的学生
均能进入大学,那就会导致另一种淘汰制度的产生--金钱,
只有有钱人才能受教育,这样公平吗?
最近几篇均和游戏制作无关,云风不如搞一个周边讨论区,
或者去BBS申请个人讨论版,一定会很兴旺的.

名字: julien
来自: 202.99.52.134
Saturday, March 27, 1999 at 12:29:59 (CST)
留言: 教育制度一时是改不了了,领导人的思想也僵化,天天开会也没有讨论出怎么改,只敢小打小闹不敢大刀阔斧。看来只有靠自己了。。。。。。。。。可悲的中国学生。
名字: chancemos
E-Mail: mychansmos@263.net
来自: 202.97.235.237
Saturday, March 27, 1999 at 11:15:47 (CST)
留言: 0)首先, 我的贴子没有攻击任何人, 发表自己的观点不需要攻击别人
?
1)这好象是RHETORIC 101的第一堂课. 在这里发贴子, 没必要写得
那么婉转. 所以, 我写得东西看起来很冲动, 特别在感觉非常敏锐
, 一个个点子潮水一样涌来的时候. 看起来好象把哪个人骂了, 其
实没有.
2)在这种论坛上写的贴子, 往往都很杂乱, 没有时间进行修改的原
因, 大概我是要多花上五六分钟, 重新组织一下贴子的文章结构,
在发出去.

在帮助他人的议题上, 我是觉得很没有希望, 正如我提及的, 很多
人建议云风试试C++, 用用类, 多写些注解看看. 他要真那么作了,
也许我也有机会真正领略他的代码的奇妙之处, 他有自己的打算,
我又不能使用暴力强迫他这么作. 完了, 他的码中少有注解, 虽对
我和其他一些人有点帮助, 对初学者倒没有一点好处. 他爱怎么写
码实在是他的事, 我们强求没有一点用处. 他那么利害, 也用不找
听我们的. --- HELP OTHERS, HOPELESS.

事实上, 正如FREEMIND所说的, 没有作什么事, 所以我的网站根本
没有人来, 我建议你不要到我的网站去, 空的, 我永远不会加有用
的文章进去. 我没有时间写, 也没有精力用"拼音码"输入, 同时深
深地被自己的糟糕文笔感到惭愧, 更为自己没有什么真本事感到惭
愧. --- ASHAMED BY ONE'S OWN ABILITIES.

如果有建议给我, 我至少会说: "啊哈, 谢谢你的关心, 我一定会照
你说试试. " 过后写信说, 你的想法还真不错, 虽然我根本没有吸取
他人意见, 至少让人感觉他/她的建议多少给我一点影响和帮助, 事
实上, 似乎没有人到我的网站上来给我提建议. 再看看其他人怎么说
, 云风永远驳回人家的意见, 往下看看就知道. 8STUDIO也是, 他们
在新浪搞的论坛, 想听听意见, 同时又生硬地驳回那些家伙的意见,
被玩家骂死, 只有我LACUTIS 不断在后面帮8STUDIO说好话, 最后也
落得被人骂死的结局. --- TO BE HELPED, HOPELESS.

事实上, 正如FREEMIND所说的, 没有什么成就, 我对此也感到非常
惭愧. 两年写码给我的教训是, 想到什么就写什么根本干不出什么
事. 所以, 我要写码, 一定要;
1)好好先在纸上, 或用NOTEPAD写下我要达到的目标;
2)再在纸上, 或用NOTEPAD写下框架, (最基本的OOP设计思路);
3)写头文件, 类的定义, 同时写下一定的注解, 写注解真好, 清醒
头脑.
4)才是写码, 同时写注解. 脱到最后写, 往往写得马马虎虎,
等于没写, 这样浪费时间干吗?
5)写设计后随感, 以免后来忘了;
6)打印, 这样删盘的损失会减到最小.
你可以看出, 这样搞要花大量的时间, 精力, 甚至资金, 写出的东
西一定非常AWESOME. 可惜, 这三项我都没有. 大学已经折磨地我两
眼发黑, 加上这些, 岂不是要命! 所以, 今年年初我就决定, 与其写
出东西自己都看不顺眼, 还不如将好的主意和思想, 存在脑里, 存不
下写出来. 集中注意力把学分搞上去. --- ONE THING AT A TIME.

你现在可以看得出我是很会吹牛的人吧? 说我乌鸦, 不过分. 前面十
张贴子我都没有很好地整理自己的思路, 根本没有时间整理思路. 所
以, ... 现在该讲的也讲清楚了. 想不想比比谁更会吹牛? 请到我的
网页来. 请用这个链接:
http:// www.tianfu.net/~gstudio/index.htm
我的论坛的链接应该没错, 云风在上面留过. 建议你不要到我的主页
上浪费时间.

END

名字: Gamester
主页: www.tianfu.net/~gstudio/index.htm
来自: 128.174.0.228
Saturday, March 27, 1999 at 11:13:00 (CST)
留言: 一不留神, 访问量超过 40000 了 ^_^ (我看主页一般不开图象的)
今天曾有点时间, 新加一个栏目专门介绍相关书籍, 以后就不会回
"请推荐一本好书" 这样的 email 了 ^_^

名字: 云风
来自: 202.103.110.135
Saturday, March 27, 1999 at 10:23:52 (CST)
留言:
其实,Gamester的那20个观点我认为还是很有道理的,全面且
精辟(差点成了丧权辱国的二十一条!)。但我还想再补充几点:

1、国内的软硬件技术起步太晚(这是众所周知的,导致基础研究薄弱)
2、人民普遍素质不高,思维僵化(没有创新和挑战精神)
3、教育制度的不合理(人的天赋与兴趣得不到充分的利用和发挥)
4、国家不重视科技宣传(我最反感的就是动不动就出个什么向xx学习
的口号,大做特做报告,这些xx中有几个是科技工作者呢)

其实还有很多,一时想不起来,总之,中国还没有形成一个良好的
科学研究的环境,科技人员的土壤还不肥沃,还没有长出一棵大树
的条件。其实我们在这里吵来吵去,也不过是在一堆贫瘠的沙漠中
互相争夺那一点点偶尔从天上降下来的雨水,也许可以长出一堆小
草、灌木什么的,也许会什么也长不出来,最终还是一片荒凉的沙
漠。
世界的那端,有一片肥沃的土壤和浩瀚的森林。我期待着这里有一
天也能...

名字: 老王
主页: http://dxstudio.yeah.net
来自: 202.94.2.57
Saturday, March 27, 1999 at 10:14:48 (CST)
留言: 看来这个题板半个月备份一次都不够哟 :P
名字: tinyhsu
来自: 202.96.100.104
Saturday, March 27, 1999 at 08:23:08 (CST)
留言:
TO:Gamester
我个人支持你.

名字: dai
E-Mail: superdai@163.net
来自: 202.103.152.76
Saturday, March 27, 1999 at 08:14:51 (CST)
留言:
请熟悉winsock编程的朋友帮个忙:

我第一次用winsock编程, 在用recvfrom接受数据时老是返回WSAEWOULDBLOCK错误, 我看了一下SDK档, 大意是"非迟滞socket, 由于资源或其他限制而导致网络操作不能立即完成". 但事实上我建立的socket是迟滞的, 怎会出非迟滞时的错误.

sendto完全正常, 这种错误当全部操作是recvfrom时不会出现, 如果sendto和
recvfrom混合用时才会出现.

这是怎么一会事?


名字: limoon
来自: 202.104.218.25
Saturday, March 27, 1999 at 00:08:20 (CST)
留言: To Gamester:

At first, I like 李国豪那部电影,我猜你肯定看过, that's why I call you crow and I don't think the crow is a bad thing, so please don't misundertand it.

我一直也很同意你的很多观点,但你的表达方法不太符合中国人的习惯,别人恐怕不好理解和接受。We are all chinese here, 中国人历来讲究宽容,我发誓绝对不是骂你,只是想提醒你别太偏激了(不过有人偏激也不错,可以想到人们通常没有想到的内容)

我那样说的主要意图是想明白你的实际想法,你果然沉不住气,轻轻一激就反应强烈,但你这些内容才正是我所想了解的,也是我所乐意同你深入讨论的。Everything is going on just as I planned:)

先就从你这些东西谈起罢。

“我知道, 我一个人是打不下天下的”
你说的对,但我们的目标就是变不可能为可能,有钱能买酒有什么稀奇,要没钱也能买酒!
但说来容易,成功的可能性为万分之一,唯有如你所说,养精蓄锐罢了。

“没有朋友, 没有同志, 没有钱”
没有又如何,一切我们自己造,悲观主义 is useless.
我也失败过,朋友和同志都离开了我,也没有钱,学费都是卖掉机器凑了交的,但这些绝对不能阻挡你!除非你不是真心想做游戏,否则就振作起来,继续前进,那怕是再失败。

“前一段时间我还兢兢业业地更新主页, HOPE IT WILL MAKE A DIFFERENCE. 根本没有人来”
我的主页也没什么人来,但我一样认真做,并不是你做任何事情的时候都会有掌声陪伴,当初看到CLOUD的主业时,访客也是寥寥无几,你看现在多热闹。

“大家要么非常自信, 别人的话根本听不进”
哈哈,年轻人都这样,反正听不听由他,说不说由你。

“你(们)以为你的一点小小成就能改变什么么? 帮助什么人么? ……”
一个人是改变不了什么,但我相信这样做的人会越来越多,至少我现在看到的人比几年前多了很多。

“随便到AMIT'S GAME AI PROGRAMMING PAGE, COMP.GAMES.DEVELOPMENT.XXXX看看,人家写的文章才叫帮助”
那当然,不过如果我们都能写出这样的文章,世界就不是这个样子了。如果做得不好不对,你就说出来,我相信大家都会努力改进的,再次感谢你直接指出这点!

“你(们)的译文写得不清不楚,内行人看看还过得去, 外行人看得一头雾水……”
很多人没学好英语而且文笔功力不够,但我们一定会加强的!

“我很佩服你(们)的尝试,可是你(们)的尝试只是浪费初学者的时间罢了. 这是害人不是救人”
小孩子难免会跌跌交、互相碰破头什么的,只要搀扶着爬起来拍拍灰就好了,没必要哇哇哭着说我不玩了。

“讨论了一年, 还停留在最基本的DIRECTDRAW, WINDOWS VS. DOS的问题上”
别把大家水平都看成很高,当然会有人谈这种问题,以后肯定也还有。别以为CLOUD太慢,他比我读书时强多了。何况真正的成长是在踏上社会以后。
但也别把大家水平都看成太低,很多人有DOS下制作游戏的经验,因此才会有WINDOWS VS. DOS这种讨论。

“要么LAZY”
业余作者和失败者的通病

“有时, 你/我(们)也会收到些合理意见建议, 提高CODE的功率. 这是非常痛苦的经历, 我们中有多少人这么干了? 包括云风在内, 写的注解都不怎么样, 几段简介, 自己看的懂就好了. 这样的成果有什么价值? ”
这是必经的学习阶段,别烦躁!

IN CONCLUSION: 有这么好的想法为什么不早说,谁说你错我扁谁。
期待着你更多更好的看法和建议!如果发现我有什么不对,尽管争论或者骂好了:)

BTW,你主业的论坛老说我口令错:(

名字: freemind
主页: http://freemind.163.net
来自: 游戏硅谷 202.98.46.7
Friday, March 26, 1999 at 22:42:27 (CST)
留言: Hi Gamester:

请你冷静些好吗?
无论如何,你在讨论中骂人总是不对的……

其他人对你品行的“攻击”,就是由于你说话的方式引起的……

尊重他人的人,才能得到他人的尊重!

名字: 开心
来自: 202.99.105.193
Friday, March 26, 1999 at 20:31:47 (CST)
留言: 今天可恶的网易让我主页更新了 5 个小时才搞定 :-(
Gamester 要冷静, 至少我把你当朋友. Hmm, 我的程序注解不详细是事实,
实际上我自己写代码向来是不写注释的, 最长写过 10000 行的程序, 里面唯一的
注释是, "今天我修改了这里, 明天继续" 我现在在改, 不过我不反对你的见解 ^_^
讨论什么 DOS vs Windows, C vs C++ 一向是我不喜欢的, 但有人讨论这个
问题, 我一样要阐明我自己的见解.
btw, C++ 好用, 我知道, 但 C 也好用, 让我们自己保留自己的看法,
持我这个看法的人不在少数, 不信你在 comp.games.develop 发篇文章
问问, 是 C 写游戏好还是用 C++ 好, 你一定会被人扁的 hehe

最后我认为我写的文章不至于那么难懂吧, 部分文章是我在理解后
翻译的基础上再加上自己的见解的, 比原文要强多了

名字: 云风
来自: 202.103.110.135
Friday, March 26, 1999 at 19:15:28 (CST)
留言: 我很喜欢制作游戏的感觉。其实我不是一个玩游戏上瘾的人,也没有制作过游戏;但是我是一个很喜欢自己创造的人。
进了你的主页,感觉很是羡慕,希望自己也能做这些东东。


名字: pinktiger
E-Mail: pinktiger@163.net
主页: http://pinktiger.163.net
来自: 159.226.118.69
Friday, March 26, 1999 at 19:14:32 (CST)
留言: Gamester: 好象你很闲喔!时间太多了?写贴都多过人!人无完人,世界有什么东东是完美的?
名字: NONAME
来自: 202.96.141.206
Friday, March 26, 1999 at 17:36:03 (CST)
留言: 可恶的WINDOWS! 简直是白痴! 什么破玩意啊, 那么多没用的东西.
考虑的倒是挺全的, 可效率就低了啊! 我的小游戏运行起来就...
唉,让我欢喜让我忧的WM_PAINT啊,怎么才能解决呢?

顺便问一句: 怎么做桌面游戏呢?

名字: 呆呆
E-Mail: ychangyu@371.net
来自: DLUT 202.96.66.233
Friday, March 26, 1999 at 17:13:17 (CST)
留言: 嘿! 有他妈攻击我的个人品性! 有没有搞错? 你不同意我的观点就算了.
他妈的说我是乌鸦干吗? 再说我长得象黑亮的乌鸦么? 太抬举我了, 为什
么不说我是厕所里的蛆虫, 棺材里的吸血鬼, 野地里的僵尸?

我在这里表达自我的看法, 的确, 我爱跟人过不去, 就是为了和人争辩.
论坛设立了就是用来争辩的. 而不是用来骂人的. 所有人都看我不顺眼,
那就跳过我的贴子好了. 不同意我的贴子, 回文将我驳倒, 而不是抬举我
称我乌鸦! 乌鸦有什么不好, 李国豪拍那篇电影而丧命, 好歹也是英雄.
I LIKE IT!

那我作了些什么? NOTHING! 因为我知道, 我一个人是打不下天下的. 既然打不下天下, 那就要养精蓄锐. 闲着没空就和人聊聊侃侃. 何况, 我并不闲, 一天有看不完的书, 穿梭在大学城的教学楼之间, 没有朋友, 没有同志, 没有钱, 前一段时间我还兢兢业业地更新主页, HOPE IT WILL MAKE A DIFFERENCE. 根本没有人来. 大家要么非常自信, 别人的话根本听不进(跟云风说过多次, C++好用, 他根本没听进去; 讨论了一年, 还停留在最基本的DIRECTDRAW, WINDOWS VS. DOS的问题上). 要么LAZY, ("英文太繁, 有没有中文文档", "有没有源码可抄"). 我在美国的NEWSGROUP上可从没见过这种现象. 我终于明白我是无法帮助任何人的. 只有照顾好自己了.

你(们)以为你的一点小小成就能改变什么么? 帮助什么人么? 作梦去罢! 你(们)的译文写得不清不楚,内行人看看还过得去, 外行人看得一头雾水. 寥寥数字, 顶个屁. 外行看完: "WHAT THE FUCK IS THIS ABOUT?" 随便到AMIT'S GAME AI PROGRAMMING PAGE, COMP.GAMES.DEVELOPMENT.XXXX看看,人家写的文章才叫帮助, 如此精细详尽, 你(们)写的叫GARBAGE. 我很佩服你(们)的尝试,可是你(们)的尝试只是浪费初学者的时间罢了. 这是害人不是救人. 我是不作害人的人的.

帮助人: 1)写SAMPLE, 2)详细注解SAMPLE, 3)将心得写成文章给自己看,也给他人作借鉴. 有时, 你/我(们)也会收到些合理意见建议, 提高CODE的功率. 这是非常痛苦的经历, 我们中有多少人这么干了? 包括云风在内, 写的注解都不怎么样, 几段简介, 自己看的懂就好了. 这样的成果有什么价值?

IN CONCLUSION: 我不想害人, 所以,我一定要完美地设计我的东西, 既能被我所接受, 也能被同志(志同道合的朋友)所接受, 它一定要合理, 高效(程序要占内存少,速度快), 易改进. 这种项目, 耗费大量时间, 我, 没有着些时间,我也不一定有这种水平, 怎么办? 节省下时间, 能学到什么就学什么. 剩下时间就是吹牛放松. 难道这也有错么?

TO THE UNDISCOVERED COUNTRY! TO THE FUTURE! A DROP OF TEAR, TO THE HERO WHO TRIED AND FAILED!

名字: Gamester
来自: 128.174.0.228
Friday, March 26, 1999 at 17:04:53 (CST)
留言: To 老王:
你别太着急,我的超级AVI播放器虽然已经完成了,但还没有发布,到时候
会通知你的,我要先做很多测试,还要加很多功能进去,可以肯定的是将
会FREE给大家。这样一来,应该可以缩短国产游戏同欧美游戏的片头质量
的差别了,甚至还能完全超过它们!
BTW, 你那里不能访问 163 吗? 我现在的主业是在 http://freemind.163.net or http://mindfree.yeah.net

To who cares about 边缘柔化:
关于边缘柔化,为什么不去看看我公布的图形引擎?

To Gamester:
If you think you can be successful, show us!
Please don't always looks like a crow, do some actual thing to help us before we die!?

名字: freemind
主页: freemind.163.net
来自: 202.98.35.81
Friday, March 26, 1999 at 15:26:17 (CST)
留言: 想着为国争光就是一种错误的思想倾向!

这种想法很没有前,钱途.想要成功,就要有曹操思想作后盾:
1. 人不为己天诛地灭!
2. 宁愿我负人不可人负我!

设计游戏是为了MONEY, FAME!

名字: Gamester
来自: 128.174.0.228
Friday, March 26, 1999 at 12:49:54 (CST)
留言: test
名字: abc
来自: 202.96.190.124
Friday, March 26, 1999 at 10:18:02 (CST)
留言:
TO:老王。
你的留言板有问题,进不去。

名字: DAI
E-Mail: SUPERDAI@163.NET
来自: 202.103.153.5
Friday, March 26, 1999 at 10:16:32 (CST)
留言: 想象力也很重要,中国的文化积累和社会习惯制约了想象力
而且对于娱乐领域的行业向来都是持打压和歧视态度的
因为任何创新的东西会对旧有的习惯和理念构成威胁
即使是体育也是放在为国争光的基础上组织的

名字: julien
来自: 202.96.190.124
Friday, March 26, 1999 at 09:13:29 (CST)
留言: 中国人不是没有学识,是没有用的学识太多。上了大学还要学 门啊窗的,再小学,中学就应该学的。把时间都浪费了,还那有什么时间学什么3D 4D 加速引擎。。。。。
名字: Chancemos
E-Mail: mychansmos@263.net
来自: 202.97.235.241
Friday, March 26, 1999 at 08:10:31 (CST)
留言: 1. 中国人没有钱.
2. 技术传播还是不够迅速.
3. 硬软件业走的路不对,竞争不够.没有竞争没有新技术的发展.
4. 公司间的竞争意识不强,作的东西太粗糙.
5. 足球不行就是体力体质不行,可谓"东亚病夫".
6. 人才流失,有几个人出国又回去的??
7. 反应太慢,有些业余设计人连微软主页都不去看,关着门写东西,可谓"井底之蛙".
8. 英文水平不够,经过几次翻译后的玩意已是面目全非.
9. AFRAID
10. TOO SOFT
11. LAZY
12. 不团结
13. 不懂得APPRECIATE他人的意见建议.
14. 整天无所是事.花那多时间破一个游戏干吗? NUTS??
15. 不懂如何利用结合自己的思想和已有的技术.浪费太多时间.
16. 两极分化太大.
17. 没有必需的学识,盲目瞎搞.
18. 浪费资源.
19. 没有资助.
20. 没有远见.
21.........

名字: Gamester
来自: 128.174.0.228
Friday, March 26, 1999 at 02:16:45 (CST)
留言: 修正:
因疏忽,前一文中容易让人误解为“为云风感到悲哀”,实际上毫无此意,他应是让我感到希望的,特此更正。

名字: 老王
来自: 202.94.2.231
Friday, March 26, 1999 at 02:00:44 (CST)
留言: to freemind:
很想侃一下你的“超级结巴”,只是一直都连不上你的主页,why?! :3(
to ray:
好象现在的2D游戏中对spirit还没有使用anti-aliasing的。其实只要图象边缘处理得好,不使用这种技术也是完全可行的,毕竟是2D游戏嘛,不可能也不需要有那么强烈的真实感。但是3D游戏中要是不使用anti-aliasing,hei hei,那就等着挨K吧。

名字: 老王
主页: http://dxstudio.yeah.net
来自: 202.94.7.50
Friday, March 26, 1999 at 00:59:32 (CST)
留言: 看了最近两期期的《电脑报》,特别是关于Savage3D和G400等几篇文章,加上自己平时的一些体会,颇有一些意见想发表一下。
现在的电脑技术发展实在是太快了!而我个人悲观的感觉,中国的电脑技术,无论是软件还是硬件,与世界先进水平的差距是越来越大了。当别人已经开始用0.25微米技术生产的具有128位超级流水线和2D/3D视频引擎加速功能的芯片,利用其(先吸口气)高速32位真彩色渲染、三线性过滤的多重纹理贴图、每秒生成800万个三角形或每秒填充1.4亿个双重纹理像素、硬件凹凸贴图、全景抗失真过滤、各向异性过滤、8位模板缓存、反射贴图、镜面高光、纹理变形、程序性纹理和大气效果的特性(hu... hu...缓口气儿,接着来),进行面向照片级真实感、32位渲染、实时动感的全3D游戏(或软件)设计时。我们还在讨论一些诸如:是破门(Doors)好还是破窗好,是用C还是用C++、是用DirectX还是用Allegro(云风看了请别生气哟 :^)。我的确为中国的软件,特别是游戏软件感到悲哀。
不要认为这是天方夜谈,而是不远的将来。为什么别人用Word的时候,许多中国人还要去学wps;为什么别人早已开发出DOOM的时候,我们才刚刚有了中关村启示录,为什么我们的足球老死也踢不出亚洲?(为什么有的学校宿舍可以很方便的上网,而我的学校却不行?)为什么我们总是跟不上时代?为什么我们总是落后?why? who can tell me! tell me! tell me! why??!!
.........
if...any...body...know..........please...tell...me...(扑通——)

名字: 老王
主页: http://dxstudio.yeah.net
来自: 202.94.7.50
Friday, March 26, 1999 at 00:57:08 (CST)
留言: TO CLOUD:
两天没睡觉,终于搞定了我那个AVI播放器,效果绝对让人流口水
可惜不支持INDEO,你知道INDEO如何解码吗?

名字: freemind
主页: http://freemind.163.net
来自: 游戏硅谷 202.98.33.20
Thursday, March 25, 1999 at 23:12:45 (CST)
留言: 关于精灵黑边的问题.
我不知道游戏里面的精灵是怎么绘制的,但我相信和透明GIF的原理比较相近.
就是在调色版里面设定一个透明色,绘制透明GIF的时候,使用逻辑运算就很容
易把一个精灵单独贴到背景画面上了.
好了,问题就出现在背景色上.如果使用的是PhotoShop的话(我用的就是ps).
在很多工具的选项里都有一个反混淆的选择框.反混淆我相信学过计算机图形
的同志都知道是怎么个原理.那么好了,当你输出一个透明GIF的时候,ps会自动
在你选定的背景色和你需要的精灵的边沿之间进行反混淆处理.这是透明GIF
产生黑边的主要问题.也就是说绘图工具会自动加入一些"脏"的数据到你的图
形数据上.消除脏数据就是尽量不使用反混淆,尤其是在生成图形的边沿上.
至少也要重新用没有反混淆的钩子选一次,重新产生.
如果仔细看过Diablo starcraft等等,就会发现他们的图像数据上面都没有使
用反混淆.

名字: Ray
来自: Beijing 162.105.129.3
Thursday, March 25, 1999 at 19:08:11 (CST)
留言: the video file format is now AVI,
But ?????? in the future.Can I?

名字: freemind
来自: 202.98.35.146
Thursday, March 25, 1999 at 17:28:23 (CST)
留言:
Cloud, do you know wihere can I find
a hi-speed MPEG Decorder Source?

Not slow as the one in ALEAGO

名字: freemind
来自: 202.98.35.146
Thursday, March 25, 1999 at 16:17:29 (CST)
留言: 我无法上传我的DIRECTSOUND WRAP类,要命要命!天府和我的合同说
给我5MB免费空间,这种奸贼竟然贪污了4.16MB!只给我不到800KB的
空间.怎么办???

名字: Gamester
主页: www.tianfu.net/~gstudio/
来自: 128.174.0.228
Thursday, March 25, 1999 at 14:11:38 (CST)
留言: EXACTLY!!
一道深渊,底部是滚烫的岩浆,在玩家爬出这道深渊时,以为我们会伸出手将他们拉上来时,我们在他们头上踩一脚...

事实上,很多游戏都以大团圆来结束,很不顺眼.KERRIGEN被送到CHAR上受死,实不在我的意料之中.TESSADAR的死出乎我的意料.特别是最后的CINEMAX,TESSADAR两臂一挥,将主力战舰朝着ZERG OVERMIND的心口致命一击, THAT IS VERY COOL!!!侠三中那个美妹的死也很惊心动魄,给人无限感慨.这些无情意外的转折只能深深地打动我们,给予我们勇气和希望,

A PIECE OF SORROW COME THROUGH MY MIND!
A DROP OF TEAR, --- TO THE BRAVE HERO WHO FEARS NOTHING!
PERHAPS --- TODAY IS A GOOD DAY TO DIE.

名字: Gamester
主页: www.tianfu.net/~gstudio/
来自: 128.174.0.228
Thursday, March 25, 1999 at 13:38:20 (CST)
留言: 打碎了玩家的心,对你有什么好处?
名字: limoon
来自: 202.104.218.20
Thursday, March 25, 1999 at 13:19:10 (CST)
留言: 打是打,不过不是打动,是打击!打击玩家的心. 而且是打碎那种. ^_^
名字: limoon
来自: 202.104.218.20
Thursday, March 25, 1999 at 13:17:27 (CST)
留言: 我的意思就是开放性的RPG不现实.只是没用说清楚 (向后台道:"DAMN IT").没有电影作成开方性,观众无法即时改变影片中的人物的命运,"这"才令人感慨万千,回味深长.如果你设计出了一个游戏本来人物的命运是一场悲剧,凭着玩家不懈努力,竟然扭转乾坤,在皆大欢喜中结束这个游戏,这又有什么意思??

最KOOL的一个悲剧方案就是: 在玩家自信自己能扭转乾坤的,万分紧急的关头,一个miracle, BAD MIRACLE出现,一下将玩家的所有希望打碎!这种无法预料的突变才能打动玩家的心.至少我是这么想的.

IN CONCLUSION: 在玩家得意忘形,或是急得焦头烂额的时候来个大转折,一脚踩在这些自以为凭着一个键盘,一个鼠标,一个破摇杆就想改变我们设计者设好的
大局.就象踩一只蟑螂一样将他们的希望踩成一滩肉泥!
OPEN FOR DEBATE!!

名字: Gamester
主页: www.tianfu.net/~gstudio/
来自: 128.174.0.228
Thursday, March 25, 1999 at 12:36:25 (CST)
留言: Microsoft ScanDisk


Log file generated at 03:02AM on Tuesday, March 23, 1999.

ScanDisk checked drive C for problems, with the following results:
... 此处删去无聊文字 40K, 请不要再炸我的留言板 ...
ScanDisk did not perform any tests.


名字: fuckgod
来自: 202.96.190.124
Thursday, March 25, 1999 at 10:35:59 (CST)
留言: freemind, 你的动画用什么格式的?
名字: 云风
来自: 202.103.110.186
Thursday, March 25, 1999 at 07:47:37 (CST)
留言: 我在sina 写的东西只是想讨论一下开放性的 RPG 应该怎样实现, 而不是去实现
一个具体的 RPG. 你搞错了我的意思. 如果按你写的剧本去写 RPG,当然没有问题
但这用的着去讨论吗? btw, 看了指顾江山的那篇设计思想没有? 如果你认为是
天方夜谈就不用再 Re 了.

名字: 云风
来自: 202.103.110.186
Thursday, March 25, 1999 at 07:37:38 (CST)
留言: 看了你在新浪的留言,异议:
这样讨论肯定不会有什么结果.唯一的出路是,编导一个游戏试试.不需要将整个游戏编出来,用头脑和纸
笔演算.写下MODULE SPECIFICATION,如下:

象二月份我构思的游戏"FUTURE : 2250",主人公MULDER被一阵风刮到了未来,未来的世界是一片废墟,一
群地下反抗军试图推翻外星殖民者的残暴统制,MULDER遇见少女战士SCULLY,SCULLY以为他是间谍,带他到
了基地,将他关进了禁闭室,当晚外星政权的军队发动突然袭击,反抗军被杀得四分五裂,MULDER救下SCULLY,
SCULLY终于相信了MULDER的时光穿梭的的故事.两人结伴向反抗军的被用基地进发.历经千辛万苦到达了
被用基地,残余的反抗军准备杀MULDER以谢死去的战友.SCULLY好不容易说服众人MULDER不是间谍,于是
MULDER加入反抗军,作为筹谢,反抗军的中的高能物理学家帮助MULDER回到他的年代中.东打西打后,反抗
军制定了一个反击计划,将敌人的星际战舰给打掉.于是四下收集材料设计一艘小型战舰,数人乘这艘战舰
混入了敌人的星际战舰中,设下炸弹死了不少人又飞了出来,敌人的星际战舰被炸成碎片.欢庆后,MULDER
要回到自己的年代,他同意将自己的记忆擦除,回到自己的年代后,他就不作出傻事无意中将SCULLY的未来
改掉.完.

1)没有踩地雷.各种武器防具的升级都要用RESEARCH的方法得到,要么从敌人(机器人)的残骸中夺取.
2)平时不需要和敌人(机器人)进行面对面攻击,绕过敌人就好,但有一种机器人很利害!能DETECT
LIFESIGN!这种机器人随后会呼叫援军,援军往往要在战斗进行10个回合时才会赶到,所以一定要在援军
没来之前将这种机器人打掉.后来火力强了,根本不在乎援军有多强,硬拼就是.
3)枪械打出一次后要RECHARGE POWER,没有了高能电池,人物只好肉搏,对于小型机器人往往没有一点问
题,大型机器人反应慢,99%的战斗中都能出逃.
4)防具叫离子防护罩(ION SHIELD),一种力场可以反弹吸收激光,中子束等武器,但数次后力场会变得稀
薄,甚至消失.

然后用图解法将情节划分成事件,象你说的.用CLASS,对象来展现,具体如何触发事件我认为用地点作为
触发器比较好,如走到哪个地点,和人对话,接收任务.这个任务就排在一个任务QUEUE中,当然再到哪个地
点去执行.紧急任务:如疗伤,给定时间:10 SECOND, 3 DAYS....

事件网?算了,个人喜好不同,我就不喜欢太多分支任务,一个事触发多个事件的INFINITE PROBABILITIES
又烦又不好设计,吃里不讨好.个人认为一个游戏就象一部电影,曲折而又紧凑,五论你多么愚蠢,你也有
机会将游戏打完,当然有些法宝你弄不弄得到,就看你有没有本事了.虽然弄不到一些法宝,但情节还是要
能感人肺腑,回味深长. --- SUMMARY: 企划必须成为电影导演,和其它各部门紧密配合,这样的输出能得
到最好的反馈.

个人设计项目最好不要太大,容易控制.特别是在单枪匹马搞设计时.不要老想这设计游戏就是编程,对吧?
我想,想象企划为电影导演,一切设计安排都必须和编导电影一样步骤进行,这样才能得到最好的效果.

大概说这么多也没人看. www.tianfu.net/~gstudio/

名字: Gamester
主页: www.tianfu.net/~gstudio/
来自: 128.174.0.229
Thursday, March 25, 1999 at 07:06:36 (CST)
留言: 视频播放的音频解码部分已经完成一半了
下周肯定能出来
满屏播放的,整体和细节的效果都绝对比
WESTWOOD 的 RA
AIDOS 的 TOMB RAIDER
BLIZZARD 的 DIABLO
…………
…………
要好
哈哈哈哈哈哈哈哈
哈哈哈哈
哈哈哈哈
哈哈哈哈
哈哈哈哈
哈哈哈哈
哈哈哈哈
哈哈哈哈
哈哈哈哈
哈哈哈哈
zzzZ

名字: freemind
主页: http://freemind.163.net
来自: 游戏硅谷 202.98.33.118
Thursday, March 25, 1999 at 06:49:16 (CST)
留言: 熬夜写了篇《如何在 VC 环境中使用 DirectX》,算是给新手们的礼物吧,有意见请留言,我会不断补充修正这篇文章的。

名字: freemind
主页: http://mindfree.yeah.net
来自: 游戏硅谷 202.98.46.111
Thursday, March 25, 1999 at 06:41:55 (CST)
留言: HeroZ, hehe 你好象很失望哟, Sigh 算是没尝过其中的苦头, 那半年我可是什么
都没有做, 整天就忙着翻译这个, 最痛苦是 Allegro 一升级就要大量的位置要改
snow, 用风魂的另一个好处就是, 稳定, 不管怎么切换任务, 也不会什么
Surface lost, 库都帮你做了, 你要做的就和 DOS 下写游戏一个效果
大家不要再议论 8studio 的不是了, 我不算 8studio 的员工, 用不着去说
他们的好话, 但是我相信 8studio 的朋友是为大家喜欢做游戏的网友们好
有正规公司协助业余的开发小组立项和商业化产品有什么不好呢?

名字: 云风
来自: 202.103.110.186
Thursday, March 25, 1999 at 00:46:32 (CST)
留言: 我才开始用ALLEGRO.刚想为其文档汉化,就发现已经迟了.
想和您及网上的DJGPP交个朋友!望来妹儿,不吝赐教!

名字: HeroZ
E-Mail: heroz@990.net
来自: Nanjing 202.102.30.143
Wednesday, March 24, 1999 at 19:04:42 (CST)
留言: 要是大家都听你的,都不玩游戏,写游戏有屁用!
名字: limoon
来自: 202.104.218.54
Wednesday, March 24, 1999 at 15:38:57 (CST)
留言: 5/19/1999, STAR WAR:篇I - THE PHANTOM MANICE就要上映!
主要剧情:黑暗势力(西域魔教),一股崇尚THE POWER OF THE DARKSIDE,将
大举进侵共和国(中原),杰达骑士(中原正教中的热学豪士): DARTH VADER的
父亲,O-BIWAN CANOBY要击败一个京剧脸谱的邪教天王!!将邪教的一个分舵
(一个星际中转站)给炸掉。

这次的焦点聚在一个“内力”(THE FORCE)高深莫测的小孩身上,这个小孩就是
行天者哈纳肯,后来的黑骑士DARTH VADER,行天者吕克的父亲,行天者哈纳肯
的父亲是杰达骑士,尤达(那个绿色的杰达大师)手下的高徒。还有年青的OBEWAN
KANOBY。还有一个年青的少女,莱亚公主,这些都是主人公。

乔治卢卡斯写了“STAR WAR”这个项目,共分九部!拍好了第四,五,六三部,现
在这一部是第一部。最近英文课也在学有关这部星际英雄传的东西,我觉得对游戏
设计很有帮助,将会上传一些课堂笔记,很有意思,你如果想要成为剧本设计人,
最好来看看。

“STAR WAR”,我看了近84次,83,还是84次,我忘了。对提高英文很有帮助,“印第安
纳琼斯”三部,我至少看了124遍。不开玩笑!!“朱罗纪公园1&2”我看了54遍,
“THE FIFTH ELEMENT”,我一星期就看了23遍,至从有了设计游戏的梦后,电影看得更多
,对于企划编导很有帮助。玩游戏有个屁用,玩得头痛不说,连看书写作业看电影上街和
美妹喝茶编程睡懒觉的时间都混掉了。劝你不要玩游戏。

名字: Gamester
主页: www.tianfu.net/~gstudio/index.htm
来自: 128.174.0.229
Wednesday, March 24, 1999 at 14:10:26 (CST)
留言: 8STUDIO就是发工作室,一切向"前"看!
名字: NONAME
来自: 202.104.218.16
Wednesday, March 24, 1999 at 13:56:39 (CST)
留言: DOS is DEAD!写码没有什么规矩,爱用什么系统就用用什么系统,也不要这么隆重地
向大家宣布,没有人在乎你如何写码。英文: DON‘T GIVE A DAMN。

内存问题的解决方法是,先将代码写出来,调试后再确定要不要DISABLE虚拟内存。毕
竟,你不是专业写码,有点漏洞是难以避免的。想要节省内存:
1。使用8-BIT BITMAP,而不是: 24,32BIT BITMAP。
2。尽量用HEAP,动态建立对象和内存,用完立即DEALLOCATE!这样会很慢,但内存控
制较好。
3。还有杂七杂八的方法一时想不起来。

8STUDIO的目的很清楚:就象BORG,ASSIMULATE EVERY SPECIES,将最新的技术聚为己
有,RESISTENCE IS FUTILE!挺糟糕的。

名字: Gamester
来自: 128.174.0.229
Wednesday, March 24, 1999 at 13:35:00 (CST)
留言:
这个全屏不会独占系统吧?也可以任务切换?
实际上我挺讨厌写窗口的。也许会放弃在windows
上的计划,还是在dos上写我的东西。
从某个角度上说,游戏之类的东西,也用不上windows
多任务的特性吧。多任务的特点反而减少了这些程序
可分配的资源。windows在这方面最大的优点是在于
可以让玩游戏的人在老板来的时候轻松地转换窗口吧 &_^

名字: snow
来自: 202.103.139.42
Wednesday, March 24, 1999 at 12:53:44 (CST)
留言:
多为中国电脑游戏作出点贡献吧

名字: Xiaoye
E-Mail: xiaoye_love_sakai.163.net
来自: beijing 210.74.111.33
Wednesday, March 24, 1999 at 11:35:58 (CST)
留言: 我全部的程序都是 C 写的 ^_^ 没必要注明了
风魂里的鼠标支持还有个模式没有完成, 就是象
key 的支持可以用 readkey() 一样, 可以用
readmouse() 读鼠标最后一次发生的事件
不过我没有完全想清楚怎样一个表达形式是最好的

名字: 云风
来自: 202.103.110.217
Wednesday, March 24, 1999 at 11:17:14 (CST)
留言: 风魂是要做成只支持全屏幕的专门给游戏使用的程序库
界面属于游戏的一部分, 如果要使用窗口, 而不直接
调用 Win32 的 API 或者使用 MFC?
游戏的界面部分是一个游戏一个样, 在底层库里固定没有价值

名字: 云风
来自: 202.103.110.217
Wednesday, March 24, 1999 at 11:13:55 (CST)
留言:
云风不准备回答我对风魂的疑问了吗?

名字: snow
来自: 202.103.139.42
Wednesday, March 24, 1999 at 10:20:40 (CST)
留言: 我来到了你的主页,看到了你的杰作(程序习作),不错!
你的一些小工具挺好的,起码是我的第一感觉(我还没试过)。干吗不能把它们集成在一起呢?
有一个小问题:为什么在程序习作不添加作品的开发语言?因为对大多数人而言读代码比较长经验值,(例如我)。如果我在download你的源码后发现却是我不习惯的语言,不是白费?要知道一般来说每个人只能精通1~2种语言,是不是?
好了,不烦你了,祝你做的更好!
再见!

名字: 小意见
E-Mail: ncshgao@990.net
来自: Paul 203.116.16.66
Wednesday, March 24, 1999 at 10:15:06 (CST)
留言: 我们这儿的网络出了问题, 现在只能去广东, 去不了北京 :-(
所以我最近不可能去 irc.263.net

名字: 云风
来自: 202.103.110.217
Wednesday, March 24, 1999 at 09:52:44 (CST)
留言: 能不能将常用的内存声明成为"线程安全"型的?这样应该就不会
被调到硬盘缓冲上去了.这个概念在CBC看到过,VC应该也有把?

名字: julien
来自: 202.96.190.17
Wednesday, March 24, 1999 at 08:57:34 (CST)
留言:
你知道8STUDIO的目的吗?

名字: NONAME
来自: 202.104.218.1
Wednesday, March 24, 1999 at 08:43:24 (CST)
留言: 人生一场大梦,世事几度秋凉。

名字: dai
来自: 202.103.155.140
Wednesday, March 24, 1999 at 07:59:05 (CST)
留言: TO 8STUDIO:
你们还是老老实实一步步作好自己的工作,不要想那么多。合理利用自己的时间,在网上
搞游戏是不会成功的。这些朋友都在作白日梦,总有醒来的时候,你们也不用操这么多心


TO CLOUDWU:
好想法!只可惜你这些本事不应该浪费在游戏设计上,应该去写操作系统。


名字: Gamester
来自: 128.174.0.229
Wednesday, March 24, 1999 at 04:49:18 (CST)
留言: 没有在IRC中找到你,急了只好在这里写了。每个月都有很多爱好者到我们这里报名,还有更多人都想做游戏,但我们的规模不敢过分扩大,总想步步为营。但看到这么多朋友有这种爱好,实在是不想扫了他们的兴。还有,这些朋友大部分没有进行过实际操作,无法一下进入真正的制作之中,没有真正精力过一个游戏的全部过程是无法真正看到其中的问题的,所以想在网上和网下将他们组织起来,给他们以切实可行的帮助。
1。将爱好策划、程序、美术的人进行合理的组合。
2。帮助他们选择项目方向,是切实可行的项目方向。
3。帮助他们制订计划、流程和对付可能发生的意外的办法。
4。在市场方面提供支持,给他们的成果以肯定。
5。对他们的工作提供技术和经验上的支持。
但我们的力量太弱了,时间太紧,人手不够,不知你是否感兴趣?

名字: 8studio
E-Mail: 8studio@8studio.com.cn
主页: www.8studio.com.cn
来自: 八爪鱼工作室 202.94.2.212
Tuesday, March 23, 1999 at 23:02:08 (CST)
留言:
Hi,云风,继续问问题。(成问题少年了)
具体点说吧。如果我是希望要一个窗口,不用菜单的,在上面load一幅图,或者
是画出来的(只有直线),图外建几个button,然后再接受在上面点击(包括点
击button和在图上点击),点击后在点击点附近画简单的图案,如圆圈之类。
或者出一些简单的提示信息,那么风魂这个库能处理吗?
看了一下allegro的例子,似乎上述要求allegro是可以做到的。可惜现在都要
打开破窗口,否则当初用bc就已经做了很多东西了。

名字: snow
来自: 202.103.136.243
Tuesday, March 23, 1999 at 22:20:25 (CST)
留言: 《东厂魏忠贤之格杀令》,:),好商业的译法,直接叫《杀气》good多了,不过想起马上要登陆PC的《绝命凄杀》这也没什么啦............哈....哈...........
名字: tinyhsu
来自: 202.96.112.186
Tuesday, March 23, 1999 at 20:49:48 (CST)
留言: 自己的 CACHE 好用点点 ^_^ 可以设定数据级别
比如做背景音乐的声音流不进入 CACHE (我讨厌用 CD 音轨,CD-ROM 应该放
更重要的数据才对, 把所有的数据 copy 到硬盘当然也是办法, 江湖就这里处理
的十分完美, 游戏时就可以不读 CD 上的数据, 一心放音乐了 ;-)
还有自己知道什么时候该抛弃什么数据... (反正是很爽的哟 ^_^)
自己分配管理内存也很爽, 至少这样游戏的 bug 会少点, 比较容易控制
还有, VC 的 malloc 分配内存是 8bytes 对齐的吗? 我希望发挥 MMX 的最大优势

名字: 云风
来自: 202.103.110.152
Tuesday, March 23, 1999 at 19:48:59 (CST)
留言:
我认为不用自己建立CAHCE,其实windows文件系统本身就有磁盘高速缓存,就象DOS下SMARTDRV的功能. 因为第一次读取文件时,有无CAHCE的速度是一样, 只有频繁读取的文件, CAHCE才会发生作用,而CAHCE也是占用内存的, 因此我觉得在游戏中提高读写磁盘的速度方法应从几方面考虑:

1.将游戏中经常用到的数据放在内存中(废话!)。
 2.游戏中空隙时, 就读一下放置暂时不用数据的内存块, 以保证内存页不被交换到硬盘去, 不要用内存锁来防止内存页交换到硬盘去, 这样做会降低执行效率,应由windows自己管理.
 3.对于不是常用的文件, 建立内存映射文件, 由windows去管理磁盘高速缓存.
4.游戏中空隙时, 异步读取较常用的文件(读完就仍), 以提高磁盘CAHCE的命中率。
5.预读.(废话!)。^_^

名字: limoon
来自: 202.104.218.1
Tuesday, March 23, 1999 at 19:02:36 (CST)
留言: 我有个疯狂的想法(几乎要在风魂里实现) 自己申请物理内存空间
自己管理, 这样游戏能有最高的系统利用率. 而且自己写 CAHCE
管理外存到内存的缓冲问题... 不过即使要实现, 也是最后一步了

名字: 云风
来自: 202.103.110.152
Tuesday, March 23, 1999 at 15:07:21 (CST)
留言: 改注册表吧!里面有对文件系统的控制.
名字: majun
E-Mail: 007loveyou
来自: 202.100.161.81
Tuesday, March 23, 1999 at 14:50:13 (CST)
留言: 请问各位高手,如何加快WINDOWS98下的硬盘读写速度,就像DOS下SMARTDRV的功能?
名字: yzzylt
E-Mail: yzzylt@163.net
来自: jiansu江苏 202.102.58.100
Tuesday, March 23, 1999 at 14:28:16 (CST)
留言: 我今天才又开始上网,看到了四通里的那篇文章,我支持你对那篇文章的观点,他可能想法很好,但缺乏实践经验,而且从文章中发现,他在有关人工智能如路径搜索算法等方面不是特别熟练,就当一篇故事看吧。
名字: 8studio
E-Mail: 8studio@8studio.com.cn
主页: www.8studio.com.cn
来自: 八爪鱼工作室 202.94.2.192
Tuesday, March 23, 1999 at 14:25:50 (CST)
留言: 公司搬家了,原地址电话依然有效,新的电话在报装中。现在我们搬到了一个中学内,办公室大了好多,宽敞明亮,4月份提供职工宿舍,什么时候到北京,你就会看到这种变化。不好的是,杀气影响了一些,搬家出了一些棘手的问题,如机器出了故障等等。
名字: 8studio
E-Mail: 8studio@8studio.com.cn
主页: www.8studio.com.cn
来自: 八爪鱼工作室 202.94.2.192
Tuesday, March 23, 1999 at 14:21:11 (CST)
留言:
就因为破窗口,弄得我的机器现在性能低下,兼容性极差!
特别是哪些在破窗下玩的破游戏,把破窗弄得更破。

名字: snow
来自: 202.103.136.48
Tuesday, March 23, 1999 at 13:52:28 (CST)
留言:
我都很怀念DOS的自由空间,不过时代不同了,你想要你的软件拥有高性能以及兼容性,还用瘟95吧!^_^

名字: limoon
来自: 202.96.141.223
Tuesday, March 23, 1999 at 13:33:52 (CST)
留言: 坚决支持DOS!!!
坚决支持256色,
呵呵。

名字: HC
来自: 206.172.228.174
Tuesday, March 23, 1999 at 10:26:04 (CST)
留言: 不行, 我的意思是做 DirectX 版的 Allegro
如果你用过 Allegro, 就很容易知道它是干什么的,
我提供的接口几乎和 Allegro 的相同
btw, 讨厌写文档, 很麻烦和浪费时间 ^_^

名字: 云风
来自: 202.103.110.209
Tuesday, March 23, 1999 at 09:52:45 (CST)
留言:
有人说这里的高手很多,但总是解释问题不清楚,象是语文没学好。:)
反复看了几次风魂游戏库的哪几页,硬是没有看到云风很清楚地解释
这个游戏库主要是干什么的?
我最想知道的是,是不是可以利用它完成WINDOWS上程序制作的界面部分工作?

名字: snow
来自: 202.103.136.48
Tuesday, March 23, 1999 at 09:44:31 (CST)
留言: 我正在和 Shawn 一起写 Allegro 的汉字支持 ;-)
有了正宗作者的支持, 简直太爽了, 马上 Allegro 将完全支持汉字
btw, 现在 Allegro 里的文档管理用的 makedoc 这个工具已经完全支持汉字
(在 ._tx 文件里加了专门的汉字开关表示)

名字: 云风
来自: 202.103.110.104
Tuesday, March 23, 1999 at 07:44:37 (CST)
留言: 我也在设计AVI播放的程序。
名字: Gamester
来自: 128.174.0.229
Tuesday, March 23, 1999 at 07:18:12 (CST)
留言: 这两天开始做视频播放程序,
从现在的画面输出效果看,已经相当出色了,绝对不比老外他们的差
但目前还差音频解码部分,可能下周什么时候就能搞出来,
哈哈……^-^……把我高兴死了


名字: freemind
主页: http://freemind.163.net
来自: 游戏硅谷 202.98.35.71
Tuesday, March 23, 1999 at 05:11:00 (CST)
留言: 网易上有云风的玉照哦:)

名字: julien
来自: 202.96.190.79
Monday, March 22, 1999 at 11:42:58 (CST)
留言: 网址错了。新的!
名字: Gamester
主页: http://www.tianfu.net/~gstudio/
来自: 128.174.0.229
Monday, March 22, 1999 at 11:10:41 (CST)
留言: 新设立了三个论坛,CGI论坛。
名字: Gamester
主页: http://www.tianfu.net/gstudio/
来自: 128.174.0.229
Monday, March 22, 1999 at 09:24:25 (CST)
留言: 都是高手, 都是高手
名字: Heaven's Cloud
主页: bestnet.126.com
来自: 206.172.182.122
Monday, March 22, 1999 at 09:24:00 (CST)
留言: 谢谢老王,还是老王紧跟时代潮流!
名字: 天魔
来自: 202.102.2.194
Monday, March 22, 1999 at 09:16:55 (CST)
留言: To snow:
1. palette 是一个数组存放颜色的数据。一种颜色由深浅不同的三个基色组成:
RED (0 - 255);
GREEN (0 - 255);
BLUE (0 - 255);
所以,有16777216 (256 ^3 = 2^24)种不同的颜色,(这种说法可能是错的)。
一张256色的BMP,GIF, 。。。其图象所用的颜色只有256种!你就可以使用一个256 ENTRIES
的ARRAY 来 任意增减Red, Green, Blue的数值来达到你想要的效果如ALPHA BLENDING!当然
这样作是效率很低的。
更多信息可从任何MFC教程中的BITMAP章节和INSIDE DIRECTX中得到。
16位 = 2^16 = 65536, 如果搞一个PALETTE,有65536个值,那样作会很慢。又占大量内存。
24位也是。
32位吃内存吃得更多。


名字: Gamester
来自: 128.174.0.229
Monday, March 22, 1999 at 09:11:06 (CST)
留言: 哇!试了一下,我也进不去了 :3(
还好没什么要更新的 :3)
可能是网易那边的问题,等明天吧
hei hei, 你又有什么好东东啊!

名字: 老王
主页: http://dxstudio.yeah.net
来自: 202.94.2.88
Monday, March 22, 1999 at 00:10:43 (CST)
留言: “老王”,www4.netease.com我这进不去,你那边如何?
无法更新,急死我了。

名字: OverClock
主页: http://www4.netease.com/~overclock
来自: 202.101.180.81
Sunday, March 21, 1999 at 21:13:07 (CST)
留言: to 天魔:
去我的主页瞧瞧 :3)

名字: 老王
主页: http://dxstudio.yeah.net
来自: 202.94.2.207
Sunday, March 21, 1999 at 18:14:41 (CST)
留言: 就是我现在用的笨办法么?那样很慢耶,而且烟雾效果也不容易实现.
名字: 天魔
来自: 202.102.34.6
Sunday, March 21, 1999 at 14:21:47 (CST)
留言: Allegro 在我首页链接了下载位置
Palette 是调色板,部分分辨率的呀. PALETTE 的取得可以是自己算
可以从位图文件中提取
DDRAW 里的 Alpha 混合, 只需要将运算的两个 Surface lock 住, 再运算就可以
当然用风魂的话, hehe 就直接调用了 ^_^(完整的 Alpha 混合我后面的版本提供)

名字: 云风
来自: 202.103.110.159
Sunday, March 21, 1999 at 10:36:39 (CST)
留言: 辩论是好事,有沟通才有理解.诸位都是大侠,小弟有一事请教:在Directdraw 中alpha 混合如何实现?(在2d)其实就是如何实现烟雾的效果?就向风云中的那样,但是
不用d3d实现,可不可以呢?

名字: 天魔
来自: 202.102.34.40
Sunday, March 21, 1999 at 10:15:54 (CST)
写写留言版吧:-)