- 博客(43)
- 收藏
- 关注
原创 Direct3D的一些小贴士
GPU性能调试:通常来说,使用CPU时间事件来调试GPU是低效并且是不准确的。D3D API在多数命令下会阻塞,甚至是Draw函数。它会在一些时间片上做一些真正的工作,而这往往是不可预知的。因此,GPU的性能调试只能用PIX或者是其他专用产品,例如NVIDIA’s NVPerfHUD来进行。 显卡所用的内存:显卡所用的内存可以分为两大类:本地的和非本地的(相对于显卡来说)。在显卡处
2008-08-29 16:22:00
2186
原创 内存泄漏及检测(英文)
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
9733
2
原创 定制命令行窗口
定制命令行窗口 By MikeFeng, QQ 76848502 用过FTERM没?用过TELNET没?是不是对上面彩色的文字和命令行式的操作记忆犹新?今天写了基于命令行的程序,因为以前没有用到过类似的API,所以决定写这篇没有含金量的文章,以免以后忘记了还要重头学起。话说需求是这样的:实现一个类似于windows启动菜单一样的界面,可以上下选择,也可以回车执行操作。首先在MS
2007-05-27 17:08:00
3080
原创 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
4723
原创 ogre手动创建窗口需要实现的东西
手动创建窗口需要负责的事项:1.读取配置文件并记录logFull Screen=YesVideo Mode=1024 x 1280colourDepthFSAAFSAAQualityvsyncuseNVPerfHUD所有可能的参数:lefttoptitleparentWindowHandleexternalWindowhandlevsyncdisplayFrequencycolourDepthde
2007-04-05 20:32:00
2112
原创 OGRE + CEGUI的中文问题
Copyright © MikeFeng QQ: 76848502 在OGRE引擎中使用中文需要面对几个问题:在CEGUI中使用中文在输入框中处理IME消息在Overlay中使用中文 本文解决的是第一个问题,即在CEGUI中使用中文 CEGUI插件在OGRE中的使用方法:Step 1: 初始化CEGUI::OgreCEGUIRenderer和CE
2007-04-04 01:30:00
4178
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
7170
3
原创 Code & Comments For Basic Tutorial 6 in Ogre3d Wiki
Copyright © MikeFeng QQ: 76848502Basic Tutorial 5在官方wiki上有完整的源代码,参见这里本文的代码来自于Ogre官方网站wiki的基础教程6, 这个代码使用Ogre自带的Example框架, 主要实现了以下功能: CEGUI在OGRE中的使用 处理鼠标和键盘事件
2007-03-21 14:35:00
1821
原创 Code & Comments For Basic Tutorial 4 in Ogre3d Wiki
Code & Comments For Basic Tutorial 4 in Ogre3d Wiki Copyright © MikeFeng QQ: 76848502本文的代码来自于Ogre官方网站wiki的基础教程4, 这个代码使用Ogre自带的Example框架, 主要实现了以下功能: 读入一个ninja模型 使用了
2007-03-16 01:11:00
1860
原创 学习OGRE~~
手上资源已经足够,开始正式学习OGRE引擎。下面是我的资源列表,有兴趣的可以加我QQ(76848502)一起讨论。除了pro ogre 3d programming是在emule上下载,其他都可以在网上直接找到。a----- 13818773 10-Mar-107 03:53 Apress - Pro Ogre 3D Programming.pdfa----- 69360 9-Ma
2007-03-10 19:05:00
5712
9
原创 在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
6050
原创 几个地址。。备用
score 09EE5568hit 090382E4good 090382E6fault 090382E8miss 090382ECclean 090382EE
2006-12-29 17:34:00
16662
1
原创 再探完成端口
一 快速入门 有关完成端口的概念,以及相关的一些API就不讨论了,因为网上介绍这些东西的文章太多了。这里关注的是如何组织代码。首先我们来看《WINDOWS网络编程技术》第八章中有关完成端口的例子。代码可以在网上找到,这里就不贴了。这个不到300行的程序可以让我们迅速入门。 查看程序,我们可以看到使用完成端口的服务器的一般步骤:1. 创建一个完成端口
2006-12-07 18:13:00
2579
1
原创 使用标准库和函数指针简化switch语句
CopyRight by MikeFeng 如果你是一个Windows GUI程序员,那么经常应该会碰到对于消息的switch吧。面对冗长的switch语句,有什么简化方法呢? 很容易想到对switch的每个case进行包装,这样你的switch就会像下面一样:switch(1) { case 1: func1(); break; cas
2006-11-18 19:32:00
2431
翻译 CEGUI初学者指南2——装载数据文件和初始化
装载数据文件和初始化的初学者指南From CEGUIWiki1 概览:数据文件和ResourceProvider 1.1 资源的提供 – 什么是ResourceProvider? 1.2 XML, XSD? 都是XML! 1.3 数据文件1.3.1 图片集1.3.2 字体1.3.3 Scheme 1.3.4 布局1.3.5 配置2 装载基本文件3 简单的默认初始化4 结论 1 概览:数
2006-11-03 19:29:00
3532
翻译 CEGUI初学者指南1——使用CEGUI渲染
使用CEGUI渲染的初学者指南From CEGUIWiki无论使用哪个引擎,使用CEGUI渲染GUI必须有三个步骤 创建一个CEGUI::Renderer基对象. 创建CEGUI::System对象. 调用相关方法渲染GUI 很明显在此之前必须装载一些基本的文件,这些将会在下面的装载数据文件和初始化中介绍到。另外你必须获得系统输入,这些将会在插入输
2006-11-03 16:23:00
10549
原创 温故而知新2——第一个Windows驱动
第一个Windows驱动Copyright © MikeFeng 开发环境:Windows DDK 3790,VS.Net 2003,DriveStudio 2003目的:实现对系统服务调度表项的Hook,从而在内核态隐藏进程 这里所说的服务不是windows的services.msc中的服务,而是Windows内核处理系统调用的服务。例如CreateFile,
2006-10-24 16:46:00
1937
原创 温故而知新1——Windows 的访问控制
Windows 的访问控制 Copyright © MikeFeng 安全级别:基于NT内核的Windows是C2级别的。 c2是俗称橘皮书(orange book)规格中的一个安全级别。橘皮书(the orangebook)是美国国家安全局(nsa)的国家计算机安全中心(ncsc)于1983年8月颁发的官方标准,其正式名称是“受信任计算机系统评量基准(trusted c
2006-10-24 15:04:00
2177
原创 高效的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
4250
转载 游戏引擎剖析
游戏引擎剖析(一) 关键字 游戏 出处http://www.gameres.com/Articles/Program/Abstract/GEanatomy1.htm 第1部分: 游戏引擎介绍, 渲染和构造3D世界 介绍 自Doom游戏时代以来我们已经走了很远。 DOOM不只是一款伟大的游戏,它同时也开创了一种新的游戏编程模式: 游戏 "引擎"。 这种模块化,可
2006-09-30 17:51:00
2653
转载 免费的游戏开发资源
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
3073
1
转载 游戏UI设计
1.1 Surfaces之封装CXSurface[http://blog.csdn.net/mythma]1、Surfaces是什么: 通俗的讲surfaces就是一个二维的矩形平面。在DX9中,与其对应的com接口为IDirect3DSurface9,LPDIRECT3DSURFACE9。2、Surfaces的作用: 作为一个矩形平面,surfaces用来
2006-09-26 17:14:00
3952
1
原创 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
4210
4
原创 DirectX SDK 2006学习笔记7——多重纹理和纹理混合
Copyright © MikeFeng QQ: 76848502 多重纹理MultiTexture:使用多张纹理来渲染一个场景,只调用一次(DrawPrimitive) 纹理混合TextureBlending:按要求混合在同一个位置的像素点上色彩或透明度 在多重纹理(multitexturing)出现之前,DirectX支持的是多次渲染(multipass rende
2006-09-12 17:28:00
14949
1
原创 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
3192
转载 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
4609
原创 DirectX SDK 2006学习笔记5——动画和矩阵变换
Copyright © MikeFeng QQ: 76848502 D3D中世界的运动是通过矩阵变化完成的。这里不打算讲数学知识,相关问题请参考计算机图形学书籍。 在D3D中矩阵变换分为三种:世界变换,观察变换和投影变换。世界变换描述了物体本身的缩放,旋转和平移,也就是物体本身的运动;观察变换描述了一个观察者在场景中的位置和朝向;投影变换描述了观察者可以看到内容的范围,类似这个范
2006-09-07 12:33:00
4101
3
原创 DirectX SDK 2006学习笔记4——纹理
Copyright © MikeFeng QQ: 76848502 纹理在D3D中是一个非常重要的概念,它的出现改变了以前3D物体表面不真实的状况,为程序员提供了将2维图像应用到3维物体上去的功能。请做好心理准备,因为新的概念将像暴风骤雨般的袭来,而在没有弄懂基本概念之前是不可能进行下一步的学习的。下面是一些术语的大致概念: 纹理( Textrue ):将要应用到3维(或
2006-09-05 15:58:00
3138
3
原创 DirectX SDK 2006学习笔记3——索引缓冲
Copyright © MikeFeng QQ: 76848502 3.索引缓冲 索引缓冲Index Buffer是由用户定义的,用来告诉D3D渲染顶点顺序的WORD或者DWORD数组。索引缓冲离不开顶点缓冲,但是顶点缓冲却不一定需要索引缓冲。创建索引缓冲的过程和创建顶点缓冲类似,首先是声明,然后在OnCreateDevice中初始化和创建,在OnFrameRender中渲染
2006-09-05 12:57:00
2855
2
原创 DirectX SDK 2006学习笔记2——顶点缓冲
Copyright © MikeFeng QQ: 76848502 D3D9以一种比较易于理解的方式让程序员来组织游戏画面,这种方式就是顶点缓冲。程序员可以自己定义一组记录多边形定点颜色,纹理位置等的数组,让D3D9去自动生成多边形内部每个像素的信息。为了和以后的vertex shader相区别,我们现在谈论的都是固定功能的顶点处理( Fixed-Function )。 上面一段话似
2006-09-04 21:21:00
2653
原创 DirectX SDK 2006学习笔记1——框架
Copyright © MikeFeng QQ: 76848502 友情提醒:所谓的框架是指SDK目录下/Samples/C++/Common路径下的DXUT系列函数包装。学习框架的前提是必须有足够的Windows API,GUI编程经验,必须熟悉Windows的消息机制,回调机制,最好有万行左右的C/C++编程经验。MFC在这里没有任何用处。另外我觉得最好在看程序之前对于D3D的所
2006-09-01 17:35:00
3753
5
转载 Linux之全系统备份恢复
不要让你熬更守夜千辛万苦安装配置好的Linux系统瞬间随着你的心情烟消云散,记得在你心情最好的时刻做好备份,以便在你雨后晴天之时恢复之用!嘿嘿,当然解压安装也绝对是最好的安装方式,诸多好处诸多享受啊!备份1、准备一张Live CD用来启动,越小越快越好,推荐CDlinux,knoppix、ubuntu或者Gentoo的Live CD也不错。2、启动起来之后加载你的Linux分区,如果有单独的b
2006-08-23 17:20:00
2642
翻译 D3D文档——状态和状态块
网上搜了一下,发现没有状态块的介绍,因此用自己拙劣的英文水平翻译了一下,欢迎指正。 Direct3D设备使用状态来设定所有流水线处理。通过设定纹理寻址和过滤模式,状态可以控制纹理。纹理状态(Texture states)可以用来控制多纹理如何互相被组织和混合。渲染状态可以控制大多数的流水线状态。Microsoft® Direct3D®设备是一个状态机。应用程序设置光照、渲染和变换模块的状
2006-08-22 18:34:00
3882
1
转载 Windows网络编程
第一章 序言 我写这个专题的目的,一方面是为了通过对网络编程再一次系统的总结,提高自己的网络编程水平,特别是Windows下的网络编程水平。同时,我也希望,能为众多初学网络编程的人提供一点帮助,因为我开始学习网络编程的时候,能找到的资料就很少。当然,花钱可以买到翻译版本的书:) 首先向大家推荐一本很好的参考书,Network Pro
2006-08-22 17:05:00
2903
转载 怎样学习游戏编程
首先是语言方面,这个问题没有太多的选择的余地,基本上只有用C++(现在还在坚持用纯C来写引擎的估计只有卡马克同学了),语言的功底是特别重要的了;大规模项目的编写能力也是很重要的,推荐看大规模C++程序设计>> 软件工程方面,你可能要了解一些单元测试,系统级设计的方法;但是流行的软件方法,比如敏捷,我觉得,如果是你一个人得工程,用处可能不大,但是了解一点总没有坏处.最
2006-08-22 14:55:00
2090
转载 DXUT编程指南.
DXUT设计指南 DXUT是一个建立在Direct3D API之上的,被大部分Direct3D指南和例子所使用的层。 它的目标是创建Direct3D例子、原型、工具,更容易的建立坚固、专业的游戏。· DXUT概观· 初始化DXUT· 使用基于DXUT的程序窗口· 使用DXUT设备·
2006-08-17 19:12:00
5959
1
原创 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
2054
原创 一个winhttp的服务程序
公司的考勤系统有两套,一套是门卡打卡上班,另一套是计算机登陆考勤网站上班。像我这样成天乘公交上班的人,不知道什么时候一堵车就迟到了。因此无聊加无奈,才写了下面的程序。。。。 首先考察一下门卡系统。因为要刷卡才能上班,刷卡数据保存在公司linux服务器上,没啥手脚可以动。于是转向网站考勤系统。这个网站是用jsp写得,于是打算用EffeTech HTTP Sniffer侦查一
2006-05-12 13:27:00
5471
9
转载 Win32的菜单编程
WIN32用户界面设计基础之Menus篇 2003-3-29 13:05:28 YESKY 陈孝强 阅读次数: 4835 一个菜单条总是属于一个窗口,当用户选定一个菜单项后,系统向菜单的父窗口发出消息,如果是普通菜单发送WM_COMMAND消息,如果是系统菜单发送WM_SYSCOMMAND消息。当鼠标悬浮在一个有下级菜单的菜单项上时,系统首先向菜单的父
2006-05-12 10:01:00
9890
1
原创 上海公交线路一览表
线路 站名 时刻表 01路 桃浦公路--上海西站--武宁路--曹杨八村--中山北路--愚园路--延安西路--美丽园--华山路--石门一路--重庆南路--浙江中路--杨家宅--杨家渡--
2006-05-08 10:33:00
12948
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人