1. Trang chủ
  2. » Tất cả

Đồ án tìm hiểu về opengl và thiết kế 2d game engine

29 26 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Đồ Án Tìm Hiểu Về OpenGL Và Thiết Kế 2D Game Engine
Tác giả Nguyễn Viết Lưu, Vũ Đức Trung
Người hướng dẫn ThS. Thái Thụy Hàn Uyển
Trường học Trường Đại học Công nghệ Thông tin
Chuyên ngành Khoa học máy tính
Thể loại Báo cáo đồ án
Năm xuất bản 2022
Thành phố Thành phố Hồ Chí Minh
Định dạng
Số trang 29
Dung lượng 0,95 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ PHẦN MỀM BÁO CÁO ĐỒ ÁN 2 TÌM HIỂU VỀ OPENGL VÀ THIẾT KẾ 2D GAME ENGINE Giảng viên hướng dẫn ThS Thái Thụy Hàn Uyển Sinh viên th[.]

Trang 1

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

KHOA CÔNG NGHỆ PHẦN MỀM

BÁO CÁO ĐỒ ÁN 2 TÌM HIỂU VỀ OPENGL VÀ THIẾT KẾ 2D GAME

ENGINE

Giảng viên hướng dẫn : ThS Thái Thụy Hàn Uyển Sinh viên thực hiện 1 : Nguyễn Viết Lưu – 19520155 Sinh viên thực hiện 2 : Vũ Đức Trung - 19520324

Thành phố Hồ Chí Minh, tháng 12 năm 2022

Trang 2

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

KHOA CÔNG NGHỆ PHẦN MỀM

BÁO CÁO ĐỒ ÁN 2 TÌM HIỂU VỀ OPENGL VÀ THIẾT KẾ 2D GAME

ENGINE

Giảng viên hướng dẫn : ThS Thái Thụy Hàn Uyển Sinh viên thực hiện 1 : Nguyễn Viết Lưu – 19520155 Sinh viên thực hiện 2 : Vũ Đức Trung - 19520324

Thành phố Hồ Chí Minh, tháng 12 năm 2022

Trang 3

Lời cảm ơn

Đồ án 2 là môn học có nhiều thử thách, đòi hỏi người học phải dành nhiều thời gian, công sức để nghiên cứu, tìm tòi và xây dựng Đồng thời, đây cũng là cơ hội để sinh viên thực hành những gì đã học trong suốt những năm đại học và học hỏi thêm nhiều kiến thức, kinh nghiệm và kỹ năng mới phục vụ cho công việc sau này Hơn hết, đồ án 2 là bước chuẩn bị cuối cùng để nhóm phát triển lên thành khóa luận tốt nghiệp Cho nên đây được xem là thử thách và cũng là cơ hội để sinh viên được rèn luyện, hoàn thiện bản thân bằng những kĩ năng tích lũy được trong suốt quá trình làm đồ án

Để có thể đi đến đoạn cuối của hành trình là cả sự nỗ lực, cố gắng và kiên trì Đồng hành cùng sinh viên vượt qua thử thách này là sự có mặt và giúp đỡ của những người thầy tận tâm trong công việc

Nhóm xin chân thành cảm ơn cô Thái Thị Hàn Uyển đã tận tình giúp đỡ nhóm em hoàn thành đồ án 2 của mình Chính nhờ những sự góp ý, động viên của cô đã giúp đồ án của nhóm được hoàn thiện và chuyên nghiệp nhiều hơn Bên cạnh đó, nhóm đã học hỏi được rất nhiều kiến thức, kinh nghiệm và bài học thú vị trong quá trình làm khoá luận, đó

sẽ là những hành trang hữu ích cho nhóm sau này

Nhóm cũng xin chân thành cảm ơn các anh chị, bạn bè đã giúp đỡ nhóm trong quá trình thực hiện đồ án Nhờ mọi người mà nhóm có nhiều góc nhìn khác nhau về đề tài đang làm, từ đó giúp hoàn thiện đồ án của nhóm Một lần nữa, nhóm xin chân thành cảm ơn cô

và mọi người

Trang 4

Lời nhận xét của giảng viên hướng dẫn

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

Trang 5

Mục lục

Lời cảm ơn 3

