Làm cách nào để làm mịn hoạt ảnh trong Scratch? Chủ yếu, tôi muốn nó như vậy mà khi bạn bấm và giữ mũi tên bên phải, nó đi ngay mà không có bất kỳ jittering đáng chú ý. Thêm vào đó, đầu sẽ khiến bạn chờ một giây để lặp lại khi bạn giữ một mũi tên. Làm thế nào tôi có thể làm mịn công cụ này ra?Làm mịn chuyển động sprite ở đầu
Trả lời
Với Scratch, bạn có thể chuyển động rất mượt mà bằng cách sử dụng Glide
với khoảng cách hoặc khoảng cách dài. Tuy nhiên, bất lợi của phương pháp này là hoạt động Glide phải kết thúc trước khi sprite có thể thực hiện bất kỳ cảm biến nào, chẳng hạn như phát hiện cạnh hoặc xung đột. Điều này thường không mong muốn.
Độ trễ nhỏ mà bạn đang nói khi nhấn phím, thực sự được gắn trực tiếp với tốc độ lặp lại của bàn phím. Khi bạn nhấn một phím trên bàn phím, sự kiện quan trọng đó được gửi đi, nhưng sau đó có một sự chậm trễ nhỏ trước khi lặp lại. Nếu bạn có thể tìm cách thay đổi tốc độ lặp lại của bàn phím hệ thống, điều này sẽ chuyển sang Scratch.
Có giới hạn về mức tối ưu hóa bạn có thể thực hiện trong Scratch. Đó là, sau khi tất cả, một môi trường lập trình rất cơ bản (nhưng rất thú vị), nhập cảnh cấp. :)
Bạn có thể làm cho đến khi "mũi tên không ép"
khi mũi tên ép lặp lại di chuyển (hoặc lướt) cho đến khi không chủ arrow ép
sau đó nó sẽ không kiểm tra trọng điểm nhấn trong khoảng thời gian quy định, làm cho di chuyển mượt mà hơn.
Tôi biết đó là câu hỏi cũ. Nhưng trong trường hợp ai đó đang tìm kiếm giải pháp, hãy xem dự án cào này: http://scratch.mit.edu/projects/276298/
Chỉ cần thêm vòng lặp vĩnh viễn và bên trong vòng kiểm tra này nếu nhấn phím mũi tên. Nếu nó là - di chuyển. Bằng cách này bạn sẽ không phụ thuộc vào tốc độ lặp lại của bàn phím.
Bạn có thể làm điều này:
When flag pressed
forever
if (right arrow pressed?) then
change xs by 1
xs = xs * 0.8
change x by (xs)
Đó sẽ kiểm tra mọi nếu mũi tên bên phải được nhấn, và nếu có, nó thay đổi biến xs
một. Sau đó, nó nhân xs bằng 0,8, do đó giá trị nhìn thấy phân rã.
Sau đó, nó thay đổi x của sprite bằng var xs
.
Một cách bạn có thể làm điều đó là sử dụng các biến và khối tùy chỉnh để làm cho các đối số làm mịn chuyển động. Thêm một biến gọi là tốc độ x và sử dụng mãi mãi thay đổi X theo tốc độ X. Tôi không có bất kỳ ảnh chụp nhanh hoặc ví dụ nào, nhưng bạn có thể sử dụng các tập lệnh trong khối tùy chỉnh để lướt qua nó một cách trơn tru.
- 1. Làm mịn phông chữ ở Delphi
- 2. Quy mô CSS sprite pixel art mà không làm mịn hình ảnh
- 3. Làm mịn hoạt ảnh chuyển đổi jQuery này?
- 4. Chuyển đổi video thành JPEG Sprite
- 5. làm thế nào để thay đổi vị trí sprite động?
- 6. Sprite bị mờ
- 7. Thay đổi Sprite Anchorpoint mà không cần di chuyển nó?
- 8. Downsampling mà không làm mịn
- 9. Làm thế nào để làm cho hiệu ứng chuyển trên css sprite di chuột
- 10. Overlay 2d vũ khí sprite trên nhân vật sprite?
- 11. Làm mịn dữ liệu từ cảm biến
- 12. Làm mịn hình ảnh trong R
- 13. Làm mịn đất xung quanh các hồ
- 14. Làm mịn phông chữ trong Firefox
- 15. Gaussian Làm mịn một hình ảnh trong python
- 16. Đường kẻ mịn được vẽ trong canvas
- 17. Làm mịn hình ảnh bằng Python
- 18. Xử lý hình ảnh - Làm mịn
- 19. Làm thế nào để bạn chọn một hình ảnh sprite từ một bảng sprite bằng Python?
- 20. jQuery giảm bớt so với chuyển đổi CSS3 - Có làm mịn tương đương chính xác không?
- 21. AABB của sprite xoay?
- 22. Hoạt động bắt đầu từ thông báo được mở ở đầu ngăn xếp hoạt động
- 23. Di chuyển đến đầu dòng khi ở chế độ Insert
- 24. Jquery, Jcarousel cuộn vô hạn mịn
- 25. Làm mịn tiếng ồn pert quãng tám thấp
- 26. Bản vẽ của UIImage: làm mịn hình ảnh
- 27. Làm thế nào để làm cho một máy ảnh mịn theo thuật toán?
- 28. Làm mịn đường cong đồ họa cốt lõi
- 29. Sprite Kit iOS7 - Thêm thanh trượt
- 30. Làm mịn mật độ hạt nhân trong d3.js
** CẢNH BÁO: Lỗi trong mã! ** Vị trí đặt lại 'xs' ở đâu? Giá trị của 'xs' sẽ rất nhanh chóng chuyển từ' 1' sang '0.8' thành' 0.64' thành '0.512' thành' 0.4096' ... và giả sử nó bắt đầu từ 1! Bởi vì không có 'set [xs v] thành (number)', giá trị sẽ ** không bao giờ reset **! – wizzwizz4
Mã hoạt động. Mọi giá trị của 'xs' sẽ nhỏ hơn theo cấp số nhân khi phím mũi tên bên phải không được nhấn. Vì vậy, 'xs' tiến tới 0 khi không có phím nào được bấm và giá trị 4 (được tính bằng 0,8/(1-0,8)) khi nhấn phím mũi tên phải. –