scene
The engine-agnostic scene document core, the .fscene document model, stable ids, serialization, prefab composition, and diffing.
0.2.0
3.5K downloads/mo
#4394 most downloaded on pub.dev
bdero/flutter_scene
What this package is like to depend on
Last release 7 days ago
17 Aug 2026
Release timing varies
gaps range from 3 weeks to 3.5 years
Most releases are documented
notes for 3 of 4 stable releases
Nothing withdrawn
no release was ever pulled
4 years old
4 releases · first in 2023
3 releases in the last 12 months
see the full history below
Release timeline
4 releases · Jan 2023 to Aug 2026
2024
2025
2026
Releases
latest 4-
0.2.017 Aug 2026Release notes
Open source →PredictedTransformComponentwithPredictedController, client-side prediction of an owned entity with authoritative input-replay reconciliation, so local input renders instantly while the sim stays server-authoritative. Selected per entity throughSceneReplication'slocalPredictionseam.PredictedPhysicsComponentwithPredictedPhysicsController, rollback prediction for an owned physics body. Mispredictions restore a retained world snapshot, adopt the authoritative pose, and replay pending inputs through the simulation. Needs a snapshot-capable backend (rapier).PredictedPhysicsController.onWorldRestoredfires after a rollback restore. A restore rewinds to the body set its snapshot captured, so a controller managing bodies dynamically (remote-player proxies) allocates a fixed pool before the first snapshot rather than recreating them.NetworkTransformComponentre-anchors its interpolation buffer after an idle gap, so a resuming remote eases in instead of snapping.- The interpolation delay adapts to measured arrival cadence and jitter, easing between
minDelayand the configured ceiling, so clean links render remotes barely behind while jittery ones buffer deep. SceneReplication.inputTargetDepthpasses the input buffer depth through to the client (1 suits local or stable links).SceneReplication.minInterpolationDelayandSceneReplication.adaptiveInterpolationreach the interpolation buffer, so an app can floor the adaptive delay or hold it fixed.- Both predicted components reconcile at the tick the authoritative pose was snapshotted at, not the input ack's, so a deferred snapshot no longer discards the travel in between. They wait for a snapshot to date the pose before reconciling at all.
- Both predicted components take
maxCatchUpTicksand snap to authority past it, so a backgrounded tab or a long hitch does not replay every missed tick in one frame. - Requires
dashwire_replication0.2.1 for the input-command and prediction substrate.
Release notes
Open source →- BREAKING: the backend now implements the
PhysicsSimulationcontract frompackage:scene; the runtime dependency moved fromflutter_scenetoscene. - BREAKING: removed the
Box3dRigidBody,Box3dCollider, andBox3dJointtypes; construct onlyBox3dPhysicsWorldand attach flutter_scene's genericRigidBody,Collider, and joint components. - BREAKING: wrap the world in flutter_scene's
PhysicsWorldnow,PhysicsWorld(Box3dPhysicsWorld(...)), instead of adding the concrete components directly. - Require
box3d^0.1.1for the Android native load fix.
Release notes
Open source →package:scene/schema.dart, the portable component schema model (ComponentSchema,ComponentPropertyDef, the tagged constraint taxonomy,formerNames/formerTypes).- Component schemas carry declarative editor gizmos (
ComponentSchema.gizmo, theGizmoSpecprimitive model with property-bound scalars, colors, and axes). .fsceneversion 3, component properties delta-serialize and audio attenuation settings nest; version 2 documents migrate as-is.- Sun lights carry
contactShadows,contactShadowDistance, andangularRadius. - Environment effects carry
colorGradingLut(a.cubeasset reference) andcolorGradingLutBlend. - Ambient-occlusion effects carry
indirectLight,method,sliceCount,stepsPerSlice,visibilityBitmask,thickness,thicknessHeuristic,bentNormals, andmultiBounce. - Retuned effect defaults, ambient-occlusion intensity
1.0, bloom intensity0.15, chromatic aberration0.2, auto-exposure clamps-4/4EV. .fsceneversion 2 fixes every document to the native coordinate system and migrates left-handed version 1 documents.- Removed
Handedness,UpAxis,StageMetadata.unitsPerMeter,NodeSpec.excludeFromWindingParity, andSkyEnvironmentSpec.castShadows. - Documents must declare their
.fsceneversion. SunLightSpecstores sky-driven analytic sun and cascaded-shadow settings.payloadSourcelinks a text manifest to a binary payload sidecar.TorusGeometrySpecandIcosphereGeometrySpecprocedural geometry, a torus around the Y axis and a geodesic sphere from a subdivided icosahedron.- Prefab instances add components to individual member nodes (
MemberComponent,PrefabInstanceSpec.memberComponents), andPrefabOverrideAspectaddresses one aspect of an override without re-parsing paths. ConstantEnvironment, a reflection-free environment with uniform diffuse ambient radiance.EnvironmentResourcecarriesagxWhite,agxContrast,environmentRotationY, andoverridesEffects.encodeComponentSchemas/decodeComponentSchemasmove a schema list through a manifest or cache payload, andpropertyValuesEqualcompares property values structurally.copyWithonMaterialResourceandPrefabInstanceSpec.
-
0.1.103 Aug 2026Release notes
Open source →- Add
registerSoloudAudioBackend(), so documents namingsoloudas their audio engine realize aSoloudAudioEngine. - Require
flutter_scene^0.22.0.
Release notes
Open source →- Add
registerFmodAudioBackend(), so documents namingfmodas their audio engine realize anFmodAudioEngine. - Ship a
flutter_scene_components.jsonmanifest for thefmodEventcomponent, kept in sync by a test. - Fix codec round-trip losses and registry lifecycle holes in
FmodEventCodec. - Require
flutter_scene^0.22.0.
Release notes
Open source →PhysicsSimulation.snapshot/restore(opt-in viasupportsSnapshot), world serialization for rollback prediction and lag-compensation rewind.PhysicsSimulation.setBodyPose, immediate body teleport for rollback correction (default throws on backends without it).TextureResourcecarries acontentrole (color,data,normal) describing what its pixels represent.
- Add
-
0.1.027 Jul 2026Release notes
Open source →- Initial release, extracted from
flutter_scene. The.fscenedocument model (SceneDocument, node/resource/payload specs), stable ids (DocumentId,LocalId,IdAllocator), JSON and binary serialization (.fscene/.fsceneb), prefab composition, and structural diffing, as a pure Dart package.
- Initial release, extracted from
-
0.0.0+126 Jan 2023Nothing published for this version