Releases: alienkitty/alien.js
Releases · alienkitty/alien.js
v1.2.0
- Three.js r155, r157 and r163 updates
- Space.js v1.2 updates
- Readded Rollup config when using
Threadfrom Space.js - Changed
threedirectory structure - OGL entry point
- Updated MindNode image
- ESLint v9
- Examples
- Many formatting and comment updates, including simplified comment dividers and inline shaders for material classes.
- OGL FXAA.
- Readded barrel distortion.
- Radial blur.
- 3D infinite stars.
- 3D Stripe gradient (akella version).
- Fluid distortion.
- Motion blur (per-object and camera), plus debug display options (Default, Velocity, Geometry, Matcap1, Matcap2, Depth, Luma and Bloom).
- 3D black holes.
- Utils
OimoPhysicsupdates, including support for additional geometry types (ConeGeometry,CylinderGeometry,CapsuleGeometryandConvexHullGeometry).- Renamed
TextGeometrytoText. - Added
Fluidbased on @PavelDoGreat's WebGL Fluid Simulation and @gordonnl's Post Fluid Distortion example from OGL. - Added
MotionBlurbased on @gkjohnson's Per-Object Motion Blur Render Pass and Shader Replacement.
- Materials
- Reverted video glitch material updates.
ColorMaterialalpha parameter.- Scene composite material updates, including new materials for
SceneCompositeAddMaterial,SceneCompositeDistortionMaterial, and dithering parameter. - Added
MaskMaterial. - Added
DepthMaterialwith dither. - Added
ACESFilmicToneMappingMaterialbased on @WestLangley's ACES Filmic Tone Mapping Shader from three.js (ACESFilmicToneMapping). - Added motion blur materials (
MotionBlurVelocityMaterialandMotionBlurCompositeMaterial) based on @gkjohnson's Per-Object Motion Blur Render Pass and Shader Replacement. - Removed previous
CameraMotionBlurMaterial. - Removed
FlowMaterial. - Removed transmission materials and examples.
- Shader modules
- Encodings shader module updates, including ACES tone mapping from the three.js ACES Filmic Tone Mapping Shader and
linearToSRGBfrom OGL. - Added radial blur shader modules based on the OGRE Radial Blur Shader and question from SO.
- Added
mapfrom @msfeldstein's glsl-map. - Readded
levelsfrom Active Theory's Gist.
- Encodings shader module updates, including ACES tone mapping from the three.js ACES Filmic Tone Mapping Shader and
v1.1.0
- Three.js r151 and r152 updates
- Space.js v1.1 updates
- Added NPM Downloads and Discord badges
- Updated MindNode image
- Examples
- SMAA.
- Renderer antialiasing on by default.
- Unreal Bloom with HDR.
- 3D Backdrop.
- Readded transmission.
- Transmission render group.
- Transmission material panels.
- Panel tangent helper error workaround for three.js r151.
- 3D Ripple canvas resize fix for three.js r135.
- Utils
OimoPhysicsandOimoPhysicsControllercomputes the bounding sphere for instanced meshes.
- Materials
- Normal material WebGL2 fix.
- Video glitch material updates.
- Added SMAA materials (
SMAAEdgesMaterial,SMAAWeightsMaterialandSMAABlendMaterial) based on @vanruesc's SMAAEffect from Post Processing and @mpk's SMAA pass from three.js. SMAAWeightsMaterialpath and optional loader parameters.PoissonDiscBlurMaterialblue noise texture resolution and optional loader parameters.- Added
DiscardMaterialbased on DiscardMaterial from drei. - Added
MeshTransmissionMaterialbased on @N8python's MeshTransmissionMaterial from drei. - Added
GammaCorrectionMaterialbased on @WestLangley's Gamma Correction Shader from three.js (linearToSRGB).
- Shader modules
- Added encodings shader module with
linearToSRGBfrom the three.js encodings function.
- Added encodings shader module with
v1.0.0
Alien.js has divided into two separate libraries, Space.js for UI, Panel components, Tween, Web Audio, loaders, utilities, and Alien.js for 3D utilities, materials, shaders and physics.
- Reverted to library
- Removed Config classes
- Refactored
Stageto be more minimal - Refactored shaders into combined modules
- Separate module entry points for
@alienkitty/alien.js/threeand@alienkitty/alien.js/three/oimophysics - Moved
scripttags intohead - Removed fallback page and logic
- Updated linting config with warnings
- Fullscreen triangle scene not needed
- Prefer three.js internal classes over custom
- Removed use of three.js
Uniform - Blur resolution correction
- Improved reflections
- House cleaning
- Always use latest dependencies
- Replaced LGTM with DeepScan
- Replaced Mermaid diagram with MindNode image
- Renamed
mastertomain - Materials
- Added
VolumetricLightMaterialbased on @BKcore's Three.js experiments, @netpraxis's volumetric light example and @peterhry's Holographic Projection CodePen. - Added
LensflareMaterialbased on mu6k's Lens Flare Example and TheNosiriN's Anamorphic Lens flare 1. - Added
VolumetricLightLensflareMaterial, a combination of bothVolumetricLightMaterialandLensflareMaterialin one pass.
- Added
- Shader modules
- Blue noise shader module updates.
- Updated noise shader modules based on morgan3d's 1D, 2D & 3D Value Noise.
- Added fBM functions from morgan3d's 1D, 2D & 3D Value Noise.
- Added
lensflarefunction based on mu6k's Lens Flare Example.
r20
- WebGL 2 only, now that Safari support is enabled by default
- Replaced GSAP with standalone animation and easing classes
- Replaced Oimo.js and examples with OimoPhysics classes
- Replaced UIL with standalone UI components and panel system
- Replaced
Utilsmath functions with the three.jsMathUtilsfunctions, reexported directly from the three.js source file - Improved fast 3D audio system
- Improved reflections
- Implemented pointer events
- Implemented binary websockets
- House cleaning
- Updated dependencies
- Updated browser support check to just a simple
nomodulefallback, now that Safari supports the latest features - Added geometry and sounds attribution files
- Added dark mode favicon
- Removed Babel from build (no more transpiling needed), now that Safari supports static class fields
- Removed linting from
package.jsonto keep dependencies low, and can be manually installed when needed - Removed Travis CI and David, added LGTM
- Config
- Added
Stylesreference class and CSS variables for colours.
- Added
- Loaders
- Updated
BufferGeometryLoaderwith support foruv2. - Removed spherical loaders and examples.
- Updated
- Tween
- Readded
RenderasTicker. - Added
BezierEasingbased on @gre's bezier-easing, used through theEasingAPI, a CSScubic-bezier(0.42, 0, 0.58, 1.0)can be added with a reference nameEasing.addBezier('inOut1', 0.42, 0, 0.58, 1), and then accessed by the nameEasing['inOut1'], or in any tweentween(shader.uniforms.uTransition, { value: 1 }, 1500, 'inOut1'). - Added
Easingbased on an aggregate of multiple sources, @danro's easing.js, @CreateJS's TweenJS, @tweenjs's tween.js, and common names for easing functions from the Easing Functions Cheat Sheet. - Readded
MathTweenasTween.
- Readded
- Utils
- Updated
headsTails()to optionally return a boolean with empty arguments.
- Updated
- Audio
- Updated
WebAudiowithenabledgetter andget()method. - Updated
WebAudioParamwithset()method. - Removed legacy code, now that Safari supports the latest features.
- Updated
- Panel
- UI
- 3D
- Updated
TextGeometrywith upstream updates. - Added
getScreenSpaceBox()helper function. - Added
getFrustumFromHeight()helper function. - Added
lerpCameras()helper function. - Added
SoftShadowsbased on @spidersharma03's Percent Closer Soft-Shadows (PCSS) three.js example. - Added
Point3D. - Removed
SpherizeImage.
- Updated
- Physics
- Added
OimoPhysicsbased on @VBT-YTokan'sOimoPhysicsclass and three.js example, and @lo-th's Phy. - Added
OimoPhysicsBuffer. - Added
OimoPhysicsController.
- Added
- Extras
- Added
Color, reexported directly from the three.js source file. - Added
Vector2, reexported directly from the three.js source file. - Added
Smoothbased on @jesperlandberg'sSmoothclass and smooth.js gist. - Added
SmoothSkewbased on @jesperlandberg'sSmoothclass and CodePen example. - Added
SmoothViewsbased on the old Slide video examples. - Added
Magneticbased on @jesperlandberg'sMagneticclass and magnetic.js gist.
- Added
- Materials
- Updated
BloomCompositeMaterialwith dithering disabled by default. - Added
ShadowTextureMaterialbased on @gordonnl's Skinning example from OGL. - Added
FresnelMaterialbased on @michaeldll's Simple Fresnel Shader from OGL. - Added
TiltShiftMaterialbased on @spite's Codevember 2016 examples. - Added
ReflectorBlurMaterialbased on @spite's Codevember 2016 examples. - Added
ReflectorMaterialbased on @Slayvin'sReflectorclass and three.js mirror example. - Added
ReflectorDudvMaterialbased on @Mugen87's three.js refraction example. - Added
AfterimageMaterialbased on @HypnosNova's three.js example. - Removed film grain materials.
- Updated
- Shader modules
- Replaced transformation shader modules with
rotateUVandscaleUV. - Renamed path for easing shader modules from
easestoeasing. - Updated HSV shader modules based on @yuichiroharai's glsl-y-hsv functions.
- Added
fresnelwithgetFresnel()helper function. - Added
smootherstepfunction from v_coda's smootherstep. - Removed
rangefunctions. - Removed
spherize.
- Replaced transformation shader modules with
r19
- Examples
- Updated dependencies
- Updated browser support check
- House cleaning
- Config
- Simplified
Deviceandwebglcheck no-longer callsWEBGL_lose_context.
- Simplified
- Loaders
- Updated
TextureLoaderwith caching support. - Added
SpherizeTextureLoaderandSphericalCubeTextureLoaderfor simulating an equirectangular image from a regular texture. - Added
EnvironmentTextureLoaderfor generating an environment diffuse texture with PMREMGenerator. - Added
BufferGeometryLoaderandBufferGeometryLoaderThreadfor loading .json files exported with BufferGeometry.toJSON (requiresposition,normalanduvattributes). - Added
TextGeometryLoaderandTextGeometryLoaderThreadfor loading MSDF assets exported with msdf-bmfont.
- Updated
- Utils
- Updated
Componentwith improvedObject3Ddetection. - Updated
Interfacewith SVG support plusline()andload()methods. - Updated
Tweenwith support for GSAP's updateRoot(). - Renamed
getConstructorName()togetConstructor()which now returns an object with properties forname,codeandisInstance. - Readded
queryString()helper function. - Readded additional math functions.
- Updated
- Audio
- Updated
WebAudioParamwithfade()method. - Added
WebAudio3Dbased on @mrdoob's AudioListener. - Added
Sound3Dbased on @mrdoob's PositionalAudio with an option to use just stereo and gain by calculating the object's screen position and distance.
- Updated
- UIL
- Added helper classes and query string parameters to display the interface (
ui) and orbit controls (orbit). - Added
UILwhich manages the creation and addition of new uil groups. - Added
WorldUILwith options for scene background color and tone mapping. - Added
CameraUILwith a slider forlerpSpeed. - Added
RenderUILwith options forLuminosityMaterialandBloomCompositeMaterial. - Added
MeshStandardMaterialUILwith options forcolor,emissive,roughness,metalness,flatShading,wireframeandenvMapIntensity(work in progress, no image support yet).
- Added helper classes and query string parameters to display the interface (
- 3D
- Updated
getFullscreenTriangle()with only two vertices. - Added
getSphericalCube()helper function. - Added
getFrustum()helper function. - Added
Wobblefor adding 3D movement with Perlin ImprovedNoise. - Added
Flowmapbased on @gordonnl's Mouse Flowmap from OGL. - Added
Reflectorbased on @Slayvin's Reflector with fast Gaussian blur added (FastGaussianBlurMaterial). - Added
SpherizeImagebased on the GEGL Spherize image processing operation in GIMP. - Added
TextGeometrybased on @gordonnl's MSDF Text Glyphs from OGL.
- Updated
- Materials
- Added
NormalMaterial. - Added
ColorMaterial. - Added
BasicMaterialtexture map. - Added
FlowMaterialfor use withFlowmap. - Added
CopyMaterialblit pass. - Added
FXAAMaterialbased on @mattdesl's FXAA v2. - Added
BadTVMaterialbased on @felixturner's Bad TV Shader. - Added
RGBMaterialbased on @felixturner's RGB Shift Shader. - Added
FilmGrainMaterialbased on @alteredq's Film grain & scanlines shader. - Added
FilmGrainFXAAMaterialcombination of bothFXAAMaterialandFilmGrainMaterialin one pass. - Added
BlurMaterial9-tap Gaussian blur based on @zz85's Horizontal and vertical blur shaders. - Added
FastGaussianBlurMaterial13-tap Gaussian blur based on @mattdesl's Fast Gaussian blur. - Added
LuminosityMaterialbased on @bhouston's Luminosity high pass shader. - Added
UnrealBloomBlurMaterialbased on @spidersharma03 and @bhouston's Unreal bloom pass seperable blur material. - Added
UnrealBloomCompositeMaterialbased on @spidersharma03 and @bhouston's Unreal bloom pass composite material. - Added
BloomCompositeMaterialsimplified version ofUnrealBloomCompositeMaterial. - Added
SceneCompositeMaterialfor additive blending of a bloom composite texture. - Added
PoissonDiscBlurMaterial12-tap Poisson disc blur based on @spite's Poisson disc blur pass from Wagner. - Added
CameraMotionBlurMaterialbased on @blaze33's Motion blur pass from DroneWorld. - Added
BokehBlurMaterial1andBokehBlurMaterial2based on battlebottle's DOOM 2016 Style DOF bokeh blur. - Added
ChromaticAberrationMaterialbased on battlebottle's DOOM 2016 Style DOF bokeh blur 2 Chromatic aberration pass. - Added
VideoGlitchMaterialbased on dyvoid's Video Glitch. - Added
DepthMaskMaterialbased on @vanruesc's DepthMaskMaterial from Post Processing. - Added
TextMaterialbased on @gordonnl's MSDF Text Glyphs from OGL.
- Added
- Shader modules
- Added
aastepfrom @mattdesl's glsl-aastep. - Added
badtvbased on @felixturner's Bad TV Shader. - Added
blendingbased on @vanruesc's blending functions from Post Processing. - Added
blurshader modules (Gaussian, Poisson disc and Unreal bloom seperable blur). - Added
brightness-contrastbased on @spite's Brightness contrast pass from Wagner. - Added
conditionalsfrom glsl-conditionals. - Added
depthfunctions based on @mattdesl's depth texture example. - Added
desaturatefrom the Color saturation in GLSL thread. - Added
ditherbased on hornet's Color Banding Removal. - Added
easesfrom glsl-easings. - Added
fxaafrom @mattdesl's glsl-fxaa. - Added
hsvfunctions from sam's Fast branchless RGB to HSV conversion in GLSL. - Added
noiseshader modules (Blue noise, glsl-noise and 2D noise functions). - Added
parabolafunctions from Inigo Quilez. - Added
randomfrom @mattdesl's glsl-random. - Added
rangefunctions based on Active Theory's. - Added
rgbshiftbased on @felixturner's RGB Shift Shader. - Added
spherizebased on the GEGL Spherize image processing operation in GIMP. - Added
transformfunctions from Good's 2D Canvas with UI.
- Added
- Library
allmodule entry point for materials and extra dependencies.