Skip to content

Releases: bryanedds/Nu

Cross-platform rendering fixes.

21 Aug 12:56
Compare
Choose a tag to compare

We've had some issues with rending on certain drivers on certain non-Nvidia platforms for a while now. Most if not all of these have been fixed!

Additional changes -

  • Removed errant enemies in BV.
  • Throw from Log.fail.
  • Improved SSR.
  • Warn for DebugSeverity.DebugSeverityMedium for GL debug message.
  • Provided a way to force boned animation.
  • Added glFinish call before swapping window for better compatibility with non Nvidia platforms
  • Added glFinish in other places that swap.
  • Fixed imgui rendering code on Intel.

Full Changelog: v16.0.0...v16.1.0

Removed PerimeterCentered flag + various fixes.

15 Aug 17:17
b44984e
Compare
Choose a tag to compare

We've been intending to remove this flag from the engine for a long time, but could not while Omni Blade (Demo) remained in master. Now that Omni Blade is released (https://bryanedds.itch.io/omni-blade) and parked on the omni-blade branch, we have been able to remove it! This was an important legacy feature to remove because it basically required two algorithms for every gui element with custom positioning as well as the layout system. It simply couldn't be supported, nor should it be as the legacy use case it satisfied was ill-considered in the first place.

ADDITIONAL CHANGES -

  • Marked getEntityStateOpt as internal.
  • Added Alt+F4 as a way to close Elmario, Nelmish, and Metrics.
  • Made all forms of depth occlusion optional and disabled by default.
  • Reduced SsrDistanceMaxDefault to workaround SSR limitations.
  • Added ssr roughness filtering.
  • Gaia UI fixes.
  • Fixed Bullet seemingly deactivating characters for no known reason.
  • Implemented EmitterRenderStyle for billboard emitter facet.
  • Fixed billboard emitter initialization.
  • Fixed default Effect3D.EffectDescriptor define.
  • Added SSR Light Brightness knob.
  • Fill bar regression fixes.
  • Fixed event tracing arguments.
  • Removed unused asset files in empty template.
  • New project error message fix.
  • Removed GarbageCollectionAdaptationMode = 1 since it actually seems to increase spikes in some cases.
  • Fixed #850.
  • Removed Omni Blade from master (now parked in omni-blade branch)
  • Removed PerimeterCentered.
  • Fixed vertical text justification.

Full Changelog: v15.11.0...v16.0.0

Enhancements, Fixes, and Polish

05 Aug 15:34
Compare
Choose a tag to compare

The major new feature this time around is an implementation of SSR -

image

The feature is still a bit limited, but we're continuing to work on it.

Also, we changed default unrendered Nu color to black and inverted gui asset colors including default color to work better in that context.

Additional notes -

Be sure to update your custom project's Default assets as well as its Prime library as remarked on here - https://github.com/bryanedds/Nu/wiki/Updating-User%E2%80%90Created-Project-Assets-on-Engine-Updates

Additional changes -

  • Implemented depth-based fragment occlusion pre-pass.
  • Removed support for alpha terrain to optimize terrain occlusion shader.
  • Fixed undesired serialization of LightProbe and Light properties.
  • Fixed DesiredFrameTimeMinimum.
  • Normalized editor movement speed for dynamic frame rate.
  • Implemented declarative song playback API.
  • Reworked audio API for consistency.
  • Got rid of discards in terrain shader due to perf penalty.
  • Removed unaffordable discard utilization in basic shaders. This drops distance-based partial occlusion on the floor.
  • Removed discard operation from other shaders.
  • Fixed transparent selection box obscuring forward-rendered entities.
  • Fixed hacky, imperfect behavior for slider undo / redo in Gaia.
  • Attempt to fix Tile map coordinate issue on the X axis.
  • Implemented SSR.
  • Fixed Gaia not displaying compile errors in console any more.
  • Reduced SSAO cost.
  • Shader fixes and optimization.
  • Changed Log.trace to use Trace.WriteLine instead of Trace.Fail except when calling the new Log.fail function.
  • Removed sword model from default animated model.
  • Resized probe model to fit in bounds.
  • Changed default unrendered Nu color to black and inverted gui asset colors including default color to work better in that context.

Full Changelog: v15.9.0...v15.10.0

Additional bug fixes.

16 Jul 03:48
Compare
Choose a tag to compare

This time we have the following fixes -

  • Fixed Show Entity feature in Gaia.
  • Blender script fixes.
  • Increased slow movement speed in Gaia.
  • Had to put plot line labels in reverse order for readability.
  • Fixed asset reload unhandled exn.

Full Changelog: v15.8.0...v15.9.0

Important Bug Fix

