All Types

org.rajawali3d.scenegraph.A_nAABBTree

Generic Axis Aligned Bounding Box based tree sorting hierarchy. Subclasses are left to determine child count and any count specific behavior. This implementation in general uses the methodology described in the tutorial listed below by Paramike, with a few modifications to the behavior. Implementations of this could be Ternary trees (3), Octree (8), Icoseptree (27), etc. The tree will try to nest objects as deeply as possible while trying to maintain an minimal tree structure based on the thresholds set. It is up to the user to determine what thresholds make sense and are optimal for your specific needs as there are tradeoffs associated with them all. The default implementation attempts to strike a reasonable balance. This tree design also utilizes an option for overlap between child partitions. This is useful for mimicking some of the behavior of a more complex tree without incurring the complexity. If you specify an overlap percentage, it is more likely that an object near a boundary of the partitions will fit in one or the other and be able to be nested deeper rather than staying in the parent partition. Note however that in cases where the object is small enough to still be fully contained by both (or more) children, it is added to the parent. This is where a more complex tree would excel, but only in the case over very large object counts. By default, this tree will NOT recursively add the children of added objects and NOT recursively remove the children of removed objects.

org.rajawali3d.scenegraph.A_nAABBTree

Generic Axis Aligned Bounding Box based tree sorting hierarchy. Subclasses are left to determine child count and any count specific behavior. This implementation in general uses the methodology described in the tutorial listed below by Paramike, with a few modifications to the behavior. Implementations of this could be Ternary trees (3), Octree (8), Icoseptree (27), etc. The tree will try to nest objects as deeply as possible while trying to maintain an minimal tree structure based on the thresholds set. It is up to the user to determine what thresholds make sense and are optimal for your specific needs as there are tradeoffs associated with them all. The default implementation attempts to strike a reasonable balance. This tree design also utilizes an option for overlap between child partitions. This is useful for mimicking some of the behavior of a more complex tree without incurring the complexity. If you specify an overlap percentage, it is more likely that an object near a boundary of the partitions will fit in one or the other and be able to be nested deeper rather than staying in the parent partition. Note however that in cases where the object is small enough to still be fully contained by both (or more) children, it is added to the parent. This is where a more complex tree would excel, but only in the case over very large object counts. By default, this tree will NOT recursively add the children of added objects and NOT recursively remove the children of removed objects.

org.rajawali3d.animation.mesh.AAnimationObject3D
org.rajawali3d.animation.mesh.AAnimationObject3D
org.rajawali3d.loader.awd.ABaseObjectBlockParser
org.rajawali3d.loader.awd.ABaseObjectBlockParser
org.rajawali3d.loader.awd.ABlockLoader

Base class for parsing blocks. Blocks are instantiated by the LoaderAWD directly and are not intended for any other use case.

org.rajawali3d.loader.awd.ABlockLoader

Base class for parsing blocks. Blocks are instantiated by the LoaderAWD directly and are not intended for any other use case.

org.rajawali3d.loader.awd.ABlockParser

Base class for parsing blocks. Blocks are instantiated by the AWDParser directly and are not intended for any other use case.

org.rajawali3d.loader.awd.ABlockParser

Base class for parsing blocks. Blocks are instantiated by the AWDParser directly and are not intended for any other use case.

org.rajawali3d.materials.textures.ACompressedTexture
org.rajawali3d.materials.textures.ACompressedTexture
org.rajawali3d.loader.awd.AExportableBlockParser
org.rajawali3d.loader.awd.AExportableBlockParser
org.rajawali3d.renderer.AFrameTask
org.rajawali3d.renderer.AFrameTask
org.rajawali3d.lights.ALight
org.rajawali3d.lights.ALight
org.rajawali3d.loader.ALoader
org.rajawali3d.loader.ALoader
org.rajawali3d.materials.shaders.fragments.texture.AlphaMapFragmentShaderFragment
org.rajawali3d.materials.shaders.fragments.texture.AlphaMapFragmentShaderFragment
org.rajawali3d.materials.textures.AlphaMapTexture
org.rajawali3d.materials.textures.AlphaMapTexture
org.rajawali3d.materials.plugins.AlphaMaskMaterialPlugin
org.rajawali3d.materials.plugins.AlphaMaskMaterialPlugin
org.rajawali3d.materials.plugins.AlphaMaterialPlugin
org.rajawali3d.materials.plugins.AlphaMaterialPlugin
org.rajawali3d.loader.AMeshLoader
org.rajawali3d.loader.AMeshLoader
org.rajawali3d.materials.textures.AMultiTexture
org.rajawali3d.materials.textures.AMultiTexture
org.rajawali3d.materials.textures.AnimatedGIFTexture

Creates a texture from an animated GIF.

org.rajawali3d.materials.textures.AnimatedGIFTexture

Creates a texture from an animated GIF.

org.rajawali3d.animation.Animation
org.rajawali3d.animation.Animation
org.rajawali3d.animation.Animation3D
org.rajawali3d.animation.Animation3D
org.rajawali3d.animation.AnimationGroup

A group of Animations that will all be played and paused at the same time. When using a group, use AnimationGroup#addAnimation(Animation) to add each desired animation to the group and register the group to the scene with Scene#registerAnimation(Animation). When ready, call #play() to begin all animations.

org.rajawali3d.animation.AnimationGroup

A group of Animations that will all be played and paused at the same time. When using a group, use AnimationGroup#addAnimation(Animation) to add each desired animation to the group and register the group to the scene with Scene#registerAnimation(Animation). When ready, call #play() to begin all animations.

org.rajawali3d.animation.AnimationQueue
org.rajawali3d.animation.AnimationQueue
org.rajawali3d.cameras.AObjectCamera
org.rajawali3d.cameras.AObjectCamera
org.rajawali3d.postprocessing.APass

Defines a rendering pass which is needed for multiple rendering passes.

org.rajawali3d.postprocessing.APass

Defines a rendering pass which is needed for multiple rendering passes.

org.rajawali3d.postprocessing.APostProcessingEffect
org.rajawali3d.postprocessing.APostProcessingEffect
org.rajawali3d.cameras.ArcballCamera
org.rajawali3d.cameras.ArcballCamera
org.rajawali3d.curves.ArchimedeanSpiral3D

ICurve3D spiral implementation following an Archimedean spiral. Special values of the density parameter result in special conditions:

org.rajawali3d.curves.ArchimedeanSpiral3D

ICurve3D spiral implementation following an Archimedean spiral. Special values of the density parameter result in special conditions:

org.rajawali3d.materials.AResourceManager
org.rajawali3d.materials.AResourceManager
org.rajawali3d.util.ArrayUtils

A collection of methods for working with primitive arrays.

org.rajawali3d.util.ArrayUtils

A collection of methods for working with primitive arrays.

org.rajawali3d.scene.ASceneFrameCallback

Abstract class for receiving frame callbacks from Scene. The timing of this interface assumes that the rendering time does not affect the timing of operations before and after the frame. Pre- and Post- operations are provided because of how these tie in with the animation system. Pre- tasks will be executed prior to animation updates. Post- tasks will be executed after all drawing has occurred. #callPreFrame() and #callPostFrame() frame exist to simplify interfacing to Rajawali's frame task system. By default they both return false, signalling that the callback should be ignored by the scene. Implementing classes must override these methods to return true as appropriate for the tasks they are handling.

org.rajawali3d.scene.ASceneFrameCallback

Abstract class for receiving frame callbacks from Scene. The timing of this interface assumes that the rendering time does not affect the timing of operations before and after the frame. Pre- and Post- operations are provided because of how these tie in with the animation system. Pre- tasks will be executed prior to animation updates. Post- tasks will be executed after all drawing has occurred. #callPreFrame() and #callPostFrame() frame exist to simplify interfacing to Rajawali's frame task system. By default they both return false, signalling that the callback should be ignored by the scene. Implementing classes must override these methods to return true as appropriate for the tasks they are handling.

org.rajawali3d.materials.shaders.AShader

This class is a wrapper class for shader creation. GLSL shaders are text files that are compiled at runtime. The GLSL language is based on C. This class is like a mini framework that lets you write shaders in Java. The main reason for this is maintainability and code reuse. The lack of operator overloading makes this slightly verbose however. Instead of writing this in GLSL:


  myVar *= myOtherVar;
  
You'll have to write this:

  myVar.assignAdd(myOtherVar);
  
GLSL data types are wrapped into their own classes. Because most of the data type names are reserved keywords in Java they are prefixed with 'R'. For instance:

org.rajawali3d.materials.shaders.AShader

This class is a wrapper class for shader creation. GLSL shaders are text files that are compiled at runtime. The GLSL language is based on C. This class is like a mini framework that lets you write shaders in Java. The main reason for this is maintainability and code reuse. The lack of operator overloading makes this slightly verbose however. Instead of writing this in GLSL:


  myVar *= myOtherVar;
  
You'll have to write this:

  myVar.assignAdd(myOtherVar);
  
