ΠΠ»Π΅ΠΊΡΠ°Π½Π΄ΡΡ ΠΠ°ΡΡΠΎΠ½, ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ Π½Π° Flatpak ΠΈ Π°ΠΊΡΠΈΠ²Π΅Π½ ΡΠ»Π΅Π½ Π½Π° ΠΎΠ±ΡΠ½ΠΎΡΡΡΠ° Π½Π° GNOME, ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π» Π²ΡΠΎΡΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π° ΠΏΡΠΎΠ΅ΠΊΡΠ° Gthree, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ²Π°Π½Π΅ Π½Π° ΠΏΠΎΡΡ Π½Π° 3D Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° three.js Π·Π° GObject ΠΈ GTK, ΠΊΠΎΠΈΡΠΎ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ° Π·Π° Π΄ΠΎΠ±Π°Π²ΡΠ½Π΅ Π½Π° 3D Π΅ΡΠ΅ΠΊΡΠΈ ΠΊΡΠΌ GNOME ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. Gthree API Π΅ ΠΏΠΎΡΡΠΈ ΠΈΠ΄Π΅Π½ΡΠΈΡΠ΅Π½ Ρ three.js, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ Π²Π½Π΅Π΄ΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠΎΠ²Π°ΡΠ°ΡΠ° glTF (GL Transmission Format) ΠΈ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»ΠΈ, Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° PBR (Physically Based Rendering) Π² ΠΌΠΎΠ΄Π΅Π»ΠΈΡΠ΅. Π‘Π°ΠΌΠΎ OpenGL ΡΠ΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° Π·Π° ΠΈΠ·ΠΎΠ±ΡΠ°Π·ΡΠ²Π°Π½Π΅.
ΠΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ Π΄ΠΎΠ±Π°Π²Ρ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΠΊΠ»Π°ΡΠΎΠ²Π΅ Raycaster Ρ Π΅Π΄Π½ΠΎΠΈΠΌΠ΅Π½Π½Π° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΌΠ΅ΡΠΎΠ΄ Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°Π·ΡΠ²Π°Π½Π΅, ΠΊΠΎΠΉΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π΅ Π²ΡΡΡ
Ρ ΠΊΠ°ΠΊΠ²ΠΈ ΠΎΠ±Π΅ΠΊΡΠΈ Π² 3D ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎΡΠΎ Π΅ ΠΌΠΈΡΠΊΠ°ΡΠ° (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π·Π° Π΄Π° Π²Π·Π΅ΠΌΠ΅ΡΠ΅ 3D ΠΎΠ±Π΅ΠΊΡΠΈ ΠΎΡ ΡΡΠ΅Π½Π°ΡΠ° Ρ ΠΌΠΈΡΠΊΠ°ΡΠ°). ΠΡΠ²Π΅Π½ ΡΠΎΠ²Π° Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½ Π½ΠΎΠ² ΡΠΈΠΏ ΡΠΏΠΎΡ ΡΠ²Π΅ΡΠ»ΠΈΠ½Π° (GthreeSpotLight) ΠΈ Π΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΊΠ°ΡΡΠΈ Π½Π° ΡΠ΅Π½ΠΊΠΈ, ΠΊΠΎΠ΅ΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π½Π° ΠΎΠ±Π΅ΠΊΡΠΈ, ΠΏΠΎΡΡΠ°Π²Π΅Π½ΠΈ ΠΏΡΠ΅Π΄ ΠΈΠ·ΡΠΎΡΠ½ΠΈΠΊ Π½Π° ΡΠ²Π΅ΡΠ»ΠΈΠ½Π°, Π΄Π° Ρ
Π²ΡΡΠ»ΡΡ ΡΠ΅Π½ΠΊΠΈ Π²ΡΡΡ
Ρ ΡΠ΅Π»Π΅Π²ΠΈΡ ΠΎΠ±Π΅ΠΊΡ.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru