计算机图形学底层原理-如何从C++独立编写一个openGL

课程简介

本课程将带领学员不使用任何图形库,实现从0到1的图形学接口封装以及算法讲解,并且带领大家手敲代码,一行一行进行实现。

涵盖了(环境搭建,绘制点,Bresenham算法绘制完美直线,三角形拆分绘制算法,颜色插值算法,图片操作,纹理系统搭建及封装,矩阵操作理论及实践,openGL类似接口封装,3D世界的图形学理论及封装等)

课程目录

01 关于本门课程
课程介绍
02 光栅化理论及实现
Windows窗体构建及分析
创建绘图环境Canvas
实现点的绘制及雪花
直线Brensenham算法推导过程
直线Brensenham算法的实现
直线的颜色运算—彩色直线
三角形绘制—简单扫描线绘制
三角形效率绘制—平底平顶三角形
三角形效率绘制—任意三角形
三角形效率绘制—算法优化及剪裁
03 图片处理及纹理实现
三角形彩色插值
图片读取及显示
图片绘制Alpha测试
图片颜色混合实现
图片透明度设置及玻璃效果
图片简单缩放
图片缩放-二次线性插值理论
图片缩放-二次线性插值实现
UV坐标引入及三角形贴图
UV坐标属性解析
04 图形学状态机接口封装
图形接口状态机理论
状态机信息结构封装
状态机封装直线绘制
状态机封装三角形绘制
学习阶段性总结
线性代数回顾
2D矩阵变换详解
二维矩阵变换实现-by-GLM
05 3D图形学理论及接口封装
3D矩阵变换及摄像机变换详解
3D投影矩阵介绍及详细推导
基础3D变换在MINI接口的实现
3D世界中加入摄像机矩阵的实现
3D世界中加入投影矩阵的实现
3D深度缓存理论及实现
3D状态机封装接口
3D中矩阵栈的PUSH/POP原理解析
3D中矩阵栈的PUSH/POP实现

讲师介绍

赵新政,大连理工大学软件学术硕士研究生,前腾讯天美J1工作室成员,深圳奇境森林科技有限公司,任CTO兼客户总经理,主攻VR游戏以及应用方面。

发表评论

电子邮件地址不会被公开。

联系我们

侵权投诉:nerds@nigaea.com

工作时间:周一至周五,9:30-18:00,节假日休息

QR code