Skip to content

Releases: uinosoft/t3d.js

v0.4.0

28 Feb 09:12
Compare
Choose a tag to compare

迁移指南

把t3d从v0.3.x升级到v0.4.x,需要注意以下接口变更,否则可能会导致升级后项目运行失败或告警:

灯光渲染改造

t3d v0.4.x 为了引入灯光组与分簇光照特性,对灯光渲染逻辑进行了改造,涉及到的接口变更如下:

  • Scene._lightData接口废弃并增加告警,可以使用Scene._lightingData.getGroup(0)代替。
  • RenderStates.lights接口废弃并增加告警,可以使用RenderStates.lighting.getGroup(0)代替。
  • ClusteredLightingManagerClusteredLightingPBRMaterial已废弃并增加告警,请使用renderer.lightingOptions启用分簇光照功能。
  • 着色器代码块light_fraglight_pars_frag中加入了分簇灯光相关着色器代码(用宏 USE_CLUSTERED_LIGHTS 包裹),如有覆盖这部分代码请注意同步。

其它废弃接口

  • Scene.environmentLightIntensity接口废弃并增加告警
  • (addons)ShadowAdapter文件废弃并增加告警,请使用LightShadowAdapter代替。
  • (addons)InstancedBasicMaterial.jsInstancedPBRMaterial.js文件废弃并增加告警,请从InstancedMaterial.js引入这些类。

贡献者须知

  • t3d v0.4.x 引入了eslint-plugin-jsdoc插件以统一注释格式规范,如果eslint运行异常请执行npm i更新依赖包。

变更日志

  • 特性:新增对选择性光照组的支持
  • 特性:调整阴影法线以支持背面渲染的normalBias
  • 特性:将分簇光照支持从扩展模块迁移到核心包
  • 重构:优化了EventDispatcher
  • 重构:为部分废弃代码添加警告
  • 文档:添加 JSDoc lint 配置
  • 特性(扩展):新增 CurvePath2
  • 修复(扩展):修正 GLTFLoader 动画解析器中对 morphTargetInfluencespropertyPath 检查
  • 特性(示例):新增 lab_linechart_fill 示例
  • 特性(示例):新增 animation_bone_attach 示例

Migration Guide

When upgrading t3d from v0.3.x to v0.4.x, please be aware of the following API changes, as failing to update them may cause your project to break or trigger warnings:

Lighting Rendering Overhaul

In t3d v0.4.x, in order to introduce lighting groups and clustered lighting, the lighting rendering pipeline has been reworked. The related API changes are as follows:

  • The Scene._lightData API is deprecated and will now issue a warning. Use Scene._lightingData.getGroup(0) instead.
  • The RenderStates.lights API is deprecated and will now issue a warning. Use RenderStates.lighting.getGroup(0) instead.
  • ClusteredLightingManager and ClusteredLightingPBRMaterial are deprecated and will now issue warnings. Please enable clustered lighting functionality via renderer.lightingOptions.
  • Shader chunks in light_frag and light_pars_frag now include clustered lighting-related code (wrapped with the USE_CLUSTERED_LIGHTS macro). If you have overridden these shader parts, please ensure your changes are synchronized accordingly.

Other Deprecated APIs

  • The Scene.environmentLightIntensity API is deprecated and now issues a warning.
  • (addons) The ShadowAdapter file is deprecated and now issues a warning. Please use LightShadowAdapter instead.
  • (addons) The files InstancedBasicMaterial.js and InstancedPBRMaterial.js are deprecated and now issue warnings. Please import these classes from InstancedMaterial.js instead.

Contributor Notice

  • t3d v0.4.x introduces the eslint-plugin-jsdoc plugin to enforce consistent documentation standards. If ESLint encounters issues, please run npm i to update the dependencies.

Changelog

  • feat: add support for selective lighting groups
  • feat: adjust shadow normals for backface normalBias support
  • feat: migrate clustered lighting support to core package
  • refactor: optimize EventDispatcher
  • refactor: add deprecation warnings for legacy code
  • docs: add JSDoc lint
  • feat(addons): introduce CurvePath2
  • fix(addons): correct propertyPath check for 'morphTargetInfluences' in GLTFLoader animation parser
  • feat(examples): add lab_linechart_fill example
  • feat(examples): add animation_bone_attach example

