易码技术论坛

 找回密码
 加入易码
搜索
查看: 424|回复: 14

问个编程的问题

[复制链接]
发表于 2010-5-5 23:23:31 | 显示全部楼层 |阅读模式
C/C++好像能用LAVA里面那种由0XFF之类代码绘成之图片吧?应该怎么样用呢?
还有用什么软件能生成这种图片的代码?
发表于 2010-5-6 09:52:52 | 显示全部楼层
1.找到显存的地址,往里面塞0xff之类的东西。。。
2.用cimage库
3.用vc里面的GDI、GDI+ (也许名字记错了?)
4.用directX
5.应该还有其他方法
发表于 2010-5-6 10:57:44 | 显示全部楼层
WriteBlock
 楼主| 发表于 2010-5-6 18:11:23 | 显示全部楼层
原帖由 Alanwywy 于 2010-5-6 09:52 发表
1.找到显存的地址,往里面塞0xff之类的东西。。。
2.用cimage库
3.用vc里面的GDI、GDI+ (也许名字记错了?)
4.用directX
5.应该还有其他方法

能给我具体的介绍下吗?谢谢~
近来自学着C++,净写那些文字的代码很乏味,想写一些带图形的程序。
还没学到用MFC那些那么高级的,不过貌似想用C++在WIN下绘图是非常之艰难的一件事,囧。
发表于 2010-5-7 01:32:22 | 显示全部楼层
忘记直接操作显存的事情吧。PC上的显存,大概不是那么容易可以直接操作的,就算操作也是透过一系列的图像API。

用DirectX的话,可以尝试去拿到offscreen surface的指针,然后lock,就能得到一个地址,指向一段连续的内存。你可以把它当做显存来操作。

或者用微软的GDI,里面应该有DDB的概念,也就是设备相关的位图。你搜一下,大致也是弄出一块内存,表示颜色,你可以写它。然后再把这段内存表示的DDB绘制到屏幕的DC上。大致搜了一下,比如这里:http://www.mvps.org/user32/gditutorial.html

要么你找找有啥方便的库,比如你试试SDL这个东西,http://www.libsdl.org/intro.cn/whatcanitdo.html,关于绘图的部分它应该是纯CPU的。或者HGE,这个是DirectX的简单封装,可以用到硬件加速。这两个库用起来应该比你裸用API容易。
 楼主| 发表于 2010-5-7 10:00:09 | 显示全部楼层
原帖由 FantasyDR 于 2010-5-7 01:32 发表
忘记直接操作显存的事情吧。PC上的显存,大概不是那么容易可以直接操作的,就算操作也是透过一系列的图像API。

用DirectX的话,可以尝试去拿到offscreen surface的指针,然后lock,就能得到一个地址,指向一段连续的内存。你可 ...

貌似老F说的俺都不会用,看来还得努力学下去才行。
要是VC有个graphics.h库就好了。
发表于 2010-5-7 11:40:28 | 显示全部楼层
原帖由 llmmkc123 于 2010-5-7 10:00 发表

貌似老F说的俺都不会用,看来还得努力学下去才行。
要是VC有个graphics.h库就好了。

初学可以考虑GDI入手。有MSDN文档,例子比较多,还有中文书买。

PS:其实开始的时候可以直接用些简单的API做做绘图的事。GDI里面显示图片有自己一套的方法,建议用gdi的话就学习之。
CImage库我没记错的话貌似可以 load(xxx.jpg)然后就显示。
这些方法你可以都google下,选个自己觉得喜欢的搞。

SDL 难不成是 标准显示库?哈哈

[ 本帖最后由 Alanwywy 于 2010-5-7 12:25 编辑 ]
发表于 2010-5-7 14:16:29 | 显示全部楼层
SDL还跨平台哦,看上去不错哎~
发表于 2010-5-7 23:08:45 | 显示全部楼层
标记下,有空看看
发表于 2010-5-9 22:09:37 | 显示全部楼层
原帖由 llmmkc123 于 2010-5-7 10:00 发表

貌似老F说的俺都不会用,看来还得努力学下去才行。
要是VC有个graphics.h库就好了。


你可以试试SDL和HGE。没什么会用不会用的,用过就会了。

当你拿到一个关键字之后(比如我这里告诉你的HGE和SDL),没有头绪的话,就google之。你会发现它可以一步一步引导你找到你需要的东西。
发表于 2010-5-9 22:11:24 | 显示全部楼层
原帖由 Alanwywy 于 2010-5-7 11:40 发表

初学可以考虑GDI入手。有MSDN文档,例子比较多,还有中文书买。

PS:其实开始的时候可以直接用些简单的API做做绘图的事。GDI里面显示图片有自己一套的方法,建议用gdi的话就学习之。
CImage库我没记错的话貌似可以 load(xx ...


我个人不建议从GDI入手……这是一套老掉牙的东西,设计的很奇怪。
 楼主| 发表于 2010-5-9 22:17:15 | 显示全部楼层
原帖由 FantasyDR 于 2010-5-9 22:11 发表


我个人不建议从GDI入手……这是一套老掉牙的东西,设计的很奇怪。

那请问哪个好用一点?就是用起来没那么繁琐。
还有 俺正在自学着C++,刚学完类,这么快转向WIN的编程会不会快点了?
发表于 2010-5-9 22:52:11 | 显示全部楼层
当然是别人封装好的库咯。
发表于 2010-5-10 06:58:50 | 显示全部楼层
原帖由 llmmkc123 于 2010-5-9 22:17 发表

那请问哪个好用一点?就是用起来没那么繁琐。
还有 俺正在自学着C++,刚学完类,这么快转向WIN的编程会不会快点了?


没什么快与不快。你实际去弄了就知道是怎么回事了。行动起来,遇到问题再【百度】之。
学到类了哇,足够你开始简单的编程之旅啦。注意下 【函数指针】 【指针函数】之类绕口的概念,有些代码里有这类不好理解的东西,记得遇到了奇怪的语句【google】之。
 楼主| 发表于 2010-5-10 11:31:03 | 显示全部楼层
原帖由 Alanwywy 于 2010-5-10 06:58 发表


没什么快与不快。你实际去弄了就知道是怎么回事了。行动起来,遇到问题再【百度】之。
学到类了哇,足够你开始简单的编程之旅啦。注意下 【函数指针】 【指针函数】之类绕口的概念,有些代码里有这类不好理解的东西,记得 ...

好的,谢谢指点啊!
您需要登录后才可以回帖 登录 | 加入易码

本版积分规则

Archiver|手机版|小黑屋|EMAX Studio

GMT+8, 2024-3-28 17:31 , Processed in 0.011219 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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