inflearn logo
inflearn logo

[Kiến thức toán học thực chiến cho game mà nhà phát triển game nhất định phải biết]

Không thể phủ nhận rằng toán học là điều thiết yếu đối với các nhà phát triển game. Thay vì những bài giảng toán học quá sâu truyền thống, hãy học tất cả các kỹ thuật toán học có thể áp dụng ngay lập tức!

(4.7) 3 đánh giá

52 học viên

Độ khó Cơ bản

Thời gian Không giới hạn

Unity
Unity
game-math
game-math
gemini
gemini
ChatGPT
ChatGPT
Unity6
Unity6
Unity
Unity
game-math
game-math
gemini
gemini
ChatGPT
ChatGPT
Unity6
Unity6

Bạn sẽ nhận được điều này sau khi học.

  • Hiểu các kỹ thuật toán học thường được sử dụng

  • Xóa bỏ sự phản cảm với toán học

  • Nghiên cứu và sử dụng toán học một cách sáng tạo

Toán học "Trên" Game Engine

Tại sao tất cả các khóa học toán game đều luôn khó?

Toán học game dành cho đa số các nhà phát triển game không cần phải mổ xẻ sâu vào bên trong engine!

  • Chúng tôi đã loại bỏ những gì không cần thiết và chỉ đưa vào những gì thực sự sử dụng cho những người làm việc với game engine.


  • Hỏi đáp không giới hạn để hỗ trợ sự hiểu biết và nghiên cứu của học viên.


  • Tôi đã thêm video "Nghiên cứu toán học với AI". Hãy cùng vượt qua cả những điều chưa biết.

  • Tôi đã tập trung tất cả để tạo ra khóa học này nhằm phát triển 'khả năng toán học thực chiến trong game' của các bạn.
    Tôi hy vọng khóa học này sẽ giúp các bạn tiết kiệm thời gian.

Các dự án lấy toán học làm trọng tâm

Vậy tại sao cần có toán học trong game?

Các bạn, liệu có thể giải thích 'phép thuật' một cách logic được không? Phép thuật trong tiểu thuyết hay phim ảnh là phi lý tính. Nhưng phép thuật trong game thì khác. Bởi vì chúng ta phải hiện thực hóa những hiện tượng phi lý tính đó một cách logic thông qua code.

Bí quyết đó là gì? Cuối cùng thì tất cả đều là 'toán học'.

  • Red Dead Redemption 2: Sự tự nhiên không bao giờ va chạm khi phi ngựa song song với NPC (Ứng dụng đường tiệm cận và phép nhân)

  • Sự trở về của Mjolnir: Đường cong thanh lịch của chiếc búa trở về chính xác tay tôi (đường cong Bézier)

  • Thiết bị cơ động lập thể: Cảm giác vật lý của dây thừng được căng chặt (lực căng)

  • Hạ cánh Falcon 9: Mô phỏng hạ cánh với góc chính xác (arctangent)

  • Xác định tầm nhìn: Cách biết kẻ địch ở phía sau hay phía trước (tích vô hướng/tích có hướng của vector)

Vượt ra ngoài việc chỉ gọi các phương thức đơn giản, nếu bạn muốn thiết kế và triển khai lý thuyết của riêng mình thì toán học game là điều tất yếu.

Nhưng nhiều người lại sợ hãi chỉ khi nghe đến từ toán học. Dù có cố gắng mở bất kỳ cuốn sách toán học game nào ở Hàn Quốc, chúng chỉ toàn "logic nội bộ engine" hay "các chứng minh phức tạp", khiến bạn bối rối không biết làm thế nào để áp dụng ngay vào game của mình.

Vì vậy, tôi muốn giảng dạy toán học game thực chiến sử dụng "trên" game engine, lần đầu tiên tại Hàn Quốc.