Lời nhận xét của giảng viên hướng dẫn 4

Mở đầu 7

Chương 1 Tổng quan 8

1.1 Lý do chọn đề tài 8

1.1.1 Giới thiệu sơ lược về OpenGL 8

1.1.2 Giới thiệu sơ lược về Game Engine 8

1.1.3 Các Game Engine đã có trên thị trường 8

1.1.4 Lý do lựa chọn đề tài 9

1.2 Mục tiêu đồ án 10

1.2.1 Yêu cầu về nghiên cứu 10

1.2.2 Yêu cầu về tính năng sản phẩm 10

1.2.3 Yêu cầu về kỹ thuật sản phẩm 10

1.3 Hướng tiếp cận dự kiến 10

1.3.1 Công nghệ dự kiến sử dụng 10

1.3.2 Đối tượng phạm vi dự án nhắm đến 10

Chương 2 Cơ sở lý thuyết 11

2.1 Cách một game hoạt động 11

2.1.1 Loop 11

2.1.2 Render 11

2.1.3 Game object 11

2.1.3 Component 11

2.1.4 Script 11

2.2 OpenGL 11

2.2.1 OpenGL là gì? 11

2.2.2 OpenGL hoạt động như thế nào? 11

2.2.3 Lịch sử hình thành, các phiên bản của OpenGL 12

2.2.4 Đối thủ cạnh tranh của OpenGL 13

2.2.5 Tại sao cần có OpenGL? 13

2.2.6 Tại sao Shader lại chạy nhanh tới mức như vậy? 13

2.3 Game Engine 15

Trang 6

2.3.1 Game Engine là gì? 15

2.3.2 Mục đích ra đời 15

2.3.3 Game Engine trong thời điểm hiện tại 16

2.3.5 Những thành phần nào cấu thành nên Game Engine 16

2.3.6 Quy trình tạo ra game dựa vào Game Engine 16

Chương 3 Thiết kế hệ thống 17

3.1 Kiến trúc hệ thống 17

3.2 Mô tả các thành phần trong hệ thống 17

Chương 4 Phân tích thiết kế 18

4.1 Phân tích chức năng 18

4.1.1 Bảng tính năng 18

4.1.2 Danh sách các tính năng đã phát triển 18

4.1.3 Danh sách các tính năng đang trong quá trình phát triển 21

4.2 Thiết kế giao diện 21

4.2.1 Sơ đồ thiết kế giao diện 21

4.2.2 Danh sách giao diện 22

4.2.3 Mô tả chi tiết giao diện 22

Chương 5 Thực nghiệm 23

5.1 Thực nghiệm chương trình 23

5.1.1 Phương pháp đánh giá 23

5.1.2 Kết quả đánh giá 24

Kết luận 25

Hướng phát triển 26

Cài đặt và sử dụng 27

Phân công công việc 28

Tài liệu tham khảo 29

Trang 7

Mở đầu

Ngày nay, tốc độ phát triển của nghành Công nghệ thông tin phải nói là nhanh đến chóng mặt từ những bước ban đầu chỉ dùng để tính toán, xem tin tức, lưu trữ một số thông tin quan trọng và cho đến bây giờ, nó gần như cho phép con người có thể đi vào một thế giới quan với những thao tác gõ phím đấp chuột là có thể xây dựng nên một Game đơn giản như là Mario, Pinball, … Một phần tạo nên sự thành công ấy là công nghệ OpenGL OpenGL là viết tắt cho "Open Graphics Library" và nó được dùng rất nhiều trong ngôn ngữ máy tính

Bên cạnh sự phát triển nhanh chóng ấy, xu hướng có thể tạo một tựa Game đơn giản đang dần được mọi người yêu thích quan tâm Và chúng ta có thể ngày nay có rất nhiều phần mềm giúp con người tạo được những tựa Game từ đơn giản đến nâng cao Đó là lí

do mà chúng em tìm hiểu về công nghệ OpenGL và làm nên phần mềm công cụ giúp thiết kế Game 2D một cách dễ dàng dễ hiểu cho người dùng

Các công việc chính mà phần mềm hỗ trợ để giúp cho việc phát triển game một cách

