2012-05-03 45 views

Trả lời

0

Theo như tôi đã tìm kiếm, tùy chọn duy nhất khác là sử dụng trình kết xuất phần mềm WebGL, tính đến hôm nay chỉ Chrome hỗ trợ. Direct3D có trình điều khiển tham chiếu (thực sự không ổn định) và Swiftshader, rất tốt và tốn kém.

Sau một số lần đau đầu khác, tôi đã quản lý để xây dựng Mesa3D cho Windows, nhưng chỉ một phiên bản cũ vẫn còn một số hỗ trợ cho nó. Ít nhất, nó có một hiệu suất tuyệt vời.

2

Tôi đã sử dụng Swiftshader từ Chuyển vùng cho một dự án sản xuất trước đây và tôi phải nói, điều đó thật tuyệt vời. Một chút tốn kém, nhưng rực rỡ.

+0

Có, tôi đã thử nghiệm Swiftshader và tuyệt vời của nó ... và đắt tiền! 3D không phải là kinh doanh cốt lõi của chúng tôi, và đó là lý do tại sao tôi đang tìm OpenGL ... –

+0

Không, không thể nghĩ ra bất kỳ lựa chọn thay thế miễn phí nào khác. Có lẽ ai đó trên diễn đàn Mesa3D có thể giúp bạn xây dựng các tệp nhị phân hoạt động cho Windows. – Ani

+0

Swiftshader đã được mở nguồn bởi google trong thời gian chờ đợi: https://blog.chromium.org/2016/06/universal-rendering-with-swiftshader.html –

4

Điều đó tùy thuộc vào phiên bản OpenGL bạn muốn tăng tốc. Tùy thuộc vào nhu cầu của bạn, có một số lựa chọn thay thế có sẵn. Tôi đã liệt kê những tôi biết dưới đây:

OpenGL 1,0 & 1,1

Windows (kể từ Windows NT 3.5) thực sự bao gồm một OpenGL software implementation để bắt đầu với. Nếu bạn chưa cài đặt bất kỳ trình rasterizer phần mềm nào khác, thì đây phải là cài đặt mặc định của bạn. Trình rasterizer phần mềm của Microsoft hỗ trợ OpenGL 1.0 hoặc 1.1, tùy thuộc vào nền tảng của bạn, nhưng sẽ không tăng tốc bất cứ điều gì mới hơn thế. Nếu phiên bản OpenGL mong muốn của bạn được bao phủ bởi 1.0 hoặc 1.1 (tuy nhiên không chắc), giải pháp là đủ. Tôi không chắc chắn về mức độ triển khai phần mềm Windows OpenGL mặc định bao gồm các khung công tác OpenGL ES 1.x thông qua hỗ trợ OpenGL 1.0 hoặc 1.1.

OpenGL 1.4

Bên cạnh đó, trong Windows Vista, Microsoft bao gồm một emulation layer có thể dịch OpenGL vào Direct3D; do đó hỗ trợ tối đa OpenGL 1.4. Ngoài ra, điều này có nghĩa là thời gian chạy Windows Vista (và lên?) Có thể tăng tốc hầu hết các phần của OpenGL SC. Tôi chưa bao giờ sử dụng trình giả lập này, và khá ngạc nhiên khi nghe về nó, nhưng nó có thể được quan tâm đến một người nào đó phải chạy một trong những khung công tác cũ trong môi trường Windows. Lưu ý rằng trình quét phần mềm Windows OpenGL chuẩn (OpenGL 1.0 hoặc 1.1) cũng được bao gồm trong Windows Vista trở lên.

OpenGL ES 2.0

Bên cạnh đó, có những ANGLE project mà tăng tốc WebGL và OpenGL ES 2.0 bằng cách dịch OpenGL ES 2.0 lời gọi đến DirectX 9 và 11. ghi chú phát triển của họ cũng đề cập rằng một giải pháp OpenGL ES 3.0 trong các công trình. Chưa bao giờ sử dụng ANGLE, tôi không thể đưa ra phán quyết.

OpenGL 3.1

Ngoài những đề cập ở trên, Mesa 3D (which supports up to OpenGL 3.1) tính năng ba triển khai phần mềm:

  • swrast
  • softpipe
  • llvmpipe

Vì tôi biết rất ít về swrast (bản gốc phần mềm dự án Mesa rasterizer) và softpipe (một trình điều khiển tham chiếu) tôi sẽ kiềm chế không đi sâu vào chúng. Việc thực hiện thứ ba, llvmpipe, và có lẽ là một trong những bạn có thể quan tâm nhất, là một phần mềm tốc độ cao thực hiện sử dụng đa luồng và biên dịch JIT để tăng tốc độ mô phỏng với các lệnh gốc và SIMD.

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