pspeed42
d5e20d53d0
Implemented accurate bounding sphere to triangle
...
collision. The old code had an implementation but
it missed tons of cases.
For 100,000 random points, the old way would process
that in about 12+ ms. The new way does it in about
18+ ms... but the old way missed 643 collisions
(180 versus 823).
Plus, with the new way accurate contact normal and
contact point can be provided trivially... so it is.
10 years ago
pspeed42
1ad6a57b32
Added a version of createFloatBuffer that takes
...
a ColoRGBA array.
10 years ago
Jan Ivenz
dacaaa5477
Fixed clamp method in ColorRGBA.
11 years ago
pspeed42
216f874175
Added support for instancing at the mesh level.
...
(so far only for lwjgl because I'm lazy)
Went ahead and added in divisor support while I was
at it because it doesn't cost anything and there might
be use-cases for it.
Mesh now knows about instances and you can directly
ask it for an instance count. I haven't added support
for proper bounding box calculation but it should
at least be possible now.
11 years ago
pspeed42
cce7b0f6de
More tab eradication.
11 years ago
pspeed42
9b8b730c44
Added a license header.
11 years ago
Paul Speed
1a4f07b36a
Fixing tabs to spaces.
11 years ago
Hannes Nevalainen
9027b748eb
Update javadoc for screen blend mode.
11 years ago
Hannes Nevalainen
ccb946e65d
Add Screen blend mode.
11 years ago
Christian Gärtner
33c9e6041b
[Bounding] Minor JavaDoc fix
11 years ago
Nehon
7356b727c3
Instancing now works with Lighting material, and shadows are supported with instanced geometries
11 years ago
Nehon
a11bfa5e63
Fixed a bug where grouped geom were rendered in shadow pre-pass because they were still in the shadow cast queue
11 years ago
shadowislord
fa41da59a4
* Fix outstanding cloning related issues in InstancedNode
...
* Throw exception if the geometry's material does not support instancing
* Test the cloning function in TestInstanceNode
11 years ago
shadowislord
6ddc68278b
* Make sure InstancedGeometry is non-batchable spatial
11 years ago
shadowislord
4ae99f9d5d
* Fix incorrect reset of Geometry members after cloning
11 years ago
shadowislord
4fdce777b5
* Fix ParticleEmitter.control reference which became incorrect after cloning
11 years ago
shadowislord
564a08672f
* Remove InstancedNode.setCullHint(CullHint.Never) from TestInstancedNode example as it is not neccessary
11 years ago
shadowislord
eee43b470e
* Added InstancedNode: easy to use instancing with similar API to BatchNode. The underlying scene graph will be automatically optimized so instancing is used as much as possible, thus reducing number of draw calls and improving performance. Unlike BatchNode, it does not copy the geometry's mesh around, but only its transform. In order for it to work, it requires the Renderer to support the GeometryInstancing capability.
...
* Replaced existing instancing test with TestInstanceNode, which demostrates how to use the new InstancedNode by changing the transform, mesh, and material of every instance periodically.
* The lower-level InstancedGeometry API rewritten: Users don't need to manage the number of instances they have and their indices. Instead, they can use addInstance() and removeInstance() to add and remove instances as desired. Unlike InstancedNode, InstancedGeometry requires all Geometries to have the same mesh and material, but they can have different transforms.
* Instancing.glsllib now requires the InstanceData to have world transforms instead of world view transforms. As a consequence, users of instancing must specify in the material the world parameters ViewProjectionMatrix and ViewMatrix instead of ProjectionMatrix.
11 years ago
shadowislord
52b93ba933
* Made Geometry.associate/unassociate To/From GroupNode methods public so they can be GeometryGroupNode implementations outside the com.jme3.scene package
...
* Added ability to get the geometry start index for GeometryGroupNode implementations
11 years ago
shadowislord
5b7a408bcc
* Fix issue where BatchNode.clone() would still re-use the previous BatchNode's data structures
11 years ago
shadowislord
ef1e69c182
* Instanced objects are now considered a single object when generating rendering statistics
11 years ago
Blay09
ce1eba944e
Fix error dialog being displayed in a headless context.
...
This was causing an infinite cycle of java.awt.HeadlessException in case handleError was called in an environment without display.
11 years ago
neph1
8738f961ea
This is the long-overdue initial check in of KinematicRagdollControl with IK support. It also contains some modifications to Bone. Tested with TestBoneRagdoll to ensure backwards compatibility. Please review.
11 years ago
neph1
ed6256ef47
Fix for handling multiple channels in AnimationEvent
...
new constructor (variant)
(First commit in github repo)
11 years ago
abies
2f7dbe54dc
Fixed indentation
11 years ago
abies
ae9f281976
Use TempVars for triangle processing instead of explicit allocations, speeds up processing by around 30%
11 years ago
abies
93b3b744f3
Added parallel processing mode to tangent generator
11 years ago
Nehon
330b53671a
Upped JME version to 3.1.0 with the tag "snapshot-github"
...
Somehow trying to get nightly back...
11 years ago
Nehon
3f43d7832f
Updated documentation of the Bone class and changed names of the transforms variables and accessors so that they properly describe what they are an are misleading anymore.
...
Kept old methods as deprecated to not break user code.
Changed all calls to the deprecated methods in the engine.
11 years ago
Nehon
6d9a7fbcfb
Fixed issue in shadows15.glsllib, edge bilinear filtering was wrong when using tetxureGather
11 years ago
shadowislord
d3ba691600
* Introduce GeometryGroupNode as abstract class for implementations that group / optimize geometries
...
* Reimplement BatchNode on top of GeometryBatchNode
11 years ago
Nehon
d8bbb4e9f9
Fixed an issue where you couldn't chain several shadow renderers. Thanks to Perjin for narrowing down the issue.
...
Now a shadow renderer properly cleanup the parameters set to a material when the post shadow pass in done
11 years ago
shadowislord
67f402df75
* Remove use of instance variable in BIHTree, instead use TempVars
11 years ago
shadowislord
17fd3d466e
* Fix Remy's grammar and spelling
11 years ago
shadowislord
844e468eac
* Fix two more un-compliant PostShadow shaders
11 years ago
shadowislord
bd500608dd
* Fix "m_LightPos redefined" shader compile error in PostShadow.vert
11 years ago
shadowislord
be3a6c03b2
* Put comment markers around imported library contents when loading shader
11 years ago
shadowislord
ad7fdb6fab
* Deprecate texture wrap modes not supported in OpenGL 3
...
* Make sure engine is not using them anywhere
11 years ago
shadowislord
c925104f5e
* Ensure the statistics properly represent number of objects / triangles / vertices rendered when using instancing
11 years ago
shadowislord
948fdb21eb
* Add new flag to Platform enum which specifies if its 32-bit platform or 64-bit.
...
* Add new but currently unused native extraction engine which supports user-specified native libraries as well as deferred extraction of libraries.
11 years ago
shadowislord
65d83b37f0
* Deprecated LTC and LATC texture formats, OpenGL3+ does not support them. Instead RGTC / BC5 must be used.
...
* Add missing license to InstancedGeometry.
* Minor cosmetic / doc changes.
11 years ago
Phr00t
dd042344d8
reduced code duplication
11 years ago
Phr00t
0f76dc2cbd
Ability to emit a certain number of particles
11 years ago
shadowislord
76147fc5f7
* Throw exception if the spot light computed cosine angle is not valid
11 years ago
shadowislord
6680a1dec4
* FilterPostProcessor now crashes early if packed float texture isn't supported - since it is now required by all filters
11 years ago
shadowislord
0989d40256
* Ensure mipmapping is disabled for skies
11 years ago
shadowislord
99af4d9bd5
* Deprecate usage of TextureKey.setAsCube() and TextureKey.setAsTexture3D() - this is now handled by the TextureKey.setTextureTypeHint() method instead
11 years ago
shadowislord
6b12d5c638
* Fix many javadoc errors mostly related to incorrect HTML or missing references
11 years ago
shadowislord
81498d6f79
* Introduce Image.isNPOT() which is now used to check if the image is non-power-of-2 in renderer implementations.
11 years ago
shadowislord
35cfae5ef0
* Merge revision 11058 from experimental branch
...
- Add instanced geometry support. This is performed by uploading 4 vertex buffers each containing 4 floats. The top 3 rows are the world matrix and the bottom row is a quaternion representing the normal matrix. Hence, both unshaded and lit geometries can be rendered through instancing.
See Instancing.glsllib for more information as well as the comment in LwjglRenderer.
11 years ago