GLSL data types are wrapped into their own classes. Because most of the data type names are reserved keywords in Java they are prefixed with 'R'. For instance:

org.rajawali3d.materials.shaders.AShaderBase

This abstract class defines all the data types that are used in a shader. The data types reflect the data types that are used in GLSL. Because most of the data type names are reserved keywords in Java they are prefixed with 'R'. For instance:

org.rajawali3d.materials.shaders.AShaderBase

This abstract class defines all the data types that are used in a shader. The data types reflect the data types that are used in GLSL. Because most of the data type names are reserved keywords in Java they are prefixed with 'R'. For instance:

org.rajawali3d.materials.textures.ASingleTexture

This class is used to specify texture options.

org.rajawali3d.materials.textures.ASingleTexture

This class is used to specify texture options.

org.rajawali3d.curves.ASpiral3D
org.rajawali3d.curves.ASpiral3D
org.rajawali3d.materials.textures.AtcTexture
org.rajawali3d.materials.textures.AtcTexture
org.rajawali3d.materials.textures.ATexture
org.rajawali3d.materials.textures.ATexture
org.rajawali3d.loader.awd.ATextureBlockParser
org.rajawali3d.loader.awd.ATextureBlockParser
org.rajawali3d.materials.shaders.fragments.texture.ATextureFragmentShaderFragment
org.rajawali3d.materials.shaders.fragments.texture.ATextureFragmentShaderFragment
org.rajawali3d.ATransformable3D
org.rajawali3d.ATransformable3D
org.rajawali3d.postprocessing.passes.BlendPass
org.rajawali3d.postprocessing.passes.BlendPass
org.rajawali3d.loader.awd.BlockAnimationSet

Groups a number of BlockSkeletonAnimations or BlockMeshPoseAnimations together. The BlockAnimator which actually binds the various animation components together only references BlockAnimationSets, rather than individual animation sequences or frames.

org.rajawali3d.loader.awd.BlockAnimationSet

Groups a number of BlockSkeletonAnimations or BlockMeshPoseAnimations together. The BlockAnimator which actually binds the various animation components together only references BlockAnimationSets, rather than individual animation sequences or frames.

org.rajawali3d.loader.awd.BlockAnimator

This class is responsible for binding a BlockMeshInstance to a BlockSkeleton and assigning it a single BlockAnimationSet. It is the final stage in the AWD animation "pipeline".

org.rajawali3d.loader.awd.BlockAnimator

This class is responsible for binding a BlockMeshInstance to a BlockSkeleton and assigning it a single BlockAnimationSet. It is the final stage in the AWD animation "pipeline".

org.rajawali3d.loader.awd.BlockBitmapTexture
org.rajawali3d.loader.awd.BlockBitmapTexture
org.rajawali3d.loader.awd.BlockCamera
org.rajawali3d.loader.awd.BlockCamera
org.rajawali3d.loader.awd.BlockCommand
org.rajawali3d.loader.awd.BlockCommand
org.rajawali3d.loader.awd.BlockContainer
org.rajawali3d.loader.awd.BlockContainer
org.rajawali3d.loader.awd.BlockCubeTexture
org.rajawali3d.loader.awd.BlockCubeTexture
org.rajawali3d.loader.awd.BlockLight
org.rajawali3d.loader.awd.BlockLight
org.rajawali3d.loader.awd.BlockLightPicker
org.rajawali3d.loader.awd.BlockLightPicker
org.rajawali3d.loader.awd.BlockMeshInstance
org.rajawali3d.loader.awd.BlockMeshInstance
org.rajawali3d.loader.awd.BlockMeshPose
org.rajawali3d.loader.awd.BlockMeshPose
org.rajawali3d.loader.awd.BlockMeshPoseAnimation
org.rajawali3d.loader.awd.BlockMeshPoseAnimation
org.rajawali3d.loader.awd.BlockMetaData
org.rajawali3d.loader.awd.BlockMetaData
org.rajawali3d.loader.awd.BlockNamespace
org.rajawali3d.loader.awd.BlockNamespace
org.rajawali3d.loader.awd.BlockPrimitiveGeometry
org.rajawali3d.loader.awd.BlockPrimitiveGeometry
org.rajawali3d.loader.awd.BlockScene
org.rajawali3d.loader.awd.BlockScene
org.rajawali3d.loader.awd.BlockShadowMethod
org.rajawali3d.loader.awd.BlockShadowMethod
org.rajawali3d.loader.awd.BlockSharedMethod
org.rajawali3d.loader.awd.BlockSharedMethod
org.rajawali3d.loader.awd.BlockSimpleMaterial
org.rajawali3d.loader.awd.BlockSimpleMaterial
org.rajawali3d.loader.awd.BlockSkeleton

Specifies the joint hierarchy and inverse-bind-pose matrices. The skeleton itself is not bound to any particular mesh; it is only assigned geometry by instances of BlockAnimator, where present.

org.rajawali3d.loader.awd.BlockSkeleton

Specifies the joint hierarchy and inverse-bind-pose matrices. The skeleton itself is not bound to any particular mesh; it is only assigned geometry by instances of BlockAnimator, where present.

org.rajawali3d.loader.awd.BlockSkeletonAnimation

Groups a series of BlockSkeletonPose frames into an animation. This block produces a single SkeletalAnimationSequence object.

org.rajawali3d.loader.awd.BlockSkeletonAnimation

Groups a series of BlockSkeletonPose frames into an animation. This block produces a single SkeletalAnimationSequence object.

org.rajawali3d.loader.awd.BlockSkeletonPose

Transformations of certain (not necessarily all) joints, specifying a single keyframe. NB: pose transformations are not bound to a skeleton, this is done through BlockAnimator. At the end of this block, a SkeletalAnimationFrame object has been created and assigned the poses.

org.rajawali3d.loader.awd.BlockSkeletonPose

Transformations of certain (not necessarily all) joints, specifying a single keyframe. NB: pose transformations are not bound to a skeleton, this is done through BlockAnimator. At the end of this block, a SkeletalAnimationFrame object has been created and assigned the poses.

org.rajawali3d.loader.awd.BlockSkybox
org.rajawali3d.loader.awd.BlockSkybox
org.rajawali3d.loader.awd.BlockTextureProjector
org.rajawali3d.loader.awd.BlockTextureProjector
org.rajawali3d.loader.awd.BlockTriangleGeometry

The TriangleGeometry block describes a single mesh of an AWD file. Multiple TriangleGeometry blocks may exists in a single AWD file as part of a single model, multiple models, or scene.

org.rajawali3d.loader.awd.BlockTriangleGeometry

The TriangleGeometry block describes a single mesh of an AWD file. Multiple TriangleGeometry blocks may exists in a single AWD file as part of a single model, multiple models, or scene.

org.rajawali3d.loader.awd.BlockUVAnimation
org.rajawali3d.loader.awd.BlockUVAnimation
org.rajawali3d.postprocessing.effects.BloomEffect
org.rajawali3d.postprocessing.effects.BloomEffect
org.rajawali3d.postprocessing.passes.BlurPass
org.rajawali3d.postprocessing.passes.BlurPass
org.rajawali3d.bounds.BoundingBox
org.rajawali3d.bounds.BoundingBox
org.rajawali3d.bounds.BoundingSphere
org.rajawali3d.bounds.BoundingSphere
org.rajawali3d.BufferInfo
org.rajawali3d.BufferInfo
org.rajawali3d.BuildConfig
org.rajawali3d.BuildConfig
org.rajawali3d.cameras.Camera
org.rajawali3d.cameras.Camera
org.rajawali3d.cameras.Camera2D
org.rajawali3d.cameras.Camera2D
org.rajawali3d.util.Capabilities

Lists all OpenGL specific capabilities

org.rajawali3d.util.Capabilities

Lists all OpenGL specific capabilities

org.rajawali3d.curves.CatmullRomCurve3D

Derived from http://www.cse.unsw.edu.au/~lambert/splines/source.html

org.rajawali3d.curves.CatmullRomCurve3D

Derived from http://www.cse.unsw.edu.au/~lambert/splines/source.html

org.rajawali3d.cameras.ChaseCamera
org.rajawali3d.cameras.ChaseCamera
org.rajawali3d.postprocessing.passes.ClearMaskPass

Disables stencil test for previously masked rendering passes so that next render passes are not masked.

org.rajawali3d.postprocessing.passes.ClearMaskPass

Disables stencil test for previously masked rendering passes so that next render passes are not masked.

org.rajawali3d.animation.CoalesceAnimation3D

ATransformable3D Coalescence animation. This animation ROUGHLY approximates a decaying orbit. This is a non-physics based animation. The paths objects follow are defined by ASpiral3D paths. Any number of objects can be added to the animation, and objects can have their spiral focused on a fixed point, or on another object in the animation. For example, a system of a sun, planet and moon. The moon decays into the planet while the planet decays into the sun. It is important to note that any dependencies in the animation take place in insertion order. If the 4th item is set to converge on the 5th item, then the position of the 4th item will always be one time step behind where it should be. This class is thread safe, and should you want to, configurations can be added while the animation is playing.