Lý thuyết phức tạp bên trong engine? Bỏ hết đi. Chúng tôi chỉ tập trung vào những khái niệm thực chiến thực sự áp dụng được trong phát triển game.

Công thức thì có đầy trên internet, và Unity sẽ tính toán giúp chúng ta. Chúng ta không cần phải thuộc công thức, cũng không cần phải tính toán trực tiếp. Chỉ tập trung vào 'cách sử dụng' mà thôi.

Niềm tin mà tôi có

UniCoti

Tôi tin rằng trò chơi là phương tiện có giá trị cao nhất và đỉnh cao nhất trong việc truyền tải câu chuyện. Chính vì vậy, tôi có một mục tiêu vững chắc là một ngày nào đó sẽ tạo ra một trò chơi lý tưởng để mang lại cảm động lớn cho nhân loại.


Dù tôi không thể thực hiện được ước mơ đó, tôi vẫn muốn để lại di sản để giúp đỡ các nhà phát triển khác có thể đạt được ước mơ này, vì vậy tôi đã tạo ra khóa học này.
Tôi hy vọng các bạn cũng sẽ cùng tham gia vào hành trình vĩ đại để game được công nhận giá trị thực sự của nó.

Tuy còn nhiều thiếu sót nhưng tôi muốn truyền tải ảnh hưởng tích cực đến xã hội,
Khác với các giáo trình/khóa học hiện có đề cập đến cả toán học bên trong engine mà không bao giờ sử dụng đến, tôi muốn giúp ích bằng khóa học tập trung vào việc sử dụng engine.

Sau khi hoàn thành khóa học?

Bạn sẽ có thể nghiên cứu lý thuyết toán học về thuật toán mà mình mong muốn.

Bạn sẽ có thể hiện thực hóa nhiều tình huống kỳ diệu cần xảy ra trong game.
Tôi hy vọng khóa học này sẽ trở thành bước ngoặt trong cuộc đời bạn.

Khóa học được thiết kế để bạn có thể thử nghiệm cả những kỹ thuật chưa học thông qua AI, giúp bạn tiếp cận được cả những lĩnh vực toán học mà mình chưa biết. Tất nhiên bạn vẫn cần phải học, nhưng thông qua AI, bạn sẽ tiết kiệm được rất nhiều thời gian và công sức hiểu biết.

Trong các khóa học khác, tôi đã loại bỏ tất cả các kiến thức toán học không cần thiết cho đa số người sử dụng engine như tính toán polygon, phép chiếu, ma trận, mesh, frustum, quaternion - những thứ chỉ được dùng bên trong engine, và chỉ giải thích những kiến thức cần thiết ở mức độ cần thiết.

  • Những kiến thức toán học đã học trước đây, đương nhiên có thể quên và tính toán? Đương nhiên có thể sai sót. Đây không phải là phòng thi đại học. Chúng ta có internet và máy tính. Tôi đã truyền tải bản chất.

Tôi sẽ cho bạn xem ví dụ sử dụng thực tế cho từng kỹ thuật!

Ví dụ di chuyển người chơi

Vector(2-2), độ lớn của vector(3-2)

Sử dụng Mathf

System.Math, Mathf(3-1)

Ví dụ bắn đạn

Chuẩn hóa vector [Lý thuyết/Thực hành](3-3), B-A Dir(3-4)

Ví dụ về độ tương đồng vector

Độ tương đồng của vector(3-6), (4-3)

Ví dụ ứng dụng hàm lượng giác

Hàm lượng giác(4-1)

Ví dụ ứng dụng pháp tuyến

Pháp tuyến(4-4)

Ví dụ theo dõi đối tượng

Ứng dụng đường tiệm cận[Lý thuyết/Thực hành](3-5), Hàm ngược(4-2),

Nội suy [Lerp](4-5)

Ví dụ phán biệt tầm nhìn trước sau

Tích vô hướng của vector - Phán định tầm nhìn [Nâng cao](5-1)

