aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* j3dcore: use the new set((Bounds)null) fastpath to create empty boundsHarvey Harrison2012-01-141-26/+17
| | | | | | Also add a few more calls to the new internal setEmpty/setInfinite helpers. Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: small optimizations in BoundingBox constructorsHarvey Harrison2012-01-141-31/+30
| | | | | | | | Avoid the calls to updateBoundsStates when we know exactly what bounds we set in the default cases. Also add a check to the (Bounds) constructor for an empty Bounds argument and directly set the empty state. Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: take advantage of the BoundingBox(null) constructor to create an ↵Harvey Harrison2012-01-1414-42/+14
| | | | | | | | | | | | | | empty bounds The following pattern: BoundingBox temp = new BoundingBox(); temp.setLower(1.0, 1.0, 1.0); temp.setUpper(-1.0, -1.0, -1.0); Incurs 3 calls to updateBoundsStates internally (construction and each setter), while calling with a null argument needs 0 calls, and zero floating-point comparisons. Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: optimize special BoundingBox settingHarvey Harrison2012-01-141-66/+71
| | | | | | | | | | When setting an empty or infinite bounds, avoid the calls to updateBoundsStates by setting the two booleans directly. In addition, provide a fast-path to the (Bounds) constructor to create an empty BoundingBox when passing a null Bounds. Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: remove some unused variables from BoundingBoxHarvey Harrison2012-01-141-2/+1
| | | | Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: annotate Point3d members of BoundingBox as finalHarvey Harrison2012-01-141-18/+16
| | | | Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: add a constructor so that parts of RenderAtomListInfo can be finalHarvey Harrison2012-01-122-8/+9
| | | | Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: use System.arrayCopy and make RenderAtom creation loops commonHarvey Harrison2012-01-121-57/+22
| | | | | | | Unify the two if/else branches into a single loop and expand the Array using System.arrayCopy. Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: move an early-return case as early as possible in locked section in ↵Harvey Harrison2012-01-121-17/+6
| | | | | | | | | GeometryAtom In all paths, if the RenderAtom is not scoped to the given View, we return null and do not adjust the renderAtoms array. Make this clear with an early return. Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: use consistent locking when updating the renderAtoms arrayHarvey Harrison2012-01-121-3/+2
| | | | | | | | | | | | | | | | | | | | You cannot lock updates to a member variable using itself if the reference is ever changed. The renderAtoms array in GeomtryAtom is resized when it does not have enough room for all the open views. This leads to crashes similar to the following: Exception in thread "J3D-RenderStructureUpdateThread-5" java.lang.ArrayIndexOutOfBoundsException: 3 at javax.media.j3d.GeometryAtom.getRenderAtom(GeometryAtom.java:241) at javax.media.j3d.RenderBin.processTransformChanged(RenderBin.java:3506) at javax.media.j3d.RenderBin.processMessages(RenderBin.java:1772) at javax.media.j3d.StructureUpdateThread.doWork(StructureUpdateThread.java:102) at javax.media.j3d.J3dThread.run(J3dThread.java:275) Use the existing lockObj in this class to synchronize access. This lock is already being used to protect updates to the centroid update calculation, but both locked sections are relatively short, if contention ends up being a problem, renderAtoms could be changed to an ArrayList instead which can be resized. Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: remove unused variables and unneeded casting from BehaviorStructureHarvey Harrison2012-01-091-8/+2
| | | | Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: Canvas3D and Screen3D list annotations in ViewHarvey Harrison2012-01-091-26/+22
| | | | Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: add type annotations to the textureReload listHarvey Harrison2012-01-082-7/+4
| | | | Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: remove unused variables and call a function statically in RendererHarvey Harrison2012-01-081-11/+4
| | | | Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: annotate lists of TextureRetained, change to explicit null checksHarvey Harrison2012-01-082-43/+28
| | | | | | | The existing code was using instanceof as a null-check in practice, annotate the lists and helper functions with explicit types and make the null checks more obvious. Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: annotate lists of OrderedBins and a RenderAtonListInfo collectionHarvey Harrison2012-01-082-27/+25
| | | | Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: add annotations for lists holding an Integer idHarvey Harrison2012-01-083-14/+14
| | | | Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: annotate lists of renderMolecules/renderAtoms in Canvas3D and RenderBinHarvey Harrison2012-01-083-13/+13
| | | | | | - annotate the one method these two lists are passed to Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: annotate View's list of Canvas3DsHarvey Harrison2012-01-083-63/+42
| | | | Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: type annotation in RenderBinHarvey Harrison2012-01-081-11/+11
| | | | Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: pass ArrayList directly to j3dQueryProps rather than a temp arrayHarvey Harrison2012-01-083-15/+12
| | | | Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: small annotations in VirtualUniverseHarvey Harrison2012-01-081-6/+6
| | | | Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: annotate lists in VirtualUniverseHarvey Harrison2012-01-082-44/+44
| | | | | | - small change to use toArray with an argument array Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: annotate Shape3DRetained.getGeomAtomsList and update all callersHarvey Harrison2012-01-0716-71/+71
| | | | Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: remove unneeded casting, type annotation in RasterRetainedHarvey Harrison2012-01-071-6/+4
| | | | Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: type annotations in ShaderBin and related codeHarvey Harrison2012-01-074-54/+52
| | | | Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: remove unused variables and unneeded casting in RenderMoleculeHarvey Harrison2012-01-071-15/+6
| | | | Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: type annotation in LightBinHarvey Harrison2012-01-072-19/+18
| | | | Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: type annotations in EnvironmentSetHarvey Harrison2012-01-073-27/+22
| | | | | | Remove some unused variables as well. Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: annotate list in AttributeBin, remove unused vars and unneeded castHarvey Harrison2012-01-072-9/+8
| | | | Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: further list annotations in RenderBinHarvey Harrison2012-01-071-28/+26
| | | | Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: annotate a few more lists in RenderBinHarvey Harrison2012-01-071-11/+10
| | | | Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: annotate OrderedCollection lists in OrderedBinHarvey Harrison2012-01-072-21/+21
| | | | Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: remove unnecessary casts and accesses that should be static in ↵Harvey Harrison2012-01-041-10/+8
| | | | | | RenderBin Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: add type annotations to RenderBin.updateCheckListHarvey Harrison2012-01-041-11/+8
| | | | Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: remove a bunch of trivially unused variables in RenderBinHarvey Harrison2012-01-041-57/+13
| | | | Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: add type annotations to RenderBin.sBinUpdateList and .tbUpdateListHarvey Harrison2012-01-041-13/+13
| | | | Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: add type annotations to RenderBin.rmUpdateList and.aBinUpdateListHarvey Harrison2012-01-041-15/+12
| | | | Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: add type annotations to RenderBin.lightMessageListHarvey Harrison2012-01-041-5/+5
| | | | Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: add type annotations to RenderBin.renderAtomsHarvey Harrison2012-01-041-19/+13
| | | | Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: remove trailing whitespace and organize imports in win32 specific codeHarvey Harrison2012-01-042-24/+24
| | | | Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: use eclipse organize imports cleanup toolHarvey Harrison2011-12-31210-376/+646
| | | | Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: remove trailing whitespace from all filesHarvey Harrison2011-12-31348-12214/+12214
| | | | Signed-off-by: Harvey Harrison <[email protected]>
* j3dcore: cherry-pick fix for issue 636 from svn-trunkKen Mc Neill2011-12-291-0/+18
| | | | | | | [original message] issue 636 fixed by mcneillk git-svn-id: https://svn.java.net/svn/j3d-core~svn/trunk@954 ba19aa83-45c5-6ac9-afd3-db810772062c
* update docs for svnKevin Rushforth2010-08-101-7/+7
| | | | git-svn-id: https://svn.java.net/svn/j3d-core~svn/branches/dev-1_6@952 ba19aa83-45c5-6ac9-afd3-db810772062c
* Issue number: 640 - setDepthTestFunction do not work with the D3D rendererAlessandro Borges2010-01-221-0/+1
| | | | | | | | Submitted by: lamer77 Reviewed by: aces git-svn-id: https://svn.java.net/svn/j3d-core~svn/branches/dev-1_6@948 ba19aa83-45c5-6ac9-afd3-db810772062c
* Issue number: 634 - GeometryArrayRetained : dirty flag isn't set in ↵Alessandro Borges2009-10-301-0/+1
| | | | | | | | | | | | | setNormal(..) Submitted by: interactivemesh Reviewed by: aces GeometryArrayRetained : dirty flag isn't set in setNormal(..) 'dirtyFlag |= NORMAL_CHANGED;' is missing in GeometryArrayRetained.setNormal(int index, float normal[]) git-svn-id: https://svn.java.net/svn/j3d-core~svn/branches/dev-1_6@947 ba19aa83-45c5-6ac9-afd3-db810772062c
* Issue number: 633 - ShaderAttributeSetRetained : remove(..) doesn't remove ↵Alessandro Borges2009-10-301-3/+3
| | | | | | | | | | a ShaderAttribute Submitted by: interactivemesh Reviewed by: aces git-svn-id: https://svn.java.net/svn/j3d-core~svn/branches/dev-1_6@946 ba19aa83-45c5-6ac9-afd3-db810772062c
* Issue number: 632 - PointAttributesRetained : setPointAntialiasingEnable ↵Alessandro Borges2009-10-271-1/+1
| | | | | | | | | | | doesn't change the state Obtained from: isse db Submitted by: interactivemesh Reviewed by: Aces git-svn-id: https://svn.java.net/svn/j3d-core~svn/branches/dev-1_6@945 ba19aa83-45c5-6ac9-afd3-db810772062c
* Issue number: 629 - D3D must use software vertex processing on Intel video ↵Alessandro Borges2009-09-133-64/+74
| | | | | | | | | | | | | cards Submitted by: Aces Despiste newer Intel video cards has specs for creating devices using hardware vertex processing (HWVP), as Hardware TnL and shaders +2.x, Intel recomends using Software Vertex Processing (SWVP). Now D3D pipeline uses SWVP as default for Intel Video cards git-svn-id: https://svn.java.net/svn/j3d-core~svn/branches/dev-1_6@944 ba19aa83-45c5-6ac9-afd3-db810772062c