1. opengl shader
最近看完了宝书中的高级opengl章节,选了天空盒子及几何着色器shader的实例练习了下。主要复习及重新理解了如下的内容
- 深度测试
- 模板测试
- 通道混合
- 剔除
- 帧缓冲(这个等于opencv图像处理了)
- 天空盒子技术
- 高级GLSL
- 几何着色器
opengl的入门学习暂时告一段落了,今天复习下UML类图,准备设计一个小项目练手,学以致用。
2. UML类图主要的关系(针对c++的实现)
- 关联:另外一个类做为当前类的成员。可以单向和双向。
- 依赖:类中新建另外一个类,或者引用一个类作为参数。类之间的关系是独立的。局部变量、方法的参数或者对静态方法的调用。最好只有单向关系。
- 聚合:是一种强的关联关系,主要看逻辑。
- 组合:是一种强的聚合关系。主要是主体生命周期结束,成员的什么周期也结束。所以析构的时候需要释放成员类对象。
- 泛化:就是一种实例化的继承。
- 实现:接口的实现(c++中通过抽象类表示,此时和泛化实现一样),c#和java有接口。
这6种关系的绘制如下图