Full Changelog: v0.3.2...v0.4.0

v0.3.2

15 Jan 08:32
Compare
Choose a tag to compare

变更日志

  • 特性: 为 Vector4 添加 round() 方法
  • 特性: 为 MathUtils 添加 toHalfFloat()fromHalfFloat() 方法
  • 特性: 为 Mesh 添加 getVertexPosition() 方法
  • 特性: 在 Renderer 中的 shaderCompileOptions 添加 maxMaterialPrograms
  • 特性: 为 Material 添加 extUvCoordMask 属性
  • 特性: 引入 TransformUV 类以处理 UV 变换
  • 特性: 在关键帧动画中添加对材质 UV 变换的支持
  • 修复: 在裁剪空间中排序对象
  • 重构: 在 makeSafe() 中使用 MathUtils.clamp()
  • 特性(插件): 为 SceneUtils 添加 computeMeshAccurateBoundings() 方法
  • 特性(插件): 在 GLTFLoader 中添加对Transmission材质扩展的支持
  • 特性(插件): 在Transmission GLTF 扩展中添加对 extUvCoordMask 的支持
  • 特性(插件): 在 KHR_animation_pointer 中添加对贴图变换的支持
  • 特性(插件): 在 GLTFLoader 中添加对 KHR_materials_dispersion 扩展的支持
  • 修复(插件): 修正 TransmissionPBRMaterial 中贴图采样的颜色空间
  • 修复(示例): 修正Transmission示例中的渲染 pass

Changelog

  • feat: add round() method to Vector4
  • feat: add toHalfFloat() and fromHalfFloat() to MathUtils
  • feat: add getVertexPosition() to Mesh
  • feat: add maxMaterialPrograms to shaderCompileOptions in Renderer
  • feat: add extUvCoordMask property to Material
  • feat: introduce TransformUV class for handling UV transformations
  • feat: add support for material UV transform in keyframe animation
  • fix: sort objects in clip space
  • refactor: use MathUtils.clamp() for makeSafe()
  • feat(addons): add computeMeshAccurateBoundings() to SceneUtils
  • feat(addons): add support for transmission materials extension in GLTFLoader
  • feat(addons): add support for setting extUvCoordMask in transmission GLTF extensions
  • feat(addons): add support for texture transform in KHR_animation_pointer
  • feat(addons): add support for KHR_materials_dispersion extension in GLTFLoader
  • fix(addons): correct color space for texture sampling in TransmissionPBRMaterial
  • fix(examples): correct rendering pass in transmission examples

Full Changelog: v0.3.1...v0.3.2

v0.3.1

10 Dec 02:59
Compare
Choose a tag to compare

变更日志

  • 特性:为 TextureBase 添加 userData 属性
  • 特性:为 DirectionalLightShadow.frustumEdgeFalloff 添加垂直淡出支持
  • 特性:为 Matrix3 添加 isIdentity 方法
  • 特性:为 Renderer 添加 asyncReadPixel 选项
  • 特性:为 MathUtils 添加 lerp 方法
  • 修复:解决 CylinderGeometry 中设置多个高度分段缺失三角形的问题
  • 修复:当一个盖子的半径为零时,移除 CylinderGeometry 中的共线三角形
  • 性能:在 DirectionalLightShadow 渲染期间启用相机剔除
  • 重构:同步阴影相机与光源的up方向
  • 重构:优化 getPointShadow 方法
  • 文档:为 Geometry.instanceCount 添加描述性注释
  • 特性(addons):添加数学类 OBB
  • 特性(addons):在 GLTFLoader 中添加对 KHR_animation_pointer 的支持
  • 特性(addons):在 GLTFLoader 中为纹理添加 mimeType 信息
  • 特性(addons):添加 GLTFExporter
  • 特性(addons):在 GLTFExporter 中添加对 GLTF_SEPARATE 格式的支持
  • 特性(addons):在 GLTFExporter 中添加实例化和光照扩展
  • 特性(addons):在 GLTFExporter 中添加 draco 选项
  • 特性(addons):添加 DRACOExporter
  • 特性(addons):引入新的 LightShadowAdapter
  • 特性(addons):添加 InstancedMaterial.js文件,整合所有实例化材质扩展
  • 特性(addons):引入 AttenuationMaterial,整合衰减材质扩展
  • 特性(addons):引入 LatheBuilder
  • 修复(addons):修正 HeatmapGeneratorIDWMapGeneratordispose 方法
  • 修复(addons):当相机在包围盒内时,修正 LightShadowAdapter 中的阴影盒计算
  • 修复(addons):修正 TransformControls 中相机处于极端位置时的轴平面位置计算错误
  • 重构(addons):将 LightShadowAdapter.bindBoxBox3 改为 OBB
  • 重构(addons):移除 TimerClock 中对 Date.now() 的兼容性回退
  • 特性(examples):添加 material_shader_volume_layered 示例
  • 特性(examples):在 geometry_geometries 中添加 TorusBuilder
  • 重构(examples):清理代码

