Skip to content

Releases: FlaxEngine/FlaxEngine

Update 1.8.6512.2

22 May 21:27
Compare
Choose a tag to compare

Blog post: https://flaxengine.com/blog/flax-1-8-2-released/

Release notes: https://docs.flaxengine.com/manual/release-notes/1_8/index.html

Discussion: https://forum.flaxengine.com/t/flax-engine-update-1-8-6512-2/1738

Changelog:

  • Add watermark attribute to add watermark to string fields in editor
  • Add removing selected blend space point with Delete key
  • Add margin to item tree in toolbox
  • Add shift scroll for panels and textbox
  • Add control transform to General group for better usability
  • Add trimming content item name and actor name on rename to prevent dangling whitespace
  • Add drag drop controls to Actor Toolbox
  • Add font and case options to Label and Textbox
  • Add color properties to Panel's scroll bars
  • Add width padding for tooltip text
  • Add tree node guidelines for Editor hierarchies
  • Add checkerboard background to color picker dialog color
  • Add support for adding script via drag drop on actor
  • Add minor improvements to UI Editor widget drawing
  • Add better error messages to NetworkReplicator::SetObjectOwnership for incorrect usage
  • Add layer masking for PostFxVolume against Camera's RenderLayersMask
  • Add OnStaticFlagsChanged to Actor
  • Add Gameplay Global combobox to default to the last type of variable
  • Add For Distribution to be enabled by default in Release builds
  • Add Windows on Arm build support for PhysX and NvCloth libs
  • Add test case of nested types in scripting
  • Add option to move all selected UI Controls while holding Shift key
  • Optimize navmesh building and reduce scene lock time
  • Rename Options to Editor Options and move under Edit menu
  • Refactor Color.FromRGBA and add matching old logic Color.FromARGB
  • Fix looping root motion
  • Fix error when using undo after removing Multi Blend node
  • Fix odd offset between 1st property and property label
  • Fix empty layers to be ignored by LayerMask Editor
  • Fix TreeNode not rendering all nodes properly with invisible children
  • Fix editor to focus prefab window on item spawn
  • Fix textbox caret not showing on empty string
  • Fix caret location on text box with no text
  • Fix drawing an extra character with Render2D.DrawText
  • Fix actor type drag spawn to correctly assign parent
  • Fix editor game window focus while cursor is not visible
  • Fix smooth step visject node width
  • Fix color picker dialog
  • Fix item search to clear on select prefab
  • Fix incorrect async methods used as RPCs (not supported now)
  • Fix ReadOnly attribute handling in collection editors
  • Fix UI navigation when using multiple canvases
  • Fix TAA in editors debug view modes
  • Fix compilation warnings when using 64-bit coords
  • Fix compilation when using non-strongly typed enum as default value
  • Fix Editor not launching if custom interface fonts are missing
  • Fix creating virtual terrain collision of actor that is not in a game
  • Fix missing camera model preview in Prefab viewport
  • Fix missing curve initialization when loading from json
  • Fix windows cursor to force show or hide based on cursor hidden value
  • Fix bindings code generation for nested types
  • Fix deadlock between content storage and asset that is being updated during load
  • Fix crash when using scripting object as interface implementation in object property displayed in Editor
  • Fix crash when unboxing of array type Variant
  • Fix crash when Visual Script event binding instance is invalid

Update 1.8.6511.1

27 Apr 12:00
Compare
Choose a tag to compare

Blog post: https://flaxengine.com/blog/flax-1-8-1-released/

Release notes: https://docs.flaxengine.com/manual/release-notes/1_8/index.html

Discussion: https://forum.flaxengine.com/t/flax-engine-update-1-8-6511-1/1709/2

Changelog:

  • Add support for importing .exr textures
  • Add logging and cleaning up leaked scene objects after play mode in Editor
  • Add trading minor optimizations in MSVC Development builds for compile speed
  • Add automatic restoring Anim Event tracks when reimporting animation asset
  • Add ShowDebugDrawSkeleton to preview Animated Model skeleton via Debug Draw
  • Add toggle orthographic view hotkey (Numpad Decimal)
  • Add locking actor selection in properties and prefab windows
  • Add displaying all actors in Actor toolbox search tab when no filter is applied
  • Add better anim events visuals in timeline editor
  • Add sorting search actor toolbox
  • Add Tags.Find utility
  • Add statically disabled tessellation on macOS/iOS
  • Add statically disabled geometry shaders on mobile
  • Add CPU profiler events for UI drawing
  • Add setter for crword agent position and velocity
  • Add option for using Address and Thread sanitizers
  • Add hiding TAA settings if TAA isn't enabled
  • Add Time.Synchronize to stabilize engine loop
  • Add Engine::UpdateCount to sync gameplay logic updates with game loop rather than draw frames
  • Add improved size of Multi Blend nodes
  • Add undo for Multi Blend points moving
  • Add context menu to Multi Blend node points
  • Add tooltips to Multi Blend points
  • Add Ctrl to snap points to grid in Multi Blend editor
  • Add improved visuals of points in Multi Blend
  • Add grid labels drawing to Multi Blend
  • Add live debugging of blend position in Multi Blend
  • Add add/remove buttons to Multi Blend
  • Add better const correctness in Mesh and SkinnedMesh api
  • Add Write/Read methods to NetworkStream for INetworkSerializable sending in C# api
  • Add more useful orientation settings to Android
  • Add exported property to activity element in AndroidManifest.xml template
  • Add basic Android version settings to editor
  • Optimize DrawBatch for faster sorting
  • Optimize draw calls sorting in opaque passes
  • Optimize TreeNode rendering
  • Optimize ActorTreeNode reparent when it's not collapsed but one of the parents is
  • Optimize Anim Graph node size and remove limit of max 64 state transitions
  • Refactor engine loop to have better sync between game update, physics and drawing
  • Refactor UpdateGraph to run after engine services and game scripts
  • Refactor Visject Graph nodes data for unlimited size
  • Refactor Multi Blend nodes to support up to 255 blend points
  • Update DirectXTex to mar2024
  • Change default collision type to ConvexMesh from TriangleMesh
  • Fix default diffuse color value when importing material
  • Fix Editor viewport aspect ratio scaling to be removed from camera mouse movement
  • Fix numpad enter to normal enter on Linux
  • Fix Two Bone IK to have correct bone roll
  • Fix blend shapes transformation applying
  • Fix blend shapes normals usage
  • Fix blending nested animations to properly handle it per-node
  • Fix nested animations sampling
  • Fix animated model skinning precision issues
  • Fix errors on using spline editor in Prefab window
  • Fix error when applying prefab changes with Spline
  • Fix deselecting actors when using camera orbiting in viewport after releasing LMB when Alt is up
  • Fix text underline being in wrong spot on different DPIs
  • Fix particle emitter creation from templates
  • Fix various bugs in code detected with address/thread sanitizers
  • Fix EyeAdaptation bug to flash on play mode start in Editor when time gets reset
  • Fix heightfield not saved when editing splatmap of terrain with physical materials in use
  • Fix editor toolstrip by moving game cooking and building to the right for less missclicks
  • Fix panning Visject Surface with middle mouse button (right button does it) to prevent missed connections removals
  • Fix Debug Log scrolling when many entries are added at once
  • Fix cloning value utility for object references
  • Fix missing UI Control preview when changing UI Widget type
  • Fix surface node context menu to not show when moving surface
  • Fix margins issues in context menus
  • Fix FindRandomPointAroundCircle to always find a valid point on a NavMesh in the radius
  • Fix NavMesh to initialize earlier and prevent issues with crowd agents on a scene
  • Fix .NET runtime validity checks with daily runtime builds
  • Fix CachedAttributeGetter holding references to collectible types
  • Fix to release Prefab assets when unloading Scripting service
  • Fix freeze when selecting ModelPrefab referencing a removed asset
  • Fix terrain heightmap to use higher range format when decompressed
  • Fix bug in ValueContainer.HasDifferentTypes causing incorrect editor setup
  • Fix model tool importing to use temp file only for Assimp
  • Fix deadlock when parsing invalid HTML text in RichTextBox
  • Fix crash on prefab preview with lightmap in use
  • Fix crash when accessing physics objects state in OnLateFixedUpdate
  • Fix crash when resizing window on Vulkan
  • Fix crash when removing Anim Event visual script that is used in opened Animation timeline
  • Fix crash when using old Blend with Mask node in Anim Graph
  • Fix crash when playing uninitialized audio source
  • Fix crash when reimporting animation with translation set

Update 1.8.6510

