Category: Three-js

คุณสมบัติทางกายภาพ (Bounding Boxes)

การดีบักคุณสมบัติทางกายภาพด้วย Bounding Boxes ในบทความที่แล้ว เรานำเข้าโมเดลเหล่านี้และ Tahseen และในบทความนี้ เราจะตั้งค่าบางอย่าง กล่อง Barlinnie เพื่อให้เราสามารถเพิ่มและแก้ไขข้อบกพร่องของคุณสมบัติทางกายภาพได้ ข้อกำหนดเบื้องต้น ข้อกำหนดสำหรับบทความนี้คือ คุณควรได้ทำตามบทความ การเพิ่มโมเดลให้กับฉาก (Models to a Scene) มาก่อน

Continue readingคุณสมบัติทางกายภาพ (Bounding Boxes)

การเพิ่มโมเดลให้กับฉาก (Models to a Scene)

การเพิ่มโมเดลให้กับฉาก three.js ในบทความที่แล้ว เราตั้งค่าฟิสิกส์ จากนั้นในบทความนี้ เราจะพูดถึงการโหลดโมเดล 3 มิติ สิ่งนี้มีประโยชน์จริง ๆ เนื่องจากเราเห็นว่าการสร้างวัตถุ 3 มิติใน reactor five ข้อกำหนดเบื้องต้น ข้อกำหนดสำหรับบทความนี้คือ คุณควรได้ทำตามบทความ การใช้ไลบรารี่ฟิสิกส์ (Adding

Continue readingการเพิ่มโมเดลให้กับฉาก (Models to a Scene)

การใช้ไลบรารี่ฟิสิกส์ (Adding Physics)

การใช้ไลบรารี่ฟิสิกส์ three.js แอนิเมชั่นสามารถทำได้โดยใช้ไลบรารี่ฟิสิกส์ (Physics library) เราสามารถใช้ไลบรารี่ที่เรียกว่า Cannon.js แต่แทนที่จะใช้ Cannon.js ดั้งเดิมซึ่งไม่ได้รับการดูแลอีกต่อไป เราสามารถเลือกใช้ Cannon.js ใหม่ ที่ชื่อ use-cannon แทนได้ ไลบรารี่ฟิสิกส์ Cannon เหมาะอย่างยิ่งสำหรับการจำลองวัตถุที่มีความแข็ง เราจะใช้มันเพื่อทำให้วัตถุเคลื่อนที่และโต้ตอบในลักษณะที่สมจริงยิ่งขึ้น

Continue readingการใช้ไลบรารี่ฟิสิกส์ (Adding Physics)

ควบคุมการลาก (Implementing Drag Controls)

ควบคุมการลาก three.js (Implementing Drag Controls) drag คือการคลิกที่วัตถุค้างเอาไว้ แล้วลากไปวางยังพื้นที่ ที่ต้องการ โดยการลากนั้นวัตถุจะเคลื่อนที่ตามมาส์ไปด้วย จนกว่าเราจะปล่อยมือจากการคลิกเมาส์ วัตถูก็จะมาอยู่ที่ตำแหน่งใหม่ ซึ่งการ drag จะช่วยให้เราสามารถย้ายวัตถุได้อย่างอิสระตามต้องการ ข้อกำหนดเบื้องต้น ข้อกำหนดสำหรับบทความนี้คือ คุณควรได้ทำตามบทความ  จัดระเบียบโค้ดด้วย .JSX

Continue readingควบคุมการลาก (Implementing Drag Controls)

จัดระเบียบโค้ดด้วย .JSX

จัดระเบียบโค้ดด้วย .JSX JSX ย่อมาจาก ( JavaScript Syntax eXtension) ซึ่งหมายถึงส่วนเสริมของ Javascript นั่นเองครับ ถูกพัฒนาขึ้นมาใช้กับ React โดยเฉพาะ โดย Syntax นั้นมีความคล้ายคลึงกับ HTML เป็นอย่างมาก แต่สิ่งนึงที่เห็นได้ชัดคือจะเห็นการเขียนโค้ดในลักษณะนี้ในอยู่ในไฟล์

Continue readingจัดระเบียบโค้ดด้วย .JSX

สร้างภาพสามมิติแบบโต้ตอบ (Interactive)

สร้างภาพสามมิติแบบโต้ตอบ (Interactive) ในบทความที่แล้ว เราคุยกันเรื่องการสร้างพื้นผิว และในบทความนี้ เรากำลังจะทำ เพื่อพูดคุยเกี่ยวกับเหตุการณ์ (Events) ข้อกำหนดเบื้องต้น ข้อกำหนดสำหรับบทความนี้คือ คุณควรได้ทำตามบทความ  การเพิ่มพื้นผิว (Adding Textures) มาก่อน Events มาเพิ่มเหตุการณ์การคลิกในกล่องของเรา และก่อนที่เราจะทำอย่างนั้น เราจะเปลี่ยนเรขาคณิตนี้กลับเป็นกล่อง เพื่อให้มันเป็นกล่องจริงๆ

Continue readingสร้างภาพสามมิติแบบโต้ตอบ (Interactive)

การเพิ่มพื้นผิว (Adding Textures)

การเพิ่มพื้นผิว Three.js ในความที่แล้ว เราพูดถึงเนื้อหาประเภทต่างๆ ในบทความนี้ เราจะไปที่ กำลังพูดถึงพื้นผิวก่อนที่เราจะเริ่มต้น สร้างพื้นผิวเพื่อใช้กับพื้นผิวหรือเป็นภาพสะท้อนหรือการหักเหของแสง หมายเหตุ: หลังจากใช้งานพื้นผิวครั้งแรกแล้ว ขนาด รูปแบบ และประเภทของพื้นผิวจะไม่สามารถเปลี่ยนแปลงได้ ให้เรียก .dispose() บนเท็กซ์เจอร์ แล้วสร้างตัวอย่างใหม่ ข้อกำหนดเบื้องต้น ข้อกำหนดสำหรับบทความนี้คือ คุณควรได้ทำตามบทความ

Continue readingการเพิ่มพื้นผิว (Adding Textures)

ภาพรวมของวัสดุ (Overview of Materials)

ภาพรวมของวัสดุ Three.js Materials เป็นศูนย์รวมการ กำหนดคุณสมบัติให้พื้นผิววัตถุ จะเป็นสิ่งที่ทำ ให้รูปลักษณ์ของวัตถุถูกแสดงออกมา ข้อกำหนดเบื้องต้น ข้อกำหนดสำหรับบทความนี้คือ คุณควรได้ทำตามบทความ แสงและเงา (Lights and Shadows) มาก่อน ในบทความที่แล้ว เราได้ตั้งค่า Light and Shadows

Continue readingภาพรวมของวัสดุ (Overview of Materials)

แสงและเงา (Lights and Shadows)

แสงและเงา (Lights and Shadows) three.js แสงและเงา เป็นองค์ประกอบของศิลป์ที่อยู่คู่กันแสง เมื่อส่องกระทบ กับวัตถุ จะทำให้เกิดเงา แสงและเงา เป็นตัวกำหนดระดับของค่าน้ำหนัก ความเข้มของเงาจะขึ้นอยู่กับความเข้มของเแสง ในที่ที่มีแสงสว่างมาก เงาจะเข้มขึ้น และในที่ที่มีแสงสว่างน้อย เงาจะไม่ชัดเจน ในที่ที่ไม่มีแสงสว่างจะไม่มีเงา และเงาจะอยู่ในทางตรงข้ามกับแสงเสมอ  ข้อกำหนดเบื้องต้น

Continue readingแสงและเงา (Lights and Shadows)

ภาพรวมเรขาคณิต (Overview of Geometry)

ภาพรวมเรขาคณิต (Overview of Geometry) ในบทความเกี่ยวกับเรขาคณิต เราจะพูดถึงเรื่องนั้นเพื่อใช้ Geometry จัดหาอาร์เรย์ของจุดยอด Vector3 (ตำแหน่ง) จากนั้นคุณสร้างวัตถุ Face3 ที่ระบุโดยทำดัชนีจุดยอด 3 จุด ในแต่ละ Face3 คุณสามารถระบุใบหน้าปกติหรือจุดปกติสำหรับจุดยอดแต่ละจุดของใบหน้าได้ คุณยังสามารถระบุสีของใบหน้าหรือสีจุดยอดแต่ละรายการได้ ในที่สุด

Continue readingภาพรวมเรขาคณิต (Overview of Geometry)

แกนและการควบคุมวงโคจร

แกนและการควบคุมวงโคจร (Axes and Orbit Controls) ข้อกำหนดเบื้องต้น ข้อกำหนดสำหรับบทความนี้คือ คุณควรได้ทำตามบทความ สร้าง scene ด้วย react-three-fiber มาก่อน AxesHelper AxesHelper คือการแสดงภาพ แกนวัตถุ 3 แกนด้วยวิธีง่ายๆ แกน X

Continue readingแกนและการควบคุมวงโคจร

สร้าง scene ด้วย react-three-fiber

สร้าง scene ด้วย react-three-fiber react-three-fiber คือ การนำไลบรารี three.js มาประยุกต์ให้ใช้ได้กับ React.js  และทางผู้สร้างก็ยังได้อธิบายไว้ใน GitHub Repository ของ React Three Fiber  จะไม่มี overhead ที่จะทำให้ช้าลงกับต้นฉบับอย่าง

Continue readingสร้าง scene ด้วย react-three-fiber

โปรแกรมแรก React กับ Three.js

โปรแกรมแรก React กับ Three.js การเขียนโปรแกรมเพื่อสร้างภาพ 3 มิติ ทั้งในรูปแบบ Desktop Application และ Web Application นิยมใช้ Library ที่สร้างขึ้นมาเพื่องานเขียนโปรแกรมกราฟิกโดยเฉพาะ  ซึ่งที่นิยมใช้กันมาก คือ OpenGL ในส่วนของ

Continue readingโปรแกรมแรก React กับ Three.js