How to speed up OpenGL rendering?

I'm displaying dense triangle meshes using patch() and it's extremely slow to rotate. I have a nice graphics card and I know that isn't the bottleneck. I've seen some older threads asking this same question, but I wanted to know if any progress has been made.
I'm using OpenGL hardware mode for the figure render. My graphics card is a GeForce GTX 660. Is there any hope of improved performance?
-Keith

Respuestas (2)

Sean de Wolski
Sean de Wolski el 27 de Jun. de 2013

0 votos

Downsample! Downsampling just a little bit in each dimension will save tons of time.

3 comentarios

Keith
Keith el 27 de Jun. de 2013
I actually need this at full resolution because I'm editing specific individual vertices. I know OpenGL and my graphics card are capable of displaying a mesh of this complexity without lag.
Walter Roberson
Walter Roberson el 8 de Feb. de 2014
A common technique is to downsample during rotation, and to use the full resolution when you stop the rotation.
Salvatore
Salvatore el 1 de Mzo. de 2014
I'm trying to downsample as reported here: http://www.mathworks.com/matlabcentral/answers/119748-working-with-reducepatch-to-speed-up-the-rotation-of-3d-mesh-models but I've some problems. If you know a solution it will be very appreciated. Salvatore

Iniciar sesión para comentar.

Jan
Jan el 28 de Jun. de 2013

0 votos

Matlab's OpenGL connection is not fast. I'd even dare to claim, that it is slow. For a small world defined by 20 objects, which draw less than 1000 triangles, I get frame rates below 10/s.
I've seen some code before, which tried to rotate a body in steps of 0.01 deg. Of course this looked slower than it was.
Rotating the camera can be cheaper than rotating the object. But it depends on the details. So perhaps showing us the command for your "rotation" might reveal an problem.

4 comentarios

Keith
Keith el 10 de Jul. de 2013
I should have clarified that I am talking about camera rotation using the Rotate 3D tool from the figure toolbar. The mesh has 150K verts and 300K faces, so it's sizable but I know it can be rendered faster.
Jan
Jan el 10 de Jul. de 2013
I think, that Matlab is not a suiting tool to display objects with 300'000 faces. Surely it can be rendered faster - with another program.
Keith
Keith el 11 de Jul. de 2013
Do you know of some program that interfaces nicely with Matlab? Something I could pipe my mesh information to in real time that would then handle the display faster?
Salvatore
Salvatore el 8 de Feb. de 2014
Keith, have you found a solution to speed up rotation of rendered 3d object in matlab? I have the same problem. Looking around it seems that the problem can be solved by using opengl programming in matlab. Salvatore

Iniciar sesión para comentar.

Categorías

Más información sobre Graphics Performance en Centro de ayuda y File Exchange.

Productos

Etiquetas

Preguntada:

el 27 de Jun. de 2013

Comentada:

el 1 de Mzo. de 2014

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by