PDA

View Full Version : SketchUp performance



Evan
04-10-2013, 03:01 PM
I was looking through the SketchUp version 8 files today and found an interesting note in an .ini file.




; Most cards except NVIDIA act weirdly when vertex arrays are put into
; display list. ATI cards either fall into a slow path or display distorted
; textures. Intel cards display distorted textures.
SETTINGS {
; NVIDIA cards handle vertex arrays in display list perfectly well. It
; also results in at least 2X perfomance boost.
; Default: false
useDisplayList = true
}

My emphasis. Mine is set "true" because I use Nvidia cards. This means that if you do not have an Nvidia display card or built in graphics chip then SketchUp is taking at least a 2 times performance hit. This will especially apply to laptops since only the very high end machines are likely to have separate graphics chip support for Nvidia. Since the issue applies to vertex arrays it applies to all of the display modes in SketchUp, not just the texture modes.

The actual problem is apparently only Nvidia completely correctly supports Open GL which is what SketchUp uses in order to be Mac compatible. If you are using SketchUp on a desktop that has an open PCI Express slot (very common) it would pay to buy any of the Nvidia cards that support PhysX. That is most any of the current ones. PhysX is not required but it insures that the board also correctly supports Open GL.

mars-red
04-10-2013, 03:37 PM
Nice bit of detective work! I've been an nvidia guy for many years now, especially after getting into some OpenGL software development of my own. This lack of compliant hardware/software/firmware implementation is frustratingly common even outside the realm of video chipsets. I recall having similar headaches due to non-compliant ACPI firmware implementation in a laptop I had years ago.

JohnAlex141r
04-10-2013, 05:51 PM
Evan;

You'll find that ATI drivers for OSX will also "speed up" OpenGL code utilizing display lists. At least they did a couple of years ago.

The real issue here is that if they are writing OpenGL so badly that they are having to use a 1980s technology to "speed up" the product....

(display lists are about the first try to get static geometry to be "Batched" on graphics hardware. Unfortunately, if the geometry changes, the list has to be re-compiled, and certain operations are not allowed in a display list. Really - if they have such an antiquated rendering engine that "display lists" improve things, then I'm *really* not impressed)

(yes, I've done lots of graphics rendering work!)

Another JohnS.

Evan
04-10-2013, 11:12 PM
SketchUp hasn't been really updated in years. Google bought it to "crowd outsource" the job of creating 3D models of architecture to go on Google Earth. Technology overtook that approach as Google has developed software that uses hi resolution aerial photos taken from several directions simultaneously to synthesize 3D mapping of everything down to trash cans and the cracks in the sidewalk. They are busy assembling their own worldwide light aircraft fleet to take these photos and they will be on Google Earth soon.

In the meantime Google sold SketchUp since it was surplus to business requirements. The cartography and geodetics firm Trimble bought it last year and have been sitting on it since. Perhaps they are porting it to a proper language such as C++ or maybe are just going to let it rot. There is no whiff of news what they are up to. It is an odd situation since Google also sold the SketchUp team but all of the related material is still on Google's web pages. It may have been only a paper transaction for reasons not disclosed. The Trimble Corporate offices are just a few miles from Google head office.