
使用OpenGL,Glut,Glew和Cmake在C ++中进行互动,基于物理的布演示
这是托马斯·雅各布森(Thomas Jakobsen)在高级角色物理学中所描述的技术,GDC 2001中描述的技术。它使用verlet集成和约束满意度的多个迭代,杆,滑块和点约束以及与移动对象的碰撞。 https://www.gpgstudy.com/gpgiki/gdc_2001:_advanced_character_physics
我最近仅在Visual Studio 2019上的Windows上构建了这一点。希望Linux能够正常工作。
该核心代码最初是由2001年或2002年UNC Chapel Hill的研究生撰写的。可能是Paul Rademacher或Mark Harris,但我不确定。在过去的二十年中,我已经松开了它,并决定昨天作为另一个项目的一部分使它运行。
我已经大大改进了代码,修复了几个错误,添加新模式,添加了有效的AABB碰撞对象,大量改进了图形,并将所有常数提高到适合于我的机器上60 fps的级别,2021 Dell XPS 17和NVIDIA RTX 3060。
我只需使用std :: for_each(std :: execution :: par_unseq,...)即可在CPU上平行代码。并行化约束计算会带来很大的不同。
使用Cmake 3.20,Visual Studio 2019,FreeGlut-3.2.2,Glew-2.2.0为我构建。
这也取决于我的dmctools库。这是我过去25年以上我一直在使用和发展的图形工具。从https://github.com/davemc0/dmctools.git中获取它,并将dmctools/放在bodderdemo/附近的目录中。