Changelog

  • feat: add userData property to TextureBase
  • feat: add vertical fade support to DirectionalLightShadow.frustumEdgeFalloff
  • feat: add isIdentity method to Matrix3
  • feat: add asyncReadPixel option to Renderer
  • feat: add lerp method to MathUtils
  • fix: resolve missing triangles issue with multiple height segments in CylinderGeometry
  • fix: remove collinear triangles in CylinderGeometry when one cap radius is zero
  • perf: enable camera culling during DirectionalLightShadow rendering
  • refactor: synchronize shadow camera orientation with light source
  • refactor: optimize getPointShadow method
  • docs: add descriptive comment for Geometry.instanceCount
  • feat(addons): add OBB
  • feat(addons): add support for KHR_animation_pointer in GLTFLoader
  • feat(addons): add mimeType information to textures in GLTFLoader
  • feat(addons): add GLTFExporter
  • feat(addons): add support for GLTF_SEPARATE format in GLTFExporter
  • feat(addons): add instancing and light extensions to GLTFExporter
  • feat(addons): add draco option to GLTFExporter
  • feat(addons): add DRACOExporter
  • feat(addons): introduce LightShadowAdapter
  • feat(addons): add InstancedMaterial.js
  • feat(addons): introduce AttenuationMaterial
  • feat(addons): introduce LatheBuilder
  • fix(addons): correct dispose methods for HeatmapGenerator and IDWMapGenerator
  • fix(addons): correct shadow box calculation in LightShadowAdapter when camera is inside Box
  • fix(addons): correct axis plane position calculation bug in TransformControls when the camera is in extreme positions
  • refactor(addons): change LightShadowAdapter.bindBox from Box3 to OBB
  • refactor(addons): drop fallback to Date.now() in Timer and Clock
  • feat(examples): add material_shader_volume_layered example
  • feat(examples): add TorusBuilder in geometry_geometries
  • refactor(examples): cleanup

Full Changelog: v0.3.0...v0.3.1

v0.3.0

27 Sep 06:40
Compare
Choose a tag to compare

迁移指南

把t3d从v0.2.x升级到v0.3.x,主要注意以下接口变更,否则可能会导致升级后项目运行失败:

着色器规则变更

  • 新增alphaTest_pars_frag,如果您使用了alphaTest_frag注意要和新片段配合使用。并且ALPHATEST 的宏不再携带 alphaTest 的值,alphaTest 的值使用 u_AlphaTestuniform 的形式传入
  • 新增 diffuseMap_pars_vertdiffuseMap_vert 着色器片段,如果您的自定义着色器中使用了 diffuseMap_pars_fragdiffuseMap_frag,请注意必须要和新片段搭配使用。
  • 宏定义USE_DIFFUSE_MAPUSE_ALPHA_MAPUSE_EMISSIVEMAPUSE_AOMAP中不再包含UV通道信息,您可以在DIFFUSEMAP_UVALPHAMAP_UVEMISSIVEMAP_UVAOMAP_UV中获取该信息。在新版本中,这四种贴图可以默认支持设置任意0-8的UV通道。