29 Mar 20:54
Compare
Choose a tag to compare

Blog post: https://flaxengine.com/blog/flax-1-8-released/

Release notes: https://docs.flaxengine.com/manual/release-notes/1_8/index.html

Discussion: https://forum.flaxengine.com/t/flax-engine-update-1-8-6510/1646

Changelog:

  • Add red tint highlight for CPU profiler table entries based on event duration
  • Add selecting actor spawned in the prefab window
  • Add color box to ColorTrackBall
  • Add events tracing feature to Animated Model for animation playback insights
  • Add displaying playback position of animation in Anim Graph window
  • Add SourceState and DestinationState modes to State Machine interruption modes in Anim Graph
  • Add new collection editing UI
  • Add option to enable Depth Test on cloth painting debug preview (enabled by default)
  • Add sub-groups expanded state restoring in Properties window
  • Add directions to Slider control
  • Add IsValidIndex to Array
  • Add Vehicle Physics Improvements (new options, tank vehicles)
  • Add Create parent for selected actors context menu button
  • Add hiding Actor's Transform for UIControlActor
  • Add RayCast utility to UI controls
  • Add MinCount and MaxCount to Collection attribute
  • Add require script and actor attributes
  • Add option to toggle focus game window on play inside context menu
  • Add reload project menu button
  • Add support for multiple physical materials in terrain - one for each painted layer
  • Add Material to RayCastHit for surface detection logic
  • Add API for runtime Terrain editing and expose Terrain patch and chunk to API
  • Add support for structure and script types in JsonAsset
  • Add improved Visject context menu items search
  • Add vertex snapping (gizmo with V key pressed)
  • Add support for importing material emissive and roughness from fbx file
  • Add support for using pointer in MarshalAs in scripting types
  • Add quick creation of scripts via * Add script button on Actor
  • Add ScriptingEnum::ToStringFlags for printing flag enums into readable text
  • Add font fallback for text rendering
  • Add spline editing improvements
  • Add focus selection lock input to scene tree window
  • Add SnapToGrid to vectors
  • Add NextUnitCircleVector2 extension method
  • Add the option to deselect all in Editor
  • Add rubberband-style selection in a Content View
  • Add the ability to quickly change window modes for the game window
  • Add improved category drop panel to look similar to other panels in scripts adding popup
  • Add parameter to change arrow cap size for Debug Draw
  • Add DrawAxisFromDirection and DrawRay with Ray structure for Debug Draw
  • Add Actor.GetPrefabRoot()
  • Add prefab link breaking to preserve nested prefabs links
  • Add skipping showing and applying changes to prefab root actor transform via Level
  • Add activeOnly parameter to Level::GetActors
  • Add parameter to finds only an active actor from the scenes
  • Add breaking node connection under mouse with middle button click
  • Add MoveFileToRecycleBin on Linux
  • Add support for VS 2022 v17.10 / MSVC 14.4x toolset
  • Add check to prevent incorrect NavCrowd::RemoveAgent usage
  • Add clamping multiblend value to the range set
  • Add partition mode and cascade spacing for Directional Light shadows
  • Add saving docking state for custom editor windows
  • Add Guid picker to support asset refs
  • Add AnimationRootMotionFlags to configure root motion component extraction
  • Add RootMotionMode to support extracting root motion from animated skeleton pose center of mass
  • Add skeleton mask asset parameter to Blend With Mask anim node
  • Add remaining clang options for Apple and Unix toolchains
  • Add initial ASTC pixel format support
  • Add ‘astc’ encoder lib
  • Add BehaviorTreeKnowledgeBooleanDecorator
  • Add automatic last dangling separator removal in context menu
  • Add better grid gizmo rendering in Editor viewport
  • Add save input and undo redo in Editor Options
  • Add support for animating LocalizedString value in Scene Animation
  • Add UI Control gizmo for editing UIs (in Prefab and Game windows)
  • Add resizing UI Control via widgets
  • Add cursor change and showing timeline edge duration when moving it
  • Add UI Widget to new asset creation for quick UI setup
  • Add physical units support to input fields in Editor
  • Add InputAxis and InputEvent integration with stdlib features
  • Add manual chunks loading before Binary Asset load in case content streaming flushed them out
  • Add changes to default post process settings
  • Add focusing search bar in content view and output textbox
  • Add normal logs for deps build subcommands
  • Add support for storing custom platform tools data in Game Cooker cache
  • Add auto focus to Editor Window when nothing clicked inside it
  • Add initial support for Precompiled Header Files (PCH) in MSVC compilation
  • Add support for building engine target as shared library on all platforms
  • Add Stopwatch for accurate duration measuring
  • Add OutputName to Build Settings for game output exe/package renaming
  • Add better win32 resource file injection to be done during linker call
  • Add printing stack trace even when not using log file
  • Add better stack trace reporting in crashes when running on non-Windows platforms
  • Add support for using Tracy profiler on Switch
  • Add removing dotnet libs for iterative rebuilds when AOT cache gets cleared
  • Add custom editor for buttons that allow listening for them inside the editor
  • Add support for multiple VisibleIf attributes
  • Add hold arrow key in tree to continuously scroll actors
  • Add drag drop for actor script items into scenes and prefabs
  • Add ability to use custom file proxy in Editor plugin for file type
  • Add an option to skip existing materials when reimporting
  • Add Start Time option for Audio Source actor
  • Add support for manually dirtying objects that use ReplicationFPS < 0 for manual-only replication
  • Add sanity check to prevent crashes when Animated Model has NaN in skeleton pose
  • Add support for stencil buffer on Vulkan and D3D11/D3D12
  • Add clickable parsing errors in build tool
  • Optimize Matrix decomposition to use Matrix3x3 for rotation
  • Optimize render targets freeing on the start of the game
  • Optimize UI Control serialization
  • Update Nintendo Switch support to he latest .NET 8 with Mono SGen
  • Update dotnet fork to the latest .NET 8.0.1
  • Refactor win32 exe icon updating
  • Refactor ThreadLocal when running on hardware with more cores than PLATFORM_THREADS_LIMIT
  • Refactor UI Control actor active state mirroring in UI via Visible properties rather than unlinked from parent
  • Refactor UI Control linkage in the prefab previews to prevent bugs
  • Refactor undo logic for actors reparenting in Editor
  • Refactor Editor UI style for selection and drag drop interactions
  • Refactor collider shape raycasting utilities to the PhysicsColliderActor class
  • Refactor PhysicalMaterial usage to utilize JsonAssetReference struct
  • Refactor 3D audio implementation in XAudio2 backend to match OpenAL
  • Refactor Visject Surface attributes data storage to use JsonSerializer instead of deprecated BinaryFormatter
  • Refactor engine systems to use platform time seconds rather than date time
  • Remove unused SaveTime/LoadTime from Scene
  • Remove unused 'PixelFormatExtensions::ComputeScanlineCount'
  • Rename Navigation.ProjectPoint into Navigation.FindClosestPoint to have consistent API naming
  • Fix Animated Model slot animations clearing on start
  • Fix fog to be usable for transparent materials (if enabled)
  • Fix auto-docking windows on open when system DPI scale is not 1
  • Fix missing asset update when dependant asset gets saved in Editor
  • Fix unlink usag on Unix systems to properly use returned value
  • Fix PostFx Materials blending for duplicated entries
  • Fix stopping slot animations and playing the same frame
  • Fix unpacking Variant structure if input value is a scalar
  • Fix missing default value for new Visject method parameter if method uses Vector param
  • Fix shader source code preview in editor
  • Fix FileSystem::CopyDirectory not failing when source folder is missing
  • Fix mouse events handling over window title bar on Windows
  • Fix HeaderAttribute usage with default values
  • Fix invalid log timing when log file is disabled in cooked build
  • Fix unreliable RPC calls to silently drop if we failed to find an object
  • Fix for editor view's cached CameraNearPlaneValue getting overwritten
  • Fix Dropdown panel to scale correctly
  • Fix ContextMenu short keys as needed to accommodate for scrollbar when visible
  • Fix combobox window position based on what direction it opens
  • Fix AlwaysShowScrollbars to update visibility state of the scroll bars
  • Fix drop location of multiple nodes to be vertical in Visject
  • Fix profiling hotkeys not working while profiler window is closed
  • Fix GPU profiler event percentage calculation and * Add tint highlight to spot slow entries
  • Fix opening projects with PostFx material assigned in Graphics Settings
  • Fix Plugins Window layout in UI
  • Fix Plugin Project creation when the user types in symbols
  • Fix new asset naming to always validate filename
  • Fix sprite atlas limit on 4096
  • Fix invalid shader codegen when using ddx/ddy in material vertex shader
  • Fix terrain painting when using multiple layers
  • Fix issue with CharacterController initialization when using Center offset
  • Fix copy/paste for UI brushes
  • Fix UI Control selection bounds drawing to handle rotations
  • Fix NextUnitVector2 to properly produce a vector within a unit circle
  • Fix asset thumbnails refresh to support multi-selection
  • Fix focusing editor camera on very large objects
  • Fix duplicating array values in Editor
  • Fix various Editor input shortcuts binding
  • Fix Slider deserialization if value range is inval...
