ฉันเริ่มดูกระแส Handmade Heroที่ซึ่ง Casey Muratori สร้างเอ็นจิ้นเกมโดยไม่ต้องใช้เฟรมเวิร์กหรืออย่างนั้น เมื่อวานฉันไปถึงส่วนที่เขาแสดงให้เห็นว่าภาพวาดลงบนหน้าจออย่างไร เท่าที่ฉันเข้าใจเขาได้จัดสรรหน่วยความจำบางส่วนให้ใหญ่เท่ากับขนาดหน้าจอที่เขาต้องการวาด จากนั้นเขาสร้างบิตแมปที่เขาส่งไปยังหน่วยความจำบัฟเฟอร์ที่เขาจัดสรรและดึงมันไปที่หน้าจอโดยใช้ฟังก์ชั่นเฉพาะของระบบปฏิบัติการ
นี่ดูเหมือนจะค่อนข้างตรงไปตรงมา ฉันใช้ GameMaker เปลี่ยนเป็น Love2D ทำงานเล็กน้อยกับ Sprite Kit แต่ฉันสงสัยอยู่เสมอว่าเกิดอะไรขึ้นภายใต้เลเยอร์นี้บางครั้งทำให้สับสน
ระบุว่าทำไมแม้แต่ต้องใช้ห้องสมุดกราฟิก (OpenGL, SFML, SDL, ... ) เมื่อสิ่งที่คุณต้องทำคือเพียงจัดสรรบัฟเฟอร์บางส่วนผ่านบิตแมปและวาดลงบนหน้าจอ
หากคุณต้องการวาดสิ่งที่แตกต่างให้กับหน้าจอคุณเพียงแค่เขียนลงในบิตแมปของคุณซึ่งจะถูกส่งผ่านไปยังบัฟเฟอร์ ฉันค่อนข้างใหม่กับการเขียนโปรแกรม แต่ดูเหมือนจะง่ายสำหรับฉัน โปรดแก้ไขฉันหากฉันผิด