org.rajawali3d.animation.CoalesceAnimation3D

ATransformable3D Coalescence animation. This animation ROUGHLY approximates a decaying orbit. This is a non-physics based animation. The paths objects follow are defined by ASpiral3D paths. Any number of objects can be added to the animation, and objects can have their spiral focused on a fixed point, or on another object in the animation. For example, a system of a sun, planet and moon. The moon decays into the planet while the planet decays into the sun. It is important to note that any dependencies in the animation take place in insertion order. If the 4th item is set to converge on the 5th item, then the position of the 4th item will always be one time step behind where it should be. This class is thread safe, and should you want to, configurations can be added while the animation is playing.

org.rajawali3d.animation.ColorAnimation3D
org.rajawali3d.animation.ColorAnimation3D
org.rajawali3d.postprocessing.passes.ColorThresholdPass
org.rajawali3d.postprocessing.passes.ColorThresholdPass
org.rajawali3d.curves.CompoundCurve3D
org.rajawali3d.curves.CompoundCurve3D
org.rajawali3d.materials.shaders.fragments.specular.CookTorranceFragmentShaderFragment
org.rajawali3d.materials.shaders.fragments.specular.CookTorranceFragmentShaderFragment
org.rajawali3d.debug.CoordinateTrident
org.rajawali3d.debug.CoordinateTrident
org.rajawali3d.postprocessing.passes.CopyPass
org.rajawali3d.postprocessing.passes.CopyPass
org.rajawali3d.postprocessing.passes.CopyToNewRenderTargetPass
org.rajawali3d.postprocessing.passes.CopyToNewRenderTargetPass
org.rajawali3d.primitives.Cube

A cube primitive. The constructor takes two boolean arguments that indicate whether certain buffers should be created or not. Not creating these buffers can reduce memory footprint.

org.rajawali3d.primitives.Cube

A cube primitive. The constructor takes two boolean arguments that indicate whether certain buffers should be created or not. Not creating these buffers can reduce memory footprint.

org.rajawali3d.materials.textures.CubeMapTexture
org.rajawali3d.materials.textures.CubeMapTexture
org.rajawali3d.curves.CubicBezierCurve3D
org.rajawali3d.curves.CubicBezierCurve3D
org.rajawali3d.primitives.Cylinder

A cylinder primitive. The constructor takes two boolean arguments that indicate whether certain buffers should be created or not. Not creating these buffers can reduce memory footprint.

org.rajawali3d.primitives.Cylinder

A cylinder primitive. The constructor takes two boolean arguments that indicate whether certain buffers should be created or not. Not creating these buffers can reduce memory footprint.

org.rajawali3d.view.Daydream
org.rajawali3d.view.Daydream
org.rajawali3d.debug.DebugBoundingBox
org.rajawali3d.debug.DebugBoundingBox
org.rajawali3d.debug.DebugCamera
org.rajawali3d.debug.DebugCamera
org.rajawali3d.debug.DebugLight
org.rajawali3d.debug.DebugLight
org.rajawali3d.debug.DebugObject3D
org.rajawali3d.debug.DebugObject3D
org.rajawali3d.debug.DebugRenderer

Special Debugging enabled Renderer. By extending this class for your renderer rather than Renderer, whatever debugging configuration you have specified will be automatically applied. In particular, if you enable GL error checks for every GL call, it will provide you with the exact call which failed. You should use this renderer if you see unexpected results in rendering to confirm if it is a GL error or something else.

org.rajawali3d.debug.DebugRenderer

Special Debugging enabled Renderer. By extending this class for your renderer rather than Renderer, whatever debugging configuration you have specified will be automatically applied. In particular, if you enable GL error checks for every GL call, it will provide you with the exact call which failed. You should use this renderer if you see unexpected results in rendering to confirm if it is a GL error or something else.

org.rajawali3d.debug.DebugVisualizer
org.rajawali3d.debug.DebugVisualizer
org.rajawali3d.materials.plugins.DecalMaterialPlugin
org.rajawali3d.materials.plugins.DecalMaterialPlugin
org.rajawali3d.materials.plugins.DepthMaterialPlugin
org.rajawali3d.materials.plugins.DepthMaterialPlugin
org.rajawali3d.postprocessing.passes.DepthPass
org.rajawali3d.postprocessing.passes.DepthPass
org.rajawali3d.materials.methods.DiffuseMethod

Contains a collection of diffuse shading methods. These methods are used by materials that have lighting enabled. Diffuse shading determines the color of a material when a light shines on it. To use a diffuse method you need to create an instance of one of the classes and then assign it to a material using the Material#setDiffuseMethod(IDiffuseMethod) method:


  material.setDiffuseMethod(new DiffuseMethod.Lambert());
  

org.rajawali3d.materials.methods.DiffuseMethod

Contains a collection of diffuse shading methods. These methods are used by materials that have lighting enabled. Diffuse shading determines the color of a material when a light shines on it. To use a diffuse method you need to create an instance of one of the classes and then assign it to a material using the Material#setDiffuseMethod(IDiffuseMethod) method:


  material.setDiffuseMethod(new DiffuseMethod.Lambert());
  

org.rajawali3d.materials.shaders.fragments.texture.DiffuseTextureFragmentShaderFragment
org.rajawali3d.materials.shaders.fragments.texture.DiffuseTextureFragmentShaderFragment
org.rajawali3d.lights.DirectionalLight
org.rajawali3d.lights.DirectionalLight
org.rajawali3d.materials.textures.Dxt1Texture
org.rajawali3d.materials.textures.Dxt1Texture
org.rajawali3d.postprocessing.passes.EffectPass
org.rajawali3d.postprocessing.passes.EffectPass
org.rajawali3d.animation.EllipticalOrbitAnimation3D

Animation that orbits ATransformable3D object around a point.

org.rajawali3d.animation.EllipticalOrbitAnimation3D

Animation that orbits ATransformable3D object around a point.

org.rajawali3d.materials.plugins.EmissionMaterialPlugin
org.rajawali3d.materials.plugins.EmissionMaterialPlugin
org.rajawali3d.wear.EmptyGL10

This is a placeholder for sending to onDraw as wear doesn't provide access to the GL config.. need to figure out how to slap it into working properly.

org.rajawali3d.materials.shaders.fragments.texture.EnvironmentMapFragmentShaderFragment
org.rajawali3d.materials.shaders.fragments.texture.EnvironmentMapFragmentShaderFragment
org.rajawali3d.materials.textures.Etc1Texture
org.rajawali3d.materials.textures.Etc1Texture
org.rajawali3d.materials.textures.Etc2Texture

Rajawali container for an ETC2 texture. Due to the nature of ETC2 textures, you may also use this to load an ETC1 texture. The following GL internal formats are supported: - GLES11Ext#GL_ETC1_RGB8_OES - GLES30#GL_COMPRESSED_RGB8_ETC2 - GLES30#GL_COMPRESSED_RGBA8_ETC2_EAC - GLES30#GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 - GLES30#GL_COMPRESSED_R11_EAC - GLES30#GL_COMPRESSED_RG11_EAC - GLES30#GL_COMPRESSED_SIGNED_R11_EAC - GLES30#GL_COMPRESSED_SIGNED_RG11_EAC In theory, the sRGB types GLES30#GL_COMPRESSED_SRGB8_ETC2, GLES30#GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC, and GLES30#GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 are also supported, but they will currently fail the header check because no source was available to determine their internal type codes. //TODO: Find internal type codes for sRGB formats.

org.rajawali3d.materials.textures.Etc2Texture

Rajawali container for an ETC2 texture. Due to the nature of ETC2 textures, you may also use this to load an ETC1 texture. The following GL internal formats are supported: - GLES11Ext#GL_ETC1_RGB8_OES - GLES30#GL_COMPRESSED_RGB8_ETC2 - GLES30#GL_COMPRESSED_RGBA8_ETC2_EAC - GLES30#GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 - GLES30#GL_COMPRESSED_R11_EAC - GLES30#GL_COMPRESSED_RG11_EAC - GLES30#GL_COMPRESSED_SIGNED_R11_EAC - GLES30#GL_COMPRESSED_SIGNED_RG11_EAC In theory, the sRGB types GLES30#GL_COMPRESSED_SRGB8_ETC2, GLES30#GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC, and GLES30#GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 are also supported, but they will currently fail the header check because no source was available to determine their internal type codes. //TODO: Find internal type codes for sRGB formats.

org.rajawali3d.materials.textures.utils.ETC2Util

All in one utility class for ETC2 textures. This performs the same duties as the ETC1 and ETC1Util classes, but for the ETC2 format. Can also handle ETC1 textures. For more information see the OpenGL ES 3.0 specification.

org.rajawali3d.materials.textures.utils.ETC2Util

All in one utility class for ETC2 textures. This performs the same duties as the ETC1 and ETC1Util classes, but for the ETC2 format. Can also handle ETC1 textures. For more information see the OpenGL ES 3.0 specification.