Read more

Update 1.7.6407.2

20 Dec 21:17
Compare
Choose a tag to compare

Blog post: https://flaxengine.com/blog/flax-1-7-2-released/

Release notes: https://docs.flaxengine.com/manual/release-notes/1_7/index.html

Discussion: https://forum.flaxengine.com/t/flax-engine-update-1-7-6407-2/1533

Changelog:

  • Add invert green channel option to texture tool
  • Add various .NET and VSCode intellisense fixes
  • Add new icon for macOS
  • Add automatic code modules references adding when cloning plugin project
  • Add saved colors to color picker
  • Add infinite loop to behavior tree Loop decorator
  • Add option to import model file as Prefab
  • Add ModelPrefab to imported model prefab for reimporting functionality
  • Add various improvements to models importing code
  • Add support for loading prefab instance if the root was changed or deleted
  • Add support for displaying and reverting array values to prefab value in properties panel
  • Add removing thumbnails for deleted assets
  • Add Half to Vector2/Vector4
  • Add Where, Select and RemoveAll to ArrayExtensions
  • Add SloppyOptimization disabledby default and lower default LOD Target Error value for model auto-LOD
  • Add better ScaleWithResolution defaults in Canvas Scaler
  • Add Async to anim events (false by default) to delay events execution into main thread and prevent multi-threading issues by default
  • Add PixelFormatExtensions::ComputeBlockSize
  • Add ability to change default Android screen orientation
  • Add better Visual Script debugger tooltips display
  • Add mouse tracking on Linux
  • Add context menu to load additional scenes quickly
  • Add auto-sizing for box colliders when they are added to the scene
  • Update meshoptimizer to v0.20
  • Optimize time service update math code
  • Remove old warnings about invalid model instance buffer
  • Replace ImportedModelData with ModelData for model importing
  • Refactor INetworkDriver::PopEvent to use network event as output parameter rather than raw pointer
  • Refactor objects splitting in models importing to be handled by ModelTool not the importer code itself
  • Refactor prefab's objectsCache to be explicitly SceneObject values
  • Refactor memory allocators to use dedicated path when moving collection data that is not blittable
  • Refactor Visual Script debugger apis to use bindings generator
  • Refactor Physics Colliders to use auto serialization
  • Fix ability in editor to delete content and source folders
  • Fix tooltip location check when wraps over the screen
  • Fix UI Dropdown size issue with large font
  • Fix selecting prefab object when object from prefab is already selected
  • Fix constant value sliders in material graphs to not be used due to shader compilations
  • Fix deadlock in NetworkManager when network peer returns invalid event type
  • Fix zero clamp on hinge velocity to allow negative values
  • Fix __cplusplus macro on MSVC and add logging C++ version used during compilation
  • Fix missing channel masking in material Scene Texture node
  • Fix missing surface graph edited flag after removing anim graph state transition
  • Fix missing output parameters conversion when calling interface implementation in scripting
  • Fix selecting objects/gizmos with high far plane
  • Fix blending additive animations
  • Fix MissingScript to be added only when object type exists (skip for prefab instances)
  • Fix not showing primary context menu on Visject surface if child control handled input event
  • Fix layout of editor updating when adding a script to multiple actors in a scene
  • Fix incorrect empty meshes/LODs removal after auto-lod generation
  • Fix invalid codegen for array reference passed as output parameter in scripting interface method
  • Fix incorrect pointer marshalling from Variant to managed runtime
  • Fix model asset thumbnail if mesh is not centered around origin
  • Fix prefab window performance with large hierarchies
  • Fix not supported dragging prefab actors between windows
  • Fix spawned prefab name after drag&drop into prefab window
  • Fix invalid BT node decorator linkage after removing it
  • Fix invalid tracy events from C# profiling api when profiler gets connected mid-event
  • Fix .NET runtime packaging with installed .NET 8 SDK
  • Fix Visual Studio build issues with C# projects when engine path has spaces
  • Fix Json serialzier regression after hot-reload
  • Fix Swap for non-copyable types
  • Fix swapping core collections
  • Fix project initialization with -new if it already exists
  • Fix calling script OnDestroy when removing actors or scripts from the scene
  • Fix several actor types performing default spawn behavior when spawning from a prefab
  • Fix docking windows on Linux
  • Fix importing .dds files as-isif the compressed image is too small for the engine (block size validation)
  • Fix dark outline around Screen Space Reflections alpha blending area
  • Fix default prefab instance not taking into account root position
  • Fix plugin clone and loading to wait for git process end properly
  • Fix managed method delegate creation to be thread-safe
  • Fix typo in Tag comparison function
  • Fix render target pool over-allocation when changing render resolution frequently
  • Fix deadlock in Asset.WaitForLoaded when loading task hangs in the loading queue for a main thread sync
  • Fix deadlock when loading block-compressed texture that is smaller than block size
  • Fix deadlock in asset thumbnails rendering queue when texture streaming fails
  • Fix various crashes
  • Fix crash in UI prefab changes apply when reparenting controls
  • Fix crash when boxing native non-POD structure into managed format
  • Fix crash when updating prefabs from async thread
  • Fix crash when spawning actor from asyc thread into the SceneObject
  • Fix crash when unloading texture that has active streaming tasks
  • Fix crash when resizing navmesh capacity with crowd created for that navmesh
  • Fix crash when drawing terrain without cached neighbor chunks
  • Fix crash in mesh LOD generator if generated mesh has more indices
  • Fix crash in Content Storage async job when someone is using file storage and access cannot be freed

Update 1.7.6406.1

25 Nov 21:45
Compare
Choose a tag to compare

Blog post: https://flaxengine.com/blog/flax-1-7-1-released/

Release notes: https://docs.flaxengine.com/manual/release-notes/1_7/index.html

Discussion: https://forum.flaxengine.com/t/flax-engine-update-1-7-6406-1/1482

