
其他技术文章
文章平均质量分 69
MikeFeng
这个作者很懒,什么都没留下…
展开
-
C++中几种变量声明的比较
只有打好基础才能写出高质量的程序,只有搞清楚了变量到底是建立在栈上的,还是建立在堆上才能有效避免内存泄漏。看这个例子:#include class test{public: test(){printf("constructor/n");} test(int a){printf("aconstructor/n");} ~test(){printf("destructor/n原创 2006-04-03 20:09:00 · 1637 阅读 · 0 评论 -
使用标准库和函数指针简化switch语句
CopyRight by MikeFeng 如果你是一个Windows GUI程序员,那么经常应该会碰到对于消息的switch吧。面对冗长的switch语句,有什么简化方法呢? 很容易想到对switch的每个case进行包装,这样你的switch就会像下面一样:switch(1) { case 1: func1(); break; cas原创 2006-11-18 19:32:00 · 2481 阅读 · 0 评论 -
再探完成端口
一 快速入门 有关完成端口的概念,以及相关的一些API就不讨论了,因为网上介绍这些东西的文章太多了。这里关注的是如何组织代码。首先我们来看《WINDOWS网络编程技术》第八章中有关完成端口的例子。代码可以在网上找到,这里就不贴了。这个不到300行的程序可以让我们迅速入门。 查看程序,我们可以看到使用完成端口的服务器的一般步骤:1. 创建一个完成端口原创 2006-12-07 18:13:00 · 2617 阅读 · 1 评论 -
Windows网络编程
第一章 序言 我写这个专题的目的,一方面是为了通过对网络编程再一次系统的总结,提高自己的网络编程水平,特别是Windows下的网络编程水平。同时,我也希望,能为众多初学网络编程的人提供一点帮助,因为我开始学习网络编程的时候,能找到的资料就很少。当然,花钱可以买到翻译版本的书:) 首先向大家推荐一本很好的参考书,Network Pro转载 2006-08-22 17:05:00 · 2966 阅读 · 0 评论 -
Linux之全系统备份恢复
不要让你熬更守夜千辛万苦安装配置好的Linux系统瞬间随着你的心情烟消云散,记得在你心情最好的时刻做好备份,以便在你雨后晴天之时恢复之用!嘿嘿,当然解压安装也绝对是最好的安装方式,诸多好处诸多享受啊!备份1、准备一张Live CD用来启动,越小越快越好,推荐CDlinux,knoppix、ubuntu或者Gentoo的Live CD也不错。2、启动起来之后加载你的Linux分区,如果有单独的b转载 2006-08-23 17:20:00 · 2683 阅读 · 0 评论 -
怎样学习游戏编程
首先是语言方面,这个问题没有太多的选择的余地,基本上只有用C++(现在还在坚持用纯C来写引擎的估计只有卡马克同学了),语言的功底是特别重要的了;大规模项目的编写能力也是很重要的,推荐看大规模C++程序设计>> 软件工程方面,你可能要了解一些单元测试,系统级设计的方法;但是流行的软件方法,比如敏捷,我觉得,如果是你一个人得工程,用处可能不大,但是了解一点总没有坏处.最转载 2006-08-22 14:55:00 · 2137 阅读 · 0 评论 -
D3D文档——状态和状态块
网上搜了一下,发现没有状态块的介绍,因此用自己拙劣的英文水平翻译了一下,欢迎指正。 Direct3D设备使用状态来设定所有流水线处理。通过设定纹理寻址和过滤模式,状态可以控制纹理。纹理状态(Texture states)可以用来控制多纹理如何互相被组织和混合。渲染状态可以控制大多数的流水线状态。Microsoft® Direct3D®设备是一个状态机。应用程序设置光照、渲染和变换模块的状翻译 2006-08-22 18:34:00 · 3943 阅读 · 1 评论 -
0xc0150002错误
最近在项目中碰到了一个奇怪的问题,编译通过了,运行的时候碰到了这样的错误: LdrpWalkImportDescriptor( ) failed to probe xx.dll for its manifest ,错误代码0xc0150002 我用的是VC.net 2003的环境,运行的程序需要调用其他dll 解决方法: 安装.Net Framework 2原创 2007-03-26 13:29:00 · 7204 阅读 · 3 评论 -
Winlogon Notify的Vista移植
Winlogon notify的Vista移植By MikeFeng 大家知道,在Windows XP和2000中,有个Winlogon notify的方法来接收logon,logoff事件。如果有些事情需要在登录注销时去做,那么使用notify技术可以很好的解决。但是,出于安全考虑,在vista下,原来的winlogon notify的功能被微软取消了。现在只能通过系统服务的方法原创 2007-05-09 13:14:00 · 4765 阅读 · 0 评论 -
定制命令行窗口
定制命令行窗口 By MikeFeng, QQ 76848502 用过FTERM没?用过TELNET没?是不是对上面彩色的文字和命令行式的操作记忆犹新?今天写了基于命令行的程序,因为以前没有用到过类似的API,所以决定写这篇没有含金量的文章,以免以后忘记了还要重头学起。话说需求是这样的:实现一个类似于windows启动菜单一样的界面,可以上下选择,也可以回车执行操作。首先在MS原创 2007-05-27 17:08:00 · 3118 阅读 · 0 评论 -
内存泄漏及检测(英文)
Copyright by 云破日出 1. Introduction1.1 What we are dealing withBefore finding memory leak, we should have an overview of what we are dealing with. Memory leak on Windows platform co原创 2007-08-30 16:30:00 · 9832 阅读 · 2 评论 -
php5和mysql5的安装配置
选择apache2的动态添加模块,在redhat linux 9上编译,安装PHP非CGI版本我所用到的软件包: apache 2.0.54 php 5.1.4 zlib 1.2.3 mysql 5.0.22 libxml2 2.6.26碰到过的问题:1. mysql在本地已经安装对策: rpm -e --nodeps原创 2006-06-20 12:38:00 · 2099 阅读 · 0 评论 -
高效的XML——XDS
高效的XML——XDS By MikeFeng 最近在游戏编程精粹4(Game Programming Gems 4)中看到了对于XDS的介绍,解开了我对于XML低效的困惑。也许在小型的XML应用中不觉得,但是在大数据量的应用中XML的速度甚至无法和普通的.ini相提并论。首先让我们来看看XDS是什么吧。 XDS技术由DSD和XDS两种文件格式组成。原创 2006-10-09 15:19:00 · 4500 阅读 · 0 评论 -
免费的游戏开发资源
http://abattoir.wolfpaw.net/personal/gamelibs.php 上面对各种库进行了分类,内容如下 Free Game Development Libraries Contents General purpose libraries 3D Graphics 2D Graphics Video转载 2006-09-27 10:32:00 · 3166 阅读 · 1 评论 -
Vista和DirectX 10(转载)
根据微软的声明,DirectX 10只会集成在Vista系统当中,初期不会发布类似于DirectX 9.0c这样的单独安装版本,也不会支持Windows XP,显然,微软想依靠DirectX 10 API/硬件/游戏来诱惑更多的用户更快地升级到Windows Vista。 这就意味着DirectX 10很可能将于2007年初伴随Vista发布,届时您想要体验DirectX 10游戏的话必须升转载 2006-09-08 13:23:00 · 4635 阅读 · 0 评论 -
DirectX SDK 2006学习笔记6——光照和材质
Copyright © MikeFeng QQ: 76848502 D3D支持三种光:环境光(Ambient Light),漫反射(Diffuse Light)和镜面反射(Specular Light)。镜面反射需要更多计算,因此D3D默认关闭镜面反射。可以通过给SetRenderState传D3DRS_AMBIENT来设置环境光。 在现实世界中,我们看到一个红色的物体是因为原创 2006-09-08 15:06:00 · 3235 阅读 · 0 评论 -
DirectX SDK 2006学习笔记5——动画和矩阵变换
Copyright © MikeFeng QQ: 76848502 D3D中世界的运动是通过矩阵变化完成的。这里不打算讲数学知识,相关问题请参考计算机图形学书籍。 在D3D中矩阵变换分为三种:世界变换,观察变换和投影变换。世界变换描述了物体本身的缩放,旋转和平移,也就是物体本身的运动;观察变换描述了一个观察者在场景中的位置和朝向;投影变换描述了观察者可以看到内容的范围,类似这个范原创 2006-09-07 12:33:00 · 4157 阅读 · 3 评论 -
DirectX SDK 2006学习笔记7——多重纹理和纹理混合
Copyright © MikeFeng QQ: 76848502 多重纹理MultiTexture:使用多张纹理来渲染一个场景,只调用一次(DrawPrimitive) 纹理混合TextureBlending:按要求混合在同一个位置的像素点上色彩或透明度 在多重纹理(multitexturing)出现之前,DirectX支持的是多次渲染(multipass rende原创 2006-09-12 17:28:00 · 15030 阅读 · 1 评论 -
Debug和Release版的区别
可以这么说:release版本取掉了debug信息,进行了优化。 举个例子:那断言----Assertion来说,很多库函数本身的实现代码里,包含了很多的断言。通过ASSERT宏来声明这些断言,这个宏只有在程序的debug版里才有效。而在release版里它完全被忽略, 为的也就是减少系统的消耗, 至于debug版本运行结果正确,可release版却出错,可能的问题也就在这些断言转载 2006-05-08 09:56:00 · 1530 阅读 · 0 评论 -
基于完成端口的线程池的设计
contributed by DavidRipple 2005/04/111. 什么是线程池? 线程池就是一堆的线程的管理器。为什么需要它呢?通常为了提供应用的响应速度,我们都喜欢为每个业务处理开一个线程。在正常情况下,这些线程是可管理的。但是,但系统有突发的异常事务流时,如果还狂开线程就可能会导转载 2006-05-08 09:59:00 · 4630 阅读 · 0 评论 -
DirectX SDK 2006学习笔记8——再看DXUT框架
Copyright © MikeFeng QQ: 76848502 温故而知新,前面的DXUT框架我只看了一个外壳,我觉得这次框架的亮点就在于它对于图形界面的支持。如果说Win32 API SDK中gdi部分是主旋律,那么MFC就是一个流行歌曲作家发挥之后完成的作品,而DXUT的图形框架则继承了Platform SDK中的风格,代码行间给人一种高贵的感觉。-,-扯远了,拉回来。因为gd原创 2006-09-21 16:32:00 · 4241 阅读 · 4 评论 -
游戏UI设计
1.1 Surfaces之封装CXSurface[http://blog.youkuaiyun.com/mythma]1、Surfaces是什么: 通俗的讲surfaces就是一个二维的矩形平面。在DX9中,与其对应的com接口为IDirect3DSurface9,LPDIRECT3DSURFACE9。2、Surfaces的作用: 作为一个矩形平面,surfaces用来转载 2006-09-26 17:14:00 · 4003 阅读 · 1 评论 -
游戏引擎剖析
游戏引擎剖析(一) 关键字 游戏 出处http://www.gameres.com/Articles/Program/Abstract/GEanatomy1.htm 第1部分: 游戏引擎介绍, 渲染和构造3D世界 介绍 自Doom游戏时代以来我们已经走了很远。 DOOM不只是一款伟大的游戏,它同时也开创了一种新的游戏编程模式: 游戏 "引擎"。 这种模块化,可转载 2006-09-30 17:51:00 · 2718 阅读 · 0 评论 -
一个winhttp的服务程序
公司的考勤系统有两套,一套是门卡打卡上班,另一套是计算机登陆考勤网站上班。像我这样成天乘公交上班的人,不知道什么时候一堵车就迟到了。因此无聊加无奈,才写了下面的程序。。。。 首先考察一下门卡系统。因为要刷卡才能上班,刷卡数据保存在公司linux服务器上,没啥手脚可以动。于是转向网站考勤系统。这个网站是用jsp写得,于是打算用EffeTech HTTP Sniffer侦查一原创 2006-05-12 13:27:00 · 5523 阅读 · 9 评论 -
Win32的菜单编程
WIN32用户界面设计基础之Menus篇 2003-3-29 13:05:28 YESKY 陈孝强 阅读次数: 4835 一个菜单条总是属于一个窗口,当用户选定一个菜单项后,系统向菜单的父窗口发出消息,如果是普通菜单发送WM_COMMAND消息,如果是系统菜单发送WM_SYSCOMMAND消息。当鼠标悬浮在一个有下级菜单的菜单项上时,系统首先向菜单的父转载 2006-05-12 10:01:00 · 9989 阅读 · 1 评论 -
在VMWARE中使用KGDB进行源码级Linux内核调试
Linux Kernel Hacking With KGDB in VMWARE在VMWARE中使用KGDB进行源码级Linux内核调试 CopyRight By MikeFeng [环境] VMWARE 5.5 Windows XP SP2(可替换)虚拟机Ubuntu 6.06 (被调试机) 虚拟机Kubuntu 6.10 (调试机原创 2007-02-12 13:31:00 · 6100 阅读 · 0 评论