蒙皮骨骼动画 本篇文章为翻译文章,由于此文章 LearnOpenGLCN 没有进行翻译,我这里翻译一下。原文链接: https://learnopengl.com/Guest-Articles/2020/Skeletal-Animation3D动画可以给我们的游戏带来生命。3D世界中的物体,如人类和动物,当他们移动他们的四肢做某些事情,如行走,奔跑和攻击时,感觉更有生机。本教程是关于你期待已久的骨骼动画。我们首先将彻底理解一些概念,然后我们通过使用Assimp库,了解需要使用3D模型动画的数据。我建议你完成这个sag
异地过年,我要用它看春晚!- Qt趣味开发之基于QtAV的电视播放器 今年过年因为疫情的关系,在工作地点过年。家里穷的连个电视都没有,春晚都看不了,怎么办??!!QtAV是一个开源的音视频播放器,支持播放本地文件和网络流媒体。并集成了多种视频渲染方式,使用它的简单的API可以轻松的实现做一个网络电视播放器(我这里在网上找的RTMP的地址)。更多关于QtAV的介绍,可以参考QtAV的github主页:https://github.com/wang-bin/QtAV下面是我基于QtAV做的简易版本的电视播放器:QtAV播放RTMP的代码也很简单:using nam
Qt与OpenGL趣味开发 - 绘制炫酷倒影 我们来用Qt和OpenGL绘制一个倒影,先看一下显示效果:绘制方法比较简单,步骤如下:绘制正常的两个箱子。绘制地板。绘制前,禁止 深度测试 写入;开启 蒙版测试 ,将蒙版测试函数设置为 GL_ALWAYS ,绘制时将蒙版缓冲区写入1。绘制后,开启深度测试写入。绘制倒影的箱子。绘制前,设置模板测试函数,参数为 GL_EQUAL ,表示蒙版缓冲区为1的时候才会通过蒙版测试。绘制时只要把箱子绘制的灰一点,就可以实现了倒影的效果。绘制部分的关键代码如下:// 开启深度测试glEnable(GL_
圣诞节到了!!你的桌面下雪了吗?? - Qt趣味开发之让你的桌面下雪 圣诞节到了,写个桌面下雪的程序庆祝一下。过节也是要有仪式感的!!显示效果如下:具有如下功能:托盘菜单,可以配置、关于作者、退出。可以配置是否下雪、烟花效果,配置雪的浓度和下降的速度。完整代码和可执行程序下载:可执行程序:链接:https://pan.baidu.com/s/1NMod82jHwLsZE944Tl7KSg提取码:ne9u源码下载:链接:https://pan.baidu.com/s/1_Wq7zyG_R24HkJUX9uTXbw提取码:ragy1. 下雪的实现
COM编程入门Part Ⅱ - 深入理解COM服务器[译] 本篇文章为翻译文章,适合像我一样,之前从来没有接触过COM编程的人,如果翻译的有什么不足之处,希望大家多多指出。原文链接:https://www.codeproject.com/Articles/901/Introduction-to-COM-Part-II-Behind-the-Scenes-of-a本篇文章为译文的第二部分,第一部分链接:COM编程入门Part Ⅰ- 什么是COM和如何使用COM [译]下面为译文部分:这是一个面向COM新手程序员的教程,解释了COM服务器的内部原理,以及如
Qt趣味开发之打造一个3D名字渲染小工具 文章目录1. 名字数据生成工具2. OpenGL名字渲染工具3. CPU名字渲染工具(1)投影(2)面消隐算法本篇文章讲介绍三个软件:名字数据生成工具OpenGL名字渲染工具CPU名字渲染工具这三个小东西一共花了我三天时间,接下来分别看一下这是三个软件的显示效果:名字数据生成工具 ,点击Create可以生成名字数据(本人不姓李哈^v^)OpenGL名字渲染工具 , 使用Opengl渲染成3D图像,点击Load加载之前生成的数据CPU名字渲染工具 , 接下来是使用CPU实现的渲染同
COM编程入门Part Ⅰ- 什么是COM和如何使用COM [译] 本篇文章为翻译文章,适合像我一样,之前从来没有接触过COM编程的人,如果翻译的有什么不足之处,希望大家多多指出。原文链接:https://www.codeproject.com/Articles/633/Introduction-to-COM-What-It-Is-and-How-to-Use-It以下为译文部分:文章目录本文的目的介绍COM到底是什么?基本元素的定义使用COM对象创建COM对象删除一个COM对象基本接口 - IUnknown密切关注 - 字符串处理WideCharToMultiBy
基于QGraphicsView的简易画板EasyCanvas -- 第二版 EasyCanvas 第二版,第一版的功能可参见:基于QGraphicsView的简易画板EasyCanvas – 第一版第二版 在第一版的基础上增加如下功能:节点树撤销/重做Python脚本动态修改节点属性方案管理1. 节点树具有同步选择节点、删除节点、节点重命名和搜索的功能。节点树使用Qt的Model-View框架实现2. 撤销/重做(Redo/Undo)使用Qt的 QUndoCommand 和 QUndoStack 的实现。快捷键 Ctrl+Z 撤销,Ctrl+Y 重做
Qt与OpenGL编程 - IBO与线框模式 文章目录1. 索引缓冲对象(IBO)(1) 创建IBO(2)设置IBO的数据(3)绘制2. 线框模式1. 索引缓冲对象(IBO)索引缓冲对象(Element Buffer Object, EBO,也叫Index Buffer Object, IBO)。假设我们要绘制得不是三角形,而是四边形,那么我们要写生成得节点组合可能是这样的:GLfloat vertices[] = { // 第一个三角形 0.5f, 0.5f, 0.0f, // 右上角 0.5f, -0.5f, 0
Qt与OpenGL编程 - Hello三角形 OpenGL是一个跨平台的GPU渲染库,Qt对OpenGL做了一部分的封装,可以使我们更加方便的使用OpenGL。关于OpenGL更多的相关学习内容可以参考(比较全和详细的OpenGL教程):LearnOpenglcn文章目录1. 渲染管线2. 标准化设备坐标3. 关于QOpenGLWidget4. VBO(1)创建VBO。(2)为VBO设置顶点属性数据(3)链接顶点属性5. 编写着色器(Shader)(1) 顶点着色器(Vertex Shader)(2)片段着色器(Fragment Shader)(
使用QGraphicsBlurEffect实现图片背景模糊效果 先看一下实现效果:类 QGraphicsBlurEffect 可以实现图像的模糊效果,它的相关接口主要有如下两个:void setBlurHints(QGraphicsBlurEffect::BlurHints hints)void setBlurRadius(qreal blurRadius)setBlurHints 是设置模糊质量的函数,它的参数有如下几种:PerformanceHint 表明渲染性能是最重要的因素,但可能会降低渲染质量。(默认参数)QualityHint 表明渲染
MySQL数据库学习笔记(10)- distinct与in和exists子查询 1. distinct的使用distinct 用于在查询中返回列的唯一不同值(去重复),支持单列或多列。(只能写在SELECT的后面)比如,我们想获取员工表中所有的部门,可以将SQL语句写成如下:SELECT DISTINCT department FROM employee;2. 子查询in如果运算符 in 后面的值是来源于某个查询结果,并非是指定的几个值,这是就需要用到子查询。子查询又称为内部查询或嵌套查询,即在SQL查询的WHERE子句中嵌入查询语句。它的基本形式如下:SELECT c