Changelog:

  • Add SetThreadAffinityMask and SetThreadPriority and thread name for Apple platforms
  • Add storing shader asset includes paths in compact format for portability
  • Add unit test for HashSet and Dictionary collection types
  • Add debug drawing contact offset for selected collider
  • Add custom model picker in material preview
  • Add CustomScenes feature to draw a fixed set of scenes within SceneRenderTask
  • Add minor improvements to reference properties
  • Add more alternative titles to Surface nodes
  • Add order and ordering options to comments in Surface graph
  • Add SortScore to Visject node archetypes and use it to favor method overrides in Visual Script
  • Add Convert to Parameter for Surface constant nodes
  • Add support for unlimited window size if MaximumSize is set to zero
  • Add spawning UI Canvas Scaler when adding new UI Canvas
  • Add handling ViewLayersMask from camera when rendering UI Canvas
  • Add copying old UI Control data to new UI Control when changing type
  • Add option to limit number of items in Dropdown popup
  • Add optional scrollbar to Dropdown popup list
  • Add immediate game viewport sync after aspect ratio change in Editor
  • Add new light theme to Editor UI
  • Add better formatting for automatic tooltips in Editor from xml comments
  • Add input bindings for game window mouse unlock and toggle fullscreen
  • Add button to reload scenes via Editor menu
  • Add short delay before auto-selecting editor tab on drag over header
  • Add rebuilding navigation mesh after apply changes in Navigation asset
  • Add dragging items support into lists and arrays in the Properties window
  • Add CalculateBoneOffsetMatrices option to fix some animated model skeletons rendering
  • Add GetRotationFromTo and FindBetween utilities to C# Quaternion API
  • Add GetSplineSegmentLength to get spline segment length
  • Add new material nodes: Rectangle Mask, FWidth, and AA Step
  • Add default value for material Sphere Mask node to create blob gradient around UV center
  • Add SetNodeTransform to Animated Model
  • Add waking up rigidbodies when changing kinematic state
  • Add name to Android main thread
  • Add limits to cloth brush values
  • Add support for including global configs in engine configuration options
  • Add .NET SDK version 7 as forced to be used during game cooking (dotnet8 can be sued with Editor)
  • Add clearing BT memory in non-release builds to make issues spotting easier
  • Add better errors logging to BT nodes in case of issues
  • Add soft check for null managed object value for unboxing
  • Add Style property getter to FontAsset to access its style flags
  • Add engine version in Editor main window title
  • Add security lockers for managed typeinfo access
  • Add git submodule init to git project cloning
  • Add support for getter-only properties in blackboard selector access
  • Add automatic show of skeleton when entering skeleton tab in skinned model editor
  • Add extended buttons support for Linux
  • Add XDG_DATA_HOME env var usage the approved default as per specification on Linux
  • Add GetStackFrames and IsDebuggerPresent on Linux
  • Add GetStackFrames on Android
  • Add decoding stack trace function names on Apple platforms
  • Add always logging unhandled C# exception
  • Add better support for .NET SDK and .NET 8
  • Add -dotnet=ver command arg to Flax.Build to specify .NET SDK version to use for build
  • Add better project files generation for Rider
  • Optimize Control.UpdateTransform for faster UI math
  • Improve Cloth usage
  • Use soft asset ref to graphics settings
  • Update Tracy Profiler to 0.10
  • Continue Delegate refactor to use single memory allocation and atomic operations for data access
  • Remove SHADOW_MAPS_FORMAT and support fallback formats for shadow maps
  • Remove actor layer auto apply via message box dialog during Play Mode
  • Remove unsupported material parameter types Quaternion and Transform
  • Reduce LargeWorlds::ChunkSize to 8192
  • Refactor GPUResourceProperty to cleanup code
  • Refactor main editor viewport and prefab viewport to share dragging handling code
  • Refactor default ContactOffset for Collider to be 2 (keep 10 for CharacterController)
  • Refactor HashSet and Dictionary collections capacity to handle rehashing when too many elements were deleted
  • Fix DeepClone() when used on object of different runtime type
  • Fix CultureInfo to handle missing country code and fallback to outer language code
  • Fix various typos and wording in docs
  • Fix incorrect tabs selection handling when tab gets removed
  • Fix various cases of closing window tabs when using Dock Windows in Editor
  • Fix color picker dialog not staying inside the current screen
  • Fix custom editor layout rebuilding when it has more editors in use
  • Fix error during new json asset creation via ContentContextMenu if the class is missing empty constructor
  • Fix various cases of closing window tabs when using Dock Windows in Editor
  • Fix Output Log window to scroll log on startup properly
  • Fix CollectionEditor to properly support editing multiple arrays
  • Fix Dropdown popup to properly scale when using Canvas Scaler
  • Fix common Editor tooltips with hardcoded keybindings
  • Fix color editing control to properly handle mouse event
  • Fix anim slot from playing animations more than 1 time based on speed
  • Fix NetworkTransform to properly reject local simulation deltas on incoming authoritative transform data
  • Fix BehaviorTree node UI after adding decorator that was already there
  • Fix BitArray::SetAll() when the item is not multiple of 8
  • Fix some Center geometry import issues and add option to be able to shift mesh to local origin
  • Fix generic types including to be recursive in C++ bindings codegen
  • Fix content storage usage with relative paths
  • Fix issue involving stale scripting assemblies in FlaxEngine.Json dynamic type resolution
  • Fix incorrect directional light shadows influence on secondary render views
  • Fix incorrect spline length calculation if first point is not at spline origin
  • Fix missing interfaces support in Actor::FindScript
  • Fix missing initialization of scene objects added from prefab
  • Fix marking scene as dirty when creating prefab from existing actor
  • Fix unpacking Float3 and other inbuilt Variant types via Unpack node in Visual Script
  • Fix issue with asset loading to be properly canceled when reimporting file
  • Fix loading delay-loaded-dll on Windows when using project plugin with native dependencies
  • Fix bug when spawning new prefab objects during scene load due to regression in async scene init
  • Fix memory leak while doing drag&drop with Debug Draw in use
  • Fix Visual Script parameter setter node to accept multiple input flows
  • Fix scenes reload feature to check if can do it, properly use async in play mode and ask for save if scene is modified
  • Fix missing script replacement if data has object id that doesn't match current parent
  • Fix Mono GC threads suspend to not deadlock when attaching native threads to managed runtime
  • Fix Steam AppId if settings asset is missing and force keep it in sync with steam_appid.txt file (Steam Online Platform)
  • Fix PostFx settings in Graphics Settings to be only used when checked as override
  • Fix BT logic flow when start/stopping behavior
  • Fix deadlock regression when saving Visual Script in Editor with active instance objects
  • Fix deadlock in editor when using snap to the group with actor that has empty bounds
  • Fix Win32CriticalSection to use spin count of 4000 instead of just 100
  • Fix crashes in various dictionary usages caused by duplicated keys
  • Fix crash when creating empty cloth
  • Fix crash when trying to build navmesh with null scene
  • Fix crash on negative collection capacity due to int32 maximum value limit
  • Fix crash when not clearing Online Platform in Editor before hot-reload
  • Fix crash when rigidbody gets deleted during physical collision
  • Fix crash on editor startup without code editor selected
  • Fix crash on hot-reload in Editor due to leftover scripting events in ScriptingEvents::EventsTable
  • Fix crash in Global Surface Atlas when dirty object is missing
  • Fix crash in Multi Blend 2D node in Anim Graph when using single animation on a triangle
  • Fix crash during asset loading due to potential threading issue when 2 threads load the same asset
  • Fix crash when debugging BT node state while tree is not running
  • Fix crash when readingBehaviorKnowledgeSelector value in C# when type doesn't match exactly

Update 1.7.6404

31 Oct 15:39
Compare
Choose a tag to compare

Blog post: https://flaxengine.com/blog/flax-1-7-released/

Release notes: https://docs.flaxengine.com/manual/release-notes/1_7/index.html

Discussion: https://forum.flaxengine.com/t/flax-engine-update-1-7-6404/1425

