|
- Public Sub OnAfterDraw(ByVal pViewer As ISceneViewer)
- 'GL.glClear(GL.GL_COLOR_BUFFER_BIT) '黑色背景
- GL.glClear(GL.GL_DEPTH_BUFFER_BIT)
- GL.glLoadIdentity() '重置模型变换矩阵
- GL.glDisable(GL.GL_DEPTH_TEST) '关闭深度测试
- GL.glColor3f(255, 0, 0) '设置粒子颜色
- GL.glBegin(GL.GL_TRIANGLE_STRIP) '绘制三角形带
- For Each mpar As Particle In PAR
- If mpar.active = True Then
- px = mpar.Par3D.x '若粒子激活,返回粒子坐标
- py = mpar.Par3D.y
- ph = mpar.Par3D.z
- GL.glVertex3d(DoTransform(px + 0.5, py + 0.5, ph).x, DoTransform(px + 0.5, py + 0.5, ph).y, DoTransform(px + 0.5, py + 0.5, ph).z)
- GL.glVertex3d(DoTransform(px - 0.5, py + 0.5, ph).x, DoTransform(px - 0.5, py + 0.5, ph).y, DoTransform(px - 0.5, py + 0.5, ph).z)
- GL.glVertex3d(DoTransform(px + 0.5, py - 0.5, ph).x, DoTransform(px + 0.5, py - 0.5, ph).y, DoTransform(px + 0.5, py - 0.5, ph).z)
- GL.glVertex3d(DoTransform(px - 0.5, py - 0.5, ph).x, DoTransform(px - 0.5, py - 0.5, ph).y, DoTransform(px - 0.5, py - 0.5, ph).z)
- mpar.Par3D.x += mpar.xs '移动粒子
- mpar.Par3D.y += mpar.ys
- mpar.Par3D.z = 1
- End If
- GL.glFlush()
- Next
- GL.glEnd()
- 'End If
- End Sub
复制代码 如题,写了段代码,但是老是画不出来,想请大家看下有什么错误。。。
还有,我粒子的Z值怎么能换成在图鞥中对应位置的高程?我想让粒子沿着地形起伏运动。。
跪求指导挖。。。。。
跪求挖。。。。 |
|