社区
工具平台和程序库
帖子详情
Direct2D绘制的图形都会自动根据窗口来进行改变大小
menmories
2016-11-25 10:11:41
Direct2d在绘制一个图形时,就算我指定了固定的大小和位置,发现绘制的矩形和线条的的大小都会跟着窗口大小的改变而改变,有什么方法让它不自定改变呢
...全文
502
2
打赏
收藏
Direct2D绘制的图形都会自动根据窗口来进行改变大小
Direct2d在绘制一个图形时,就算我指定了固定的大小和位置,发现绘制的矩形和线条的的大小都会跟着窗口大小的改变而改变,有什么方法让它不自定改变呢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
qq_26412673
2016-12-10
打赏
举报
回复
有人知道吗,我也急需
赵4老师
2016-11-25
打赏
举报
回复
设置桌面为父窗口?
《精通direct3d
图形
及动画程序设计》附书源代码
示例程序目录及简要说明 第2章 Direct3D程序设计基础 CreateDevice 演示Direct3D程序的基本框架,以及如何创建Direct3D对象和Direct3D设备对象。 第3章 坐标系与基本图元 1、VertexBuffer 演示使用顶点缓冲区对象
绘制
基本图元。 2、BasicPrimitive 演示Direct3D中6种基本图元的
绘制
。通过单击键盘上的“1”~“6”数字键可以在各图元类型之间
进行
切换。 3、IndexBuffer 演示使用顶点缓冲区和索引缓冲区
绘制
基本图元。 4、RenderState 演示顶点着色模式和
图形
填充方式两个基本渲染状态对
图形
显示的影响。通过单击鼠标左键在两个着色模式之间
进行
切换,单击鼠标右键在3种
图形
填充模式之间
进行
切换。 5、AntiAlisa 演示通过多重采样实现
图形
反锯齿效果。程序运行时通过单击鼠标左键可以在启用和禁用
图形
反锯齿效果之间
进行
切换。 6、FullScreen 演示全屏幕显示模式Direct3D程序的开发,主要是创建全屏显示模式的Direct3D设备。因为程序运行在全屏模式下,所以不能像运行在
窗口
模式下那样,通过单击标题栏上的“关闭”按钮来关闭程序,可以通过单击键盘上的“Esc”键退出程序,也可以通过按下“Alt+F4”键退出程序。 第4章 顶点坐标变换 Transfrom 演示三维坐标变换、视区变换,以及简单动画的实现。 第5章 光照与材质 1、SimpleLighting 演示灯光的使用。 2、Multilights 演示同时使用多个光源的效果。一共使用三个光源,分别是漫反射方向光光源、漫反射点光源、镜面反射方向光光源。默认情况下,3个光源全部关闭,按下数字键“1”,启用1号光源;按下数字键“2”,启用2号光源;按下数字键“3”,启用3号光源;按下数字键“4”,3个光源全部启用;按下数字键“0”,3个光源全部关闭。 第6章 纹理映射基础 1、TextureBase 演示使用纹理贴图的基本步骤。 2、TexFilterMode 演示最近点采样和线性纹理过滤方式。在程序运行时,单击键盘上的数字键“1”,使用最近点采样纹理过滤方式,单击键盘上的数字键“2”,则使用线性纹理过滤。 3、MipTexture 演示如何创建和使用多级渐进纹理。程序运行时,单击键盘上的数字键“1”,则使用多级渐进纹理,单击数字键“2”,则使用单级别纹理。通过按下“↓”键和“↑”键可以放大和缩小显示的
图形
,从而可以仔细观察图像的变化,看到多级渐进纹理的效果。 4、TexAddressMode 演示不同纹理寻址模式的效果。程序运行时,单击键盘上的数字键“1”,使用重叠纹理寻址模式,单击键盘上的数字键“2”,使用镜像纹理寻址模式,单击键盘上的数字键“3”,使用夹取纹理寻址模式,单击键盘上的数字键“4” ,使用边框颜色纹理寻址模式。 5、TexRenderState 演示纹理阶段混合状态的使用。 第7章 使用文件模型 1、Mesh 演示.X文件模型的使用,包括从.X文件中加载模型生成网格模型对象,渲染网格模型。 2、StateControlUseMatrix 演示使用矩阵旋转网格模型。程序运行时按下“D”和“A”键可以使飞机模型绕自身z轴旋转;按下“S”和“W”键可以使飞机模型绕x轴旋转;按下“Q”和“E”键可以使飞机模型绕自身y轴旋转;按下“F”和“V”键可以使飞机模型向前和向后运动。 3、StateControlUseQua 演示使用四元数旋转网格模型。程序运行时按下“D”和“A”键可以使飞机模型绕自身z轴旋转;按下“S”和“W”键可以使飞机模型绕x轴旋转;按下“Q”和“E”键可以使飞机模型绕自身y轴旋转;按下“F”和“V”键可以使飞机模型向前和向后运动。 第8章 深度测试与Alpha混合 1、ZTest 演示深度测试的使用。程序运行时按下数字键“1”启用深度测试,按下数字键“0”,则禁用深度测试。 2、AlphaBlend 演示使用Alpha混合实现半透明效果。程序运行时按下数字键“1”,启用Alpha混合,按下数字键“0”,则禁用Alpha混合。 3、VertexAlpha 演示直接为顶点颜色设置Alpha值。程序运行时按下数字键“1”,启用Alpha混合,按下数字键“0”,则禁用Alpha混合。 4、TextureAlpha、 演示通过纹理混合获取Alpha 值。程序运行时按下数字键“1”,启用Alpha混合,按下数字键“0”,则禁用Alpha混合。 5、AlphaTest 演示Alpha测试的使用。程序运行时按下数字键“1”,启用Alpha测试,按下数字键“0”,则禁用Alpha测试。 第9章 雾化 1、VertexFog 演示顶点雾化效果。程序运行时按下数字键“1”,
GameOverlay.Net:使用我们的
Direct2D
1渲染器
绘制
硬件加速的
图形
并创建透明的单击
窗口
GameOverlay.Net 该库提供了一个全面的界面,用于使用我们的
绘制
硬件加速的
图形
并创建透明的单击
窗口
。 NuGet Install-Package GameOverlay.Net 产品特点 支持Windows 7、8、8.1和10 硬件加速 创建透明的叠加
窗口
使叠加层贴紧父
窗口
绘制
文字,直线,矩形,圆形,三角形... 加载和
绘制
图像(.bmp,.png,.jpg) 多线程渲染 已经实现了具有fps限制的渲染循环 有助于 该项目文件是使用Visual Studio 2017生成的。 克隆或下载存储库,然后更新/安装所需的NuGet软件包。 您可以通过报告问题,添加新功
雨滴桌面Rainmeter 4.3 正式版
Rainmeter 4.3 正式版 您可以安全地在现有的 Rainmeter 4.2 或任何早期版本的基础上直接安装最新的 4.3 版本,并且您之前配置的任何设置都不
会
丢失或更改。永远都不需要卸载任何早期版本的 Rainmeter 来使用最新版本。 注意:Rainmeter 4.3 只能在 Microsoft Windows 7 到 10 上运行,不支持 Windows XP 和 Vista。 Rainmeter 4.3 主要更新和变化
Direct2D
和 硬件加速 Rainmeter 4.3 彻底地更换了在 Windows 上所使用的
图形
引擎,从之前使用的 GDI+
图形
引擎更新到了新一代更强大的
Direct2D
(简称 D2D)
图形
引擎。D2D 引擎不仅能为将来的 Rainmeter 新版本的预期功能提供支持,而且还能让用户选择性地对 Rainmeter
进行
硬件加速(简称 HWA)。这意味着可以将原本一直让 CPU 来处理
绘制
的图像和其使用的内存转移到 GPU 和显存上,可以更快更好地渲染及
绘制
。 硬件加速默认为“关闭”状态。这有助于开发者确定 Rainmeter 从 GDI+ 引擎替换到到 D2D 引擎可能出现的一些问题,并隔离出任何与硬件加速有关联的问题。开发者建议您在“设置”对话框中“开启”硬件加速功能。将来的 Rainmeter 新版本中
会
将硬件加速默认值更改为“开启”状态。 硬件加速和英特尔高清集成显卡:目前某些英特尔高清集成显卡芯片在硬件加速上存在问题(通常出现在笔记本电脑上,具体表现在Meter的一些动态效果
绘制
存在残留阴影问题),这是由于英特尔芯片组的驱动程序存在错误所导致的。通常可以通过更新英特尔最新版的
图形
卡驱动程序来解决问题。此问题的详细信息和建议如下:带有硬件加速的英特尔高清显卡绘图问题。 报告
Direct2D
的问题:开发者比较关心您在使用 Rainmeter 4.3 时看到的相比于 Rainmeter 4.2 时不太和谐的东西。目的是为了确保 Rainmeter 从 GDI+ 到 D2D 转变中现有皮肤的向后兼容性。您在 Rainmeter 4.2 中运行的任何皮肤,在 Rainmeter 4.3 中其外观和工作方式应该是完全相同的。请在此论坛区域报告这些问题。 图层遮罩功能 为所有类型的 Meter 添加了一个新的 Container 选项。这个选项允许您将某个 Meter 的内容显示在另一个 Meter 内,令其充当“容器”和“遮罩”。有关详细信息,请参阅文档。 Rainmeter 4.3 功能增强和修复 节点变量:添加了一类新的节点变量: [SomeMeter:XW] 和 [SomeMeter:YH] ,这使您可以相对的在某个 Meter 的末尾紧接一个新 Meter ,而不再需要自己
进行
X=([SomeMeter:X] + [SomeMeter:W]) 一类的计算和设置。 Line Meter:添加了一个新的选项:TransformStroke,其用于定义使用 TransformationMatrix 选项时是否保持线的宽度。 “关于 Rainmeter”
窗口
:更正了“关于 Rainmeter - 皮肤”
窗口
中计量标准(Measure)和变量(Variable)的显示方式,以及使用 Ctrl+C 或鼠标右键复制字符串值时,复制到 Windows 剪贴板的内容与显示的不一致的问题。在“关于 Rainmeter”
窗口
中,所有的字符串值最多支持显示259个字符,如果更长就
会
被截断并附加“...”。不过值的全部内容将完整的复制到剪贴板中。 AudioLevel 插件:修复了其与 Nahimic 音频驱动程序不兼容的问题。 NowPlaying:使用 Lyrics PlayerType 选项更正了一个旧问题。 AccurateText:当 AccurateText=1 且 Meter 的
大小
设置了动态变量时,任何小数值都将被向下舍入或截断。现在这个方式已经
改变
,小数值将被四舍五入到最接近的整数像素值上。 Rainmeter 安装程序:如果之前安装 Rainmeter 时选择过“开机
自动
启动 Rainmeter”选项,则更新时,即便在新版本安装程序中取消选中该复选框,也不
会
将 Rainmeter 快捷方式从系统“启动”文件夹中删除。 Skin Installer:修复了在安装 .rmskin 皮肤包后选择“加载外观和布局”,却通常未能加载的问题。 “Rainmeter 管理器”对话框:修复了加载某个主题时,皮肤信息未能正确更新的问题。 Rainmeter:现在可以使用通知区域托盘图标准确恢复最小化的“Rainmeter 管理器”,“关于 Rainmeter”和
游戏编程--大师技巧
第一部分 Windows编程基础 第一章 无尽之旅 历史一瞥 设计游戏 游戏类型 集思广益 设计文档和情节图板 使游戏具有趣味性 游戏的构成 常规游戏编程指导 使用工具 从准备到完成一使用编译器 实例:FreakOut 总结 第二章 Windows编程模型 Windows的历史 多任务和多线程 按照Microsoft方式编程:匈牙利符号表示法 世界上最简单的Windows程序 真实的Windows应用程序 Windows类 注册Windows类 创建
窗口
事件处理程序 主事件循环 产生一个实时事件循环 打开多个
窗口
总结 第三章 高级Windows编程 使用资源 使用菜单编程
图形
设备接口GDI介绍 处理重要事件 将消息传递给自己 总结 第四章 WindowsGDI、控件和突发奇想 高级GDI
图形
点、线、平面多边形和圆 关于文本和字体 定时的重要性 使用控件 获取信息 T3D游戏控制程序 总结 第二部分 DirectX和2D基础 第五章 DirectX基础和令人生畏的COM DirectX基础 COM:这是Microsoft的工作,还是魔鬼的? 应用DirectXCOM对象 COM的前景 总结 第六章 首次接触:DirectDraw DirectDraw界面 创建DirecDraw对象 和Windows协同工作 进入事件模式 巧妙的色彩 创建一个显示画面 总结 第七章 高级DirectDraw和位图
图形
真彩色模式下工作 双缓冲 动态画面 页面变换 应用
图形
变换器 剪切基础 采用位图 备用画面 位图的放旋转和缩放 离散采样理论 色彩效果 人工色彩变换或者查询表 新的DirectX色彩和Gamma控制接口 GDI和DirectX混合使用 获取DirectDraw的真用 在画面上冲浪 使用调色板 在
窗口
模式下应用DirectDraw 总结 第八章 矢量光栅化及2D变换
绘制
线条 线框多边形 2D平面的变换 矩阵引论 变换 缩放 旋转 填充实心多边形 多边形碰撞检测 定时与同步说解 滚动和视角场景 伪3D等角引擎 T3DLIB1库函数 BOB(变换对象)引擎 总结 第九章 用DirectInput和力反馈
进行
输入 输入循环回顾 DirectInput序曲 力反馈详述 编写通用的输入系统:T3DLIB2CPP 总结 第十章 用DriectSound和DirectMusic演奏乐曲 PC上的声音编程 声音产生的原因 数字与MIDI——发声大,填充少 发声硬件 数字化记录:工具和技术 DirectSound中的麦克风 启动DirectSound 主要与辅助的声音缓冲 播放声音 用DirectSound反馈信息 读取磁盘中数据 DirectMusic:伟大的试验 DirectMusic的结构 启动DirectMusic 加载MIDI段 操作MIDI段 T3DLIB3声音和音乐库 DirectSound API封装 总结 第三部分 编程核心 第十一章 算法、数据结构、内存管理及多线程 数据结构 算法分析 递归 树结构 优化理论 制作演示程序 保存游戏的策略 实现多人游戏 多线程编程技术 总结 第十二章 人工智能在游戏中的运用 人工智能入门 明确AI算法 模式和基础控制脚本 行为状态系统建模 应用软件对存储和学习建模 计划和决策树 导航 高级AI脚本 人工神经网络 遗传算法 模糊逻辑 在游戏中创建真正的AI 小结 第十三章 基本物理建模 物理学基本定律 线性动量的物理性质:守恒和传递 万有引力效果模型 磨擦力 基本的特殊碰撞响应(高级) 解决n-t坐标系统 简单运动学 微粒系统 游戏关键:创建游戏的物理模型 总结
Nehe的OpenGL教程电子书
创建一个OpenGL
窗口
: 在这个教程里,我将教你在Windows环境中创建OpenGL程序.它将显示一个空的OpenGL
窗口
,可以在
窗口
和全屏模式下切换,按ESC退出.它是我们以后应用程序的框架. 理解OpenGL如何工作非常重要,你可以在教程的末尾下载源程序,但我强烈建议你至少读一遍教程,然后再开始编程. 2.你的第一个多边形: 在第一个教程的基础上,我们添加了一个三角形和一个四边形。也许你认为这很简单,但你已经迈出了一大步,要知道任何在OpenGL中
绘制
的模型都
会
被分解为这两种简单的
图形
。 读完了这一课,你
会
学到如何在空间放置模型,并且
会
知道深度缓存的概念。 3.添加颜色: 作为第二课的扩展,我将叫你如何使用颜色。你将理解两种着色模式,在左图中,三角形用的是光滑着色,四边形用的是平面着色。 注意三角形上的颜色是如何混合的。 颜色为OpenGlL 工程增加很多。通过理解平面着色(flat coloring)和平滑着色(smooth coloring),你能显著的改善你的OpenGL Demo的样子。 4.旋转: 在这一课里,我将教
会
你如何旋转三角形和四边形。左图中的三角形沿Y轴旋转,四边形沿着X 轴旋转。 这一章将引入两个变量, rtri 被用来存储三角形的角度, rquad存储四边形的角度。 和容易创建一个多边形组成的场景。让这些物体动起来是整个场景变得生动起来。在后面的课程钟我将教给你如何绕屏幕上的一个点旋转物体,使得物体绕屏幕而不是它的轴转动。 5.3D形体: 既然我们已经领
会
到多边形,方形,色彩和旋转。现在该建立3D物体了。我将使用多边形和矩形c创建3D物体。这次我们将扩展上一章的教程,并且将三角形转换成一个彩色的棱锥,把正方形变为一个实心正方体。棱锥使用混合色,正方体每个面使用一种颜色。在3D空间创建物体可能很费时间,但是所获得的结果(收获)值得这样做。充分发挥你的想象力吧。 6.纹理映射: 你想要它,它现在就在这里了,那就是 ... 纹理映射!!!在这一章我将教
会
你如何将一幅位图(bitmap)映射到正方体的六个面上去。我们将使用第一章的OpenGL代码来创建工程。创建一个空的
窗口
比修改上一课的代码更容易。 你将
会
发现第一章的代码在对于快速创建工程来说是及其有价值的。第一章的代码为你设置好了一切,你所需要做的只是集中精力为效果编程。 7.纹理滤波, 光照和键盘控制: 好的,我希望到现在你已经理解了所有的东西,因为这是一个巨大的教程。我想教给你两个新的方法来过滤(filter)你的纹理,简单的光照,键盘控制并且还可能更多 :) .如果你对到这一课为止你所学的东西并不充满信心,那就回头复习一下。玩一下其它课程的代码,不要操之过急。最好专心把每一课学好,而不是蜻蜓点水,只知道如何把东西做出来。 8.混合 有理由等一下,一个来自很酷的Hypercosm的程序员伙伴问(我)他是否可以写一章关于混合的教程。第八课通常正是讲混合的,所以太巧了。这一章教程扩展了第七章。混合是一项很酷的技术 .. 我希望你们能好好享受这一章教程。这一章的作者是Tom Stanis他在这制作一章上花费了很多精力,所以让他知道你觉得怎么样。混合可不是一个好讲的话题。 9.在3D空间中移动位图: 这一章覆盖了一些你们要求的主题,你想知道如何移动你在3D屏幕空间上创造的物体。你想要知道如何在屏幕上
绘制
一幅位图,并且位图的黑色部分不
会
覆盖它后面的东西。你想要简单的动画,想要更多的混合的应用,这一章将教
会
你所有这些。You'll notice there's no spinning boxes(yaker:很惭愧这一句我不是很明白)。前面的课程覆盖了OpenGL的基础,每一章都基于前面的内容。前面的课程涵盖了基础的OpenGL,每一课都是在前一课的基础上创建的。这一课是前面几课知识的综合,当你学习这课时,请确保你已经掌握了前面几课的知识。 10.加载3D世界,并在其中漫游: 你一直期待的教程来了!这一章友一个叫Lionel Brites的伙伴制作。这一课里你讲学到如何导入一个3D世界。代码仍然使用第一章的,但是,课程页面只是解释了新的部分,包括导入3D场景,在3D世界中移动。下载VC++代码并且在你阅读教程的同时阅读代码。按[B]键控制混合,[F]键控制滤波,[L]键控制光照(但光并不随场景移动),还有[Page UP]和[Page Down]键。我希望你能喜欢Lionel对网站的贡献。我有空的时候我
会
让这个教程更容易学习。 11.旗帜效果
工具平台和程序库
24,854
社区成员
27,343
社区内容
发帖
与我相关
我的任务
工具平台和程序库
C/C++ 工具平台和程序库
复制链接
扫一扫
分享
社区描述
C/C++ 工具平台和程序库
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章