dễ dàng hơn là: Hỗ trợ render hình ảnh với FPS cao, kéo thả các vật thể trong game, dễ dàng thêm các component cho vật thể trong game, hỗ trợ phát âm thanh, tạo animation,

Trang 8

Chương 1 Tổng quan

1.1 Lý do chọn đề tài

1.1.1 Giới thiệu sơ lược về OpenGL

OpenGL là viết tắt của “Open Graphics Library”, là một API đa nền tảng, đa ngôn ngữ cho việc render đồ họa 2D và 3D

OpenGL xử lý các phép tính đồ họa trực tiếp trên GPU thay vì CPU, điều này làm cho giảm các công việc cực nhọc trên GPU, từ đó làm cho đồ họa được render nhanh hơn

1.1.2 Giới thiệu sơ lược về Game Engine

Game Engine là một phần mềm dùng để xây dựng và thiết kế trò chơi điện tử Hình dung một cách đơn giản thì game engine cung cấp cho các nhà sản xuất game những nguyên liệu cơ bản để từ đó họ sẽ dễ dàng hơn trong việc phát triển game của mình

Lợi ích của Game Engine:

• Tạo ra game mà hạn chế hoặc không sử dụng lập trình

• Tiết kiệm thời gian, công sức và tiền bạc

• Đồ họa chân thực

• Hỗ trợ đa nền tảng

1.1.3 Các Game Engine đã có trên thị trường

Hiện nay có rất nhiều Game Engine trên thị trường, đây là một số game engine nổi bật:

Unreal Engine

Unreal Engine cũng là một trong số những game engine phổ biến nhất trên toàn thế giới được phát triển bởi Epic Games Nó là một game engine đa nền tảng Game được tạo ra bởi Unreal Engine được hỗ trợ trên Microsoft Windows, macOS, Linux, SteamOS, HTML5, iOS, Android, Nintendo Switch, PlayStation 4, Xbox One Nó có một Market của riêng mình, nơi mà các packages có thể được mua Ngoài ra, đối với những chương trình nặng về

Trang 9

đồ họa, nó yêu cầu một máy tính mạnh hơn những engine khác như Unity Một số game được làm bởi Unread Engine: Fornite, Batman Arkham City,…

CryEngine

Được phát triển bởi CryTek CryEngine là một trình chỉnh sửa Sandbox 1đầy đủ tính năng dùng để phát triển cho hầu hết nền tảng chính bao gồm: Xbox, PlayStation, PC và Oculus Một số game được phát triển bởi CryEngine: War of Rights, Last Kingdom,…

Coco’s Creator

Nó là một công cụ tập trung vào việc tạo nội dung được phát triển bởi Xiamen; nó có một bộ các tính năng mạnh mẽ và rất thân thiện với người dùng Đây là một công cụ phát triển trò chơi đa nền tảng hỗ trợ nhiều nền tảng khác nhau, bao gồm web, iOS, Android, Windows và Mac Nó hỗ trợ cả phát triển trò chơi 2D và 3D Họ cũng cung cấp các giải pháp khác như Cocos 2D và Cocos 2Dx Một số game được phát triển bởi Coco’s Creator: Magic Rush, Ark of Conquest, Idle Heroes,…

Amazon Lumberyard

Được phát triển bởi Amazon Nó chủ yếu được sử dụng để phát triển game 3D Nó hỗ trợ chế độ xem trước VR (VR preview mode), kịch bản trực quan (visual script) và tích hợp Twitch của Adobe Photoshop Amazone Lumberyard hỗ trợ phát triển game online nhiều người chơi một cách dễ dàng Nó sử dụng C++ làm ngôn ngữ lập trình chính Một số game được phát triển bởi Amazon Lumberyard: New World, Star Citizen,…

Godot

Godot là một Game Engine sử dụng miễn phí, được mã nguồn mở thông qua giấy phép MIT Godot là một công cụ phát triển mã nguồn mở chạy trên máy tính Windows, Linux và Mac Công cụ hỗ trợ cả khả năng 2D và 3D, và nó có trình chỉnh sửa hình ảnh và hệ thống cảnh linh hoạt để đưa ra tiến trình trò chơi Ngoài ra, Godot sử dụng ngôn ngữ GDScript, là một ngôn ngữ lập trình cấp cao có cú pháp khá giống với Python Một số game được phát triển bởi Godot: Kingdoms of the Dump, Hardcored,…

