Skip to content

docs: Fix "Vaporrave" on WebKit (vec3f->vec4f) - #2782

Merged
iwoplaza merged 1 commit into
releasefrom
docs/make-vaporrave-work-in-webkit
Aug 5, 2026
Merged

iwoplaza merged 1 commit into
releasefrom
docs/make-vaporrave-work-in-webkit

Conversation

@iwoplaza

@iwoplaza iwoplaza commented Aug 3, 2026

Copy link
Copy Markdown
Collaborator

No description provided.

@github-actions

github-actions Bot commented Aug 3, 2026 •

Copy link
Copy Markdown

pkg.pr.new

packages
Ready to be installed by your favorite package manager ⬇️

https://pkg.pr.new/software-mansion/TypeGPU/typegpu@4c0c2de4982fcda08a9189560c88d877f9f8e95c
https://pkg.pr.new/software-mansion/TypeGPU/@typegpu/cli@4c0c2de4982fcda08a9189560c88d877f9f8e95c
https://pkg.pr.new/software-mansion/TypeGPU/@typegpu/noise@4c0c2de4982fcda08a9189560c88d877f9f8e95c
https://pkg.pr.new/software-mansion/TypeGPU/@typegpu/react@4c0c2de4982fcda08a9189560c88d877f9f8e95c
https://pkg.pr.new/software-mansion/TypeGPU/unplugin-typegpu@4c0c2de4982fcda08a9189560c88d877f9f8e95c

benchmark
view benchmark

commit
view commit

@github-actions

github-actions Bot commented Aug 3, 2026

Copy link
Copy Markdown

Bundle size comparison (import * as ... in PR vs import * as ... in target):

🟢 Decreased ➖ Unchanged 🔴 Increased ❔ Unknown
0 320 0 0

import { ... } in PR vs import * as ... in PR (is the library tree-Shakeable?):

