Đề thi trắc nghiệm

PRU213 - Đề SP 2025 lần 2 (50 câu)

50Câu hỏi
Game Programming with C# - Lập tringh Game với C#Môn học

Phiên có lưu tiến độ dùng toàn bộ 50 câu của bộ đề để tiến độ khớp với máy chủ.

Phiên sắp tạo
50 câu Chế độ học Không giới hạn

Bạn cần đăng nhập để bắt đầu làm bài và lưu tiến độ.

Tổng câu hỏi

50

Thời gian làm bài

Không giới hạn

Lượt xem

1

Câu có lời giải

49

Câu có link chi tiết

50

Xem trước câu hỏi

Bấm vào từng câu để xem đáp án
#001
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
AUse a trigger in the Animator Controller.
BAttach the function to the GameObject.
Add the function name to the event in the Animation window.ĐÚNG
DPass the function name as a string to Animator.SetTrigger().
Giải thích

Để gọi một hàm từ một sự kiện Animation, bạn cần hiểu cách hoạt động của Animator Controller và Animation Event. Animator Controller là một công cụ mạnh mẽ trong Unity để tạo ra các hành động và trạng thái cho các nhân vật. Animation Event là một điểm dừng trong một animation, nơi bạn có thể thực hiện các hành động tùy chỉnh. Để gọi một hàm từ một Animation Event, bạn cần thêm tên hàm vào trường 'Add Event Function' trong Animation window. Điều này sẽ gọi hàm đó khi animation đến với điểm dừng đó. Ngoài ra, bạn cũng có thể sử dụng các trigger trong Animator Controller để gọi hàm, nhưng cách này phức tạp hơn và không phù hợp với tất cả các trường hợp.

#002
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
To smoothly transition between two animation states.ĐÚNG
BTo reset all animation parameters.
CTo change the playback speed of an animation.
DTo stop the current animation and play the next one instantly.
Giải thích

Animator.CrossFade() được sử dụng để tạo ra một chuyển đổi mượt mà giữa hai trạng thái animation. Khi sử dụng hàm này, animator sẽ tự động chuyển đổi từ trạng thái animation hiện tại sang trạng thái animation mới trong một khoảng thời gian nhất định. Điều này giúp tạo ra một hiệu ứng chuyển đổi mượt mà và tự nhiên, làm cho animation trở nên hấp dẫn và thú vị hơn. Ngoài ra, Animator.CrossFade() cũng cho phép bạn điều chỉnh tốc độ chuyển đổi animation, giúp bạn có thể tạo ra các hiệu ứng chuyển đổi khác nhau tùy thuộc vào nhu cầu của mình.

#003
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
TextĐÚNG
BImage
CCanvas
DButton
Giải thích

Trong Unity, để hiển thị thông tin văn bản như nhãn và tiêu đề, bạn cần sử dụng thành phần UI phù hợp. Trong các lựa chọn đã cho, thành phần Unity UI được sử dụng để hiển thị thông tin văn bản là "Text". Thành phần này cho phép bạn thêm văn bản vào giao diện người dùng của trò chơi và tùy chỉnh font, kích thước, màu sắc và vị trí của văn bản. Ngoài ra, bạn cũng có thể sử dụng thành phần "Button" để tạo nút bấm, nhưng "Text" là lựa chọn phù hợp hơn khi bạn chỉ muốn hiển thị thông tin văn bản.

#004
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
ATo determine the model's color palette
To specify which parts of the model can moveĐÚNG
CTo create realistic textures
DTo generate environmental effects
Giải thích

Khi hoạt động animation, một rig (còn gọi là skeleton) đóng vai trò quan trọng trong việc định hình cấu trúc và khả năng di chuyển của mô hình 3D. Rig được sử dụng để chỉ định các phần của mô hình có thể di chuyển, giúp tạo ra các động tác và hành động tự nhiên. Nó giống như một khung xương ảo cho mô hình, cho phép các nhà thiết kế và họa sĩ hoạt hình kiểm soát và điều chỉnh các phần của mô hình để tạo ra các hiệu ứng di chuyển mong muốn.

#005
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
ABy directly changing the animation clip.
BBy enabling isTransitioning property of the Animator.
CBy calling Animator.TransitionToState().
By setting a parameter in the Animator.ĐÚNG
Giải thích

Để kích hoạt chuyển đổi giữa các trạng thái sử dụng một kịch bản, bạn cần hiểu cách hoạt động của Animator trong Unity. Animator là một thành phần quan trọng trong Unity giúp tạo ra các hành động và chuyển đổi giữa các trạng thái. Để kích hoạt chuyển đổi, bạn cần sử dụng phương thức TransitionToState() của Animator. Tuy nhiên, phương thức này không phải là phương thức được sử dụng phổ biến nhất. Thay vào đó, bạn có thể sử dụng phương thức SetParameter() của Animator để kích hoạt chuyển đổi. Phương thức này cho phép bạn đặt giá trị cho một tham số cụ thể, và khi giá trị này thay đổi, Animator sẽ tự động kích hoạt chuyển đổi giữa các trạng thái. Vì vậy, câu trả lời đúng là "By setting a parameter in the Animator."

#006
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
AUsability
BConsistency
CImmediate feedback
Cost-effectivenessĐÚNG
Giải thích

Trong thiết kế giao diện người dùng tương tác, có một số nguyên tắc quan trọng cần tuân thủ. Nguyên tắc 'usability' (độ tiện lợi) đảm bảo rằng người dùng có thể dễ dàng sử dụng hệ thống. Nguyên tắc 'consistency' (độ nhất quán) đảm bảo rằng giao diện người dùng được thiết kế một cách nhất quán và dễ hiểu. Nguyên tắc 'immediate feedback' (phản hồi tức thời) đảm bảo rằng người dùng nhận được phản hồi ngay lập tức sau khi thực hiện một hành động. Tuy nhiên, 'cost-effectiveness' (hiệu quả kinh tế) không phải là một nguyên tắc thiết kế giao diện người dùng tương tác. Thay vào đó, nó là một yếu tố cần xem xét trong quá trình phát triển sản phẩm.

