更新:最新课程内容请见 https://yuanming.taichi.graphics/teaching/2020-games201/ 本帖不再更新。

GAMES201线上课程:高级物理引擎实战指南2020

这个六一,我们不见不散! :-)

课程主页:http://games-cn.org/games201/

课件与直播回放:https://forum.taichi.graphics/t/topic/272

课程直播地址: webinar.games-cn.org (直播结束后Bilibili有回放,请点上一个链接)

建议前置课程: 高等数学、Python或任何一门程序设计语言

课程安排: 共10节课,每周一次。2020年6月1日开始,时间为北京时间晚上8:30-9:30。

课程作业: 课程共有五次简单的编码练习和三个开放项目。自愿完成。开放项目可以1-3人组队。

开放项目以同学们自由发挥为主,同学们可以自己将代码分享到 https://forum.taichi.graphics/ 论坛进行讨论,互相切磋。每次我们会选择有代表性的几个项目会在下次上课展示、点评。课程最后会进行最终点评、线上颁奖。

课程大纲(暂定):

【第一讲,6月1日】

导论

– 基于物理的动画简介

– Taichi(太极)编程语言简介

– 课程与作业安排

(开放作业0:编写你自己的任意Taichi程序)

【第二讲,6月8日】

拉格朗日视角(1)

– 弹簧质点系统(Mass-spring systems):你的第一个物理模拟器

– 布料模拟

– 显式与隐式时间积分器(Explicit/implicit time integrators)

– 光滑粒子流体动力学(Smoothed particle hydrodynamics)与基于位置的流体(Position-based fluids)

– 体素化(Voxelization): 从三角网格生成粒子

– 快速邻居搜索(Neighborhood search)

– 刚体模拟简介

【第三讲,6月15日】

拉格朗日视角(2)

– 弱形式(weak form)与拉格朗日有限元模拟入门

– 基于六面体网格(hexahedral grid)的拉格朗日有限元模拟

– 基于四面体网格(tetrahedral mesh)的拉格朗日有限元模拟

– 边界条件处理

– 可逆(invertible)有限元法

– 隐式有限元求解器(Implicit FEM solvers)

– 拓扑优化(Topology optimization)

【第四讲,6月22日】

欧拉视角(1)

– 稳定流体与半拉格朗日输送(Stable fluids and Semi-Lagrangian advection)

– Chorin式压力投影(Chorin-Style projection)

– Staggered网格与零空间(nullspaces)

– Krylov子空间求解器(Krylov-subspace solvers)

– 用无矩阵(Matrix-free)Krylov子空间方法求解泊松方程(Poisson equations)

– 预条件(Preconditioning)

– 几何与代数多重网格方法(multigrid methods)

【第五讲,6月29日】

欧拉视角(2)与大规模物理效果渲染

– 高级输送格式(Advanced advection schemes)

– 有符号距离场与等势面(Signed-distance fields, level sets)

– 用等势面方法实现自由表面(Free-surface)追踪(tracking)

– 自由表面与高阶边界条件处理

– 路径追踪(Path tracing)与球面追踪(Sphere tracing)

– 运动模糊(Motion blur)

– 行军立方体(Marching cubes)表面重建

– 数字微分分析器(Digital differential analyzer,DDA)

– 用数字微分分析器进行光线-粒子求交(DDA ray-particle intersection)

– 体素渲染(Voxel rendering)

– 体积渲染(Volumetric rendering)

(开放作业1:渲染你的模拟结果)

7月6日,空一周,实现开放作业1

7月11日,开放作业1截止,点评

【第六讲,7月13日】

混合欧拉-拉格朗日视角(1)

– 开放作业1点评,公布优秀代码

– 粒子-网格传输(Particle-grid transfers)

– 粒子元胞法(Particle-in-Cell, PIC)

– 流体隐粒子(Fluid Implicit Particles, FLIP)

– 仿射粒子元胞法(Affine Particle-in-Cell, APIC)

– 用FLIP与APIC进行流体模拟