Click to reveal the results table (297 entries).
Test tsdown
d_Void.ts 87.40 kB ($${\color{red}+12093.7\%}$$)
d_sampler.ts 87.41 kB ($${\color{red}+11962.7\%}$$)
d_isPtr.ts 87.41 kB ($${\color{red}+11802.0\%}$$)
d_comparisonSampler.ts 87.42 kB ($${\color{red}+11787.8\%}$$)
d_isSizeAttrib.ts 87.41 kB ($${\color{red}+11771.4\%}$$)
d_isWgslArray.ts 87.41 kB ($${\color{red}+11771.2\%}$$)
d_isAlignAttrib.ts 87.41 kB ($${\color{red}+11755.8\%}$$)
d_isWgslStruct.ts 87.41 kB ($${\color{red}+11755.6\%}$$)
d_isAtomic.ts 87.41 kB ($${\color{red}+11755.1\%}$$)
d_isBuiltinAttrib.ts 87.42 kB ($${\color{red}+11724.7\%}$$)
d_isLocationAttrib.ts 87.42 kB ($${\color{red}+11709.2\%}$$)
d_isDecorated.ts 87.41 kB ($${\color{red}+11708.6\%}$$)
d_isInterpolateAttrib.ts 87.42 kB ($${\color{red}+11663.1\%}$$)
d_atomic.ts 87.41 kB ($${\color{red}+11389.6\%}$$)
d_ptrHandle.ts 87.41 kB ($${\color{red}+10417.9\%}$$)
d_ptrUniform.ts 87.41 kB ($${\color{red}+10405.6\%}$$)
d_ptrStorage.ts 87.41 kB ($${\color{red}+10356.5\%}$$)
d_ptrPrivate.ts 87.41 kB ($${\color{red}+10332.2\%}$$)
d_ptrFn.ts 87.41 kB ($${\color{red}+10319.4\%}$$)
d_ptrWorkgroup.ts 87.41 kB ($${\color{red}+10308.1\%}$$)
d_textureExternal.ts 87.42 kB ($${\color{red}+10153.5\%}$$)
d_textureStorage1d.ts 87.42 kB ($${\color{red}+8532.0\%}$$)
d_textureStorage2d.ts 87.42 kB ($${\color{red}+8532.0\%}$$)
d_textureStorage3d.ts 87.42 kB ($${\color{red}+8532.0\%}$$)
d_textureStorage2dArray.ts 87.42 kB ($${\color{red}+8385.2\%}$$)
d_isDisarray.ts 87.41 kB ($${\color{red}+7758.5\%}$$)
d_isUnstruct.ts 87.41 kB ($${\color{red}+7758.5\%}$$)
d_isLooseDecorated.ts 87.42 kB ($${\color{red}+7711.0\%}$$)
d_isLooseData.ts 87.41 kB ($${\color{red}+7447.1\%}$$)
d_isWgslData.ts 87.41 kB ($${\color{red}+6569.7\%}$$)
d_unstruct.ts 87.41 kB ($${\color{red}+5547.1\%}$$)
d_isData.ts 87.41 kB ($${\color{red}+4735.4\%}$$)
d_deepEqual.ts 87.41 kB ($${\color{red}+3886.9\%}$$)
d_struct.ts 87.41 kB ($${\color{red}+2324.9\%}$$)
d_ref.ts 87.40 kB ($${\color{red}+1725.4\%}$$)
std_discard.ts 103.14 kB ($${\color{red}+624.7\%}$$)
std_copy.ts 103.13 kB ($${\color{red}+612.6\%}$$)
std_arrayLength.ts 103.14 kB ($${\color{red}+612.4\%}$$)
std_isBeingTranspiled.ts 103.15 kB ($${\color{red}+610.8\%}$$)
std_getTargetShaderLanguage.ts 103.15 kB ($${\color{red}+607.7\%}$$)
std_extensionEnabled.ts 103.15 kB ($${\color{red}+605.2\%}$$)
std_range.ts 103.13 kB ($${\color{red}+592.4\%}$$)
std_dpdx.ts 103.13 kB ($${\color{red}+584.1\%}$$)
std_fwidthCoarse.ts 103.14 kB ($${\color{red}+583.9\%}$$)
std_dpdxCoarse.ts 103.14 kB ($${\color{red}+583.9\%}$$)
std_dpdyCoarse.ts 103.14 kB ($${\color{red}+583.9\%}$$)
std_fwidthFine.ts 103.14 kB ($${\color{red}+583.9\%}$$)
std_dpdxFine.ts 103.14 kB ($${\color{red}+583.9\%}$$)
std_dpdyFine.ts 103.14 kB ($${\color{red}+583.9\%}$$)
std_fwidth.ts 103.14 kB ($${\color{red}+583.9\%}$$)
std_dpdy.ts 103.13 kB ($${\color{red}+583.9\%}$$)
d_bool.ts 87.40 kB ($${\color{red}+571.4\%}$$)
d_f16.ts 87.40 kB ($${\color{red}+571.4\%}$$)
d_f32.ts 87.40 kB ($${\color{red}+571.4\%}$$)
d_i32.ts 87.40 kB ($${\color{red}+571.4\%}$$)
d_u32.ts 87.40 kB ($${\color{red}+571.4\%}$$)
d_u16.ts 87.40 kB ($${\color{red}+570.2\%}$$)
std_atomicLoad.ts 103.14 kB ($${\color{red}+551.5\%}$$)
std_textureBarrier.ts 103.14 kB ($${\color{red}+551.2\%}$$)
std_atomicStore.ts 103.14 kB ($${\color{red}+551.2\%}$$)
std_workgroupBarrier.ts 103.15 kB ($${\color{red}+551.0\%}$$)
std_storageBarrier.ts 103.14 kB ($${\color{red}+551.0\%}$$)
std_atomicAdd.ts 103.14 kB ($${\color{red}+551.0\%}$$)
std_atomicAnd.ts 103.14 kB ($${\color{red}+551.0\%}$$)
std_atomicMax.ts 103.14 kB ($${\color{red}+551.0\%}$$)
std_atomicMin.ts 103.14 kB ($${\color{red}+551.0\%}$$)
std_atomicSub.ts 103.14 kB ($${\color{red}+551.0\%}$$)
std_atomicXor.ts 103.14 kB ($${\color{red}+551.0\%}$$)
std_atomicOr.ts 103.14 kB ($${\color{red}+551.0\%}$$)
d_textureDepth2d.ts 87.41 kB ($${\color{red}+549.3\%}$$)
d_textureDepthCube.ts 87.42 kB ($${\color{red}+549.1\%}$$)
d_texture1d.ts 87.41 kB ($${\color{red}+548.8\%}$$)
d_texture2d.ts 87.41 kB ($${\color{red}+548.8\%}$$)
d_texture3d.ts 87.41 kB ($${\color{red}+548.8\%}$$)
d_textureDepth2dArray.ts 87.42 kB ($${\color{red}+548.5\%}$$)
d_textureCube.ts 87.41 kB ($${\color{red}+548.5\%}$$)
d_textureDepthCubeArray.ts 87.42 kB ($${\color{red}+548.3\%}$$)
d_textureDepthMultisampled2d.ts 87.43 kB ($${\color{red}+548.2\%}$$)
d_texture2dArray.ts 87.41 kB ($${\color{red}+548.0\%}$$)
d_textureCubeArray.ts 87.42 kB ($${\color{red}+547.7\%}$$)
d_textureMultisampled2d.ts 87.42 kB ($${\color{red}+547.7\%}$$)
d_disarrayOf.ts 87.41 kB ($${\color{red}+480.3\%}$$)
d_vec2b.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec2f.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec2h.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec2i.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec2u.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec3b.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec3f.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec3h.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec3i.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec3u.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec4b.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec4f.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec4h.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec4i.ts 87.41 kB ($${\color{red}+349.4\%}$$)
d_vec4u.ts 87.41 kB ($${\color{red}+349.4\%}$$)
std_subgroupAdd.ts 103.14 kB ($${\color{red}+329.3\%}$$)
std_subgroupBroadcastFirst.ts 103.15 kB ($${\color{red}+329.2\%}$$)
std_subgroupExclusiveAdd.ts 103.15 kB ($${\color{red}+329.2\%}$$)
std_subgroupExclusiveMul.ts 103.15 kB ($${\color{red}+329.2\%}$$)
std_subgroupInclusiveAdd.ts 103.15 kB ($${\color{red}+329.2\%}$$)
std_subgroupInclusiveMul.ts 103.15 kB ($${\color{red}+329.2\%}$$)
std_subgroupShuffleDown.ts 103.15 kB ($${\color{red}+329.2\%}$$)
std_subgroupShuffleXor.ts 103.15 kB ($${\color{red}+329.2\%}$$)
std_subgroupBroadcast.ts 103.15 kB ($${\color{red}+329.2\%}$$)
std_subgroupShuffleUp.ts 103.15 kB ($${\color{red}+329.2\%}$$)
std_subgroupShuffle.ts 103.14 kB ($${\color{red}+329.2\%}$$)
std_subgroupBallot.ts 103.14 kB ($${\color{red}+329.2\%}$$)
std_subgroupElect.ts 103.14 kB ($${\color{red}+329.2\%}$$)
std_subgroupAll.ts 103.14 kB ($${\color{red}+329.2\%}$$)
std_subgroupAnd.ts 103.14 kB ($${\color{red}+329.2\%}$$)
std_subgroupAny.ts 103.14 kB ($${\color{red}+329.2\%}$$)
std_subgroupMax.ts 103.14 kB ($${\color{red}+329.2\%}$$)
std_subgroupMin.ts 103.14 kB ($${\color{red}+329.2\%}$$)
std_subgroupMul.ts 103.14 kB ($${\color{red}+329.2\%}$$)
std_subgroupXor.ts 103.14 kB ($${\color{red}+329.2\%}$$)
std_subgroupOr.ts 103.14 kB ($${\color{red}+329.2\%}$$)
d_formatToWGSLType.ts 87.42 kB ($${\color{red}+317.4\%}$$)
d_uint8.ts 87.41 kB ($${\color{red}+317.3\%}$$)
d_unorm10_10_10_2.ts 87.42 kB ($${\color{red}+317.3\%}$$)
d_unorm8x4_bgra.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_float16x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_float16x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_float32x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_float32x3.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_float32x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_snorm16x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_snorm16x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_unorm16x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_unorm16x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_sint16x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_sint16x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_sint32x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_sint32x3.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_sint32x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_snorm8x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_snorm8x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_uint16x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_uint16x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_uint32x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_uint32x3.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_uint32x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_unorm8x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_unorm8x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_float16.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_float32.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_sint8x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_sint8x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_snorm16.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_uint8x2.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_uint8x4.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_unorm16.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_sint16.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_sint32.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_snorm8.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_uint16.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_uint32.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_unorm8.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_sint8.ts 87.41 kB ($${\color{red}+317.2\%}$$)
d_packedFormats.ts 87.41 kB ($${\color{red}+316.9\%}$$)
d_isPackedData.ts 87.41 kB ($${\color{red}+316.0\%}$$)
std_textureDimensions.ts 103.15 kB ($${\color{red}+300.1\%}$$)
std_textureGather.ts 103.14 kB ($${\color{red}+300.0\%}$$)
std_textureSampleBaseClampToEdge.ts 103.16 kB ($${\color{red}+300.0\%}$$)
std_textureSampleCompareLevel.ts 103.15 kB ($${\color{red}+300.0\%}$$)
std_textureSampleCompare.ts 103.15 kB ($${\color{red}+300.0\%}$$)
std_textureSampleLevel.ts 103.15 kB ($${\color{red}+300.0\%}$$)
std_textureSampleBias.ts 103.15 kB ($${\color{red}+300.0\%}$$)
std_textureSampleGrad.ts 103.15 kB ($${\color{red}+300.0\%}$$)
std_textureSample.ts 103.14 kB ($${\color{red}+299.9\%}$$)
std_textureStore.ts 103.14 kB ($${\color{red}+299.9\%}$$)
std_textureLoad.ts 103.14 kB ($${\color{red}+299.9\%}$$)
d_alignmentOf.ts 87.41 kB ($${\color{red}+299.2\%}$$)
std_translation4.ts 103.14 kB ($${\color{red}+281.5\%}$$)
std_rotationX4.ts 103.14 kB ($${\color{red}+281.5\%}$$)
std_rotationY4.ts 103.14 kB ($${\color{red}+281.5\%}$$)
std_rotationZ4.ts 103.14 kB ($${\color{red}+281.5\%}$$)
std_identity2.ts 103.14 kB ($${\color{red}+281.5\%}$$)
std_identity3.ts 103.14 kB ($${\color{red}+281.5\%}$$)
std_identity4.ts 103.14 kB ($${\color{red}+281.5\%}$$)
std_scaling4.ts 103.14 kB ($${\color{red}+281.5\%}$$)
d_isBuiltin.ts 87.41 kB ($${\color{red}+255.1\%}$$)
d_sizeOf.ts 87.41 kB ($${\color{red}+254.3\%}$$)
d_isContiguous.ts 87.41 kB ($${\color{red}+254.3\%}$$)
d_getLongestContiguousPrefix.ts 87.43 kB ($${\color{red}+254.2\%}$$)
d_arrayOf.ts 87.41 kB ($${\color{red}+233.4\%}$$)
d_size.ts 87.40 kB ($${\color{red}+231.6\%}$$)
d_align.ts 87.41 kB ($${\color{red}+231.6\%}$$)
d_location.ts 87.41 kB ($${\color{red}+231.6\%}$$)
d_interpolate.ts 87.41 kB ($${\color{red}+231.6\%}$$)
d_invariant.ts 87.41 kB ($${\color{red}+227.0\%}$$)
d_mat4x4f.ts 87.41 kB ($${\color{red}+223.3\%}$$)
d_mat2x2f.ts 87.41 kB ($${\color{red}+223.3\%}$$)
d_mat3x3f.ts 87.41 kB ($${\color{red}+223.3\%}$$)
d_matToArray.ts 87.41 kB ($${\color{red}+221.8\%}$$)
d_builtin.ts 87.41 kB ($${\color{red}+204.8\%}$$)
std_unpack2x16float.ts 103.14 kB ($${\color{red}+186.6\%}$$)
std_unpack4x8unorm.ts 103.14 kB ($${\color{red}+186.6\%}$$)
std_pack2x16float.ts 103.14 kB ($${\color{red}+186.6\%}$$)
std_pack4x8unorm.ts 103.14 kB ($${\color{red}+186.6\%}$$)
std_bitcastU32toF32.ts 103.14 kB ($${\color{red}+133.2\%}$$)
std_bitcastU32toI32.ts 103.14 kB ($${\color{red}+133.2\%}$$)
std_neg.ts 103.13 kB ($${\color{red}+113.1\%}$$)
std_bitShiftRight.ts 103.14 kB ($${\color{red}+113.1\%}$$)
std_bitShiftLeft.ts 103.14 kB ($${\color{red}+113.1\%}$$)
std_add.ts 103.13 kB ($${\color{red}+113.0\%}$$)
std_div.ts 103.13 kB ($${\color{red}+113.0\%}$$)
std_mod.ts 103.13 kB ($${\color{red}+113.0\%}$$)
std_mul.ts 103.13 kB ($${\color{red}+113.0\%}$$)
std_sub.ts 103.13 kB ($${\color{red}+113.0\%}$$)
std_translate4.ts 103.14 kB ($${\color{red}+109.8\%}$$)
std_rotateX4.ts 103.14 kB ($${\color{red}+109.8\%}$$)
std_scale4.ts 103.14 kB ($${\color{red}+109.8\%}$$)
std_rotateY4.ts 103.14 kB ($${\color{red}+109.7\%}$$)
std_rotateZ4.ts 103.14 kB ($${\color{red}+109.7\%}$$)
d_memoryLayoutOf.ts 87.41 kB ($${\color{red}+108.2\%}$$)
std_and.ts 103.13 kB ($${\color{red}+99.2\%}$$)
std_or.ts 103.13 kB ($${\color{red}+99.2\%}$$)
std_select.ts 103.14 kB ($${\color{red}+99.2\%}$$)
std_allEq.ts 103.13 kB ($${\color{red}+99.2\%}$$)
std_all.ts 103.13 kB ($${\color{red}+99.2\%}$$)
std_not.ts 103.13 kB ($${\color{red}+99.2\%}$$)
std_eq.ts 103.13 kB ($${\color{red}+99.2\%}$$)
std_lt.ts 103.13 kB ($${\color{red}+99.2\%}$$)
std_ne.ts 103.13 kB ($${\color{red}+99.2\%}$$)
std_isCloseTo.ts 103.14 kB ($${\color{red}+99.1\%}$$)
std_any.ts 103.13 kB ($${\color{red}+99.1\%}$$)
std_ge.ts 103.13 kB ($${\color{red}+99.1\%}$$)
std_gt.ts 103.13 kB ($${\color{red}+99.1\%}$$)
std_le.ts 103.13 kB ($${\color{red}+99.1\%}$$)
std_dot4U8Packed.ts 103.14 kB ($${\color{red}+56.2\%}$$)
std_length.ts 103.14 kB ($${\color{red}+56.2\%}$$)
std_countTrailingZeros.ts 103.15 kB ($${\color{red}+56.2\%}$$)
std_distance.ts 103.14 kB ($${\color{red}+56.2\%}$$)
std_dot.ts 103.13 kB ($${\color{red}+56.2\%}$$)
std_countLeadingZeros.ts 103.15 kB ($${\color{red}+56.2\%}$$)
std_firstTrailingBit.ts 103.15 kB ($${\color{red}+56.1\%}$$)
std_firstLeadingBit.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_fract.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_frexp.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_modf.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_quantizeToF16.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_mix.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_countOneBits.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_dot4I8Packed.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_determinant.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_extractBits.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_faceForward.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_inverseSqrt.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_reverseBits.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_insertBits.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_smoothstep.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_normalize.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_transpose.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_saturate.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_degrees.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_radians.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_reflect.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_refract.ts 103.14 kB ($${\color{red}+56.1\%}$$)
std_acosh.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_asinh.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_atan2.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_atanh.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_clamp.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_cross.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_floor.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_ldexp.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_round.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_trunc.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_acos.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_asin.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_atan.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_ceil.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_cosh.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_exp2.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_log2.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_sign.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_sinh.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_sqrt.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_step.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_tanh.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_abs.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_cos.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_exp.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_fma.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_log.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_max.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_min.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_pow.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_sin.ts 103.13 kB ($${\color{red}+56.1\%}$$)
std_tan.ts 103.13 kB ($${\color{red}+56.1\%}$$)
common_fullScreenTriangle.ts 57.18 kB ($${\color{red}+41.5\%}$$)
common_writeSoA.ts 57.17 kB ($${\color{red}+38.6\%}$$)
STATIC_allImports.ts 287.20 kB ($${\color{green}-1.7\%}$$)
STATIC_d.ts 87.40 kB ($${\color{green}-2.6\%}$$)
STATIC_std.ts 103.13 kB ($${\color{green}-2.7\%}$$)

