Đăng ký
Cộng đồng phát triển game Việt - kết nối đam mê !

Đang xem bài

Hôm nay ngồi trà chanh chém gió với mọi người về cách mà các loại đạn bắn vào quái vật trong game. Ở chủ đề này chúng ta sẽ bàn 2 vấn đề.


+ Vấn đề 1: Cách đạn tấn công quái vật


+ Vấn đề 2: Các hiệu ứng tiếp nhận dame trên người quái vật.


Hôm nay bàn vấn đề 1 là đủ rồi. Smile


Như các bạn đã biết trong loạt demo của YinYang về game chồng trụ này. Người ta sẽ chia cách tấn công của đạn ra làm 2 loại chính:


+ Non target: Là loại là đạn cứ bắn đường đạn. Quái cứ đi đường quái. Có va chạm hay không còn nhờ sự may mắn.



+ Target: Là loại đạn mà khi đã bắn ra rồi là chắc chắn trúng. Quái có chạy đi đâu thì đạn cũng bay theo và gây sát thương.



Lấy mấy cái hình cho vui chứ trong Kingdom Rush nó là: 


+ Đạn do phù thủy + súng bắn ra: Non target



Đặc điểm của thể loại này là: code rất nhanh, xử lý ít. Phù hợp với một số nhu cầu thực tế. Người chơi khi sử dụng loại trụ có đặc tính này phải luôn tính toán đề tầm sát thương của trụ là cao nhất với khả năng tiết kiệm đạn lớn nhất. Vì nếu không xử lý thì đạn sẽ không thể bắn trúng địch nhất là trường hợp địch di chuyển với tốc độ khá cao.


Câu hỏi đặt ra là: Anh nói là loại trụ này khó trúng quái mà tui thấy nó bắn trúng hoài đó thôi? Đó là do: Vận tốc của viên đạn quá nhanh so với vận tốc của quái vật. 



Như vậy là đối với thể loại trụ này việc lập trình và tính toán không có gì phức tạp chỉ là việc cân đối giữa vận tốc của đạn và quái là chúng ta có thể tạo ra kết quả đúng với thực tế của tự nhiện.


+ Đạn do cung thủ bắn ra: Target:


Đối với loại này mang lại cho người chơi nhiều cảm xúc hơn. Đường bay của đạn đẹp hơn nhưng bu lại tính toán phức tạp hơn và xử lý chậm hơn. 


Chúng ta cùng đi vào phân tích kỹ:



Để bắn quái vật ở một tầm xa nào đó cung thủ sẽ bắn cung lên trời với góc là Alpha và lực là F nào đó. Ở đây chúng ta sẽ đối diện với 2 bài toán.


+ Lập trình cho cung đi theo quỹ đạo mặc định của nó và đón đầu để gặp quái vật dựa vào tốc độ của quái vật.


+ Lập trình cho cung đi theo quỹ đạo thay đổi theo vị trí của quái


Nếu các bạn chú ý thì trong Kingdom Rush họ dùng cả 2 thể loại này.


Đây là trích comment của bạn: Duong Tuan Nhat khi hỏi về tính quỹ đạo bay của mũi tên:



Giải bài toán chuyển động của vật bị ném tại thời điểm t0 = 0 (flame) với vận tốc đầu v0 (pixel/flame), xiên góc a(deg), gia tốc rơi tự do g (m/flame^2)


Chọn trục Ox nằm ngang, cùng hướng với vật bị ném


  Trục Oy thẳng đứng hướng lên


 


ta có phương trình chuyển động của vật theo 2 trục là


x = v0*t*cos(a)


y = v0*t*sin(a) - 1/2 * g* t^2


 


=> phương trình chuyển động


y = x * tan(a) - (g)/ (2 * v0^2 * (cos(a) ^ 2)) * x^2


dễ thấy đây là hàm bậc 2 => quỹ đạo chuyển động là 1 parabol 


cái này ai cũng biết, Tiếp theo là vấn đề góc cái mũi tên:


Mũi tên có vectơ vận tốc luôn có phương tiếp tuyến với quỹ đạo nên dễ nhận thấy mũi tên cũng có phương tiếp tuyến với quỹ đạo, vậy ta chuyển bài toán về việc tìm phương của vectơ vận tốc tại thời điểm t1.


Theo kiến thức cơ bản, ta có thể tìm được phương trình vận tốc của vật theo 2 phương Ox và Oy


vx = v0 cos(a)


vy= v0 * sin(a) - gt


Áp dụng hệ thức lượng giác ta dễ dàng tính được góc của vectơ vận tốc hay chính là góc của mũi tên!!!


 


Bạn ấy đã dùng cả giá trị của g vào trong tính toán. Ngoài ra để mô phỏng chính xác quỹ đạo bay của mũi tên chúng ta áp dụng kỹ thuật nội suy để tính góc quay cho mũi tên để khi đến đích đầu mũi tên sẽ cắm vào người quái vật. Ở trên các bạn không thấy đại lượng nào quan tâm đến vị trí của quái vật đúng không. Vì vậy nó có thể trúng có thể trật.


Đối với trường hợp: Lập trình cho cung đi theo quỹ đạo thay đổi theo vị trí của quái vật


Điều này cũng không khó khăn nếu bạn đã trải qua bước phía trên. Khi đó nội suy của các công thức đường đi luôn được tính toán lại với giá trị đầu vào thêm đại lượng vị trí quái.



Lúc này khi vẽ ra trên giấy nó không hoàn toàn đúng với các lý luận vật lý. Tuy nhiên khi đưa vào gameplay mọi chuyện lại rất khác. Người chơi sẽ được trải nghiệm cảm giác mô phỏng thức tế. Và hiệu quả mang lại khi sử dụng các loại trụ này rất cao về mức độ nghệ thuật.


Thảo luận sau sẽ trao đổi mọi người vấn đề số 2: Các hiệu ứng tiếp nhận dame trên người quái vật.

Lần cập nhật cuối tháng 10 22, 10:59 am bởi Nguyễn Tài Hải.
Skype: hai.nguyentai<br />Gmail: hainguyentai@gmail.com
Múi giờ GMT +8. Bây giờ là 12:42 am.