org.rajawali3d.animation.ExplodingAnimation3D
org.rajawali3d.animation.ExplodingAnimation3D
org.rajawali3d.materials.plugins.ExplodingMaterialPlugin
org.rajawali3d.materials.plugins.ExplodingMaterialPlugin
org.rajawali3d.loader.fbx.FBXValues
org.rajawali3d.loader.fbx.FBXValues
org.rajawali3d.cameras.FirstPersonCamera
org.rajawali3d.cameras.FirstPersonCamera
org.rajawali3d.materials.plugins.FogMaterialPlugin
org.rajawali3d.materials.plugins.FogMaterialPlugin
org.rajawali3d.materials.shaders.FragmentShader
org.rajawali3d.materials.shaders.FragmentShader
org.rajawali3d.materials.plugins.FresnelMaterialPlugin
org.rajawali3d.materials.plugins.FresnelMaterialPlugin
org.rajawali3d.cameras.Frustum
org.rajawali3d.cameras.Frustum
org.rajawali3d.postprocessing.passes.FXAAPass

Adds a Fast Approximate Antialiasing (FXAA) post processing pass to the scene. The implementation is taken from Geeks 3D. Use of this effect requires GL ES 3.0 or better.. Use of this effect requires the following extension GL_EXT_gpu_shader4 A quick synopsis from the above reference follows:

  • GPU based MLAA implementation by Timothy Lottes (Nvidia)
  • Multiple quality options
Pros & Cons:
  • Superb antialiased long edges
  • Smooth overall picture
  • Reasonably fast
  • Moving pictures do not benefit as much
  • "Blurry"

org.rajawali3d.postprocessing.passes.FXAAPass

Adds a Fast Approximate Antialiasing (FXAA) post processing pass to the scene. The implementation is taken from Geeks 3D. Use of this effect requires GL ES 3.0 or better.. Use of this effect requires the following extension GL_EXT_gpu_shader4 A quick synopsis from the above reference follows:

  • GPU based MLAA implementation by Timothy Lottes (Nvidia)
  • Multiple quality options
Pros & Cons:
  • Superb antialiased long edges
  • Smooth overall picture
  • Reasonably fast
  • Moving pictures do not benefit as much
  • "Blurry"

org.rajawali3d.Geometry3D

This is where the vertex, normal, texture coordinate, color and index data is stored. The data is stored in FloatBuffers, IntBuffers and ShortBuffers. The data is uploaded to the graphics card using Vertex Buffer Objects (VBOs). The data in the FloatBuffers is kept in memory in order to restore the VBOs when the OpenGL context needs to be restored (typically when the application regains focus).

org.rajawali3d.Geometry3D

This is where the vertex, normal, texture coordinate, color and index data is stored. The data is stored in FloatBuffers, IntBuffers and ShortBuffers. The data is uploaded to the graphics card using Vertex Buffer Objects (VBOs). The data in the FloatBuffers is kept in memory in order to restore the VBOs when the OpenGL context needs to be restored (typically when the application regains focus).

org.rajawali3d.debug.GLDebugger

Immutable helper class for OpenGL debugging. Instances can be created through GLDebugger.Builder.

org.rajawali3d.debug.GLDebugger

Immutable helper class for OpenGL debugging. Instances can be created through GLDebugger.Builder.

org.rajawali3d.util.GLU

NOTE: This class taken from Android Open Source Project source code and modified to support double precision matrices. A set of GL utilities inspired by the OpenGL Utility Toolkit.

org.rajawali3d.util.GLU

NOTE: This class taken from Android Open Source Project source code and modified to support double precision matrices. A set of GL utilities inspired by the OpenGL Utility Toolkit.

org.rajawali3d.materials.plugins.GreenScreenMaterialPlugin
org.rajawali3d.materials.plugins.GreenScreenMaterialPlugin
org.rajawali3d.postprocessing.passes.GreyScalePass
org.rajawali3d.postprocessing.passes.GreyScalePass
org.rajawali3d.debug.GridFloor
org.rajawali3d.debug.GridFloor
org.rajawali3d.vr.materials.shaders.HotspotFragmentShader
org.rajawali3d.vr.materials.HotspotMaterial
org.rajawali3d.loader.IAnimatedMeshLoader
org.rajawali3d.loader.IAnimatedMeshLoader
org.rajawali3d.animation.mesh.IAnimationFrame
org.rajawali3d.animation.mesh.IAnimationFrame
org.rajawali3d.animation.IAnimationListener
org.rajawali3d.animation.IAnimationListener
org.rajawali3d.animation.mesh.IAnimationSequence
org.rajawali3d.animation.mesh.IAnimationSequence
org.rajawali3d.loader.IAnimationSequenceLoader
org.rajawali3d.loader.IAnimationSequenceLoader
org.rajawali3d.loader.async.IAsyncLoaderCallback

Interface for defining a asynchronous loader callback. This will be provided to the Scene#loadModel(ALoader, IAsyncLoaderCallback, int) and related calls.

org.rajawali3d.loader.async.IAsyncLoaderCallback

Interface for defining a asynchronous loader callback. This will be provided to the Scene#loadModel(ALoader, IAsyncLoaderCallback, int) and related calls.

org.rajawali3d.bounds.IBoundingVolume
org.rajawali3d.bounds.IBoundingVolume
org.rajawali3d.curves.ICurve3D
org.rajawali3d.curves.ICurve3D
org.rajawali3d.curves.ICurve4D
org.rajawali3d.curves.ICurve4D
org.rajawali3d.materials.methods.IDiffuseMethod
org.rajawali3d.materials.methods.IDiffuseMethod
org.rajawali3d.view.IDisplay

Interface defining some common methods which all Rajawali displays methods must implement.

org.rajawali3d.view.IDisplay

Interface defining some common methods which all Rajawali displays methods must implement.

org.rajawali3d.scenegraph.IGraphNode

Generic interface allowing for the incorporation of scene graphs to the rendering pipeline of Rajawali. To be a member of scene graphs which implement this interface, an object must inherit from ATransformable3D.

org.rajawali3d.scenegraph.IGraphNode

Generic interface allowing for the incorporation of scene graphs to the rendering pipeline of Rajawali. To be a member of scene graphs which implement this interface, an object must inherit from ATransformable3D.

org.rajawali3d.scenegraph.IGraphNodeMember

Generic interface which any member of IGraphNode must implement in order to be a part of the graph.

org.rajawali3d.scenegraph.IGraphNodeMember

Generic interface which any member of IGraphNode must implement in order to be a part of the graph.

org.rajawali3d.loader.ILoader
org.rajawali3d.loader.ILoader
org.rajawali3d.materials.plugins.IMaterialPlugin

A material plugin is a container for a vertex and fragment shader. It can be plugged into the Material class so it can be assembled into the main shader. They can be used for skeletal animation, custom vertex animation effects, fragment shader effects, etc. Usage example:


  material.addPlugin(new MyMaterialPlugin());
  

org.rajawali3d.materials.plugins.IMaterialPlugin

A material plugin is a container for a vertex and fragment shader. It can be plugged into the Material class so it can be assembled into the main shader. They can be used for skeletal animation, custom vertex animation effects, fragment shader effects, etc. Usage example:


  material.addPlugin(new MyMaterialPlugin());
  

org.rajawali3d.loader.IMeshLoader
org.rajawali3d.loader.IMeshLoader
org.rajawali3d.materials.plugins.IndividualMaterialPlugin
org.rajawali3d.materials.plugins.IndividualMaterialPlugin
org.rajawali3d.visitors.INode
org.rajawali3d.visitors.INode
org.rajawali3d.visitors.INodeVisitor
org.rajawali3d.visitors.INodeVisitor
org.rajawali3d.util.Intersector

Class offering various static methods for intersection testing between different geometric objects. Originally written by Badlogic Games. Ported for Rajawali by Andrew Jo.

org.rajawali3d.util.Intersector

Class offering various static methods for intersection testing between different geometric objects. Originally written by Badlogic Games. Ported for Rajawali by Andrew Jo.

org.rajawali3d.util.IObjectPicker
org.rajawali3d.util.IObjectPicker
org.rajawali3d.loader.IParser
org.rajawali3d.loader.IParser
org.rajawali3d.postprocessing.IPass
org.rajawali3d.postprocessing.IPass
org.rajawali3d.animation.IPlayable
org.rajawali3d.animation.IPlayable
org.rajawali3d.postprocessing.IPostProcessingComponent
org.rajawali3d.postprocessing.IPostProcessingComponent
org.rajawali3d.postprocessing.IPostProcessingEffect
org.rajawali3d.postprocessing.IPostProcessingEffect
org.rajawali3d.view.IRajawaliEglConfigChooser
org.rajawali3d.renderer.plugins.IRendererPlugin

Plugin interface for the Renderer for applying scenewide rendering postprocessing effects.

org.rajawali3d.renderer.plugins.IRendererPlugin