GameMaker: Studio

Được phát triển bởi Yoyo, Đây là một nền tảng phát triển trò chơi 2D không yêu cầu kinh nghiệm hoặc kiến thức lập trình Thay vào đó, người dùng có thể “point and click” để tạo trò chơi nhanh hơn nhiều so với viết mã bằng ngôn ngữ mẹ đẻ Nhìn chung, công cụ này rất thân thiện với người mới bắt đầu và mở ra khả năng phát triển trò chơi cho tất cả mọi người Một số game được phát triển bưởi GameMaker: Undertale, Hotline Miami,…

Trang 10

đầu tìm hiểu về lập trình game cũng nên tìm hiểu Vì nó cũng cấp cho những người mới rất nhiều kiến thức, thuật ngữ quan trọng

Với định hướng của cả nhóm và mong muốn thử thách chính mình, chúng em quyết định chọn đề tài “Tìm hiểu về OpenGL và thiết kế 2D Game Engine” để làm đề tài cho môn Đồ

án 2

1.2 Mục tiêu đồ án

1.2.1 Yêu cầu về nghiên cứu

• Hiểu những khái niệm cơ bản về OpenGL

• Hiểu và nắm rõ các kiến thức, quy trình phát triển 2D Game Engine

1.2.2 Yêu cầu về tính năng sản phẩm

Được lấy cảm hứng từ Hazel Engine Sản phẩm 2D Game Engine cần có những yêu cầu

về tính năng như sau:

• Hỗ trợ phát triển game 2D

• Hỗ trợ kéo thả (drag and drop)

• Hạn chế lập trình khi sản xuất game (no-code)

1.2.3 Yêu cầu về kỹ thuật sản phẩm

Sản phẩm 2D Game Engine cần có những yêu cầu về kỹ thuật như sau:

• Giao diện thân thiện, trực quan, hiện đại

o OpenAL (Open Audio Library): API hỗ trợ phát âm thanh

o GLFW (Graphics Library Framework): Thư viện hỗ trợ làm việc với OpenGL, xử lý dữ liệu đầu vào từ chuột, bàn phím, pad,

o LWJGL (Lightweight Java Game Library): Thư viện hỗ trợ render đồ họa trong Java

o JOML (Java math library for OpenGL): Hỗ trợ tính toán các phép tính render

Trang 11

Chương 2 Cơ sở lý thuyết

2.1.3 Component

Một Game object được cấu thành từ một hoặc nhiều Component Component được hiểu

là một thành phần cấu tạo nên game object Ví dụ: Mario thì có hình ảnh của chính nó,

animation, vị trí, vùng va chạm,…

2.1.4 Script

Script (kịch bản) được hiểu rằng là một Component, nhưng nó khác ở chỗ là Component này do người lập trình viên tạo ra Ví dụ: Mario sẽ di chuyển theo hướng trái/phải dựa trên phím bấm của người chơi hay Viên đạn được xuất hiện khi người dùng bắn nó từ tàu con thoi Những thứ đó được gọi là Script

2.2.2 OpenGL hoạt động như thế nào?

OpenGL là nơi gần nhất giữa CPU (cái mà những developer chạy các ứng dụng trên các ngôn ngữ lập trình) và GPU (chip xử lý đồ họa) Vì vậy OpenGL cần phải được hỗ trợ bởi các nhà sản xuất card đồ họa (vd: NVidia) và được cài đặt bởi những đối tác phát triển hệ điều hành (giống như Apple hay Microsoft) và cuối cùng OpenGL cho chúng ta một API thống nhất để làm việc API này là các "Ngôn ngữ miễn phí" (hoặc hầu như miễn phí) Việc này quá thuận lợi vì nếu sử dụng C hoặc C++ hay thậm chí là Objective-C, Perl, C# hay Javascript hay bất kỳ ngôn ngữ nào bạn muốn, API của OpenGL luôn giống nhau, xử lý giống nhau, chung chức năng, dòng lệnh

