易截截图软件、单文件、免安装、纯绿色、仅160KB

用C写的3D迷宫

          Boss说,要看OpenGL,看了快一个月,总算出了个像样的东西,用C写了个3D迷宫,
虽然只有350行
       代码,不过边学边写,足足写了一周时间,还是小有成就感的,活活活!
               Tips:上下左右键控制前进后退转向,空格键切换俯视图,鼠标右键更换地图(虽然只写了两
       个……) 加了点音乐,免得太过单调。
    
       效果图:
     
   
   
  
#include<stdlib.h>
#include<stdio.h>
#include<GL/glut.h>
#include<GL/glaux.h>
#include<math.h>
#include<windows.h>
#pragma comment(lib, "glaux.lib")
#define    PX_START    1.5
#define    PY_START    1.5
#define    UNITSTEP    0.2
#define    ANGLE_START    -45
GLuint    Texture = 0 ;
float    px = PX_START ;
float    py = PY_START ;
int        angle = ANGLE_START ;            //行走方向
int        dir_x ;                //行走方向向量
int        dir_y ;
int        MAP_SIZE = 16 ;
char    **map ;
int        globalView = 0 ;    //是否查看俯视图
char    *map1[16] =
    {
        "HHHHHHHHHHHHHHHH",
        "H       H      H",
     


相关文档:

C 运行时错误 R6002

如下代码编译运行就会提示R6002错误 #include
struct xxx{
  float score;
};
int main()
{
  xxx* p = new xxx;
  scanf( "%f" , &p->score );
  delete p;
} 解决方案很简单 int main()
{
  xxx* p ......

linux C gbk utf 8编码转换

用linux C 下的函数调用创建中文目录、文件等,字符串的编码格式要求是utf-8格式的。
比如想要使用 int mkdir(const char *pathname, mode_t mode); 创建一个中文的目录。那么pathname的编码格式要求是utf-8的,而不能是gb3212/gbk的,否则就是乱码。
那么如果linux C下如何进行gbk<---->utf-8编码转换的编码装换的 ......

C复杂声明解析

C语言所有复杂的指针声明,都是由各种声明嵌套构成的。如何解读复杂指针声明呢?右左法则是一个既著名又常用的方法。不过,右左法则其实并不是C标准里面的内容,它是从C标准的声明规定中归纳出来的方法。C标准的声明规则,是用来解决如何创建声明的,而右左法则是用来解决如何辩识一个声明的,两者可以说是相反的。右左法则 ......

linux内核启动过程——基于S3C2410

(1)zImage自解压
本文以流行的Samsung公司的S3C2410,mini2440平台和linux-2.6.29为例,介绍如何在ZIX嵌入式开发环境下探索linux内核启动过程。
Linux内核启动一般由外部的bootloader引导,也可以在内核头部嵌入一个loader,实际的应用中这两种方式都会经常遇到。所以要了解内核启动最开始的过程,必须对bootloader如何 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号