Plugin interface for the Renderer for applying scenewide rendering postprocessing effects.

org.rajawali3d.materials.shaders.IShaderFragment
org.rajawali3d.materials.shaders.IShaderFragment
org.rajawali3d.materials.methods.ISpecularMethod
org.rajawali3d.materials.methods.ISpecularMethod
org.rajawali3d.view.ISurface

Interface which all rendering surfaces must implement so that Renderer may send the few control signals it needs.

org.rajawali3d.view.ISurface

Interface which all rendering surfaces must implement so that Renderer may send the few control signals it needs.

org.rajawali3d.renderer.ISurfaceRenderer

Interface that a class must implement to be able to render to an ISurface. Most often you will want to simply extend Renderer which handles much of this for you.

org.rajawali3d.renderer.ISurfaceRenderer

Interface that a class must implement to be able to render to an ISurface. Most often you will want to simply extend Renderer which handles much of this for you.

org.rajawali3d.postprocessing.passes.KaleidoscopePass
org.rajawali3d.postprocessing.passes.KaleidoscopePass
org.rajawali3d.materials.shaders.fragments.diffuse.LambertFragmentShaderFragment
org.rajawali3d.materials.shaders.fragments.diffuse.LambertFragmentShaderFragment
org.rajawali3d.extras.LensFlare

LensFlare effects class for adding lens flare to the renderer.

org.rajawali3d.extras.LensFlare

LensFlare effects class for adding lens flare to the renderer.

org.rajawali3d.renderer.plugins.LensFlarePlugin
org.rajawali3d.renderer.plugins.LensFlarePlugin
org.rajawali3d.materials.shaders.fragments.texture.LightMapFragmentShaderFragment
org.rajawali3d.materials.shaders.fragments.texture.LightMapFragmentShaderFragment
org.rajawali3d.materials.textures.LightMapTexture
org.rajawali3d.materials.textures.LightMapTexture
org.rajawali3d.materials.shaders.fragments.LightsFragmentShaderFragment
org.rajawali3d.materials.shaders.fragments.LightsFragmentShaderFragment
org.rajawali3d.materials.shaders.fragments.LightsVertexShaderFragment
org.rajawali3d.materials.shaders.fragments.LightsVertexShaderFragment
org.rajawali3d.primitives.Line3D

The Line3D takes a list of Vector3 points, thickness and a color.

org.rajawali3d.primitives.Line3D

The Line3D takes a list of Vector3 points, thickness and a color.

org.rajawali3d.curves.LinearBezierCurve3D
org.rajawali3d.curves.LinearBezierCurve3D
org.rajawali3d.util.LittleEndianDataInputStream

Taken from http://www.peterfranza.com/2008/09/26/little-endian-input-stream/

org.rajawali3d.util.LittleEndianDataInputStream

Taken from http://www.peterfranza.com/2008/09/26/little-endian-input-stream/

org.rajawali3d.util.LittleEndianOutputStream

Helper class for wrapping an OutputStream for little endian encoding. Taken from http://www.javafaq.nu/java-example-code-1078.html

org.rajawali3d.util.LittleEndianOutputStream

Helper class for wrapping an OutputStream for little endian encoding. Taken from http://www.javafaq.nu/java-example-code-1078.html

org.rajawali3d.loader.Loader3DSMax

3DS object parser. This is a work in progress. Materials aren't parsed yet.

org.rajawali3d.loader.Loader3DSMax

3DS object parser. This is a work in progress. Materials aren't parsed yet.

org.rajawali3d.loader.LoaderAWD

AWD File parser written using the AWD File Format specification. All future additions to the format should adhere to all specification requirements for maximum forward and backward compatibility.

org.rajawali3d.loader.LoaderAWD

AWD File parser written using the AWD File Format specification. All future additions to the format should adhere to all specification requirements for maximum forward and backward compatibility.

org.rajawali3d.loader.fbx.LoaderFBX
org.rajawali3d.loader.fbx.LoaderFBX
org.rajawali3d.loader.LoaderGCode
org.rajawali3d.loader.LoaderGCode
org.rajawali3d.loader.LoaderMD2
org.rajawali3d.loader.LoaderMD2
org.rajawali3d.loader.md5.LoaderMD5Anim
org.rajawali3d.loader.md5.LoaderMD5Anim
org.rajawali3d.loader.md5.LoaderMD5Mesh
org.rajawali3d.loader.md5.LoaderMD5Mesh
org.rajawali3d.loader.LoaderOBJ

The most important thing is that the model should be triangulated. Rajawali doesn�t accept quads, only tris. In Blender, this is an option you can select in the exporter. In a program like MeshLab, this is done automatically. At the moment, Rajawali also doesn�t support per-face textures. This is on the todo list.

org.rajawali3d.loader.LoaderOBJ

The most important thing is that the model should be triangulated. Rajawali doesn�t accept quads, only tris. In Blender, this is an option you can select in the exporter. In a program like MeshLab, this is done automatically. At the moment, Rajawali also doesn�t support per-face textures. This is on the todo list.

org.rajawali3d.loader.LoaderSTL

STL Parser written using the ASCII format as describe on Wikipedia.

org.rajawali3d.loader.LoaderSTL

STL Parser written using the ASCII format as describe on Wikipedia.

org.rajawali3d.curves.LogarithmicSpiral3D

ICurve3D spiral implementation following a Logarithmic spiral, also known as the Golden Spiral, or Nautilus curve.

org.rajawali3d.curves.LogarithmicSpiral3D

ICurve3D spiral implementation following a Logarithmic spiral, also known as the Golden Spiral, or Nautilus curve.

org.rajawali3d.postprocessing.passes.MaskPass

Masked render pass for drawing to stencil buffer.

org.rajawali3d.postprocessing.passes.MaskPass

Masked render pass for drawing to stencil buffer.

org.rajawali3d.materials.Material

The Material class is where you define the visual characteristics of your 3D model. Here you can specify lighting parameters, specular highlights, ambient colors and much more. This is the place where you add textures as well. For an overview of the different types of materials and parameters visit the Rajawali Wiki.

org.rajawali3d.materials.Material

The Material class is where you define the visual characteristics of your 3D model. Here you can specify lighting parameters, specular highlights, ambient colors and much more. This is the place where you add textures as well. For an overview of the different types of materials and parameters visit the Rajawali Wiki.

org.rajawali3d.materials.MaterialManager
org.rajawali3d.materials.MaterialManager
org.rajawali3d.math.MathUtil
org.rajawali3d.math.MathUtil
org.rajawali3d.math.Matrix

NOTE: This class taken from Android Open Source Project source code and modified to support double precision matrices. Matrix math utilities. These methods operate on OpenGL ES format matrices and vectors stored in double arrays. Matrices are 4 x 4 column-vector matrices stored in column-major order:


   m[offset +  0] m[offset +  4] m[offset +  8] m[offset + 12]
   m[offset +  1] m[offset +  5] m[offset +  9] m[offset + 13]
   m[offset +  2] m[offset +  6] m[offset + 10] m[offset + 14]
   m[offset +  3] m[offset +  7] m[offset + 11] m[offset + 15]
  
Vectors are 4 row x 1 column column-vectors stored in order:

  v[offset + 0]
  v[offset + 1]
  v[offset + 2]
  v[offset + 3]
  

org.rajawali3d.math.Matrix

NOTE: This class taken from Android Open Source Project source code and modified to support double precision matrices. Matrix math utilities. These methods operate on OpenGL ES format matrices and vectors stored in double arrays. Matrices are 4 x 4 column-vector matrices stored in column-major order:


   m[offset +  0] m[offset +  4] m[offset +  8] m[offset + 12]
   m[offset +  1] m[offset +  5] m[offset +  9] m[offset + 13]
   m[offset +  2] m[offset +  6] m[offset + 10] m[offset + 14]
   m[offset +  3] m[offset +  7] m[offset + 11] m[offset + 15]
  
Vectors are 4 row x 1 column column-vectors stored in order:

  v[offset + 0]
  v[offset + 1]
  v[offset + 2]
  v[offset + 3]
  

org.rajawali3d.math.Matrix4

Encapsulates a column major 4x4 Matrix. This class is not thread safe and must be confined to a single thread or protected by some external locking mechanism if necessary. All static methods are thread safe. Rewritten August 8, 2013 by Jared Woolston (jwoolston@tenkiv.com) with heavy influence from libGDX

org.rajawali3d.math.Matrix4

Encapsulates a column major 4x4 Matrix. This class is not thread safe and must be confined to a single thread or protected by some external locking mechanism if necessary. All static methods are thread safe. Rewritten August 8, 2013 by Jared Woolston (jwoolston@tenkiv.com) with heavy influence from libGDX