15 Jul 06:55
Compare
Choose a tag to compare

Nu had acquired an embarrassing bug where the MMCC could immediately destroy a simulant while in the simulant update loops, thus causing an unhandled exception. Code has been added to safeguard against this.

Full Changelog: v15.7.0...v15.8.0

Bug Fixes and API Changes

09 Jul 17:15
Compare
Choose a tag to compare

Aside from a bunch of Omni Blade changes, the following changes occurred, including some non-trivial breaking changes -

  • Applied BFG history rewrite to repo in order to get pack size under 2GB (now around 550MB).
  • Renamed projects to proper title names.
  • Template project name normalization.
  • Template default name change.
  • Added RepeatLimitOpt to play song commands.
  • Added missing repeat limit params.
  • Removed special optimization semantics from objEq / ===.
  • Added model change notification APIs.
  • Exposed general notify model change.
  • Renamed Exists, Selected, and Idling with Get prefix to match the rest of engine API
  • Removed superfluous GetChangeEvent methods.
  • Repeat limit before volume.
  • Preserving desktop resolution when in full screen.
  • Got rid of some computed constants.
  • Applied missing SDL_WINDOW_FULLSCREEN_DESKTOP.
  • Manually capitalized certain keyboard enums from SDL.
  • App.config as last project artifact.
  • Rename ray functions to ray3 and added ray2 functions.
  • Replaced external archive over 50MB with patch diffs.
  • Implemented more sophisticated restore point functionality in Gaia.
  • Changed volume of default engine sound.
  • Fixed physics reporting of 3D angular velocity on kinematic characters.
  • Fixed nav 3d angular velocity.
  • World.runPlus fn for more granular control of overall engine.
  • Added ability for assemblies to be resolved at plugin site.
  • Fixed #821
  • Implemented Capture Mode in Gaia (F12)
  • Added DEBUG symbol to Gaia fsi session.
  • Fixed use of project namespace with spaces and silently passing if stripped namespace doesn't exist (fixed regressed Gaia F# eval feature).

Full Changelog: v15.6.0...v15.7.0

Minor engine API extensions.

12 Jun 02:11
Compare
Choose a tag to compare
  • Added model symbol to fallback model functions.
  • Added time representation note in Empty template.
  • Improved Breakout physics.
  • Added Dot and Cross as member functions.
  • More vector conversion properties.
  • Passing epsilon into eq approx fns.
  • Removed explicit app config settings that might confuse end-users.
  • Bunch of OmniBlade changes preparing for Steam release.

Full Changelog: v15.5.0...v15.6.0

Critical engine bug fix.

07 Jun 03:44
Compare
Choose a tag to compare

There were three bugs that surfaced, one of which was considered major. The first was an incorrect definition of Box2.ContainsExclusive which bugged quadtree behavior for entities on node borders. The second bug was MMCC entity recreation not getting triggered when dispatcher type on a given entity changed. The third bug was an editor exception in Gaia. These have all been fixed in this release.

Additional changes -

  • Revert 5be7d51
  • Added Initial mode to Empty template.
  • Removed unused simulant in Game template.
  • Require group always selected in Gaia.
  • More explicit fallback model representation.
  • BO demo simplification.
  • Made Breakout easier to present and added Score.

Full Changelog: v15.4.0...v15.5.0

New Empty Nu template, editor stability fixes and API extensions.

03 Jun 23:44
Compare
Choose a tag to compare

In this release we've -

  • Added 2d imgui drawing API.
  • Internalized content sync functions to reduce module surface area.
  • Called Edit for viewports and context for non-entity simulants in Gaia.
  • Changed keyed value store to use string as key exclusively.
  • Added keyed value change events.
  • Updated Aether Physics nuget package.
  • Fixed potential editor crash when focused on property of type from old code via undo of code reload.

Beyond this, there were a ton of changes to the OmniBlade demo program to get it in shape for the upcoming Steam release.

Engine Fixes!

14 May 02:10
Compare
Choose a tag to compare

Lots of fixes this time around as we attempt to maximize stability engine and API across all supported platforms -

  • Fixed 83224e8
  • Normalized screen transition timing code.
  • Fixed dd3b581
  • Better anisotropic filter coding and now checking for related extension explicitly.
  • Downgraded sdl libs needed for linux install.
  • Fixed tile collision bugs.
  • Updated scripts that fix 94c4d8e
  • Moved Nu collections into Prime.
  • Changed Gaia title bar name (was always MyGame, which was usually wrong).
  • Fixed snapshot sound volume default.
  • Removed what I think it an unintended call to imGuiPostProcess.
  • Made constants of volume defaults.
  • Fixed 8e062b6.