Ví dụ phán định tầm nhìn trái phải

Tích có hướng của vectơ (5-2)

Các ví dụ được triển khai bằng code

Khái niệm góc Euler và quaternion(5-3), đường cong Bézier(5-4), giải tích(5-5), chuỗi Taylor(5-6), nghiệm số(5-7)

Tất cả các khái niệm toán học đều có ví dụ được trình bày trực tiếp nên bạn sẽ dễ dàng hiểu khi nào, ở đâu cần sử dụng!

****** Quan trọng! Nếu bạn muốn học phát triển game nhưng cần sự giúp đỡ ******

Nếu bạn muốn học phát triển game nhưng gặp khó khăn trong việc mua khóa học, hãy liên hệ với tôi bằng bất kỳ cách nào và chia sẻ hoàn cảnh của bạn, tôi sẽ cố gắng giúp đỡ. Email, DM Instagram, Q&A Inflearn, blog, bình luận YouTube, v.v...

Nội dung học tập

  • Giới thiệu nội dung học tập tổng quan theo từng phần


OT và kiến thức tiên quyết/khái niệm cơ bản

  • Trước khi bắt đầu khóa học này, bạn sẽ học về kiến thức cơ bản về Unity, thiết lập môi trường và các khái niệm toán học cơ bản cần thiết!

  • Thực ra phải trả phí nhưng.. tôi đã mang video này đến cho các bạn.


Kỹ thuật cơ bản

  1. System.Math, Mathf


  2. Độ lớn của vector

  3. Chuẩn hóa vector [Lý thuyết]

  4. Chuẩn hóa vector [Thực hành]

  5. Hướng đi đến đích, B-A Direction

  6. Ứng dụng đường tiệm cận[Lý thuyết]

  7. Ứng dụng đường tiệm cận [Thực chiến]

  8. Độ tương đồng của vector

Trong phần kỹ thuật cơ bản được cấu trúc theo mục lục trên, chúng ta sẽ tập trung học các kỹ thuật có độ khó thấp nhưng tầm quan trọng cao, có tính hiệu quả tốt. Đây sẽ là bước khởi đầu để có thể ứng dụng.


Kỹ thuật trung cấp

  1. Hàm lượng giác

  2. Hàm ngược [Lý thuyết]

  3. Hàm ngược[Thực chiến]

  4. Tích vô hướng của vector[Lý thuyết]

  5. Tích vô hướng của vector[Thực chiến]

  6. Pháp tuyến

  7. Nội suy [Lerp]

Trong phần kỹ thuật trung cấp được cấu trúc theo mục lục trên, bạn sẽ học các kiến thức toán học thường được sử dụng như kỹ thuật chính với độ khó vừa phải. Bạn sẽ học các khái niệm toán học với chức năng mạnh mẽ hơn và bước vào giai đoạn mở rộng kiến thức đã biết.

Kỹ thuật nâng cao + Nghiên cứu AI

  1. Tích vô hướng của vector - Phán định tầm nhìn [Nâng cao]

  2. Tích có hướng của vectơ

  3. Khái niệm góc Euler và quaternion

  4. Đường cong Bezier (Bezier Curve)

  5. Giải tích

  6. Chuỗi Taylor

  7. Nghiệm số [Phương pháp Newton-Raphson]

  8. Nghiên cứu toán học với AI

Trong phần kỹ thuật nâng cao được cấu thành từ mục lục trên, chúng ta sẽ học các kỹ thuật cấp độ chính/dùng cho nghiên cứu với độ khó khá cao. Dựa trên thông tin mình biết để biến đổi công thức, tìm ra ý nghĩa và những gì chưa biết thì thực sự nghiên cứu toán học thông qua AI.

Mức độ quan trọng và độ khó

Mức độ quan trọng và độ khó