org.rajawali3d.materials.plugins.NormalColorMaterialPlugin
org.rajawali3d.materials.plugins.NormalColorMaterialPlugin
org.rajawali3d.materials.shaders.fragments.texture.NormalMapFragmentShaderFragment
org.rajawali3d.materials.shaders.fragments.texture.NormalMapFragmentShaderFragment
org.rajawali3d.materials.textures.NormalMapTexture
org.rajawali3d.materials.textures.NormalMapTexture
org.rajawali3d.debug.NormalsObject3D
org.rajawali3d.debug.NormalsObject3D
org.rajawali3d.loader.awd.exceptions.NotImplementedParsingException
org.rajawali3d.loader.awd.exceptions.NotImplementedParsingException
org.rajawali3d.loader.awd.exceptions.NotParsableException
org.rajawali3d.loader.awd.exceptions.NotParsableException
org.rajawali3d.primitives.NPrism

Basic primitive allowing for the creation of an n-sided regular polygonal cone, as a frustum or to a point with a specified slant angle or aspect ratio. The cone is created about the positive y axis with the vanishing point at (0, height, 0). NOTE: This still needs a lot of work. Texture coordinates are not correct.

org.rajawali3d.primitives.NPrism

Basic primitive allowing for the creation of an n-sided regular polygonal cone, as a frustum or to a point with a specified slant angle or aspect ratio. The cone is created about the positive y axis with the vanishing point at (0, height, 0). NOTE: This still needs a lot of work. Texture coordinates are not correct.

org.rajawali3d.renderer.NullRenderer

Minimal Renderer implementation which will cause no rendering to occur.

org.rajawali3d.renderer.NullRenderer

Minimal Renderer implementation which will cause no rendering to occur.

org.rajawali3d.Object3D

This is the main object that all other 3D objects inherit from.

org.rajawali3d.Object3D

This is the main object that all other 3D objects inherit from.

org.rajawali3d.util.ObjectColorPicker
org.rajawali3d.util.ObjectColorPicker
org.rajawali3d.scenegraph.Octree

Octree implementation specific to the Rajawali library. Child partitions will inherit the behavior (recursive add, division threshold, etc.) of the root node in the graph. This system divides space into 8 equal portions called octants. The octant order follows the conventional algebraic numbering for 3D Euclidean space. Note that they follow the axis ordering and OpenGL uses a rotated coordinate system when compared to Euclidean mathematics. Thus, assuming no camera rotation or similar effects:

org.rajawali3d.scenegraph.Octree

Octree implementation specific to the Rajawali library. Child partitions will inherit the behavior (recursive add, division threshold, etc.) of the root node in the graph. This system divides space into 8 equal portions called octants. The octant order follows the conventional algebraic numbering for 3D Euclidean space. Note that they follow the axis ordering and OpenGL uses a rotated coordinate system when compared to Euclidean mathematics. Thus, assuming no camera rotation or similar effects:

org.rajawali3d.util.OnFPSUpdateListener
org.rajawali3d.util.OnFPSUpdateListener
org.rajawali3d.util.OnObjectPickedListener
org.rajawali3d.util.OnObjectPickedListener
org.rajawali3d.materials.shaders.fragments.diffuse.OrenNayarFragmentShaderFragment
org.rajawali3d.materials.shaders.fragments.diffuse.OrenNayarFragmentShaderFragment
org.rajawali3d.cameras.OrthographicCamera
org.rajawali3d.cameras.OrthographicCamera
org.rajawali3d.postprocessing.effects.OutlineEffect
org.rajawali3d.postprocessing.effects.OutlineEffect
org.rajawali3d.materials.textures.PalettedTexture
org.rajawali3d.materials.textures.PalettedTexture
org.rajawali3d.loader.ParsingException
org.rajawali3d.loader.ParsingException
org.rajawali3d.curves.Path3D
org.rajawali3d.curves.Path3D
org.rajawali3d.curves.Path4D
org.rajawali3d.curves.Path4D
org.rajawali3d.materials.shaders.fragments.specular.PhongFragmentShaderFragment
org.rajawali3d.materials.shaders.fragments.specular.PhongFragmentShaderFragment
org.rajawali3d.renderer.PipRenderer

Creates a renderer that renders two scenes through separate SubRenderers. In order to use this, first create the PipRenderer, then create and assign the SubRenderers through setMainRenderer (for the main content) setMinirenderer (for the content in the mini view). The pipScale and pipMargin parameters control how the mini scene is placed.

org.rajawali3d.renderer.PipRenderer

Creates a renderer that renders two scenes through separate SubRenderers. In order to use this, first create the PipRenderer, then create and assign the SubRenderers through setMainRenderer (for the main content) setMinirenderer (for the content in the mini view). The pipScale and pipMargin parameters control how the mini scene is placed.

org.rajawali3d.materials.plugins.PivotPointMaterialPlugin
org.rajawali3d.materials.plugins.PivotPointMaterialPlugin
org.rajawali3d.postprocessing.passes.PixelatedPass
org.rajawali3d.postprocessing.passes.PixelatedPass
org.rajawali3d.math.Plane
org.rajawali3d.math.Plane
org.rajawali3d.primitives.Plane

A plane primitive. The constructor takes two boolean arguments that indicate whether certain buffers should be created or not. Not creating these buffers can reduce memory footprint.

org.rajawali3d.primitives.Plane

A plane primitive. The constructor takes two boolean arguments that indicate whether certain buffers should be created or not. Not creating these buffers can reduce memory footprint.

org.rajawali3d.animation.Playable
org.rajawali3d.animation.Playable
org.rajawali3d.renderer.plugins.Plugin

Most plugins should generally inherit from this Plugin abstract class.

org.rajawali3d.renderer.plugins.Plugin

Most plugins should generally inherit from this Plugin abstract class.

org.rajawali3d.materials.plugins.PointApertureMaterialPlugin
org.rajawali3d.materials.plugins.PointApertureMaterialPlugin
org.rajawali3d.lights.PointLight
org.rajawali3d.lights.PointLight
org.rajawali3d.materials.plugins.PointOrbitalMaterialPlugin
org.rajawali3d.materials.plugins.PointOrbitalMaterialPlugin
org.rajawali3d.primitives.PointShell
org.rajawali3d.primitives.PointShell
org.rajawali3d.primitives.PointSprite
org.rajawali3d.primitives.PointSprite
org.rajawali3d.animation.PosableAnimation3D
org.rajawali3d.animation.PosableAnimation3D
org.rajawali3d.materials.plugins.PosableMaterialPlugin
org.rajawali3d.materials.plugins.PosableMaterialPlugin
org.rajawali3d.materials.plugins.PositionColorMaterialPlugin
org.rajawali3d.materials.plugins.PositionColorMaterialPlugin
org.rajawali3d.postprocessing.PostProcessingManager
org.rajawali3d.postprocessing.PostProcessingManager
org.rajawali3d.materials.textures.PvrtcTexture
org.rajawali3d.materials.textures.PvrtcTexture
org.rajawali3d.curves.QuadraticBezierCurve3D
org.rajawali3d.curves.QuadraticBezierCurve3D
org.rajawali3d.math.Quaternion

Encapsulates a quaternion. Ported from http://www.ogre3d.org/docs/api/html/classOgre_1_1Quaternion.html Rewritten July 27, 2013 by Jared Woolston with heavy influence from libGDX

org.rajawali3d.math.Quaternion

Encapsulates a quaternion. Ported from http://www.ogre3d.org/docs/api/html/classOgre_1_1Quaternion.html Rewritten July 27, 2013 by Jared Woolston with heavy influence from libGDX

org.rajawali3d.postprocessing.passes.RadialBlurPass
org.rajawali3d.postprocessing.passes.RadialBlurPass
org.rajawali3d.util.egl.RajawaliEGLConfigChooser
org.rajawali3d.util.RajLog
org.rajawali3d.util.RajLog
org.rajawali3d.util.RawShaderLoader

Internal class for managing shader loading. This class is mostly internal unfortunately loading of resources requires context so this class has help from AMaterial to statically pass the context and store it as a weak reference. Unfortunately there is no way around this that I can see but I am open for suggestions of a better solution.

org.rajawali3d.util.RawShaderLoader

Internal class for managing shader loading. This class is mostly internal unfortunately loading of resources requires context so this class has help from AMaterial to statically pass the context and store it as a weak reference. Unfortunately there is no way around this that I can see but I am open for suggestions of a better solution.

org.rajawali3d.util.RayPicker
org.rajawali3d.util.RayPicker
org.rajawali3d.visitors.RayPickingVisitor
org.rajawali3d.visitors.RayPickingVisitor
org.rajawali3d.primitives.RectangularPrism

A rectangular prism primitive. The constructor takes two boolean arguments that indicate whether certain buffers should be created or not. Not creating these buffers can reduce memory footprint.

org.rajawali3d.primitives.RectangularPrism

A rectangular prism primitive. The constructor takes two boolean arguments that indicate whether certain buffers should be created or not. Not creating these buffers can reduce memory footprint.

org.rajawali3d.renderer.Renderer
org.rajawali3d.renderer.Renderer
org.rajawali3d.postprocessing.passes.RenderPass

A render pass used for primarily rendering a scene to a framebuffer target.

org.rajawali3d.postprocessing.passes.RenderPass

A render pass used for primarily rendering a scene to a framebuffer target.

org.rajawali3d.renderer.RenderTarget

Defines configurations for a given render target.

org.rajawali3d.renderer.RenderTarget

Defines configurations for a given render target.

org.rajawali3d.renderer.RenderTargetCube

Defines a render target to be mapped to a cubemap texture.

org.rajawali3d.renderer.RenderTargetCube

Defines a render target to be mapped to a cubemap texture.

org.rajawali3d.materials.textures.RenderTargetTexture
org.rajawali3d.materials.textures.RenderTargetTexture
org.rajawali3d.util.egl.ResultConfigChooser
org.rajawali3d.animation.RotateAnimation3D
org.rajawali3d.animation.RotateAnimation3D
org.rajawali3d.animation.RotateAroundAnimation3D
org.rajawali3d.animation.RotateAroundAnimation3D
org.rajawali3d.animation.RotateOnAxisAnimation
org.rajawali3d.animation.RotateOnAxisAnimation
org.rajawali3d.animation.ScaleAnimation3D
org.rajawali3d.animation.ScaleAnimation3D
org.rajawali3d.postprocessing.passes.ScanlinePass
org.rajawali3d.postprocessing.passes.ScanlinePass
org.rajawali3d.scene.Scene

This is the container class for scenes in Rajawali. It is intended that children, lights, cameras and animations will be added to this object and this object will be added to the Renderer instance.

org.rajawali3d.scene.Scene

This is the container class for scenes in Rajawali. It is intended that children, lights, cameras and animations will be added to this object and this object will be added to the Renderer instance.

org.rajawali3d.loader.awd.SceneGraphBlock
org.rajawali3d.loader.awd.SceneGraphBlock
org.rajawali3d.util.ScreenGrab

Grabs the pixels from the buffer and saves it to a file on the SD card. Usage example (saves every frame to a separate .png file):


  public void onDrawFrame(GL10 glUnused) {
  		super.onDrawFrame(glUnused);
  		Screengrab.saveAsImage(0, 0, mDefaultViewportWidth, mDefaultViewportHeight, "/frame_" + mFrameCount + ".png", CompressFormat.PNG);
  }
  

org.rajawali3d.util.ScreenGrab

Grabs the pixels from the buffer and saves it to a file on the SD card. Usage example (saves every frame to a separate .png file):


  public void onDrawFrame(GL10 glUnused) {
  		super.onDrawFrame(glUnused);
  		Screengrab.saveAsImage(0, 0, mDefaultViewportWidth, mDefaultViewportHeight, "/frame_" + mFrameCount + ".png", CompressFormat.PNG);
  }
  

org.rajawali3d.primitives.ScreenQuad

A screen quad is a plane that covers the whole screen. When used in conjunction with Camera2D you'll get a pixel perfect screen filling plane. This is perfect for things like image slide shows or fragment shader only apps and live wallpapers. When creating solid color plane both createTextureCoordinates and createVertexColorBuffer can be set to false.

org.rajawali3d.primitives.ScreenQuad

A screen quad is a plane that covers the whole screen. When used in conjunction with Camera2D you'll get a pixel perfect screen filling plane. This is perfect for things like image slide shows or fragment shader only apps and live wallpapers. When creating solid color plane both createTextureCoordinates and createVertexColorBuffer can be set to false.

org.rajawali3d.postprocessing.passes.SepiaPass
org.rajawali3d.postprocessing.passes.SepiaPass
org.rajawali3d.postprocessing.effects.ShadowEffect
org.rajawali3d.postprocessing.effects.ShadowEffect
org.rajawali3d.postprocessing.materials.ShadowMapMaterial
org.rajawali3d.postprocessing.materials.ShadowMapMaterial
org.rajawali3d.materials.plugins.ShadowMapMaterialPlugin
org.rajawali3d.materials.plugins.ShadowMapMaterialPlugin
org.rajawali3d.postprocessing.passes.ShadowPass
org.rajawali3d.postprocessing.passes.ShadowPass
org.rajawali3d.renderer.SideBySideRenderer

This renderer is typically used by virtual reality glasses like the Open Dive. It renders the scene from two different viewpoints. The x position of the two cameras are slightly offset while the z and y position stay 0.

org.rajawali3d.renderer.SideBySideRenderer

This renderer is typically used by virtual reality glasses like the Open Dive. It renders the scene from two different viewpoints. The x position of the two cameras are slightly offset while the z and y position stay 0.

org.rajawali3d.animation.mesh.SkeletalAnimationChildObject3D
org.rajawali3d.animation.mesh.SkeletalAnimationChildObject3D
org.rajawali3d.animation.mesh.SkeletalAnimationFrame
org.rajawali3d.animation.mesh.SkeletalAnimationFrame
org.rajawali3d.materials.plugins.SkeletalAnimationMaterialPlugin

The material plugin for skeletal animation. This is the container for skeletal animation shaders and should be used as the access point to skeletal animation properties.

org.rajawali3d.materials.plugins.SkeletalAnimationMaterialPlugin

The material plugin for skeletal animation. This is the container for skeletal animation shaders and should be used as the access point to skeletal animation properties.

org.rajawali3d.animation.mesh.SkeletalAnimationObject3D
org.rajawali3d.animation.mesh.SkeletalAnimationObject3D
org.rajawali3d.animation.mesh.SkeletalAnimationSequence
org.rajawali3d.animation.mesh.SkeletalAnimationSequence
org.rajawali3d.materials.shaders.fragments.animation.SkeletalAnimationVertexShaderFragment
org.rajawali3d.materials.shaders.fragments.animation.SkeletalAnimationVertexShaderFragment
org.rajawali3d.materials.shaders.fragments.texture.SkyTextureFragmentShaderFragment
org.rajawali3d.materials.shaders.fragments.texture.SkyTextureFragmentShaderFragment
org.rajawali3d.animation.SlerpAnimation3D

Performs spherical linear interpolation (SLERP) animation between two Vector3s. Example usage:


  SlerpAnimation3D anim = new SlerpAnimation3D(pointOnSphere1, pointOnSphere1);
  anim.setDuration(1000);
  anim.setInterpolator(new AccelerateDecelerateInterpolator());
  anim.setTransformable3D(myObject);
  registerAnimation(anim);
  anim.play();
  

org.rajawali3d.animation.SlerpAnimation3D

Performs spherical linear interpolation (SLERP) animation between two Vector3s. Example usage:


  SlerpAnimation3D anim = new SlerpAnimation3D(pointOnSphere1, pointOnSphere1);
  anim.setDuration(1000);
  anim.setInterpolator(new AccelerateDecelerateInterpolator());
  anim.setTransformable3D(myObject);
  registerAnimation(anim);
  anim.play();
  

org.rajawali3d.postprocessing.passes.SobelPass
org.rajawali3d.postprocessing.passes.SobelPass
org.rajawali3d.materials.textures.SpecularMapTexture
org.rajawali3d.materials.textures.SpecularMapTexture
org.rajawali3d.materials.methods.SpecularMethod

Contains a collection of diffuse shading methods. These methods are used by materials that have lighting enabled. A specular highlight is the bright spot of light that appears on shiny objects when illuminated. The term specular means that light is perfectly reflected in a mirror-like way from the light source to the viewer. To use a specular method you need to create an instance of one of the classes and then assign it to a material using the Material#setSpecularMethod(ISpecularMethod) method:


  material.setSpecularMethod(new SpecularMethod.Phong());
  

org.rajawali3d.materials.methods.SpecularMethod

Contains a collection of diffuse shading methods. These methods are used by materials that have lighting enabled. A specular highlight is the bright spot of light that appears on shiny objects when illuminated. The term specular means that light is perfectly reflected in a mirror-like way from the light source to the viewer. To use a specular method you need to create an instance of one of the classes and then assign it to a material using the Material#setSpecularMethod(ISpecularMethod) method:


  material.setSpecularMethod(new SpecularMethod.Phong());
  

org.rajawali3d.primitives.Sphere

A sphere primitive. The constructor takes two boolean arguments that indicate whether certain buffers should be created or not. Not creating these buffers can reduce memory footprint.

org.rajawali3d.primitives.Sphere

A sphere primitive. The constructor takes two boolean arguments that indicate whether certain buffers should be created or not. Not creating these buffers can reduce memory footprint.

org.rajawali3d.materials.textures.SphereMapTexture
org.rajawali3d.materials.textures.SphereMapTexture
org.rajawali3d.animation.SplineOrientationAnimation3D
org.rajawali3d.animation.SplineOrientationAnimation3D
org.rajawali3d.animation.SplineScalingAnimation3D
org.rajawali3d.animation.SplineScalingAnimation3D
org.rajawali3d.animation.SplineTranslateAnimation3D
org.rajawali3d.animation.SplineTranslateAnimation3D
org.rajawali3d.lights.SpotLight
org.rajawali3d.lights.SpotLight
org.rajawali3d.materials.plugins.SpriteSheetMaterialPlugin
org.rajawali3d.materials.plugins.SpriteSheetMaterialPlugin
org.rajawali3d.terrain.SquareTerrain