Changelog:

  • Add Cloth simulation with physics
  • Add cloth painting tools to Editor
  • Add async cloth simulation via Job System
  • Add distance-based and frustum-based culling to cloth
  • Add MeshReference to ModelInstanceActor for easy mesh referencing and its data access interface
  • Add MeshDeformation utility for generic meshes vertices morphing (eg. via Blend Shapes or Cloth)
  • Add NvCloth dependency
  • Add copy/move ctor/operator to Delegate
  • Add NavMeshRuntime to scripting api
  • Add MoveTowards to Vector3
  • Add stencil buffer support to GPUPipelineState
  • Add GPUContext::SetStencilRef to stencil reference value
  • Add DebugDraw::DrawLine with separate start/end colors
  • Add RenderTools::CalculateTangentFrame utility
  • Add ReadOnly to CustomEditorPresenter
  • Add Variant::AsStructure() to comparision operator between VariantType and ScriptingTypeHandle
  • Add SerializableScriptingObject for easier serialization of scripting objects in gameplay or content
  • Add IPresenterOwner to editor Custom Editor for more context and advanced interactions
  • Add GroupArchetype to Visject nodes spawn query check
  • Add SealedNodes feature to Visject Surface nodes
  • Add SurfaceNodeActions for more contextual surface nodes scripting
  • Add OnPasted to Visject Surface nodes for custom post-paste logic
  • Add Visject surface boxes and connections drawing customization via style
  • Add reroute node usage to Visject only if surface type allows it
  • Add AI module to engine
  • Add Behavior Trees editing and simulation
  • Add BehaviorKnowledgeSelector for Behavior Knowledge unified data access
  • Add GetDebugInfo to BT nodes for debugging
  • Add Decorators to Behavior Tree
  • Add concept of Goals to Behavior Knowledge
  • Add animation asset input box to animation sample node
  • Add HasDepthClip to GPU Device limits
  • Add foreach loop support to Span type
  • Add checking for Alt key pressed to expand/collapse all actors in hierarchy
  • Add IsDebuggerPresent for macOS and iOS platforms
  • Add better viewport camera settings and control
  • Add GetHash to Vector types
  • Add support for using Revision number in projects version
  • Add support for runtime running on GPU without Compute Shaders support
  • Add logging any XAudio2 backed errors
  • Add Spacebar to toggle play/pause in Audio Clip window
  • Add data sent/receive rate charts to the network profiler in Editor
  • Add outputting shader source code in Editor to text file when compilation fails for debugging
  • Add changing terrain brush size with Shift + Scroll
  • Add default font bundling (optional) and setup UI Style to match editor logic
  • Add preventing project file regeneration running while compiling scripts
  • Add delay to compiler and project generation after large file operations in Editor
  • Add SubAssetFolder to model import option to redirect auto-imported materials and textures location
  • Add excluding GPU swapchain present time from CPU draw time in profiling tool
  • Add showing full exception message in error message box for managed exceptions
  • Add popup to editor options closing to remind the user to save
  • Add more Editor input binding options
  • Add context-sensitive node search to Visject (surface editor)
  • Add automatic casting setup to Visual Script graph editor
  • Add several fixes to UI sizes when fonts are larger in Editor (eg. when using custom fonts)
  • Add customizable statusbar colors to Editor theme (change playmode status color to green)
  • Add View Layers options and Reset/Disable/Copy/Paste buttons editor viewport options
  • Add RenderFlags and RenderView to Camera actor properties
  • Add tooltips to move with the mouse cursor
  • Add automatic module creation via Content window context menu (in game Source folder)
  • Add using text Show in Finder on macOS in Editor
  • Add button to position camera to editor viewport view
  • Add showing only collision wireframe in CollisionDataWindow
  • Add Main Window to C# through Screen class
  • Add SmoothDamp for Vector2 and Vector3
  • Add BaseLinesGapScale configurable for Label
  • Add improved mouse wheel scrolling behavior in UI
  • Add handling double clicking in CheckBox, Button, Dropdown and DropPanel controls
  • Add the option to import materials for a model as instances of another material in the project
  • Add support for importing embedded textures via Assimp importer
  • Add auto-rename start when adding new actor in Scene Tree window
  • Add automatic game settings apply when saving json file in Editor
  • Add collision type to model importer
  • Add bending for connections around nodes in Visject graph editor
  • Add improvements to Clang compiler detection
  • Add better Visual Studio project Ids preservation when regenerating script project files
  • Add always generate additional Visual Studio solution files for all platforms (improves VSCode and Rider usage)
  • Add building C# bindings after generating engine project files
  • Add VS Code launch task for attaching native debugger
  • Add remapping non-native Editor VS build configurations to native configurations
  • Add Rider-specific user solution configuration files generation
  • Add thread-safety to various scripting methods
  • Add better missing script handling in Editor
  • Add Game Settings open button to Edit menu
  • Add input states to InputEvent and AxisChanged event to InputAxis
  • Add SelectionChanged public event for VisjectSurface and properly invoke it only when selection actually changes
  • Add ignoring types with CompilerGeneratedAttribute in Editor
  • Add ScriptingType to msvc natvis
  • Add GetColliders utility to RigidBody
  • Add allow using CustomValueContainer as readonly if setter action is null
  • Add MarshalAs tag to API structs/classes for custom marshaling via implicit casting
  • Add internal access level to Scripting API members (field, properties and functions)
  • Add support for accessing scripting properties via ManagedBinaryModule fields API
  • Add double-reference support for scripting function parameters to move value
  • Add Random::RandRange
  • Add spot light inner circle debug lines
  • Add light debug view flag to draw light shapes
  • Add grid scale to the editor viewport settings
  • Add quick Cook&Run button, Play in Editor actions, and customizable number of players setting
  • Add locked focus to Editor (Shift+F)
  • Add a generic version of AssetReferenceAttribute
  • Add NetworkReplicator::ResolveForeignObject
  • Add Object::DeleteObjectNow as Object.DestroyNow in scripting
  • Add ModelInstanceActor::GetMaterial to get actual material used to render certain entries
  • Add ModelInstanceActor::GetMaterialSlots
  • Add showing rendering material to model entries
  • Add improvements to various context menus in Editor
  • Add batch creating prefabs from multiple selected actors in the scene tree
  • Add scroll to selected asset/content item on asset picker select menu open
  • Add pasting at same level as selected actor parent node instead of under selected node
  • Add functionality to combine similar Debug Logs into a log with a count
  • Add params tag to API_PARAM for C# variadic parameters support
  • Add user defined analyzers/source generators support in Flax.Build
  • Add build option to change code optimization level in C# modules
  • Add default C# code optimization in Editor development builds
  • Add sealed tag to virtual functions in API bindings to block inheritance in C#/VS
  • Add common .NET SDK preprocessor definitions
  • Add skipping post processing when tonemapping and camera artifacts are disabled
  • Add HasBorder option to Button control
  • Add borderless window switch at runtime (Windows only for now)
  • Add ability to clean terrain patch caches
  • Add macOS message box with buttons
  • Add versions sorting to VulkanSDK selection on macOS
  • Add ignoring .DS_Store files in Content on macOS
  • Add FileSystemWatcher for macOS to track file changes in Editor
  • Add codesigning to macOS editor package binaries
  • Add control/command/option keys handling on macOS
  • Add shwoing Json Asset type on ToolStrip of Json Asset window
  • Add timeline position numbers and add to GUI
  • Add a way to reset an IBrush to null for default functionality in Editor
  • Add Method and Origin to ProgressBar for custom progress drawing
  • Add automated plugin project creation and Git cloning in Editor
  • Add tab breaks for window tabs
  • Add new look to Content items
  • Add sorting plugin projects in content tree
  • Add showing/hiding engine/plugin/misc/generated files in content tree and view
  • Add slider control to UI library
  • Add InputEvent and InputAxis editors with pickers
  • Add InputEvent for UICanvas navigation actions
  • Add shift + tab support in UI navigation
  • Add ctrl+backspace support to Text Box
  • Add more border options to several controls
  • Add MMB Panning to Visject Surface
  • Add highlighting when mouse is over slider thumb
  • Add new Spline editing tools for Editor
  • Add editor shortcuts usability when toolstrip or main menu controls are focused
  • Add support for editing WheeledVehicle wheels config at runtime without full physics state rebuild
  • Add support for editing WheeledVehicle engine/differential config at runtime without full physics state rebuild
  • Add remove tag method to actor
  • Add conditional profiling in Editor (run only when using Profiler window)
  • Add DebugDraw::DrawRay function
  • Add WindowBase::Resized delegate
  • Add using exact C# method profiler data for profiler events in overriden thunk method cal...
Read more

Update 1.6.6344

08 Jul 21:41
Compare
Choose a tag to compare

Release notes: https://docs.flaxengine.com/manual/release-notes/1_6/index.html

Discussion: https://forum.flaxengine.com/t/flax-engine-update-1-6-6344/1041