接口兼容移除

  • 移除针对带 WebGL 前缀的枚举兼容代码,包括: WEBGL_PIXEL_FORMAT, WEBGL_PIXEL_TYPE, WEBGL_TEXTURE_FILTER, WEBGL_TEXTURE_WRAP, WEBGL_COMPARE_FUNC, WEBGL_OP
  • 移除针对 WebGLRenderer 上旧属性的兼容代码,包括:renderTargetstatevertexArrayBindings
  • 移除针对 WebGLRenderPass 类的兼容代码
  • 移除针对 WebGLProperties 类的兼容代码
  • 移除针对 MatcapMaterial 类的兼容代码,新代码已转移到 addons
  • 移除 GLTFUtils.sanitizeNodeName

接口新增告警

  • CubeGeometry 类新增废弃告警
  • Group 类新增废弃告警
  • WebGLRenderer.gl 接口新增废弃告警
  • WebGLRenderer.render() 接口新增废弃告警
  • Renderer.renderPass 接口新增废弃告警
  • PMREM 新增废弃告警,请使用 PMREMGenerator 代替
  • GeometryUtils.mergeBufferAttributes() 接口新增废弃告警,请使用 GeometryUtils.mergeAttributes() 代替

变更日志

特性:添加 PIXEL_FORMAT.R11F_G11F_B10F
特性:为 fromArraytoArray 方法添加 denormalizenormalize 参数
特性:引入 MathUtils
修复:将 afterRender 回调上下文设置为 renderer
重构:移除已弃用的代码
重构:增加对更多 UV 通道的支持
重构:将材质 alphaTestdefine 移动到 uniform
特性(插件):添加 CircleGeometry
特性(插件):引入 Timer
特性(插件):引入 GradientSky
特性(插件):引入 PlanarReflectionProbe
特性(插件):为 GLTFLoader 添加 EXT_mesh_gpu_instancing 扩展
特性(插件):引入 PolyhedronBuilder
修复(插件):限制 TransformControls 中的指针事件仅响应左键
重构(插件):优化 GLTFLoader 扩展处理
特性(示例):添加 webgl_query_occlusion_tester 示例

Migration Guide

When upgrading t3d from v0.2.x to v0.3.x, pay attention to the following interface changes to avoid potential project failures after the upgrade:

Shader Rule Changes

  • Added alphaTest_pars_frag. If you use alphaTest_frag, make sure to use it with the new fragment. Additionally, the ALPHATEST macro no longer carries the alphaTest value. The alphaTest value is now passed as a uniform named u_AlphaTest.
  • New shader chunks diffuseMap_pars_vert and diffuseMap_vert have been added. If your custom shaders use diffuseMap_pars_frag or diffuseMap_frag, ensure they are used in conjunction with the new chunks.
  • The macros USE_DIFFUSE_MAP, USE_ALPHA_MAP, USE_EMISSIVEMAP, and USE_AOMAP no longer include UV channel information. You can obtain this information from DIFFUSEMAP_UV, ALPHAMAP_UV, EMISSIVEMAP_UV, and AOMAP_UV. In the new version, these four types of maps can support any UV channel from 0 to 8 by default.

Interface Compatibility Removal

  • Removed compatibility code for enums with the WebGL prefix, including: WEBGL_PIXEL_FORMAT, WEBGL_PIXEL_TYPE, WEBGL_TEXTURE_FILTER, WEBGL_TEXTURE_WRAP, WEBGL_COMPARE_FUNC, WEBGL_OP.
  • Removed compatibility code for old properties on WebGLRenderer, including: renderTarget, state, vertexArrayBindings.
  • Removed compatibility code for the WebGLRenderPass class.
  • Removed compatibility code for the WebGLProperties class.
  • Removed compatibility code for the MatcapMaterial class. The new code has been moved to addons.
  • Removed GLTFUtils.sanitizeNodeName.

