Rust GPU, Rust дахь shaders боловсруулах хэрэгслүүдийн багц

Тоглоом хөгжүүлэгч компани Embark Studios анхны туршилтын хувилбараа гаргажээ төслийн Зэв GPU, зэв хэлийг ашиглах зорилготой GPU кодыг боловсруулах. 

Зэвийг ашиглах хүсэл GPU програм бичих зөвхөн аюулгүй байдал, өндөр гүйцэтгэлээс гадна Хөгжлийн процессын үр ашгийг дээшлүүлэхийн тулд багц, модулиудтай ажиллах орчин үеийн хэрэгслүүдийг олж авах хэрэгцээ шаардлага бас бий.

Rust GPU боловсруулах компани Embark Studios мөн зэвийг тоглоомын хөдөлгүүртээ ашигладаг CPU болон GPU хоорондох Rust кодын солилцоог хөнгөвчлөх зорилгоор ажиллаж байна.

Тэдний хэлснээр, түүхэнд GPU програмчлалыг HLSL бичих замаар хийдэг байсан эсвэл бага хэмжээгээр GLSL. Эдгээр нь олон жилийн турш API-тэй зэрэгцэн хөгжиж ирсэн энгийн програмчлалын хэл юм.

Гэсэн хэдий ч тоглоомын хөдөлгүүрүүд хөгжсөн тул эдгээр хэлнүүд том кодын баазуудтай харьцах механизмыг хангаж өгөөгүй бөгөөд ерөнхийдөө бусад програмчлалын хэлтэй харьцуулахад тэд хоцрогдсон байна.

Хоёр хэлний хувьд ерөнхийдөө илүү сайн хувилбарууд байдаг боловч аль нь ч HLSL эсвэл GLSL-ийг орлож чадахгүй.

Эсвэл үйлчилгээ үзүүлэгч тэднийг хаасан эсвэл дэмжигдээгүй учраас уламжлалт график дамжуулах хоолойгоор. Үүний жишээ нь CUDA ба OpenCL орно. Энэ орон зайд хэлийг бий болгох оролдлогыг хийсэн боловч тэдгээрийн аль нь ч гамедевын нийгэмд мэдэгдэхүйц хүчтэй болж чадаагүй байна.

Rust GPU нь RLSL төслийн санааг үргэлжлүүлэн боловсруулдагVulkan API-д санал болгож, OpenGL 4.6-д дэмжигдсэн SPIR-V ерөнхий шэйдрийн завсрын зэвний хөрвүүлэгчийг үүсгэх оролдлогыг хийсэн болно.

Өнөөгийн хөгжлийн үе шатанд Rust GPU нь энгийн график shaders ажиллуулж Rust-ийн үндсэн стандарт номын сангийн нэлээд хэсгийг бүрдүүлэх боломжийг аль хэдийн олгожээ. Үүний зэрэгцээ, төсөл өргөн хэрэглэгдэхэд бэлэн болоогүй хэвээр байна, жишээлбэл гогцоонуудыг сүүдэрлэгч нар хараахан дэмжээгүй байна.

Embark дээр бид зэвэндээ эхнээс нь өөрийн тоглоомын хөдөлгүүрийг бүтээж ирсэн. Бид өмнө нь RLSL прототипийг дотооддоо хөгжүүлэх туршлагатай байсан бөгөөд тоглоом, тоглоомын хөдөлгүүр болон бусад салбарын өнөөгийн shader хэлний асуудлуудыг мэддэг маш сайн рендеринг хийдэг инженерүүдийн багтай. Тиймээс бид энэ асуудлыг шийдвэрлэхийг хичээх өвөрмөц байр суурьтай байна гэж үзэж байна.

Бид өөрсдийнхөө дотоод хөгжлийг ганц сайхан хэлээр сайжруулж, нээлттэй эх үүсвэрийн график нийгэмлэг, экосистемийг бий болгож, GPU ба CPU-ийн хооронд код хуваалцах ажлыг хөнгөвчлөх, хамгийн чухал нь өөрсдийн (ирээдүйн) хэрэглэгчид болон хамтран хөгжүүлэгчдийг идэвхжүүлэхийг хүсч байна. илүү сонирхолтой бөгөөд сонирхолтой туршлагыг хурдан бий болгох.

Rust хэл дээрх код дээр үндэслэн SPIR-V шэйдрүүдийн төлөөллийг бүрдүүлдэг бөгөөд үүнд зориулж Rust хөрвүүлэгчийн тусгай арын хэсгийг боловсруулсан бөгөөд энэ нь дүрслэлд хөрвүүлэхэд ашигладаг cranelift кодын генератортой ижил төстэй ажилладаг. Вэб угсралт.

Одоогийн хандлага нь Vulkan график API ба SPIR-V үзэгдлийг дэмжих явдал юм. гэхдээ DXIL (DirectX) болон WGSL (WebGPU) shader-ийн үзэмжийг ирээдүйд үйлдвэрлэхээр төлөвлөж байна. Cargo болон crates.io дээр үндэслэн SPIR-V форматаар shader бүхий багц боловсруулж хэвлэх хэрэгслүүдийг боловсруулж байна.

Эцэст нь, хэрэв та энэ төслийн талаар илүү ихийг мэдэхийг хүсвэл төслийн агуулах дахь дэлгэрэнгүй мэдээллийг шалгаж болно, холбоос энэ байна.

Кодыг мэдэх боломжтой хүмүүсийн хувьд кодыг MIT, Apache 2.0 лицензийн дагуу хэвлэдэг бөгөөд үүнийг авах боломжтой гэдгийг мэддэг байх ёстой. доорх линкээс.

Тэд мөн Линукс, Windows, Mac дээр ажиллах боломжтой болохын тулд хөгжүүлэгчдэд зориулж боловсруулсан баримт бичигтэй танилцаж болно. энэ холбоос дээрх гарын авлагаас авна уу.


Нийтлэлийн агуулга нь бидний зарчмуудыг баримталдаг редакцийн ёс зүй. Алдааны талаар мэдээлэхийн тулд товшино уу энд байна.

Сэтгэгдэл бичих, үлдээх

Сэтгэгдэлээ үлдээгээрэй

Таны и-мэйл хаяг хэвлэгдсэн байх болно. Шаардлагатай талбарууд нь тэмдэглэгдсэн байна *

*

*

  1. Мэдээллийг хариуцах: Мигель Анхель Гатан
  2. Мэдээллийн зорилго: СПАМ-ыг хянах, сэтгэгдлийн менежмент.
  3. Хууль ёсны байдал: Таны зөвшөөрөл
  4. Мэдээллийн харилцаа холбоо: Хуулийн үүргээс бусад тохиолдолд мэдээллийг гуравдагч этгээдэд дамжуулахгүй.
  5. Өгөгдөл хадгалах: Occentus Networks (ЕХ) -с зохион байгуулсан мэдээллийн сан
  6. Эрх: Та хүссэн үедээ мэдээллээ хязгаарлаж, сэргээж, устгаж болно.

  1.   Autopilot гэж хэлэв

    Зэв хөөрч, өөр "үхлийн аюултай Scala" биш гэж найдаж байна.