- 博客(24)
- 收藏
- 关注
原创 从零开始物理引擎(五)- 信号机制
本篇主要介绍信号机制,由于窗口与其他模块解耦,整个项目中按键监听从由窗口触发,因此需要一个信号机制。其中关键点在于如何保存这个回调函数,并在调用时传入参数。这里采用的方法是将任意函数指针转为同一类型以方便存储。
2025-03-14 18:34:44
230
原创 从零开始物理引擎(三)-前期准备完成
在拍照时,首先需要被拍照的物体,现在我们已经定义了一个物体。注意,定义物体在“物理世界”中的位置,采用的是矩阵变换,也就是并不是直接定义物体的位置,而是定义物体“局部坐标系”的位置。物理模拟需要物体在一个虚拟的“物理世界”中记录位置,大小,方向,速度等等物理量并进行模拟,如何将“物理世界”中物体借助dx11渲染到屏幕中呢。这里目标点与相机位置的横纵坐标相同,其原因是当前模拟的世界是2维的,如果相机位置与目标位置不同,则相机“观察”到的物体将发生“畸变”,上面那篇文章如果看懂了这里就很好理解了。
2024-10-18 15:30:28
759
原创 从零开始物理引擎(二)-界面逻辑优化
现在不同的形状类可以使用同一组bindable对象了,减少了内存消耗,但是在渲染时,需要将这些对象绑定到渲染管线中,相同的形状绑定的对象又是相同的,这里又可以进行优化,相同类型的对象只进行一次渲染管线的绑定,也就是两个三角形对象共用的bindable对象在渲染时只绑定一次。渲染时遍历map,不同的key表示不同的类型,变换渲染类型时将该类型共用的bindable对象绑定到管线中,之后遍历该类型的每个对象,update主要完成动画计算,bind绑定自身旋转矩阵,最后draw出相应形状。
2024-10-15 16:50:46
982
原创 qt+gxdi+ffmpeg远程控制(九)
本篇介绍根据wasapi捕获音频数据,将捕获到的数据传给ffmpeg编码为aac,与前文捕获屏幕并编码后的h264数据合并存储为mp4文件。
2024-09-05 16:21:13
1058
原创 qt+gxdi+ffmpeg远程控制(八)
之前编码数据是直接从gxdi获取的纹理中复制出来,但是参照obs的渲染模式,编码所需的数据不仅仅是屏幕图像,还可能需要如用户自定义场景(比如屏幕上方会有一些文字),包括鼠标的绘制等。因此,传入编码器的数据应该是经过渲染之后的数据,这里就要用到dx11的离屏渲染。
2024-04-27 14:47:55
255
1
原创 qt+gxdi+ffmpeg远程控制(一)
todesk在实验室被墙了,raylink开始收费了,免费版最多支持30fps。用惯了60帧的远控,突然30帧太不适应了,刚好最近在搞ffmpeg,自己搞一个。
2024-04-11 14:19:55
509
原创 win11实现类似任务栏日期功能_2
简单把功能给实现了,从dx11降到dx9了,因为dx9好用的接口ID3DXFont无了。如果用dx11的话写起来又比较麻烦,以后有时间改成dx11的再完善下结构。
2023-08-16 13:53:18
144
1
原创 win11实现类似任务栏日期功能_1
相信带伙都用过或看过鲁大师或者类似鲁大师这种东西,讲道理不是我care它,鲁大师**都不用。但是有个功能还是比较好的,他会在任务栏实时显示温度之类的资源信息。最近新加了内存,想偶尔看看电脑资源占用,总不能老打开任务管理器吧....
2023-08-09 15:56:28
290
1
原创 hbuilder TODO插件
前端用hbuilder写起来还是挺方便的,但是软件没有TODO的功能,之前想过自己写一个,但是早期版本的插件api文档好多想用的方法查不到,最近看了一下,文档更新的挺全了,就自己写了个TODO的插件主要用到的apionDidSaveTextDocument 在文件保存时回调 let onDidChangeTextDocumentEventDispose = hx.workspace.onDidChangeTextDocument(functio...
2022-03-30 18:59:31
1862
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人