New Deprecation Warnings

  • Added deprecation warning for the CubeGeometry class.
  • Added deprecation warning for the Group class.
  • Added deprecation warning for the WebGLRenderer.gl interface.
  • Added deprecation warning for the WebGLRenderer.render() interface.
  • Added deprecation warning for the Renderer.renderPass interface.
  • Added deprecation warning for PMREM. Please use PMREMGenerator instead.
  • Added deprecation warning for GeometryUtils.mergeBufferAttributes(). Please use GeometryUtils.mergeAttributes() instead.

Changelog

  • feat: add PIXEL_FORMAT.R11F_G11F_B10F
  • feat: add denormalize and normalize parameters to fromArray and toArray methods
  • feat: introduce MathUtils
  • fix: set afterRender callback context to renderer
  • refactor: remove deprecated code
  • refactor: add support for more uv coords
  • refactor: move material alpha test from define to uniform
  • feat(addons): add CircleGeometry
  • feat(addons): introduce Timer
  • feat(addons): introduce GradientSky
  • feat(addons): introduce PlanarReflectionProbe
  • feat(addons): add EXT_mesh_gpu_instancing extension for GLTFLoader
  • feat(addons): introduce PolyhedronBuilder
  • fix(addons): restrict pointer event to left button in TransformControls
  • refactor(addons): optimize GLTFLoader extensions handling
  • feat(examples): add webgl_query_occlusion_tester example

Full Changelog: v0.2.8...v0.3.0

v0.2.8

26 Aug 03:30
Compare
Choose a tag to compare

变更日志

  • 特性:在Scene中新增envDiffuseIntensityenvSpecularIntensity属性并标记environmentLightIntensity为弃用
  • 特性:为Plane添加静态方法intersectPlanes
  • 修复:修正TextureCube的mipmap上传
  • 重构:优化envMap参数的uniform上传
  • 特性(addons):在将对象添加到VirtualGroup时检查子父关系
  • 特性(addons):引入EnvLoaderEnvTextureCubeLoader
  • 特性(addons):添加一些额外的纹理加载器
  • 修复(addons):修正InfiniteGridShader中的变换计算
  • 修复(addons):修正正交相机下的分簇照明渲染
  • 修复(addons):修正GLTFLoader中的重复纹理的问题
  • 修复(addons):解决ViewControls中的初始渲染问题
  • 修复(addons):修正KTX2Loader中的ZSTD解码
  • 修复(addons):在TransformControls中将acos参数限制在[-1, 1]以防止NaN
  • 性能(addons):GLTFLoaderSafari >= 17时使用ImageBitmapLoader加载图片
  • 重构(addons):增强TransformControls中的平移交互体验
  • 特性(示例):添加material_alphahash示例
  • 特性(示例):添加custompass_xray示例
  • 重构(示例):在animation_skinned_instancing的GUI中添加Instance Count滑块
  • 重构(示例):重新组织和分类与纹理相关的示例

Changelog

  • feat: add envDiffuseIntensity and envSpecularIntensity attributes in Scene while deprecating environmentLightIntensity
  • feat: add static method intersectPlanes to Plane class
  • fix: correct mipmap uploading for TextureCube
  • refactor: optimize uniform uploading for envMap parameters
  • feat(addons): check child-parent relationship when adding object to 'VirtualGroup'
  • feat(addons): introduce EnvLoader and EnvTextureCubeLoader
  • feat(addons): add additional texture loaders
  • fix(addons): correct transform in InfiniteGridShader
  • fix(addons): correct clustered lighting for orthographic cameras
  • fix(addons): prevent duplicate textures in GLTFLoader
  • fix(addons): resolve initial rendering issue in ViewControls
  • fix(addons): correct ZSTD decoding in KTX2Loader
  • fix(addons): clamp acos parameter to [-1, 1] to prevent NaN in TransformControls
  • perf(addons): use ImageBitmapLoader in GLTFLoader for Safari >= 17
  • refactor(addons): enhance interactive experience for translating in TransformControls
  • feat(examples): add material_alphahash example
  • feat(examples): add custompass_xray example
  • refactor(examples): add Instance Count slider to animation_skinned_instancing GUI
  • refactor(examples): reorganize and classify texture-related examples

Full Changelog: v0.2.7...v0.2.8

