แสดงบทความที่มีป้ายกำกับ OpenGL แสดงบทความทั้งหมด
แสดงบทความที่มีป้ายกำกับ OpenGL แสดงบทความทั้งหมด

วันพุธที่ 8 มีนาคม พ.ศ. 2560

OpenGL

OpenGL Gallium3D Driver On The Raspberry Pi 2


to install xcompmgr 
sudo apt-get install xcompmgr
sudo reboot
I fired up a Raspberry Pi 2 this afternoon and proceeded to update Raspbian, the Debian-based Linux distribution for the Raspberry Pi models. As mentioned in that earlier posting, this experimental OpenGL support is only working on the Raspberry Pi 2 currently and not the Pi Zero or original Pi. 

The experimental OpenGL driver stack can be toggled via sudo raspi-config from the advanced options. 

After enabling the option and rebooting the Raspberry Pi 2, the OpenGL driver was indeed working! 

OpenGL 2.1 support is exposed via this VC4 Gallium3D driver and the Raspbian release is currently based on Mesa 11.1. 

I had plans to run some basic OpenGL benchmarks on the Raspberry Pi 2 driver with VC4, but sadly those plans so far were foiled. The Raspberry Pi 2 driver stack couldn't handle running the ARMv7 GFXbench and the other basic OpenGL ARM tests I tried with our benchmarking software also failed. So back to investigating those issues when time allows, but then again for ARM OpenGL performance I'd much rather be playing with the Jetson development boards... At least though the Raspberry Pi 2 now has faster glxgears!

วิธีการตรวจสอบ OpenGL บน Ubuntu



หลายๆ คนอาจจะสงสัยว่า OpenGL คืออะไร ถ้าเรารู้จัก DirectX บนระบบปฎิบัติการวินโดวส์ ซึ่งถ้าไม่ลง DirectX ก็เล่นเกมส์ไม่ได้ ตัวโปรแกรม OpenGL ก็ทำหน้าที่แบบนั้นในระบบปฎิบัติการ Linux เช่นกันครับ ผมจึงได้นำเสนอบทความเกี่ยวกับ การรู้จักและใช้งาน OpenGL บน Ubuntu Linux กันครับ
OpenGL ก็คือโปรแกรมที่หน้าที่เป็น ชุดคำสั่งด้านกราฟิก 2D หรือ 3D เพื่อส่งคำสั่งควบคุมการวาดภาพไปยังอุปกรณ์ฮาร์ดแวร์การประมวลผลภาพ ซึ่ง OpenGL จึงเปรียบเสมือนตัวกลางสำหรับโปรแกรมทีีจะเข้ามาควบคุมภาพกราฟฟิค ซึ่งตรงนี้ก็คือสิ่งที่จำเป็นจะต้องมี เพราะถ้าไม่เช่นนั้นแล้ว ก็จะเป็นการยากที่นักพัฒนาซอฟแวร์ จะต้องใช้เวลานับแรมเดือนแรมปีในการเขียนโปรแกรมเพื่อควบคุมกราฟฟิคเอง จะทำให้ต้นทุนในการพัฒนาซอฟแวร์สูงขึ้น ใช้เวลามากขึ้นและการบริหารจัดการระบบจะทำได้ยาก จึงมีผุ้ที่คิดว่าจะต้องมีตัวกลางในการบริหารจัดการกราฟฟิค และนักพัฒนาเข้าไปเชื่อมต่อกับตรงนั้นเพียงจุดเดียว จึงได้มีแนวคิดในการทำ OpenGL สำหรับประมวผลในด้านกราฟฟิค ซึ่งในระบบปฎิบัติการวินโดวส์ หลายๆ คนก็จะรู้จัก DirectX เพราะถ้าไม่ลง DirectX ก็จะไม่สามารถเล่นเกมส์ได้ หลายๆ คนรู้แค่นี้ แต่หลายๆ คนไม่ได้รู้ว่า OpenGL ก็เคยทำหน้าที่ตรงนี้มาก่อน หลายๆ ค่ายเกมส์ ได้ใช้ OpenGL เป็นฐานสำหรับการพัฒนาเกมส์ แต่ต่อมาทางบริษัทไมโครซอฟต์ได้พัฒนา DirectX ขึ้นมาทำหน้าที่แทน OpenGL ให้นักพัฒนา ให้เป็นมาตรฐานกลางให้นักพัฒนาเกมส์ ได้พัฒนาเกมส์บนวินโดวส์ขึ้นมา แต่ต่อเมื่อเมื่อโลกเปลี่ยนแปลง Linux ได้รับความนิยมมากขึ้น OpenGL จึงได้ถูกพัฒนาให้เป็นรุ่นใหม่ๆ เพื่อให้เกมส์สามารถทำงานบน Linux ฉะนั้น ดังนั้นเราจึงเห็น OpenGL รุ่นใหม่ๆ ที่ถูกพัฒนาออกมาดีขึ้น มีประสิทธิภาพมากขึ้น และถูกนำมาใช้บน Linux และปัจจุบันเราก็เห็นว่าค่ายๆ เกมส์ต่างๆ เริ่มหันมาสนใจ Linux มากขึ้น
ทีนี้เราจะรู้ได้อย่างไรว่า OpenGL ที่เราใช้อยู่บน Linux สามารถใช้การได้ดี ผมเองจึงจะมาแนะนำวิธีการตรวจเช็ค
บน Ubuntu Linux กันครับ ให้เราเปิดโปรแกรมที่ชื่อว่า terminal แล้วเรียกใช้งานโดยอาศัยคำสั่งดังนี้

sudo apt-get install mesa-utils
ซึ่งจะเป็นการติดตั้งชุดคำสั่งสำหรับตรวจสอบ OpenGL และถ้าหากว่าเราจะตรวจเช็ค OpenGL ของเราใช้ version ใหน ก็จะให้สั่งดังนี้
glxinfo | grep "OpenGL version"
ซึ่งเครื่องของผมเองได้ การ์ดจอ รุ่น Nvidia ก็เลยแสดงผลดังข้อความด้านล่าง
ouychai@Ouychai-Linux:~$ glxinfo | grep "OpenGL version"
OpenGL version string: 3.3.0 NVIDIA 310.44
ouychai@Ouychai-Linux:~$
แล้วถ้าเราจะทดลองการ์ดอเราสามารถแสดงผลได้หรือไม่ ก็ให้ทดลองใช้คำสั่ง
glxgear
ก็จะปรากฎโปรแกรมดังรูปที่ 1

รูปที่ 1
แต่ถ้าเรายังไม่แน่ใจว่าประสิทธิภาพการ์ดจอเราทำงานได้จริงๆ หรือไม่ ก็ให้ลองกับของจริงๆ เลยครับ โดยทดลองเล่นเกมส์ ทีใช้ OpenGL ก็คือ
โดยการเปิดโปรแกรม ubuntu software center แล้วพิมพ์ chromium ก็จะปรากฎว่าพบเกมส์ chromium-bsu ดังรูปที่2

รูปที่ 2
จากนั้นให้เรากดปุ่ม install ก็จะมีช่องให้กรอก password ดังรูปที่ 3

รูปที่ 3
หรือถ้าเราไม่ใช้โปรแกรม ubuntu software center เราก็สามารถเรียกใช้คำสั่งดังนี้
sudo apt-get install chromium-bsu
จากนั้นให้เราพิมพ์ชื่อโปรแกรม chromium ก็จะปรากฎเกมส์นี้ขึ้น
ก็จะปรากฎว่ามีเกมส์ขึ้นดังรูปที่ 4

รูปที่ 4

รูปที่ 5
มาถึงขึ้นนี้ผมคงจะต้องไม่ต้อง Review สอนการเล่นเกมส์แล้วนะครับ เราสามารถทดลองเล่นได้เลยครับ ถ้าหากว่ามีการใส่ Driver การ์ดจอ และมีโปรแกรม OpenGL แล้ว เกมส์นี้จะไม่กระตุกเลยครับ เพราะเกมส์นี้ผมเคยทดลองเล่นตั้งแต่สิบปีที่แล้ว ตั้งแต่สมัยที่ผมทดลองสร้างชุมชนผู้ใช้งาน Linux ขึ้นมาครั้งแรกที่หมู่บ้านของผมเอง เคยทดลองเล่นเกมส์โดยไม่ติดตั้ง Driver การ์ดจอ ปรากฎว่าเกมส์กระตุกมากๆ แต่พอได้ใส่ Driver การ์ดจอ ปรากฎว่าเกมส์ใหลลื่น ฉะนั้นจึงคิดว่าการ์ดจอรุ่นใหม่ๆ รองรับเกมส์นี้ได้สบายๆ
หรือถ้าคิดว่าเกมส์ 2D ยังไม่สะใจพอที่จะทดสอบ ก็ลองหาเกมส์จำพวก 3D มาเล่นดูนะครับ ผมเคยลองมาแล้วก็รู้ว่าใหลลื่นได้เช่นกัน แล้วคุณก็จะรู้ความจริงว่า Linux สามารถเล่นเกมส์ได้ โดยไม่จำเป็นต้องอาศัยระบบปฎิบัติการวินโดวส์แต่ประการใด