Pygame เป็นไลบรารีข้ามแพลตฟอร์มแบบโอเพ่นซอร์สฟรีสำหรับการพัฒนาแอปพลิเคชันมัลติมีเดีย เช่น วิดีโอเกมโดยใช้ Python ใช้ไลบรารี Simple DirectMedia Layer และไลบรารียอดนิยมอื่นๆ จำนวนมากเพื่อสรุปฟังก์ชันที่พบบ่อยที่สุด ทำให้การเขียนโปรแกรมเหล่านี้เป็นเรื่องง่ายยิ่งขึ้น
เราต้องการความช่วยเหลือจากคุณเพื่อทำให้ pygame ดีที่สุดเท่าที่จะทำได้! ยินดีต้อนรับผู้มีส่วนร่วมใหม่
ก่อนที่จะติดตั้ง pygame คุณต้องตรวจสอบว่าติดตั้ง Python บนเครื่องของคุณแล้ว หากต้องการค้นหา ให้เปิดพรอมต์คำสั่ง (หากคุณมี Windows) หรือเทอร์มินัล (หากคุณมี MacOS หรือ Linux) แล้วพิมพ์สิ่งนี้:
หลาม --version
หากข้อความเช่น "Python 3.8.10" ปรากฏขึ้น แสดงว่าติดตั้ง Python อย่างถูกต้อง หากข้อความแสดงข้อผิดพลาดปรากฏขึ้น แสดงว่ายังไม่ได้ติดตั้ง จากนั้นคุณต้องไปที่เว็บไซต์อย่างเป็นทางการเพื่อดาวน์โหลด
เมื่อติดตั้ง Python แล้ว คุณจะต้องทำการตรวจสอบขั้นสุดท้าย: คุณต้องดูว่าติดตั้ง pip หรือไม่ โดยทั่วไป pip จะถูกติดตั้งไว้ล่วงหน้าด้วย Python แต่เราไม่แน่ใจ เช่นเดียวกับ Python ให้พิมพ์คำสั่งต่อไปนี้:
pip --version
หากข้อความเช่น "pip 20.0.2 จาก /usr/lib/python3/dist-packages/pip (python 3.8)" ปรากฏขึ้น แสดงว่าคุณพร้อมที่จะติดตั้ง pygame! หากต้องการติดตั้ง ให้ป้อนคำสั่งนี้:
pip ติดตั้ง pygame
เมื่อติดตั้ง pygame แล้ว ให้ทดสอบไลบรารีของคุณอย่างรวดเร็วโดยป้อนคำสั่งต่อไปนี้ ซึ่งจะเปิดหนึ่งในตัวอย่างเกมที่ติดตั้งไว้ล่วงหน้า:
python3 -m pygame.examples.เอเลี่ยน
หากไม่ได้ผล ส่วนการเริ่มต้นใช้งานของเว็บไซต์อย่างเป็นทางการจะมีข้อมูลเพิ่มเติมสำหรับปัญหาเฉพาะแพลตฟอร์ม เช่น การเพิ่ม Python ในการตั้งค่า PATH ของเครื่องของคุณ
หากคุณเพิ่งเริ่มต้นใช้งาน pygame คุณจะสามารถเริ่มต้นได้ค่อนข้างรวดเร็ว Pygame มาพร้อมกับบทช่วยสอนและการแนะนำมากมาย นอกจากนี้ยังมีเอกสารอ้างอิงฉบับเต็มสำหรับห้องสมุดทั้งหมด เรียกดูเอกสารในหน้าเอกสาร คุณยังสามารถเรียกดูเอกสารภายในเครื่องได้ด้วยการเรียกใช้ python -m pygame.docs
ในเทอร์มินัลของคุณ หากไม่พบเอกสารในเครื่อง ระบบจะเปิดเว็บไซต์ออนไลน์แทน
เอกสารออนไลน์จะอัปเดตอยู่เสมอด้วยเวอร์ชันการพัฒนาของ pygame บน GitHub นี่อาจจะใหม่กว่าเวอร์ชันของ pygame ที่คุณใช้อยู่เล็กน้อย หากต้องการอัปเกรดเป็นเวอร์ชันเต็มล่าสุด ให้รัน pip install pygame --upgrade
ในเทอร์มินัลของคุณ
สิ่งที่ดีที่สุดคือไดเร็กทอรีตัวอย่างมีโปรแกรมขนาดเล็กที่สามารถเล่นได้มากมายซึ่งช่วยให้คุณเริ่มเล่นกับโค้ดได้ทันที
Pygame เป็นไลบรารี่ที่ทรงพลังสำหรับการพัฒนาเกม นำเสนอคุณสมบัติที่หลากหลายเพื่อทำให้เส้นทางการเขียนโค้ดของคุณง่ายขึ้น เรามาเจาะลึกถึงสิ่งที่ pygame นำเสนอกันดีกว่า:
กราฟิก - ด้วย pygame การสร้างกราฟิกแบบไดนามิกและน่าดึงดูดได้ง่ายกว่าที่เคย ไลบรารีมีเครื่องมือที่เรียบง่ายแต่มีประสิทธิภาพสำหรับกราฟิกและแอนิเมชั่น 2D รวมถึงการรองรับรูปภาพ สี่เหลี่ยม และรูปร่างหลายเหลี่ยม ไม่ว่าคุณจะเป็นนักพัฒนาเกมที่มีประสบการณ์หรือเพิ่งเริ่มต้น pygame ก็พร้อมให้ความช่วยเหลือคุณ
เสียง - Pygame ยังรองรับการเล่นและจัดการเสียงและดนตรี ทำให้การเพิ่มเอฟเฟกต์เสียงและเพลงพื้นหลังให้กับเกมของคุณเป็นเรื่องง่าย ด้วยการรองรับรูปแบบไฟล์ WAV, MP3 และ OGG คุณมีตัวเลือกมากมายให้เลือก
อินพุต - Pygame มีฟังก์ชันที่ใช้งานง่ายสำหรับจัดการอินพุตของแป้นพิมพ์ เมาส์ และจอยสติ๊ก ช่วยให้คุณสามารถใช้การควบคุมของผู้เล่นในเกมของคุณได้อย่างรวดเร็วและง่ายดาย ไม่ต้องดิ้นรนกับโค้ดอินพุตที่ซับซ้อนอีกต่อไป pygame ทำให้มันง่าย
การพัฒนาเกม - สุดท้ายนี้ pygame มีชุดเครื่องมือและคุณสมบัติที่ครอบคลุมซึ่งออกแบบมาเพื่อการพัฒนาเกมโดยเฉพาะ ตั้งแต่การตรวจจับการชนไปจนถึงการจัดการสไปรท์ pygame มีทุกสิ่งที่คุณต้องการเพื่อสร้างเกมที่น่าตื่นเต้นและน่าดึงดูด ไม่ว่าคุณจะสร้างเกมแพลตฟอร์ม เกมไขปริศนา หรืออะไรก็ตาม pygame ก็ช่วยคุณได้
หากคุณต้องการใช้คุณสมบัติที่กำลังพัฒนาอยู่ หรือต้องการสนับสนุน pygame คุณจะต้องสร้าง pygame ในเครื่องจากซอร์สโค้ดของมัน แทนที่จะติดตั้ง pip
การติดตั้งจากแหล่งที่มานั้นค่อนข้างอัตโนมัติ งานส่วนใหญ่จะเกี่ยวข้องกับการคอมไพล์และติดตั้งการพึ่งพา pygame ทั้งหมด เมื่อเสร็จแล้ว ให้เรียกใช้สคริปต์ setup.py
ซึ่งจะพยายามกำหนดค่า สร้าง และติดตั้ง pygame โดยอัตโนมัติ
ข้อมูลเพิ่มเติมเกี่ยวกับการติดตั้งและการคอมไพล์มีอยู่ในหน้าวิกิการคอมไพล์
ขอขอบคุณทุกคนที่มีส่วนช่วยสนับสนุนห้องสมุดแห่งนี้ ขอขอบคุณเป็นพิเศษเช่นกัน
ขอขอบคุณผู้ที่ส่งแพทช์และการแก้ไข: Niki Spahiev, Gordon Tyler, Nathaniel Pryce, Dave Wallace, John Popplewell, Michael Urman, Andrew Straw, Michael Hudson, Ole Martin Bjoerndalen, Herve Cauwelier, James Mazer, Lalo Martins, Timothy Stranex, Chad เลสเตอร์, มัทธีอัส สปิลเลอร์, โบ แยนเกบอร์ก, มิทรี โบริซอฟ, แคมป์เบลล์ บาร์ตัน, ดิเอโก้ เอสซายา, เอยาล โลเทม, เรจิส เดส์กรอปเปส, เอ็มมานูเอล เฮนรี, แรนดี้ เคลเบอร์ แมทธิว แอล แดเนียล, นิราฟ พาเทล, ฟอเรสต์ วอยต์, ชาร์ลี โนแลน, แฟรงกี้ โรเบิร์ตสัน, จอห์น ครูคอฟฟ์, ลอเรนซ์ เคว็ค, นิค เออร์ไวน์, ไมเคิล จอร์จ, ซาอูล สแปตซ์, โธมัส อิบบอตสัน, ทอม โรธาเมล, อีวาน โครอสเก้, แคมเบลล์ บาร์ตัน.
และนักล่าแมลงของเราเหนือกว่าใคร: Angus, Guillaume Proux, Frank Raiser, Austin Henry, Kaweh Kazemi, Arturo Aldama, Mike Mulcheck, Michael Benfield, David Lau
มีผู้คนอีกมากมายที่ส่งแนวคิดที่เป็นประโยชน์ ทำให้โครงการนี้ดำเนินต่อไป และทำให้ชีวิตของเราง่ายขึ้น ขอบคุณ!
ขอบคุณมากสำหรับผู้ที่แสดงความคิดเห็นเกี่ยวกับเอกสารและเพิ่มลงในวิกิ pygame.org
ขอขอบคุณเป็นอย่างยิ่งสำหรับผู้ที่สร้างเกมและนำเกมเหล่านั้นไปไว้ในเว็บไซต์ pygame.org เพื่อให้ผู้อื่นได้เรียนรู้และเพลิดเพลิน
ขอขอบคุณ James Paige มากที่เป็นเจ้าภาพ pygame bugzilla
ขอขอบคุณ Roger Dingledine และทีมงานจาก SEUL.ORG เป็นอย่างยิ่งสำหรับการเป็นเจ้าภาพอันยอดเยี่ยมของเรา
เห็นได้ชัดว่า Pygame ขึ้นอยู่กับ SDL และ Python อย่างมาก นอกจากนี้ยังเชื่อมโยงและฝังไลบรารีขนาดเล็กอื่นๆ อีกหลายแห่ง โมดูลแบบอักษรอาศัย SDL_ttf ซึ่งขึ้นอยู่กับประเภทอิสระ โมดูลมิกเซอร์ (และ mixer.music) ขึ้นอยู่กับ SDL_mixer โมดูลรูปภาพขึ้นอยู่กับ SDL_image ซึ่งสามารถใช้ libjpeg และ libpng ได้เช่นกัน โมดูลการแปลงมี SDL_rotozoom เวอร์ชันฝังตัวสำหรับฟังก์ชัน rotozoom ของตัวเอง โมดูล surfarray ต้องการแพ็คเกจ Python NumPy สำหรับอาร์เรย์ตัวเลขหลายมิติ เวอร์ชันอ้างอิง:
ซีไพทอน | >= 3.6 (หรือใช้ PyPy3) |
เอสดีแอล | >= 2.0.8 |
SDL_มิกเซอร์ | >= 2.0.0 |
SDL_รูปภาพ | >= 2.0.2 |
SDL_ttf | >= 2.0.11 |
SDL_gfx | (ไม่บังคับ จำหน่ายใน) |
นัมปี้ | >= 1.6.2 (ไม่บังคับ) |
ไลบรารีนี้เผยแพร่ภายใต้ GNU LGPL เวอร์ชัน 2.1 ซึ่งสามารถพบได้ในไฟล์ docs/LGPL.txt
เราขอสงวนสิทธิ์ในการวางไลบรารีเวอร์ชันในอนาคตนี้ภายใต้ใบอนุญาตอื่น
โดยพื้นฐานแล้วหมายความว่าคุณสามารถใช้ pygame ในโปรเจ็กต์ใดก็ได้ที่คุณต้องการ แต่ถ้าคุณทำการเปลี่ยนแปลงหรือเพิ่มเติมใดๆ ให้กับ pygame เอง การเปลี่ยนแปลงเหล่านั้นจะต้องได้รับการเผยแพร่พร้อมกับใบอนุญาตที่เข้ากันได้ (ควรส่งกลับไปยังโปรเจ็กต์ pygame) เกมแบบปิดและเชิงพาณิชย์ก็ใช้ได้
โปรแกรมในไดเร็กทอรี examples
เป็นสาธารณสมบัติ
ดูเอกสาร/ใบอนุญาตสำหรับใบอนุญาตการพึ่งพา