当前位置: 代码迷 >> C语言 >> [原创]256色图形开发包(支持3D建模,贴有3D模型效果图)
  详细解决方案

[原创]256色图形开发包(支持3D建模,贴有3D模型效果图)

热度:270   发布时间:2005-12-27 14:58:00.0
[原创]256色图形开发包(支持3D建模,贴有3D模型效果图)

简介:
JS图形开发包 发布,支持256色的5种分辨率图片显示,有一套界面编辑函数,最令人震撼的是有一套编辑3D框架函数

JS 图形开发包

作者 :孙靖 2005.11.18

 

记得是去年国庆把家里的烂机子带来学校的,从那时候算起,学习编程也有一年多了,编程给我带来了无限的乐趣,可以说除了我老婆,编程是我大学生涯最大的收获~~~

应该是今年暑假认识了NEO,进而也认识了她的作者--董凯,一直深为佩服他的能力。直到今日自己也萌生了写个图形开发包的想法,经过两个星期的努力终于写出个JS~~~ JS的效率不高,功能也远不比NEO强大,架构也很平庸......在许多高手看来,JS就是个垃圾。

所以JS是本人对架构分析的一次尝试,我知道其中有太多太多的不足,所以您已经是编程高手,或您在图形编程方面有较高的造诣,您还是忙自己的事,小弟怕耽误您的时间。若您是编程初学者,或对图形编程还不是很熟,或是也想自己写个图形开发包......那我要对您说JS一定要看。JS架构简单,易学易用,希望JS能给您带来哪怕一点点的帮助。

 

JS特点:

1. 256色图形开发包。有一套简单的图形显示和绘画函数,支持320X200,640X400,640X480,800X600,1024X768。5种分辨率。

2. 在1的基础上构建了一套界面编辑函数。(其实只有4个函数)

3. 同样在1的基础上构建了一套可以编辑任何形状的3D框架的函数。(这个也是本开发包的独特之处)

 

本人QQ:272964426 Jig无悔客2~~

EMILE: WuHuiKe@avl.com.cn

 

申明:

JS为开源的学习资源,您可以使用JS开发软件,也可以修改其中的内容,但在传播或发布自己软件时注明您软件的出处。

下载地址:http://upload.programfan.com/upfile/200512131500657.rar

3D效果图:



[此贴子已经被静夜思于2005-12-28 0:09:49编辑过]

搜索更多相关的解决方案: 建模  图形  效果图  模型  贴有  

----------------解决方案--------------------------------------------------------
靠~~!!没有人看~~晕忽忽
----------------解决方案--------------------------------------------------------
我来看了 哈哈
----------------解决方案--------------------------------------------------------
我也来看啦!
----------------解决方案--------------------------------------------------------

很好嘛,谢谢楼主传这么好的东西!


----------------解决方案--------------------------------------------------------

好东西,啊


----------------解决方案--------------------------------------------------------
靠,没人顶啊
----------------解决方案--------------------------------------------------------

真是好东西,谢谢了
只是它不能映射纹理!!
总得来说这是我在网上第一次找的DOS下3d图形包。


----------------解决方案--------------------------------------------------------

int get_SVGA_mode() /*获取当前SVGA屏幕模式*/
{
union REGS r;
r.x.ax=0x4f03;
int86(0x10,&r,&r);
return(r.x.bx);
}
上面调用的是AH=4f,AL=3的int 10中断吧?
可是我翻遍了所有的汇编书籍,最多只有AH=0x13啊

而且我用这个做测试的时候发现结果也不太对
#include <dos.h>

int get_SVGA_mode() /*获取当前SVGA屏幕模式*/
{
union REGS r;
r.x.ax=0x4f03;
int86(0x10,&r,&r);
return(r.x.bx);
}


void main()
{
int x;
x=get_SVGA_mode();
printf("%d\n",x);
}
结果x=3,这与Jig.h里定义的
#define SVGA320X200 0x13
#define SVGA640X400 0x100
#define SVGA640X480 0x101
#define SVGA800X600 0x103
#define SVGA1024X768 0x105
没有一个能对上号啊

一堆的问题,望高手指点,谢谢!


----------------解决方案--------------------------------------------------------

呵呵,你得先设置好图形模式, int get_SVGA_mode();函数才有效啊.

你现在的代码是直接在文本模式下,你没有设置好图形模式的.

void init_SVGA()
{
Jig_Savemode = get_SVGA_mode(); /*先保存原来的屏幕模式*/
}

void set_SVGA_mode(int vmode) /*设置SVGA屏幕模式*/
{
int i;
union REGS r;

switch(vmode)
{
case 0x13:
COLS = 320;
ROWS = 200;
break;
case 0X100:
COLS = 640;
ROWS = 400;
break;
case 0X101:
COLS = 640;
ROWS = 480;
break;
case 0X103:
COLS = 800;
ROWS = 600;
break;
case 0X105:
COLS = 1024;
ROWS = 768;
break;

}
r.x.ax=0x4f02;
r.x.bx=vmode;
int86(0x10,&r,&r);
}

你先这样 init_SVGA();
set_SVGA_mode(SVGA800X600);
再去使用get_SVGA_mode();看看?看你获取的值是多少?

看东西要看完,好好看看说明文档.


----------------解决方案--------------------------------------------------------