Changelog:

  • Add .NET 7 support with C# 11 and the latest DotNet Runtime (new JIT and GC)
  • Add Platform.BuildTargetArchitecture to build tool
  • Add support for mixed scripts debugging in Visual Studio (both C++ and .Net Core)
  • Add logging native exception stack trace on Windows when debugger is attached before going back to the crash location
  • Add unit test to verify LibraryImport attributes usage for proper bindings
  • Add PhysX 5
  • Add Physics Statistics and profiler
  • Add FileSystem::GetDirectorySize
  • Add option Skip .NET Runtime Packaging to skip backing C# class library with cooked game (to use system-installed if possible)
  • Add printing output C# files size in game cooker
  • Add C# class library optimization for normal game builds (without AOT)
  • Add multi-threading to AOT compilation (3x faster builds for Consoles and iOS)
  • Add support for handling network events immediately in NetworkLagDriver when Lag is set to zero
  • Add Any State to Anim Graph state machines
  • Add Interruption options to State Machine transition
  • Add skeleton node or bone copy context menu in Editor
  • Add debug drawing selected skeleton node in Skinned Model window viewport
  • Add skeleton nodes names debug drawing in Editor preview when enabled
  • Add skeleton retargeting to play animations on different skeletons
  • Add scale parameter to DebugDraw text drawing to rescale text without reducing font size
  • Add support for importing skeleton-only as Skinned Model (eg. from animation file to have skeleton for retargeting)
  • Add support for macOS arm64 (M1/M2 chips)
  • Add logging missing asset type on failed load
  • Add Output/ folder to .gitignore
  • Add TaskGraphSystem.RemoveDependency and automatically cleanup dependencies on system destroy
  • Add better looking Anim Graph state machines nodes
  • Add support for using INetworkSerializable on custom structure in C++ for networking
  • Add support for spawning multiple objects over network within a single group that is not from Prefabs
  • Add Network Replication Hierarchy for robust control over replication in multiplayer games
  • Add network error log for missing network object when accessing ownership
  • Add CPU profiler events to various networking functions
  • Add network replication hierarchy system to Arizona Framework with settings and scripting features
  • Add NetworkReplicator::HasObject
  • Add network debugging panel to actors and scripts
  • Add INetworkObject::OnNetworkSync
  • Add default empty implementations to INetworkObject for easier suage in game scripting
  • Add SoftTypeReference<T> to scripting API for lazy-load type references (via typename)
  • Add input action phases
  • Add Camera.UnprojectPoint method
  • Add play, pause, and stop functions to the Particle Effect
  • Add better tooltips for assets in Content window
  • Add better organization to the style groups of UI controls
  • Add better UI for linking scale values in a transform more intuitive
  • Add Pivot Relative UI Sizing to controls
  • Add support for editing dictionary keys that are structures
  • Add asset reload option via context menu in Editor
  • Add search actors by parent tag (Level.FindActorsByParentTag)
  • Add FindActor by type and name (to actor and level)
  • Add CustomArgs to compile and link environment in build tool for customization
  • Add preferring high-performance discrete GPUs when enumerating adapters
  • Add Utilities::HertzToText via new Utilities::UnitsToText
  • Add LineCast and LineCastAll to physics scripting
  • Add default new script name to MyScript and avoid namign it as Script to make it easier for use
  • Add Platform::GetMousePosition/WindowsPlatform::SetMousePosition for unified access to screen-space mouse position on all platforms
  • Add eyedropper color picker for Editor on Windows and Linux
  • Add better usability when duplicating points of a spline
  • Add various Input class delegates to the C#/Visual scripting API
  • Add automated test for loading nested prefab with different root actor
  • Add bitmap data slot of Font glyphs in FontTextureAtlas
  • Add Span<T> support for scripting fields
  • Add Span<T> to C++ debugger natvis file
  • Add HRTF Audio support (via OpenAL backend)
  • Add updating the main menu shortcut keys on editor options save
  • Add Copy Euler angles to Quaternion editor context menu
  • Add logging PixelFormat as string instead of integer value for better readability
  • Add ClampLength functions to C++ Vector3
  • Add InputBindings modifiable from plugin (in Editor public API)
  • Add word wrapping on capital letters and underscores for better text rendering
  • Add various changes to scroll bar to make it feel better
  • Add de-selecting items in content view by clicking empty space in Editor
  • Add the play icon to a stop icon and vice versa when clicked for the Profiler
  • Add Create collision data action to be performed for each model selected in the Content Window
  • Add improvements for Visject context menu interface in Editor
  • Add ability to change the fps of the not focused editor window
  • Add setting new material instance name to parent material name
  • Add EnumAddFlags for easy flags appending
  • Add NetworkReplicator::EnableLog to optionally enable verbose logging of networking
  • Add NetworkStream::SenderId to detect message sender during object replication or RPC code
  • Add NetworkManager::GetClient by uint32 clientId
  • Add NetworkRpcParams for sending RPC to specific set of clients or to read sender id
  • Add array property replication code-gen for C# networking
  • Add networking replication codegen for C# array properties with object references or custom structures
  • Add LateFixedUpdate event for scripts
  • Add support for decimal values in Font sizes
  • Add proper POD types check in C# network replication codegen
  • Add support for C# array as network RPC method parameter
  • Add objects ID inverse mapping from client to server for proper C# networking codegen
  • Add optional replication for network object (if Rep FPS is negative)
  • Add support for changing C# nullable references context build option
  • Add Content importers and exporters for scripting API
  • Add more usability to model/material previews in Editor
  • Add option to search only active actor with Tag
  • Add output binaries folder cleanp to build clear command
  • Add support for writing UTF-8 files in FileBase::WriteAllText
  • Add ability to unset type reference with null item
  • Add SpanContains utility to C++ scripting
  • Add ReallocAligned utility
  • Add support for line-breaks in API_INJECT_CODE macro
  • Add eol=lf to gitattribute
  • Add removing old hot-reload files in project references on Editor startup
  • Add better visuals of dragging a tree node
  • Add Unload all but this scene to Editor scene tree context menu
  • Add using parent actor's name as initial prefab name in Editor
  • Add MoveTowards functions to C++ Math
  • Add Tags::GetSubTags to scripting api
  • Add ViewportIconsRenderer::AddActorWithTexture for custom actor icon per-actor
  • Add inputs to Random Range nodes in particle emitter surface
  • Add == operator for Actors and Scripts to properly perform comparison in C# scripts
  • Add AudioDataInfo.Length
  • Add audio clip preview refresh on asset reimport in Editor
  • Add current playback position preview with seeking functionality to Audio Clip window in Editor
  • Add OpenAL AL_SOFT_source_spatialize extension support for stereo spatial audio playback
  • Add AllowSpatialization option to Audio Source
  • Add DopplerFactor to Audio Source
  • Add Pan to Audio Source for stereo panning
  • Add editor playback utilities for Audio Source and Scene Animation Player
  • Add saving and re-opening all active scenes between editor sessions
  • Add ensuring prefab actors static flags match parent flags or keeps it's own
  • Add logging .NET runtime version to build tool
  • Add ignoring logging missing env var on Windows
  • Add engine version defines for build scripts (eg. FLAX_1_6_OR_NEWER)
  • Add automated test for strings formatting and localization
  • Add content proxy modifications function and workspace rebuilding for custom asset types extensions
  • Add build tool and game cooker caches clearing when opening project with different Editor version
  • Add GC to run periodically in order to reduce stuttering
  • Add launchSettings.json generation for Visual Studio 2022 with .NET 7
  • Add better Texture initialization API with custom data
  • Add better Visual Studio solution generation with nested C# project cross-references to properly place projects in group folders
  • Improve Root Motion extraction and playback
  • Improve automatic slider speed for float value fields in Editor
  • Optimize Flax.Build performance to have even faster builds
  • Optimize bindings code generation via String Builder pooling
  • Optimize text formatting in various places
  • Optimzie Newtonsoft.Json lib by removing Xml, Schema support and making it AOT-friendly for AOT game builds
  • Optimize out System.ComponentModel.TypeConverter assembly usage to reduce cooked game builds
  • Optimize profiler window assets and GPU resources sorting when the view is active only
  • Optimize network replication when no client can receive object
  • Optimize interface method lookup to eliminate strlen calls
  • Optimize vectors normalization
  • Optimize UI performance when destroying complex UI structures
  • Optimize Utils.InitStructure usage in generated bindings code if structure can be zero-inited
  • Optimize CollisionsHelper::FrustumContainsBox
  • Optimize out debug symbols generation for C# stdlib in Mono AOT builds
  • U...
Read more

Update 1.5.6339

01 Mar 18:46
Compare
Choose a tag to compare

Discussion: https://forum.flaxengine.com/t/flax-engine-update-1-5-6339/932

Changelog:

  • Add FLAXENGINE_API to platform specific classes for C++ scripting usage
  • Add Ragdoll actor to toolbox
  • Add better C++ standard library version detection on Linux
  • Add LinuxFileSystem::ShowBrowseFolderDialog
  • Add BC4, BC5 and BC7 formats decompression support on non-Windows platforms
  • Add support for building Android app on Linux or Mac
  • Fix Tag natvis debugger print
  • Fix Level::FindActors with Tag
  • Fix using Vulkan SDK header from system when cross-compiling
  • Fix cursor not changing from IBeam to default when hovering over cancel button in SearchBox
  • Fix stability of Global Surface Atlas to smooth objects culling buffer capacity over time

Update 1.5.6338

19 Feb 20:36
Compare
Choose a tag to compare

Discussion: https://forum.flaxengine.com/t/flax-engine-update-1-5-6338/919