This is a generic Terrain class for Rajawali.

org.rajawali3d.terrain.SquareTerrain

This is a generic Terrain class for Rajawali.

org.rajawali3d.materials.textures.StreamingTexture
org.rajawali3d.materials.textures.StreamingTexture
org.rajawali3d.renderer.pip.SubRenderer

This class is intended to be used with PipRenderer.

org.rajawali3d.renderer.pip.SubRenderer

This class is intended to be used with PipRenderer.

org.rajawali3d.view.SurfaceView

Rajawali version of a GLSurfaceView. If you plan on using Rajawali with a GLSurfaceView, it is imperative that you extend this class or life cycle events may not function as you expect.

org.rajawali3d.view.SurfaceView

Rajawali version of a GLSurfaceView. If you plan on using Rajawali with a GLSurfaceView, it is imperative that you extend this class or life cycle events may not function as you expect.

org.rajawali3d.curves.SVGPath

Parses a path from an SVG string. Please bear in mind that this is not a full XML parser. This is also an incomplete implementation. If you encounter anything that's missing please post an issue on Github and we'll add whatever you're after. What you can use is either a path String:


  String path = "M22.395-127.223c-4.492,11.344-4.688,33.75,0,44.883" +
  	"c-11.328-4.492-33.656-4.579-44.789,0.109c4.491-11.354,4.688-33.75,0-44.892" +
  	"C-11.066-122.63,11.262-122.536,22.395-127.223z";
  
  SVGPath svgPath = new SVGPath();
  List paths = svgPath.parseString(path);
  
Or you could use a string resource from the "raw" folder:

  SVGPath svgPath = new SVGPath();
  List paths = svgPath.parseResourceString(mContext, R.raw.lavatories_svg_path);
  
To draw a path:

  for(int i=0; i points = new Stack();
  	int subdiv = 1000;
  	for(int j=0; j<=subdiv; j++)
  	{
  		points.add(subPath.calculatePoint(j / subdiv));
  	}
  	pathPoints.add(points);
  	Line3D line = new Line3D(points, 1);
  	SimpleMaterial material = new SimpleMaterial();
  	material.setUseSingleColor(true);
  	line.setMaterial(material);
 	getCurrentScene().addChild(line);
  }
  

org.rajawali3d.curves.SVGPath

Parses a path from an SVG string. Please bear in mind that this is not a full XML parser. This is also an incomplete implementation. If you encounter anything that's missing please post an issue on Github and we'll add whatever you're after. What you can use is either a path String:


  String path = "M22.395-127.223c-4.492,11.344-4.688,33.75,0,44.883" +
  	"c-11.328-4.492-33.656-4.579-44.789,0.109c4.491-11.354,4.688-33.75,0-44.892" +
  	"C-11.066-122.63,11.262-122.536,22.395-127.223z";
  
  SVGPath svgPath = new SVGPath();
  List paths = svgPath.parseString(path);
  
Or you could use a string resource from the "raw" folder:

  SVGPath svgPath = new SVGPath();
  List paths = svgPath.parseResourceString(mContext, R.raw.lavatories_svg_path);
  
To draw a path:

  for(int i=0; i points = new Stack();
  	int subdiv = 1000;
  	for(int j=0; j<=subdiv; j++)
  	{
  		points.add(subPath.calculatePoint(j / subdiv));
  	}
  	pathPoints.add(points);
  	Line3D line = new Line3D(points, 1);
  	SimpleMaterial material = new SimpleMaterial();
  	material.setUseSingleColor(true);
  	line.setMaterial(material);
 	getCurrentScene().addChild(line);
  }
  

org.rajawali3d.terrain.Terrain

Base Terrain class for future use

org.rajawali3d.terrain.Terrain

Base Terrain class for future use

org.rajawali3d.terrain.TerrainGenerator

Is a Factory Class to generate Terrain

org.rajawali3d.terrain.TerrainGenerator

Is a Factory Class to generate Terrain

org.rajawali3d.materials.textures.Texture
org.rajawali3d.materials.textures.Texture
org.rajawali3d.materials.textures.TextureAtlas
org.rajawali3d.materials.textures.TextureAtlas
org.rajawali3d.materials.textures.TextureManager

A singleton class that keeps track of all textures used by the application. All textures will be restored when the OpenGL context is being recreated. This however needs to be indicated by setting ATexture#shouldRecycle(boolean) to true (which is the default). It will then keep a reference to the Bitmap which means the application will take up more memory.

org.rajawali3d.materials.textures.TextureManager

A singleton class that keeps track of all textures used by the application. All textures will be restored when the OpenGL context is being recreated. This however needs to be indicated by setting ATexture#shouldRecycle(boolean) to true (which is the default). It will then keep a reference to the Bitmap which means the application will take up more memory.

org.rajawali3d.materials.textures.TexturePacker
org.rajawali3d.materials.textures.TexturePacker
org.rajawali3d.materials.plugins.TextureScalingMaterialPlugin
org.rajawali3d.materials.plugins.TextureScalingMaterialPlugin
org.rajawali3d.view.TextureView

Rajawali version of a TextureView. If you plan on using Rajawali with a TextureView, it is imperative that you extend this class or life cycle events may not function as you expect.

org.rajawali3d.materials.textures.ThreeDcTexture
org.rajawali3d.materials.textures.ThreeDcTexture
org.rajawali3d.postprocessing.passes.TilePass
org.rajawali3d.postprocessing.passes.TilePass
org.rajawali3d.materials.shaders.fragments.effects.ToonFragmentShaderFragment
org.rajawali3d.materials.shaders.fragments.effects.ToonFragmentShaderFragment
org.rajawali3d.primitives.Torus

A torus primitive (donut shape). The constructor takes two boolean arguments that indicate whether certain buffers should be created or not. Not creating these buffers can reduce memory footprint.

org.rajawali3d.primitives.Torus

A torus primitive (donut shape). The constructor takes two boolean arguments that indicate whether certain buffers should be created or not. Not creating these buffers can reduce memory footprint.

org.rajawali3d.animation.TranslateAnimation3D
org.rajawali3d.animation.TranslateAnimation3D
org.rajawali3d.math.vector.Vector2
org.rajawali3d.math.vector.Vector2
org.rajawali3d.math.vector.Vector3

Encapsulates a 3D point/vector.

org.rajawali3d.math.vector.Vector3

Encapsulates a 3D point/vector.

org.rajawali3d.animation.mesh.VertexAnimationFrame
org.rajawali3d.animation.mesh.VertexAnimationFrame
org.rajawali3d.materials.plugins.VertexAnimationMaterialPlugin
org.rajawali3d.materials.plugins.VertexAnimationMaterialPlugin
org.rajawali3d.animation.mesh.VertexAnimationObject3D
org.rajawali3d.animation.mesh.VertexAnimationObject3D
org.rajawali3d.materials.shaders.fragments.animation.VertexAnimationVertexShaderFragment
org.rajawali3d.materials.shaders.fragments.animation.VertexAnimationVertexShaderFragment
org.rajawali3d.materials.shaders.VertexShader
org.rajawali3d.materials.shaders.VertexShader
org.rajawali3d.materials.plugins.VerticalGradientMaterialPlugin
org.rajawali3d.materials.plugins.VerticalGradientMaterialPlugin
org.rajawali3d.postprocessing.passes.VignettePass
org.rajawali3d.postprocessing.passes.VignettePass
org.rajawali3d.vr.VRActivity
org.rajawali3d.vr.renderer.VRRenderer
org.rajawali3d.vr.surface.VRSurfaceView
org.rajawali3d.wallpaper.Wallpaper
org.rajawali3d.wallpaper.Wallpaper
org.rajawali3d.wear.WatchFaceService
org.rajawali3d.wear.WatchRenderer
org.rajawali3d.wear.WearActivity
org.rajawali3d.renderer.pip.WorkaroundScreenQuad

This is a ScreenQuad identical to Rajawali's except that it uses the old set of coordinates for applying textures. To be used until the issue is resolved, see https://github.com/Rajawali/Rajawali/pull/1508

org.rajawali3d.renderer.pip.WorkaroundScreenQuad

This is a ScreenQuad identical to Rajawali's except that it uses the old set of coordinates for applying textures. To be used until the issue is resolved, see https://github.com/Rajawali/Rajawali/pull/1508

org.rajawali3d.WorldParameters

Collection of world global parameters. These parameters are constant across all scenes. This class is intended to be read only after setup, and so does not include any thread safety mechanisms in the interest of speed. Extreme care must be taken if you desire to modify anything in this class while other threads are actively using it.

org.rajawali3d.WorldParameters

Collection of world global parameters. These parameters are constant across all scenes. This class is intended to be read only after setup, and so does not include any thread safety mechanisms in the interest of speed. Extreme care must be taken if you desire to modify anything in this class while other threads are actively using it.