Tôi tò mò về các cấu trúc dữ liệu được sử dụng khi lập trình các trò chơi cũ hơn như Super Mario Brothers cho NES và Super Mario World cho SNES. Hiểu biết của tôi là các trò chơi của thời kỳ này được viết trong hội đồng. Các lập trình viên có định nghĩa / sử dụng bất kỳ cấu trúc dữ liệu nào không?
Ví dụ: khi một nhóm tiền xu xuất hiện trên màn hình chúng được lưu trữ như thế nào? Có phải các lập trình viên chỉ sử dụng mảng? Hoặc có lẽ họ đã có danh sách liên kết?
Chúc mừng!
Chỉnh sửa : Tôi quan tâm đến các phương pháp khác nhau ... không nhất thiết là một cách tiếp cận phổ quát.
Chỉnh sửa 2 : Trong một số trò chơi của tôi, tôi sử dụng cách tiếp cận (có khả năng xấu) đối với các bộ sưu tập và tôi muốn biết liệu có bất kỳ trò chơi cũ nào sử dụng cách tiếp cận tương tự không. Tôi thích làm như sau:
// statically allocated arrays (max number of coins is 4)
int coinsXs[4] = {0, 0, 0, 0};
int coinsYs[4] = {0, 0, 0, 0};
// bitset that keeps track of which coins are active
int coinsActive = 0;
// ...
// update the active coins in an update function
for(int i = 0; i < 4; i++){
if(coinsActive & (1 << i)){
// update ith coin
}
}