2011年5月18日
摘要: C++著名程序库的比较和学习经验1、C++各大有名库的介绍——C++标准库 2、C++各大有名库的介绍——准标准库Boost 3、C++各大有名库的介绍——GUI 4、C++各大有名库的介绍——网络通信 5、C++各大有名库的介绍——XML6、C++各大有名库的介绍——科学计算 7、C++各大有名库的介绍——游戏开发8、C++各大有名库的介绍——线程9、C++各大有名库的介绍——序列化10、C++各大有名库的介绍——字符串11、C++各大有名库的介绍——综合 12、C++各大有名库的介绍——其他库 13、C++名人的网站 在 C++中,库的地位是非常高的。C++之父 Bjarne Strous 阅读全文
posted @ 2011-05-18 11:07 Bester 阅读(110) 评论(0) 推荐(0) 编辑
  2011年5月17日
摘要: 在已有的边上做Prim#include#include#includeusing namespace std;#define infinity 1000000class Point2D{public: double x,y;};Point2D point[1001];double map[1001][1001];double dis[1001];bool flag[1001];int n,m;int main(){ memset(flag,false,sizeof(flag)); int c,i,j,k; double len; double minone; scanf("%d%d& 阅读全文
posted @ 2011-05-17 01:17 Bester 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 一道递推#includeusing namespace std;__int64 Gcd(__int64 x,__int64 y){if(x==y)return x;if(x==1||y==1)return 1;__int64 r;if(x<y){r=x;x=y;y=r;}while(y!=0){r=x%y;x=y;y=r;}return x;}int main(){char mark[51][101];__int64 sum[51][101];__int64 finalsum;int i,j;int n,n1,m;int colnum;int spoint;int epoint;int 阅读全文
posted @ 2011-05-17 01:13 Bester 阅读(149) 评论(0) 推荐(0) 编辑
  2011年5月16日
摘要: 图论作业,分支限界的旅行商算法。印象和以前写的旅行商分支限界有点不一样,记录下。1:对边的权值排序。2:边入栈(如果满足限界等条件)。3:边退栈(不能再入栈时)。#include #include using namespace std;const int maxNumber=1000000;class Edge{public: int weight; int v1,v2;};bool cmp(Edge e1,Edge e2){ return e1.weight=edgeNum)return; if((edgeNum-k)bestCost)return; while( (countVertex 阅读全文
posted @ 2011-05-16 01:29 Bester 阅读(214) 评论(0) 推荐(0) 编辑
  2011年4月28日
摘要: 本科时候做的东西了,3D点云重构。目前点云在游戏界应该用的挺少,关键算法还不够成熟,运算量非常大。但是在学术界和电影界就挺活跃的,指环王的模型就是用点云生成的。我这个算是个成败参半的项目。最近决定拿出来晒晒,一来从这个项目自己学到很多东西,拿来复习下,二来也从失败的经验学到教训,三来很多公司要作品链接,顺便发上来。从软件工程角度说,无疑非常失败的。一是用了XNA作为3D的API,这是最失败一步。由于XNA是面向开发小游戏的,做3D图形研究非常不适合,一来速度受到限制,二来没有GPU的接口,三来由于其基于C#.net平台,无法利用已有的3D图形开源资源(因为3D绝大部分学术资源都是用C++写的, 阅读全文
posted @ 2011-04-28 11:23 Bester 阅读(2254) 评论(1) 推荐(1) 编辑
  2011年4月27日
摘要: 最近在做一个基于GPU的3D流体模拟。API是Directx11,参考了SDK的2D的Demo,主要GPU并行计算是在Directx11的DirectCompute上完成的。初步已经完成了流体的计算,所有的计算都映射到GPU上去,包括MarchingCube。下一步打算扩展到流体与固体的交互,能够轻易的整合到任何游戏场景中。先放几个截图。 阅读全文
posted @ 2011-04-27 19:29 Bester 阅读(319) 评论(0) 推荐(1) 编辑
  2011年4月13日
摘要: 之前在博文里面说过不能同时将一个resource的shaderresourceview和unorderedaccessview绑定到pipeline。本来想说这种sb行为估计也没人会犯错。但是今天才发现防不胜防,当系统一大起来,算法复杂起来,就会不经意的犯这种错误了。首先看看SDK对同时绑定两个view时(先用CSSetUnorderedAccessView绑定到outputslot,再用CSSetShaderResourceView绑定到inputslot)系统会做的反应的解释:ID3D11DeviceContext::CSSetShaderResourcesIfanoverlappingr 阅读全文
posted @ 2011-04-13 21:09 Bester 阅读(265) 评论(0) 推荐(0) 编辑
  2011年4月8日
摘要: 这个学期在做算法设计课的助教,很多题以前做过就忘记了,重做特地记录下。 《算法导论》chapter7 problem7-6对区间的模糊排序考虑这样一种排序问题,即无法准确的知道等排序的各个数字到底是多大.对于其中的每个数字,我们只知道它落在实轴上的某个区间内.亦即,给定的 n 个形如[ai, bi ]的闭区间,其中ai,≤bi .算法的目标是对这些区间进行模糊排序(fuzzy-sort),亦即,产生各区间的一个排序,使得存在一个 cj ∈[ai, bi ],满足c1≤c2≤…≤cn .a)为n个区间的模糊排序设计一个算法,你的算法应该具有算法的一般结构,它可以快速排序左部端点(即各ai ),. 阅读全文
posted @ 2011-04-08 20:06 Bester 阅读(290) 评论(0) 推荐(1) 编辑
  2011年4月7日
摘要: 在开始学Directx10,11时,有几个常见的概念,或变量如SwapChain,RenderTarget,Depth Buffer都有点似懂非懂,很多时候都是依样画葫芦。写的多了,加上看了SDK和《Intro to d3d10》后,最近突然焕然大悟。记录分享下。1:SwapChain。SwapChain这个概念还是比较容易懂的,主要负责维护几个表面(图像)的集合,当显示器在展示当前帧时,Directx在后台绘制下一帧。怕讲的不够准确清晰,附《Introtod3d10》的详细解释如下:Toavoidflickeringinanimation,itisbesttodrawaframeofanim 阅读全文
posted @ 2011-04-07 21:02 Bester 阅读(306) 评论(0) 推荐(0) 编辑
摘要: 前面说过可以通过map函数来用cpu来读写gpu的计算数据。这几天又看了些文章后,感觉自己前面的理解有点肤浅。再来补充总结下。 首先如果想更新GPU中的resource,1是可以通过map()函数来让CPU读写GPU的数据;2还可以通过ID3D11DeviceContext::CopyResource(),ID3D11DeviceContext::UpdateSubresource()等来直接让GPU写更新它自己的resource。 对于上面几个方法的异同呢,可以参考SDK如下: Each usage dictates a tradeoff between functionality and. 阅读全文
posted @ 2011-04-07 11:43 Bester 阅读(696) 评论(0) 推荐(0) 编辑