Xử lí kép lập trình game trên console


Mình có đang lập trình 1 game caro trên console, khi mình đánh 1 con thì thanh TIME sẽ chạy mất dần, nhưng trong khoảng thời gian chạy thanh TIME mình ko thể di chuyển để đánh con cờ khác. Không biết có cách nào để xử lí song song vừa chạy thanh TIME mà vừa có thể di chuyển đánh trên bàn cờ ko? Mình xin cảm ơn

1 Like

Xin chúc mừng :clap:
Khi hỏi điều này, bạn đã bước thêm một bước trong thế giới lập trình.
Từ khóa dành cho bạn:

  • Tiếng Việt: đa luồng trong C++
  • Tiếng Anh: multithreading C++
3 Likes

Hi HoangLong.hcmus.
Chuyển qua code đồ họa luôn.

1 Like

Trong câu hỏi đã có câu trả lời: “xử lý song song” :smile:
Lần đầu tiên trong đời mình dính cái này cũng là progress bar, nhưng mà trong C# nên dễ hơn.

2 Likes

code đồ họa? ý bác là sao e chưa hiểu lắm

em mới năm nhất chưa biết gì về C# :v

Làm hết mình cái project cờ caro này đi, bạn sẽ lên trình nhanh lắm.
Kinh nghiệm từ 1 người đã bị đuổi khỏi HCMUS :rofl:

2 Likes

hahaha e đang cố. mới vào đã ăn ngay quả đồ án khiếp quá

Hi HoangLong.hcmus.

  1. Bạn tìm sách về lập trình game để đọc.
    https://www.amazon.com/SFML-Game-Development-Jan-Haller/dp/1849696845
  • SFML là một thư viện đồ họa thiết kế tốt và doc đầy đủ. (Đọc qua mã nguồn của nó trên git).
  • Chuẩn C++ mới hiện đại.
  • Có code đầy đủ đi kèm.
  1. Vấn đề của bạn có vẻ ở vòng lặp game.
    https://yinyangit.wordpress.com/2012/03/17/game-dev-tao-vong-lap-game-game-loop/
    Thường khi lập trình trên conole vấn đề là hàm bắt sự kiện hay bị lock, các hàm update ui thường bị nháy.
    Cách giải quyết thì áp dụng vòng lặp game vào.
    1 Bắt sự kiến nhập -> update vị trí muốn đánh quan cờ, lấy time để update thanh thời gian -> đẩy hết buffer lên màn hình. Quay lai.
1 Like

Không cần multi-threading mới có thể xử lý 2 (n) việc cùng lúc. 1 loop với event polling cũng dư rồi.

4 Likes

em vừa fix đc rồi anh. tks a nhiều <3

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?