(开放作业2开始,可以使用开放作业1的代码,自由实现一个物理引擎,并完成渲染)

【第七讲,7月20日】

混合欧拉-拉格朗日视角(2)

– 物质点法(Material Point Method, MPM)基础

– 本构模型(Constitutive models)

– 移动最小二乘物质点法(Moving Least Squares MPM, MLS-MPM)

– 物质点法中的拉格朗日力(Lagrangian forces in MPM)

– MPM中的数值断裂(numeric fracture)与连续介质伤害力学(Continuum Damage Mechanics, CDM)

【第八讲,7月27日】

高性能计算与物理引擎

– 现代处理器微结构(processor microarchitectures)

– 内存层级(memory hierarchy)

– 单线程性能调优

– 并行编程与性能调优

– 高性能GPU编程

– MPM的性能优化

【第九讲,8月3日】

物理引擎中的稀疏数据结构与可微编程

– 稀疏数据结构简介

– 传统稀疏数据结构:OpenVDB

– 用稀疏数据结构加速物质点法的模拟

– 稀疏数据结构的调优

– 可微编程与可微物理引擎

– 利用可微编程从势能计算受力

– 利用Checkpointing技巧节约内存

– 实例:优化软体机器人控制器

8月10日空一次,大家完善自己的物理引擎(开放作业2)。

8月15日开放作业2 deadline。

【第十讲,8月17日】

总结

– 课程回顾

– 引擎项目最终点评、评奖

– 基于物理的动画中的未解难题

助教团队

未来课程的顺利进行,离不开助教同学们的鼎力相助。理论组助教负责在论坛答疑、筛选优秀编程作业:

  • 夏一鸣
  • 史雨宸
  • 袁宇杰

技术组助教主要负责与课程相关的Taichi开发与维护:

  • 杨玄达
  • 翟骁
  • 曹亚帝
  • 禹鹏
  • 冯旭东

鸣谢

本课程能够使用Taichi编程语言,很大程度上得益于Taichi社区成员的大力开发。在此感谢Taichi核心开发者们:

  • Ye Kuang (k-ye) (Apple Metal backend)
  • 彭于斌 (archibate) (OpenGL Compute Shader backend)
  • Mingkuan Xu (xumingkuan) (IR optimization & standardization)
  • Kenneth Lozes (KLozes)

[全部Taichi贡献者列表]

Taichi 简体中文文档由 Ark (StephenArk30) 创立,在此感谢核心贡献者:

  • 彭于斌 (archibate)
  • 李丹妮 (isdanni)
  • 王承宸 (rexwangcc)
  • 万健洲 (ArkhamWJZ)

[全部中文文档贡献者列表]

Taichi及其中文文档能够如此快速地成长,离不开大家的热心贡献和付出,感谢大家!