#007
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
AMaking interfaces visually appealing
Designing easy-to-understand interfacesĐÚNG
CEnsuring interfaces are feature-rich
DProviding advanced customization options
Giải thích

Sự dễ học (Learnability) là một nguyên tắc quan trọng trong thiết kế UI. Mục tiêu chính của nguyên tắc này là giúp người dùng có thể sử dụng hệ thống một cách dễ dàng và nhanh chóng. Điều này đòi hỏi thiết kế phải dễ hiểu và dễ sử dụng. Người dùng nên có thể tìm kiếm và thực hiện các chức năng một cách nhanh chóng và hiệu quả. Thiết kế dễ học không chỉ giúp người dùng cảm thấy thoải mái và tự tin mà còn giúp giảm thiểu thời gian và nỗ lực cần thiết để học hỏi hệ thống. Vì vậy, thiết kế dễ học là một yếu tố quan trọng trong thiết kế UI.

#008
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
AA Timeline Editor
BA Rigidbody component
A State MachineĐÚNG
DA Prefab structure
Giải thích

Một Animator Controller sử dụng State Machine để quản lý các trạng thái và chuyển tiếp của animation. State Machine là một công cụ mạnh mẽ giúp bạn tạo ra các chuỗi hành động phức tạp và linh hoạt. Nó cho phép bạn định nghĩa các trạng thái khác nhau cho nhân vật, chẳng hạn như chạy, nhảy, đứng yên, và chuyển tiếp giữa các trạng thái này một cách mượt mà. Điều này giúp bạn tạo ra các hiệu ứng animation chân thực và hấp dẫn.

#009
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
ATo handle animations for game objects
To send events to objects based on inputĐÚNG
CTo manage the visual appearance of UI elements
DTo calculate physics interactions between objects
Giải thích

Hệ thống sự kiện (Event System) trong Unity là một thành phần quan trọng giúp các đối tượng trong trò chơi tương tác với nhau dựa trên các sự kiện. Hệ thống này cho phép gửi các sự kiện đến các đối tượng dựa trên các đầu vào từ người dùng, chẳng hạn như nhấp chuột, nhấn phím, v.v. Điều này giúp các nhà phát triển trò chơi dễ dàng tạo ra các hành động và phản ứng phức tạp mà không cần phải viết mã phức tạp. Hệ thống sự kiện cũng giúp tăng hiệu suất và giảm bớt công việc lập trình.

#010
ĐỘ CHÍNH XÁC
5 LỰA CHỌN
AControlling the conditions for playing animations
BIt creates individual animation loops
It determines the conditions for playing animationsĐÚNG
DIt controls the timing of animations
EIt shifts between different animations
Giải thích

Animator Controller trong Unity là một công cụ quan trọng giúp điều khiển các hoạt động của nhân vật trong trò chơi. Nó cho phép bạn thiết lập các điều kiện để chơi các animation khác nhau dựa trên các trạng thái của nhân vật, chẳng hạn như trạng thái đứng, chạy, nhảy, v.v. Điều này giúp tạo ra các hoạt động tự nhiên và thú vị hơn cho nhân vật. Ngoài ra, Animator Controller cũng cho phép bạn điều khiển thời gian của các animation, giúp tạo ra các hiệu ứng chuyển tiếp mượt mà giữa các animation khác nhau.

#011
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
ATo create a set of textures for GameObjects
To arrange a set of animations for a GameObjectĐÚNG
To maintain a set of animations for a GameObjectĐÚNG
DTo optimize physics calculations for animated objects
Giải thích

Mục đích chính của Animator Controller trong Unity là giúp bạn sắp xếp và quản lý các hoạt động (animations) cho một GameObject. Nó cho phép bạn tạo ra các trạng thái hoạt động khác nhau, chẳng hạn như chạy, nhảy, hoặc thậm chí là chết, và chuyển đổi giữa chúng một cách mượt mà. Ngoài ra, Animator Controller cũng giúp bạn điều khiển các hoạt động này bằng cách sử dụng các điều kiện và hành động cụ thể. Điều này giúp bạn tạo ra các hiệu ứng hoạt động phức tạp và chân thực hơn trong trò chơi của mình.

#012
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
ABy adding background music to the scene based on user interactions
By providing visual feedback through changes in animations based on user interactionsĐÚNG
CBy automatically controlling game physics during button clicks based on user interactions
DBy altering the button's position in the scene based on user interactions
Giải thích

Animations trong Unity giúp cải thiện trải nghiệm người dùng khi tương tác với các nút bấm bằng cách cung cấp phản hồi thị giác thông qua các thay đổi trong các hiệu ứng động dựa trên các tương tác của người dùng. Điều này giúp người dùng dễ dàng nhận biết được khi nào họ đã nhấn nút và khi nào nút đã được kích hoạt. Các hiệu ứng động có thể bao gồm các chuyển động, thay đổi màu sắc, hoặc các hiệu ứng khác. Bằng cách cung cấp phản hồi thị giác này, người dùng có thể dễ dàng hiểu được trạng thái của ứng dụng và tương tác một cách hiệu quả hơn.

#013
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
To efficiently identify potential collisions among a large number of objectsĐÚNG
BTo determine if potential collision pairs are indeed colliding
CTo check the precise shapes defined by the colliders
DTo detect collisions without physically interacting with other objects
Giải thích

