| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 7599 人关注过本帖, 1 人收藏
标题:(原创)TC3.0 的三维图形与屏保(直接写屏方式)
只看楼主 加入收藏
yuki
Rank: 2
等 级:新手上路
威 望:5
帖 子:508
专家分:0
注 册:2005-2-4
收藏
得分:0 
对了我想提一下具体做法,直接写屏首先是取显卡其实地址,以线性的方式把一个一个点的颜色写入由起始地址开始,加上偏移量的位置,可以将这种存储方式看成一个线性表;

而绘制的时候,在写入特定位置之前需要计算颜色,计算位置位置等等,那么每次画一个点到屏幕上速度并非一致,则会造成屏幕抖动;LZ可以假设一个与屏幕尺寸大小一致的数组,该数组的类型呢,是RGB色彩(也就是一个32位整数吧),据我所了解常用的色彩分为RGB(24位色彩)和ARGB(带有阿尔法半透明效果的24位色彩),其中ARGB高8位0-255是Alpha指,后面的24位排列方式为bbggrr(也就是RGB三个分量在内存中是倒置)这和CPU从存储器中取数的方式一样;言归正传,你可以先把需要绘制的东西全部填入预先设定好的数组中,然后通过一个函数进行页面交换,也就是简单的调用memcpy函数进行内存与内存的复制,memcpy使用汇编写的,而且复制每个单元的数据都是等速,我觉得这么一来写屏的效率就高了很多。

我们都在命运湖上荡舟划桨,波浪起伏使我们无法逃离孤行;如果我们迷失方向,波浪将指引我们穿过另一天曙光
2008-02-14 12:52
sunkaidong
Rank: 4
来 自:南京师范大学
等 级:贵宾
威 望:12
帖 子:4496
专家分:141
注 册:2006-12-28
收藏
得分:0 
你可以自己写写啊。
2008-02-14 12:54
xianshizhe111
Rank: 1
等 级:新手上路
帖 子:1451
专家分:0
注 册:2007-12-8
收藏
得分:0 
是的是有些抖动,
因无法再用系统Graphics库,
那样就得另外建图形函数把它存入其中,再调出.
有点难度我会试试.
谢谢你的提示.谢谢.
2008-02-14 12:57
yuki
Rank: 2
等 级:新手上路
威 望:5
帖 子:508
专家分:0
注 册:2005-2-4
收藏
得分:0 
不客气,对了,还有一点就是,写程序的时候,缩进有讲究,不要有实后2个空格,有时候4个空格,一律一个制表符(TAB),一个制表符一般4个空格到8个空格,vc可以设置,TC是8个

我们都在命运湖上荡舟划桨,波浪起伏使我们无法逃离孤行;如果我们迷失方向,波浪将指引我们穿过另一天曙光
2008-02-14 13:03
xianshizhe111
Rank: 1
等 级:新手上路
帖 子:1451
专家分:0
注 册:2007-12-8
收藏
得分:0 
页面转换 有道理
格式别见笑
你看我的代码还有void main()现在好点了.
再一次的感谢.
2008-02-14 13:11
yuki
Rank: 2
等 级:新手上路
威 望:5
帖 子:508
专家分:0
注 册:2005-2-4
收藏
得分:0 
所以呢,既然你已经知道这个是不好的习惯,就应该强迫自己去改掉,这样你的代码自己看得舒服,让别人也会了此不疲的去看,不是么?

那个页面交换也不是什么新技术了,DirectX、OpenGL甚至GDI绘图在双缓存绘图模式下,为了防止闪屏是很常用的技术。

祝你技术上有所成就。

[[it] 本帖最后由 yuki 于 2008-2-14 13:17 编辑 [/it]]

我们都在命运湖上荡舟划桨,波浪起伏使我们无法逃离孤行;如果我们迷失方向,波浪将指引我们穿过另一天曙光
2008-02-14 13:15
xianshizhe111
Rank: 1
等 级:新手上路
帖 子:1451
专家分:0
注 册:2007-12-8
收藏
得分:0 
谢谢共同进步.
2008-02-14 13:16
zmhdxy
Rank: 1
等 级:新手上路
帖 子:452
专家分:0
注 册:2007-9-27
收藏
得分:0 
ding

2008-02-15 19:40
xianshizhe111
Rank: 1
等 级:新手上路
帖 子:1451
专家分:0
注 册:2007-12-8
收藏
得分:0 
LS谢谢

作者本意是想把作品拿出与大家共赏互相做个借鉴.
但标题内容与本意完全背离(有严重的攻击倾向,实在有些不雅,不好意思一时冲动.)
有请管理员把此帖进行(沉底操作).

[[it] 本帖最后由 xianshizhe111 于 2008-2-17 14:14 编辑 [/it]]
2008-02-17 10:51
sunkaidong
Rank: 4
来 自:南京师范大学
等 级:贵宾
威 望:12
帖 子:4496
专家分:141
注 册:2006-12-28
收藏
得分:0 
楼上的兄弟我支持你.....个人觉得如果觉得别人写的可以改进,可以发布改进的版本.....
2008-02-17 12:49
快速回复:(原创)TC3.0 的三维图形与屏保(直接写屏方式)
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.013230 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved