・
Đánh giá 4
・
Đánh giá trung bình 4.5
Lần đầu tiên tôi đã thực hành ECS/DOTS! Mặc dù không đề cập đến mọi thứ về mặt lý thuyết nhưng đây là khoảng thời gian giúp tôi hiểu rõ ràng ECS là gì. Tôi nghĩ các bạn học viên khác cũng nên học thông qua tài liệu chính thức của Unity về các tính năng khác nhau sau khi hoàn thành khóa học, điều này sẽ rất hữu ích. Sau khi hoàn thành khóa học, tôi đã thử sửa đổi script để ôn tập và tự học, tôi nghĩ các bạn học viên khác cũng nên thử thách bản thân! Cảm ơn vì khóa học tuyệt vời!!!! --- [Ôn tập và Tự học] 1. Movement System Tôi đã refactor PlayerMovementSystem và ProjectileMovementSystem để hoạt động dựa trên IJobEntity, nâng cao hiệu quả biên dịch Burst và cho phép xử lý song song. - Mặc dù PlayerMovementSystem là một entity đơn lẻ nhưng tôi nghĩ tốt hơn là nên duy trì tính nhất quán với các phần khác nên đã thêm cấu trúc Job và đảm bảo toàn bộ logic được biên dịch Burst. - Tôi đã loại bỏ vòng lặp foreach trong ProjectileMovementSystem và sử dụng ScheduleParallel để sửa đổi sao cho khi nhiều projectile di chuyển đồng thời thì sử dụng work thread một cách hiệu quả. 2. HP Bar System Tôi đã thêm kiểm tra ComponentLookup.DidChange() trong PlayerHpBarSystem và EnemyHpBarSystem, và sửa đổi để chỉ tính toán FillAmount khi dữ liệu của PlayerComponent và EnemyComponent thực sự thay đổi. 3. Collision Tôi đã sửa đổi ProjectileCollisionSystem từ cách tạo EntityCommandBuffer thủ công và chờ hoàn thành Job với Complete, Playback sang cách sử dụng EndFixedStepSimulationEntityCommandBufferSystem. 4. Audio Sau khi hoàn thành việc triển khai hiệu ứng âm thanh cuối cùng, khi chuyển từ scene chính sang scene game Có vẻ như lỗi xảy ra do entity không được tạo ngay lập tức trong AudioManager. Do đó, giống như đã làm trong các script System khác, tôi đã sửa đổi để kiểm tra (audioBufferEntity == Entity.Null || !entityManager.Exists(audioBufferEntity)) và xác nhận sự tồn tại của entity trong Update trước khi phát.
Cảm ơn bạn đã để lại đánh giá quý báu về khóa học. ~ Việc bạn giới thiệu chi tiết cả quá trình refactoring chắc chắn sẽ giúp ích rất nhiều cho những người khác.




