大家好~我开设了“WebGPU光追引擎基础课”的线上课程,从0开始,在课上带领大家现场写代码,使用WebGPU开发基础的光线追踪引擎

课程重点在于基于GPU并行计算,实现BVH构建和遍历

本课程使用自主开发的Meta3D低代码开发平台来开发和共享老师和学生的代码,方便大家自由分享

线上课程资料:

本节课录像回放

扫码加QQ群,获得ppt等资料,与群主交流讨论:

本系列文章为线上课程的复盘,每上完一节课就会同步发布对应的文章

本文为第一节课:课程介绍的复盘文章

本课程系列文章可进入索引查看:

WebGPU光追引擎基础课系列文章索引

为什么要学习本课

详见:WebGPU带来的可能性

教学方式

  • 本课程属于工程实践,偏重于代码实现而不是理论
  • 部分课程的代码由老师实现,给同学讲解
  • 其余课程的代码由同学在老师的引导下,在上课时自己实现

技术栈

  • Typescript

    用于Demo开发
  • Rescript

    用于引擎开发

    Rescript的学习资料为:

    官方文档

课程特色

  • 从0开始
  • 零基础上手学习
  • 实战开发,现场写代码
  • 基于光线追踪
  • 侧重于GPU端实现
  • 代码在公开的Meta3D平台上共享

学员收益

  • 了解WebGPU
  • 学习GPU并行计算
  • 学习BVH实现
  • 了解光线追踪
  • 了解引擎开发
  • 获得公开共享的代码

课程大纲

一、全局纵览

  • 课程介绍
  • 介绍光线投射
  • 使用WebGPU绘制三角形
  • 使用Meta3D实现“绘制三角形”

二、Demo实现

  • 渲染数十万3D物体
  • 渲染百万级2D物体
  • 实现GPU冒泡排序
  • 实现GPU Parallel Reduction
  • 使用Ray Packet优化BVH遍历
  • 实现GPU Prefix Sum
  • 实现GPU基数排序
  • 基于PLOC算法实现GPU构造BVH
  • 实现GPU LOD
  • 实现直接光源采样的路径追踪
  • 优化Shadow Ray遍历BVH
  • 实现完美镜面反射
  • 优化Reflect Ray遍历BVH
  • 加上基于深度学习的降噪

三、引擎开发

  • 封装光追管线
  • 实现Material
  • 封装光追渲染
  • 组合为引擎

四、引擎应用

  • 渲染2D场景
  • 渲染3D场景

相关的学习资源

WebGPU光追引擎基础课:课程介绍的更多相关文章

  1. 如何用WebGPU流畅渲染千万级2D物体:基于光追管线

    大家好~我们已经实现了百万级2D物体的流畅渲染,不过是基于计算管线实现的.本文在它的基础上,改为基于光追管线实现,主要进行了CPU和GPU端内存的优化,成功地将渲染的2D物体数量由4百万提高到了2千万 ...

  2. Fixflow引擎解析(一)(介绍) - Fixflow开源流程引擎介绍

    Fixflow引擎解析(四)(模型) - 通过EMF扩展BPMN2.0元素 Fixflow引擎解析(三)(模型) - 创建EMF模型来读写XML文件 Fixflow引擎解析(二)(模型) - BPMN ...

  3. 优雅智慧女性课程班 - 公开课程 - 课程介绍 - 中国人民大学商学院EDP中心

    优雅智慧女性课程班 - 公开课程 - 课程介绍 - 中国人民大学商学院EDP中心 优雅智慧女性课程班 课程总览 思想睿智成熟,外表美丽自信,气质优雅端庄,是魅力女性所应具备的特性.在当今不确定环境下, ...

  4. DRDS分布式SQL引擎—执行计划介绍

    摘要: 本文着重介绍 DRDS 执行计划中各个操作符的含义,以便用户通过查询计划了解 SQL 执行流程,从而有针对性的调优 SQL. DRDS分布式SQL引擎 — 执行计划介绍 前言 数据库系统中,执 ...

  5. Vue+koa2开发一款全栈小程序(1.课程介绍+2.ES6入门)

    1.课程介绍 1.课程概述 1.做什么? Vue+koa2开发一款全栈小程序 2.哪些功能? 个人中心.图书列表.图书详情.图书评论.个人评论列表 3.技术栈 小程序.Vue.js.koa2.koa- ...

  6. 爬虫--Scrapy框架课程介绍

    Scrapy框架课程介绍: 框架的简介和基础使用 持久化存储 代理和cookie 日志等级和请求传参 CrawlSpider 基于redis的分布式爬虫 一scrapy框架的简介和基础使用 a)    ...

  7. web安全之SQL注入--第一章 课程介绍

    课程介绍1.什么是SQL注入?2.如何寻找SQL注入漏洞?3.如何进行sql注入攻击?4.如何预防sql注入5.课程总结

  8. python入门课程 第一章 课程介绍

    1-1 Python入门课程介绍特点:    优雅.明确.简单适合领域:    web网站和各种网络服务    系统工具和脚本    作为"胶水"语言把其他语言开发的模块包装起来方 ...

  9. 01.课程介绍 & 02.最小可行化产品MVP

    01.课程介绍 02.最小可行化产品MVP 产品开发过程 最小化和可用之间找到一个平衡点

  10. JS--- part6课程介绍 & part5复习

    part6 课程介绍 scroll系列:-----重点,每个属性是什么意思 封装scroll系列的相关的属性,固定导航栏案例---事件浏览器的滚动条事件--能够写出来 封装动画函数---缓动动画--- ...

随机推荐

  1. 【2016】开机出现 system32\config\system,代码:0xc00000e9解决方法

    这是16年刚工作时写的笔记,也带来这里做个记录吧.实际工作这几年里也时不时会遇到,大多数和非正常关机有关系 今天早上,就在刚才,一个同事的电脑开不了机了,开机提示的是system32\config\s ...

  2. 安装服务器提示A debugger has been found running in your system. Please, unload it from memory and restart

    ​ 解决方法:运行msconfig,取消调试模式,重启电脑再安装

  3. 数字孪生与GIS结合,为智慧交通带来的改变

    在当代社会,交通问题已经成为城市发展中的一个重要挑战.交通拥堵.安全隐患.环境污染等问题给人们的出行带来了许多不便和困扰.然而,随着数字孪生技术与地理信息系统(GIS)的融合,我们迎来了智慧交通的新时 ...

  4. python 解析网址信息

    python 解析网址信息 本篇文章主要讲述python 中如何解析一个url的信息. 1: requests获取网页信息 #!/usr/bin/python3 # -*- coding: UTF-8 ...

  5. ElasticSearch之健康状态

    参考Cluster health API. 命令样例,如下: curl -X GET "https://localhost:9200/_cluster/health?wait_for_sta ...

  6. 如何找到 niche 出海细分市场的 IDEA

    先说结论就是:看榜单 Why:为什么看榜单? 大家会问为什么?原因很简单: 熟读唐诗三百首,不会作诗也会吟 不天天看榜单上相关的优秀同行,你想干啥 心法就是下苦功夫坚持,量变引起质变,排行榜天天看 竞 ...

  7. vuepress借助jenkins和svn实现文档自动化更新部署

    前言 有个需求,需要将放在SVN的用vuepress写的文档进行自动化更新和部署,每次有人在本地将写好的md文件更新到svn时候,由jenkins实现自动打包来实现自动更新的功能. docker安装j ...

  8. 中国汽车工业协会 SDV 软件定义汽车服务 API 第三版下载

    开门见山,下载链接: https://files.cnblogs.com/files/tengzijian/SDV_API_Version3_Beta1_公众号:好记性如烂笔头.zip?t=16904 ...

  9. 爬取Discuz!社区的教程标题

    爬取Discuz!社区的教程标题-史上最详细解析(实现分页) 摘要:本文记录了爬取Discuz!社区的教程标题的详细过程,过程清晰 这是O的第一篇博客,如有排版问题请大佬见谅,O非常希望大佬能在评论区 ...

  10. MySQL基础篇:第七章_详解mysql存储过程&函数

    存储过程 含义:一组经过预先编译的sql语句的集合 好处: 1.提高了sql语句的重用性,减少了开发程序员的压力 2.提高了效率 3.减少了传输次数 分类: 1.无返回无参 2.仅仅带in类型,无返回 ...