游戏开发论坛

 找回密码
 立即注册
搜索
查看: 4028|回复: 4

版主兄请进来

[复制链接]

5

主题

21

帖子

21

积分

注册会员

Rank: 2

积分
21
发表于 2003-8-26 23:19:00 | 显示全部楼层 |阅读模式
  不好意思,又开了一个新贴子。不过接在原来的后面我怕版主看不到,所以只好向版主说声报歉了。
  对于版主兄快速采纳了小弟的意见,增加了CreateBitmapFromBuffer()函数,小弟非常感谢。不过版主的新函数要求必须是RGB格式,如果我的数据刚好是RGB格式的还好,是BGR格式的就麻烦了。对数据源排序的时间和写空白位图缓冲的时间相差也不是很大,就没必要调用新函数了。所以希望最好在函数中加一个参数,指明数据是RGB还是BGR格式的。
  上次说的空白位图不能用的问题已经查清楚了,是我使用不当的问题,这是特向大家说明,并向版主致歉。
  顺便问个问题,版主兄是plane2d是用3d来表现的,这是真的吗?

1万

主题

1万

帖子

2万

积分

管理员

中级会员

Rank: 9Rank: 9Rank: 9

积分
20527
发表于 2003-8-26 23:32:00 | 显示全部楼层

Re:版主兄请进来

没什么,大家本着一起交流的心态而来,没有对错,交流提高才是最终目的,有问题尽管说,虽然一些我不一定能够解答,不过我会尽力帮大家解答每个问题。 :-)

你所说的RGB或者BGR等其他结构的组合,这个没什么问题,不过我需要考虑一下借口如何组织,晚上还需要些一个寻径的代码,争取在明天帮你加上这支函式。

目前Plane2D是用DirectDraw来实现,并没有用到3D,事实上是可以用3D来实现,只是到了hoho4.0我把这部分封闭起来。

5

主题

21

帖子

21

积分

注册会员

Rank: 2

积分
21
 楼主| 发表于 2003-8-26 23:48:00 | 显示全部楼层

Re:版主兄请进来

  辛苦了。
  对了,BITMAPX的GetBuffer()函数应该使用了Lock()来取得表面缓冲吧,用完后该用哪个函数来Unlock()呢?
  另外,我在看DirectDraw的资料时,发现Blt()函数有对Alpha、缩放的支持,但设置了以后好像没有效果。版主知道怎么回事吗?

1万

主题

1万

帖子

2万

积分

管理员

中级会员

Rank: 9Rank: 9Rank: 9

积分
20527
发表于 2003-8-27 01:20:00 | 显示全部楼层

Re:版主兄请进来

HoHo自己管理了图像数据,也就是没有通过DirectDraw,GetBuffer()不需要lock也不需要unlock,获得指针,直接往里面写数据就行。

DirectDraw是有Alpha功能,但只是少数的显卡支持,所以一直以来,2D的Alpha混合都是自己计算,缩放虽然都有支持,不过不同的显卡,缩放出来的效果天差地别,所以这部分一般都不会依赖硬件来完成。

1万

主题

1万

帖子

2万

积分

管理员

中级会员

Rank: 9Rank: 9Rank: 9

积分
20527
发表于 2003-8-27 15:28:00 | 显示全部楼层

Re:版主兄请进来

我更新了一下,支持BGR,刚好是和RGB倒置的顺序。

不过暂时还不支持其他组合。

http://www.gameres.com/HoHo
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-7-4 10:29

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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