Appendix A

Java 2D Properties

This appendix presents properties that can be useful in troubleshooting Java 2D.

A.1 Properties on Solaris OS and Linux

The following table describes the default values of some useful properties on Solaris OS and Linux platforms.

Java 2D Defaults on Solaris OS and Linux
Setup
DGA
SHM
Pixmaps
OnScreen
OffScreen
Solaris SPARC with DGA support
On
On
Off
DGA/Software
Software
Solaris SPARC with no DGA, Solaris x86, Linux, SunRay, VNC
Off
On
On
X11/MITSHM
Shared/Server Pixmaps
J2SE 1.4 or greater: Remote X server, ssh
Off
Off
On
X11
Server Pixmaps
J2SE 1.3.1 or less: Remote X server, ssh
Off
Off
Off
X11
Software

The following list explains how to change the defaults.

  • The X11 pipeline is the default pipeline for Solaris OS and Linux. Change this default as follows:

    • -Dsun.java2d.opengl=true — Attempt to enable the OpenGL pipeline.

  • The use of DGA is controlled as follows:

    • NO_J2D_DGA unset — Use DGA, if available.

    • NO_J2D_DGA set — Disable the use of DGA.

  • MIT Shared Memory Extension (SHM) is controlled as follows:

    • To use Shared Memory Extension, if available, specify either one of the following properties:

      • NO_J2D_MITSHM unset

      • J2D_USE_MITSHM=true

    • To not use Shared Memory Extension, specify either one of the following properties:

      • NO_J2D_MITSHM set

      • J2D_USE_MITSHM=false

  • The general use of pixmaps is controlled as follows:

    • -Dsun.java2d.pmoffscreen unset — Use pixmaps if DGA is not available.

    • -Dsun.java2d.pmoffscreen=true — Force the use of pixmaps.

    • -Dsun.java2d.pmoffscreen=false — Disable the use of pixmaps.

  • The use of Shared and Server pixmaps is controlled as follows:

    • J2D_PIXMAPS unset — Use both types.

    • J2D_PIXMAPS=shared — Use only shared memory pixmaps.

    • J2D_PIXMAPS=sserver — Use only server–side pixmaps.

  • The choice of default visual is controlled as follows:

    • FORCEDEFVIS unset (default) — Use the best visual available.

    • FORCEDEFVIS set to a hexadecimal value — Use the visual whose ID is the hexadecimal value.

    • FORCEDEFVIS set to any other value — Use the default visual.

A.2 Properties on Windows

The following list describes some useful properties on Windows platforms.

  • The DirectDraw/GDI pipeline is the default pipeline for Windows. Change this default as follows:

    • -Dsun.java2d.noddraw=true — Disable the use of DirectDraw pipeline. GDI will be used instead.

    • -Dsun.java2d.noddraw=false — Enable the use of DirectDraw pipeline.

    • -Dsun.java2d.d3d=false — Disable the use of Direct3D pipeline.

    • J2D_D3D=false — Disable the use of Direct3D pipeline.

    • -Dsun.java2d.d3d=true — Enable the use of Direct3D pipeline.

    • J2D_D3D=true — Enable the use of Direct3D pipeline.

  • Control the use of the built-in surface punting mechanism as follows:

    • -Dsun.java2d.ddforcedram=true — Keep volatile images in VRAM.

  • Control the use of DirectDraw blit operations as follows:

    • -Dsun.java2d.ddblit=false — Disable the use of DirectDraw blit operations. GDI blits will be used instead.