1 คะแนน โดย GN⁺ 27 일 전 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • SolveSpace CAD ที่พัฒนาสำหรับเดสก์ท็อป ถูกพอร์ตให้อยู่ในรูปแบบที่รันบนเบราว์เซอร์ได้ผ่าน emscripten
  • เวอร์ชันเว็บเป็น experimental build ที่อิงจาก development branch ล่าสุด และยังมี ความช้าลงและบั๊ก บางส่วน
  • เมื่อโหลดเสร็จแล้ว จะ ทำงานแบบออฟไลน์ได้โดยไม่ต้องเชื่อมต่อเครือข่าย และสามารถ โฮสต์เองได้โดยตรง เหมือนเว็บไซต์แบบสแตติก
  • ผู้ใช้สามารถอ้างอิงส่วน “building for web (very experimental)” บน GitHub เพื่อ build และ deploy ได้ด้วยตนเอง
  • เป็น โปรเจกต์ทดลองโอเพนซอร์ส ที่แสดงให้เห็นถึง ศักยภาพในการขยายตัวของเอนจิน CAD น้ำหนักเบา ในสภาพแวดล้อมเบราว์เซอร์

SolveSpace เวอร์ชันเว็บแบบทดลอง

  • SolveSpace เป็นโปรแกรมที่เดิมพัฒนาขึ้นเป็น ซอฟต์แวร์ CAD สำหรับเดสก์ท็อป
    • ด้วยการใช้ emscripten ทำให้โค้ดมีขนาดเล็กและมีโครงสร้างที่มีประสิทธิภาพมากพอจะรันบนเบราว์เซอร์ได้
    • เวอร์ชันเว็บยังมี ความช้าลง และ บั๊ก อยู่บ้าง แต่ก็ทำงานได้ดีพอสำหรับโมเดลขนาดเล็ก
  • เวอร์ชันเว็บที่ให้ใช้งานอยู่ในขณะนี้เป็นรูปแบบ experimental ที่ build มาจาก development branch ล่าสุด
    • อาจเกิด ปัญหาหรือข้อผิดพลาด ที่ไม่พบในเวอร์ชันเดสก์ท็อปได้
    • หากพบบั๊ก สามารถรายงานผ่าน official issue tracker บน GitHub ได้
  • เวอร์ชันเว็บนี้ ไม่ต้องพึ่งพาเครือข่ายหลังจากโหลดเสร็จแล้ว
    • เมื่อโหลดเพียงครั้งเดียว ก็ ใช้งานในสถานะออฟไลน์ได้
    • ผู้ใช้สามารถ build และโฮสต์เอง เพื่อแจกจ่ายในลักษณะเดียวกับเว็บไซต์แบบสแตติกได้
  • การโฮสต์เองสามารถทำได้โดยอ้างอิงส่วน “building for web (very experimental)” ใน GitHub repository
    • ไฟล์ที่ build เสร็จแล้วสามารถอัปโหลดขึ้นเซิร์ฟเวอร์และใช้งานได้เหมือนเว็บไซต์แบบสแตติกทั่วไป
  • เวอร์ชันเว็บของ SolveSpace เป็น ความพยายามเชิงทดลอง ที่แสดงให้เห็นถึงความเป็นไปได้ของ โอเพนซอร์ส CAD บนเบราว์เซอร์
    • เป็นตัวอย่างของการขยายการใช้งาน เอนจิน CAD น้ำหนักเบา เพื่อทำฟังก์ชันระดับเดสก์ท็อปในสภาพแวดล้อมเว็บ