v0.2.7

18 Jul 01:50
Compare
Choose a tag to compare

变更日志

  • 特性:新增Texture2DArray
  • 特性:新增RenderTarget2DArray
  • 特性:新增一些数学方法
  • 修复:修改viewport取整方法为round
  • 性能:提升Matrix4.determinant()性能
  • 重构:优化WebGLTextures的内部实现
  • 特性(addons):新增CameraHelper
  • 特性(addons):新增SphereHelper
  • 特性(addons):ClusteredLightingManager支持聚光灯
  • 特性(addons):ExtrudeShapeBuilder新增generateTopgenerateBottom选项
  • 特性(addons):TubeBuilder新增generateStartCapgenerateEndCap选项
  • 修复(addons):修复GLTFLoader点渲染模式的赋值bug
  • 修复(addons):修复GeometryUtils.applyMatrix4中interleaved数据引发的bug
  • 修复(addons):GLTFLoader处理accessor的offset比stride大的情况
  • 特性(示例):新增material_shader_background示例
  • 重构(示例):优化camera_projection示例中相机切换的动画曲线

Changelog

  • feat: introduce Texture2DArray
  • feat: introduce RenderTarget2DArray
  • feat: add some mathematical methods
  • fix: change viewport to use round instead of floor
  • perf: make Matrix4.determinant() more efficient
  • refactor: optimize the internal implementation of WebGLTextures
  • feat(addons): introduce CameraHelper
  • feat(addons): introduce SphereHelper
  • feat(addons): add support for spot lights in ClusteredLightingManager
  • feat(addons): add generateTop and generateBottom options for ExtrudeShapeBuilder
  • feat(addons): add generateStartCap and generateEndCap options for TubeBuilder
  • fix(addons): rectify points draw mode assignment in GLTFLoader
  • fix(addons): correct the offset of interleaved buffer in GeometryUtils.applyMatrix4
  • fix(addons): handle accessor offset larger than stride in GLTFLoader
  • feat(examples): add material_shader_background example
  • refactor(examples): enhance projection transition linearity in camera_projection

Full Changelog: v0.2.6...v0.2.7

v0.2.6

22 May 03:55
Compare
Choose a tag to compare

变更日志

  • 特性:Matrix4新增lerpMatrices方法
  • 特性:支持顶点着色器中的自定义扩展语句
  • 特性:新增RenderTarget3D
  • 修复:修复聚光灯阴影bug
  • 性能:ShaderPostPass使用全屏三角面代替矩形面
  • 重构:为AnimationClip构造函数中的name参数添加默认值
  • 性能(addons):优化GLTFLoader中的正则性能
  • 重构(addons):优化DynamicFont
  • 重构(addons):新增PMREMGenerator并且废弃PMREM
  • 重构(addons):移除raycaster.setFromCamera方法中的相机类型参数
  • 特性(示例):新增webgl_clipculldistance示例
  • 特性(示例):新增clustered lighting示例
  • 重构(示例):替换material_texture_bumpmap中的AssimpJson模型为glTF
  • 重构(示例):替换camera_cameras示例为camera_projection
  • 重构(示例):移动延迟渲染示例到renderer分类

Changelog

  • feat: add lerpMatrices method to Matrix4
  • feat: add support for custom extensions in vertex shader
  • feat: add RenderTarget3D
  • fix: spot light shadow bug
  • perf: replace fullscreen quad with fullscreen triangle in ShaderPostPass
  • refactor: add remaining default constructor parameters to AnimationClip
  • perf(addons): optimize regular expression matching rules in GLTFLoader
  • refactor(addons): optimize DynamicFont
  • refactor(addons): add PMREMGenerator and deprecate PMREM
  • refactor(addons): remove camera type parameter from raycaster.setFromCamera method
  • feat(examples): add webgl_clipculldistance example
  • feat(examples): add clustered lighting example
  • refactor(examples): replace AssimpJson with glTF model in material_texture_bumpmap
  • refactor(examples): replace camera_cameras with camera_projection example
  • refactor(examples): move deferred rendering examples to renderer category

Full Changelog: v0.2.5...v0.2.6

