flutter3d_game 0.6.0 copy "flutter3d_game: ^0.6.0" to clipboard
flutter3d_game: ^0.6.0 copied to clipboard

The game layer on top of flutter3d: the touch, keyboard, mouse and gamepad devices, with the whole of flutter3d_sim re-exported.

0.6.0 #

  • A floor, and no code — the same shape as 0.5.1 and for the same reason. The input devices, the fixed step and the interpolation are byte for byte 0.5.1's. What moved is the promise about the package this one re-exports whole: flutter3d_sim is required at ^0.6.0, so a caller reaching a simulation type through this name reaches a version that has it rather than whatever the resolver picked.
  • pad_input and pointer_lock stay at ^0.4.0. They are on a line of their own, their 0.4.1 is a documentation patch, and a floor that demanded it would be claiming this package needs something it does not.

0.5.1 #

  • A floor, and no code. Nothing in this package changed; what changed is what it promises about the package it re-exports. flutter3d_sim is now required at 0.5.2 or above, because that is where Heightfield arrived and, through it, flutter3d_physics 0.5.1 with the collision shape a body stands on. A caller reaching those names through this one was reaching whatever the resolver happened to pick, which for a ^0.5.0 floor could be a version without either — and the symptom is a compile error in somebody else's package.

0.5.0 #

Breaking. A stick use carries what it does, and an issue is an object.

  • PadStickUse is open, and its interpreter opened with it. It was an enum switched over in one method, so a game could not say its stick leans the ship. A use now is what it does with a deflection — route against a narrow PadStickTarget, letGo for whatever it writes — and the three built in are instances rather than cases. There is no switch left to break.
  • IssueSink takes an Issue. A bare string could not grow a severity or a source without breaking every sink anybody had written.

0.4.1 #

  • The simulation moved out, and nothing that imports this package changes a line. The fixed step, the entity store, the level format, saves, demos, the rewind buffer, actors, navigation and the maths are flutter3d_sim now — a plain Dart package with no Flutter in it, so a server can replay a run through the same simulation the player ran. This package keeps the eight files that reached Flutter — the touch stick and button, keyboard and mouse, the gamepad route, the MediaQuery read and the diagnostics sink — and re-exports flutter3d_sim and flutter3d_physics whole.

0.4.0 #

  • A touch control lets go when it leaves. The button and the stick press into a shared InputState, and unmounting while pressed is a normal path — settings opening over the control, a level transition. Each now releases its held action or zeroes its axis in dispose instead of leaving the runner jumping into the next screen.

0.3.0 #

  • Playing no longer asks kIsWeb, and both answers it used to give about a browser were wrong. Capture is asked of pointer_lock, which can now hold a pointer in a desktop browser and says so — and which says no on Windows and Linux, where the old platform list claimed a capture that does not exist and then turned off drag-look, leaving a camera that could not move at all. Touch is asked of defaultTargetPlatform, which reports a mobile browser as android or iOS, so a phone opening a web build finally gets the on-screen controls it has always had natively.
  • InputTape records a run as transitions plus axes, one entry per fixed step, and replays it exactly. A tape of intents, not of poses.
  • StepSystems: a game adds a rule to a genre's step without forking it. Phases are named by the genre, announced unconditionally, and run in a defined order — never in whatever order a hash map returns.
  • InputState exposes this step's presses, releases and analogue readings, which is what a recorder needs and cannot ask for by name.

0.2.0 #

  • An ECS whose every component serialises, and one snapshot mechanism serving the save, the network packet and the determinism test.
  • Actors with a flow field to walk it, mechanisms composed through signals, and movers that carry what stands on them.
  • A pad and a touch layer that arrive as the same actions a key does, and GameAction opened from an enum to a value class so a genre can invent its own.
  • WorldStep: the order the world is stepped in, as named phases the game calls, because two genres want their actors on different sides of the index.

0.1.0 #

  • A fixed timestep with an accumulator that reports the steps it had to drop, and interpolation at draw time.
  • Device-independent input: actions, bindings, and a keyboard — all arriving as the same thing.
  • Levels as documents — brushes, entities, lights, materials — with a validator that reports a coordinate rather than "the file is broken".
0
likes
0
points
678
downloads

Publisher

verified publisherpleion.dev

Weekly Downloads

The game layer on top of flutter3d: the touch, keyboard, mouse and gamepad devices, with the whole of flutter3d_sim re-exported.

Homepage
Repository (GitHub)
View/report issues

Topics

#game-development #game-engine #input #simulation

License

unknown (license)

Dependencies

flutter, flutter3d_sim, pad_input, pointer_lock, vector_math

More

Packages that depend on flutter3d_game