Mục đích chính của Broad-Phase Collision Detection trong Unity là xác định các đối tượng có thể va chạm với nhau một cách hiệu quả, đặc biệt là trong các ứng dụng có số lượng đối tượng lớn. Quá trình này giúp giảm thiểu số lượng đối tượng cần được kiểm tra trong Narrow-Phase Collision Detection, từ đó cải thiện hiệu suất của trò chơi. Broad-Phase Collision Detection sử dụng các thuật toán như Grid, Sweep and Prune, AABB (Axis-Aligned Bounding Box) để xác định các đối tượng có thể va chạm với nhau. Điều này giúp giảm thiểu số lượng đối tượng cần được kiểm tra trong Narrow-Phase Collision Detection, từ đó cải thiện hiệu suất của trò chơi.

#014
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
ATo apply a constant force in a specific direction.
To simulate air or fluid resistance, affecting how quickly an object slows down when moving through space.ĐÚNG
CTo control the rotational speed of the object.
DTo adjust the gravitational pull on the object.
Giải thích

Tính chất 'drag' của Rigidbody trong Unity có chức năng mô phỏng sự cản trở của không khí hoặc chất lỏng, ảnh hưởng đến tốc độ giảm của đối tượng khi di chuyển trong không gian. Điều này có nghĩa là khi bạn bật tính chất 'drag', đối tượng sẽ chậm lại nhanh hơn khi di chuyển qua không gian, giống như khi nó đang di chuyển trong không khí hoặc nước. Điều này giúp tạo ra hiệu ứng chân thực hơn trong trò chơi hoặc ứng dụng của bạn. Ngoài ra, tính chất 'drag' cũng có thể được sử dụng để mô phỏng các yếu tố như sức cản của gió hoặc sức cản của nước.

#015
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
AScripts
BPhysics and Colliders
Events and TriggersĐÚNG
DState Machines
Giải thích

Logic trò chơi liên quan đến việc thiết lập các sự kiện và kích hoạt phản ứng với các hành động cụ thể được gọi là Events và Triggers. Điều này cho phép các nhà phát triển trò chơi tạo ra các hành vi phức tạp và đa dạng trong trò chơi mà không cần phải viết mã phức tạp. Các sự kiện và kích hoạt có thể được sử dụng để tạo ra các hiệu ứng đặc biệt, kiểm soát hành vi của các nhân vật, và tạo ra các quy trình trò chơi phức tạp. Ví dụ, một sự kiện có thể được thiết lập để kích hoạt khi một nhân vật đến một địa điểm cụ thể, sau đó kích hoạt một hiệu ứng đặc biệt. Các sự kiện và kích hoạt cũng có thể được sử dụng để tạo ra các quy trình trò chơi phức tạp, chẳng hạn như tạo ra các hệ thống kinh tế hoặc hệ thống chiến đấu.

#016
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
AThe number of colliders attached to the object
The Rigidbody's mass and velocityĐÚNG
CThe object's texture and size
DThe object's color and material
Giải thích

Trong Unity, các yếu tố nào quyết định mức độ phản ứng của một đối tượng khi va chạm? Để trả lời câu hỏi này, chúng ta cần hiểu về cơ chế va chạm trong Unity. Khi một đối tượng va chạm với một đối tượng khác, Unity sẽ tính toán lực va chạm và phản ứng của đối tượng dựa trên một số yếu tố quan trọng. Trước hết, chúng ta cần xem xét Rigidbody của đối tượng. Rigidbody là một thành phần quan trọng trong Unity, giúp đối tượng có thể tương tác với môi trường và các đối tượng khác. Cụ thể, Rigidbody có hai thuộc tính quan trọng là khối lượng (mass) và vận tốc (velocity). Khối lượng của Rigidbody sẽ ảnh hưởng đến mức độ phản ứng của đối tượng khi va chạm, trong khi vận tốc sẽ quyết định lực va chạm. Do đó, khi một đối tượng va chạm với một đối tượng khác, Unity sẽ tính toán lực va chạm dựa trên khối lượng và vận tốc của Rigidbody. Điều này giúp đối tượng phản ứng một cách tự nhiên và chân thực.

#017
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
AThe difference of color and texture between two colliding objects
The resistance to motion between two colliding objectsĐÚNG
CThe animation speed during collisions of two objects
DThe volume of sound effects during impacts on two objects
Giải thích

Tính chất ma sát của vật liệu vật lý trong Unity kiểm soát sự kháng cự chuyển động giữa hai vật thể va chạm. Khi hai vật thể va chạm, ma sát sẽ tạo ra lực cản, khiến chúng chậm lại hoặc dừng lại. Điều này đặc biệt quan trọng trong các ứng dụng như trò chơi, nơi mà vật thể cần phải tương tác với nhau một cách hợp lý. Trong Unity, bạn có thể điều chỉnh tính chất ma sát của vật liệu để tạo ra các hiệu ứng va chạm khác nhau, từ mềm mại đến cứng rắn. Điều này giúp bạn có thể tạo ra các mô hình vật lý thực tế và thú vị hơn trong trò chơi của mình.

#018
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
ATriggers cause objects to bounce off each other, colliders do not
BTriggers generate collision responses, colliders do not
Triggers do not generate collision physics responses, colliders doĐÚNG
DTriggers and colliders are used to create 3D models for objects
Giải thích

Triggers và colliders là hai loại vật thể trong Unity có chức năng khác nhau. Triggers không tạo ra phản ứng vật lý khi va chạm, trong khi colliders thì lại làm như vậy. Điều này có nghĩa là khi hai vật thể có trigger va chạm với nhau, chúng sẽ không bị ảnh hưởng bởi lực hấp dẫn hoặc phản ứng vật lý khác. Thay vào đó, chúng sẽ kích hoạt một sự kiện hoặc hành động được chỉ định. Ví dụ, bạn có thể sử dụng triggers để tạo ra một vùng an toàn trong game, nơi mà các nhân vật không thể va chạm với nhau. Trong khi đó, colliders lại được sử dụng để tạo ra các vật thể có thể va chạm với nhau và tạo ra phản ứng vật lý.

#019
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
ABox Collider
BSphere Collider
Capsule ColliderĐÚNG
DHemispherical Collider
Giải thích

Khi mô hình hóa các nhân vật hoặc hình dạng dài, bạn nên sử dụng Collider nào? Trong Unity, có bốn loại Collider cơ bản: Box Collider, Sphere Collider, Capsule Collider và Hemispherical Collider. Box Collider phù hợp với các hình dạng hộp, Sphere Collider phù hợp với các hình cầu, Hemispherical Collider phù hợp với các hình bán cầu. Tuy nhiên, Capsule Collider lại phù hợp nhất với các hình dạng dài, giống như nhân vật trong trò chơi. Điều này là vì Capsule Collider có thể mô hình hóa hình dạng dài một cách chính xác hơn, giúp giảm thiểu xung đột và tăng hiệu suất. Vì vậy, nếu bạn đang mô hình hóa nhân vật hoặc hình dạng dài khác, Capsule Collider là lựa chọn tốt nhất.

#020
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
Scenes facilitate the organization of self-contained collections of game objects.ĐÚNG
BScenes reduce the overall size of the game application.
CScenes enable complex game logic without the need for scripting.
DScenes allow for more efficient and effective management of sprites, prefabs, and game objects.
Giải thích

Trong Unity, lợi thế chính của việc sử dụng nhiều cảnh trong một dự án là chúng giúp tổ chức các tập hợp tự chứa của đối tượng trò chơi một cách hiệu quả. Điều này cho phép các nhà phát triển dễ dàng quản lý và sắp xếp các đối tượng trò chơi, các sprite và các bản sao (prefabs) trong dự án của mình. Sử dụng nhiều cảnh cũng giúp giảm thiểu sự phức tạp và tăng cường khả năng mở rộng của dự án. Ngoài ra, việc sử dụng nhiều cảnh cũng giúp các nhà phát triển dễ dàng chia sẻ và tái sử dụng mã nguồn giữa các cảnh khác nhau, từ đó giúp tăng cường hiệu suất và hiệu quả trong quá trình phát triển trò chơi.

#021
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
ATransform
BCollider
CRenderer
RigidbodyĐÚNG
Giải thích

Trong Unity, phần tử chịu trách nhiệm thêm chuyển động cho một GameObject dưới sự kiểm soát của động cơ vật lý Unity là Rigidbody. Rigidbody cho phép bạn thêm chuyển động tự nhiên cho GameObject của mình, chẳng hạn như di chuyển theo trọng lực, va chạm với các GameObject khác và phản ứng với các lực tác động lên nó. Để sử dụng Rigidbody, bạn cần thêm nó vào GameObject của mình và cấu hình các thuộc tính như khối lượng, quán tính và lực hấp dẫn.

#022
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
Rotate game objectĐÚNG
BTranslate game object
CMove game object
DScale game object
Giải thích

Trong Unity Scene view, khi bạn chọn một đối tượng game, một gizmo sẽ xuất hiện xung quanh nó. Gizmo này bao gồm ba vòng tròn màu sắc khác nhau (đỏ, xanh lá cây và xanh da trời) được bao quanh bởi một vòng tròn trắng. Đây là công cụ được sử dụng để xoay đối tượng game. Khi bạn chọn công cụ này, bạn có thể xoay đối tượng game theo bất kỳ hướng nào bằng cách kéo và thả chuột vào vòng tròn màu đỏ. Công cụ này giúp bạn dễ dàng xoay đối tượng game mà không cần phải sử dụng đến các phím tắt hoặc các công cụ khác.

#023
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
AParticle System
BAnimator Controller
CAnimation Clip
SkeletonĐÚNG
Giải thích

Trong Unity, để hoạt ảnh các nhân vật 2D bằng xương (bones), bạn cần sử dụng thành phần nào? Thành phần này cho phép bạn tạo ra các hoạt ảnh phức tạp và linh hoạt cho nhân vật của mình. Với sự giúp đỡ của thành phần này, bạn có thể tạo ra các động tác như đi lại, nhảy múa, thậm chí là các động tác phức tạp như đánh nhau. Thành phần này cũng cho phép bạn điều khiển các xương của nhân vật để tạo ra các hoạt ảnh khác nhau.

#024
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
C#ĐÚNG
BPython
CJavaScript
DRuby
Giải thích

Unity hỗ trợ ngôn ngữ lập trình chính cho phát triển trò chơi là C#. C# là một ngôn ngữ lập trình hướng đối tượng được thiết kế bởi Microsoft và được sử dụng rộng rãi trong phát triển trò chơi. Nó cung cấp các tính năng mạnh mẽ như lập trình hướng đối tượng, lập trình hướng sự kiện và hỗ trợ đa luồng. Unity cung cấp một môi trường phát triển tích hợp (IDE) mạnh mẽ cho C#, cho phép các nhà phát triển tạo ra các trò chơi phức tạp và đa dạng. Ngoài ra, C# cũng được sử dụng trong nhiều lĩnh vực khác như phát triển ứng dụng di động, phát triển web và khoa học dữ liệu.

#025
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
APlace all logic in the Update() method of one script.
BUse multiple scripts with individual Update() methods.
Use a manager script to centralize the update logic.ĐÚNG
DCall Update() from external scripts using references.
Giải thích

Khi cần quản lý nhiều thành phần cần cập nhật thường xuyên trên cùng một GameObject, cách tốt nhất là sử dụng một script quản lý (manager script) để tập trung logic cập nhật. Điều này giúp giảm thiểu sự phức tạp và tăng cường khả năng bảo trì. Script quản lý có thể chứa các phương thức cập nhật logic cho từng thành phần, và các thành phần khác có thể gọi vào các phương thức này để cập nhật. Điều này giúp tránh việc trùng lặp logic và tăng cường khả năng mở rộng. Ngoài ra, sử dụng một script quản lý cũng giúp dễ dàng thêm hoặc xóa các thành phần mà không ảnh hưởng đến logic cập nhật chung.

#026
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
AUse multiple scripts for each GameObject.
BAvoid using prefabs and create objects manually.
Use object pooling.ĐÚNG
DUse high-polygon models for better rendering.
Giải thích

Khi sử dụng nhiều GameObject với cùng một chức năng, cách tối ưu hiệu suất tốt nhất là sử dụng kỹ thuật object pooling. Object pooling là một kỹ thuật giúp tái sử dụng các GameObject đã được tạo trước đó thay vì tạo mới mỗi lần cần sử dụng. Điều này giúp giảm thiểu thời gian tạo mới và tăng tốc độ render. Ngoài ra, sử dụng object pooling cũng giúp giảm thiểu số lượng script cần thiết, từ đó giảm thiểu thời gian tải và chạy chương trình. Tuy nhiên, cần lưu ý rằng object pooling chỉ hiệu quả khi sử dụng nhiều GameObject với cùng một chức năng, nếu không sẽ gây ra lãng phí tài nguyên.

#027
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
APlayer aesthetics
Player immersionĐÚNG
CPlayer communication
DPlayer progression
Giải thích

Về cơ bản, cơ chế vật lý trong trò chơi là một phần quan trọng trong việc tạo ra trải nghiệm chơi game tốt hơn. Cơ chế vật lý giúp tạo ra cảm giác chân thực và sống động trong trò chơi, khiến người chơi cảm thấy như họ đang thực sự tham gia vào thế giới trò chơi. Điều này giúp tăng cường sự nhập vai và sự tham gia của người chơi, khiến họ cảm thấy như mình là một phần của thế giới trò chơi. Ngoài ra, cơ chế vật lý cũng giúp tạo ra những trải nghiệm chơi game thú vị và đa dạng, khiến người chơi không cảm thấy nhàm chán. Vì vậy, cơ chế vật lý trong trò chơi chủ yếu giúp tăng cường sự nhập vai và sự tham gia của người chơi.

#028
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
0ĐÚNG
B1
C-1
D10
Giải thích

Trong Unity, Sort Order là một thuộc tính quan trọng của Sprite Renderer. Nó được sử dụng để xác định thứ tự render của các vật thể sprite trên màn hình. Giá trị mặc định của Sort Order là 0. Điều này có nghĩa là vật thể sprite sẽ được render theo thứ tự mặc định của Unity, không có sự can thiệp nào từ phía lập trình viên. Tuy nhiên, lập trình viên có thể thay đổi giá trị Sort Order để sắp xếp vật thể sprite theo thứ tự mong muốn. Ví dụ, nếu bạn muốn một vật thể sprite được render trước các vật thể khác, bạn có thể đặt giá trị Sort Order của nó là -1. Ngược lại, nếu bạn muốn một vật thể sprite được render sau các vật thể khác, bạn có thể đặt giá trị Sort Order của nó là 1.

#029
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
Abullets_4_up and bullets_4_down share the same characteristics
Protecter will move exactly same as spaceWarShip movesĐÚNG
CObjectRelease is child game object of Main Camera
Dbullets_4_up is child game object of spaceWarShip
Giải thích

Trong cửa sổ Unity Hierarchy, Scene1 chứa Main Camera, ObjectRelease và spaceWarShip. spaceWarShip được mở rộng và có một con cái tên là Protecter. bullets_4_up và bullets_4_down được ẩn và không phải là con cái của spaceWarShip. Điều này có nghĩa là Protecter sẽ di chuyển cùng với spaceWarShip. Khi spaceWarShip di chuyển, Protecter cũng sẽ di chuyển cùng với nó. Điều này là do Protecter là con cái của spaceWarShip và sẽ di chuyển cùng với nó. Vì vậy, câu trả lời đúng là Protecter sẽ di chuyển cùng với spaceWarShip.

#030
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
AThe boundary and shape for object's color
The boundary and shape for collision detectionĐÚNG
CThe boundary and shape for object's animation
DThe boundary for object's audio properties
Giải thích

Trong Unity, Collider 2D là một thành phần quan trọng giúp xác định hình dạng và ranh giới của đối tượng 2D. Nó giúp hệ thống phát hiện va chạm giữa các đối tượng trong không gian 2D. Khi thêm Collider 2D vào đối tượng, bạn có thể xác định hình dạng và kích thước của đối tượng, từ đó hệ thống có thể tính toán và phản ứng khi va chạm xảy ra. Điều này giúp tạo ra các hiệu ứng như vật thể bounces, vật thể bị đẩy ra khỏi vị trí ban đầu, v.v. Ngoài ra, Collider 2D cũng giúp hệ thống xác định vị trí và kích thước của đối tượng, từ đó có thể tính toán các hiệu ứng khác như vật thể bị kéo, vật thể bị nén, v.v. Tóm lại, Collider 2D là một thành phần quan trọng giúp tạo ra các hiệu ứng va chạm và tương tác giữa các đối tượng trong không gian 2D của Unity.

#031
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
ATo define the graphical appearance of entities
BTo provide sound effects for entities
To serve as data containers that represent the attributes and behavior of entitiesĐÚNG
DTo manage the game engine's physics simulations
Giải thích

Trong hệ thống Entity Component System (ECS) của Unity, các thành phần (components) đóng vai trò cơ bản là các bộ chứa dữ liệu (data containers) đại diện cho các thuộc tính và hành vi của các thực thể (entities). Các thành phần này có thể được sử dụng để thêm các tính năng và khả năng cho các thực thể, chẳng hạn như vị trí, hướng, tốc độ, sức mạnh, v.v. Mỗi thành phần có thể được thiết kế để thực hiện một chức năng cụ thể, và các thực thể có thể kết hợp nhiều thành phần khác nhau để tạo ra các tính năng phức tạp hơn. Điều này cho phép các nhà phát triển tạo ra các hệ thống và quy trình phức tạp mà không cần phải viết mã phức tạp.

#032
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
ATo enable text input from the player within the game world
To organize and render UI elements within the game worldĐÚNG
CTo serve as a clickable element within the game world
DTo display static or dynamic images within the game world
Giải thích

Mô hình Canvas trong Unity là một thành phần quan trọng để tổ chức và hiển thị các yếu tố giao diện người dùng (UI) trong môi trường trò chơi. Nó cho phép bạn tạo và quản lý các UI element như văn bản, hình ảnh, nút bấm và các thành phần khác. Canvas cung cấp một cách linh hoạt để thiết kế và cấu trúc giao diện người dùng của trò chơi, giúp bạn có thể tạo ra một trải nghiệm trò chơi hấp dẫn và dễ sử dụng. Ngoài ra, Canvas cũng cho phép bạn điều chỉnh vị trí, kích thước và màu sắc của các UI element, giúp bạn có thể tạo ra một giao diện người dùng độc đáo và chuyên nghiệp.

#033
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
ATo track program flow and identify issues of game objects during runtime
To inspect and modify properties and components of game objects during runtimeĐÚNG
CTo provide performance metrics and analysis of game objects during runtime
DTo debug Unity projects on remote devices during runtime
Giải thích

Cửa sổ Inspector trong Unity là một công cụ quan trọng giúp bạn có thể xem và chỉnh sửa các thuộc tính và thành phần của các đối tượng trò chơi trong thời gian chạy. Với cửa sổ này, bạn có thể dễ dàng xem và chỉnh sửa các thuộc tính như vị trí, kích thước, màu sắc, v.v. của các đối tượng trò chơi. Ngoài ra, bạn cũng có thể thêm hoặc xóa các thành phần như script, renderer, collider, v.v. từ cửa sổ Inspector. Điều này giúp bạn có thể nhanh chóng và dễ dàng chỉnh sửa và thử nghiệm các ý tưởng mới trong thời gian chạy.

#034
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
AThe color and texture of objects like surface color
BThe script execution order for the order of friction
CThe size and shape of colliders like radius or height
The surface properties like bounciness and frictionĐÚNG
Giải thích

Trong Unity, vật liệu vật lý (Physics Materials) có vai trò quan trọng trong việc điều khiển các tính chất vật lý của các đối tượng. Chúng giúp bạn điều khiển các thuộc tính như độ bồng bềnh, ma sát, độ cứng và độ đàn hồi của các vật thể. Điều này cho phép bạn tạo ra các hiệu ứng vật lý chân thực và thú vị trong trò chơi của mình. Ví dụ, bạn có thể sử dụng vật liệu vật lý để tạo ra các bề mặt trơn trượt, hoặc các bề mặt cứng và khó chạm vào. Ngoài ra, vật liệu vật lý cũng giúp bạn điều khiển các hiệu ứng như va chạm, trượt và lăn của các vật thể.

#035
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
ATo create audio effects for specific movements or actions
BTo manage user input for specific movements or actions
CTo control the physics of game objects for specific movements or actions
To contain keyframe data for specific movements or actionsĐÚNG
Giải thích

Animation Clip trong Unity là một phần quan trọng trong việc tạo ra các hiệu ứng động cho các đối tượng trong trò chơi. Nó chứa các dữ liệu keyframe, giúp định hình các chuyển động và hành động của các đối tượng. Khi sử dụng Animation Clip, bạn có thể tạo ra các hiệu ứng động phức tạp và đa dạng, từ các chuyển động cơ thể đến các hiệu ứng ánh sáng và âm thanh. Để tạo ra một Animation Clip, bạn cần thiết lập các keyframe tại các thời điểm khác nhau trong thời gian, và sau đó, Unity sẽ tự động tạo ra các hiệu ứng động dựa trên các dữ liệu keyframe này. Điều này cho phép bạn tạo ra các hiệu ứng động linh hoạt và dễ dàng chỉnh sửa.

#036
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
ATo create audio effects for animations based on the assigned Animator Controller
BTo store animation data, including keyframes, curves, and events
CTo organize animation states and transitions based on the assigned Animator Controller
To control animation playback based on the assigned Animator ControllerĐÚNG
Giải thích

Component Animator trong Unity đóng vai trò quan trọng trong việc quản lý và điều khiển các hoạt động animation của đối tượng 3D. Nó cho phép bạn tổ chức các trạng thái animation và chuyển đổi giữa chúng dựa trên Controller Animator được chỉ định. Component Animator cũng cho phép bạn điều khiển việc phát lại animation dựa trên Controller Animator được chỉ định. Điều này giúp bạn tạo ra các hiệu ứng animation phức tạp và đa dạng cho các trò chơi hoặc ứng dụng 3D.

#037
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
DebuggerĐÚNG
BRemote Debugging
CProfiler
DConsole Window
Giải thích

Công cụ nào trong Unity cho phép bạn đặt điểm dừng, xem xét biến và thực hiện bước qua thực thi mã? Trong Unity, công cụ này được gọi là Debugger. Nó cho phép bạn đặt điểm dừng vào các vị trí cụ thể trong mã của mình, sau đó xem xét giá trị của các biến và thực hiện bước qua thực thi mã để tìm hiểu lý do tại sao mã của bạn không hoạt động như mong đợi. Ngoài ra, Debugger cũng cho phép bạn xem lịch sử thực thi mã và các biến được sử dụng trong mã.

#038
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
ALogic Errors
BRuntime Errors
Syntax ErrorsĐÚNG
DPerformance Issues
Giải thích

Lỗi syntax xảy ra khi có sai sót trong cấu trúc mã nguồn của chương trình, khiến cho quá trình biên dịch bị lỗi. Ví dụ, việc sử dụng kí tự không đúng, không khai báo biến, hoặc sử dụng toán tử không đúng có thể dẫn đến lỗi syntax. Lỗi này thường được phát hiện ngay từ giai đoạn biên dịch, giúp cho lập trình viên có thể sửa lỗi và tránh được những vấn đề phức tạp hơn trong quá trình chạy chương trình.

#039
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
ABy using only OnMousePosition to calculate the delta during the drag
BBy disabling the Input System during gameplay to set the fixed value for the delta during the drag
CBy setting a high mouse sensitivity value to the delta during the drag
By combining OnMousePosition and mouse button actions to calculate the delta during the dragĐÚNG
Giải thích

Để thực hiện chức năng kéo (drag) trong Unity, bạn cần kết hợp giữa vị trí chuột hiện tại và hành động nhấn chuột để tính toán độ lệch (delta) trong quá trình kéo. Điều này giúp đảm bảo tính chính xác và phản hồi tốt khi kéo các đối tượng trong game. Phương pháp này cho phép bạn dễ dàng điều chỉnh độ nhạy kéo và phản hồi của game theo ý muốn. Ngoài ra, nó cũng giúp giảm thiểu sự can thiệp của hệ thống Input trong quá trình kéo, từ đó cải thiện hiệu suất và giảm thiểu độ trễ.

#040
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
AInput.GetKey() only works for keyboard, while Input.GetKeyDown() works for both mouse and keyboard.
BInput.GetKey() is for axis input, and Input.GetKeyDown() is for button input.
CInput.GetKey() checks a key is pressed, while Input.GetKeyDown() checks for a key release.
Input.GetKey() detects continuous pressing, while Input.GetKeyDown() detects a single press event.ĐÚNG
Giải thích

Trong Unity, Input.GetKey() và Input.GetKeyDown() là hai hàm khác nhau được sử dụng để kiểm tra trạng thái của phím bấm. Input.GetKey() được sử dụng để kiểm tra xem một phím nào đó có đang được giữ xuống hay không. Nó sẽ trả về giá trị True nếu phím đó đang được giữ xuống và False nếu không. Ngược lại, Input.GetKeyDown() được sử dụng để kiểm tra xem một phím nào đó có đang được nhấn xuống lần đầu tiên hay không. Nó sẽ trả về giá trị True nếu phím đó được nhấn xuống lần đầu tiên và False nếu không. Điều này có nghĩa là Input.GetKey() sẽ trả về True cho đến khi phím đó được thả ra, trong khi Input.GetKeyDown() chỉ trả về True một lần khi phím đó được nhấn xuống lần đầu tiên. Vì vậy, Input.GetKey() được sử dụng để phát hiện trạng thái liên tục của phím bấm, trong khi Input.GetKeyDown() được sử dụng để phát hiện sự kiện nhấn xuống một lần.

#041
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
AValue types are used only for numeric data, while reference types can represent any data.
BValue types are stored on the heap, while reference types are stored on the stack.
CThere is no difference; the terms are interchangeable in C# programming.
Value types directly contain their data, while reference types contain a reference to their data.ĐÚNG
Giải thích

Trong C#, giá trị kiểu và kiểu tham chiếu là hai loại biến khác nhau. Giá trị kiểu là những biến được lưu trữ trực tiếp trong bộ nhớ, không cần phải lưu trữ địa chỉ. Ví dụ: int, float, bool, char. Ngược lại, kiểu tham chiếu là những biến được lưu trữ dưới dạng địa chỉ trong bộ nhớ, và để truy cập giá trị thực tế, chúng ta cần phải đi đến địa chỉ đó. Ví dụ: string, array, class, delegate. Điều này có nghĩa là khi bạn thay đổi giá trị của một biến kiểu tham chiếu, giá trị của biến khác cũng sẽ thay đổi nếu cả hai biến tham chiếu đến cùng một đối tượng. Điều này giúp giảm thiểu việc sử dụng bộ nhớ và tăng hiệu suất của chương trình.

#042
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
AOnce per frame
BAfter LateUpdate()
CWhen the object becomes enabled
At a fixed time intervalĐÚNG
Giải thích

FixedUpdate() là một phương thức đặc biệt trong Unity, được gọi tại một khoảng thời gian cố định. Điều này có nghĩa là phương thức này sẽ được thực hiện một cách đều đặn, bất kể khung hình (frame) hiện tại đang được cập nhật hay không. FixedUpdate() thường được sử dụng để thực hiện các tác vụ cần được cập nhật tại một khoảng thời gian cố định, chẳng hạn như cập nhật vị trí của các vật thể trong một trò chơi.

#043
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
ATo update game logic continuously after the object becomes enabled
BTo perform actions when the object becomes disabled
CTo initialize variables when the object becomes enabled
To perform actions when the object becomes enabled and activeĐÚNG
Giải thích

Mục đích của phương thức OnEnable() trong Unity là để thực hiện các hành động khi đối tượng trở nên có hiệu lực và hoạt động. Phương thức này được gọi một lần khi đối tượng được bật lên và hoạt động, cho phép bạn thực hiện các hành động cần thiết như khởi tạo các biến, tải tài nguyên, hoặc thực hiện các hành động khác. Điều này giúp bạn có thể kiểm soát và quản lý các hoạt động của đối tượng một cách hiệu quả. Ngoài ra, phương thức OnEnable() cũng có thể được sử dụng để cập nhật logic trò chơi liên tục sau khi đối tượng được bật lên.

#044
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
Start()ĐÚNG
BUpdate()
CFixedUpdate()
DAwake()
Giải thích

Phương thức Unity đặc biệt được sử dụng để khởi tạo biến trước khi trò chơi bắt đầu, nhưng sau khi tất cả các đối tượng được tải là Awake(). Phương thức Awake() được gọi một lần khi trò chơi bắt đầu và trước khi phương thức Start() được gọi. Điều này có nghĩa là bạn có thể sử dụng Awake() để thực hiện các tác vụ cần thiết trước khi trò chơi bắt đầu, chẳng hạn như khởi tạo biến, tải dữ liệu, v.v. Tuy nhiên, bạn không thể sử dụng Awake() để cập nhật trạng thái trò chơi hoặc thực hiện các tác vụ liên quan đến thời gian thực.

#045
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
A2 times
3 timesĐÚNG
C5 times
DInfinite loop
Giải thích

Trong đoạn mã C# này, biến đếm `count` được khởi tạo với giá trị 5. Vòng lặp `while` sẽ tiếp tục chạy cho đến khi `count` nhỏ hơn hoặc bằng 0. Trong mỗi lần lặp, giá trị của `count` sẽ giảm 2. Vì vậy, sau 2 lần lặp, `count` sẽ giảm xuống 3, sau 3 lần lặp, `count` sẽ giảm xuống 1, sau 4 lần lặp, `count` sẽ giảm xuống -1. Vòng lặp sẽ dừng khi `count` nhỏ hơn hoặc bằng 0. Do đó, sẽ có 3 lần in ra "Loop iteration" trước khi dừng.

#046
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
AManaging game physics without blocking the main thread
Handling tasks such as animations, delays without blocking the main threadĐÚNG
CRendering graphics without blocking the main thread
DCreating user interfaces without blocking the main thread
Giải thích

Coroutines trong Unity được sử dụng để xử lý các tác vụ như animations, delays mà không làm gián đoạn luồng chính của chương trình. Điều này cho phép các tác vụ được thực hiện một cách đồng thời và hiệu quả, mà không làm ảnh hưởng đến hiệu suất của chương trình. Coroutines cũng có thể được sử dụng để tạo ra các hiệu ứng thời gian thực, như di chuyển các đối tượng theo một quỹ đạo cụ thể. Ngoài ra, coroutines cũng có thể được sử dụng để xử lý các tác vụ phức tạp như tải dữ liệu từ mạng, mà không làm gián đoạn luồng chính của chương trình.

#047
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
AUsing Input.GetKey(KeyCode.Space) in the Update method.
Implementing an OnSpace(InputAction.CallbackContext context) method and checking context.performed.ĐÚNG
CDefining a public void OnSpacePressed() method and using the [SerializeField] attribute.
Attaching an InputAction to the PlayerInput component and listening for the "Space" action.ĐÚNG
#048
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
AA tool for creating lighting effects on the objects in Unity
Simple 2D objects with graphical images (textures) on themĐÚNG
CComponents used for managing input devices in Unity
D3D objects used for physics simulations in Unity
Giải thích

Trong Unity, sprites là những đối tượng 2D đơn giản có hình ảnh đồ họa (texture) được áp dụng lên chúng. Chúng thường được sử dụng để tạo ra các nhân vật, vật thể, hoặc các yếu tố khác trong trò chơi 2D. Sprite có thể được tạo ra từ các hình ảnh tĩnh hoặc động, và có thể được điều chỉnh để phù hợp với các yêu cầu của trò chơi. Ngoài ra, sprites cũng có thể được sử dụng để tạo ra các hiệu ứng ánh sáng, bóng tối, hoặc các yếu tố khác trong trò chơi. Tuy nhiên, trong trường hợp này, sprite không phải là công cụ tạo hiệu ứng ánh sáng, mà là một loại đối tượng 2D có hình ảnh đồ họa.

#049
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
AA type of texture that can be duplicated and dynamically generated
A blueprint of a GameObject that can be duplicated and dynamically generatedĐÚNG
CA component that handles object collisions between multiple objects in Unity
DA script used for controlling player behavior that can be duplicated and dynamically generated
Giải thích

Prefab trong Unity là một bản sao của GameObject, có thể được tạo ra từ một GameObject đã tồn tại. Nó giống như một bản thiết kế hoặc một bản sao của GameObject, có thể được sử dụng để tạo ra nhiều bản sao khác nhau. Prefab có thể được sử dụng để tạo ra các tòa nhà, các vật thể, các nhân vật, v.v. Nó cho phép bạn tạo ra các GameObject có cấu trúc và nội dung giống nhau, nhưng có thể được điều chỉnh và tùy chỉnh theo nhu cầu của bạn. Prefab cũng có thể được sử dụng để tạo ra các hiệu ứng và các hành vi khác nhau cho các GameObject. Nó là một công cụ mạnh mẽ trong Unity, giúp bạn tạo ra các dự án phức tạp và đa dạng.

#050
ĐỘ CHÍNH XÁC
4 LỰA CHỌN
When the script instance is being loadedĐÚNG
BOnly when the game starts
COnce per frame, after Start()
DContinuously during gameplay
Giải thích

Awake() là một phương thức đặc biệt trong Unity, được gọi khi một script được khởi tạo. Điều này có nghĩa là khi một script được tạo ra và gắn vào một đối tượng trong Unity, phương thức Awake() sẽ được gọi ngay lập tức. Điều này xảy ra ngay sau khi Start() được gọi, nhưng trước khi Update() được gọi. Vì vậy, Awake() chỉ được gọi một lần khi script được khởi tạo, chứ không phải liên tục trong suốt quá trình chơi game. Điều này cho phép bạn thực hiện các tác vụ cần thiết khi script được khởi tạo mà không làm gián đoạn quá trình chơi game.

Đánh giá quiz

Người học chấm PRU213 - Đề SP 2025 lần 2 (50 câu) ra sao?

Trung bình từ các phiên học hợp lệ.

5.0
1 lượt chấm