Changelog:

  • Add scaling towards mouse position in Visject surface
  • Add hiding tooltip while dragging UI control
  • Add FlaxEngine project file generation for VS Code
  • Add DontCompress configuration to build tool
  • Add support for deserialization of deprecated properties in scripting types
  • Add sticky the content window search field so the search bars do not scroll with the content items
  • Add new editor icons for actors
  • Add performing layout when deleting actors and scrolling to duplicated/pasted actor when action is performed
  • Add custom game viewport sizing in Editor
  • Add scene panel to separate the tree from the search bar and made it not scroll when renaming
  • Add actor virtual functions OnDebugDraw/OnDebugDrawSelected/OnEnable/OnDisable to override in scripting
  • Add TypeNameEditor for editing typename reference as soft string value
  • Add game settings assets loading (not only objects)
  • Add Cook&Run and Run cooked game utilities to Game menu list for multilayer games testing
  • Add support for editing JsonAsset data at runtime (eg. modify game settings on the fly)
  • Add support for custom types/members attributes parsing in scripting bindings
  • Add support for custom Action Command in TaskGraph
  • Add support for DataContainer in scripting api bindings
  • Add support for custom icons for actors in ViewportIconsRenderer
  • Add play/pause widget and keybind for particles preview in asset Editor
  • Add custom Tags for scripting api types to be used by plugins
  • Add Left Click to submit text in textbox
  • Add SceneReference to C++ scripting API
  • Add AdditionalScenes to BuildSettings
  • Add ViewFlags::Sky for conditional sky/skybox rendering
  • Add DefaultValue support for scripting parameters
  • Add AfterGBufferPass and AfterForwardPass for custom PostFx location
  • Add Renderer::DrawActors for quick actors rendering in custom render passes
  • Add simplified collider for in-built primitive meshes
  • Add new UI for Drop Panels in Editor (bigger header, expandable arrow icon and guidance lines)
  • Add RenderBuffers::LinkedCustomBuffers to reuse main game viewport rendered state (eg. GI) in sub-rendered view
  • Add GPUContext::SetBlendFactor
  • Add SortOrder to drawable object types for transparency sorting override
  • Add support for StringAnsi in scripting api
  • Add NetworkTransform component
  • Add network stats API for transport layer
  • Add GBuffer textures to the C# scripting
  • Add Editor search fields usage on a single character query (instead of min 2 chars)
  • Add NetworkLagDriver for lag simulation over low-level network transport layer
  • Add support for different access level for scripting property functions
  • Add Layer and StaticFlags from parent actor after spawnign actor in Prefab Window
  • Add support for non-const ref parameters with conversion (eg. string or array) in scripting api function parameters
  • Add multi-threaded scene rendering with Job System
  • Add draw call sorting keys generation during draw calls collection (async)
  • Add WorldPosition to postfx material scene textures for world-space position sampling at uv
  • Add GPUDevice::CreateConstantBuffer for custom constants buffers usage
  • Add option to override Custom Editor for array of type
  • Add Tag and Tags for new tags system
  • Add FindActor/FindActors with Tag to Level
  • Add Tag to PhysicalMaterial for physical surfaces tagging
  • Add unit tests for scripting features
  • Add thirdparty files in the includes cache for build tool checks
  • Add more test cases for various scripting bindings features
  • Add bigger input value boxes to Visject Surface
  • Add UseAssetImportPathRelative to Editor options and use it by default to store imported asset path relative to the project folder
  • Add VS2022 support for building for UWP platform
  • Add navmesh update on terrain sculpt undo/redo
  • Add this to API_PARAM for static method extension of a type
  • Add defer to navmesh update when sculpting action ends to prevent stalls
  • Add support for editing path to the asset within AssetRefEditor
  • Add Procedural Texture Sampling material node (stochastic)
  • Add auto save reminder popup on Editor status bar
  • Add Color.FromRGBA
  • Add RandomStream to C#
  • Add RandomUtil.Rand method to C# and Visual Script for quick random float in range [0;1]
  • Add scripts compilation failed status to status bar in Editor
  • Add TargetCompiler to Flax.Build toolchains
  • Add centered the context menu that is created from clicking the add scripts button on an actor
  • Add C++ file includes cache serializartion to improve incremental build times
  • Add cancel button to search fields in Editor
  • Add hover begin and end event to button
  • Add preventing from spawning abstract Actor/Script type
  • Add RenderSetup and allow customizing it by gameplay and postfx
  • Add RenderingUpscaleLocation for customizing upscaler location in render pipeline
  • Add scripts dragging support to scene tree for reparenting
  • Add Render2D.DrawTexturedTriangles with index buffer
  • Add FlaxEngine.Object.FromUnmanagedPtr for native object raw pointer conversion to managed object
  • Add ScriptingTypeHandle support for scripting bindings as System.Type
  • Add WriteStructure/ReadStructure utilities for NetworkMessage
  • Add automatic network serializers generation for NetworkReplicated fields in C++ types
  • Add better location of renaming box for Actor/Folder tree node to start at the label for better UX
  • Add project-independent saved windows layouts (stored globally)
  • Add better organization to Content projects tree organization for better UX (game project first, ending project last)
  • Add Mono.Cecil to Flax.Build
  • Add profiler events for plugins init/deinit
  • Add GPU Memory profiler to Editor
  • Add ViewFlags::Sky for conditional sky/skybox rendering
  • Add pooled render targets naming for easier GPU memory usage debugging
  • Add SetResourceState and ForceRebindDescriptors to GPUContext for integration with external rendering libraries
  • Add support for CanRender in postFx to depend on specific render setup
  • Add GetNativePtr to GPUAdapter
  • Add changing mouse cursor to ibeam when editing text box
  • Add IsAnyButtonDown utility to Mouse and Gamepad
  • Add Normalized to Float2 and Vector2
  • Add support for using system-installed Vulkan SDK on Linux
  • Add FLAX_X_Y_OR_NEWER to game code defines
  • Add engine version defines to C++ game scripts
  • Add Canvas Scaler control for resolution-independent UI
  • Add dev-only name to spawned Particle System
  • Add support in GetScript to interface types
  • Add option for importing scale tracking to animation asset
  • Add BlurScaleWithSize to BlurPanel for resolution-independent blur
  • Add Actor Scale linking and unlinking in Properties window for uniform scaling (right-click)
  • Add MemoryUsage property to Asset for estimated CPU memory pressure
  • Add memory usage query for various asset types
  • Add Assets profiler to Editor
  • Add support for normal generation when using Assimp model importer
  • Add side mouse button shortcuts to the Content window
  • Add ability to drag maximized window in Editor
  • Add Animation Instance Data node to Anim Graph for caching value per-model
  • Add support for 32 bit indices for the terrain chunk geometry
  • Add JsonAsset.Save
  • Add updated transform Gizmos in Editor
  • Add better support for file dialogs on Linux
  • Add preferred LLVM linker over other linkers on Linux (faster link time)
  • Add serialization to PostProcessEffect fields and expose them in a sub-group in Editor
  • Add grouping for new assets creation in Content window
  • Add ContentContextMenu attribute for custom assets creation groupping
  • Add ActorContextMenu attribute for custom actors creation groupping
  • Add ActorToolbox attribute for actors grouping in Editor Toolbox
  • Add scroll bars and resiable window to materia;/shader source code viewer
  • Add a new way for actor context menus creation (via ActorContextMenu attribute)
  • Add to not close the child context menu on click in Editor
  • Add Shift key for skeleton mask editor to affect children bones on click
  • Add KeyDown and KeyUp events to TextBoxBase
  • Add value boxes hiding cursor and returning it to its position when done
  • Add caching transform snapping enables and values for main Editor viewport
  • Add visual cursor changes when sliding value box or resizing docked window
  • Add cursor change for moving the property splitter
  • Add support for importing WAV files that contain extra format bytes in fmt header
  • Add support for MSBuild in preview version Visual Studio in build scripts
  • Add better items placement in Editor content view
  • Add support for imported LOD meshes using _ character (eg. mesh LOD_1)
  • Add aiProcess_SortByPType to Assimp importer to reduce artifacts from multi-geometry types imports
  • Add rename on left click outside the Editor renaming popup
  • Add float3 scaling to triplanar texture node
  • Add improvements for Editor Gizmo draw order
  • Add running Tests on Windows in Github Actions CI
  • Add improvement for drag&drop tooltip hiding on operation start
  • Add improvement for normal maps detection when importing FBX model files
  • Add DDS files import time improvements if already compressed
  • Add faster scroll speed to feel less sluggish in Editor
  • Refactor GetNonTerminatedText into GetText in StringView
  • Refactor raw data ReadSttream and WriteStream to have easier to use API with more features
  • Refactor Actor tags into hierarchical reusable Tags system for better gameplay scripting
  • Refactor material shaders to use separate constant buffer (slot 1) for shared per-view const...
Read more

Update 1.4.6334

07 Sep 17:41
Compare
Choose a tag to compare

Discussion: https://forum.flaxengine.com/t/flax-engine-update-1-4-6334/811

