2009-06-23 57 views
8

Tôi không tìm thấy một định nghĩa hay về khái niệm bề mặt bản vẽ. Thuộc tính nào được kết hợp với một bề mặt? Trong bối cảnh OpenGL thuần túy không có bề mặt, vì OpenGL không có khái niệm về các hệ thống cửa sổ cụ thể. Trong OpenGL ES, mặc dù bạn có API EGL, trong đó giới thiệu khái niệm về một bề mặt vẽ, mà không định nghĩa nó đúng cách. Định nghĩa ngắn gọn của bạn về bề mặt bản vẽ là gì?Mặt chính xác của OpenGL ES hoặc Direct3D là gì?

Trả lời

7

Về cơ bản, bề mặt là thứ bạn có thể hiển thị. Đó là một loại ngữ cảnh thiết bị, nhưng có khả năng thông minh hơn vì các bề mặt có thể biết cách tự hiển thị hoặc làm những việc hữu ích khác. EGL có ba loại bề mặt:

  • Bề mặt cửa sổ: cửa sổ.
  • Bề mặt Pixmap: một hình ảnh.
  • Bề mặt pbuffer: bộ đệm pixel.

This forum post may be helpful.

1

Trong Direct3D, một bề mặt phần cứng thường - nhưng không phải luôn luôn - một phần bộ nhớ phần cứng trong định dạng bề mặt DirectDraw. Đây là định dạng tương tự được sử dụng bởi các tệp hình ảnh DDS và về cơ bản bao gồm tiêu đề, sau đó là dữ liệu hình ảnh ở một trong các định dạng hình ảnh được chỉ định trong phần tiêu đề. Các thuộc tính thông thường là chiều rộng, chiều cao, định dạng pixel và có thể là một vài thứ nhỏ nhặt như âm thanh nổi (tất nhiên là không thực sự được hỗ trợ).

Về cơ bản nó không nhiều hơn một thuật ngữ chung cho một hình ảnh.

2

Trong thế giới Direct3D, nói chung, một bề mặt là một số dữ liệu hình ảnh 2D. Kết cấu là thứ có thể được lấy mẫu và sử dụng trong trình đổ bóng. Thông thường các kết cấu được làm bằng các bề mặt; ví dụ, mỗi bản đồ mip của một kết cấu 2D là một bề mặt, và mỗi khuôn mặt của một bản đồ khối lập phương là một bề mặt.

Các vấn đề liên quan