草庐IT

2d-point-correspondences

全部标签

c++ - 未聚焦时 Direct2D 窗口变黑

我有一个Direct2D窗口,它在聚焦时画得很好;然而,当焦点移动到另一个窗口(同一个应用程序或另一个)时,整个窗口变黑。我将问题归结为ID2D1HwndRenderTarget::Clear的使用。此功能对我的应用程序至关重要,因为没有它,绘画会变得相当……奇怪。有没有一种方法可以让未聚焦的Direct2D窗口正常绘制(注意:WM_PAINT会像往常一样被调用,Clear也是如此,BeginPaint等都没有错误)提前致谢。 最佳答案 来自MSDN,HandlingDeviceLossWhileyourprogramisrunni

c++ - 使用 Windows API 和 C++ 进行 2D(或 3D)图形编程?

我即将开始我的大学类(class)单元项目。我希望用C++制作有点像小行星的复古2D游戏。我可以使用SFML之类的东西来做到这一点,这看起来肯定是合乎逻辑的事情。但是我不能使用SFML,因为这些库在Windows上默认不可用。要求是我的C++代码必须复制并粘贴到任何WindowsPC(已安装VisualStudio),然后从VisualStudio编译/运行。我以前从未使用过WindowsAPI,但我觉得我可以使用它打开一个窗口并在窗口中绘制一些二维图形。我对么?基本上这就是我需要做的所有事情:打开一个窗口,然后在上面画一些线。这不是“你能帮我做作业吗”类型的问题。如果这是我需要的工具

windows - Cocos2d-x键盘实现

我正在使用cocos2d-x为windows、mac和linux制作游戏我想在我的游戏中使用键盘,但没有官方的键盘实现cocos2d-x3.0alpha。我阅读了很多关于键盘实现的论坛帖子,并且看到了一些自定义的cocos2d-x分支,但我已经修改了我的cocos2d-x,所以我需要将代码放在CCDirector或其他类中。有人可以给我关于如何让它工作的代码吗?(不是我想要的代码可以在上述所有平台上运行的项目)谢谢! 最佳答案 所以我让它工作了我还制作了一个教程,您可以在这里查看:http://www.cocos2d-x.org/f

c++ - 在 Direct2D 中绘制部分图像

由于GDI+相当(可笑)慢,我决定迁移到Direct2D。我在许多论坛上查找了很多主题(包括thisone),但没有成功(这也可能是由于已经很晚的事实造成的)并且Direct2D文档仍然非常薄(并且令人困惑,至少对我而言).无论如何,我有一个在Direct2D中打开的.PNG并且只想每20毫秒绘制一次它的一部分。初始化D2D内容ID2D1Factory*d2dFactory=NULL;IWICImagingFactory*d2dWICFactory=NULL;IWICBitmapDecoder*d2dDecoder=NULL;IWICFormatConverter*d2dConvert

c++ - size_t 和 SIZE_T : is there any point to care?

有什么理由不假设SIZE_T是Microsoft的VisualC/C++编译器上size_t的类型定义?Windowsintsafe.h函数确实包括从一个函数到另一个函数的安全转换函数。这仅仅是为了完整性,还是存在静态转换可能无法给出预期结果的任何情况? 最佳答案 如果您的应用程序必须是跨平台的,那么您将只能使用语言中的标准内容,即std::size_t。否则,使用看起来合适的东西。如果您的目标是获得std::size_t类型,那么为什么不直接使用它而不关心平台特定类型呢?顺便说一句,std::size_t保证为最大数组大小提供足够

c++ - 为什么 GetFileAttributesW(L"C :") return FILE_ATTRIBUTE_REPARSE_POINT?

通常,GetFileAttributesW(L"C:")返回0x10(FILE_ATTRIBUTE_DIRECTORY),这是合理的。在某些情况下,GetFileAttributesW(L"C:")将返回0x2416(FILE_ATTRIBUTE_DIRECTORY|FILE_ATTRIBUTE_REPARSE_POINT|FILE_ATTRIBUTE_NOT_CONTENT_INDEXED)我想知道是什么让它发生以及如何摆脱它。这个问题使得boost::filesystem::canonical无法工作。你有什么主意吗? 最佳答案

c - DLL 函数未导出 : Unable to find an entry point named TestFunc

我正忙于了解一点点C/C++,并与C#互操作。我已经检查了几个创建简单的Win32DLL并从C#使用它的示例,但是当我尝试调用我的DLL时,我收到运行时错误:“无法找到名为TestFunc的入口点”。我的DLL看起来像这样,我从一个Win32DLL项目创建它,带有空项目选项:标题:__declspec(dllexport)intTestFunc(char*,char*,char*);代码文件:#include"stdafx.h"#include"TestLib.h"__declspec(dllexport)intTestFunc(char*arg1,char*arg2,char*arg

windows - 是否有任何性能测试可用于 Direct2D?

我对图元性能(CAD、GIS等)特别感兴趣,但与GDI/GDI+的任何速度比较都会非常有趣。 最佳答案 为什么不直接输入一些代码来输出测试运行的时间,然后你就可以比较各种方法的性能。 关于windows-是否有任何性能测试可用于Direct2D?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/827298/

windows - 从哪里开始使用 Direct2d?

有兴趣学习Direct2d来创建Windows8应用程序,但经过2小时的研究后,我完全感到困惑。像这样的示例(CreatingaSimpleDirect2DApplication)似乎假设您知道什么是HWND和HRESULT,以及WindowsAPI的一般工作方式。我的问题是:您是否需要了解WinAPI、COM、OLE和所有其他Windows内容才能很好地掌握Direct2d/3d?所有其他准系统教程都假设您了解所有这些东西,而我真的不知道从哪里开始。VS2012中的启动D2D项目为您提供了一堆文件,但没有main或WinMain...这个程序是如何启动的?

c++ - 检索要通过网络发送的 ID3D11Texture2D 数据

我正在修改桌面复制api示例kindlyprovidedbyMicrosoft捕获屏幕并通过网络将更新发送到我的应用程序。我知道如何实际发送数据;我的问题是从ID3D11Texture2D对象获取数据。ID3D11Texture2D*m_AcquiredDesktopImage;IDXGIResource*desktopResource=nullptr;DXGI_OUTDUPL_FRAME_INFOFrameInfo;//GetnewframeHRESULThr=m_DeskDupl->AcquireNextFrame(500,&FrameInfo,&desktopResource);