Skip to main content

Bug in D3D for appearance in Shape 3D

2 replies [Last post]
vandamme
Offline
Joined: 2004-12-01
Points: 0

I use a shape 3D to plot a curve (LineStripArray) in 3D space.
When I apply geometry everything is OK, but when I want to apply appearance to this shape 3D I've got some problems :

myShape3D.setGeometry(myGeometry); // OK

Appearance appear = new Appearance();
LineAttributes lineAttrib = new LineAttributes();
lineAttrib.setLineWidth(thickness)
lineAttrib.setLinePattern(LineAttributes.PATTERN_DASH);
appear.setLineAttributes(appear);

myShape3D.setAppearance(appear); // KO

thickness and/or pattern are not taken into account.
This happens only in D3D mode (same for Java 3D 1.3.1 FCS or latest build 1.3.2 build 7) on two different 3D cards :
GForce 4 MX and Radeon 9800 Pro.
In OpenGL, everything is OK (excepted that with the Radeon I am obliged to desactivate all hardware accelerations : bug already reported in this forum).

If anyone has an idea about this problem of appearence with D3D ....

Thks a lot ..

Reply viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
kcr
Offline
Joined: 2004-03-17
Points: 0

Line pattern support is not available in all drivers for D3D. Line width is not supported at all in D3D. In general, the D3D port of Java 3D is not as fully featured or as well-tested as the OpenGL port. This is not likely to change going forward. We anticipate putting all of our resources on the OpenGL version. The only way any new features or improvements will happen to the D3D port of Java 3D is if someone in the community steps up to the plate and volunteers for the work.

Btw, here is the relevant information from the README file:

_______________________________________________________

Unsupported Features
--------------------
The following features are currently unsupported in the Direct3D implementation of Java 3D:
Line width
Line antialiasing
Point antialiasing
PolygonAttributes backFaceNormalFlip
RenderingAttributes ROP_XOR
Stereo
^M
Texture features not support:
...

if the driver did not expose D3DPMISCCAPS_LINEPATTERNREP capability bit then it didn't support line patterns. A solid line will be shown in this case. Most driver currently available need to workaround using reference mode.

_______________________________________________________

vandamme
Offline
Joined: 2004-12-01
Points: 0

Thanks a lot for your answer.

So, I am waiting for new release of ATI catalysts to have full OGL fonctionnality with my 3D app.