If you wish to run a comparison for other, slower bundlers, run the 'Tree-shake test' from the GitHub Actions menu.

@pullfrog pullfrog Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ No new issues found.

Reviewed changes: Replaces vec3f sphere color uniform with vec4f plus .rgb swizzling to work around a WebKit WGSL→Metal codegen bug on iOS/Safari. All read sites correctly extract .rgb and the write path pads alpha with 1.

  • Uniform type widened — d.vec3f → d.vec4f at creation and write sites
  • Swizzle added at reads — .rgb used in getSceneRay, the two getSphere calls, and the glow accumulation

Pullfrog  | View workflow run | Using DeepSeek Pro (free via Pullfrog for OSS) (Kimi K2 not used — the program covers this model; add its provider key to run your pick) | 𝕏

@github-actions

github-actions Bot commented Aug 3, 2026 •

Copy link
Copy Markdown

Resolution Time Benchmark

---
config:
  themeVariables:
    xyChart:
      plotColorPalette: "#E63946, #3B82F6, #059669"
---
xychart
  title "Random Branching (🔴 PR | 🔵 main | 🟢 release)"
  x-axis "max depth" [1, 2, 3, 4, 5, 6, 7, 8]
  y-axis "time (ms)"
  line [0.86, 1.73, 3.45, 5.90, 7.54, 8.67, 20.61, 22.26]
  line [0.87, 1.72, 3.89, 5.24, 6.50, 9.25, 20.65, 19.81]
  line [0.86, 1.65, 3.67, 5.62, 6.87, 10.56, 19.40, 20.34]
