- 博客(18)
- 资源 (2)
- 收藏
- 关注
原创 一个引擎(3)——跨DLL单例模板
一个引擎系列对于 Input、Timer 等全局统一对象,使用单例模式来管理,但将 AnEngine 转为动态库后,会出现 exe 中调用单例方法会获取一个和 dll 中不同的对象,导致单例对象实际上存在多个,使用各种方案后终于找到原因。单例在单例实现上,模仿以前看过的微软的 HoloToolkit-Unity 中的单例模式,使用了单例模板:template<typename T>class Singleton : public NonCopyable{ friend typ
2020-06-14 00:18:17
1149
原创 腾讯2018IEG提前批实习生面试
实习投递了腾讯的提前批,选择的IEG事业群的游戏开发方向。本周才收到录用函,顺手分享一波面经。一面 40分钟自我介绍介绍一个项目Python的主要缺点虚函数是怎么实现的、缺点构造函数和析构函数前面能不能加virtual关键字vector的扩容、向vector中插入n个数据,扩容了几次?static的作用(局部、全局、成员)深拷贝和浅拷贝的区别进程和线程的区别死锁是什...
2018-04-15 21:58:08
2725
原创 一个引擎(2)
一个引擎上一篇已经成功创建一个窗口,于是我们的工作重心该转回D3D了。运行状态假如我们把D3D有关的内容放到一个类D3DApp中,那么为了完成渲染任务,它需要有以下几个阶段:class D3DApp{public: void OnInit() { // 对象初始化时的代码。 } void OnUpdate() {...
2018-03-05 16:54:53
316
原创 一个引擎(1)
一个引擎这是一个使用C++和DirectX 12编写的简单的游戏引擎。关于DirectX 12的文章已经有很多,此处不再进行介绍。交换链、设备、窗口抛开所有,引擎工作需要在显卡上进行渲染,并将渲染的内容通过交换链呈现在一个窗口上。窗口是Windows系统上一个相当普遍的概念,而交换链是指工作在DX和Windows之间的一个抽象层,负责两者间的交互。DX12由于支持了Multi Ad...
2018-02-27 10:52:43
396
原创 量子编程(Q#)(一)
11号微软宣布发布量子编程语言——Q#,还有其配套的模拟器和开发套件,可以在本地或者云端进行量子编程和模拟运行。环境64 bit WindowsVisual Studio 2017 with UWP development and .Net Desktop development(模拟器运行需要UWP套件和.Net桌面套件的支持)CPU with AVX (Intel AVX...
2017-12-14 00:52:59
5370
3
转载 【转】Kinect尝鲜(3)——轮询模型
作者自转,原文链接:https://segmentfault.com/a/1190000008655329 在《Kinect尝鲜(1)》中提到了Kinect程序的两种模型——事件模型和轮询模型。其中事件模型是通过C#的事件与委托的编程方式,在Kinect采集完成一帧的数据后触发某事件,通过该事件委托的方法完成相关的数据处理。而轮询模型则是将控制权还给应用程序,由应用程序向Kinect主动去“要
2017-12-13 14:37:30
340
原创 通过UWP Bridge和Visual Studio将桌面应用转为UWP应用
环境为Visual Studio 2017,已经安装了Windows通用开发模块。官网(https://docs.microsoft.com/zh-cn/windows/uwp/porting/desktop-to-uwp-packaging-dot-net)对这个介绍很详细了,于是手痒尝试了一番。 如果想转C++或C#工程的话,使用最新版VS还是比较容易的。如图,创建该
2017-11-24 22:53:46
2062
原创 Tensorflow编译和CNTK部署到Android失败有感
环境:Windows 10,CUDA 8 & 9,CuDnn 5 & 6 & 7,Visual Studio 2017,Windows 10 SDK 15063 & 16299,VS平台工具集v140 & v141,Anaconda 4.4(x64) 在Bash on Windows 10上面按照官方教程编译Tensorflow的Linux版本一次成功,编译原因是pip包没有SSE
2017-11-18 19:31:11
480
原创 Kinect尝鲜(2)——骨骼识别
本篇简单介绍了Kinect SDK的骨骼识别。微软还是一家很强悍的公司,替开发者将很多底层部分做好了,我们所做的只是使用SDK封装好的一些方法,就可以快速开发出一些有趣或使用的应用。
2016-11-21 13:38:29
3312
原创 POJ1338 Ugly Numbers
题目大意:规定质因子只有2,3,5的数是Ugly Numbers。对于给定的n,输出第n个Ugly Numbers。(n分析: 可以先求出前1500个Ugly Numbers,然后直接输出即可。因此可以得到所有的Ugly Numbers都是2^a*3^b*5^c,其中a,b,c>=0.直接枚举a,b,c没有规律,所以可以使用队列的数据结构。首先将1压入队列,然后循环:取队列首
2015-10-24 11:57:53
439
原创 NOIP2010 关押罪犯(最大生成树)
描述 S 城现有两座监狱,一共关押着N 名罪犯,编号分别为1~N。他们之间的关系自然也极不和谐。很多罪犯之间甚至积怨已久,如果客观条件具备则随时可能爆发冲突。我们用“怨气值”(一个正整数值)来表示某两名罪犯之间的仇恨程度,怨气值越大,则这两名罪犯之间的积怨越多。如果两名怨气值为c 的罪犯被关押在同一监狱,他们俩之间会发生摩擦,并造成影响力为c 的冲突事件。 每年年末,警察局会将本年内监狱...
2015-09-22 09:45:57
425
原创 tyvj p1004 滑雪
描述 trs喜欢滑雪。他来到了一个滑雪场,这个滑雪场是一个矩形,为了简便,我们用r行c列的矩阵来表示每块地形。为了得到更快的速度,滑行的路线必须向下倾斜。 例如样例中的那个矩形,可以从某个点滑向上下左右四个相邻的点之一。例如24-17-16-1,其实25-24-23…3-2-1更长,事实上这是最长的一条。输入格式输入文件第1行: 两个数字r,c(1第
2015-09-21 23:33:22
1566
1
原创 Graham求凸包。
网上已经有很多关于Graham-scan的资料了。 Graham扫描法的时间复杂度为O(nlogn),是通过维持一个关于候选点的栈来解决凸包问题。输入的每个点都被压入栈一次,其中不在凸包上的点被弹出。当算法终止时,栈中仅包含凸包中的点,并且从栈底到栈顶按逆时针顺序排列。(摘自算法导论) 首先要对输入的点进行排序。排序有两种,一种是极角序,一种是水平序。极角序容易理解
2015-09-08 13:11:07
715
原创 NOIP2010 机器翻译
描述小晨的电脑上安装了一个机器翻译软件,他经常用这个软件来翻译英语文章。这个翻译软件的原理很简单,它只是从头到尾,依次将每个英文单词用对应的中文含义来替换。对于每个英文单词,软件会先在内存中查找这个单词的中文含义,如果内存中有,软件就会用它进行翻译;如果内存中没有,软件就会在外存中的词典内查找,查出单词的中文含义然后翻译,并将这个单词和译义放入内存,以备后续的查找和翻译。假设内
2015-08-29 16:37:04
576
原创 tyvj p1264 艾泽拉斯的激流
描述沿着卡利姆多北方边界延展的破碎的海岸,在世界大分裂之前曾经是暗夜精灵首都艾萨琳的一部分,艾萨拉。恶魔从这个世界被消除,这片土地被撕碎并被大海吞没,剩下的只有曾经雄伟城市的废墟。自那以后,这个岩石交错的岛屿、峭壁悬崖和珊瑚丛生的海洋成为许多传说来源。暗夜精灵们认为这是个被诅咒的地方,连经验最丰富的船长都从这里绕行。这里有巨大的水生物,可怕的暗礁,强大的激流与巨浪。然而传闻这里水下有着惊人的宝...
2015-08-28 17:42:01
529
原创 codevs1993 草地排水
题目描述 在农夫约翰的农场上,每逢下雨,Bessie最喜欢的三叶草地就积聚了一潭水。这意味着草地被水淹没了,并且小草要继续生长还要花相当长一段时间。因此,农夫约翰修建了一套排水系统来使贝茜的草地免除被大水淹没的烦恼(不用担心,雨水会流向附近的一条小溪)。作为一名一流的技师,农夫约翰已经在每条排水沟的一端安上了控制器,这样他可以控制流入排水沟的水流量。农夫约翰...
2015-06-30 21:08:37
491
原创 转圈游戏NOIP2013
数据恐怖,但是找到规律就好办了。#include<iostream>#include<algorithm>#include<cstring>#include<cmath>using namespace std;long long n, m, k, x;long long FastPower(long long x, long long ...
2015-06-26 19:08:14
385
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人