- 博客(77)
- 资源 (10)
- 收藏
- 关注
原创 Fuel4d 2.3 发布
【版本编号】:Fuel4D 2.3。【发布日期】:2014年10月20日。【编译环境】:UNICODE、VS2010、x86。【开发环境】:ANSI/UTF-8/UNICODE、VS2005/2008/2010/2012、ADT+NDK、x86、ARM。【字符模式】:ANSI/UTF-8/UNICODE 混合开发。【运行环境】:Windows全系列、安卓2.3及以上手机或平板。【解压软
2014-10-20 13:15:34
2566
原创 Fuel4D 2.1 免费跨平台游戏引擎 现已发布
Fuel4D 2.1 免费跨平台游戏引擎 现已发布开发环境:纯 C/C++,无JAVA、O-C。支持 WIN32、安卓 系统。详情见官方网站:http://www.fuel4d.com或者进Fuel4D官方群:195466766
2013-10-08 09:50:24
3007
原创 高度注意并警惕 placement new [] 的陷阱
按照MSDN上面说明,我们可以认为p和pk所处的地址是相同的,仍而,如果我们把类中的tk成员注掉,执行上面两句结果是p和pk地址相等。但我们把类中的tk成员打开,再执行,p和pk地址却不相等。经调试发现,中间差了4字节,里面存放的刚好就是数组的数量,即4。虽然FFntTexXX是一个类,但其成员没有一个成员有析构函数,所以编译器认为此类可以退化到结构。(当类中有任意一个成员需要析构,如std::vector tk成员,编译器为自动为类FFntTexXX生成析构)或许你又要问了,为
2011-01-24 14:22:00
3032
原创 UNICODE模式下使用rapidxml写xml文件
<br />rapidxml介绍:略<br /><br />也许你下载了rapidxml以后,想在UNICODE模式下使用,但编译时会失败并提示错误,该错误提示如下:<br />error C2440: '<function-style-cast>' : cannot convert from 'std::basic_ostream<_Elem,_Traits>' to 'std::ostream_iterator<_Ty>'<br />既然给了提示,意思是说:给定的参数类型与函数所需类型不正确,那么我们就
2010-12-06 14:46:00
5622
原创 网络游戏防变速齿轮外挂
<br />对于标题所述这个问题,相信每个游戏都遇到过,一般的做法是查找外挂进程杀之,或者发现有外挂程序不让游戏运行,再或者在服务器做防外挂机制,或者其它。当然这些不能说不是办法,它确实可以解决一些问题。<br /> <br />今天我这里有一种新方法,即在客户端检查程序的安全性,防被外挂修改(封包这里不管),这可样可以解决那些在服务器做安全检查的,又担心服务器压力的人。<br /> <br />原理很简单:别人可以改你的游戏内存,那么你自己还可以恢复游戏内存。<br />是的,就这两句话。<br /> <
2010-11-11 20:50:00
9644
原创 今天引进《GPU精粹3》中文版
<br />呵呵,前不久在网上看到《GPU精粹3》中文版开始面世,按耐不住心情,急切去当当网定购了一本,书是从北京发到上海的。我6月5日就下了定单,当天就从北京发货了,结果让我足足等了十一天才收到,刚好于端午节送到家,呵呵,也算是节日礼物。<br /> <br />总体评价此书的内容学术性较高,印刷质量非常好,全书大部分都是彩印,纸张感觉还行,全价180,当当网价151.7元。共计重量2斤左右,也就是90元/斤,哈哈。清华大学出版社。<br /> <br />上两张书的图看看。<br /><br /> <b
2010-06-16 15:47:00
4349
原创 关于CPU的SSE指令集C++代码
仅VS2002及以上才支持SSE指令函数库目前市面上的大多数CPU(Intel、AMD)均支持SSE指令集 使用SSE指令函数需要包含以下头文件#include SSE指令的细节这里不详细说明,这里只说一说批量计算功能但这个批量也仅仅是一次处理4个32位符点数,或者其它,它的一次数据传送量为128位,即16字节。所以在处理大量数组的情况下SSE指令集就比普通汇编指
2010-02-11 23:13:00
4999
原创 一些有效的快速嵌汇编数字计算函数
查询CPU支持属性函数,输入查询码,返回结果到dwRet中,本人原创.关于cpuid指令详见VC2005: ms-help://MS.VSCC.v80/MS.MSDN.v80/MS.VisualStudio.v80.chs/dv_vclang/html/f8c344d3-91bf-405f-8622-cb0e337a6bdc.htminline void DoCPUID(DWORD nTy
2010-02-11 22:49:00
3086
原创 Premake 4.1.2 命令行解释
//-------------------------------------------------------------premake是一款用于自动创建解决方案和项目文件的生成器。支持跨平台间解决方案与项目的设置设置问题。同时还解决了各项目间快速度项目设置/宏定义/目标修改等。目前premake用于FlatFour,ODE,CEGUI,yake,NFS等等项目//----------
2010-01-01 18:18:00
8530
1
原创 代码同步工具CVS/SVN/VS插件 下载地址
几乎所有IT公司和一些非IT公司都会使用代码同步工具.CVS/SVN/TFS/等等很多.通常大家都用的是CVS和SVN两个,也是开源网所流行的,其中SVN占主流 本文件所讲工具和插件版本eclipse 3.5.1 (CVS)Subversion 1.6.x (SVN)Subversive 0.7AnkhSVN 2.1 (2.1.7444) Eclipse
2010-01-01 16:47:00
6309
原创 快速高效的循环std::vector处理,以及std::vector::end函数
今天闲来没事看了一下N久就在我电脑里面的《Effective STL 中文版》。当我看到第43条的时候发现,按上面所讲用:算法替换手工循环。不由得产生了疑问。我记得我以前看vector源代码的时候循环效率最高的是operator[]操作(下标操作)。怎么这里竟然说是算法速度快。 下面先做个测试,代码如下: // 测试类及其调用函数class AAA{pub
2009-07-14 11:30:00
5817
2
原创 讨论标准模板库std::vector的容量/大小及其内存增量
首先解释一下容量/大小的区别: std::vector::capacity() : 指容器的能容纳多少个。 std::vector::size() : 指容器当前已装多少个。明白上面的意思思路就清晰多了。 这几天有同事用vector的时候遇到问题,说是当push_back以后,以前引用了vector的地址就不能访问。造成以前引用的地址不能使用的原因估计大家都知道。主要原因是vector
2009-07-09 12:44:00
9005
1
原创 如何判断一个float/double是不是一个有效的值
前几天游戏程序爆在三角形碰撞测试里面.结果发现是D3DXIntersectTri给我返回了一个float(-1.#INF000).这个值相信大家都不陌生.出现这个值的情况一般是除数为0的情况下,即分母为0.就像这样: float a = .7f; float b = .0f; a /= b; 那么如何判断一个float/double值是不是(-1.#INF
2009-07-09 10:54:00
5042
1
原创 判断值是否是2的幂
判断一个是值是否是2的幂在3D游戏中常用函数以往的判断方法是循环判断位或者直接一直循环除2.这些方法的效率可想而知. 这里我用了一种直接位操作进行,效率看代码就知道.先看代码:bool Is2Power(int n){ if (n == 1) return false; if ((((~n)&(n-1))+1) == n)
2008-12-01 12:33:00
3154
3
原创 让HGE支持中文(4) - 编辑框的实现
阅读此文章前请先确认你已经阅读以下文章:让HGE支持中文(1) - HGE中文显示 (必需) 让HGE支持中文(2) - HGE中文输入 (必需) 让HGE支持中文(3) - HGE字符串处理 (可选)制作要点:遵循 hgeGUI 和 hgeGUIObject 类原则,即所有控件需从 hgeGUIObject 派生。步骤: 1. 重载 hgeGUIObject 的相关函数,
2008-06-27 11:51:00
4615
原创 来预览一下我业余时间正在写的一个游戏(HGE+DX9+3DS+CN及输入+网络)[+MFC]
支持(HGE+DX9+3DS+CN及输入+网络)[+MFC]这些要看自己需不需要前提条件: 在不影响改过的HGE与原始HGE版本没有多的改动情况下进行的.我来解释一下此版本: vista系统下的d3d9.dll和XP及2000下的d3d9.dll是不兼容的.也不向上向下兼容. 3DS的需求,比如你想用3D人物做2D游戏,这个时间就需要了。 CN中文输入呢我已经有了构想,
2008-03-17 10:43:00
6313
6
转载 JPEG 简易文档 V2.15
由于近期在研究一JPEG文件..顺便看到这个..这个是基础..便于进一步学习JPEG..//--------------------以下是转载内容------------------------------------//JPEG 简易文档 V2.15------------------------------ 初稿写于 2000.1.23 最后修订 2003.
2007-07-31 20:31:00
4975
原创 HGE中文显示最新修改 - 070717
今天没事就把HGE中文的(hgeFontCN)修了一下..去除了一些不要的东西..这样使得内存占用小了一大节... 以前用12号字要用15M左右的内存.现在只需要9M了...我直接贴代码了...原理去看我以前发的文章...#pragma once#include "hge.h"#include "hgesprite.h"#include iostream>class
2007-07-17 17:34:00
5500
7
原创 对对碰交换两个点后检查可消对象的算法.
最近两天用HGE写了个对对碰...感觉HGE写2D非常方便...以前我都打算自己封装一个2D的..不过HGE的存在已经使我的想法没有太多意思了..好了.以下代码就是交换两个点以后检查可消对象的方法...目前不是最佳的.数据解释:iObject[w][h] : 就是格子内的对象数据.1->N(N=100) 即是该格的状态,可能是可消,放大,缩小,等状态.由自定义的.W_
2007-07-05 09:39:00
4981
2
原创 让HGE支持网络(1) - HGE网络基础
现在开始写让HGE支持网络的代码了。。。由于目前这部分代码本周刚开始写。。就是天今天。。不过想编译网络的话。你还得在 hge.h 文件中添了一行代码,1:并且要添加在 #include 前面 #define WIN32_LEAN_AND_MEAN#include 因为我们的网络接口将会引用到文件 winsock2.h.这是必须的。。2:至于很多代码都
2007-07-02 13:04:00
2367
1
原创 让HGE支持中文(3) - HGE字符串处理
前面都已经讲了怎么请HGE支持并显示中文..另外呢.我们还需要的一个处理字符串的类..当然也可以不用.所以放到最后拿出来.不过当对于UNICODE与非UNICODE之间切来切去的时候.你不可能一直在那里改代码..这个时候CString就可以用到了.虽然CString可以放到HGE里使用.不过还是自己找一份比较好/CString属于ATL的东西.自然会引入ATL的东西.编
2007-07-02 12:07:00
3109
1
原创 让HGE支持中文(2) - HGE中文输入
狂郁闷ing...昨天写的东西发出来竟然没有文字...重新编写的时候也没有看到文字...哎狂倒啊,浪费我写了那么久.今天还得重来...日..这个优快云怎么搞的噢?算了.直接说怎么搞了,打字累...因为我所说的方法是直接改HGE的内核..所以改动的地方不多,但也不是几行代码就行了..步骤是:1:在 hge.h 中添加结构,用于保存我们的输入数据.st
2007-07-02 11:53:00
5886
4
原创 让HGE支持中文(1) - HGE中文显示
HGE是不款不错的2D引擎渲染引擎...为什么这样说呢...HGE目前没有物理,不过官方已经公布下一个版本将会有物理引擎进入.因此该版本将会是一个非常好的2D引擎代表作..期待ing...不过HGE是不支持中文的...这的确比较麻烦...有没有解决办法呢?答案是肯定的...下面我就有来讲讲怎么让HGE支持中文...我们先来搞定中文的显示,.再来搞定中文的输入.(输
2007-07-02 11:15:00
7431
2
原创 使用HGE时管理资源的问题..
现在用HGE写个游戏玩玩...当我在切换场景的时候发现了个问题...由于我们设置的程序的Enter和Leave成队组成,这样便于切换场景...不过呢..有些时候当到了某一个State(游戏场景),需要载入一些数据...Texture_Load()便成了我们平时要用的,为什么呢,例如,你在做登陆的时候,还没有登陆不可能需要把所有资源载入吧,除非你的资源本来就小,并且载入资是在构造
2007-06-26 18:13:00
2291
原创 将1到9平均分成3组,每组3个数,要求这三组数组成的三位数都是完全平方数,打印这样的三个数
vector int > _N1;bool isDiff3(int x){ int a = x % 10, b = x / 10 % 10,c = x / 100; return a != b && b != c && a != c;}template class T > inline T Taxis(T *A, int iMax){ for (int i =
2007-06-14 17:28:00
4329
原创 打印三角形
#define __str _T("***********************************************************************************************")#define __spc _T("
2007-06-05 10:40:00
1270
原创 想在mangalore+CEGUI中使用stlport会报错的解决
前一阵在用mangalore+CEGUI写游戏的时候...时不是会出现一个错误...错在构造nString或析构nString的时候.... 当前我还以为是我在游戏里混用CEGUI::String和nString的结果....不过改了一阵又改了一会代码...还是有问题...但有时候又不会爆错..最近一次我才发现:原来是STLport不兼容的问题...解决也很方便...只需将
2007-03-02 15:38:00
1531
原创 使用CEGUI的Editbox进行中文输入
刚刚搞CEGUI的时候大体看了一下CEGUI。原以为其不支持中文。而且网上很多人都说不支持。。我也就没有细细看了。当用到Editbox的时候。又不得不用中文。 这时候问题就来了。先是用utf8方式转换达到中文显示的目的。可是中文输入却不行。网上有一种说法是将两个字节链接起来即可。我看了一下编译器设置,当前使用的是多字节模式。就不得不这样做了。不过估计我对C++还不算深。搞了一会
2007-02-13 14:24:00
4337
1
原创 调试程序时总会提示代码过期的处理办法....
最近一段时间在写程序的时候出现了一个怪现象...我的电脑是windows2003-sp1+VS2003+Assist X-10现象表示为:刚刚编译完成代码后,马上按F5进行调行的时候,意思编译器又提示该代码过期.如果不编当然也是可以运行的..但是如果选择编译又没有发现任何代码更改,只是重新链接了一下资源.如果有外部LIB的话还会提示正在链接.然后就正常执行了.起初我还以为是正常现象.但是
2007-02-11 23:15:00
2336
1
原创 开始使用CEGUI
最近在做一个项目,使用nebula2游戏引擎,物理是ODE,UI是用的CEGUI..以前也没有用过CEGUI.这次刚好用了一下,顺便学习学习..而且它是开源并且免费的.难得啊.虽然CEGUI看起来比较复杂..实际上并不是那么难..所有的UI控件都是从CEGUI::Window继承下来..虽然文件说明请看源文件...因此要制作自定义CEGUI控件也是绝对可行的...使用CEG
2007-02-08 14:16:00
2208
原创 在Nebula2中编mangalore时出现dGeomTriMeshGetOpcodeModel未定义的解决方法
今天更新了最新的N2代码和mangalore..编了一下...发现dGeomTriMeshGetOpcodeModel符号未定义...我也不知道该函数到底要做什么...在google上搜了一下...是这样解决的:第一步:打开ode0.7源代码..打开collision_trimesh.h文件在代码#ifdef __cplusplusextern "C" {#endif
2006-11-13 10:26:00
1601
原创 VC调试信息中包含:诺顿是个SB 的解决方法
这两天在调试的时候突然发现很慢。。。后来细看才知道是调试信息里多了许多东西。。。不仅造成编译很慢而且很难看。。。虽然诺顿是个SB。。但是作这个木马的人更加可恨。。。算了。。不说那些了。。总之都是些垃圾人渣。。。解决方法:在我的电脑里面:C:/windows/system32/下会有一个文件:mkjqwc07.dll不知道跟这个文件有没有关系。。没有细细研究。。1:进
2006-10-26 11:48:00
1679
原创 关于C++中函数指针的使用
关于C++中函数指针的使用(包含对typedef用法的讨论) (一)简单的函数指针的应用。//形式1:返回类型(*函数名)(参数表) char (*pFun)(int); char glFun(int a){ return;} void main() { pFun = glFun; (*pFun)(2); } 第一行定义了一个指针变量pFun。首先我们根据前面提到的
2006-10-22 22:51:00
1292
原创 ODE v0.5 用户指南- -!
ODE v0.5 用户指南Russell Smith星期六 2004 年五月 29 日--------------------------------------------------------------------------------1. 介绍ode是一个免费的具有工业品质的用于模拟关节连接的刚体动力学的库。 举例来说,模拟地面上的车辆,有腿的动物, 虚拟环境中的可移动物体,它是快速
2006-09-28 14:47:00
6609
2
原创 X文件的使用(完整)
有很多朋友也许想更加了解X文件,正好,本文将全面的介绍X文件的使用。我想这是一篇纯技术性的文档,我就不加以诗篇歌颂润色了。相信读我的文章,就像啃牙签;)好了,我们板起面孔。首先给你一个完整的印象----传说中的X文件:xof 0302txt 0032 template Header {DWORD major;DWORD minor;DWORD flags;}template Frame
2006-09-11 13:47:00
3323
1
原创 Using an Input Method Editor in a Game
Using an Input Method Editor in a GameBy Jack Lin, Software Design EngineerMicrosoft CorporationDecember 2004IntroductionAn Input Method Editor (IME) is a program that allows easy text entry
2006-08-30 10:53:00
3924
原创 物體的移動
//=====================================/** 等速運動用的間補 @param start [in] 起點 @param end [in] 終點 @param all [in] 起點到終點經過的時間 @param now [in] 現在時間 @return 以now為基礎的間補值*///==============================
2006-08-30 10:51:00
1446
转载 解开 Windows 下的临界区中的代码死锁
摘要临界区是一种防止多个线程同时执行一个特定代码节的机制,这一主题并没有引起太多关注,因而人们未能对其深刻理解。在需要跟踪代码中的多线程处理的性能时,对 Windows 中临界区的深刻理解非常有用。 本文深入研究临界区的原理,以揭示在查找死锁和确认性能问题过程中的有用信息。它还包含一个便利的实用工具程序,可以显示所有临界区及其当前状态。在我们许多年的编程实践中,对于 Win32® 临界区没
2006-08-04 12:51:00
1578
翻译 详解Visual C++ 2005中的突破性变化
Microsoft Visual C++ 2005是微软公司Visual Studio 2005开发套件中的一出重头戏,与前一个版本相比,其革新性的集成开发环境与C++编译器,带来了有许多改变。在本文中,主要讲解程序员在升级程序时,可能会遇到的一些不同之处及变化,而这些变化很可能会使老一点的程序不能通过编译。总之,这些变化绝不是偶然发生的,其背后都有强大的理论依据在支撑,所以,使用Visual C
2006-07-02 20:59:00
1438
1
Visual Assist X_10.9.2108 含破解
2016-08-07
Visual Assist X_10.9.2094 含破解
2016-03-31
Fuel Game Engine(FGE)1.0版游戏引擎
2011-07-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人