https://github.com/asukaminato0721/pyopengl-practise
佛脚
https://github.com/asukaminato0721/pyopengl-practise
Last synced: 6 months ago
JSON representation
佛脚
- Host: GitHub
- URL: https://github.com/asukaminato0721/pyopengl-practise
- Owner: asukaminato0721
- Created: 2020-06-15T17:41:33.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2020-07-04T17:20:51.000Z (over 5 years ago)
- Last Synced: 2025-04-02T12:53:30.856Z (6 months ago)
- Language: Python
- Size: 4.34 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# PyOpenGL-Practise
---
## 起因
这学期学了计算机图形学,结果教材写得无比佶屈聱牙。老师给的工具是 C++ 的 GLUT,98 年停止更新。就抱着试试的心态搜了下 PyOpenGL pdf,发现了这本书。
书里的代码是 Python2.x 的,经过简单修改就可以在 3.x 运行了。里面的 `glFlush()` 函数最好移到循环外面,可以有效提高渲染速度。
---
## 运行书里代码需要
1. 安装 PyOpenGL 库
2. 安装 numpy 库其中 PyOpenGL 库有注意事项。
> 报错:OpenGL.error.NullFunctionError: Attempt to call an undefined function glutInit, check for bool(glutInit) before calling
>
> 原因:貌似是只有 64bit 系统会有这个问题
>
> 方法:下载 64bit 的 PyOpenGL 安装包(原来是 pip install 自动安装的版本不对)
>
> 下载地址:(选择适合自己的版本)http://www.lfd.uci.edu/~gohlke/pythonlibs/#pyopengl
> 下载下来的 whl 文件,用 pip install file_name.whl 进行安装后,问题解决。
>
>(如果有需要,还可以将 PyOpenGL_accelerate 也安装了)
>
> 参考:http://www.cnblogs.com/gamesun/p/5837142.html> https://hansimov.github.io/#PyOpenGL%20%E7%9A%84%E5%87%A0%E4%B8%AA%E9%97%AE%E9%A2%98
由于时间有限,没有把书里的代码全敲一遍,只能看到有用的就练练手了。
---
### 使用体验
Python 的实践体验简直起飞,和 C++ 不是一个级别的。而且基本不需要配置环境。
这书写得很循循善诱,就是扔个程序,然后说:亲,千万别怕,我慢慢解释给你看。一句句拆开来解释。
里面会有:那  改成  会怎么样?这个会在练习题里遇到。练习题也是很友善,说,我们会画 ) 了,那试试画 ),画 ),试试怎么画多个函数
---
### 写在最后
1. 关于标题栏怎么打中文:
https://stackoverflow.com/questions/62264357/how-to-make-pyopengls-title-show-chinese/62372487#62372487
```Python
glutCreateWindow("一二三四".encode("gb2312"))
```2. 右键菜单怎么显示中文
> 别问,问就是不知道
3. 重点篇目
1. 第一章,熟悉 `glVertex2f()` 的使用方法
2. 倒数几章,熟悉右键菜单怎么写(或者直接修改源程序)
3. 第x章,会提供后续使用的模板