Qt
文章平均质量分 71
彩阳
学习DirectX还要靠大家指点指点啊。
展开
-
Ubuntu下安装配置Qt Creator有感
<!--@page {margin:2cm}p.我的样式-western {font-family:"DejaVu Sans",sans-serif; font-size:10pt}p.我的样式-cjk {font-size:10pt}p.我的样式-ctl {font-size:12pt}p {margin-bottom:0.21cm}-->原创 2012-09-25 21:41:23 · 9662 阅读 · 3 评论 -
在QtCreator上使用版本控制系统Git(一)
<!--@page {margin:2cm}p {margin-bottom:0.21cm}-->在QtCreator上使用版本控制系统Git(一)在一篇介绍Git的文章中,作者说版本控制系统是为懒人准备的,它让懒人们比那些善于备份文档的勤劳人拥有更干净的文件系统以及更多的可以活着的时间。对此我深表赞同。同时在现在快节奏的社会中,提高团队合作效率更是团队原创 2012-10-29 17:58:07 · 12650 阅读 · 3 评论 -
在QtCreator上使用版本控制系统Git(三)
<!--@page {margin:2cm}td p {margin-bottom:0cm}p {margin-bottom:0.21cm}-->在QtCreator上使用版本控制系统Git(三)git的强大之处在于能很好的处理多人的协同工作。下面我介绍一下怎样在QtCreator下怎样使用git进行多人的协同工作。我也是最近学会的,有不对的地方原创 2012-11-15 22:39:21 · 4022 阅读 · 3 评论 -
自己编写一个读取TGA文件的类
<!--@page {margin:2cm}pre.cjk {font-family:"DejaVu Sans Condensed",monospace}p {margin-bottom:0.21cm}-->自己编写一个读取TGA文件的类TGA文件,也就是Targa文件,是一种图片的格式,在游戏和绘图领域中用得比较广泛。TGA文件是位图文件,存储着各原创 2012-11-28 22:24:10 · 6455 阅读 · 4 评论 -
在QtCreator上使用版本控制系统Git(二)
<!--@page {margin:2cm}pre.cjk {font-family:"DejaVu Sans Condensed",monospace}p {margin-bottom:0.21cm}-->在QtCreator上使用版本控制系统Git(二)提到版本控制,就不得不提到它的一个重要的功能:分支功能。假如我们制作项目需要一些差异化的版原创 2012-10-31 17:29:33 · 4493 阅读 · 3 评论 -
编写一个Qt支持TGA图像格式的插件
<!--@page {margin:2cm}pre.cjk {font-family:"DejaVu Sans Condensed",monospace}p {margin-bottom:0.21cm}-->编写一个Qt支持TGA图像格式的插件几天前完成了对TGA格式读取的封装,我想是否能够将这个类修改一下,使Qt中的QPixmap能够支持TGA格式原创 2012-11-30 22:30:32 · 3494 阅读 · 0 评论 -
Linux+Qt+OpenGL配置方案
<!--@page {margin:2cm}pre {font-family:"DejaVu Sans Mono",monospace}p {margin-bottom:0.21cm}-->Linux+Qt+OpenGL配置方案早想在Linux下搞开发了,几年前开始研究Linux游戏编程,但是那时候的确没有找到一个好的框架。现在游戏引擎那么多,跨平台原创 2012-09-25 22:36:25 · 6078 阅读 · 0 评论 -
用Qt绘制柱状图
<!--@page {margin:2cm}pre.cjk {font-family:"DejaVu Sans Condensed",monospace}p {margin-bottom:0.21cm}-->用Qt绘制柱状图最近复习已经学习的Qt知识,制作了一个简单的图表显示工具。目前它能够很好地显示柱状图,其效果如下所示:这个柱状图支持原创 2012-11-01 11:17:29 · 13370 阅读 · 6 评论 -
初次尝试Linux下静态编译Qt应用程序
<!--@page {margin:2cm}p {margin-bottom:0.21cm}p.text-body-indent {margin-left:0.5cm}p.我的格式-western {margin-left:0.5cm; font-family:"DejaVu Sans",sans-serif; font-size:10pt}p.我的格式原创 2012-12-04 17:31:09 · 4938 阅读 · 0 评论 -
OpenGL下实现Alpha混合
<!--@page {margin:2cm}pre.cjk {font-family:"DejaVu Sans Condensed",monospace}p {margin-bottom:0.21cm}-->OpenGL下实现Alpha混合有很久都没有使用OpenGL了。一直都只是看书,一旦实践起来就会发现比想象起来困难得多。不过我还是实现了Open原创 2012-12-09 09:44:32 · 4164 阅读 · 6 评论 -
用QtCreator开发OpenGL游戏
<!--@page {margin:2cm}pre.cjk {font-family:"DejaVu Sans Condensed",monospace}p {margin-bottom:0.21cm}-->用QtCreator开发OpenGL游戏自从接触了Linux之后,我就一直想开发跨Windows和Linux的游戏程序。不过以前介绍游戏开发的书原创 2012-12-14 20:51:55 · 13227 阅读 · 1 评论 -
迷宫生成算法和迷宫寻路算法
<!--@page {margin:2cm}pre.cjk {font-family:"DejaVu Sans Condensed",monospace}p {margin-bottom:0.21cm}-->迷宫生成算法和迷宫寻路算法大学二年级的时候,作为对栈这个数据结构的复习,我制作了一个迷宫生成算法的小程序,当时反响十分好,过了几天我又用自己已经原创 2012-12-14 20:57:25 · 35986 阅读 · 11 评论 -
“Qt没有被正确安装,请运行make install““无效的Qt版本”的解决方法
<!--@page {margin:2cm}p {margin-bottom:0.21cm}p.western {font-family:"DejaVu Sans",sans-serif; font-size:10pt}p.cjk {font-size:10pt}p.ctl {font-size:12pt}-->“Qt没有被正确安装,原创 2012-12-16 14:12:57 · 21138 阅读 · 7 评论 -
Qt语言家的使用
这是我在初步研究QtCreator和Qt语言家的基础上写出的一个小教程。共三篇。给需要了解Qt的朋友们。其实写完教程后,我感到Qt实在是非常的方便。如果没有Qt国际化,我们制作的程序要给国外的人非常困难,也不利于程序员和翻译人员的分工。所以说感谢Qt给我们做的这一切!教程截图:教程的下载地址:这里原创 2012-10-21 11:01:47 · 6732 阅读 · 0 评论 -
联合体union在立体几何中的妙用
<!--@page {margin:2cm}pre {font-family:"DejaVu Sans Mono",monospace}p.我的格式-western {font-family:"DejaVu Sans",sans-serif; font-size:10pt}p.我的格式-cjk {font-size:10pt}p.我的格式-ctl {fo原创 2012-12-22 14:35:15 · 2003 阅读 · 0 评论 -
Qt+OpenGL游戏开发的资料
<!--@page {margin:2cm}p {margin-bottom:0.21cm}-->Qt+OpenGL游戏开发的资料从2012年12月29日开始,我终于迎来了大学最后一个寒假。这个寒假还真的很长啊。总共有将近四个多月。在这段时间里,学校要求我们制作毕业设计,并且写出初步的论文。毕业设计还算好,因为我已经做好了前期研究工作。剩下的时间可以很好学习原创 2013-01-06 10:18:36 · 7060 阅读 · 4 评论 -
模仿QtOpenGL例子VowelCube时遇到的三维和Qt绘图引擎QPainter混合问题
<!--@page {margin:2cm}pre {font-family:"DejaVu Sans Mono",monospace}p {margin-bottom:0.21cm}strong {font-style:italic; font-weight:normal}-->模仿QtOpenGL例子VowelCube时遇到的三维和Qt绘原创 2013-01-12 13:03:36 · 7158 阅读 · 1 评论 -
修改VowelCube例子使其正确地显示
<!--@page {margin:2cm}pre {font-family:"DejaVu Sans Mono",monospace}p {margin-bottom:0.21cm}strong {font-style:italic; font-weight:normal}-->修改VowelCube例子使其正确地显示大名鼎鼎的Qt教程原创 2013-01-12 12:48:33 · 2737 阅读 · 0 评论 -
使用Qt多媒体库Phonon库的心得体会
<!--@page {margin:2cm}p {margin-bottom:0.21cm}-->使用Qt多媒体库Phonon库的心得体会首先明确一点是Phonon不是Qt的主线(mainline)项目,它是KDE项目的一部分。所以我们看到它并不带有Q开头。但是这层封装实在是太好了,所以很多介绍Qt的书籍也一并介绍了Phonon库。其次需要了解的是Pho原创 2013-01-19 22:01:39 · 14576 阅读 · 11 评论 -
Qt下实现3DS文件的读入和显示
Qt下实现3DS文件的读入和显示 在实现了glut框架下读入和显示3DS文件成功后,我开始了在Qt这个成熟又有活力的框架下读入和显示3DS文件。(原文出自http://blog.csdn.net/jiangcaiyang123,请转载时注明出处,谢谢。)演示程序下载地址:这里源代码下载地址:这里 在这次移植中,我没有使用自己的三维数学库,而是使用了Qt内置的原创 2013-03-06 10:39:31 · 7599 阅读 · 6 评论 -
Qt游戏开发必备!用QtMultimedia播放Ogg格式音乐
<!--p {margin-bottom:0.21cm; direction:ltr; color:rgb(0,0,0); text-align:justify}p.western {font-family:"Times New Roman",serif; font-size:10pt}p.cjk {font-family:"宋体","SimSun";原创 2013-02-26 14:55:40 · 5431 阅读 · 2 评论 -
一个小程序,让你知道Qt一次能支持按下多少个键(一)
一个小程序,让你知道Qt一次能支持按下多少个键(一)写这一篇日志的目的在于将Qt按键事件系统进行二次封装,制作出符合游戏要求的按键处理,我们知道有时候游戏需要响应多个按键的,这个小程序就是我朝着这方面目标的一个小小的尝试。源代码的下载地址:这里首先是Widget.h头文件,它是窗口类的声明。#ifndef WIDGET_H#define WIDGET_H#原创 2013-03-26 22:47:36 · 4816 阅读 · 3 评论 -
一个小程序,让你知道Qt一次能支持按下多少个键(二)
<!--pre {font-family:"DejaVu Sans Mono",monospace}h1 {margin-bottom:0.21cm}h1.western {font-family:"DejaVu Serif",serif}h1.cjk {font-family:"DejaVu Sans"; font-size:24pt; font-styl原创 2013-03-29 23:19:24 · 4333 阅读 · 1 评论 -
Qt动画框架的学习
Qt动画框架的学习近一年,学习游戏开发遇到了瓶颈,主要是因为游戏中有很多复杂的状态要维护,以前使用的switch–if方法现在看来已经穷途末路了,因此,我开始学习游戏开发更加高级的内容。我觉得还是学习游戏人工智能部分是最迫切的。其实游戏的人工智能不仅仅是人工智能,还包含了游戏的架构方面的知识,尤其是当你面对一个非常复杂的系统时,该如何应对。Qt作为一个优秀的跨平台开源框架,已经有了原创 2013-03-16 12:35:05 · 3873 阅读 · 1 评论 -
使用Qt动画框架设计角色的二维动画(二)
使用Qt动画框架设计角色的二维动画(二)接上次的日志。上次发布demo虽然使用了大量的动画框架、有限状态机框架,但是仍有瑕疵。比如说在用户一直按下按键的时候角色会被“冻”住,但是角色的位置是移动的,这可能是使用QKeyEventTransition的一个副作用吧。在觉察到使用QKeyEventTransition不好使时,我开始着眼研究怎样将Qt按键的状态保存起来并且封装成让其余编码变原创 2013-04-05 20:39:00 · 5365 阅读 · 4 评论 -
人工智能算法在游戏中演示
人工智能算法在游戏中演示人工智能是一个非常具有潜力的分支,顾名思义,它可以通过计算机指令模拟人的行为,在游戏中的人工智能就非常地多样了。对于FPS、TAB、RPG、STG、ADV等游戏,有着不同的人工智能,但都基于几种理论:有限状态机、遗传算法、神经网络等。下面我就采用游戏中最基础也是最常用的人工智能算法来进行演示。我的开发环境是:Windows: WindowsXP(SP3) + M原创 2013-04-06 13:36:06 · 10744 阅读 · 2 评论 -
Qt智能指针和QObject对象树系统(父子系统)结合使用出现的问题
Qt智能指针和QObject对象树系统(父子系统)结合使用出现的问题Qt的智能指针是在Qt4.5的时候提出来的,目的是为了让Qt应用程序能够摆脱硬编码delete的问题,避免的内存泄漏。但是在我编写程序的时候,发现它和QObject对象树系统(父子系统)相结合屡屡出错。这里以日志的形式记录下来,防止别人再出错。Qt的智能指针主要有QSharedPointer和QScopedPointe原创 2013-03-26 22:39:37 · 6899 阅读 · 2 评论 -
Qt5中关于OpenGL部分的学习
一个阶段性的任务完成了,我开始继续学习游戏开发和Qt。因为Qt5的迅猛发展,我开始将自己精力逐渐从Qt4发展到Qt5。在我计算机中已经有很多个Qt版本了:Qt4.8.1、Qt4.8.3、Qt4.8.4、Qt5.0.1、Qt5.0.2。可见Qt5系列的版本正在增多,以后可能会淘汰若干个Qt4.x版本,而只留下一个。Qt5的最大变化之一就是Qt的OpenGL模块。按照Qt的文档中的说法,Qt5原创 2013-04-24 22:53:13 · 9737 阅读 · 4 评论 -
PMD格式模型的读取和显示
PMD格式模型的读取和显示已经五月了,花了超过十天的时间研究终于出成果了,写一篇日志纪念一下。PMD,全称Polygon Model Document,是一种三维模型格式,主要在MikuMikuDance和PMDEditor等中使用。而关于格式的说明就更少了,所以我的研究主要参考itsuhane的mmd库。PMD格式文件也是一种简单二进制文件,由于文件格式规范较为严格,因而文件内的原创 2013-05-08 10:18:47 · 13152 阅读 · 12 评论 -
用Qt动画框架设计飞入-消失特效
用Qt动画框架设计飞入-消失特效Qt动画框架很强大,只要你想得到,它就有可能帮你实现。这一次我将抽取上一个演示程序的部分来进行介绍。这一部分我命名为“飞入 - 消失”特效,主要用在文字的显示方面,从这点上说很像PowerPoint上面特效的一种。还是首先看看我的demo吧。下载地址:这里原创博客,反对未经允许的转载。原博客地址:http://blog.csdn.net/jiangc原创 2013-05-08 11:12:38 · 5501 阅读 · 7 评论 -
浅谈Qt对OpenGL(ES)2.0以及高级OpenGL_API的支持
Qt5相比Qt4有了很大的改变,对OpenGL这一部分支持的力度加大了。如果说Qt5.0对OpenGL这部分的改变还是试验性的,那么Qt5.1中与OpenGL相关的函数和封装则是优化和一些小小的微调。早在Qt5.1还没有发布的时候,国外就有高手发布了Qt5.1对OpenGL支持的相关特性(链接在这里)。原创 2013-07-13 23:30:52 · 10747 阅读 · 0 评论 -
使用Qt和Enginio开发云端程序
Enginio是随着Qt2012年的Qt开发者大会上提出的。目的是让Qt开发者对接目前正在蓬勃发展的云技术。在经过半年的发展后,Enginio已经迎来了第一个Alpha版本(2013年7月5日)。预计Enginio将在Qt5.2的时候成为Qt的一部分。 在认识Enginio之前,我们先来了解一下几种不同的与技术解决方案:IaaS,即Infrastructure as a Service,基础架构即服务,通过互联网提供了数据中心、基础架构硬件和软件资源。IaaS可以提供服务器、操作系统、磁盘存储、数据原创 2013-07-25 11:10:41 · 5221 阅读 · 1 评论 -
OpenGL光照测试
花了大概半个月,研究了OpenGL的光照。请注意是固定管线渲染的光照,如果使用着色器的高手们请飘过。这个程序是通过光照对模型的照射,来研究OpenGL光照的性质。以后可以通过这个程序来构建更加复杂的场景。原创 2013-08-05 14:11:00 · 3110 阅读 · 0 评论 -
浅析OpenGL光照
浅谈OpenGL的光照 之前从来都没有涉及光照的内容,心想只要能通过常规的方法渲染出几何体甚至是模型就可以了,然而没有光照的日子注定是苦涩的,因为仅凭几何体和模型的颜色无法达到真是渲染的效果,在实际中有各种各样的光影响着我们的视觉效果,而OpenGL能够为我们还原现实生活中的光照现象。所以,我还是下决心研究OpenGL的光照了! 为了研究固定管线渲染原创 2013-08-07 13:21:28 · 7075 阅读 · 6 评论 -
使用向量点积来实现将模型绕着中心点旋转
使用向量点积来实现将模型绕着中心点旋转 如何在三维空间中实现模型绕着中心点旋转?这个问题听起来容易,但是经过我的实践,发现其实还是挺困难的。在研究OpenGL和DirectX的初级阶段,我相信这个问题还是挺伤大家的脑筋的。究竟该如何实现这样的功能呢?我想大家可能需要回过头,复习一下我们高中的知识,通过平面解析几何的类比,大家会找到好方法的。原创 2013-08-08 20:12:52 · 4707 阅读 · 0 评论 -
编写基于Qt的GLSL程序需要注意的几点
最近尝试着编写基于Qt和GLSL的小例子,遇到了一些小问题,在这里给大家分享一下,希望大家不要重蹈覆辙。原创 2013-08-25 10:00:29 · 13704 阅读 · 5 评论 -
基于Qt和GLSL的着色器例子
基于Qt和GLSL的着色器例子 我的计算机换成新的了,可以支持OpenGL2.0以及以上的规范,这样我开始正式涉足OpenGL高级的内容了。目前我的OpenGL基础库是Qt,它有完备的功能,以及对OpenGL一层好的封装,所以用它来开发基于OpenGL的应用程序非常合适。下面是我就来介绍一下如何开发基于Qt和GLSL的程序。 GLSL是在OpenGL2.原创 2013-08-25 10:38:36 · 8863 阅读 · 5 评论 -
搭建Qt5.1.0Beta的Android开发环境
搭建Qt5.1.0Beta的Android开发环境最近在投简历的过程中没有什么事,就抽了一个周末研究Qt5.1.0Beta的安卓开发环境该怎么搭建。两天时间过去了,也算是有些小成果吧,在这里给大家分享分享。首先让我们看看Qt5.1.0Beta的新特性。除了一些模块内大大小小的更改外,我们还发现了它可以支持静态编译和安卓和iOS构建目标的支持。静态编译这部分先放在一边,我们来看看Qt5.1.原创 2013-05-27 10:48:18 · 11179 阅读 · 37 评论 -
四元数学习之四元数和矩阵的转换
四元数是一种可以替代矩阵和欧拉角的数学工具。他最初是由William Rowan Hamilton发现的(参考维基百科),它的最大的特点是不满足交换率。也谈一下自己对这一点的体会。在离散数学中有讲到半群、群、环和域的概念,其中环的定义是具有交换率和分配率(详情参考环的数学定义),而域的概念则是在环的基础上加上了交换率。所以说四元数无法满足域的定义,它是除法环的一种。何为除法环?其实很简单,被除数和除数都满足结合律和分配律,但是如果要满足分配律,即被除数和除数交换位置,那么它的结果是不同的(准确地说,如果它们原创 2013-08-17 23:23:28 · 14027 阅读 · 1 评论 -
骨骼动画的研究
10月份排上日程的研究首当其冲的就是骨骼动画了。骨骼动画是三维动画常见的方式,而二维动画则是帧动画,所以需要提高动画的帧率,二维动画需要做的工作比三维动画要多得多,这需要更多插画师多日的辛勤工作,而三维动画中每一帧是计算机自动生成的,所以增加的工作量不是特别的多。 有关骨骼动画的相关知识,可以参见网上的这一篇文章。网络上也有很多国内国外的前辈对骨骼动画研究的成果,这之中既有二维的,也有三维的。我在参考这些研究成果的同时,也开始了自己的研究。原创 2013-10-07 09:22:38 · 3596 阅读 · 3 评论