Khi bắt đầu bài giảng, tôi sẽ đề cập đến mức độ quan trọng và độ khó của khái niệm trước khi bắt đầu! Vì toán học có phần hơi khó và mang tính học thuật nên tôi đã thêm phần này để giảm bớt áp lực.

Ừm... tuy không nên nói thế này nhưng nếu độ quan trọng thấp mà độ khó cao khiến bạn căng thẳng thì hãy bỏ qua! Quay lại học sau cũng được mà!

Lưu ý trước khi học

  • Nếu bạn muốn tự mình làm game thì điều quan trọng là phải hiểu hoàn toàn từng bài giảng trước khi chuyển sang bài tiếp theo. (Hãy đặt câu hỏi👍)

  • Nếu có điều gì không hiểu hoặc có thắc mắc thêm, vui lòng đặt câu hỏi. (Tôi sẽ trả lời trực tiếp)

Môi trường thực hành

  • Hệ điều hành và phiên bản (OS): Windows (Không có hướng dẫn bổ sung cho Mac)

  • Công cụ sử dụng: Unity, Visual Studio.

  • Cấu hình PC: Tham khảo cấu hình khuyến nghị cho Unity6.

  • Verson : 6000.0.55f1

  • AI: gemini, ChatGPT

Tài liệu học tập

  • Có bản hoàn chỉnh trên link GitHub nên khi gặp lỗi hoặc trải nghiệm demo, bạn có thể tham khảo.

Kiến thức tiên quyết và lưu ý

  • Tốt nhất là nên có kiến thức lập trình cơ bản, nhưng nếu không có thì chỉ cần ôn tập kỹ là được.

  • Nếu có điều gì không biết thì hãy sử dụng AI, Google hoặc đặt câu hỏi!


Khuyến nghị cho
những người này

Khóa học này dành cho ai?

  • Nhà phát triển game (tương lai) còn xa lạ với toán học

  • Lập trình viên game đã học lý thuyết nhưng chưa từng sử dụng toán học

  • Học sinh muốn học cách sử dụng toán học theo phương pháp thú vị nhất

  • Học sinh có hứng thú với bản thân môn toán

Cần biết trước khi bắt đầu?

  • Cần có kiến thức cơ bản về Unity, nhưng khóa học cũng bao gồm video chuẩn bị cho điều đó

Xin chào
Đây là UniCoti

4,129

Học viên

134

Đánh giá

24

Trả lời

4.9

Xếp hạng

2

Các khóa học

Tôi là một nhà phát triển game đang hoạt động với tư cách là đối tác liên kết (affiliate) theo lời mời từ Unity.

Tôi đang hoạt động tích cực trên nhiều nền tảng khác nhau như blog, Instagram và YouTube.

Từ khi còn nhỏ, tôi đã rất thích việc chế tạo, và chỉ với chiếc máy tính mà không cần bất kỳ nguyên liệu nào,

Tôi bắt đầu học lập trình từ ưu điểm là có thể sáng tạo ra mọi thứ chỉ với một chiếc máy tính.


Trò chơi được truyền cảm hứng từ tựa game mang tên Legend of Zelda, trong số các phương tiện truyền tải cốt truyện, tôi nghĩ nó có tiềm năng cao nhất nên việc tạo ra một trò chơi lý tưởng là ước mơ của đời tôi. Tôi đang tạo ra các bài giảng để mọi người có thể tạo ra trò chơi một cách dễ dàng và hiệu quả hơn một chút.

Tôi tin rằng trò chơi là phương tiện truyền tải cốt truyện có tiềm năng cao nhất, vì vậy ước mơ của cuộc đời tôi là tạo ra một trò chơi lý tưởng.

Tôi đã tạo ra khóa học này để mọi người đều có thể làm game một cách dễ dàng và hiệu quả hơn!


Tài liệu tác phẩm hoàn thiện: github.com/UniCoti/inflearn

Blog phát triển game: https://inf.run/bHXtb