v0.2.5

21 Mar 15:03
Compare
Choose a tag to compare

变更日志

  • 特性:新增RectAreaLight
  • 特性:shader报错信息添加shader名称
  • 特性:Vector2新增negatedot方法
  • 修复:修复RectAreaLight的更新bug
  • 修复:修复skeleton的更新bug
  • 特性(addons):为EdgesBuilder.getGeometryData新增strideoffset参数
  • 特性(addons):为SkyBox增加雾效过渡功能
  • 特性(addons):为SDFTextShader新增阴影和描边功能
  • 修复(addons):修复VirtualGroup计算pivot的bug
  • 特性(示例):新增text_bitmap_dynamic示例
  • 特性(示例):新增material_texture_lightmap示例
  • 特性(示例):新增text_sdf_dynamic示例
  • 重构(示例):美化material_shader_water_pbr示例

Changelog

  • feat: add RectAreaLight
  • feat: add name to the shader error log
  • feat: add negate and dot methods to Vector2
  • fix: rectify bug in RectAreaLight
  • fix: skeleton update bug
  • feat(addons): add stride and offset parameters to EdgesBuilder.getGeometryData
  • feat(addons): add fog support to SkyBox
  • feat(addons): add support for shadow and outline to SDFTextShader
  • fix(addons): VirtualGroup get pivot bug
  • feat(examples): add text_bitmap_dynamic example
  • feat(examples): add material_texture_lightmap example
  • feat(examples): add text_sdf_dynamic example
  • refactor(examples): beautify material_shader_water_pbr example

Full Changelog: v0.2.4...v0.2.5

v0.2.4

21 Feb 09:13
Compare
Choose a tag to compare

变更日志

  • 特性:支持整型数据类型的attribute
  • 特性:支持整型数据类型的Texture在shader中的采样
  • 重构:为renderer.readRenderTargetPixels添加统一的promise返回
  • 特性(addons):新增ViewControls
  • 特性(addons):ExtrudeShapeBuilder 支持沿曲线挤出
  • 修复(addons):修复InfiniteGridShader
  • 修复(addons):修复TransformControls的颜色空间
  • 特性(示例):新增曲线运动示例
  • 特性(示例):新增3D直方图示例
  • 重构(示例):在ik示例中使用TransformControls
  • 构建:新增 .vscode/extensions

Changelog

  • feat: support integer attributes
  • feat: support sampling of integer textures in shader
  • refactor: add promise return for renderer.readRenderTargetPixels
  • feat(addons): add ViewControls
  • feat(addons): supports extrusion along path for ExtrudeShapeBuilder (#22)
  • fix(addons): InfiniteGridShader
  • fix(addons): fix gizmo colors for TransformControls
  • feat(examples): add curve motion example
  • feat(examples): add histogram example
  • refactor(examples): use TransformControls in ik example
  • build: add .vscode/extensions

Full Changelog: v0.2.3...v0.2.4

v0.2.3

21 Dec 07:48
Compare
Choose a tag to compare

Changelog

  • feat: support webgl multi draw
  • feat: add MIN and MAX for BLEND_EQUATION
  • feat: add keyframe interpolants
  • refactor: add warning to WebGLRenderer if beginRender is not called before renderRenderableItem
  • feat(examples): add planar shadow example
  • feat(examples): add webgl_mesh_batch example
  • feat(examples): add geometry images example
  • feat(examples): add ground projected skybox example
  • feat(examples): add bitmap text example
  • feat(examples): add oit example
  • refactor(examples): moved camera controls examples to controls category
  • refactor(examples): update transform controls example
  • feat(addons): add ColorGradient
  • feat(addons): add TransformControls
  • feat(addons): add SceneUtils
  • feat(addons): add snapping for transform controls
  • feat(addons): add InstancedBasicMaterial
  • fix(addons): fix bug in octree.addElement
  • fix(addons): fix picking for TransformControls
  • refactor(addons): avoid duplicate assignments in Pathfinding
  • refactor(addons): make octree more versatile
  • refactor(addons): optimize SkeletonHelper
  • fix(docs): add return type