Android hỗ trợ OpenGL ES 1.0 chồng chéo với OpenGL 1.3 nên điều này có thể thực hiện được, nhưng không đơn giản chỉ thay thế tệp jar khi chạy.
Bạn nên cố gắng sử dụng lại càng nhiều càng tốt ứng dụng của bạn trên cả hai nền tảng. Dù sao, thực tế là tốt để tách biệt phần còn lại của bạn khỏi các phần phụ thuộc bên ngoài như OpenGL ngay cả khi bạn không cần hỗ trợ OpenGL ES cụ thể. Bạn không bao giờ biết API/nền tảng nào bạn có thể muốn chuyển ứng dụng của mình sang tương lai.
Có 2 tùy chọn khả dụng.
Đầu tiên là ẩn triển khai OpenGL phía sau giao diện mà phần còn lại của ứng dụng của bạn sử dụng và sau đó cung cấp các triển khai Jogl và Androide riêng biệt. Tùy thuộc vào nền tảng nào bạn đang chạy trên, bạn có thể chọn để instanciate thực hiện đúng lúc chạy bằng cách sử dụng mẫu nhà máy.
Vì OpenGL ES và OpenGL rất giống với nỗ lực cần thiết để duy trì điều này không nên quá cao, cho phép bạn tuân theo các chức năng chung.
Tùy chọn khác là thử và sử dụng Jogl2 có hỗ trợ cho cấu hình. Chúng xuất hiện để cung cấp chính xác những gì bạn cần nhưng Jogl2 vẫn đang trong giai đoạn thử nghiệm.
Đáy trang này nói một chút về hồ sơ: http://kenai.com/projects/jogl/pages/FAQ
Cấu hình cho phép các ứng dụng Java được viết theo một cách mà cho phép khả năng tương thích với nhiều phiên bản OpenGL cùng một lúc. Vì OpenGL ES (GL cho các hệ thống nhúng) có chức năng chồng chéo với OpenGL, nó đã mở ra cơ hội để thêm ngay cả Tiểu sử mà cầu nối máy tính để bàn và triển khai nhúng.
Bạn có thể muốn đọc số này http://michael-bien.com/mbien/entry/jogl_2_opengl_profiles_explained để biết thêm thông tin về tiểu sử.
Câu hỏi hay - tính di động trên nền tảng di động vẫn không thực tế. – whatnick
Thử sử dụng Qt. Đó là nền tảng và hoạt động trong Windows, Mac OSX, Linux, iOS, Android, BlackBerry, Windows RT và (ngay) Windows Phone.Nó cung cấp các chức năng OpenGL tối thiểu tương thích trên tất cả các nền tảng, nhưng bạn cũng có thể sử dụng các chức năng OpenGL cụ thể cho từng nền tảng (ví dụ: OpenGL đầy đủ trên máy tính để bàn). – trusktr