Changelog:

  • Add Dynamic Diffuse Global Illumination with real-time irradiance probes
  • Add JobSystem.Execute utility for quick jobs running
  • Add Global Sign Distance Field rendering
  • Add Distance to box/point for Bounding Box
  • Add LineHitBox to Collisions.hlsl
  • Add flip presentation mode and tearing support to D3D11
  • Add MeshAccelerationStructure utility for robust triangles geometry queries
  • Add more utilities for using Matrix3x3
  • Add IsSingleFrame to RenderView for thumbnails/pre-render views drawing without temporal effects and LOD transitions
  • Add DynamicStructuredBuffer and DynamicTypesBuffer utilities
  • Add automatic group panels hiding if all properties are hidden by VisibleIf rule
  • Add utilities for Model SDF generation (on import, in editor window, or batch for all models on a scene)
  • Add Sample Global SDF node to materials and particles
  • Add Collision (Global SDF) particle module
  • Add Conform to Global SDF module to GPU particles
  • Add Position (Global SDF) module to GPU particles
  • Add utility Copy option for various labels in assets editors
  • Add ISceneRenderingListener for using scene information in the renderer cache
  • Add utility to editor CodeDocs for tooltips from C# types and members
  • Add CustomBuffers for injecting custom state into RenderBuffers
  • Add support for implicit casting from Quaternion to other types in shaders
  • Add Rotate Vector node to Visject Surface graphs
  • Add Screen Space Reflections for transparent materials
  • Add Array Add Unique node to Visual Scripting
  • Add support for sampling Scene Color in transparent materials (forward pass)
  • Add keyboard key navigation to Content View based on items name first character
  • Add JsonAsset.Instance for C# asset object
  • Add Delegate::BindUnique
  • Add Dictionaries to Visual Scripting
  • Add support for array of Visual Script objects
  • Add support for constexpr fields in Scripting API
  • Add World Triplanar Texture node to materials
  • Add playback speed option for Scene Animation rendering
  • Add Smoothstep and Step material nodes
  • Add preserving existing value of the Visual Script parameter when changing its type
  • Add View Size node for GUI materials
  • Add additive scene opening in Editor via drag&drop into Scene Tree window
  • Add Custom Global Code node to materials for injecting custom code, includes or constants
  • Add loopCount to PlaySlotAnimation for looping slot animation
  • Add Color.FromRGBA
  • Add confirmation dialog for Scenes Data building in Editor toolbar (prevent misclicks)
  • Add cursor clipping (for RTS, MOBA games)
  • Add Double2, Double3, Double4 to C# scripting API
  • Add Large Worlds support for 64-bit world coordinates (enable UseLargeWorlds in custom engine build)
  • Add relative-to-camera rendering for large worlds
  • Add support for the latest Windows 11 SDK (22H2)
  • Add support for Physics Scene origin shifting
  • Add support for Double2/3/4 for native storage in Variant
  • Add custom floats formatting to prevent scientific notation
  • Add selectable Environment Probes resolution (in Graphics Settings or per-probe)
  • Add support for dispatching jobs within jobs in JobSystem
  • Add Transparent Lighting Modes for material with option to use non-directional shading
  • Add Global Illumination sampling option to transparent materials (eg. particles)
  • Add utility buttons to check/uncheck all Material Instance parameters overrides in Editor window
  • Add separate GBuffer view modes in Editor viewport widget
  • Add real-time environment probes support
  • Add support for baking env probes in cooked game
  • Add new trace mode to Screen Space Reflections for DDGI Scene tracing
  • Add showing model screen size in the Model Preview
  • Add editor camera speed up for gamepad right trigger
  • Add GamepadDPadX/GamepadDPadY input axes for gamepad DPad
  • Add Engine.FocusGameViewport to implement game menu with camera focus gather
  • Add HTML tags processing in Rich Text Box
  • Add HtmlParser to engine utilities (with unit tests for it)
  • Add option to disable text clipping in text boxes
  • Add option to disable selecting text in text box
  • Add utility for parsing Color from text (hex or named color)
  • Add Content.GetEditorAssetPath
  • Add EditorPlugin.DeinitializeEditor to properly cleanup Editor extensions on exit
  • Add support for generic types in Scripting API with Template flag
  • Add waiting for model to be loaded in SetMaterial
  • Add NavCrowd for navigation steering behaviors system for a group of agents
  • Add support for renaming GPU resources (development builds only)
  • Add new API_TYPEDEF metadata for Scripting API types instantiation (with Alias option)
  • Add FLAX_BUILD_BINDINGS define for Scripting API parser to be used if needed
  • Add various improvements for C# math library
  • Add Content Search window to searching Visual Scripts and other assets
  • Add Find references utility for graph parameters and methods
  • Add public events for Editor play mode flow
  • Add setting timer resolution to lowest possible value in all Windows systems
  • Add support for main view information in Surface materials during subpass rendering (eg. shadow depth)
  • Add support for font size and color in Header attribute
  • Add TypeReference attribute to actors/scripts searching utilities for easier type picking in Visual Script
  • Add support for setting C++ version for build module compilation
  • Add Nested Animations for compositing animation clips
  • Add new Noise library for C++/C#/VisualScript/HLSL utilities
  • Add Default auto-generated member to scripting structures and improve deserialization
  • Add UseAlpha to RenderBuffers for pass-though renderer with alpha channel
  • Add late initialization to Content Finder tool in Editor
  • Add support for virtual Prefab assets created from code
  • Add GPU Dispatch calls in GPU profiler draw calls collumn
  • Add batching undo actions for Surface editing to prevent undo actions spam during a single edit
  • Add missing pipeline barriers after Dispatch on Vulkan to prevent race conditions with UAVs
  • Add support for using mipmaps with 3D textures
  • Add support for in-built color constants in Visject (eg. red/blue/violet)
  • Add drawing RenderList if it was not batched/sorted
  • Add Actor::GetOrAddChild to C++
  • Add auto-selecting new item created in Content window
  • Add shader getter to IMaterial interface
  • Add shader reloading on header file edit for shaders with compilation errors
  • Add support for Volume textures to have residency changed as regular textures
  • Add events for streamable resources residency changes tracking
  • Optimize empty comments parsing in Scripting API
  • Optimize ProbesFilter shader
  • Expose IsDuringPlay property for actors and scripts to use in scripting
  • Improve StaticModel to register for Scene Rendering once the model has any LOD streamed-in
  • Improve initial name for static model collision data asset
  • Improve properties display (group all parameters from the same group together)
  • Improve JetBrains Rider installation detection
  • Improve Linux source code editor detection (Rider and VSCode)
  • Improve property names displayed in UI
  • Change search boxes in Editor to stick to the top of the panel
  • Update to .Net Framework 4.5.2
  • Update DirectXShaderCompiler to version 1.7 (July 2022)
  • Move Actor.DestroyChildren to C++
  • Remove disabling temporal reprojection from Volumetric Fog
  • Remove FlaxException
  • Remove warning on missing initial entry state for Anim Graph state machine
  • Refactor model Import Options to display only relevant properties for asset Type
  • Refactor PhysicsActor into Rigidbody (use IPhysicsActor interface manually)
  • Refactor HashSet to support custom allocator
  • Refactor API_INJECT_CPP_CODE into API_INJECT_CODE to support code injection in other languages
  • Refactor Visject reroute node to support reconnecting and have more usability
  • Refactor scene objects initialization to call OnAwake before all OnStart
  • Refactor engine to support double-precision vectors
  • Refactor OrientedBoundingBox to use Transform for transformation instead of Matrix (for large worlds)
  • Refactor FlaxTests to run as Editor with all engine services initialized
  • Format engine codebase with ReSharper
  • Fix Lightmap UVs Source not working in model import options
  • Fix for macOS dylib path
  • Fix text box not consuming key down event causing editor shortcuts to activate when typing
  • Fix preserving Alpha channel when changing color with Value slider
  • Fix Android build with NDK 25
  • Fix editor options startup to not log error on a missing file
  • Fix for faster models exporting
  • Fix opening and editing animation with missing Anim Events
  • Fix Vector2 equality comparison
  • Fix sampling Curves with keyframes that have negative time value
  • Fix displaying multiple structure parameters in Visject Surface parameters panel
  • Fix opening material or particle emitter in editor if shader compilation fails
  • Fix picking to properly select closest triangle for meshes
  • Fix Directional Light color alpha in Sky atmosphere color
  • Fix CSM split point when using 3 cascades
  • Fix TextureBrush to return valid size if texture is not yet loaded
  • Fix editor viewport capturing mouse if window is not foreground
  • Fix looping streamable audio clips with multiple chunks
  • Fix enum operators to be constexpr
  • Fix game ticking in editor during cut-scene rendering at edit time
  • Fix Ctrl+S in timeline view to not split the camera shot media
  • Fix debug name for DirectX resources
  • Fix Surface parameter attributes editor popup location
  • Fix Constant Buffer binding on D3D12 when using Graphics after...
Read more