Loading
---
config:
  themeVariables:
    xyChart:
      plotColorPalette: "#E63946, #3B82F6, #059669"
---
xychart
  title "Linear Recursion (🔴 PR | 🔵 main | 🟢 release)"
  x-axis "max depth" [1, 2, 3, 4, 5, 6, 7, 8]
  y-axis "time (ms)"
  line [0.25, 0.47, 0.63, 0.77, 1.02, 1.10, 1.32, 1.47]
  line [0.34, 0.54, 0.65, 0.76, 1.01, 1.16, 1.32, 1.48]
  line [0.31, 0.47, 0.65, 0.81, 0.99, 1.09, 1.32, 1.40]
Loading
---
config:
  themeVariables:
    xyChart:
      plotColorPalette: "#E63946, #3B82F6, #059669"
---
xychart
  title "Full Tree (🔴 PR | 🔵 main | 🟢 release)"
  x-axis "max depth" [1, 2, 3, 4, 5, 6, 7, 8]
  y-axis "time (ms)"
  line [0.93, 1.90, 3.93, 5.67, 10.98, 23.60, 50.95, 103.00]
  line [0.73, 1.79, 3.79, 6.28, 11.51, 24.33, 51.07, 100.65]
  line [0.82, 1.85, 4.01, 7.27, 11.09, 23.11, 51.04, 102.79]
