
การสาธิตผ้าแบบอินเทอร์แอคทีฟทางกายภาพใน C ++ โดยใช้ OpenGL, GLUT, GLEW และ CMAKE
นี่คือการสาธิตของผ้าที่ใช้ทางกายภาพโดยใช้เทคนิคที่อธิบายโดย Thomas Jakobsen ในฟิสิกส์ตัวละครขั้นสูง GDC 2001 มันใช้การรวม Verlet และการวนซ้ำหลายครั้งของความพึงพอใจของข้อ จำกัด ด้วยก้านตัวเลื่อนและข้อ จำกัด จุดและการชนกับวัตถุที่เคลื่อนที่ https://www.gpgstudy.com/gpgiki/gdc_2001:_advanced_character_physics
ฉันเพิ่งสร้างสิ่งนี้บน Windows บน Visual Studio 2019 เมื่อเร็ว ๆ นี้ หวังว่า Linux จะใช้งานได้
รหัสหลักนี้ถูกเขียนขึ้นโดยนักศึกษาระดับปริญญาตรีที่ UNC Chapel Hill ในปี 2544 หรือ 2545 อาจเป็นพอลเรดเดอร์เกอร์หรือมาร์คแฮร์ริส แต่ฉันไม่แน่ใจ ฉันมีมันกระรอกไปในช่วงยี่สิบปีที่ผ่านมาและตัดสินใจที่จะทำงานเมื่อวานนี้เป็นส่วนหนึ่งของโครงการอื่น
ฉันได้ปรับปรุงรหัสอย่างมากแก้ไขข้อบกพร่องหลายอย่างเพิ่มโหมดใหม่เพิ่มวัตถุการชน AABB ที่ใช้งานได้ปรับปรุงกราฟิกค่อนข้างน้อยและเพิ่มค่าคงที่ทั้งหมดให้อยู่ในระดับที่เหมาะสมสำหรับ 60 fps บนเครื่องของฉัน 2021 Dell XPS 17 ด้วย Nvidia RTX 3060
ฉันขนานรหัสบน CPU เพียงแค่ใช้ std :: for_each (std :: Execution :: par_unseq, ... ) การคำนวณข้อ จำกัด แบบขนานทำให้เกิดความแตกต่างอย่างมาก
สร้างให้ฉันโดยใช้ CMake 3.20, Visual Studio 2019, FreeGlut-3.2.2, Glew-2.2.0
สิ่งนี้ยังขึ้นอยู่กับห้องสมุด DMCTOOLS ของฉัน นี่คือเครื่องมือกราฟิกของฉันที่ฉันใช้และพัฒนาในช่วง 25 ปีที่ผ่านมา คว้ามันจาก https://github.com/davemc0/dmctools.git และวาง dmctools/ในไดเรกทอรีที่อยู่ติดกับ clotddemo/
