FireMonkey ile özel OpenGL oluşturma

OpenCL için render yüzeyi olarak VCL TFrame kullanan bir platformumuz var.

FireMonkey'i kullanarak, aynı şeyi elde etmenin herhangi bir yolu var mı? OpenGL'yi işlemek için kaçırılan bir bütün FMX.Forms.TForm uygulamasının birkaç örneğini buldum ancak bu gerçekten istediğim şey değil.

Bu gerçekten "Üzgünüm, hayır yapamaz mı?" Kukla bir TForm yaratmayı denedim ve bir OpenGL oluşturma bağlamı oluşturmak için DC kullanın ve ardından bir FMX.Types.TImage veya benzer bir şeye karıştırın ama bu yaklaşımı denemeden başarısız oldum.

Bunu yapan var mı? Veya sadece CAD olmayan uygulamalar için FireMonkey mi?

1
katma yazar Kromster, kaynak

1 cevap

FireMonkey'in şu anda var olduğu gibi, doğrudan FireMonkey OpenGL bağlamında konuşmanın KOLAY bir yolu yoktur (Direct2D/3D varsayılan olarak OGL'ye geçmek için resmi seçenek olarak kullanılmadığından, Windows'da OpenGL modunu zorlamak için bir hack kullandığınızı varsayar) .

Bununla birlikte, yapabileceğiniz şey, doğrudan OpenGL API'sine (veya GLEW veya GLUT gibi bir platformlar arası katman katmanını kullanarak) konuşarak kendi OpenGL içeriğinizi yaratmanızdır. Bir FireMonkey uygulamasının kendi OpenGL içeriğini oluşturmasından, bir "FireMonkey 2D Formunun içine" OGL Render Penceresinin "ebeveynsini" bile ekleyeceği hiçbir şey yoktur (bir 3D Formunda aynı şeyi yapmak bir zorluk olsa da).

Hangi yolu seçerseniz seçin iyi şanslar!

1
katma
Başarmaya çalıştığım şey "3D Firemonkey formunda" idi. Biraz daha denedim ama hiçbir yerim olmadı. FireMonkey'in Windows altında OpenGL kullanması için yapılan saldırı beni reddetti; Ben de bulamadım. Deneme kapalı.
katma yazar DelphiDabber, kaynak