Đi sâu vào bộ xử lý tính toán của OpenGL, ta thấy OpenGL sử dụng tính toán trực tiếp trên GPU - phần cứng xử lý đồ họa cho máy tính - và sử dụng dấu phảy động (floating points) CPU (Central Processing Unit) là chip xử lý của máy tính Còn GPU (Graphics Processing Unit)

là chip xử lý đồ họa Chip xử lý đồ họa này giúp cho CPU giảm thiểu các công việc nặng nhọc:

Trang 12

nó có thể xử lý ảnh trước khi hiện ra màn hình Hay sâu hơn, những gì OpenGL thực hiện chính

là trên GPU, thay vì tính toán trên CPU GPU nhanh hơn rất rất nhiều với các số thực so với

CPU Đây là lý do cơ bản để các trò chơi 3D chạy nhanh hơn khi có card đồ họa Đây cũng chính

là lý do cho các phần mềm xử lý 3D chuyên nghiệp giúp chúng ta làm việc với "Software's

Render" (xử lý trên CPU) hoặc "Graphics Card's Render" (xử lý trên GPU) Một vài phần mềm cũng cho chúng ta một tùy chọn: Có dùng OpenGL hay không? Và đó, giờ bạn đã biết rồi Tùy chọn đó chính là dành cho việc xử lý sẽ ở trên GPU hay không Vì vậy, OpenGL sẽ hoàn toàn

làm việc với GPU hay không? câu trả lời là không chắc Chỉ những thao tác xử lý ảnh và vài thứ khác thôi OpenGL cho chúng ta rất nhiều chức năng để lưu trữ ảnh, dữ liệu, thông tin trong một định dạng cụ thể Những định dạng này được xử lý trực tiếp bởi GPU Vì vậy OpenGL phụ thuộc

13 vào phần cứng Nếu phần cứng không hỗ trợ OpenGL, chúng ta không thể sử dụng nó Quá buồn! Các phiên bản mới của OpenGL thường xuyên cần những tính năng mới của GPU Nhưng cũng đừng lo lắng, OpenGL luôn cần những nhà sản xuất tích hợp vào, chúng ta (những

developer - coder) sẽ làm việc trên các phiên bản OpenGL mới chỉ khi thiết bị đã sẵn sàng

Trong thực tế, tât cả các chip đồ họa hiện tại đều hỗ trợ OpenGL Vì vậy bạn có thể sử dụng

OpenGL với rất nhiều ngôn ngữ và thiết bị Thậm chí với Microsoft Windows

2.2.3 Lịch sử hình thành, các phiên bản của OpenGL

Những năm 1980, việc phát triển phần mềm có thể hoạt động trên nhiều loại phần cứng

đồ họa thực sự là một thử thách Các nhà phát triển phần mềm đã tùy chỉnh interfaces và drivers cho từng phần cứng Điều này gây ra tốn kém và nỗ lực gấp bội Trong những năm đầu thập niên

1990, Silicon Graphics, Inc.(SGI) là công ty dẫn đầu trong lĩnh vực đồ họa 3D cho các máy trạm IRIS GL trở thành tiêu chuẩn công nghiệp, được sử dụng rộng rãi hơn PHIGS Điều này được lý giải là do IRIS GL dễ sử dụng hơn và vì nó được hỗ trợ chế độ render tức thì Ngược lại, PHIGS được coi là khó sử dụng và lỗi thời về chức năng Đối thủ cạnh tranh của SGI (bao gồm: Sun

Microsystems, Hewlett-Packark, MBI) đã tung ra thị trường các phần cứng 3D được hỗ trợ bởi extensions theo tiêu chuẩn của PHIGS Điều này gây áp lực khiến cho SGI phải mã nguồn mở một phiên bản IRIS GL như một tiêu chuẩn công khai được gọi là Open GL vào năm 1992

Các phiên bản:

1.0 June 30, 1992 First release

1.1 1995 Texture objects, Vertex Arrays

1.2

the imaging subset useful to image-processing applications

1.2.1 October 14, 1998 A concept of ARB extensions

2.0 September 7, 2004 GLSL 1.1, MRT, Non Power of Two textures, Point Sprites,

Two-sided stencil

Buffer Object (FBO)

3.1

Object, Primitive restart

Trang 13

3.2 August 3, 2009 GLSL 1.5, Geometry Shader, Multi-sampled textures