Đang theo học tại Khoa Máy tính và AI, Đại học Dongguk

Thêm

Chương trình giảng dạy

Tất cả

32 bài giảng ∙ (3giờ 55phút)

Tài liệu khóa học:

Ngày đăng: 
Cập nhật lần cuối: 

Đánh giá

Tất cả

3 đánh giá

4.7

3 đánh giá

  • 7410panda4295님의 프로필 이미지
    7410panda4295

    Đánh giá 4

    Đánh giá trung bình 5.0

    5

    100% đã tham gia

    Một bài giảng gây thất vọng về nhiều mặt. Nội dung các mục trong bài giảng không có vấn đề gì, nhưng cách dẫn dắt bài giảng lại khá thiếu thân thiện. Trước hết, giảng viên không hề cố gắng giúp người học hiểu các cú pháp toán học hay diễn giải chúng một cách dễ hiểu. Sau khi chỉ giới thiệu sơ qua một lần, giảng viên mặc nhiên coi đó là điều hiển nhiên và ngay lập tức sử dụng cú pháp đó để triển khai nội dung tiếp theo. Cảm giác như thể chương trình toán học trung học cơ sở và trung học phổ thông kéo dài vài năm đã được nén lại chỉ trong vài câu văn. Ở những phần này, mỗi khi bị tắc nghẽn, tôi đã phải tốn không ít thời gian để tìm kiếm bên ngoài hoặc dùng AI mới có thể hiểu được. Về phần này, tôi có thể tạm chấp nhận và bỏ qua với lý do kiến thức toán học của người học còn thiếu sót nên khó tiếp thu. Tuy nhiên, điều đáng thất vọng hơn lại nằm ở chỗ khác. Khi đã bỏ tiền ra mua khóa học, việc kỳ vọng tài liệu bài giảng được hiển thị tử tế trên màn hình là điều đương nhiên. Thế nhưng, việc thỉnh thoảng giảng viên lại cho xem Instagram cá nhân hoặc các tài liệu bài giảng chưa được cung cấp trước đó là điều cực kỳ khó hiểu. Những đoạn giảng viên vừa cuộn chuột xem sách điện tử hay blog cá nhân vừa đọc giải thích đã đẩy sự ngỡ ngàng của tôi lên mức tối đa. Trong bài giảng có đoạn nói thế này: 'Nếu các bạn nhìn trong sách, tôi đã định nghĩa hàm số ở phía dưới...' Dĩ nhiên là người học không hề có địa chỉ Instagram hay sách điện tử của giảng viên. Tại sao tôi lại phải tạm dừng video rồi đọc từng chữ một như thế này để nghe giảng chứ? Cách dẫn dắt bài giảng hời hợt tạo cảm giác giảng viên đang liệt kê kiến thức hơn là truyền đạt chúng. Tôi nghĩ định hướng kiến thức muốn truyền tải là tốt, nhưng đây là một bài giảng chưa được chuẩn bị kỹ lưỡng.

    • unicoti
      Giảng viên

      Tôi đã nghĩ rằng các tài liệu như Instagram hay blog có thể tìm kiếm được nên đã sử dụng chúng, và cũng giả định rằng sách điện tử (E-book) đã được gửi đi sau khi đề cập trong buổi OT là sẽ tặng nếu gửi email.. Tôi cứ ngỡ rằng bằng cách cung cấp dự án mẫu qua GitHub, các bạn có thể nhận được tất cả nội dung trong video ngoại trừ phần ghi chú, nhưng có lẽ đường dẫn truy cập hơi phức tạp.. Tôi rất xin lỗi vì sự thiếu sót này về nhiều mặt. Dù vậy, tôi chân thành cảm ơn bạn đã để lại đánh giá khóa học tốt. Tôi sẽ cải thiện hơn nữa trong các dự án tương lai.

  • rhdqngkwk님의 프로필 이미지
    rhdqngkwk

    Đánh giá 5

    Đánh giá trung bình 4.6

    4

    100% đã tham gia

    Hoàn thành khóa học và để lại đánh giá. Khóa học tóm tắt ngắn gọn những điểm cốt lõi nên tôi có thể hoàn thành nhanh chóng. Khi xem các khóa học hoặc sách khác, có trường hợp được học một số ứng dụng toán học nên tầm nhìn được mở rộng. Tôi cũng kỳ vọng những điểm như vậy ở khóa học này. Nhưng chỉ nhìn vào chương trình học thì có vẻ khó kỳ vọng nội dung đặc biệt nên tôi đã rất phân vân khi mua. Về phương pháp giảng dạy, khi xem trước thì có vẻ giảng viên sẽ giải thích với giả định người học đã có kiến thức nền tảng, và mọi dự đoán đều đúng. Vì vậy khóa học này có thể khó hoàn thành đối với những người không tự tin về toán. Tuy nhiên không phải là nội dung khó, tôi cũng không giỏi toán nhưng vẫn có thể hiểu tất cả các công thức và lời giải trong bài giảng. Điểm tiếc nuối là không biết có cần thiết phải liên quan đến Unity Engine đến mức phải đưa cả bài giảng Unity vào không, tôi không hiểu lý do tại sao phải có bài giảng Unity trong khóa học này. Các ví dụ đã là nội dung được biết đến nhiều như sách giáo khoa rồi, mà trong khóa học này nội dung còn bị rút gọn nhiều. Phần cuối khóa học thì hoàn toàn không cần Unity. Có vẻ giảng viên muốn tạo nền tảng để có thể sử dụng toán học trong giải quyết vấn đề nếu có những kiến thức được giới thiệu ở đây, nhưng tôi nghĩ chương trình học có vấn đề. Hướng đi của khóa học khá khó hiểu đối với tôi. Ngoại trừ việc thỉnh thoảng tự nói chuyện với bản thân, bài giảng nghe rõ ràng và ý định cũng tốt nên tôi cho 4 sao.

    • unicoti
      Giảng viên

      Cảm ơn bạn đã để lại đánh giá chân thành. Thực ra tôi cũng đã hoàn thành khóa học nhưng vì lĩnh vực toán học game vốn có những khía cạnh khá nan giải trong việc giảng dạy nên tôi luôn cảnh giác rằng nó có thể chưa hoàn hảo. Trong trường hợp khóa học phần 1, tôi tập trung nhiều vào Unity và nhận được nhiều đánh giá tích cực về phần giải thích dành cho người mới bắt đầu nên có lẽ tôi đã có phần tự tin thái quá. Xin lỗi vì đã khiến bạn cảm thấy khóa học chưa hoàn thiện. Tôi sẽ coi đây là động lực để phát triển hơn nữa.

  • tennisman7072858님의 프로필 이미지
    tennisman7072858

    Đánh giá 3

    Đánh giá trung bình 5.0

    5

    55% đã tham gia

    Tôi đăng ký khóa học này vì muốn hiểu về toán học trong game thông qua các ví dụ thực tế. Nhờ việc giảng dạy kèm theo ví dụ nên tôi thấy mình tiếp thu nhanh hơn. + Tôi đăng ký vì muốn học cùng với cuốn "Bí kíp Unity" (Unity 비법서) nữa ạ!! Email: khj008300@gmail.com

    • unicoti
      Giảng viên

      Cảm ơn bạn đã tin tưởng và mua hàng. Hiện tại tôi đang nhận được một số phản hồi, nên nếu bạn có thắc mắc hay điểm nào cần cải thiện, hãy chia sẻ nhé. Tôi sẽ tận tâm bổ sung và giải đáp cho bạn. Tôi cũng sẽ gửi sách đi ngay lập tức.

Khóa học tương tự

Khám phá các khóa học khác trong cùng lĩnh vực!

889.518 ₫