Loading

Comment on lines +20 to +22
// NOTE: Padded to vec4f on purpose. A bare vec3f uniform triggers a WebKit
// WGSL->Metal codegen bug on iOS/Safari (missing `__unpack` overload for a
// `packed_float3` uniform), which fails shader compilation.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's crazy to me that this is still a bug

@iwoplaza
iwoplaza force-pushed the docs/make-vaporrave-work-in-webkit branch from 139c9c2 to 1949c86 Compare August 5, 2026 12:44

@pullfrog pullfrog Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ No new issues found.

Reviewed changes: The new commit adds a clarifying comment about the WebKit WGSL→Metal codegen bug and widens sphereColorUniform from vec3f to vec4f, with .rgb swizzling at read sites and alpha padded with 1 on writes. The test expectations were updated accordingly.

  • Comment added — Explains why vec4f is used instead of vec3f for the sphereColorUniform
  • Uniform type widened — d.vec3f → d.vec4f at creation, plus d.vec4f(..., 1) at the write site
  • Swizzling preserved — .rgb is used consistently at all read sites, including the glow accumulation
  • Test updated — Expected WGSL now declares sphereColorUniform as vec4f at binding 2 and shifts memoryBuffer to binding 3

Pullfrog  | View workflow run | Using Kimi K2 (free via Pullfrog for OSS) | 𝕏

@iwoplaza
iwoplaza force-pushed the docs/make-vaporrave-work-in-webkit branch from 1949c86 to 4c0c2de Compare August 5, 2026 13:07
@iwoplaza
iwoplaza merged commit cb9cf09 into release Aug 5, 2026
4 of 5 checks passed
@iwoplaza
iwoplaza deleted the docs/make-vaporrave-work-in-webkit branch August 5, 2026 13:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants