在上文中,讲述了PyOpenGL的基本配置,以及网格,球形的生成,以及基本的漫游.现在利用上一篇的内容,来利用高程图实现一个基本的地形,并且,利用上文中的第三人称漫游,以小球为视角,来在地形上前后左右漫游,能实时检测高度.下面先看下效果图: 二张图,球分别在不同的地方,不同的显示模型,一个是全填充的,一个是线连,可以从中看到一些基本的思路.大致过程分别如下,首先拿到一张高度图,检索其中的高度对应的通道的值,然后用来改变网格的高度.这个过程只需要在初始化时生成就行了,所以我们可以简单的用CPU来完…
这篇相当于是对前三篇的总结,基本效果如下: 在初试PyOpenGL一 (Python+OpenGL)讲解Pyopengl环境搭建,网格,球体,第一与第三人称摄像机的实现.在初试PyOpenGL二 (Python+OpenGL)基本地形生成与高度检测 里以用高程图生成地形以及以球体做三人称漫游.初试PyOpenGL三 (Python+OpenGL)GPGPU基本运算与乒乓技术 里实现了基本的GPGPU运算. 我认为比较完善的GPU粒子系统应该如下,粒子初始化可以放在CPU里,但是相关数据运算首先要…
很早就一直想学Python,看到一些书都有介绍,不管是做为游戏的脚本语言,还是做为开发项目的主要语言都有提及(最主要的CUDA都开始支持Python,CUDA后面一定要学),做为先熟悉一下Python,本文用PyOpenGL实现一些基本的显示效果,一个网格,一个球体,加一个能切换第一与第三人称的摄像机. PyOpenGL是一个用Python实现的多平台的OpenGL的API,为了学习Python与PyOpengl,本文也是用的Python,而不是.net版本的IronPython. 先看一下,相…
这篇GPGPU 概念1: 数组= 纹理 - 文档文章提出的数组与纹理相等让人打开新的眼界与思维,本文在这文基础上,尝试把这部分思想拿来用在VBO粒子系统上. 在前面的文章中,我们把CPU的数据传到GPU后,然后就直接从桢缓冲到显示屏幕上了,那么还能不能把从GPU的数据拿回来放入CPU,然后进行处理.例如最基本的GPGPU编程中,把数组放入GPU运算后返回CPU.以及图片用GPU来加速处理. 和以前把数据从CPU通过相关GLSL,Cg着色器语言传入数据到GPU并进行处理不同,多了个返回数据到CPU…
(Python OpenGL) 原文:http://ogldev.atspace.co.uk/www/tutorial06/tutorial06.html  (英文) 下面是我翻译过来的: 背景 在本教程中,我们开始着眼于各种转换,它们以3D形式呈现对象,并使其能够在屏幕上显示,同时保持场景中的深度错觉.这样做的常用方法是使用矩阵表示每个转换,将它们逐个相乘,然后将顶点位置乘以最终产品.每个教程都将致力于检查一个转换. 在这里,我们看看翻译变换,它负责沿着任意长度和方向的矢量移动对象.假设您想要…
现在有很多二维码的生成工具,在线的,或者安装的软件,都可以进行生成二维码.今天我用Python的qrcode库生成二维码.需要预先安装  Image 库 安装 用pip安装 # pip install Image pip install qrcode 使用源码安装 git clone git@github.com:lincolnloop/python-qrcode.git cd python-qrcode python setup.py install 查看安装信息 pip show qrcod…
python小工具myqr生成动态二维码 (一)安装 (二)使用 (一)安装 命令: pip install myqr 安装完成后,就可以在命令行中输入 myqr 查看下使用帮助: myqr --help (二)使用 参数 可选参数 取值 解释 -v {1,2,3,…,40} 控制边长,范围是1至40,数字越大边长越大 -l {L,M,Q,H} 控制纠错水平,范围是L.M.Q.H,从左到右依次升高 -n output-filename 控制文件名,默认文件名是“ qrcode.png “,格式可…
根据顶点缓存来生成图元(Python OpenGL) 原文(英文链接)http://ogldev.atspace.co.uk/www/tutorial03/tutorial03.html __author__ = "WSX" import numpy as np from OpenGL.GLUT import * from OpenGL.GL import * import ctypes def Draw(): glClear(GL_COLOR_BUFFER_BIT) glEnable…
(Python OpenGL) 原文:http://ogldev.atspace.co.uk/www/tutorial05/tutorial05.html(英文) __author__ = "WSX" import numpy as np from OpenGL.GLUT import * from OpenGL.GL import * import ctypes import math global gScaleLocation Scale = 0.0 #顶点着色器部分 VERTEX…
(Python OpenGL)现在开始我们使用着色器来进行渲染.着色器是目前做3D图形最流行的方式. OpenGL的渲染管线流程: 数据传输到OpenGL—>顶点处理器—>细分着色—>几何处理器—>图元装配—>裁剪器—>光栅器(片段处理器) 详细信息可以参考<OpenGL编程指南> 原书第8版  王锐译   中的P8 -P10 一些Shader的注意: Shader着色器的使用跟C/C++程序的创建过程类似. 1.写一个shader着色器文本并使其在你的程序…