基于mfc的图形学实例_给每一位计算机图形学爱好者的儿童节礼物相关推荐

  1. 计算机图形学_2020图灵奖重磅发布!两位计算机图形学先驱获奖

    刚刚! 国际计算机协会ACM官方公布了2019年度图灵奖的获得者:Patrick M. Hanrahan和Edwin E. Catmull,以表彰他们对3D计算机图形学的贡献,以及这些技术对电影制作和 ...

  2. 中国石油大学计算机图形学第一次在线作业,北京交通大学《计算机图形学》20秋在线作业1-001答案...

    编辑3D文字时,怎样得到能够在三维空间内旋转3D文字的角度控制框?() A.利用"选择"工具单击3D文字 B.利用"交互立体"工具单击3D文字 C.利用&quo ...

  3. 平移计算机图形学代码注释,求代码注释:计算机图形学的OpenGL画四面体。高手来吧。争取每句都注释下。谢谢...

    求代码注释:计算机图形学的OpenGL画四面体.高手来吧.争取每句都注释下.谢谢 答案:3  信息版本:手机版 解决时间 2018-12-20 05:00 已解决 2018-12-20 01:58 求 ...

  4. 中石油计算机图形学第二次在线,石油华东《计算机图形学》2020年秋季学期在线作业(二)...

    试卷总分:100    得分:100 第1题,下列算法用于裁剪二维线段的有(    ). A.字符裁剪 B.中点分割裁剪法 C.逐边裁剪 D.双边裁剪法 正确答案: 第2题,多边形填充时,下述论述错误 ...

  5. 计算机图形学二维图形基本变换实验原理,江苏大学-计算机图形学第三次实验报告-二维图形变换...

    <江苏大学-计算机图形学第三次实验报告-二维图形变换>由会员分享,可在线阅读,更多相关<江苏大学-计算机图形学第三次实验报告-二维图形变换(13页珍藏版)>请在人人文库网上搜索 ...

  6. 西安科技大学计算机图形学课程设计,长方体体的光照效果计算机图形学课程设计...

    <长方体体的光照效果计算机图形学课程设计>由会员分享,可在线阅读,更多相关<长方体体的光照效果计算机图形学课程设计(29页珍藏版)>请在人人文库网上搜索. 1.西安科技大学计算 ...

  7. 基于mfc的图形学实例_前端图形学(二十)——退后!!我要开始进入3D世界了...

    欢迎来到[畅哥聊技术]前端图形学相关技术文章,更多精彩内容持续更新中,敬请关注. 写在前面 先说好,今天所说的3D并不是大家惯性思维说3D就想到了WebGL,那么接下来的文章都是基于Canvas2d来 ...

  8. mfc多线程编程实例_多线程技术的PLC与PC的通讯方式

    点击箭头处"工业之家",选择"关注公众号"! 基于多线程技术的PLC与PC的通讯方式 1.系统构成  推进系统中,PC机选用工控计算机.它是整个控制系统的核心, ...

  9. 基于Ext的开发实例_模拟Windows桌面

    模拟Windows桌面 Ext介绍 Ext是一个强大的js类库,以前是基于雅虎UI,现在已经完全独立了. 主要包括data.widget.form.grid.dd.menu,其中最强大的应该算grid ...

最新文章

  1. # 学号 2017-2018-20172309 《程序设计与数据结构》第十一周学习总结
  2. python语言if语句-Python2 if 条件语句
  3. P1552 [APIO2012]派遣
  4. 学习 sentry 源码整体架构,打造属于自己的前端异常监控SDK
  5. the train of thought of collaborative filtering matrix factarization
  6. 真正优秀的人,都有这3种习惯
  7. 什么原因使飞将军李广到死未能封侯
  8. 如何在自己的网站中嵌入其他网站的页面?
  9. PCIe总线协议概述
  10. 《 两个人的江湖 》
  11. Struts2项目实战 微云盘(五):核心功能实现
  12. b站pink老师JavaScript的PC端网页特效 案例代码——引用animate.js案例
  13. MATLA 复制文件到指定文件夹
  14. c语言如何计算出迭代次数,计算方法——C语言实现——迭代法求解线性方程组...
  15. 我的ROS学习之路——动起来的小海龟
  16. 【JavaScript】相关知识学习笔记
  17. 户外风景拍摄自然风光摄影网站搭建模板
  18. 联想ghost重装系统_联想电脑怎么重装系统的方法
  19. android设备操作(十一)
  20. Kinect-Unity相关

热门文章

  1. 我们在囧途之我要投诉你
  2. https能防重放吗_HTTPS如何防止重放攻击?
  3. 【PaddleNLP-kie】关键信息抽取2:UIE模型做图片信息提取全流程
  4. 带领团队云技术认证小组第一次走出去
  5. Silverlight 2.5D RPG游戏技巧与特效处理:HLSL渲染动画
  6. 基于PHP+MySQL大学生心理健康管理系统的设计与实现
  7. Add an implementation, such as Hibernate Validator, to the classpath
  8. 矩阵的秩 线性相关
  9. PYTHON实现坦克大战游戏
  10. Cordova开发篇