nux คืออะไรและใช้ทำอะไร


คำตอบ:


69

Nux เป็นชุดเครื่องมือวิดเจ็ตที่ใช้ OpenGL และแคนวาสที่ใช้สร้างอินเทอร์เฟซผู้ใช้คล้ายกับ GTK + ในระดับสูง nux จะถูกแบ่งออกเป็น 3 ไลบรารี

  • NuxCore
  • NuxGraphics
  • Nux

NuxCore รับผิดชอบในเรื่องพื้นฐานเช่นระบบประเภทฟังก์ชั่นทางคณิตศาสตร์คำจำกัดความของสี ฯลฯ โดยทั่วไปจะมีประเภทดั้งเดิมทั้งหมดสำหรับระบบวิดเจ็ต (สีสี่เหลี่ยมจุด) มีตรรกะน้อยมากที่นี่นี่เป็นห้องสมุดพื้นฐาน

NuxGraphics เป็นเลเยอร์นามธรรมของ OpenGL ที่บาง มันให้ความเรียบง่ายของรูปแบบ OpenGL ทั่วไป (การกดและ popping clipping rectangles การเปลี่ยนเป้าหมายการเรนเดอร์การตั้งค่าสถานะ ฯลฯ ) อย่างไรก็ตามมันไม่ได้ห้ามผู้ใช้โดยตรงจากการทำการ OpenGL แบบดิบๆ NuxGraphics จัดเตรียม abstractions สำหรับพื้นผิวและการโหลด / การโหลดข้อมูล

Nux เป็นไลบรารีวิดเจ็ตที่ใช้งานบน NuxCore และ NuxGraphics Nux มีข้อมูลซ้ำซ้อนสำหรับวิดเจ็ตหลักเกือบทุกรายการในสแต็ก GTK รวมถึงวิดเจ็ตการจัดองค์ประกอบหลายรายการ (ตัวเลือกสี, กราฟ, มุมมอง 3 มิติ) วิดเจ็ต Nux ยังไม่อยู่ในระดับความซับซ้อนเช่นเดียวกับวิดเจ็ต GTK ขาดการแสดงผลข้อความขั้นสูง (กำลังแก้ไข) และล้างการสนับสนุนเหล่านั้น

การเรนเดอร์ด้านในของ nux สามารถอธิบายได้ว่า“ สไตล์ผ้าใบ” Nux จัดเตรียมจิตรกรเพื่อดำเนินการพื้นฐานการวาดขั้นพื้นฐานซึ่งสามารถใช้นอกเหนือจากการฝังวิดเจ็ตอื่น ดังนั้นแทนที่จะฝัง hbar เพื่อสร้างเส้นแนวนอนผู้เขียนวิดเจ็ตอาจเลือกใช้จิตรกรเพื่อวาดแถบโดยตรง รูปภาพอาจแสดงผลในลักษณะนี้แทนที่จะฝังวิดเจ็ตเพิ่มเติมเพื่อแสดงภาพที่ไม่ตอบสนองแบบคงที่ อย่างไรก็ตามสิ่งนี้ไม่ได้ตัดออกเพียงแค่ฝังวิดเจ็ต

ใน Unity nux ใช้ในสิ่งที่เราเรียกว่า "โหมดฝังตัว" เป็นหลัก nux ให้ฟังก์ชั่นสำหรับการวาดภาพตัวเองในบริบท gl เปิดต่างประเทศ เราเรียกฟังก์ชั่นการทาสีและ nux ทำให้ตัวเองลอยไปที่ backbuffer จากนั้นเราสามารถวาดภาพต่อไปได้ถ้าเราต้องการ (บางครั้งเราอนุญาตให้คอมแพคทำสิ่งนี้) มีฟังก์ชั่นที่จัดทำเพื่อจัดการสถานะ opengl ในโหมดฝังตัว


1
ข้อมูลมาก Jason ขอบคุณ มีลิงค์ไปยังที่ที่สามารถค้นหาข้อมูลเพิ่มเติมได้หรือไม่?
SB

มีเป้าหมายที่จะ "ขยาย" Nux เป็นชุดเครื่องมือหลักสำหรับ Ubuntu ในแบบที่ GTK + เป็นชุดเครื่องมือ "หลัก" หรือไม่?
ShroudedCloud
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.