instanced, shader packing, performance improvements

storage buffer objects, high-quality ETC2/EAC texture compression, increased memory security, a multi-application robustness extension, compatibility with OpenGL ES 3.0

4.4

July 22, 2013

GLSL 4.40, Buffer Placement Control, Efficient Asynchronous Queries, Shader Variable Layout, Efficient Multiple Object Binding, Streamlined Porting of Direct3D applications, Bindless Texture Extension, Sparse Texture Extension

4.5

August 11, 2014

GLSL 4.50, Direct State Access (DSA), Flush Control, Robustness, OpenGL ES 3.1 API and shader compatibility, DX11 emulation features

4.6

July 31, 2017

GLSL 4.60, More efficient geometry processing and shader execution, more information, no error context, polygon offset clamp, SPIR-V, anisotropic filtering

2.2.4 Đối thủ cạnh tranh của OpenGL

OpenGL ra đời bản đầu tiên vào 1992, cùng thời điểm đó, Microsoft đã có Windows 3

Như Microsoft luôn tin rằng "không gì được tạo ra, mọi thứ được copy", Microsot đã có gắng

copy OpenGL trong những gì họ gọi là DirectX và được giới thiệu lần đầu năm 1995 trong

Windows 95 tương ứng

2.2.5 Tại sao cần có OpenGL?

Đơn giản là chúng ta cần một màn hình của chúng ta render hình ảnh thật mượt mà, đặc biệt là game, thứ yêu cầu render nhanh đến mức 60FPS hay 120FPS

2.2.6 Tại sao Shader lại chạy nhanh tới mức như vậy?

Hãy tưởng tượng CPU là một dây chuyền công nghiệp lớn, và mọi tác vụ đi qua dây

chuyền là một khâu Có vài khâu đồ sộ hơn các khâu khác, tức là chúng cần nhiều thời gian và

năng lượng hơn để xử lý Ta nói chúng cần nhiều năng lực xử lý hơn Kiến trúc của máy tính

khiến mỗi khâu phải thực hiện tuần tự; khâu này kết thúc rồi mới đến khâu tiếp theo Máy tính

hiện đại thường có tới 4 bộ xử lý tương tự như 4 dây chuyền sản xuất này, lần lượt thực thi từng

tác vụ nhỏ Mỗi dây chuyền nhỏ trong đó gọi là một thread

Trang 14

Các trò chơi điện tử và các ứng dụng đồ hoạ cần nhiều năng lực xử lý hơn hẳn các phần mềm khác Vì các nội dung đồ hoạ của chúng yêu cầu thực hiện rất nhiều phép toán, cho từng điểm ảnh một Mỗi điểm ảnh trên màn hình đều phải được tính đến, còn trong các trò chơi 3 chiều thì cả các vật thể lẫn các góc camera cũng phải được tính luôn

Quay trở lại phép so sánh về dây chuyền và tác vụ Mỗi điểm ảnh trên màn hình đại diện cho 1 tác vụ nhỏ Bản thân từng tác vụ không phải là vấn đề lớn với CPU, nhưng (vấn đề ở đây là) các tác vụ bé xíu này lại phải được thực thi cho từng điểm ảnh trên cả màn hình Có nghĩa là trên màn hình cũ có độ phân giải 800x600, có tới 480.000 điểm ảnh cần phải được xử lý mỗi khung hình, tương đương với 14.400.000 phép tính mỗi giây! Đúng thế! Đó chính là điều khiến

bộ vi xử lý bị quá tải Còn ở màn hình retina thời hiện đại có độ phân giải 2880x1800 hiển thị 60 khung hình một giây, thì số phép tính mỗi giây lên tới 311.040.000 Bằng cách nào mà các kỹ sư

đồ hoạ giải quyết được vấn đề này?

Đây là lúc mà xử lý song song trở thành một giải pháp tốt Thay vì phải trang bị vài bộ vi

xử lý to lớn và mạnh mẽ, hoặc các dây chuyền, sẽ là thông minh hơn nếu để cho hàng loạt các bộ

vi xử lý tí hon chạy song song Và đó chính là việc mà các bộ xử lý đồ hoạ (GPU) làm

Ngày đăng: 01/02/2023, 21:13

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w