如何在不使用任何框架或库的情况下在屏幕上绘制图形
How to draw graphics on screen without using any framework or library?
我想手动绘制图形,这意味着不使用任何库或框架工作,如 QT、directX、whindow.h ....就像向屏幕上的每个像素发出命令以在不同时间显示某些特定颜色一样。每个机构都提供了基于这些库或任何名称的教程。我想要的是制作自己的 GUI。据我所知,这将是非常复杂的,难以学习和理解,混乱且非常耗时,但我已经准备好了。我需要一些资源来理解这一点。
是的,我知道C++所以如果我必须使用这种语言会更好,但如果需要,我会学习其他语言,只是我想知道我应该学习哪种语言。
在过去,您可以在没有操作系统/ROM帮助的情况下直接写入视频内存。 今天,在当前的硬件上,您必须通过操作系统才能写入屏幕。 这意味着使用单独的库(如Qt)或使用操作系统功能(windows.h)。 您可以使用 directX 或其他东西并获得对视频内存的更多原始访问权限,但这仍然使用库/框架。
如果你想使用C++和本机Windows API(没有DirectX),你应该使用GDI(Microsoft图形设备接口)+ MFC(Microsoft基础类)这是Windows GUI的经典实现,如果你想要带有着色器的复杂图形,你需要毫不犹豫地使用DirectX/OpenGL。 同时,如果你想要更高的编程框架,你可以使用C#(CSHARP)或Java。
相关文章:
- 在没有太多条件句的情况下,我如何避免被零除
- 为什么在没有显式默认构造函数的情况下,将另一个结构封装在联合中作为成员的结构不能编译
- 在未初始化映射的情况下,将值插入到映射的映射中
- 是默认情况下分配给char数组常量的值
- 为什么我不能在不创建字符串变量的情况下使用函数的字符串输出
- 如何在不产生任何垃圾的情况下获得C中的像素
- 在已经使用Git的情况下减少编译时间
- 为什么在Windows上的VS 2019和Clang 9中"size_t"在没有标题的情况下工作
- 如何在没有信号的情况下从C++执行QML插槽
- 如何在不知道向量大小的情况下输入向量内部的向量?
- 为什么在某些情况下不写入此文件?
- 为什么Mat类的两个对象可以在不重载运算符+的情况下添加
- UE4-如何在给定4个屏幕坐标的情况下缩放纹理或材质
- 如何在不影响原始内容的情况下审查计算机屏幕上的内容
- SDL2:如何在不清除屏幕的情况下渲染
- 如何在不保存文件的情况下制作打印屏幕并将其发送到FTP服务器?我的工作代码将文件保存到HDD
- 如何在不使用任何框架或库的情况下在屏幕上绘制图形
- C++应用程序在没有屏幕输出的情况下执行
- 如何在不删除屏幕图片的情况下,将invalide替换为转到OnDraw的函数
- 如何输出到控制台,并在不清除屏幕和重写所有内容的情况下覆盖文本