Wiki


Wiki Table of Contents

Page Details

First published by:
Last revision by:
3 people found this article useful.

100% of people found this useful
Silverlight Tip of the Day #3: Silverlight Game Support, Limitations and Workarounds

Filed under: [Edit Tags]

Khi khai thác những kỹ thuật của Silverlight trong phát triển các ứng dụng game, tôi đã phát hiện ra một số cách để khắc phục những khó khăn gặp phải. Tôi dự định sử dụng blog này để theo dõi những vấn đề này với hi vọng có thể giúp bạn tiết kiệm thời gian nếu bạn cũng nghiên cứu như tôi. Ngoài ra, tôi đã thêm một phần game resource, để đặt những đường liên kết tới các game tutorial ứng dụng Silverlight khác.

Nếu bạn khám phá bất kỳ chi tiết nào khác, xin vui lòng gửi cho tôi và tôi sẽ post bài của bạn ! Cảm ơn bạn.

Game Resources

Silverlight Hỗ Trợ:

  • Định dạng file JPG và PNG.
  • Transparency through PNG files.
  • Keyboard và mouse input
  • Sound
  • Game UI layout through Grid elements.
  • Timers (animating, game loop, etc.)
  • Texture blending through Opacity.
  • Socket/TCP programming for multi-player networking support
  • Events (clicking, etc.)
  • Animation - WPF model that uses timers instead of frames.
  • Great debugging support through Visual Studio.

Silverlight Không Hỗ Trợ:

  • Định dạng file GIF or BMP.

Cách khắc phục: Sử dụng file định dạng PNG (hay JPG).

  • Tạo hình ảnh từ những tập hợp con của những hình ảnh lớn hơn.

Cách khắc phục: Bạn có hai cách:

1.     Thiết lập một khu vực riêng dành cho hình ảnh như là bạn chỉ hiển thị một phần của hình ảnh mà bạn muốn hiển thị.

2.     Đặt mỗi hình ảnh trong tập tin riêng của chúng. Nhưng khó khăn cho những công việc như là những chuyển động của các yêu tinh, điều này có nghĩa là phải có rất nhiều file riêng. Rất khó để quản lý.

  • Lưu file cục bộ - Vì còn liên quan đến security, Silverlight 2.0 không hỗ trợ saving. Sẽ có nói về sự hỗ trợ SaveFileDialog trong tương lai  và tôi sẽ  theo dõi vấn đề này chặt chẽ để cho bạn biết những gì tôi nghiên cứu được. Tôi cần nét riêng này (chỉnh sửa bản đồ)!

Cách khắc phục: Lưu tại một web server. Xem Michael Sync's blog tại đây: http://michaelsync.net/category/silverlight  bên dưới "Uploading with Silveright 2 Beta 1 and WCF"

  • Những giá trị  dấu chấm động cho các vị trí - Nếu bạn ghép các hình với nhau tạo thành 1 bản đồ, chúng sẽ tự động đổi vị trí các điểm X và Y trên bản đồ thành các giá trị thập phân , bạn sẽ nhìn thấy những đường line được tạo thành giữa những miếng ghép.

Cách khắc phục: Sử dụng làm tròn giá trị.

  • Chỉnh sửa các điểm ảnh bitmap, lọc ảnh (color matrix, vv....) và những hiệu ứng (blur, glow, vv...).

Cách khắc phục: Dựa vào opacity bạn có thể tạo ra những hiệu ứng thật đẹp, thật cool như là   tạo nên sự pha trộn thật mềm mượt  liên tục giữa những mảnh ghép bản đồ. Xem ví dụ tại đây tutorial .

  • Trình diễn 3D - Silverlight 2 không hỗ trợ 3D. Tuy nhiên, hãy xem  Tip of the Day #71 trên Silverlight 3. Bạn sẽ được hỗ trợ về 3D tại đây.

Cách khắc phục: Tại đây có những engines và demos về 3D rất tuyệt. Thí dụ:

1.     http://www.markdawson.org/kit3d/

2.     http://www.codeplex.com/Balder

  • Chia sẻ các nguồn lực là không được phép. Ví dụ, chia sẻ một SolidColorBrush giữa các hình chữ nhật. Nếu bạn có hình chữ nhật 1000, chúng sẽ cần phải có tất cả các brush riêng biệt cho mỗi hình chữ nhật.

 • Căn chỉnh cho văn bản trong Textboxes.

Cách khắc phục: Bạn sẽ phải programmatically center nó.

Thank you,
--Mike Snow

 

 

Recent Comments

Leave the first comment for this page.