ALIEN - สำรวจโลกของสิ่งมีชีวิตเทียม
⚡ คุณสมบัติหลัก
เอนจินฟิสิกส์และกราฟิก
- จำลองกลศาสตร์วัตถุอ่อนและวัตถุแข็ง ของไหล การกระจายความร้อน ความเสียหาย การยึดเกาะ และอื่น ๆ โดยใช้อนุภาค
- โต้ตอบกับการจำลองที่กำลังทำงานอยู่ได้แบบเรียลไทม์
- การจำลองทำงานทั้งหมดบน GPU ผ่าน CUDA
- เรนเดอร์และทำ post-processing ผ่าน OpenGL โดยใช้ CUDA-OpenGL interoperability
การขยายเอนจินสิ่งมีชีวิตเทียม
- สิ่งมีชีวิตหลายเซลล์ถูกจำลองเป็นเครือข่ายของอนุภาค
- ระบบพันธุกรรมและการกำหนดองค์ประกอบของลูกหลานในระดับเซลล์
- โครงข่ายประสาทสำหรับควบคุมความสามารถขั้นสูง (เช่น เซ็นเซอร์และกล้ามเนื้อ)
- ปรับแต่งประเภทของเซลล์ได้ด้วยการใช้สีที่หลากหลาย
- รองรับพารามิเตอร์การจำลองที่แตกต่างกันตามตำแหน่งในอวกาศ
เครื่องมือแก้ไขที่ครอบคลุม
- กราฟเอดิเตอร์สำหรับจัดการอนุภาคและการเชื่อมต่อ
- เครื่องมือวาดแบบอิสระและแบบเรขาคณิต
- พันธุกรรมเอดิเตอร์สำหรับออกแบบสิ่งมีชีวิตแบบกำหนดเอง
- รองรับการทำงานแบบกลุ่มและการปรับสเกล (ขยาย/ย่อ)
เครือข่าย
- เบราว์เซอร์การจำลองในตัว
- ดาวน์โหลดและอัปโหลดไฟล์การจำลอง
- แนะนำการจำลองด้วยการให้ดาว
❓ เครื่องมือนี้มีประโยชน์อย่างไร
- ตอบสนองความอยากรู้อยากเห็น: เมื่อเครื่องจักรที่จำลองตัวเองได้ปรากฏขึ้นและเปิดใช้งานการกลายพันธุ์ การจำลองก็จะดำเนินทุกอย่างด้วยตัวเอง
- ความสนุก: ใช้เอนจินฟิสิกส์ที่รวดเร็วและสมจริงเพื่อเร่งและทำลายเครื่องจักรนับแสนเครื่องได้
- แนวทางเชิงวิชาการ: ช่วยตอบคำถามพื้นฐานว่า ความซับซ้อนหรือโครงสร้างคล้ายสิ่งมีชีวิตเกิดขึ้นจากองค์ประกอบที่เรียบง่ายได้อย่างไร
- เครื่องมือศิลปะเชิงกำเนิด: วิวัฒนาการคือพลังสร้างสรรค์ที่ก่อให้เกิดรูปร่างและพฤติกรรมใหม่ ๆ
📘 เอกสาร
- เอกสารสำหรับเวอร์ชันหลักก่อนหน้านี้ดูได้ที่ alien-project.gitbook.io/docs
- เวอร์ชันล่าสุดมีเอกสารแบบย่อและคำแนะนำผู้ใช้ผ่านหน้าต่างช่วยเหลือและ tooltip ภายในโปรแกรม
🖥️ ความต้องการขั้นต่ำของระบบ
- ต้องใช้การ์ดจอ Nvidia ที่มี compute capability 6.0 ขึ้นไป
💽 ตัวติดตั้ง
- ตัวติดตั้งสำหรับ Windows: alien-installer.msi (อัปเดต: 2024-08-17)
🔨 วิธี build จากซอร์ส
⌨️ อินเทอร์เฟซบรรทัดคำสั่ง
🔎 การแก้ไขปัญหา
- ตรวจสอบว่าการ์ดจอ NVIDIA ของคุณมี compute capability 6.0 ขึ้นไป
- ติดตั้งไดรเวอร์กราฟิก NVIDIA เวอร์ชันล่าสุด
- ตรวจสอบให้แน่ใจว่าชื่อไดเรกทอรีติดตั้งไม่มีอักขระที่ไม่ใช่ภาษาอังกฤษ
- ตรวจสอบว่า ALIEN มีสิทธิ์เขียนในไดเรกทอรีของตัวเอง
- หากมีการ์ดจอหลายตัว ให้ตรวจสอบว่ามอนิเตอร์หลักเชื่อมต่อกับการ์ดที่รองรับ CUDA
- หากมีทั้งการ์ดจอแบบรวมและแบบแยก ให้ตั้งค่าให้ใช้การ์ดจอประสิทธิภาพสูง
🌌 ภาพหน้าจอ
- พืชพรรณหลากหลายชนิดรอบแหล่งกำเนิดรังสี
- ภาพระยะใกล้ของสิ่งมีชีวิตหลายประเภทที่มองเห็นเครือข่ายเซลล์
- ฝูงหลากหลายแบบที่โจมตีระบบนิเวศ
- พันธุกรรมเอดิเตอร์
🧩 การมีส่วนร่วมกับโปรเจกต์
- สามารถมีส่วนร่วมผ่าน GitHub Issues, Pull requests หรือฟอรัม Discussion
- ช่วยเพิ่มคอนเทนต์ใหม่ สร้างหรือแชร์ไฟล์สื่อ รายงานบั๊ก ขอฟีเจอร์ใหม่ ตั้งคำถาม หรือให้ข้อเสนอแนะได้
- ยินดีรับ Pull requests สำหรับการแก้บั๊ก จัดระเบียบโค้ด ปรับแต่งประสิทธิภาพ หรือการปรับเล็กน้อย
- สำหรับการพัฒนาฟีเจอร์ใหม่ การรีแฟกเตอร์ หรือการเปลี่ยนแปลงใหญ่ จำเป็นต้องหารือล่วงหน้า
💎 เครดิตและการพึ่งพา
- พัฒนาและดูแลรักษาเป็นหลักโดย Christian Heinemann
- ไลบรารีภายนอกที่ใช้: CUDA Toolkit, Dear ImGui, ImPlot, ImFileDialog, boost, Glad, GLFW, glew, stb, cereal, zlib, zstr, OpenSSL, cpp-httplib, googletest, vcpkg, WinReg, CLI11
🧾 ไลเซนส์
- ALIEN อยู่ภายใต้ไลเซนส์ BSD 3-Clause
สรุปโดย GN⁺
- ALIEN เป็นเครื่องมือจำลองสิ่งมีชีวิตเทียมที่ใช้เอนจินอนุภาค 2D บน CUDA เพื่อจำลองวัตถุอ่อนและของไหล
- เป็นเครื่องมือที่ทั้งสนุกและให้ความรู้ โดยผู้ใช้สามารถออกแบบสิ่งมีชีวิตหลากหลายรูปแบบและสังเกตกระบวนการวิวัฒนาการได้
- ช่วยให้เข้าใจเงื่อนไขที่ทำให้ระบบชีวภาพที่ซับซ้อนวิวัฒน์ขึ้นได้
- มีเครื่องมือแก้ไขหลากหลาย เช่น พันธุกรรมเอดิเตอร์ ที่ช่วยให้ผู้ใช้สามารถออกแบบสิ่งมีชีวิตแบบกำหนดเองได้
- จำเป็นต้องใช้การ์ดจอ NVIDIA และควรตรวจสอบไดรเวอร์ล่าสุดรวมถึงปัญหาความเข้ากันได้
1 ความคิดเห็น
ความคิดเห็นบน Hacker News
แหล่งข้อมูลแนะนำสำหรับผู้เริ่มต้น: แนะนำ
https://natureofcode.com/ประสบการณ์กับการจำลอง Alien: รันการจำลอง Alien มาเป็นเวลาหลายเดือน
โปรเจกต์จำลอง Alien: โปรเจกต์นี้น่าทึ่งมาก
ความทรงจำเกี่ยวกับเกม Flash: นึกถึงเกม Flash ที่อนุภาคเล็ก ๆ แต่ละตัวมีพฤติกรรมเฉพาะตัว
แชร์ลิงก์วิดีโอ: หาวิดีโอบน GitHub ได้ยากเลยแชร์ลิงก์หลายอัน
https://www.youtube.com/@alien-project/videoshttps://www.youtube.com/watch?v=qwbMGPkoJmghttps://www.youtube.com/watch?v=w9R6zrdl6jMคำถามเรื่องการเลื่อนมุมมอง: สงสัยว่าต้องเลื่อนมุมมองอย่างไร
ลิงก์เว็บไซต์:
https://alien-project.org/ความเป็นไปได้บน AMD: อาจรันบน AMD ได้ด้วย
https://github.com/chrxh/alien/issues/99ความคล้ายกับ Permutation City: คล้ายกับจุดเริ่มต้นของ Permutation City
การประเมินซอฟต์แวร์: ซอฟต์แวร์นี้มีเสน่ห์ดี