1 ความคิดเห็น

 
GN⁺ 27 일 전
ความคิดเห็นจาก Hacker News
  • SolveSpace เป็นเครื่องมือที่ยอดเยี่ยมซึ่งแสดงให้เห็นแนวทางที่มีเอกลักษณ์ต่อ parametric CAD
    แต่ความเร็วในการพัฒนาช้าลงมาก และมีข้อจำกัดที่ทำให้แม้แต่ฟังก์ชันพื้นฐานอย่าง chamfer ก็ยังทำได้ยาก
    ทุกวันนี้ Dune 3D ให้ความรู้สึกเหมือนเป็นผู้สืบทอดทางจิตวิญญาณโดยพฤตินัย

    • เป้าหมายหลักถัดไปก็คือฟีเจอร์ Chamfer และ Fillet
      เพราะมันยากมากที่จะทำให้รองรับกรณีทั่วไป จึงคาดว่าจะยังไม่สามารถครอบคลุมได้ทุกเคส
      ตอนที่เคยลอง การทดลองนี้ เมื่อก่อน ทำได้แค่จัดการด้านบนและล่างของการ extrude เส้นตรงแบบง่าย ๆ
      คราวนี้กำลังพยายามทำเวอร์ชันที่ทั่วไปมากขึ้น และมุมที่มี fillet สามจุดมาบรรจบกันน่าจะปวดหัวเป็นพิเศษ
    • Dune3D ใช้ SolveSpace เป็น เอนจินภายใน
    • FreeCAD ไม่มีข้อจำกัดแบบเดียวกับ SolveSpace และ UX ก็ดีขึ้นมากแล้ว
      เพราะงั้นฉันจึงย้ายไปใช้ FreeCAD เต็มตัว
    • อยากรู้ การเปรียบเทียบ ระหว่าง Dune3D กับ FreeCAD
    • วงการโอเพนซอร์ส CAD ต้องการ นักพัฒนาอัจฉริยะที่จะมาแทน Fusion 360
      ถ้าทุกคนร่วมแรงกันสร้าง CAD engine ที่ดีจริง ๆ ก็คงดีมาก
      Gimp ก็น่าเสียดาย ส่วน Photoshop ก็ปิดมากขึ้นเรื่อย ๆ แต่ก็น่าเสียดายที่คนเก่งพอจะมาแก้ปัญหานี้ยังไม่ลงมือ
  • ถึง SolveSpace จะมีข้อจำกัดหลายอย่าง แต่ก็เป็นเครื่องมือที่ ใช้งานสนุก
    อินเทอร์เฟซเรียบง่ายและตรงไปตรงมา ทำให้การทำงานเพลิดเพลิน
    แต่ กล่องโต้ตอบแบบโมดัล ที่เด้งขึ้นมาตอนลบ constraint หรือเกิด conflict นั้นขัดจังหวะ workflow และน่ารำคาญ
    ขอคารวะคนที่ทำเว็บพอร์ตนี้ งานยอดเยี่ยมจริง ๆ

    • เครดิตนี้ต้องยกให้ whitequark ที่เลิกดูแล SolveSpace ไปตั้งแต่ปี 2020
      หลังจากนั้น branch ก็ถูกปล่อยทิ้งไว้ แต่มีนักพัฒนาบางคนช่วยกันชุบชีวิตกลับมา และในรีลีสล่าสุดก็ถูกรวมเข้ากับเว็บไซต์โดยตรง
      ช่วงหลังยังมีการ merge PR อยู่ด้วย และคิดว่าผลงานของ whitequark ก็ยังมีความสำคัญมาก
  • ตอนนี้ฉันใช้ FreeCAD มากขึ้นเรื่อย ๆ แต่ SolveSpace ก็ยังยอดเยี่ยมในฐานะ เครื่องมือออกแบบน้ำหนักเบา
    โดยเฉพาะกับการออกแบบ ชิ้นส่วนสำหรับเลเซอร์คัต เพื่อส่งไปยังบริการอย่าง SendCutSend หรือ Oshcut
    และการทำให้มันรันในเบราว์เซอร์ได้ก็น่าประทับใจมาก

    • FreeCAD ทุกวันนี้น่าทึ่งจริง ๆ
      มัน แทน Autodesk Fusion 360 ได้อย่างสมบูรณ์ และเพียงพอสำหรับโปรเจกต์งานไม้ด้วย
      UI ก็เข้าใจง่ายและฟีเจอร์ก็ลึก
      มันกำลังพัฒนาไปจนเทียบชั้นเครื่องมือเชิงพาณิชย์ได้ แบบเดียวกับ Blender หรือ Inkscape
      เพียงแต่ฟังก์ชันเรนเดอร์ยังอ่อนอยู่
    • สุดสัปดาห์นี้ฉันเพิ่งลองใช้ FreeCAD ครั้งแรก และ ใช้เวลาแค่ 3 ชั่วโมงก็ทำ PCI bracket แล้วพิมพ์ 3D ออกมาได้เลย
      แค่ทำตามวิดีโอสอนบน YouTube ก็ง่ายกว่าตอนเรียน 3D Studio Max เมื่อ 25 ปีก่อนมาก
  • เคยทำโปรเจกต์ CAD บนเบราว์เซอร์ vcad.io เอง
    เขียนเคอร์เนลด้วย Rust และคอมไพล์เป็น WebAssembly
    ซอร์สโค้ด ก็เปิดไว้ด้วย

    • อยากรู้ว่าใช้กลยุทธ์อะไรในการจัดการ tolerance และการสะสมของความคลาดเคลื่อนจาก floating point
    • เกิดข้อผิดพลาดว่าหาไฟล์โมเดลไม่เจอ
      ดูเหมือนว่าไฟล์จะหายไปจาก ลิงก์ huggingface
    • อยากรู้ว่าโปรเจกต์นี้ใช้แนวทาง boundary representation (B-rep) หรือไม่
    • น่าสนใจว่ามันสามารถให้ LLM เขียนโค้ด Rust เพื่อสร้าง CAD design ได้ด้วยหรือเปล่า
  • ช่วงหลังเพิ่งเริ่มทำ 3D printing แล้วก็เลยลองใช้ OnShape ก่อน เพราะเห็นโฆษณาบน YouTube บ่อยมาก
    อยากรู้ความเห็นเปรียบเทียบจากคนที่เคยใช้ทั้ง SolveSpace และ OnShape
    ส่วนตัวคิดว่า OnShape ใช้งานเข้าใจง่ายและตอบสนองดีมาก
    ขณะที่ Fusion 360 ช้ามากจนปิดทิ้งภายใน 5 นาที

  • ถ้าดู stream event จะเห็นสตริงยาว ๆ อย่าง "type":"content_block_delta" ถูกส่งซ้ำไปซ้ำมา
    ดูเหมือนว่า Anthropic น่าจะประหยัดแบนด์วิดท์ของระบบได้ง่าย ๆ ถ้าใช้ตัวย่อ

  • ข้อความที่เรนเดอร์ออกมาดูเป็น ฟอนต์แบบพิกเซล เลยรู้สึกรบกวนสายตา
    เหมือนพยายามบังคับให้ลงกริดพิกเซลทั้งที่ไม่มี hinting

    • ใช้ฟอนต์บิตแมป GNU Unifont
      อาจมีบั๊กที่ทำให้ข้อความยืดเล็กน้อย เคยมีปัญหาเดียวกันนี้ในเวอร์ชัน Windows ก่อนหน้านี้ด้วย
    • เวอร์ชันเดสก์ท็อปก็ใช้ฟอนต์เดียวกัน จึงมีความเป็นไปได้สูงว่าเป็น ดีไซน์ที่ตั้งใจไว้
  • ฉันสงสัยมาตลอดว่าถ้าสร้างผลิตภัณฑ์ CAD หรือเครื่องมือออกแบบบนเบราว์เซอร์ จะสามารถมาแทน ปลั๊กอินเชิงพาณิชย์ราคาแพง ได้หรือไม่
    จากแนวโน้มช่วงนี้ ดูเหมือนว่าจะ เป็นไปได้จริง

  • SolveSpace รองรับ Windows (Vista~11), Linux, macOS อย่างเป็นทางการ และ
    คอมไพล์ด้วย Emscripten เพื่อให้รันในเบราว์เซอร์ได้
    ถ้าแก้ไขเพียงเล็กน้อยก็สามารถ ทำงานบน Windows 2000 ได้ด้วย
    ดู issue ที่เกี่ยวข้อง
    กล่าวคือมันสามารถรันได้บนแพลตฟอร์มหลักแทบทั้งหมดตลอด 26 ปีที่ผ่านมา (ยกเว้น MacOS 9)