回复: Qt+OpenGL做的蕾达显示程序[含源代码]
#26 [yeguoxiong 04-17 15:01]
1、在qt-project.org上下载Qt 5.0.2。
2、安装QT5.0.2
3、下载一个PortableGit工具,用于下载QT3D
4、在PortableGit目录下打开git-bash.bat
5、git clone git://gitorious.org/qt/qt3d.git qt3d 下载QT3D
6、下载Perl,不然编译QT3D缺少perl.exe。
7、下载地址http://strawberry-perl.googlecode.com/files/strawberry-perl-5.16.3.1-64bit.msi
8、 将QT3D放入无中文件的目录中。
9、打开QT命令窗口,进入QT3D目录。
10、设置环境变量,在命令窗口中输入set PATH=C:\Qt\Strawberry\perl\bin;C:\Qt\Qt5.0.2\5.0.2\mingw47_32\bin;C:\Qt\Qt5.0.2\Tools\MinGW\bin
11、qmake qt3d.pro
12、mingw32-make(QT5没有make命令,如果需要,自己可以加)
13、mingw32-make install
#27 [cao542190156 04-18 17:03]
楼主能把做的大体思路说一下吗,求教
#28 [yeguoxiong 04-24 15:57]
引用第4楼orafy于2012-10-29 23:36发表的:
需要Qt5。。。
雷达余晖效果这部分代码是不是去掉了?
#29 [orafy 04-25 21:05]
额,实现PPI余晖是采用片断着色器,就在 plugins/ppiview/ppieffect.frag
uniform sampler2D qt_Texture0;
varying vec4 qt_TexCoord0;
uniform float specialSector;
uniform float cycle;
uniform float decayFactor;
uniform float antennaPosition;
varying vec4 vertexPosition;
uniform mat4 qt_ModelViewProjectionMatrix;
uniform vec2 coordCenter;
void main(void)
{
float angle;
float diff;
float r;
vec2 pos;
pos.x =qt_TexCoord0.s * 2.0 - 1.0;
pos.y = -qt_TexCoord0.t * 2.0 + 1.0;
pos -= coordCenter;
r = sqrt(pos.x*pos.x + pos.y * pos.y);
if (pos.x >= 0.0) {
if (pos.y > 0.0)
angle = degrees(asin(pos.x/r));
else
angle = 180.0 - degrees(asin(pos.x/r));
} else {
if (pos.y > 0.0)
angle = 360.0 - degrees(asin(-pos.x/r));
else
angle = 180.0 + degrees(asin(-pos.x/r));
}
if (angle
#30 [atspace 04-28 10:32]
非常感谢分享资源!